diff --git a/0001-Clear-up-confusion-wrt.-ENTRY_SIZE_MAX-and-DATA_SIZE.patch b/0001-Clear-up-confusion-wrt.-ENTRY_SIZE_MAX-and-DATA_SIZE.patch new file mode 100644 index 00000000..53ccbcf5 --- /dev/null +++ b/0001-Clear-up-confusion-wrt.-ENTRY_SIZE_MAX-and-DATA_SIZE.patch @@ -0,0 +1,110 @@ +Based on 874bc134ac6504c45e94174e37af13ff21a6bfe2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Mon, 14 Jul 2014 16:53:23 -0400 +Subject: [PATCH] Clear up confusion wrt. ENTRY_SIZE_MAX and DATA_SIZE_MAX + +Define DATA_SIZE_MAX to mean the maximum size of a single +field, and ENTRY_SIZE_MAX to mean the size of the whole +entry, with some rough calculation of overhead over the payload. + +Check if entries are not too big when processing native journal +messages. +--- + src/journal/coredump.c | 6 +++--- + src/journal/journald-native.c | 25 +++++++++++++++++++++---- + 2 files changed, 24 insertions(+), 7 deletions(-) +--- src/journal/coredump.c ++++ src/journal/coredump.c 2014-07-16 13:02:54.438235659 +0000 +@@ -38,10 +38,10 @@ + #include "cgroup-util.h" + + /* Few programs have less than 3MiB resident */ +-#define COREDUMP_MIN_START (3*1024*1024) ++#define COREDUMP_MIN_START (3*1024*1024u) + /* Make sure to not make this larger than the maximum journal entry +- * size. See ENTRY_SIZE_MAX in journald-native.c. */ +-#define COREDUMP_MAX (767*1024*1024) ++ * size. See DATA_SIZE_MAX in journald-native.c. */ ++#define COREDUMP_MAX (1024*1024*767u) + + enum { + ARG_PID = 1, +--- src/journal/journald-native.c ++++ src/journal/journald-native.c 2014-07-16 12:50:45.000000000 +0000 +@@ -34,8 +34,8 @@ + + /* Make sure not to make this smaller than the maximum coredump + * size. See COREDUMP_MAX in coredump.c */ +-#define ENTRY_SIZE_MAX (1024*1024*768) +-#define DATA_SIZE_MAX (1024*1024*768) ++#define ENTRY_SIZE_MAX (1024*1024*770u) ++#define DATA_SIZE_MAX (1024*1024*768u) + + static bool valid_user_field(const char *p, size_t l) { + const char *a; +@@ -86,7 +86,7 @@ void server_process_native_message( + struct iovec *iovec = NULL; + unsigned n = 0, j, tn = (unsigned) -1; + const char *p; +- size_t remaining, m = 0; ++ size_t remaining, m = 0, entry_size = 0; + int priority = LOG_INFO; + char *identifier = NULL, *message = NULL; + pid_t object_pid = 0; +@@ -110,9 +110,17 @@ void server_process_native_message( + + if (e == p) { + /* Entry separator */ ++ ++ if (entry_size + n + 1 > ENTRY_SIZE_MAX) { /* data + separators + trailer */ ++ log_debug("Entry is too big with %u properties and %zu bytes, ignoring.", ++ n, entry_size); ++ continue; ++ } ++ + server_dispatch_message(s, iovec, n, m, ucred, tv, label, label_len, NULL, priority, object_pid); + n = 0; + priority = LOG_INFO; ++ entry_size = 0; + + p++; + remaining--; +@@ -150,6 +158,7 @@ void server_process_native_message( + iovec[n].iov_base = (char*) p; + iovec[n].iov_len = l; + n++; ++ entry_size += iovec[n].iov_len; + + /* We need to determine the priority + * of this entry for the rate limiting +@@ -218,7 +227,7 @@ void server_process_native_message( + l = le64toh(l_le); + + if (l > DATA_SIZE_MAX) { +- log_debug("Received binary data block too large, ignoring."); ++ log_debug("Received binary data block of %zu bytes is too large, ignoring.", l); + break; + } + +@@ -242,6 +251,7 @@ void server_process_native_message( + iovec[n].iov_base = k; + iovec[n].iov_len = (e - p) + 1 + l; + n++; ++ entry_size += iovec[n].iov_len; + } else + free(k); + +@@ -255,6 +265,13 @@ void server_process_native_message( + + tn = n++; + IOVEC_SET_STRING(iovec[tn], "_TRANSPORT=journal"); ++ entry_size += strlen("_TRANSPORT=journal"); ++ ++ if (entry_size + n + 1 > ENTRY_SIZE_MAX) { /* data + separators + trailer */ ++ log_debug("Entry is too big with %u properties and %zu bytes, ignoring.", ++ n, entry_size); ++ goto finish; ++ } + + if (message) { + if (s->forward_to_syslog) diff --git a/0001-Do-not-unescape-unit-names-in-Install-section.patch b/0001-Do-not-unescape-unit-names-in-Install-section.patch new file mode 100644 index 00000000..18e4aaa1 --- /dev/null +++ b/0001-Do-not-unescape-unit-names-in-Install-section.patch @@ -0,0 +1,21 @@ +Based on 000f6e5667eb4f73e137cbd0d7395a9f9db7728a Mon Sep 17 00:00:00 2001 +From: Michal Sekletar +Date: Mon, 26 May 2014 20:09:45 +0200 +Subject: [PATCH] Do not unescape unit names in [Install] section + +https://bugs.freedesktop.org/show_bug.cgi?id=49316 +--- + src/shared/conf-parser.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- src/shared/conf-parser.c ++++ src/shared/conf-parser.c 2014-05-27 07:36:20.478236631 +0000 +@@ -723,7 +723,7 @@ int config_parse_strv(const char *unit, + FOREACH_WORD_QUOTED(w, l, rvalue, state) { + _cleanup_free_ char *n; + +- n = cunescape_length(w, l); ++ n = strndup(w, l); + if (!n) + return log_oom(); + diff --git a/0001-Don-t-snprintf-a-potentially-NULL-pointer.patch b/0001-Don-t-snprintf-a-potentially-NULL-pointer.patch new file mode 100644 index 00000000..7f0f7b9c --- /dev/null +++ b/0001-Don-t-snprintf-a-potentially-NULL-pointer.patch @@ -0,0 +1,25 @@ +From 5effdfa831d75306fc0ff9b47d39997e4ae87f16 Mon Sep 17 00:00:00 2001 +From: Michael Meeks +Date: Tue, 11 Feb 2014 14:42:26 +0000 +Subject: [PATCH] Don't snprintf a potentially NULL pointer. + +--- + src/shared/log.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/shared/log.c b/src/shared/log.c +index 2a075ff..d6b138f 100644 +--- a/src/shared/log.c ++++ b/src/shared/log.c +@@ -479,7 +479,7 @@ static int log_do_header(char *header, size_t size, + func ? "CODE_FUNCTION=" : "", + func ? LINE_MAX : 0, func, + func ? "\n" : "", +- object ? object_name : "", ++ object_name ? object_name : "", + object ? LINE_MAX : 0, object, /* %.0s means no output */ + object ? "\n" : "", + program_invocation_short_name); +-- +1.8.4.5 + diff --git a/0001-Fix-systemd-stdio-bridge-symlink.patch b/0001-Fix-systemd-stdio-bridge-symlink.patch new file mode 100644 index 00000000..02e7e1cc --- /dev/null +++ b/0001-Fix-systemd-stdio-bridge-symlink.patch @@ -0,0 +1,28 @@ +From 8100c1a8f58b2fb5d97e156420a7e16562e93bc4 Mon Sep 17 00:00:00 2001 +From: Mike Gilbert +Date: Sun, 2 Mar 2014 23:37:39 -0500 +Subject: [PATCH] Fix systemd-stdio-bridge symlink + +The symlink is created in bindir (/usr/bin), and points to a binary +which lives in rootlibexecdir (/lib/systemd or /usr/lib/systemd). A +relative symlink does not work here. +--- + Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git Makefile.am Makefile.am +index 38445fb..e7134a2 100644 +--- Makefile.am ++++ Makefile.am +@@ -1978,7 +1978,7 @@ systemd_bus_proxyd_LDADD = \ + + bus-proxyd-install-hook: + $(AM_V_at)$(MKDIR_P) $(DESTDIR)$(bindir) +- $(AM_V_LN)$(LN_S) -f ../lib/systemd/systemd-bus-proxyd $(DESTDIR)$(bindir)/systemd-stdio-bridge ++ $(AM_V_LN)$(LN_S) -f $(rootlibexecdir)/systemd-bus-proxyd $(DESTDIR)$(bindir)/systemd-stdio-bridge + + bus-proxyd-uninstall-hook: + rm -f $(DESTDIR)$(bindir)/systemd-stdio-bridge +-- +1.7.9.2 + diff --git a/0001-Fix-warning-about-unused-variable-with-SELINUX.patch b/0001-Fix-warning-about-unused-variable-with-SELINUX.patch new file mode 100644 index 00000000..f1fb4ea9 --- /dev/null +++ b/0001-Fix-warning-about-unused-variable-with-SELINUX.patch @@ -0,0 +1,31 @@ +From 493d521d9ffe706741665a88ea14929913ea2eaf Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Tue, 23 Sep 2014 09:22:40 -0400 +Subject: [PATCH] Fix warning about unused variable with !SELINUX + +src/shared/label.c:255:15: warning: unused variable 'l' [-Wunused-variable] + char *l = NULL; + ^ +--- + src/shared/label.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git src/shared/label.c src/shared/label.c +index 02b41f0..b6af38d 100644 +--- src/shared/label.c ++++ src/shared/label.c +@@ -252,9 +252,10 @@ fail: + + int label_get_our_label(char **label) { + int r = -EOPNOTSUPP; +- char *l = NULL; + + #ifdef HAVE_SELINUX ++ char *l = NULL; ++ + r = getcon(&l); + if (r < 0) + return r; +-- +1.7.9.2 + diff --git a/0001-On_s390_con3270_disable_ANSI_colour_esc.patch b/0001-On_s390_con3270_disable_ANSI_colour_esc.patch index ef656b99..f09e8270 100644 --- a/0001-On_s390_con3270_disable_ANSI_colour_esc.patch +++ b/0001-On_s390_con3270_disable_ANSI_colour_esc.patch @@ -1,29 +1,25 @@ --- rules/99-systemd.rules.in | 2 - src/core/manager.c | 24 ++++++++--- - src/shared/util.c | 99 ++++++++++++++++++++++++++++++++++++++++++++-- + src/core/manager.c | 24 ++++++++-- + src/shared/util.c | 101 ++++++++++++++++++++++++++++++++++++++++++++-- src/shared/util.h | 1 - 4 files changed, 116 insertions(+), 10 deletions(-) + 4 files changed, 118 insertions(+), 10 deletions(-) -Index: systemd/rules/99-systemd.rules.in -=================================================================== ---- systemd.orig/rules/99-systemd.rules.in -+++ systemd/rules/99-systemd.rules.in +--- systemd-208/rules/99-systemd.rules.in ++++ systemd-208/rules/99-systemd.rules.in 2014-02-05 10:34:17.346235540 +0000 @@ -7,7 +7,7 @@ ACTION=="remove", GOTO="systemd_end" --SUBSYSTEM=="tty", KERNEL=="tty[a-zA-Z]*|hvc*|xvc*|hvsi*|ttysclp*|sclp_line*|3270/tty[0-9]*", TAG+="systemd" +-SUBSYSTEM=="tty", KERNEL=="tty[a-zA-Z]*|hvc*|xvc*|hvsi*|ttysclp*|sclp_line*", TAG+="systemd" +SUBSYSTEM=="tty", KERNEL=="tty[a-zA-Z]*|hvc*|xvc*|hvsi*|ttysclp*|sclp_line*|3270/tty*", TAG+="systemd" KERNEL=="vport*", TAG+="systemd" -Index: systemd/src/core/manager.c -=================================================================== ---- systemd.orig/src/core/manager.c -+++ systemd/src/core/manager.c -@@ -113,7 +113,7 @@ static int manager_watch_jobs_in_progres +--- systemd-210/src/core/manager.c ++++ systemd-210/src/core/manager.c 2014-04-30 10:51:43.398735332 +0000 +@@ -110,7 +110,7 @@ static int manager_watch_jobs_in_progres #define CYLON_BUFFER_EXTRA (2*(sizeof(ANSI_RED_ON)-1) + sizeof(ANSI_HIGHLIGHT_RED_ON)-1 + 2*(sizeof(ANSI_HIGHLIGHT_OFF)-1)) @@ -32,7 +28,7 @@ Index: systemd/src/core/manager.c char *p = buffer; assert(buflen >= CYLON_BUFFER_EXTRA + width + 1); -@@ -122,12 +122,14 @@ static void draw_cylon(char buffer[], si +@@ -119,12 +119,14 @@ static void draw_cylon(char buffer[], si if (pos > 1) { if (pos > 2) p = mempset(p, ' ', pos-2); @@ -49,7 +45,7 @@ Index: systemd/src/core/manager.c *p++ = '*'; } -@@ -138,7 +140,8 @@ static void draw_cylon(char buffer[], si +@@ -135,7 +137,8 @@ static void draw_cylon(char buffer[], si *p++ = '*'; if (pos < width-1) p = mempset(p, ' ', width-1-pos); @@ -59,7 +55,7 @@ Index: systemd/src/core/manager.c } } -@@ -155,6 +158,7 @@ void manager_flip_auto_status(Manager *m +@@ -150,6 +153,7 @@ void manager_flip_auto_status(Manager *m } static void manager_print_jobs_in_progress(Manager *m) { @@ -67,7 +63,7 @@ Index: systemd/src/core/manager.c _cleanup_free_ char *job_of_n = NULL; Iterator i; Job *j; -@@ -180,10 +184,20 @@ static void manager_print_jobs_in_progre +@@ -174,10 +178,20 @@ static void manager_print_jobs_in_progre assert(counter == print_nr + 1); assert(j); @@ -89,11 +85,9 @@ Index: systemd/src/core/manager.c m->jobs_in_progress_iteration++; -Index: systemd/src/shared/util.c -=================================================================== ---- systemd.orig/src/shared/util.c -+++ systemd/src/shared/util.c -@@ -3212,6 +3212,7 @@ int status_vprintf(const char *status, b +--- systemd-210/src/shared/util.c ++++ systemd-210/src/shared/util.c 2014-04-30 10:39:17.154736438 +0000 +@@ -2886,6 +2886,7 @@ int status_vprintf(const char *status, b struct iovec iovec[6] = {}; int n = 0; static bool prev_ephemeral; @@ -101,12 +95,12 @@ Index: systemd/src/shared/util.c assert(format); -@@ -3225,6 +3226,41 @@ int status_vprintf(const char *status, b +@@ -2899,6 +2900,41 @@ int status_vprintf(const char *status, b if (fd < 0) return fd; + if (_unlikely_(is_ansi_console < 0)) -+ is_ansi_console = ansi_console(fd); ++ is_ansi_console = (int)ansi_console(fd); + + if (status && !is_ansi_console) { + const char *esc, *ptr; @@ -143,7 +137,7 @@ Index: systemd/src/shared/util.c if (ellipse) { char *e; size_t emax, sl; -@@ -3247,8 +3283,12 @@ int status_vprintf(const char *status, b +@@ -2921,8 +2957,12 @@ int status_vprintf(const char *status, b } } @@ -158,7 +152,7 @@ Index: systemd/src/shared/util.c prev_ephemeral = ephemeral; if (status) { -@@ -3504,8 +3544,22 @@ void columns_lines_cache_reset(int signu +@@ -3169,12 +3209,47 @@ void columns_lines_cache_reset(int signu bool on_tty(void) { static int cached_on_tty = -1; @@ -182,9 +176,6 @@ Index: systemd/src/shared/util.c return cached_on_tty; } -@@ -3523,6 +3577,27 @@ int files_same(const char *filea, const - a.st_ino == b.st_ino; - } +bool ansi_console(int fd) { + static int cached_ansi_console = -1; @@ -208,13 +199,13 @@ Index: systemd/src/shared/util.c +} + int running_in_chroot(void) { - int ret; + struct stat a = {}, b = {}; -@@ -4006,7 +4081,23 @@ bool tty_is_vc_resolve(const char *tty) +@@ -3630,7 +3705,25 @@ bool tty_is_vc_resolve(const char *tty) const char *default_term_for_tty(const char *tty) { assert(tty); -- return tty_is_vc_resolve(tty) ? "TERM=linux" : "TERM=vt220"; +- return tty_is_vc_resolve(tty) ? "TERM=linux" : "TERM=vt102"; + if (tty_is_vc_resolve(tty)) + return "TERM=linux"; + @@ -230,16 +221,16 @@ Index: systemd/src/shared/util.c + if (streq(mode, "3270")) + return "TERM=ibm327x"; + } ++ if (streq(tty, "ttyS1")) ++ return "TERM=vt220"; +#endif -+ return "TERM=vt220"; ++ return "TERM=vt102"; } bool dirent_is_file(const struct dirent *de) { -Index: systemd/src/shared/util.h -=================================================================== ---- systemd.orig/src/shared/util.h -+++ systemd/src/shared/util.h -@@ -475,6 +475,7 @@ unsigned lines(void); +--- systemd-210/src/shared/util.h ++++ systemd-210/src/shared/util.h 2014-04-30 10:24:51.134235665 +0000 +@@ -418,6 +418,7 @@ unsigned lines(void); void columns_lines_cache_reset(int _unused_ signum); bool on_tty(void); diff --git a/0001-activate-fix-fd-leak-in-do_accept.patch b/0001-activate-fix-fd-leak-in-do_accept.patch new file mode 100644 index 00000000..14104a34 --- /dev/null +++ b/0001-activate-fix-fd-leak-in-do_accept.patch @@ -0,0 +1,26 @@ +From aa44499da15a8fa7026463555a7a27e55e4e24a8 Mon Sep 17 00:00:00 2001 +From: Philippe De Swert +Date: Wed, 10 Sep 2014 22:14:41 +0300 +Subject: [PATCH] activate: fix fd leak in do_accept() + +Found with Coverity. +--- + src/activate/activate.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/activate/activate.c src/activate/activate.c +index 8942773..0a1df37 100644 +--- src/activate/activate.c ++++ src/activate/activate.c +@@ -242,7 +242,7 @@ static int launch1(const char* child, char** argv, char **env, int fd) { + + static int do_accept(const char* name, char **argv, char **envp, int fd) { + _cleanup_free_ char *local = NULL, *peer = NULL; +- int fd2; ++ _cleanup_close_ int fd2 = -1; + + fd2 = accept(fd, NULL, NULL); + if (fd2 < 0) { +-- +1.7.9.2 + diff --git a/0001-add-hdflush-for-reboot-or-hddown-for-poweroff.patch b/0001-add-hdflush-for-reboot-or-hddown-for-poweroff.patch index d6b6fa3a..b4aeb6f4 100644 --- a/0001-add-hdflush-for-reboot-or-hddown-for-poweroff.patch +++ b/0001-add-hdflush-for-reboot-or-hddown-for-poweroff.patch @@ -1,13 +1,11 @@ --- - src/core/shutdown.c | 4 ++++ - src/systemctl/systemctl.c | 18 ++++++++++++------ - 2 files changed, 16 insertions(+), 6 deletions(-) + systemd-209/src/core/shutdown.c | 4 ++++ + systemd-209/src/systemctl/systemctl.c | 22 +++++++++++++++------- + 2 files changed, 19 insertions(+), 7 deletions(-) -Index: systemd-218/src/core/shutdown.c -=================================================================== ---- systemd-218.orig/src/core/shutdown.c -+++ systemd-218/src/core/shutdown.c -@@ -400,6 +400,10 @@ int main(int argc, char *argv[]) { +--- systemd-209/src/core/shutdown.c ++++ systemd-209/src/core/shutdown.c 2014-02-28 11:17:22.000000000 +0000 +@@ -449,6 +449,10 @@ int main(int argc, char *argv[]) { } reboot(cmd); @@ -18,11 +16,9 @@ Index: systemd-218/src/core/shutdown.c if (errno == EPERM && in_container) { /* If we are in a container, and we lacked * CAP_SYS_BOOT just exit, this will kill our -Index: systemd-218/src/systemctl/systemctl.c -=================================================================== ---- systemd-218.orig/src/systemctl/systemctl.c -+++ systemd-218/src/systemctl/systemctl.c -@@ -94,6 +94,7 @@ static bool arg_no_pager = false; +--- systemd-209/src/systemctl/systemctl.c ++++ systemd-209/src/systemctl/systemctl.c 2014-02-28 11:19:35.000000000 +0000 +@@ -93,6 +93,7 @@ static bool arg_no_pager = false; static bool arg_no_wtmp = false; static bool arg_no_wall = false; static bool arg_no_reload = false; @@ -30,7 +26,7 @@ Index: systemd-218/src/systemctl/systemctl.c static bool arg_show_types = false; static bool arg_ignore_inhibitors = false; static bool arg_dry = false; -@@ -6813,6 +6814,7 @@ static int halt_parse_argv(int argc, cha +@@ -5578,6 +5579,7 @@ static int halt_parse_argv(int argc, cha { "reboot", no_argument, NULL, ARG_REBOOT }, { "force", no_argument, NULL, 'f' }, { "wtmp-only", no_argument, NULL, 'w' }, @@ -38,7 +34,7 @@ Index: systemd-218/src/systemctl/systemctl.c { "no-wtmp", no_argument, NULL, 'd' }, { "no-wall", no_argument, NULL, ARG_NO_WALL }, {} -@@ -6865,10 +6867,13 @@ static int halt_parse_argv(int argc, cha +@@ -5629,10 +5631,13 @@ static int halt_parse_argv(int argc, cha case 'i': case 'h': @@ -53,17 +49,17 @@ Index: systemd-218/src/systemctl/systemctl.c case '?': return -EINVAL; -@@ -7511,7 +7516,8 @@ static int halt_now(enum action a) { - /* The kernel will automaticall flush ATA disks and suchlike - * on reboot(), but the file systems need to be synce'd - * explicitly in advance. */ -- sync(); +@@ -6274,20 +6279,23 @@ done: + + static int halt_now(enum action a) { + +-/* Make sure C-A-D is handled by the kernel from this + if (!arg_no_sync) + sync(); - - /* Make sure C-A-D is handled by the kernel from this point - * on... */ -@@ -7519,14 +7525,14 @@ static int halt_now(enum action a) { ++ ++ /* Make sure C-A-D is handled by the kernel from this + * point on... */ + reboot(RB_ENABLE_CAD); switch (a) { @@ -71,11 +67,12 @@ Index: systemd-218/src/systemctl/systemctl.c - log_info("Halting."); - reboot(RB_HALT_SYSTEM); - return -errno; - +- case ACTION_POWEROFF: log_info("Powering off."); reboot(RB_POWER_OFF); -+ /* fall-through */ ++ /* Fall through */ ++ + case ACTION_HALT: + log_info("Halting."); + reboot(RB_HALT_SYSTEM); diff --git a/0001-add-network-device-after-NFS-mount-units.patch b/0001-add-network-device-after-NFS-mount-units.patch index eb070d64..57a87c73 100644 --- a/0001-add-network-device-after-NFS-mount-units.patch +++ b/0001-add-network-device-after-NFS-mount-units.patch @@ -11,23 +11,19 @@ NFS share is added as "After=" dependency to the .mount. src/shared/util.c | 1 5 files changed, 234 insertions(+), 2 deletions(-) -Index: systemd-218/Makefile.am -=================================================================== ---- systemd-218.orig/Makefile.am -+++ systemd-218/Makefile.am -@@ -1134,6 +1134,8 @@ libsystemd_core_la_SOURCES = \ +--- systemd-210/Makefile.am ++++ systemd-210/Makefile.am 2014-02-26 12:44:20.000000000 +0000 +@@ -994,6 +994,8 @@ libsystemd_core_la_SOURCES = \ src/core/machine-id-setup.h \ src/core/mount-setup.c \ src/core/mount-setup.h \ + src/core/mount-iface.c \ + src/core/mount-iface.h \ - src/core/kmod-setup.c \ - src/core/kmod-setup.h \ src/core/loopback-setup.h \ -Index: systemd-218/src/core/mount-iface.c -=================================================================== ---- /dev/null -+++ systemd-218/src/core/mount-iface.c + src/core/loopback-setup.c \ + src/core/condition.c \ +--- systemd-210/src/core/mount-iface.c ++++ systemd-210/src/core/mount-iface.c 2014-02-26 10:18:36.000000000 +0000 @@ -0,0 +1,173 @@ +/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/ + @@ -170,7 +166,7 @@ Index: systemd-218/src/core/mount-iface.c + continue; + + ret = ifa->ifa_name; -+ break; ++ break; + } else if (ifa->ifa_addr->sa_family == AF_INET6) { + struct in6_addr *addr, *mask, dest, ip6; + unsigned int prefix; @@ -202,10 +198,8 @@ Index: systemd-218/src/core/mount-iface.c + freeifaddrs(ifa_list); + ifa_list = NULL; +} -Index: systemd-218/src/core/mount-iface.h -=================================================================== ---- /dev/null -+++ systemd-218/src/core/mount-iface.h +--- systemd-210/src/core/mount-iface.h ++++ systemd-210/src/core/mount-iface.h 2014-02-26 10:08:20.000000000 +0000 @@ -0,0 +1,25 @@ +/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/ + @@ -232,11 +226,9 @@ Index: systemd-218/src/core/mount-iface.h + +char *host2iface(const char *ip); +void freeroutes(void); -Index: systemd-218/src/core/mount.c -=================================================================== ---- systemd-218.orig/src/core/mount.c -+++ systemd-218/src/core/mount.c -@@ -38,6 +38,7 @@ +--- systemd-210/src/core/mount.c ++++ systemd-210/src/core/mount.c 2014-03-03 12:13:23.406246117 +0000 +@@ -36,6 +36,7 @@ #include "mkdir.h" #include "path-util.h" #include "mount-setup.h" @@ -244,7 +236,7 @@ Index: systemd-218/src/core/mount.c #include "unit-name.h" #include "dbus-mount.h" #include "special.h" -@@ -1365,8 +1366,9 @@ static int mount_add_one( +@@ -1388,8 +1389,9 @@ static int mount_add_one( _cleanup_free_ char *e = NULL, *w = NULL, *o = NULL, *f = NULL; bool load_extras = false; MountParameters *p; @@ -255,7 +247,7 @@ Index: systemd-218/src/core/mount.c int r; assert(m); -@@ -1391,6 +1393,8 @@ static int mount_add_one( +@@ -1414,6 +1416,8 @@ static int mount_add_one( if (!e) return -ENOMEM; @@ -264,16 +256,16 @@ Index: systemd-218/src/core/mount.c u = manager_get_unit(m, e); if (!u) { delete = true; -@@ -1419,7 +1423,7 @@ static int mount_add_one( +@@ -1442,7 +1446,7 @@ static int mount_add_one( if (m->running_as == SYSTEMD_SYSTEM) { const char* target; -- target = mount_needs_network(options, fstype) ? SPECIAL_REMOTE_FS_TARGET : SPECIAL_LOCAL_FS_TARGET; +- target = fstype_is_network(fstype) ? SPECIAL_REMOTE_FS_TARGET : SPECIAL_LOCAL_FS_TARGET; + target = isnetwork ? SPECIAL_REMOTE_FS_TARGET : SPECIAL_LOCAL_FS_TARGET; + r = unit_add_dependency_by_name(u, UNIT_BEFORE, target, NULL, true); if (r < 0) - goto fail; -@@ -1505,6 +1509,32 @@ static int mount_add_one( +@@ -1519,6 +1523,32 @@ static int mount_add_one( goto fail; } @@ -296,7 +288,7 @@ Index: systemd-218/src/core/mount.c + else { + r = unit_add_dependency_by_name(u, UNIT_AFTER, target, NULL, true); + if (r < 0) -+ log_unit_error(u->id, "Failed to add dependency on %s, ignoring: %s", ++ log_error_unit(u->id, "Failed to add dependency on %s, ignoring: %s", + target, strerror(-r)); + } + } @@ -306,23 +298,21 @@ Index: systemd-218/src/core/mount.c if (changed) unit_add_to_dbus_queue(u); -@@ -1560,6 +1590,7 @@ static int mount_load_proc_self_mountinf - if (r == 0 && k < 0) +@@ -1583,6 +1613,7 @@ static int mount_load_proc_self_mountinf + if (k < 0) r = k; } + freeroutes(); /* Just in case of using the routing table with host2iface() */ return r; } -Index: systemd-218/src/shared/util.c -=================================================================== ---- systemd-218.orig/src/shared/util.c -+++ systemd-218/src/shared/util.c -@@ -1667,6 +1667,7 @@ bool fstype_is_network(const char *fstyp +--- systemd-210/src/shared/util.c ++++ systemd-210/src/shared/util.c 2014-02-24 15:17:42.000000000 +0000 +@@ -1502,6 +1502,7 @@ bool fstype_is_network(const char *fstyp "ncp\0" "nfs\0" "nfs4\0" + "afs\0" "gfs\0" - "gfs2\0" - "glusterfs\0"; + "gfs2\0"; + diff --git a/0001-architecture-Add-tilegx.patch b/0001-architecture-Add-tilegx.patch new file mode 100644 index 00000000..277587c3 --- /dev/null +++ b/0001-architecture-Add-tilegx.patch @@ -0,0 +1,56 @@ +From 46eea341c36f0caf0bdd5b2274a1ef7cb4e83e97 Mon Sep 17 00:00:00 2001 +From: Henrik Grindal Bakken +Date: Thu, 27 Feb 2014 21:19:13 +0100 +Subject: [PATCH] architecture: Add tilegx + +Add Tilera's TILE-GX processor family support. +--- + src/shared/architecture.c | 3 +++ + src/shared/architecture.h | 3 +++ + 2 files changed, 6 insertions(+) + +diff --git src/shared/architecture.c src/shared/architecture.c +index ceba492..fcdb3d5 100644 +--- src/shared/architecture.c ++++ src/shared/architecture.c +@@ -112,6 +112,8 @@ Architecture uname_architecture(void) { + { "sh", ARCHITECTURE_SH }, + #elif defined(__m68k__) + { "m68k", ARCHITECTURE_M68K }, ++#elif defined(__tilegx__) ++ { "tilegx", ARCHITECTURE_TILEGX }, + #else + #error "Please register your architecture here!" + #endif +@@ -158,6 +160,7 @@ static const char *const architecture_table[_ARCHITECTURE_MAX] = { + [ARCHITECTURE_SH] = "sh", + [ARCHITECTURE_SH64] = "sh64", + [ARCHITECTURE_M68K] = "m68k", ++ [ARCHITECTURE_TILEGX] = "tilegx", + }; + + DEFINE_STRING_TABLE_LOOKUP(architecture, Architecture); +diff --git src/shared/architecture.h src/shared/architecture.h +index 3183645..e589a91 100644 +--- src/shared/architecture.h ++++ src/shared/architecture.h +@@ -47,6 +47,7 @@ typedef enum Architecture { + ARCHITECTURE_SH, + ARCHITECTURE_SH64, + ARCHITECTURE_M68K, ++ ARCHITECTURE_TILEGX, + _ARCHITECTURE_MAX, + _ARCHITECTURE_INVALID = -1 + } Architecture; +@@ -107,6 +108,8 @@ Architecture uname_architecture(void); + # define native_architecture() ARCHITECTURE_SH + #elif defined(__m68k__) + # define native_architecture() ARCHITECTURE_M68K ++#elif defined(__tilegx__) ++# define native_architecture() ARCHITECTURE_TILEGX + #else + #error "Please register your architecture here!" + #endif +-- +1.7.9.2 + diff --git a/0001-backlight-Avoid-restoring-brightness-to-an-unreadabl.patch b/0001-backlight-Avoid-restoring-brightness-to-an-unreadabl.patch new file mode 100644 index 00000000..3b20a7e0 --- /dev/null +++ b/0001-backlight-Avoid-restoring-brightness-to-an-unreadabl.patch @@ -0,0 +1,79 @@ +From 7b909d7407965c03caaba30daae7aee113627a83 Mon Sep 17 00:00:00 2001 +From: Josh Triplett +Date: Tue, 11 Mar 2014 21:16:33 -0700 +Subject: [PATCH] backlight: Avoid restoring brightness to an unreadably dim + level + +Some systems turn the backlight all the way off at the lowest levels. +Clamp saved brightness to at least 1 or 5% of max_brightness. This +avoids preserving an unreadably dim screen, which would otherwise force +the user to disable state restoration. +--- + src/backlight/backlight.c | 44 ++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 44 insertions(+) + +diff --git src/backlight/backlight.c src/backlight/backlight.c +index 81470b3..abf8bcf 100644 +--- src/backlight/backlight.c ++++ src/backlight/backlight.c +@@ -192,6 +192,48 @@ static bool validate_device(struct udev *udev, struct udev_device *device) { + return true; + } + ++/* Some systems turn the backlight all the way off at the lowest levels. ++ * clamp_brightness clamps the saved brightness to at least 1 or 5% of ++ * max_brightness. This avoids preserving an unreadably dim screen, which ++ * would otherwise force the user to disable state restoration. */ ++static void clamp_brightness(struct udev_device *device, char **value) { ++ int r; ++ const char *max_brightness_str; ++ unsigned brightness, max_brightness, new_brightness; ++ ++ max_brightness_str = udev_device_get_sysattr_value(device, "max_brightness"); ++ if (!max_brightness_str) { ++ log_warning("Failed to read max_brightness attribute; not checking saved brightness"); ++ return; ++ } ++ ++ r = safe_atou(*value, &brightness); ++ if (r < 0) { ++ log_warning("Failed to parse brightness \"%s\": %s", *value, strerror(-r)); ++ return; ++ } ++ ++ r = safe_atou(max_brightness_str, &max_brightness); ++ if (r < 0) { ++ log_warning("Failed to parse max_brightness \"%s\": %s", max_brightness_str, strerror(-r)); ++ return; ++ } ++ ++ new_brightness = MAX3(brightness, 1U, max_brightness/20); ++ if (new_brightness != brightness) { ++ char *old_value = *value; ++ ++ r = asprintf(value, "%u", new_brightness); ++ if (r < 0) { ++ log_oom(); ++ return; ++ } ++ ++ log_debug("Saved brightness %s too low; increasing to %s.", old_value, *value); ++ free(old_value); ++ } ++} ++ + int main(int argc, char *argv[]) { + _cleanup_udev_unref_ struct udev *udev = NULL; + _cleanup_udev_device_unref_ struct udev_device *device = NULL; +@@ -306,6 +348,8 @@ int main(int argc, char *argv[]) { + return EXIT_FAILURE; + } + ++ clamp_brightness(device, &value); ++ + r = udev_device_set_sysattr_value(device, "brightness", value); + if (r < 0) { + log_error("Failed to write system attribute: %s", strerror(-r)); +-- +1.7.9.2 + diff --git a/0001-bash-completion-fix-__get_startable_units.patch b/0001-bash-completion-fix-__get_startable_units.patch new file mode 100644 index 00000000..815e6abd --- /dev/null +++ b/0001-bash-completion-fix-__get_startable_units.patch @@ -0,0 +1,25 @@ +From a163b64c4b08e8a4ad39a9a295acf3d1634024a3 Mon Sep 17 00:00:00 2001 +From: Dan Kilman +Date: Sun, 13 Apr 2014 18:06:13 +0300 +Subject: [PATCH] bash completion: fix __get_startable_units + +--- + shell-completion/bash/systemctl | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git shell-completion/bash/systemctl shell-completion/bash/systemctl +index 992e52d..e1c8420 100644 +--- shell-completion/bash/systemctl ++++ shell-completion/bash/systemctl +@@ -56,7 +56,7 @@ __get_all_units () { __systemctl $1 list-units --all \ + __get_active_units () { __systemctl $1 list-units \ + | { while read -r a b; do echo " $a"; done; }; } + __get_startable_units () { __systemctl $1 list-units --all -t service,timer,socket,mount,automount,path,snapshot,swap \ +- | { while read -r a b c d; do [[ $c == "inactive" || $c == "failed " ]] && echo " $a"; done; }; } ++ | { while read -r a b c d; do [[ $c == "inactive" || $c == "failed" ]] && echo " $a"; done; }; } + __get_failed_units () { __systemctl $1 list-units \ + | { while read -r a b c d; do [[ $c == "failed" ]] && echo " $a"; done; }; } + __get_enabled_units () { __systemctl $1 list-unit-files \ +-- +1.7.9.2 + diff --git a/0001-bash-completion-p-option-for-journalctl.patch b/0001-bash-completion-p-option-for-journalctl.patch new file mode 100644 index 00000000..f41318f5 --- /dev/null +++ b/0001-bash-completion-p-option-for-journalctl.patch @@ -0,0 +1,46 @@ +From be8f4a9fa732d61e845e1ab1a62ac3a6b368d3a7 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sat, 19 Jul 2014 19:46:04 -0400 +Subject: [PATCH] bash-completion: -p option for journalctl + +--- + shell-completion/bash/journalctl | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +diff --git shell-completion/bash/journalctl shell-completion/bash/journalctl +index e4b2f4a..14dcd22 100644 +--- shell-completion/bash/journalctl ++++ shell-completion/bash/journalctl +@@ -35,6 +35,8 @@ __journal_fields=(MESSAGE{,_ID} PRIORITY CODE_{FILE,LINE,FUNC} + _UDEV_{SYSNAME,DEVNODE,DEVLINK} + __CURSOR __{REALTIME,MONOTONIC}_TIMESTAMP) + ++__syslog_priorities=(emerg alert crit err warning notice info debug) ++ + _journalctl() { + local field_vals= cur=${COMP_WORDS[COMP_CWORD]} prev=${COMP_WORDS[COMP_CWORD-1]} + local -A OPTS=( +@@ -44,8 +46,8 @@ _journalctl() { + --no-tail -q --quiet --setup-keys --this-boot --verify + --version --list-catalog --update-catalog --list-boots' + [ARG]='-b --boot --this-boot -D --directory --file -F --field +- -o --output -u --unit --user-unit' +- [ARGUNKNOWN]='-c --cursor --interval -n --lines -p --priority --since --until ++ -o --output -u --unit --user-unit -p --priority' ++ [ARGUNKNOWN]='-c --cursor --interval -n --lines --since --until + --verify-key' + ) + +@@ -68,6 +70,9 @@ _journalctl() { + --field|-F) + comps=${__journal_fields[*]} + ;; ++ --priority|-p) ++ comps=${__syslog_priorities[*]} ++ ;; + --unit|-u) + comps=$(journalctl -F '_SYSTEMD_UNIT' 2>/dev/null) + ;; +-- +1.7.9.2 + diff --git a/0001-bnc888612-logind-polkit-acpi.patch b/0001-bnc888612-logind-polkit-acpi.patch index 104339e0..a7021400 100644 --- a/0001-bnc888612-logind-polkit-acpi.patch +++ b/0001-bnc888612-logind-polkit-acpi.patch @@ -3,11 +3,11 @@ src/login/logind-dbus.c | 20 ++++++++++++++++---- 2 files changed, 21 insertions(+), 4 deletions(-) -Index: systemd-218/src/login/logind-action.c +Index: systemd-210/src/login/logind-action.c =================================================================== ---- systemd-218.orig/src/login/logind-action.c -+++ systemd-218/src/login/logind-action.c -@@ -83,6 +83,11 @@ int manager_handle_action( +--- systemd-210.orig/src/login/logind-action.c ++++ systemd-210/src/login/logind-action.c +@@ -101,6 +101,11 @@ int manager_handle_action( /* If the key handling is inhibited, don't do anything */ if (inhibit_key > 0) { @@ -19,11 +19,11 @@ Index: systemd-218/src/login/logind-action.c if (manager_is_inhibited(m, inhibit_key, INHIBIT_BLOCK, NULL, true, false, 0, NULL)) { log_debug("Refusing operation, %s is inhibited.", inhibit_what_to_string(inhibit_key)); return 0; -Index: systemd-218/src/login/logind-dbus.c +Index: systemd-210/src/login/logind-dbus.c =================================================================== ---- systemd-218.orig/src/login/logind-dbus.c -+++ systemd-218/src/login/logind-dbus.c -@@ -1487,9 +1487,11 @@ static int method_do_shutdown_or_sleep( +--- systemd-210.orig/src/login/logind-dbus.c ++++ systemd-210/src/login/logind-dbus.c +@@ -1469,9 +1469,11 @@ static int method_do_shutdown_or_sleep( sd_bus_error *error) { _cleanup_bus_creds_unref_ sd_bus_creds *creds = NULL; @@ -36,7 +36,7 @@ Index: systemd-218/src/login/logind-dbus.c assert(m); assert(message); -@@ -1533,7 +1535,17 @@ static int method_do_shutdown_or_sleep( +@@ -1515,7 +1517,17 @@ static int method_do_shutdown_or_sleep( multiple_sessions = r > 0; blocked = manager_is_inhibited(m, w, INHIBIT_BLOCK, NULL, false, true, uid, NULL); @@ -52,24 +52,24 @@ Index: systemd-218/src/login/logind-dbus.c + + + if (multiple_sessions && !shutdown_through_acpi) { - r = bus_verify_polkit_async(message, CAP_SYS_BOOT, action_multiple_sessions, interactive, &m->polkit_registry, error); + r = bus_verify_polkit_async(m->bus, &m->polkit_registry, message, + action_multiple_sessions, interactive, error, method, m); if (r < 0) - return r; -@@ -1541,7 +1553,7 @@ static int method_do_shutdown_or_sleep( +@@ -1524,7 +1536,7 @@ static int method_do_shutdown_or_sleep( return 1; /* No authorization for now, but the async polkit stuff will call us again when it has it */ } - if (blocked) { + if (blocked && !shutdown_through_acpi) { - r = bus_verify_polkit_async(message, CAP_SYS_BOOT, action_ignore_inhibit, interactive, &m->polkit_registry, error); + r = bus_verify_polkit_async(m->bus, &m->polkit_registry, message, + action_ignore_inhibit, interactive, error, method, m); if (r < 0) - return r; -@@ -1549,7 +1561,7 @@ static int method_do_shutdown_or_sleep( +@@ -1533,7 +1545,7 @@ static int method_do_shutdown_or_sleep( return 1; /* No authorization for now, but the async polkit stuff will call us again when it has it */ } - if (!multiple_sessions && !blocked) { + if (!multiple_sessions && !blocked && !shutdown_through_acpi) { - r = bus_verify_polkit_async(message, CAP_SYS_BOOT, action, interactive, &m->polkit_registry, error); + r = bus_verify_polkit_async(m->bus, &m->polkit_registry, message, + action, interactive, error, method, m); if (r < 0) - return r; diff --git a/0001-build-sys-use-glibc-s-xattr-support-instead-of-requi.patch b/0001-build-sys-use-glibc-s-xattr-support-instead-of-requi.patch new file mode 100644 index 00000000..f8632b99 --- /dev/null +++ b/0001-build-sys-use-glibc-s-xattr-support-instead-of-requi.patch @@ -0,0 +1,215 @@ +Based on d2edfae0f9bdbecf6a8518e2a5bcf06f470e0d9e Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Wed, 28 May 2014 17:36:40 +0800 +Subject: [PATCH] build-sys: use glibc's xattr support instead of requiring + libattr + +--- + configure.ac | 53 ++----------------------------------------- + src/core/mount-setup.c | 2 - + src/core/socket.c | 4 --- + src/journal/journal-file.c | 7 ----- + src/journal/journal-vacuum.c | 10 -------- + src/shared/label.c | 2 - + src/shared/smack-util.c | 4 --- + 7 files changed, 7 insertions(+), 75 deletions(-) + +--- configure.ac ++++ configure.ac 2014-06-03 00:00:00.000000000 +0000 +@@ -526,44 +526,6 @@ AC_SUBST(ACL_LIBS) + AM_CONDITIONAL([HAVE_ACL], [test "x$have_acl" != xno]) + + # ------------------------------------------------------------------------------ +-AC_ARG_ENABLE([xattr], +- AS_HELP_STRING([--disable-xattr],[Disable optional XATTR support]), +- [case "${enableval}" in +- yes) have_xattr=yes ;; +- no) have_xattr=no ;; +- *) AC_MSG_ERROR(bad value ${enableval} for --disable-xattr) ;; +- esac], +- [have_xattr=auto]) +- +-if test "x${have_xattr}" != xno ; then +- AC_CHECK_HEADERS( +- [attr/xattr.h], +- [have_xattr=yes], +- [if test "x$have_xattr" = xyes ; then +- AC_MSG_ERROR([*** XATTR headers not found.]) +- fi]) +- +- AC_CHECK_LIB( +- [attr], +- [fsetxattr], +- [have_xattr=yes], +- [if test "x$have_xattr" = xyes ; then +- AC_MSG_ERROR([*** libattr not found.]) +- fi]) +- +- if test "x$have_xattr" = xyes ; then +- XATTR_LIBS="-lattr" +- AC_DEFINE(HAVE_XATTR, 1, [XATTR available]) +- else +- have_xattr=no +- fi +-else +- XATTR_LIBS= +-fi +-AC_SUBST(XATTR_LIBS) +-AM_CONDITIONAL([HAVE_XATTR], [test "x$have_xattr" != xno]) +- +-# ------------------------------------------------------------------------------ + AC_ARG_ENABLE([smack], AS_HELP_STRING([--disable-smack],[Disable optional SMACK support]), + [case "${enableval}" in + yes) have_smack=yes ;; +@@ -572,17 +534,9 @@ AC_ARG_ENABLE([smack], AS_HELP_STRING([- + esac], + [have_smack=auto]) + +-if test "x${have_xattr}" = xno; then +- if test "x${have_smack}" = xyes; then +- AC_MSG_ERROR(SMACK requires xattr support) +- else +- have_smack=no +- fi +-else +- if test "x${have_smack}" = xauto; then +- M4_DEFINES="$M4_DEFINES -DHAVE_SMACK" +- have_smack=yes +- fi ++if test "x${have_smack}" = xauto; then ++ M4_DEFINES="$M4_DEFINES -DHAVE_SMACK" ++ have_smack=yes + fi + + AC_ARG_WITH(smack-run-label, +@@ -1131,7 +1085,6 @@ AC_MSG_RESULT([ + SMACK: ${have_smack} + XZ: ${have_xz} + ACL: ${have_acl} +- XATTR: ${have_xattr} + GCRYPT: ${have_gcrypt} + QRENCODE: ${have_qrencode} + MICROHTTPD: ${have_microhttpd} +--- src/core/mount-setup.c ++++ src/core/mount-setup.c 2014-06-03 00:00:00.000000000 +0000 +@@ -93,10 +93,8 @@ static const MountPoint mount_table[] = + NULL, MNT_FATAL|MNT_IN_CONTAINER }, + { "tmpfs", "/sys/fs/cgroup", "tmpfs", "mode=755", MS_NOSUID|MS_NOEXEC|MS_NODEV|MS_STRICTATIME, + NULL, MNT_IN_CONTAINER }, +-#ifdef HAVE_XATTR + { "cgroup", "/sys/fs/cgroup/systemd", "cgroup", "none,name=systemd,xattr", MS_NOSUID|MS_NOEXEC|MS_NODEV, + NULL, MNT_IN_CONTAINER }, +-#endif + { "cgroup", "/sys/fs/cgroup/systemd", "cgroup", "none,name=systemd", MS_NOSUID|MS_NOEXEC|MS_NODEV, + NULL, MNT_IN_CONTAINER }, + { "pstore", "/sys/fs/pstore", "pstore", NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV, +--- src/core/socket.c ++++ src/core/socket.c 2014-06-03 00:00:00.000000000 +0000 +@@ -29,9 +29,7 @@ + #include + #include + #include +-#ifdef HAVE_XATTR +-#include +-#endif ++#include + + #include "sd-event.h" + #include "log.h" +--- src/journal/journal-file.c ++++ src/journal/journal-file.c 2014-06-03 00:00:00.000000000 +0000 +@@ -26,10 +26,7 @@ + #include + #include + #include +- +-#ifdef HAVE_XATTR +-#include +-#endif ++#include + + #include "journal-def.h" + #include "journal-file.h" +@@ -2515,7 +2512,6 @@ int journal_file_open( + } + + if (f->last_stat.st_size == 0 && f->writable) { +-#ifdef HAVE_XATTR + uint64_t crtime; + + /* Let's attach the creation time to the journal file, +@@ -2530,7 +2526,6 @@ int journal_file_open( + + crtime = htole64((uint64_t) now(CLOCK_REALTIME)); + fsetxattr(f->fd, "user.crtime_usec", &crtime, sizeof(crtime), XATTR_CREATE); +-#endif + + #ifdef HAVE_GCRYPT + /* Try to load the FSPRG state, and if we can't, then +--- src/journal/journal-vacuum.c ++++ src/journal/journal-vacuum.c 2014-06-03 00:00:00.000000000 +0000 +@@ -24,10 +24,7 @@ + #include + #include + #include +- +-#ifdef HAVE_XATTR +-#include +-#endif ++#include + + #include "journal-def.h" + #include "journal-file.h" +@@ -79,11 +76,8 @@ static void patch_realtime( + unsigned long long *realtime) { + + usec_t x; +- +-#ifdef HAVE_XATTR + uint64_t crtime; + _cleanup_free_ const char *path = NULL; +-#endif + + /* The timestamp was determined by the file name, but let's + * see if the file might actually be older than the file name +@@ -106,7 +100,6 @@ static void patch_realtime( + if (x > 0 && x != (usec_t) -1 && x < *realtime) + *realtime = x; + +-#ifdef HAVE_XATTR + /* Let's read the original creation time, if possible. Ideally + * we'd just query the creation time the FS might provide, but + * unfortunately there's currently no sane API to query +@@ -125,7 +118,6 @@ static void patch_realtime( + if (crtime > 0 && crtime != (uint64_t) -1 && crtime < *realtime) + *realtime = crtime; + } +-#endif + } + + static int journal_file_empty(int dir_fd, const char *name) { +--- src/shared/label.c ++++ src/shared/label.c 2014-06-03 00:00:00.000000000 +0000 +@@ -27,9 +27,7 @@ + #include + #include + #include +-#ifdef HAVE_XATTR + #include +-#endif + #ifdef HAVE_SELINUX + #include + #include +--- src/shared/smack-util.c ++++ src/shared/smack-util.c 2014-06-03 00:00:00.000000000 +0000 +@@ -23,9 +23,7 @@ + + #include + #include +-#ifdef HAVE_XATTR +-#include +-#endif ++#include + + #include "smack-util.h" + diff --git a/0001-bus-proxyd-fix-incorrect-comparison.patch b/0001-bus-proxyd-fix-incorrect-comparison.patch new file mode 100644 index 00000000..404e4c8d --- /dev/null +++ b/0001-bus-proxyd-fix-incorrect-comparison.patch @@ -0,0 +1,21 @@ +Based on e05aa2e02ba35d8b3741dddb79af3c802308414b Mon Sep 17 00:00:00 2001 +From: Lukas Nykryn +Date: Fri, 25 Jul 2014 10:25:06 +0200 +Subject: [PATCH] bus-proxyd: fix incorrect comparison + +We should be interested in k variable. +--- + src/bus-proxyd/bus-proxyd.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- src/bus-proxyd/bus-proxyd.c ++++ src/bus-proxyd/bus-proxyd.c 2014-07-28 09:37:29.274735818 +0000 +@@ -698,7 +698,7 @@ int main(int argc, char *argv[]) { + + k = sd_bus_send(a, m, NULL); + if (k < 0) { +- if (r == -ECONNRESET) ++ if (k == -ECONNRESET) + r = 0; + else { + r = k; diff --git a/0001-cgroup-it-s-not-OK-to-invoke-alloca-in-loops.patch b/0001-cgroup-it-s-not-OK-to-invoke-alloca-in-loops.patch new file mode 100644 index 00000000..06845364 --- /dev/null +++ b/0001-cgroup-it-s-not-OK-to-invoke-alloca-in-loops.patch @@ -0,0 +1,80 @@ +From a641dcd9bf05418d6a6c165e1c0cff615b4a0f47 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Tue, 18 Mar 2014 04:06:36 +0100 +Subject: [PATCH] cgroup: it's not OK to invoke alloca() in loops + +--- + src/core/mount-setup.c | 20 ++++++++++++++------ + 1 file changed, 14 insertions(+), 6 deletions(-) + +diff --git src/core/mount-setup.c src/core/mount-setup.c +index 387030a..c6d3f4b 100644 +--- src/core/mount-setup.c ++++ src/core/mount-setup.c +@@ -216,10 +216,10 @@ int mount_setup_early(void) { + } + + int mount_cgroup_controllers(char ***join_controllers) { +- int r; +- char buf[LINE_MAX]; + _cleanup_set_free_free_ Set *controllers = NULL; + _cleanup_fclose_ FILE *f; ++ char buf[LINE_MAX]; ++ int r; + + /* Mount all available cgroup controllers that are built into the kernel. */ + +@@ -262,6 +262,7 @@ int mount_cgroup_controllers(char ***join_controllers) { + } + + for (;;) { ++ _cleanup_free_ char *options = NULL, *controller = NULL, *where = NULL; + MountPoint p = { + .what = "cgroup", + .type = "cgroup", +@@ -269,7 +270,6 @@ int mount_cgroup_controllers(char ***join_controllers) { + .mode = MNT_IN_CONTAINER, + }; + char ***k = NULL; +- _cleanup_free_ char *options = NULL, *controller; + + controller = set_steal_first(controllers); + if (!controller) +@@ -286,7 +286,7 @@ int mount_cgroup_controllers(char ***join_controllers) { + for (i = *k, j = *k; *i; i++) { + + if (!streq(*i, controller)) { +- char _cleanup_free_ *t; ++ _cleanup_free_ char *t; + + t = set_remove(controllers, *i); + if (!t) { +@@ -308,7 +308,11 @@ int mount_cgroup_controllers(char ***join_controllers) { + controller = NULL; + } + +- p.where = strappenda("/sys/fs/cgroup/", options); ++ where = strappend("/sys/fs/cgroup/", options); ++ if (!where) ++ return log_oom(); ++ ++ p.where = where; + p.options = options; + + r = mount_one(&p, true); +@@ -319,7 +323,11 @@ int mount_cgroup_controllers(char ***join_controllers) { + char **i; + + for (i = *k; *i; i++) { +- char *t = strappenda("/sys/fs/cgroup/", *i); ++ _cleanup_free_ char *t = NULL; ++ ++ t = strappend("/sys/fs/cgroup/", *i); ++ if (!t) ++ return log_oom(); + + r = symlink(options, t); + if (r < 0 && errno != EEXIST) { +-- +1.7.9.2 + diff --git a/0001-completion-filter-templates-from-restartable-units.patch b/0001-completion-filter-templates-from-restartable-units.patch new file mode 100644 index 00000000..13e03e03 --- /dev/null +++ b/0001-completion-filter-templates-from-restartable-units.patch @@ -0,0 +1,30 @@ +Based on ec15977a3cd82eff6c94bb13db72195f7cd512e8 Mon Sep 17 00:00:00 2001 +From: Dave Reisner +Date: Fri, 29 Aug 2014 20:35:15 -0400 +Subject: [PATCH] completion: filter templates from restartable units + +Since c6a373a2634854, we might encounter unit templates via the +'list-units' verb. These aren't restartable (and we throw errors), so +make sure they're filtered out of the completion options. + +fixes downstream bug: https://bugs.archlinux.org/task/41719 +--- + shell-completion/bash/systemctl.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git shell-completion/bash/systemctl.in shell-completion/bash/systemctl.in +index 64b15df..0150018 100644 +--- shell-completion/bash/systemctl ++++ shell-completion/bash/systemctl +@@ -182,7 +182,7 @@ _systemctl () { + comps=$( __filter_units_by_property $mode CanStart yes \ + $( __get_all_units $mode \ + | while read -r line; do \ +- [[ "$line" =~ \.(device|snapshot|socket|timer)$ ]] || echo " $line"; \ ++ [[ "$line" =~ @\.|\.(device|snapshot|socket|timer)$ ]] || echo " $line"; \ + done )) + compopt -o filenames + +-- +1.7.9.2 + diff --git a/0001-conf-parser-silently-ignore-sections-starting-with-X.patch b/0001-conf-parser-silently-ignore-sections-starting-with-X.patch new file mode 100644 index 00000000..8ae66062 --- /dev/null +++ b/0001-conf-parser-silently-ignore-sections-starting-with-X.patch @@ -0,0 +1,73 @@ +From 342aea195051633c69ba7b8c02c82a0e5f8cbde4 Mon Sep 17 00:00:00 2001 +From: Michael Marineau +Date: Fri, 16 May 2014 16:58:31 -0700 +Subject: [PATCH] conf-parser: silently ignore sections starting with "X-" + +This allows external tools to keep additional unit information in a +separate section without scaring users with a big warning. +--- + src/shared/conf-parser.c | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +diff --git src/shared/conf-parser.c src/shared/conf-parser.c +index d27b1b7..062b15b 100644 +--- src/shared/conf-parser.c ++++ src/shared/conf-parser.c +@@ -204,6 +204,7 @@ static int parse_line(const char* unit, + bool allow_include, + char **section, + unsigned *section_line, ++ bool *section_ignored, + char *l, + void *userdata) { + +@@ -266,7 +267,7 @@ static int parse_line(const char* unit, + + if (sections && !nulstr_contains(sections, n)) { + +- if (!relaxed) ++ if (!relaxed && !startswith(n, "X-")) + log_syntax(unit, LOG_WARNING, filename, line, EINVAL, + "Unknown section '%s'. Ignoring.", n); + +@@ -274,10 +275,12 @@ static int parse_line(const char* unit, + free(*section); + *section = NULL; + *section_line = 0; ++ *section_ignored = true; + } else { + free(*section); + *section = n; + *section_line = line; ++ *section_ignored = false; + } + + return 0; +@@ -285,7 +288,7 @@ static int parse_line(const char* unit, + + if (sections && !*section) { + +- if (!relaxed) ++ if (!relaxed && !*section_ignored) + log_syntax(unit, LOG_WARNING, filename, line, EINVAL, + "Assignment outside of section. Ignoring."); + +@@ -328,6 +331,7 @@ int config_parse(const char *unit, + _cleanup_free_ char *section = NULL, *continuation = NULL; + _cleanup_fclose_ FILE *ours = NULL; + unsigned line = 0, section_line = 0; ++ bool section_ignored = false; + int r; + + assert(filename); +@@ -399,6 +403,7 @@ int config_parse(const char *unit, + allow_include, + §ion, + §ion_line, ++ §ion_ignored, + p, + userdata); + free(c); +-- +1.7.9.2 + diff --git a/0001-core-busname-add-lookup-string-for-BUSNAME_FAILURE_S.patch b/0001-core-busname-add-lookup-string-for-BUSNAME_FAILURE_S.patch new file mode 100644 index 00000000..b8989aef --- /dev/null +++ b/0001-core-busname-add-lookup-string-for-BUSNAME_FAILURE_S.patch @@ -0,0 +1,29 @@ +From 36d239dbdaf94ba2d96bb60ac45ecfc58624b1eb Mon Sep 17 00:00:00 2001 +From: Daniel Mack +Date: Fri, 7 Mar 2014 11:41:18 +0100 +Subject: [PATCH] core/busname: add lookup string for + BUSNAME_FAILURE_SERVICE_FAILED_PERMANENT + +When a busname unit enters BUSNAME_FAILURE_SERVICE_FAILED_PERMANENT, the +serialization will not be able to look up the result as string via +busname_result_to_string(). This leads to an assertion trap during +daemon-reexec. +--- + src/core/busname.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git src/core/busname.c src/core/busname.c +index 4c34538..237011a 100644 +--- src/core/busname.c ++++ src/core/busname.c +@@ -548,6 +548,7 @@ DEFINE_STRING_TABLE_LOOKUP(busname_state, BusNameState); + static const char* const busname_result_table[_BUSNAME_RESULT_MAX] = { + [BUSNAME_SUCCESS] = "success", + [BUSNAME_FAILURE_RESOURCES] = "resources", ++ [BUSNAME_FAILURE_SERVICE_FAILED_PERMANENT] = "failed-permanent", + }; + + DEFINE_STRING_TABLE_LOOKUP(busname_result, BusNameResult); +-- +1.7.9.2 + diff --git a/0001-core-close-socket-fds-asynchronously.patch b/0001-core-close-socket-fds-asynchronously.patch new file mode 100644 index 00000000..90649f90 --- /dev/null +++ b/0001-core-close-socket-fds-asynchronously.patch @@ -0,0 +1,89 @@ +Based on 574634bcacb01efe15ca2742effd461a5b7afb5f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Tue, 13 May 2014 23:22:13 +0200 +Subject: [PATCH] core: close socket fds asynchronously + +http://lists.freedesktop.org/archives/systemd-devel/2014-April/018928.html +--- + src/core/async.c | 24 ++++++++++++++++++++++++ + src/core/service.c | 5 +++-- + 2 files changed, 27 insertions(+), 2 deletions(-) + +Index: src/core/service.c +=================================================================== +--- src/core/service.c.orig ++++ src/core/service.c +@@ -25,6 +25,7 @@ + #include + #include + ++#include "async.h" + #include "manager.h" + #include "unit.h" + #include "service.h" +@@ -240,7 +241,7 @@ static void service_close_socket_fd(Serv + if (s->socket_fd < 0) + return; + +- close_nointr_nofail(s->socket_fd); ++ asynchronous_close(s->socket_fd); + s->socket_fd = -1; + } + +@@ -2767,7 +2768,7 @@ static int service_deserialize_item(Unit + else { + + if (s->socket_fd >= 0) +- close_nointr_nofail(s->socket_fd); ++ asynchronous_close(s->socket_fd); + s->socket_fd = fdset_remove(fds, fd); + } + } else if (streq(key, "main-exec-status-pid")) { +Index: src/core/async.c +=================================================================== +--- src/core/async.c.orig ++++ src/core/async.c +@@ -24,6 +24,7 @@ + + #include "async.h" + #include "log.h" ++#include "util.h" + + int asynchronous_job(void* (*func)(void *p), void *arg) { + pthread_attr_t a; +@@ -70,3 +71,26 @@ int asynchronous_sync(void) { + + return asynchronous_job(sync_thread, NULL); + } ++ ++static void *close_thread(void *p) { ++ int fd = PTR_TO_INT(p); ++ if (fd >= 0) ++ close_nointr_nofail(fd); ++ return NULL; ++} ++ ++int asynchronous_close(int fd) { ++ int r; ++ ++ /* This is supposed to behave similar to safe_close(), but ++ * actually invoke close() asynchronously, so that it will ++ * never block. Ideally the kernel would have an API for this, ++ * but it doesn't, so we work around it, and hide this as a ++ * far away as we can. */ ++ ++ r = asynchronous_job(close_thread, INT_TO_PTR(fd)); ++ if (r < 0 && fd >= 0) ++ close_nointr_nofail(fd); ++ ++ return -1; ++} +Index: src/core/async.h +=================================================================== +--- src/core/async.h.orig ++++ src/core/async.h +@@ -23,3 +23,4 @@ + + int asynchronous_job(void* (*func)(void *p), void *arg); + int asynchronous_sync(void); ++int asynchronous_close(int fd); diff --git a/0001-core-don-t-allow-enabling-if-unit-is-masked.patch b/0001-core-don-t-allow-enabling-if-unit-is-masked.patch new file mode 100644 index 00000000..7e193738 --- /dev/null +++ b/0001-core-don-t-allow-enabling-if-unit-is-masked.patch @@ -0,0 +1,36 @@ +From f7101b7368dfe41dbc8b7203e06133cccb589c01 Mon Sep 17 00:00:00 2001 +From: Jan Synacek +Date: Tue, 7 Oct 2014 13:35:41 +0200 +Subject: [PATCH] core: don't allow enabling if unit is masked + +--- + src/shared/install.c | 13 +++++++++++++ + 1 file changed, 13 insertions(+) + +diff --git src/shared/install.c src/shared/install.c +index fa064c2..945bb27 100644 +--- src/shared/install.c ++++ src/shared/install.c +@@ -1516,6 +1516,19 @@ int unit_file_enable( + return r; + + STRV_FOREACH(i, files) { ++ UnitFileState state; ++ ++ state = unit_file_get_state(scope, root_dir, *i); ++ if (state < 0) { ++ log_error("Failed to get unit file state for %s: %s", *i, strerror(-state)); ++ return state; ++ } ++ ++ if (state == UNIT_FILE_MASKED || state == UNIT_FILE_MASKED_RUNTIME) { ++ log_error("Failed to enable unit: Unit %s is masked", *i); ++ return -ENOTSUP; ++ } ++ + r = install_info_add_auto(&c, *i); + if (r < 0) + return r; +-- +1.7.9.2 + diff --git a/0001-core-fix-invalid-free-in-killall.patch b/0001-core-fix-invalid-free-in-killall.patch new file mode 100644 index 00000000..23d527e8 --- /dev/null +++ b/0001-core-fix-invalid-free-in-killall.patch @@ -0,0 +1,32 @@ +From 3e09eb5c83e56bc0184bd9d9c44f76047464f77c Mon Sep 17 00:00:00 2001 +From: Andreas Henriksson +Date: Fri, 13 Jun 2014 18:48:19 +0200 +Subject: [PATCH] core: fix invalid free() in killall() + +static int killall(....) in ./src/core/killall.c tries to get "s" +initialized by calling get_process_comm(...) which calls +read_one_line_file(...) which if it fails will mean it is left +uninitialized. +It is then used in argument to strna(s) call where it is +dereferenced(!), in addition to nothing else initializing it before +the scope it is in finishes. +--- + src/core/killall.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/core/killall.c src/core/killall.c +index 57ed41c..eab48f7 100644 +--- src/core/killall.c ++++ src/core/killall.c +@@ -168,7 +168,7 @@ static int killall(int sig, Set *pids, bool send_sighup) { + continue; + + if (sig == SIGKILL) { +- _cleanup_free_ char *s; ++ _cleanup_free_ char *s = NULL; + + get_process_comm(pid, &s); + log_notice("Sending SIGKILL to PID "PID_FMT" (%s).", pid, strna(s)); +-- +1.7.9.2 + diff --git a/0001-core-fix-resource-leak-in-manager_environment_add.patch b/0001-core-fix-resource-leak-in-manager_environment_add.patch new file mode 100644 index 00000000..7991b3be --- /dev/null +++ b/0001-core-fix-resource-leak-in-manager_environment_add.patch @@ -0,0 +1,32 @@ +From aa9f8a30fd7dc7aa3aa2575b75b3f9a0ab3f02db Mon Sep 17 00:00:00 2001 +From: Andreas Henriksson +Date: Tue, 16 Sep 2014 21:11:02 +0200 +Subject: [PATCH] core: fix resource leak in manager_environment_add + +Second error path must free the (potentially) allocated memory in the +first code chunk before returning. + +Found by coverity. Fixes: CID#1237750 +--- + src/core/manager.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git src/core/manager.c src/core/manager.c +index 0770727..e0c1cd1 100644 +--- src/core/manager.c ++++ src/core/manager.c +@@ -2751,8 +2751,10 @@ int manager_environment_add(Manager *m, char **minus, char **plus) { + + if (!strv_isempty(plus)) { + b = strv_env_merge(2, l, plus); +- if (!b) ++ if (!b) { ++ strv_free(a); + return -ENOMEM; ++ } + + l = b; + } +-- +1.7.9.2 + diff --git a/0001-core-rework-device-state-logic.patch b/0001-core-rework-device-state-logic.patch deleted file mode 100644 index 0234602c..00000000 --- a/0001-core-rework-device-state-logic.patch +++ /dev/null @@ -1,917 +0,0 @@ -From 628c89cc68ab96fce2de7ebba5933725d147aecc Mon Sep 17 00:00:00 2001 -From: Lennart Poettering -Date: Fri, 27 Feb 2015 21:55:08 +0100 -Subject: [PATCH] core: rework device state logic -References: https://bugzilla.redhat.com/show_bug.cgi?id=1196452 - -This change introduces a new state "tentative" for device units. Device -units are considered "plugged" when udev announced them, "dead" when -they are not available in the kernel, and "tentative" when they are -referenced in /proc/self/mountinfo or /proc/swaps but not (yet) -announced via udev. - -This should fix a race when device nodes (like loop devices) are created -and immediately mounted. Previously, systemd might end up seeing the -mount unit before the device, and would thus pull down the mount because -its BindTo dependency on the device would not be fulfilled. -=== -[The bug can be triggered by - cp -a /dev/sda1 (pick any source) /dev/xxx; mount /dev/xxx /mnt; - since "xxx" is a device udev does not know about even if it runs - and is race-free in the moment you are trying. - -jengelh] ---- - src/core/device.c | 368 +++++++++++++++++++++++++++++++++--------------------- - src/core/device.h | 14 ++- - src/core/mount.c | 46 ++++--- - src/core/swap.c | 32 +++-- - src/core/swap.h | 4 +- - src/core/unit.c | 1 - - 6 files changed, 285 insertions(+), 180 deletions(-) - -diff --git a/src/core/device.c b/src/core/device.c -index 2d983cc..e41ed41 100644 ---- a/src/core/device.c -+++ b/src/core/device.c -@@ -34,7 +34,8 @@ - - static const UnitActiveState state_translation_table[_DEVICE_STATE_MAX] = { - [DEVICE_DEAD] = UNIT_INACTIVE, -- [DEVICE_PLUGGED] = UNIT_ACTIVE -+ [DEVICE_TENTATIVE] = UNIT_ACTIVATING, -+ [DEVICE_PLUGGED] = UNIT_ACTIVE, - }; - - static int device_dispatch_io(sd_event_source *source, int fd, uint32_t revents, void *userdata); -@@ -63,6 +64,41 @@ static void device_unset_sysfs(Device *d) { - d->sysfs = NULL; - } - -+static int device_set_sysfs(Device *d, const char *sysfs) { -+ Device *first; -+ char *copy; -+ int r; -+ -+ assert(d); -+ -+ if (streq_ptr(d->sysfs, sysfs)) -+ return 0; -+ -+ r = hashmap_ensure_allocated(&UNIT(d)->manager->devices_by_sysfs, &string_hash_ops); -+ if (r < 0) -+ return r; -+ -+ copy = strdup(sysfs); -+ if (!copy) -+ return -ENOMEM; -+ -+ device_unset_sysfs(d); -+ -+ first = hashmap_get(UNIT(d)->manager->devices_by_sysfs, sysfs); -+ LIST_PREPEND(same_sysfs, first, d); -+ -+ r = hashmap_replace(UNIT(d)->manager->devices_by_sysfs, copy, first); -+ if (r < 0) { -+ LIST_REMOVE(same_sysfs, first, d); -+ free(copy); -+ return r; -+ } -+ -+ d->sysfs = copy; -+ -+ return 0; -+} -+ - static void device_init(Unit *u) { - Device *d = DEVICE(u); - -@@ -110,8 +146,13 @@ static int device_coldplug(Unit *u) { - assert(d); - assert(d->state == DEVICE_DEAD); - -- if (d->sysfs) -+ if (d->found & DEVICE_FOUND_UDEV) -+ /* If udev says the device is around, it's around */ - device_set_state(d, DEVICE_PLUGGED); -+ else if (d->found != DEVICE_NOT_FOUND) -+ /* If a device is found in /proc/self/mountinfo or -+ * /proc/swaps, it's "tentatively" around. */ -+ device_set_state(d, DEVICE_TENTATIVE); - - return 0; - } -@@ -140,49 +181,9 @@ _pure_ static const char *device_sub_state_to_string(Unit *u) { - return device_state_to_string(DEVICE(u)->state); - } - --static int device_add_escaped_name(Unit *u, const char *dn) { -- _cleanup_free_ char *e = NULL; -- int r; -- -- assert(u); -- assert(dn); -- assert(dn[0] == '/'); -- -- e = unit_name_from_path(dn, ".device"); -- if (!e) -- return -ENOMEM; -- -- r = unit_add_name(u, e); -- if (r < 0 && r != -EEXIST) -- return r; -- -- return 0; --} -- --static int device_find_escape_name(Manager *m, const char *dn, Unit **_u) { -- _cleanup_free_ char *e = NULL; -- Unit *u; -- -- assert(m); -- assert(dn); -- assert(dn[0] == '/'); -- assert(_u); -- -- e = unit_name_from_path(dn, ".device"); -- if (!e) -- return -ENOMEM; -- -- u = manager_get_unit(m, e); -- if (u) { -- *_u = u; -- return 1; -- } -- -- return 0; --} -- --static int device_make_description(Unit *u, struct udev_device *dev, const char *path) { -+static int device_update_description(Unit *u, struct udev_device *dev, const char *path) { - const char *model; -+ int r; - - assert(u); - assert(dev); -@@ -207,13 +208,16 @@ static int device_make_description(Unit *u, struct udev_device *dev, const char - - j = strjoin(model, " ", label, NULL); - if (j) -- return unit_set_description(u, j); -- } -+ r = unit_set_description(u, j); -+ } else -+ r = unit_set_description(u, model); -+ } else -+ r = unit_set_description(u, path); - -- return unit_set_description(u, model); -- } -+ if (r < 0) -+ log_unit_error_errno(u->id, r, "Failed to set device description: %m"); - -- return unit_set_description(u, path); -+ return r; - } - - static int device_add_udev_wants(Unit *u, struct udev_device *dev) { -@@ -240,20 +244,20 @@ static int device_add_udev_wants(Unit *u, struct udev_device *dev) { - - n = unit_name_mangle(e, MANGLE_NOGLOB); - if (!n) -- return -ENOMEM; -+ return log_oom(); - - r = unit_add_dependency_by_name(u, UNIT_WANTS, n, NULL, true); - if (r < 0) -- return r; -+ return log_unit_error_errno(u->id, r, "Failed to add wants dependency: %m"); - } - if (!isempty(state)) -- log_unit_warning(u->id, "Property %s on %s has trailing garbage, ignoring.", -- property, strna(udev_device_get_syspath(dev))); -+ log_unit_warning(u->id, "Property %s on %s has trailing garbage, ignoring.", property, strna(udev_device_get_syspath(dev))); - - return 0; - } - --static int device_update_unit(Manager *m, struct udev_device *dev, const char *path, bool main) { -+static int device_setup_unit(Manager *m, struct udev_device *dev, const char *path, bool main) { -+ _cleanup_free_ char *e = NULL; - const char *sysfs; - Unit *u = NULL; - bool delete; -@@ -267,12 +271,18 @@ static int device_update_unit(Manager *m, struct udev_device *dev, const char *p - if (!sysfs) - return 0; - -- r = device_find_escape_name(m, path, &u); -- if (r < 0) -- return r; -+ e = unit_name_from_path(path, ".device"); -+ if (!e) -+ return log_oom(); -+ -+ u = manager_get_unit(m, e); - -- if (u && DEVICE(u)->sysfs && !path_equal(DEVICE(u)->sysfs, sysfs)) -+ if (u && -+ DEVICE(u)->sysfs && -+ !path_equal(DEVICE(u)->sysfs, sysfs)) { -+ log_unit_error(u->id, "Device %s appeared twice with different sysfs paths %s and %s", e, DEVICE(u)->sysfs, sysfs); - return -EEXIST; -+ } - - if (!u) { - delete = true; -@@ -281,7 +291,7 @@ static int device_update_unit(Manager *m, struct udev_device *dev, const char *p - if (!u) - return log_oom(); - -- r = device_add_escaped_name(u, path); -+ r = unit_add_name(u, e); - if (r < 0) - goto fail; - -@@ -293,37 +303,16 @@ static int device_update_unit(Manager *m, struct udev_device *dev, const char *p - * actually been seen yet ->sysfs will not be - * initialized. Hence initialize it if necessary. */ - -- if (!DEVICE(u)->sysfs) { -- Device *first; -- -- DEVICE(u)->sysfs = strdup(sysfs); -- if (!DEVICE(u)->sysfs) { -- r = -ENOMEM; -- goto fail; -- } -- -- r = hashmap_ensure_allocated(&m->devices_by_sysfs, &string_hash_ops); -- if (r < 0) -- goto fail; -- -- first = hashmap_get(m->devices_by_sysfs, sysfs); -- LIST_PREPEND(same_sysfs, first, DEVICE(u)); -- -- r = hashmap_replace(m->devices_by_sysfs, DEVICE(u)->sysfs, first); -- if (r < 0) -- goto fail; -- } -- -- device_make_description(u, dev, path); -+ r = device_set_sysfs(DEVICE(u), sysfs); -+ if (r < 0) -+ goto fail; - -- if (main) { -- /* The additional systemd udev properties we only -- * interpret for the main object */ -+ (void) device_update_description(u, dev, path); - -- r = device_add_udev_wants(u, dev); -- if (r < 0) -- goto fail; -- } -+ /* The additional systemd udev properties we only interpret -+ * for the main object */ -+ if (main) -+ (void) device_add_udev_wants(u, dev); - - /* Note that this won't dispatch the load queue, the caller - * has to do that if needed and appropriate */ -@@ -332,7 +321,7 @@ static int device_update_unit(Manager *m, struct udev_device *dev, const char *p - return 0; - - fail: -- log_warning_errno(r, "Failed to load device unit: %m"); -+ log_unit_warning_errno(u->id, r, "Failed to set up device unit: %m"); - - if (delete && u) - unit_free(u); -@@ -340,7 +329,7 @@ fail: - return r; - } - --static int device_process_new_device(Manager *m, struct udev_device *dev) { -+static int device_process_new(Manager *m, struct udev_device *dev) { - const char *sysfs, *dn, *alias; - struct udev_list_entry *item = NULL, *first = NULL; - int r; -@@ -352,14 +341,14 @@ static int device_process_new_device(Manager *m, struct udev_device *dev) { - return 0; - - /* Add the main unit named after the sysfs path */ -- r = device_update_unit(m, dev, sysfs, true); -+ r = device_setup_unit(m, dev, sysfs, true); - if (r < 0) - return r; - - /* Add an additional unit for the device node */ - dn = udev_device_get_devnode(dev); - if (dn) -- device_update_unit(m, dev, dn, false); -+ (void) device_setup_unit(m, dev, dn, false); - - /* Add additional units for all symlinks */ - first = udev_device_get_devlinks_list_entry(dev); -@@ -386,7 +375,7 @@ static int device_process_new_device(Manager *m, struct udev_device *dev) { - st.st_rdev != udev_device_get_devnum(dev)) - continue; - -- device_update_unit(m, dev, p, false); -+ (void) device_setup_unit(m, dev, p, false); - } - - /* Add additional units for all explicitly configured -@@ -403,7 +392,7 @@ static int device_process_new_device(Manager *m, struct udev_device *dev) { - e[l] = 0; - - if (path_is_absolute(e)) -- device_update_unit(m, dev, e, false); -+ (void) device_setup_unit(m, dev, e, false); - else - log_warning("SYSTEMD_ALIAS for %s is not an absolute path, ignoring: %s", sysfs, e); - } -@@ -414,39 +403,62 @@ static int device_process_new_device(Manager *m, struct udev_device *dev) { - return 0; - } - --static void device_set_path_plugged(Manager *m, struct udev_device *dev) { -- const char *sysfs; -+static void device_update_found_one(Device *d, bool add, DeviceFound found, bool now) { -+ DeviceFound n; -+ -+ assert(d); -+ -+ n = add ? (d->found | found) : (d->found & ~found); -+ if (n == d->found) -+ return; -+ -+ d->found = n; -+ -+ if (now) { -+ if (d->found & DEVICE_FOUND_UDEV) -+ device_set_state(d, DEVICE_PLUGGED); -+ else if (d->found != DEVICE_NOT_FOUND) -+ device_set_state(d, DEVICE_TENTATIVE); -+ else -+ device_set_state(d, DEVICE_DEAD); -+ } -+} -+ -+static int device_update_found_by_sysfs(Manager *m, const char *sysfs, bool add, DeviceFound found, bool now) { - Device *d, *l; - - assert(m); -- assert(dev); -+ assert(sysfs); - -- sysfs = udev_device_get_syspath(dev); -- if (!sysfs) -- return; -+ if (found == DEVICE_NOT_FOUND) -+ return 0; - - l = hashmap_get(m->devices_by_sysfs, sysfs); - LIST_FOREACH(same_sysfs, d, l) -- device_set_state(d, DEVICE_PLUGGED); -+ device_update_found_one(d, add, found, now); -+ -+ return 0; - } - --static int device_process_removed_device(Manager *m, struct udev_device *dev) { -- const char *sysfs; -- Device *d; -+static int device_update_found_by_name(Manager *m, const char *path, bool add, DeviceFound found, bool now) { -+ _cleanup_free_ char *e = NULL; -+ Unit *u; - - assert(m); -- assert(dev); -+ assert(path); - -- sysfs = udev_device_get_syspath(dev); -- if (!sysfs) -- return -ENOMEM; -+ if (found == DEVICE_NOT_FOUND) -+ return 0; - -- /* Remove all units of this sysfs path */ -- while ((d = hashmap_get(m->devices_by_sysfs, sysfs))) { -- device_unset_sysfs(d); -- device_set_state(d, DEVICE_DEAD); -- } -+ e = unit_name_from_path(path, ".device"); -+ if (!e) -+ return log_oom(); - -+ u = manager_get_unit(m, e); -+ if (!u) -+ return 0; -+ -+ device_update_found_one(DEVICE(u), add, found, now); - return 0; - } - -@@ -462,22 +474,6 @@ static bool device_is_ready(struct udev_device *dev) { - return parse_boolean(ready) != 0; - } - --static int device_process_new_path(Manager *m, const char *path) { -- _cleanup_udev_device_unref_ struct udev_device *dev = NULL; -- -- assert(m); -- assert(path); -- -- dev = udev_device_new_from_syspath(m->udev, path); -- if (!dev) -- return log_oom(); -- -- if (!device_is_ready(dev)) -- return 0; -- -- return device_process_new_device(m, dev); --} -- - static Unit *device_following(Unit *u) { - Device *d = DEVICE(u); - Device *other, *first = NULL; -@@ -604,12 +600,31 @@ static int device_enumerate(Manager *m) { - goto fail; - - first = udev_enumerate_get_list_entry(e); -- udev_list_entry_foreach(item, first) -- device_process_new_path(m, udev_list_entry_get_name(item)); -+ udev_list_entry_foreach(item, first) { -+ _cleanup_udev_device_unref_ struct udev_device *dev = NULL; -+ const char *sysfs; -+ -+ sysfs = udev_list_entry_get_name(item); -+ -+ dev = udev_device_new_from_syspath(m->udev, sysfs); -+ if (!dev) { -+ log_oom(); -+ continue; -+ } -+ -+ if (!device_is_ready(dev)) -+ continue; -+ -+ (void) device_process_new(m, dev); -+ -+ device_update_found_by_sysfs(m, sysfs, true, DEVICE_FOUND_UDEV, false); -+ } - - return 0; - - fail: -+ log_error_errno(r, "Failed to enumerate devices: %m"); -+ - device_shutdown(m); - return r; - } -@@ -617,7 +632,7 @@ fail: - static int device_dispatch_io(sd_event_source *source, int fd, uint32_t revents, void *userdata) { - _cleanup_udev_device_unref_ struct udev_device *dev = NULL; - Manager *m = userdata; -- const char *action; -+ const char *action, *sysfs; - int r; - - assert(m); -@@ -639,33 +654,47 @@ static int device_dispatch_io(sd_event_source *source, int fd, uint32_t revents, - if (!dev) - return 0; - -+ sysfs = udev_device_get_syspath(dev); -+ if (!sysfs) { -+ log_error("Failed to get udev sys path."); -+ return 0; -+ } -+ - action = udev_device_get_action(dev); - if (!action) { - log_error("Failed to get udev action string."); - return 0; - } - -- if (streq(action, "remove") || !device_is_ready(dev)) { -- r = device_process_removed_device(m, dev); -- if (r < 0) -- log_error_errno(r, "Failed to process device remove event: %m"); -- -- r = swap_process_removed_device(m, dev); -+ if (streq(action, "remove")) { -+ r = swap_process_device_remove(m, dev); - if (r < 0) - log_error_errno(r, "Failed to process swap device remove event: %m"); - -- } else { -- r = device_process_new_device(m, dev); -- if (r < 0) -- log_error_errno(r, "Failed to process device new event: %m"); -+ /* If we get notified that a device was removed by -+ * udev, then it's completely gone, hence unset all -+ * found bits */ -+ device_update_found_by_sysfs(m, sysfs, false, DEVICE_FOUND_UDEV|DEVICE_FOUND_MOUNT|DEVICE_FOUND_SWAP, true); - -- r = swap_process_new_device(m, dev); -+ } else if (device_is_ready(dev)) { -+ -+ (void) device_process_new(m, dev); -+ -+ r = swap_process_device_new(m, dev); - if (r < 0) - log_error_errno(r, "Failed to process swap device new event: %m"); - - manager_dispatch_load_queue(m); - -- device_set_path_plugged(m, dev); -+ /* The device is found now, set the udev found bit */ -+ device_update_found_by_sysfs(m, sysfs, true, DEVICE_FOUND_UDEV, true); -+ -+ } else { -+ /* The device is nominally around, but not ready for -+ * us. Hence unset the udev bit, but leave the rest -+ * around. */ -+ -+ device_update_found_by_sysfs(m, sysfs, false, DEVICE_FOUND_UDEV, true); - } - - return 0; -@@ -684,9 +713,58 @@ static bool device_supported(Manager *m) { - return read_only <= 0; - } - -+int device_found_node(Manager *m, const char *node, bool add, DeviceFound found, bool now) { -+ _cleanup_udev_device_unref_ struct udev_device *dev = NULL; -+ struct stat st; -+ -+ assert(m); -+ assert(node); -+ -+ /* This is called whenever we find a device referenced in -+ * /proc/swaps or /proc/self/mounts. Such a device might be -+ * mounted/enabled at a time where udev has not finished -+ * probing it yet, and we thus haven't learned about it -+ * yet. In this case we will set the device unit to -+ * "tentative" state. */ -+ -+ if (add) { -+ if (!path_startswith(node, "/dev")) -+ return 0; -+ -+ if (stat(node, &st) < 0) { -+ if (errno == ENOENT) -+ return 0; -+ -+ return log_error_errno(errno, "Failed to stat device node file %s: %m", node); -+ } -+ -+ if (!S_ISBLK(st.st_mode) && !S_ISCHR(st.st_mode)) -+ return 0; -+ -+ dev = udev_device_new_from_devnum(m->udev, S_ISBLK(st.st_mode) ? 'b' : 'c', st.st_rdev); -+ if (!dev) { -+ if (errno == ENOENT) -+ return 0; -+ -+ return log_oom(); -+ } -+ -+ /* If the device is known in the kernel and newly -+ * appeared, then we'll create a device unit for it, -+ * under the name referenced in /proc/swaps or -+ * /proc/self/mountinfo. */ -+ -+ (void) device_setup_unit(m, dev, node, false); -+ } -+ -+ /* Update the device unit's state, should it exist */ -+ return device_update_found_by_name(m, node, add, found, now); -+} -+ - static const char* const device_state_table[_DEVICE_STATE_MAX] = { - [DEVICE_DEAD] = "dead", -- [DEVICE_PLUGGED] = "plugged" -+ [DEVICE_TENTATIVE] = "tentative", -+ [DEVICE_PLUGGED] = "plugged", - }; - - DEFINE_STRING_TABLE_LOOKUP(device_state, DeviceState); -diff --git a/src/core/device.h b/src/core/device.h -index 9065085..9f46e08 100644 ---- a/src/core/device.h -+++ b/src/core/device.h -@@ -28,20 +28,28 @@ typedef struct Device Device; - * simplifies the state engine greatly */ - typedef enum DeviceState { - DEVICE_DEAD, -- DEVICE_PLUGGED, -+ DEVICE_TENTATIVE, /* mounted or swapped, but not (yet) announced by udev */ -+ DEVICE_PLUGGED, /* announced by udev */ - _DEVICE_STATE_MAX, - _DEVICE_STATE_INVALID = -1 - } DeviceState; - -+typedef enum DeviceFound { -+ DEVICE_NOT_FOUND = 0, -+ DEVICE_FOUND_UDEV = 1, -+ DEVICE_FOUND_MOUNT = 2, -+ DEVICE_FOUND_SWAP = 4, -+} DeviceFound; -+ - struct Device { - Unit meta; - - char *sysfs; -+ DeviceFound found; - - /* In order to be able to distinguish dependencies on - different device nodes we might end up creating multiple - devices for the same sysfs path. We chain them up here. */ -- - LIST_FIELDS(struct Device, same_sysfs); - - DeviceState state; -@@ -51,3 +59,5 @@ extern const UnitVTable device_vtable; - - const char* device_state_to_string(DeviceState i) _const_; - DeviceState device_state_from_string(const char *s) _pure_; -+ -+int device_found_node(Manager *m, const char *node, bool add, DeviceFound found, bool now); -diff --git a/src/core/mount.c b/src/core/mount.c -index 40037e7..8e4a376 100644 ---- a/src/core/mount.c -+++ b/src/core/mount.c -@@ -1386,7 +1386,7 @@ static int mount_dispatch_timer(sd_event_source *source, usec_t usec, void *user - return 0; - } - --static int mount_add_one( -+static int mount_setup_unit( - Manager *m, - const char *what, - const char *where, -@@ -1429,7 +1429,7 @@ static int mount_add_one( - - u = unit_new(m, sizeof(Mount)); - if (!u) -- return -ENOMEM; -+ return log_oom(); - - r = unit_add_name(u, e); - if (r < 0) -@@ -1542,6 +1542,8 @@ static int mount_add_one( - return 0; - - fail: -+ log_warning_errno(r, "Failed to set up mount unit: %m"); -+ - if (delete && u) - unit_free(u); - -@@ -1549,33 +1551,36 @@ fail: - } - - static int mount_load_proc_self_mountinfo(Manager *m, bool set_flags) { -- _cleanup_(mnt_free_tablep) struct libmnt_table *tb = NULL; -- _cleanup_(mnt_free_iterp) struct libmnt_iter *itr = NULL; -- struct libmnt_fs *fs; -+ _cleanup_(mnt_free_tablep) struct libmnt_table *t = NULL; -+ _cleanup_(mnt_free_iterp) struct libmnt_iter *i = NULL; - int r = 0; - - assert(m); - -- tb = mnt_new_table(); -- itr = mnt_new_iter(MNT_ITER_FORWARD); -- if (!tb || !itr) -+ t = mnt_new_table(); -+ if (!t) - return log_oom(); - -- r = mnt_table_parse_mtab(tb, NULL); -+ i = mnt_new_iter(MNT_ITER_FORWARD); -+ if (!i) -+ return log_oom(); -+ -+ r = mnt_table_parse_mtab(t, NULL); - if (r < 0) -- return r; -+ return log_error_errno(r, "Failed to parse /proc/self/mountinfo: %m"); - - r = 0; - for (;;) { - const char *device, *path, *options, *fstype; - _cleanup_free_ const char *d = NULL, *p = NULL; -+ struct libmnt_fs *fs; - int k; - -- k = mnt_table_next_fs(tb, itr, &fs); -+ k = mnt_table_next_fs(t, i, &fs); - if (k == 1) - break; -- else if (k < 0) -- return log_error_errno(k, "Failed to get next entry from /etc/fstab: %m"); -+ if (k < 0) -+ return log_error_errno(k, "Failed to get next entry from /proc/self/mountinfo: %m"); - - device = mnt_fs_get_source(fs); - path = mnt_fs_get_target(fs); -@@ -1583,11 +1588,16 @@ static int mount_load_proc_self_mountinfo(Manager *m, bool set_flags) { - fstype = mnt_fs_get_fstype(fs); - - d = cunescape(device); -+ if (!d) -+ return log_oom(); -+ - p = cunescape(path); -- if (!d || !p) -+ if (!p) - return log_oom(); - -- k = mount_add_one(m, d, p, options, fstype, set_flags); -+ (void) device_found_node(m, d, true, DEVICE_FOUND_MOUNT, set_flags); -+ -+ k = mount_setup_unit(m, d, p, options, fstype, set_flags); - if (r == 0 && k < 0) - r = k; - } -@@ -1731,8 +1741,6 @@ static int mount_dispatch_io(sd_event_source *source, int fd, uint32_t revents, - - r = mount_load_proc_self_mountinfo(m, true); - if (r < 0) { -- log_error_errno(r, "Failed to reread /proc/self/mountinfo: %m"); -- - /* Reset flags, just in case, for later calls */ - LIST_FOREACH(units_by_type, u, m->units_by_type[UNIT_MOUNT]) { - Mount *mount = MOUNT(u); -@@ -1765,6 +1773,10 @@ static int mount_dispatch_io(sd_event_source *source, int fd, uint32_t revents, - break; - } - -+ if (mount->parameters_proc_self_mountinfo.what) -+ (void) device_found_node(m, mount->parameters_proc_self_mountinfo.what, false, DEVICE_FOUND_MOUNT, true); -+ -+ - } else if (mount->just_mounted || mount->just_changed) { - - /* New or changed mount entry */ -diff --git a/src/core/swap.c b/src/core/swap.c -index f73a8e6..de3a5d8 100644 ---- a/src/core/swap.c -+++ b/src/core/swap.c -@@ -331,7 +331,7 @@ static int swap_load(Unit *u) { - return swap_verify(s); - } - --static int swap_add_one( -+static int swap_setup_unit( - Manager *m, - const char *what, - const char *what_proc_swaps, -@@ -356,8 +356,10 @@ static int swap_add_one( - - if (u && - SWAP(u)->from_proc_swaps && -- !path_equal(SWAP(u)->parameters_proc_swaps.what, what_proc_swaps)) -+ !path_equal(SWAP(u)->parameters_proc_swaps.what, what_proc_swaps)) { -+ log_error("Swap %s appeared twice with different device paths %s and %s", e, SWAP(u)->parameters_proc_swaps.what, what_proc_swaps); - return -EEXIST; -+ } - - if (!u) { - delete = true; -@@ -372,7 +374,7 @@ static int swap_add_one( - - SWAP(u)->what = strdup(what); - if (!SWAP(u)->what) { -- r = log_oom(); -+ r = -ENOMEM; - goto fail; - } - -@@ -400,7 +402,6 @@ static int swap_add_one( - p->priority = priority; - - unit_add_to_dbus_queue(u); -- - return 0; - - fail: -@@ -412,7 +413,7 @@ fail: - return r; - } - --static int swap_process_new_swap(Manager *m, const char *device, int prio, bool set_flags) { -+static int swap_process_new(Manager *m, const char *device, int prio, bool set_flags) { - _cleanup_udev_device_unref_ struct udev_device *d = NULL; - struct udev_list_entry *item = NULL, *first = NULL; - const char *dn; -@@ -421,7 +422,7 @@ static int swap_process_new_swap(Manager *m, const char *device, int prio, bool - - assert(m); - -- r = swap_add_one(m, device, device, prio, set_flags); -+ r = swap_setup_unit(m, device, device, prio, set_flags); - if (r < 0) - return r; - -@@ -437,7 +438,7 @@ static int swap_process_new_swap(Manager *m, const char *device, int prio, bool - /* Add the main device node */ - dn = udev_device_get_devnode(d); - if (dn && !streq(dn, device)) -- swap_add_one(m, dn, device, prio, set_flags); -+ swap_setup_unit(m, dn, device, prio, set_flags); - - /* Add additional units for all symlinks */ - first = udev_device_get_devlinks_list_entry(d); -@@ -458,7 +459,7 @@ static int swap_process_new_swap(Manager *m, const char *device, int prio, bool - st.st_rdev != udev_device_get_devnum(d)) - continue; - -- swap_add_one(m, p, device, prio, set_flags); -+ swap_setup_unit(m, p, device, prio, set_flags); - } - - return r; -@@ -1084,15 +1085,17 @@ static int swap_load_proc_swaps(Manager *m, bool set_flags) { - if (k == EOF) - break; - -- log_warning("Failed to parse /proc/swaps:%u", i); -+ log_warning("Failed to parse /proc/swaps:%u.", i); - continue; - } - - d = cunescape(dev); - if (!d) -- return -ENOMEM; -+ return log_oom(); -+ -+ device_found_node(m, d, true, DEVICE_FOUND_SWAP, set_flags); - -- k = swap_process_new_swap(m, d, prio, set_flags); -+ k = swap_process_new(m, d, prio, set_flags); - if (k < 0) - r = k; - } -@@ -1144,6 +1147,9 @@ static int swap_dispatch_io(sd_event_source *source, int fd, uint32_t revents, v - break; - } - -+ if (swap->what) -+ device_found_node(m, swap->what, false, DEVICE_FOUND_SWAP, true); -+ - } else if (swap->just_activated) { - - /* New swap entry */ -@@ -1291,7 +1297,7 @@ fail: - return r; - } - --int swap_process_new_device(Manager *m, struct udev_device *dev) { -+int swap_process_device_new(Manager *m, struct udev_device *dev) { - struct udev_list_entry *item = NULL, *first = NULL; - _cleanup_free_ char *e = NULL; - const char *dn; -@@ -1334,7 +1340,7 @@ int swap_process_new_device(Manager *m, struct udev_device *dev) { - return r; - } - --int swap_process_removed_device(Manager *m, struct udev_device *dev) { -+int swap_process_device_remove(Manager *m, struct udev_device *dev) { - const char *dn; - int r = 0; - Swap *s; -diff --git a/src/core/swap.h b/src/core/swap.h -index c36c6f2..5de8c20 100644 ---- a/src/core/swap.h -+++ b/src/core/swap.h -@@ -115,8 +115,8 @@ struct Swap { - - extern const UnitVTable swap_vtable; - --int swap_process_new_device(Manager *m, struct udev_device *dev); --int swap_process_removed_device(Manager *m, struct udev_device *dev); -+int swap_process_device_new(Manager *m, struct udev_device *dev); -+int swap_process_device_remove(Manager *m, struct udev_device *dev); - - const char* swap_state_to_string(SwapState i) _const_; - SwapState swap_state_from_string(const char *s) _pure_; -diff --git a/src/core/unit.c b/src/core/unit.c -index 63ccd67..7cd7043 100644 ---- a/src/core/unit.c -+++ b/src/core/unit.c -@@ -2834,7 +2834,6 @@ int unit_add_node_link(Unit *u, const char *what, bool wants) { - return -ENOMEM; - - r = manager_load_unit(u->manager, e, NULL, NULL, &device); -- - if (r < 0) - return r; - --- -2.1.4 - diff --git a/0001-core-swap-only-make-configured-units-part-of-swap.ta.patch b/0001-core-swap-only-make-configured-units-part-of-swap.ta.patch new file mode 100644 index 00000000..18e76f4f --- /dev/null +++ b/0001-core-swap-only-make-configured-units-part-of-swap.ta.patch @@ -0,0 +1,76 @@ +From 3018d31238caabc2e204aa161e647dc1c1b5d1c6 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Thu, 2 Oct 2014 00:11:36 -0400 +Subject: [PATCH] core/swap: only make configured units part of swap.target + +We used to make all .swap units either RequiredBy=swap.target or +WantedBy=swap.target. But swap.target should be the "configured swap +units", either through /etc/fstab or non-generated .swap units. It +is surprising when systemd starts treating a swap device that was +possibly temporarily enabled as a hard dependency for other units. +So do not add dependencies with swap.target for units gleaned from +/proc/swaps. + +Similarly, we added dependencies for all aliases of the device name, +which clutters up the dependency graph but does not seem to bring any +value, since the status of those following units is consistent with +the main one anyway. + +This should be a fix for [1], and it seems the right thing to do +anyway. + +[1] https://bugzilla.redhat.com/show_bug.cgi?id=1114786 +--- + src/core/swap.c | 20 +++++++++++--------- + 1 file changed, 11 insertions(+), 9 deletions(-) + +diff --git src/core/swap.c src/core/swap.c +index ef90d0e..b2ca048 100644 +--- src/core/swap.c ++++ src/core/swap.c +@@ -213,7 +213,7 @@ static int swap_add_device_links(Swap *s) { + } + + static int swap_add_default_dependencies(Swap *s) { +- bool nofail = false, noauto = false; ++ bool nofail, noauto; + int r; + + assert(s); +@@ -228,23 +228,25 @@ static int swap_add_default_dependencies(Swap *s) { + if (r < 0) + return r; + +- if (s->from_fragment) { +- SwapParameters *p = &s->parameters_fragment; ++ if (!s->from_fragment) ++ /* The swap unit can either be for an alternative device name, in which ++ * case we don't need to add the dependency on swap.target because this unit ++ * is following a different unit which will have this dependency added, ++ * or it can be derived from /proc/swaps, in which case it was started ++ * manually, and should not become a dependency of swap.target. */ ++ return 0; + +- nofail = p->nofail; +- noauto = p->noauto; +- } ++ nofail = s->parameters_fragment.nofail; ++ noauto = s->parameters_fragment.noauto; + + if (!noauto) { + if (nofail) + r = unit_add_dependency_by_name_inverse(UNIT(s), UNIT_WANTS, SPECIAL_SWAP_TARGET, NULL, true); + else + r = unit_add_two_dependencies_by_name_inverse(UNIT(s), UNIT_AFTER, UNIT_REQUIRES, SPECIAL_SWAP_TARGET, NULL, true); +- if (r < 0) +- return r; + } + +- return 0; ++ return r < 0 ? r : 0; + } + + static int swap_verify(Swap *s) { +-- +1.7.9.2 + diff --git a/0001-core-sysvcompat-network-should-be-equivalent-to-netw.patch b/0001-core-sysvcompat-network-should-be-equivalent-to-netw.patch new file mode 100644 index 00000000..06371697 --- /dev/null +++ b/0001-core-sysvcompat-network-should-be-equivalent-to-netw.patch @@ -0,0 +1,51 @@ +From 0404c609f399b2092a3de52eef9d75b0dc12e94c Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Mon, 12 May 2014 21:26:54 +0200 +Subject: [PATCH] core: sysvcompat - $network should be equivalent to + network-online, rather than network target +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Most likely the facility needed is actual connectivity, rather than whether or not the +network managment daemon is running. + +We also need to explicitly pull in the network-online.target, as it is not active by +default. + +This means {systemd-networkd,NetworkManager}-wait-online.service, can be enabled by default +as part of network-online.target, and only delay boot when some service actively pulls it in. + +See: + +Cc: Pavel Šimerda +Cc: Michal Sekletar +--- + TODO | 4 ---- + src/core/service.c | 8 ++++++-- + 2 files changed, 6 insertions(+), 6 deletions(-) + +Modified by Andrey Borzenkov for openSUSE. +Index: systemd-210/src/core/service.c +=================================================================== +--- systemd-210.orig/src/core/service.c ++++ systemd-210/src/core/service.c +@@ -404,7 +404,7 @@ static int sysv_translate_facility(const + static const char * const table[] = { + /* LSB defined facilities */ + "local_fs", NULL, +- "network", SPECIAL_NETWORK_TARGET, ++ "network", SPECIAL_NETWORK_ONLINE_TARGET, + "named", SPECIAL_NSS_LOOKUP_TARGET, + "portmap", SPECIAL_RPCBIND_TARGET, + "remote_fs", SPECIAL_REMOTE_FS_TARGET, +@@ -881,6 +881,9 @@ static int service_load_sysv_path(Servic + if (r == 0) + continue; + ++ if (streq(m, SPECIAL_NETWORK_ONLINE_TARGET) && d == UNIT_AFTER && e == _UNIT_DEPENDENCY_INVALID) ++ e = UNIT_WANTS; ++ + if (e != _UNIT_DEPENDENCY_INVALID) + r = unit_add_two_dependencies_by_name(u, d, e, m, NULL, true); + else diff --git a/0001-core-use-correct-format-string-for-UIDs.patch b/0001-core-use-correct-format-string-for-UIDs.patch new file mode 100644 index 00000000..f0906df0 --- /dev/null +++ b/0001-core-use-correct-format-string-for-UIDs.patch @@ -0,0 +1,20 @@ +Based on d6239dc4b0cf55a953d6c40890859b85d504ef19 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20Bartoszkiewicz?= +Date: Wed, 25 Jun 2014 14:54:48 +0200 +Subject: [PATCH] core: use correct format string for UIDs + +--- + src/core/main.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- src/core/main.c ++++ src/core/main.c 2014-06-26 09:29:28.182235325 +0000 +@@ -1526,7 +1526,7 @@ int main(int argc, char *argv[]) { + + } else { + _cleanup_free_ char *t = uid_to_name(getuid()); +- log_debug(PACKAGE_STRING " running in user mode for user "PID_FMT"/%s. (" SYSTEMD_FEATURES ")", ++ log_debug(PACKAGE_STRING " running in user mode for user "UID_FMT"/%s. (" SYSTEMD_FEATURES ")", + getuid(), t); + } + diff --git a/0001-detect-virt-Fix-Xen-domU-discovery.patch b/0001-detect-virt-Fix-Xen-domU-discovery.patch new file mode 100644 index 00000000..8582f560 --- /dev/null +++ b/0001-detect-virt-Fix-Xen-domU-discovery.patch @@ -0,0 +1,33 @@ +From a71516dfd1858f37712ef52a288bf5fb274383e0 Mon Sep 17 00:00:00 2001 +From: Thomas Blume +Date: Thu, 17 Jul 2014 11:25:37 +0200 +Subject: [PATCH] detect-virt: Fix Xen domU discovery + +The conditional for detection xen virtualization contained a little mistake. +It is checking for i to be empty: 'if (!i) {', but it must check for cap instead, +because: 'cap = strsep(&i, ",")' will set cap to the discovered value and i to +the next value after the separator. +Hence, i would be empty, if there is only control_d in domcap, leading to a wrong +domU detection. + +https://bugs.freedesktop.org/show_bug.cgi?id=77271 +--- + src/shared/virt.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/shared/virt.c src/shared/virt.c +index 774915f..20a8d7c 100644 +--- src/shared/virt.c ++++ src/shared/virt.c +@@ -173,7 +173,7 @@ int detect_vm(const char **id) { + if (streq(cap, "control_d")) + break; + +- if (!i) { ++ if (!cap) { + _id = "xen"; + r = 1; + } +-- +1.7.9.2 + diff --git a/0001-errno-make-sure-to-handle-the-3-errnos-that-are-alia.patch b/0001-errno-make-sure-to-handle-the-3-errnos-that-are-alia.patch new file mode 100644 index 00000000..d087eeb6 --- /dev/null +++ b/0001-errno-make-sure-to-handle-the-3-errnos-that-are-alia.patch @@ -0,0 +1,30 @@ +Based on 0d522a7a0547982eae9ab1b5971e4bed9c2fbc7c Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 24 Apr 2014 08:11:39 +0200 +Subject: [PATCH] errno: make sure to handle the 3 errnos that are aliases for + others properly + +--- + Makefile.am | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- Makefile.am ++++ Makefile.am 2014-05-12 00:00:00.000000000 +0000 +@@ -1078,7 +1078,7 @@ BUILT_SOURCES += \ + + src/shared/errno-list.txt: + $(AM_V_at)$(MKDIR_P) $(dir $@) +- $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include errno.h - < /dev/null | $(AWK) '/^#define[ \t]+E[^ _]+[ \t]+[0-9]/ { print $$2; }' > $@ ++ $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include errno.h - < /dev/null | $(AWK) '/^#define[ \t]+E[^ _]+[ \t]+/ { print $$2; }' > $@ + + src/shared/errno-from-name.gperf: src/shared/errno-list.txt + $(AM_V_at)$(MKDIR_P) $(dir $@) +@@ -1090,7 +1090,7 @@ src/shared/errno-from-name.h: src/shared + + src/shared/errno-to-name.h: src/shared/errno-list.txt + $(AM_V_at)$(MKDIR_P) $(dir $@) +- $(AM_V_GEN)$(AWK) 'BEGIN{ print "static const char* const errno_names[] = { "} { printf "[%s] = \"%s\",\n", $$1, $$1 } END{print "};"}' < $< > $@ ++ $(AM_V_GEN)$(AWK) 'BEGIN{ print "static const char* const errno_names[] = { "} !/EDEADLOCK/ && !/EWOULDBLOCK/ && !/ENOTSUP/ { printf "[%s] = \"%s\",\n", $$1, $$1 } END{print "};"}' < $< > $@ + + # ------------------------------------------------------------------------------ + systemd_SOURCES = \ diff --git a/0001-event-pull-in-sd-event.h-from-event-util.h.patch b/0001-event-pull-in-sd-event.h-from-event-util.h.patch new file mode 100644 index 00000000..e9fc98ce --- /dev/null +++ b/0001-event-pull-in-sd-event.h-from-event-util.h.patch @@ -0,0 +1,24 @@ +From 138992534878483de28417dfc61c546bba5cb8ad Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 10 Jul 2014 18:25:08 +0200 +Subject: [PATCH] event: pull in sd-event.h from event-util.h + +--- + src/libsystemd/sd-event/event-util.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git src/libsystemd/sd-event/event-util.h src/libsystemd/sd-event/event-util.h +index e58020d..e7cad9b 100644 +--- src/libsystemd/sd-event/event-util.h ++++ src/libsystemd/sd-event/event-util.h +@@ -22,6 +22,7 @@ + ***/ + + #include "util.h" ++#include "sd-event.h" + + DEFINE_TRIVIAL_CLEANUP_FUNC(sd_event*, sd_event_unref); + DEFINE_TRIVIAL_CLEANUP_FUNC(sd_event_source*, sd_event_source_unref); +-- +1.7.9.2 + diff --git a/0001-gpt-auto-generator-don-t-return-OOM-on-parentless-de.patch b/0001-gpt-auto-generator-don-t-return-OOM-on-parentless-de.patch new file mode 100644 index 00000000..be9add48 --- /dev/null +++ b/0001-gpt-auto-generator-don-t-return-OOM-on-parentless-de.patch @@ -0,0 +1,20 @@ +From 9c4495ca561624c2f0085507dd1288ed5f1247c5 Mon Sep 17 00:00:00 2001 +From: Tomasz Torcz +Date: Wed, 12 Mar 2014 19:25:11 +0100 +Subject: [PATCH] gpt-auto-generator: don't return OOM on parentless devices + +--- + src/gpt-auto-generator/gpt-auto-generator.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- src/gpt-auto-generator/gpt-auto-generator.c ++++ src/gpt-auto-generator/gpt-auto-generator.c 2014-03-18 13:35:11.438235125 +0000 +@@ -254,7 +254,7 @@ static int enumerate_partitions(struct u + + parent = udev_device_get_parent(d); + if (!parent) +- return log_oom(); ++ return 0; + + r = udev_enumerate_add_match_parent(e, parent); + if (r < 0) diff --git a/0001-hwdb-Update-database-of-Bluetooth-company-identifier.patch b/0001-hwdb-Update-database-of-Bluetooth-company-identifier.patch new file mode 100644 index 00000000..15de6363 --- /dev/null +++ b/0001-hwdb-Update-database-of-Bluetooth-company-identifier.patch @@ -0,0 +1,29 @@ +From e525326bd07ebf3cabcfd730bc479166723f2d44 Mon Sep 17 00:00:00 2001 +From: Marcel Holtmann +Date: Sun, 2 Mar 2014 10:02:10 -0800 +Subject: [PATCH] hwdb: Update database of Bluetooth company identifiers + +--- + hwdb/20-bluetooth-vendor-product.hwdb | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git hwdb/20-bluetooth-vendor-product.hwdb hwdb/20-bluetooth-vendor-product.hwdb +index db3bc24..0335a71 100644 +--- hwdb/20-bluetooth-vendor-product.hwdb ++++ hwdb/20-bluetooth-vendor-product.hwdb +@@ -902,3 +902,12 @@ bluetooth:v0129* + + bluetooth:v012A* + ID_VENDOR_FROM_DATABASE=Changzhou Yongse Infotech Co., Ltd ++ ++bluetooth:v012B* ++ ID_VENDOR_FROM_DATABASE=SportIQ ++ ++bluetooth:v012C* ++ ID_VENDOR_FROM_DATABASE=TEMEC Instruments B.V. ++ ++bluetooth:v012D* ++ ID_VENDOR_FROM_DATABASE=Sony Corporation +-- +1.7.9.2 + diff --git a/0001-hwdb-fix-case-sensitive-match.patch b/0001-hwdb-fix-case-sensitive-match.patch new file mode 100644 index 00000000..64642714 --- /dev/null +++ b/0001-hwdb-fix-case-sensitive-match.patch @@ -0,0 +1,25 @@ +From 4c02dd7153f970244950b5e00f7bdfea8d2ff0be Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Wed, 4 Jun 2014 17:55:14 +0200 +Subject: [PATCH] hwdb: fix case-sensitive match + +--- + hwdb/60-keyboard.hwdb | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index d053766..c7ff4e4 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -870,7 +870,7 @@ keyboard:dmi:bvn*:bvr*:bd*:svnOQO*Inc.*:pnOQO*Model*2*:pvr* + ########################################################### + + # Plantronics .Audio 626 DSP +-keyboard:usb:v047fpC006* ++keyboard:usb:v047FpC006* + KEYBOARD_KEY_b002f=f20 # Microphone mute button; should be micmute + + ########################################################### +-- +1.7.9.2 + diff --git a/0001-hwdb-keymaps-for-Samsung-900X3E-900X3F.patch b/0001-hwdb-keymaps-for-Samsung-900X3E-900X3F.patch new file mode 100644 index 00000000..d3acf899 --- /dev/null +++ b/0001-hwdb-keymaps-for-Samsung-900X3E-900X3F.patch @@ -0,0 +1,40 @@ +From 77e8ff6974ffaa6c9954e3d2264d9aa75ef25233 Mon Sep 17 00:00:00 2001 +From: Kieran Clancy +Date: Thu, 27 Feb 2014 16:02:57 +1030 +Subject: [PATCH] hwdb: keymaps for Samsung 900X3E/900X3F + +Keymaps for Samsung 900X3E and 900X3F should be the same as for other +models in the series. + +I have also moved the comment for '# Series 9' to the right place +--- + hwdb/60-keyboard.hwdb | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index edfa842..bd8fd10 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -897,9 +897,10 @@ keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*550P*:pvr* + KEYBOARD_KEY_a8=! # Fn Lock - Function lock on + KEYBOARD_KEY_a9=! # Fn Lock - Function lock off + ++# Series 7 / 9 + keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*700Z*:pvr* + keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*700G*:pvr* +-keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*900X[34][CDG]*:pvr* ++keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*900X[34][CDEFG]*:pvr* + keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*940X3G*:pvr* + KEYBOARD_KEY_ce=!prog1 # Fn+F1 launch settings + KEYBOARD_KEY_a0=!mute # Fn+F6 mute +@@ -909,7 +910,6 @@ keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*940X3G*:pvr* + KEYBOARD_KEY_96=!kbdillumup # Fn+F10 keyboard backlight up + KEYBOARD_KEY_b3=!prog3 # Fn+F11 fan/cooling mode changer + +-# Series 9 + keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*900X[34][AB]*:pvr* + KEYBOARD_KEY_ce=! # Fn+F8 keyboard backlight up + KEYBOARD_KEY_8d=! # Fn+F7 keyboard backlight down +-- +1.7.9.2 + diff --git a/0001-hwdb-update.patch b/0001-hwdb-update.patch new file mode 100644 index 00000000..f487f680 --- /dev/null +++ b/0001-hwdb-update.patch @@ -0,0 +1,6590 @@ +From 6080625dc833144aca0817d1b9fd23f2fbcdf5c2 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Tue, 18 Mar 2014 16:17:51 +0100 +Subject: [PATCH] hwdb: update + +--- + hwdb/20-OUI.hwdb | 779 +++++++++++++++++-- + hwdb/20-pci-vendor-model.hwdb | 1671 ++++++++++++++++++++++++++++++++++++----- + hwdb/20-usb-vendor-model.hwdb | 119 ++- + 3 files changed, 2330 insertions(+), 239 deletions(-) + +diff --git hwdb/20-OUI.hwdb hwdb/20-OUI.hwdb +index a51a00a..209b89e 100644 +--- hwdb/20-OUI.hwdb ++++ hwdb/20-OUI.hwdb +@@ -13558,6 +13558,9 @@ OUI:40D8551CA* + OUI:40D8551CB* + ID_OUI_FROM_DATABASE=MG S.r.l. + ++OUI:40D8551CC* ++ ID_OUI_FROM_DATABASE=NKT Photonics A/S ++ + OUI:40D8551CD* + ID_OUI_FROM_DATABASE=YXLON International A/S + +@@ -13630,6 +13633,9 @@ OUI:40D8551E3* + OUI:40D8551E4* + ID_OUI_FROM_DATABASE=STEK Ltd + ++OUI:40D85550D* ++ ID_OUI_FROM_DATABASE=Shenzhen MaiWei Cable TV Equipment CO.,LTD. ++ + OUI:40D855EE6* + ID_OUI_FROM_DATABASE=Narinet, Inc. + +@@ -13703,7 +13709,7 @@ OUI:000016* + ID_OUI_FROM_DATABASE=DU PONT PIXEL SYSTEMS . + + OUI:000017* +- ID_OUI_FROM_DATABASE=TEKELEC ++ ID_OUI_FROM_DATABASE=Oracle + + OUI:000018* + ID_OUI_FROM_DATABASE=WEBSTER COMPUTER CORPORATION +@@ -18029,7 +18035,7 @@ OUI:0005BB* + ID_OUI_FROM_DATABASE=Myspace AB + + OUI:0005BC* +- ID_OUI_FROM_DATABASE=Resorsys Ltd. ++ ID_OUI_FROM_DATABASE=Resource Data Management Ltd + + OUI:0005BD* + ID_OUI_FROM_DATABASE=ROAX BV +@@ -18977,7 +18983,7 @@ OUI:0006F7* + ID_OUI_FROM_DATABASE=ALPS Co,. Ltd. + + OUI:0006F8* +- ID_OUI_FROM_DATABASE=CPU Technology, Inc. ++ ID_OUI_FROM_DATABASE=The Boeing Company + + OUI:0006F9* + ID_OUI_FROM_DATABASE=Mitsui Zosen Systems Research Inc. +@@ -19337,7 +19343,7 @@ OUI:00076F* + ID_OUI_FROM_DATABASE=Synoptics Limited + + OUI:000770* +- ID_OUI_FROM_DATABASE=Locusnetworks Corporation ++ ID_OUI_FROM_DATABASE=Ubiquoss Inc + + OUI:000771* + ID_OUI_FROM_DATABASE=Embedded System Corporation +@@ -19616,7 +19622,7 @@ OUI:0007CC* + ID_OUI_FROM_DATABASE=Kaba Benzing GmbH + + OUI:0007CD* +- ID_OUI_FROM_DATABASE=NMTEL Co., Ltd. ++ ID_OUI_FROM_DATABASE=Kumoh Electronic Co, Ltd + + OUI:0007CE* + ID_OUI_FROM_DATABASE=Cabletime Limited +@@ -21584,7 +21590,7 @@ OUI:000A78* + ID_OUI_FROM_DATABASE=OLITEC + + OUI:000A79* +- ID_OUI_FROM_DATABASE=Allied Telesis K.K. corega division ++ ID_OUI_FROM_DATABASE=corega K.K + + OUI:000A7A* + ID_OUI_FROM_DATABASE=Kyoritsu Electric Co., Ltd. +@@ -22643,7 +22649,7 @@ OUI:000BDA* + ID_OUI_FROM_DATABASE=EyeCross Co.,Inc. + + OUI:000BDB* +- ID_OUI_FROM_DATABASE=Dell ESG PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:000BDC* + ID_OUI_FROM_DATABASE=AKCP +@@ -23774,7 +23780,7 @@ OUI:000D55* + ID_OUI_FROM_DATABASE=SANYCOM Technology Co.,Ltd + + OUI:000D56* +- ID_OUI_FROM_DATABASE=Dell ESG PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:000D57* + ID_OUI_FROM_DATABASE=Fujitsu I-Network Systems Limited. +@@ -25118,7 +25124,7 @@ OUI:000F1E* + ID_OUI_FROM_DATABASE=Chengdu KT Electric Co.of High & New Technology + + OUI:000F1F* +- ID_OUI_FROM_DATABASE=Dell ESG PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:000F20* + ID_OUI_FROM_DATABASE=Hewlett-Packard Company +@@ -26435,7 +26441,7 @@ OUI:0010D5* + ID_OUI_FROM_DATABASE=IMASDE CANARIAS, S.A. + + OUI:0010D6* +- ID_OUI_FROM_DATABASE=ITT - A/CD ++ ID_OUI_FROM_DATABASE=Exelis + + OUI:0010D7* + ID_OUI_FROM_DATABASE=ARGOSY RESEARCH INC. +@@ -26762,7 +26768,7 @@ OUI:001142* + ID_OUI_FROM_DATABASE=e-SMARTCOM INC. + + OUI:001143* +- ID_OUI_FROM_DATABASE=Dell ESG PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:001144* + ID_OUI_FROM_DATABASE=Assurance Technology Corp +@@ -27518,7 +27524,7 @@ OUI:00123E* + ID_OUI_FROM_DATABASE=ERUNE technology Co., Ltd. + + OUI:00123F* +- ID_OUI_FROM_DATABASE=Dell ESG PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:001240* + ID_OUI_FROM_DATABASE=AMOI ELECTRONICS CO.,LTD +@@ -28439,7 +28445,7 @@ OUI:001371* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + + OUI:001372* +- ID_OUI_FROM_DATABASE=Dell ESG PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:001373* + ID_OUI_FROM_DATABASE=BLwave Electronics Co., Ltd +@@ -28967,7 +28973,7 @@ OUI:001421* + ID_OUI_FROM_DATABASE=Total Wireless Technologies Pte. Ltd. + + OUI:001422* +- ID_OUI_FROM_DATABASE=Dell ESG PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:001423* + ID_OUI_FROM_DATABASE=J-S Co. NEUROCOM +@@ -30104,7 +30110,7 @@ OUI:00159C* + ID_OUI_FROM_DATABASE=B-KYUNG SYSTEM Co.,Ltd. + + OUI:00159D* +- ID_OUI_FROM_DATABASE=Minicom Advanced Systems ltd ++ ID_OUI_FROM_DATABASE=Tripp Lite + + OUI:00159E* + ID_OUI_FROM_DATABASE=Mad Catz Interactive Inc +@@ -30224,7 +30230,7 @@ OUI:0015C4* + ID_OUI_FROM_DATABASE=FLOVEL CO., LTD. + + OUI:0015C5* +- ID_OUI_FROM_DATABASE=Dell ESG PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:0015C6* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. +@@ -30914,7 +30920,7 @@ OUI:0016AA* + ID_OUI_FROM_DATABASE=Kei Communication Technology Inc. + + OUI:0016AB* +- ID_OUI_FROM_DATABASE=PBI-Dansensor A/S ++ ID_OUI_FROM_DATABASE=Dansensor A/S + + OUI:0016AC* + ID_OUI_FROM_DATABASE=Toho Technology Corp. +@@ -32342,7 +32348,7 @@ OUI:00188A* + ID_OUI_FROM_DATABASE=Infinova LLC + + OUI:00188B* +- ID_OUI_FROM_DATABASE=Dell ESG PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:00188C* + ID_OUI_FROM_DATABASE=Mobile Action Technology Inc. +@@ -35348,7 +35354,7 @@ OUI:001C74* + ID_OUI_FROM_DATABASE=Syswan Technologies Inc. + + OUI:001C75* +- ID_OUI_FROM_DATABASE=RF Systems GmbH ++ ID_OUI_FROM_DATABASE=Segnet Ltd. + + OUI:001C76* + ID_OUI_FROM_DATABASE=The Wandsworth Group Ltd +@@ -35831,7 +35837,7 @@ OUI:001D15* + ID_OUI_FROM_DATABASE=Shenzhen Dolphin Electronic Co., Ltd + + OUI:001D16* +- ID_OUI_FROM_DATABASE=Efixo ++ ID_OUI_FROM_DATABASE=SFR + + OUI:001D17* + ID_OUI_FROM_DATABASE=Digital Sky Corporation +@@ -35957,7 +35963,7 @@ OUI:001D3F* + ID_OUI_FROM_DATABASE=Mitron Pty Ltd + + OUI:001D40* +- ID_OUI_FROM_DATABASE=Living Independently Group, Inc. ++ ID_OUI_FROM_DATABASE=Intel – GE Care Innovations LLC + + OUI:001D41* + ID_OUI_FROM_DATABASE=Hardy Instruments +@@ -35969,7 +35975,7 @@ OUI:001D43* + ID_OUI_FROM_DATABASE=Shenzhen G-link Digital Technology Co., Ltd. + + OUI:001D44* +- ID_OUI_FROM_DATABASE=Krohne ++ ID_OUI_FROM_DATABASE=KROHNE + + OUI:001D45* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. +@@ -40316,7 +40322,7 @@ OUI:0022EE* + ID_OUI_FROM_DATABASE=Algo Communication Products Ltd + + OUI:0022EF* +- ID_OUI_FROM_DATABASE=Ibis Tek, LLC ++ ID_OUI_FROM_DATABASE=iWDL Technologies + + OUI:0022F0* + ID_OUI_FROM_DATABASE=3 Greens Aviation Limited +@@ -40361,7 +40367,7 @@ OUI:0022FE* + ID_OUI_FROM_DATABASE=Microprocessor Designs Inc + + OUI:0022FF* +- ID_OUI_FROM_DATABASE=NIVIS LLC ++ ID_OUI_FROM_DATABASE=iWDL Technologies + + OUI:002300* + ID_OUI_FROM_DATABASE=Cayee Computer Ltd. +@@ -41258,7 +41264,7 @@ OUI:00242E* + ID_OUI_FROM_DATABASE=Datastrip Inc. + + OUI:00242F* +- ID_OUI_FROM_DATABASE=VirtenSys Inc ++ ID_OUI_FROM_DATABASE=Micron + + OUI:002430* + ID_OUI_FROM_DATABASE=Ruby Tech Corp. +@@ -43028,7 +43034,7 @@ OUI:002686* + ID_OUI_FROM_DATABASE=Quantenna Communcations, Inc. + + OUI:002687* +- ID_OUI_FROM_DATABASE=ALLIED TELESIS, K.K corega division. ++ ID_OUI_FROM_DATABASE=Corega K.K + + OUI:002688* + ID_OUI_FROM_DATABASE=Juniper Networks +@@ -46118,7 +46124,7 @@ OUI:00605F* + ID_OUI_FROM_DATABASE=NIPPON UNISOFT CORPORATION + + OUI:006060* +- ID_OUI_FROM_DATABASE=DAWNING TECHNOLOGIES, INC. ++ ID_OUI_FROM_DATABASE=Data Innovations North America + + OUI:006061* + ID_OUI_FROM_DATABASE=WHISTLE COMMUNICATIONS CORP. +@@ -46621,12 +46627,18 @@ OUI:0070B0* + OUI:0070B3* + ID_OUI_FROM_DATABASE=DATA RECALL LTD. + ++OUI:0071CC* ++ ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. ++ + OUI:00738D* + ID_OUI_FROM_DATABASE=Tinno Mobile Technology Corp + + OUI:0073E0* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:007532* ++ ID_OUI_FROM_DATABASE=INID BV ++ + OUI:0075E1* + ID_OUI_FROM_DATABASE=Ampt, LLC + +@@ -48623,7 +48635,7 @@ OUI:00A086* + ID_OUI_FROM_DATABASE=AMBER WAVE SYSTEMS, INC. + + OUI:00A087* +- ID_OUI_FROM_DATABASE=Zarlink Semiconductor Ltd. ++ ID_OUI_FROM_DATABASE=Microsemi Corporation + + OUI:00A088* + ID_OUI_FROM_DATABASE=ESSENTIAL COMMUNICATIONS +@@ -49009,6 +49021,9 @@ OUI:00AA3C* + OUI:00AA70* + ID_OUI_FROM_DATABASE=LG Electronics + ++OUI:00ACE0* ++ ID_OUI_FROM_DATABASE=ARRIS Group, Inc. ++ + OUI:00B009* + ID_OUI_FROM_DATABASE=Grass Valley Group + +@@ -51550,6 +51565,9 @@ OUI:00E0FE* + OUI:00E0FF* + ID_OUI_FROM_DATABASE=SECURITY DYNAMICS TECHNOLOGIES, Inc. + ++OUI:00E16D* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:00E175* + ID_OUI_FROM_DATABASE=AK-Systems Ltd + +@@ -51703,6 +51721,9 @@ OUI:0444A1* + OUI:044665* + ID_OUI_FROM_DATABASE=Murata Manufacturing Co., Ltd. + ++OUI:04489A* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:044A50* + ID_OUI_FROM_DATABASE=Ramaxel Technology (Shenzhen) limited company + +@@ -51727,6 +51748,9 @@ OUI:045453* + OUI:0455CA* + ID_OUI_FROM_DATABASE=BriView (Xiamen) Corp. + ++OUI:04572F* ++ ID_OUI_FROM_DATABASE=Sertel Electronics UK Ltd ++ + OUI:04586F* + ID_OUI_FROM_DATABASE=Sichuan Whayer information industry Co.,LTD + +@@ -51892,6 +51916,9 @@ OUI:04E548* + OUI:04E662* + ID_OUI_FROM_DATABASE=Acroname Inc. + ++OUI:04E676* ++ ID_OUI_FROM_DATABASE=AMPAK Technology Inc. ++ + OUI:04E9E5* + ID_OUI_FROM_DATABASE=PJRC.COM, LLC + +@@ -52486,6 +52513,9 @@ OUI:085AE0* + OUI:085B0E* + ID_OUI_FROM_DATABASE=Fortinet, Inc. + ++OUI:085DDD* ++ ID_OUI_FROM_DATABASE=Mercury Corporation ++ + OUI:08606E* + ID_OUI_FROM_DATABASE=ASUSTek COMPUTER INC. + +@@ -52504,6 +52534,9 @@ OUI:086DF2* + OUI:087045* + ID_OUI_FROM_DATABASE=Apple + ++OUI:0874F6* ++ ID_OUI_FROM_DATABASE=Winterhalter Gastronom GmbH ++ + OUI:087572* + ID_OUI_FROM_DATABASE=Obelux Oy + +@@ -52573,6 +52606,9 @@ OUI:08ACA5* + OUI:08AF78* + ID_OUI_FROM_DATABASE=Totus Solutions, Inc. + ++OUI:08B2A3* ++ ID_OUI_FROM_DATABASE=Cynny Italia S.r.L. ++ + OUI:08B4CF* + ID_OUI_FROM_DATABASE=Abicom International + +@@ -52615,6 +52651,9 @@ OUI:08D5C0* + OUI:08D833* + ID_OUI_FROM_DATABASE=Shenzhen RF Technology Co,.Ltd + ++OUI:08DF1F* ++ ID_OUI_FROM_DATABASE=Bose Corporation ++ + OUI:08E5DA* + ID_OUI_FROM_DATABASE=NANJING FUJITSU COMPUTER PRODUCTS CO.,LTD. + +@@ -52687,6 +52726,9 @@ OUI:0C191F* + OUI:0C1DC2* + ID_OUI_FROM_DATABASE=SeAH Networks + ++OUI:0C2026* ++ ID_OUI_FROM_DATABASE=noax Technologies AG ++ + OUI:0C2724* + ID_OUI_FROM_DATABASE=Cisco + +@@ -52756,6 +52798,9 @@ OUI:0C5CD8* + OUI:0C6076* + ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. + ++OUI:0C63FC* ++ ID_OUI_FROM_DATABASE=Nanjing Signway Technology Co., Ltd ++ + OUI:0C6803* + ID_OUI_FROM_DATABASE=Cisco + +@@ -52984,6 +53029,9 @@ OUI:1000FD* + OUI:1001CA* + ID_OUI_FROM_DATABASE=Ashley Butterworth + ++OUI:1005CA* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:10090C* + ID_OUI_FROM_DATABASE=Janome Sewing Machine Co., Ltd. + +@@ -53008,6 +53056,9 @@ OUI:100E2B* + OUI:100E7E* + ID_OUI_FROM_DATABASE=Juniper networks + ++OUI:100F18* ++ ID_OUI_FROM_DATABASE=Fu Gang Electronic(KunShan)CO.,LTD ++ + OUI:1010B6* + ID_OUI_FROM_DATABASE=McCain Inc + +@@ -53158,6 +53209,9 @@ OUI:1083D2* + OUI:10880F* + ID_OUI_FROM_DATABASE=Daruma Telecomunicações e Informática S.A. + ++OUI:1088CE* ++ ID_OUI_FROM_DATABASE=Fiberhome Telecommunication Tech.Co.,Ltd. ++ + OUI:108CCF* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -53317,6 +53371,9 @@ OUI:1423D7* + OUI:142BD2* + ID_OUI_FROM_DATABASE=Armtel Ltd. + ++OUI:142BD6* ++ ID_OUI_FROM_DATABASE=Guangdong Appscomm Co.,Ltd ++ + OUI:142D27* + ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. + +@@ -53329,6 +53386,9 @@ OUI:142DF5* + OUI:14307A* + ID_OUI_FROM_DATABASE=Avermetrics + ++OUI:1430C6* ++ ID_OUI_FROM_DATABASE=Motorola Mobility LLC ++ + OUI:14358B* + ID_OUI_FROM_DATABASE=Mediabridge Products, LLC. + +@@ -53344,6 +53404,9 @@ OUI:14373B* + OUI:143AEA* + ID_OUI_FROM_DATABASE=Dynapower Company LLC + ++OUI:143DF2* ++ ID_OUI_FROM_DATABASE=Beijing Shidai Hongyuan Network Communication Co.,Ltd ++ + OUI:143E60* + ID_OUI_FROM_DATABASE=Alcatel-Lucent + +@@ -53368,6 +53431,9 @@ OUI:144C1A* + OUI:145412* + ID_OUI_FROM_DATABASE=Entis Co., Ltd. + ++OUI:145645* ++ ID_OUI_FROM_DATABASE=Savitech Corp. ++ + OUI:145A05* + ID_OUI_FROM_DATABASE=Apple + +@@ -53440,6 +53506,9 @@ OUI:14B126* + OUI:14B1C8* + ID_OUI_FROM_DATABASE=InfiniWing, Inc. + ++OUI:14B484* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:14B73D* + ID_OUI_FROM_DATABASE=ARCHEAN Technologies + +@@ -53489,7 +53558,7 @@ OUI:14EB33* + ID_OUI_FROM_DATABASE=BSMediasoft Co., Ltd. + + OUI:14EDA5* +- ID_OUI_FROM_DATABASE=Wächter GmbH Sicherheitssysteme ++ ID_OUI_FROM_DATABASE=Wächter GmbH Sicherheitssysteme + + OUI:14EE9D* + ID_OUI_FROM_DATABASE=AirNav Systems LLC +@@ -53572,6 +53641,9 @@ OUI:182032* + OUI:1820A6* + ID_OUI_FROM_DATABASE=Sage Co., Ltd. + ++OUI:18227E* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:182666* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -53726,7 +53798,7 @@ OUI:18A905* + ID_OUI_FROM_DATABASE=Hewlett-Packard Company + + OUI:18A99B* +- ID_OUI_FROM_DATABASE=Dell Inc PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:18AA45* + ID_OUI_FROM_DATABASE=Fon Technology +@@ -53779,6 +53851,9 @@ OUI:18CC23* + OUI:18D071* + ID_OUI_FROM_DATABASE=DASAN SMC, Inc. + ++OUI:18D5B6* ++ ID_OUI_FROM_DATABASE=SMG Holdings LLC ++ + OUI:18D66A* + ID_OUI_FROM_DATABASE=Inmarsat + +@@ -53824,6 +53899,9 @@ OUI:18F87A* + OUI:18FA6F* + ID_OUI_FROM_DATABASE=ISC applied systems corp + ++OUI:18FB7B* ++ ID_OUI_FROM_DATABASE=Dell Inc ++ + OUI:18FC9F* + ID_OUI_FROM_DATABASE=Changhe Electronics Co., Ltd. + +@@ -53863,9 +53941,15 @@ OUI:1C184A* + OUI:1C19DE* + ID_OUI_FROM_DATABASE=eyevis GmbH + ++OUI:1C1AC0* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:1C1B68* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + ++OUI:1C1CFD* ++ ID_OUI_FROM_DATABASE=Dalian Hi-Think Computer Technology, Corp ++ + OUI:1C1D67* + ID_OUI_FROM_DATABASE=Shenzhen Huawei Communication Technologies Co., Ltd + +@@ -54157,6 +54241,9 @@ OUI:201D03* + OUI:2021A5* + ID_OUI_FROM_DATABASE=LG Electronics Inc + ++OUI:202564* ++ ID_OUI_FROM_DATABASE=PEGATRON CORPORATION ++ + OUI:202598* + ID_OUI_FROM_DATABASE=Teleview + +@@ -54202,6 +54289,9 @@ OUI:204E6B* + OUI:204E7F* + ID_OUI_FROM_DATABASE=NETGEAR + ++OUI:2053CA* ++ ID_OUI_FROM_DATABASE=Risk Technology Ltd ++ + OUI:205476* + ID_OUI_FROM_DATABASE=Sony Mobile Communications AB + +@@ -54211,6 +54301,9 @@ OUI:205721* + OUI:2059A0* + ID_OUI_FROM_DATABASE=Paragon Technologies Inc. + ++OUI:205A00* ++ ID_OUI_FROM_DATABASE=Coval ++ + OUI:205B5E* + ID_OUI_FROM_DATABASE=Shenzhen Wonhe Technology Co., Ltd + +@@ -54265,12 +54358,18 @@ OUI:20918A* + OUI:2091D9* + ID_OUI_FROM_DATABASE=I'M SPA + ++OUI:209AE9* ++ ID_OUI_FROM_DATABASE=Volacomm Co., Ltd ++ + OUI:209BA5* + ID_OUI_FROM_DATABASE=JIAXING GLEAD Electronics Co.,Ltd + + OUI:20A2E7* + ID_OUI_FROM_DATABASE=Lee-Dickens Ltd + ++OUI:20A787* ++ ID_OUI_FROM_DATABASE=Bointec Taiwan Corporation Limited ++ + OUI:20AA25* + ID_OUI_FROM_DATABASE=IP-NET LLC + +@@ -54394,6 +54493,9 @@ OUI:24050F* + OUI:240917* + ID_OUI_FROM_DATABASE=Devlin Electronics Limited + ++OUI:240A11* ++ ID_OUI_FROM_DATABASE=TCT Mobile Limited ++ + OUI:240A64* + ID_OUI_FROM_DATABASE=AzureWaveTechnologies,Inc + +@@ -54691,9 +54793,15 @@ OUI:282CB2* + OUI:283152* + ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD + ++OUI:2832C5* ++ ID_OUI_FROM_DATABASE=Humax.co.,ltd ++ + OUI:283410* + ID_OUI_FROM_DATABASE=Enigma Diagnostics Limited + ++OUI:2834A2* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:283737* + ID_OUI_FROM_DATABASE=Apple + +@@ -54778,6 +54886,9 @@ OUI:2872F0* + OUI:287994* + ID_OUI_FROM_DATABASE=Realplay Digital Technology(Shenzhen) Co.,Ltd + ++OUI:288023* ++ ID_OUI_FROM_DATABASE=Hewlett Packard ++ + OUI:28852D* + ID_OUI_FROM_DATABASE=Touch Networks + +@@ -55024,6 +55135,9 @@ OUI:2C3731* + OUI:2C3996* + ID_OUI_FROM_DATABASE=SAGEMCOM + ++OUI:2C39C1* ++ ID_OUI_FROM_DATABASE=Ciena Corporation ++ + OUI:2C3A28* + ID_OUI_FROM_DATABASE=Fagor Electrónica + +@@ -55069,6 +55183,9 @@ OUI:2C5A05* + OUI:2C5AA3* + ID_OUI_FROM_DATABASE=PROMATE ELECTRONIC CO.LTD + ++OUI:2C5BE1* ++ ID_OUI_FROM_DATABASE=Centripetal Networks, Inc ++ + OUI:2C5D93* + ID_OUI_FROM_DATABASE=Ruckus Wireless + +@@ -55117,6 +55234,9 @@ OUI:2C8065* + OUI:2C8158* + ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd + ++OUI:2C8A72* ++ ID_OUI_FROM_DATABASE=HTC Corporation ++ + OUI:2C8BF2* + ID_OUI_FROM_DATABASE=Hitachi Metals America Ltd + +@@ -55135,6 +55255,9 @@ OUI:2C957F* + OUI:2C9717* + ID_OUI_FROM_DATABASE=I.C.Y. B.V. + ++OUI:2C9AA4* ++ ID_OUI_FROM_DATABASE=NGI SpA ++ + OUI:2C9E5F* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + +@@ -55327,6 +55450,9 @@ OUI:3055ED* + OUI:3057AC* + ID_OUI_FROM_DATABASE=IRLAB LTD. + ++OUI:3059B7* ++ ID_OUI_FROM_DATABASE=Microsoft ++ + OUI:305D38* + ID_OUI_FROM_DATABASE=Beissbarth + +@@ -55387,6 +55513,9 @@ OUI:308CFB* + OUI:3090AB* + ID_OUI_FROM_DATABASE=Apple + ++OUI:30918F* ++ ID_OUI_FROM_DATABASE=Technicolor ++ + OUI:3092F6* + ID_OUI_FROM_DATABASE=SHANGHAI SUNMON COMMUNICATION TECHNOGY CO.,LTD + +@@ -55417,12 +55546,18 @@ OUI:30B5C2* + OUI:30C750* + ID_OUI_FROM_DATABASE=MIC Technology Group + ++OUI:30C7AE* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:30C82A* + ID_OUI_FROM_DATABASE=Wi-Next s.r.l. + + OUI:30CDA7* + ID_OUI_FROM_DATABASE=Samsung Electronics ITS, Printer division + ++OUI:30D17E* ++ ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD ++ + OUI:30D357* + ID_OUI_FROM_DATABASE=Logosol, Inc. + +@@ -55462,6 +55597,9 @@ OUI:30F70D* + OUI:30F7C5* + ID_OUI_FROM_DATABASE=Apple + ++OUI:30F7D7* ++ ID_OUI_FROM_DATABASE=Thread Technology Co., Ltd ++ + OUI:30F9ED* + ID_OUI_FROM_DATABASE=Sony Corporation + +@@ -55474,6 +55612,9 @@ OUI:3407FB* + OUI:340804* + ID_OUI_FROM_DATABASE=D-Link Corporation + ++OUI:340AFF* ++ ID_OUI_FROM_DATABASE=Qingdao Hisense Communications Co.,Ltd ++ + OUI:3413A8* + ID_OUI_FROM_DATABASE=Mediplan Limited + +@@ -55484,7 +55625,7 @@ OUI:34159E* + ID_OUI_FROM_DATABASE=Apple + + OUI:3417EB* +- ID_OUI_FROM_DATABASE=Dell Inc PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:341A4C* + ID_OUI_FROM_DATABASE=SHENZHEN WEIBU ELECTRONICS CO.,LTD. +@@ -55534,6 +55675,9 @@ OUI:344F5C* + OUI:344F69* + ID_OUI_FROM_DATABASE=EKINOPS SAS + ++OUI:3451AA* ++ ID_OUI_FROM_DATABASE=JID GLOBAL ++ + OUI:3451C9* + ID_OUI_FROM_DATABASE=Apple + +@@ -55543,6 +55687,9 @@ OUI:345B11* + OUI:345C40* + ID_OUI_FROM_DATABASE=Cargt Holdings LLC + ++OUI:345D10* ++ ID_OUI_FROM_DATABASE=Wytek ++ + OUI:346178* + ID_OUI_FROM_DATABASE=The Boeing Company + +@@ -55573,6 +55720,9 @@ OUI:347E39* + OUI:348137* + ID_OUI_FROM_DATABASE=UNICARD SA + ++OUI:3481C4* ++ ID_OUI_FROM_DATABASE=AVM GmbH ++ + OUI:3482DE* + ID_OUI_FROM_DATABASE=Kayo Technology, Inc. + +@@ -55741,6 +55891,9 @@ OUI:34E0D7* + OUI:34E2FD* + ID_OUI_FROM_DATABASE=Apple + ++OUI:34E42A* ++ ID_OUI_FROM_DATABASE=Automatic Bar Controls Inc. ++ + OUI:34EF44* + ID_OUI_FROM_DATABASE=2Wire + +@@ -55933,6 +56086,9 @@ OUI:38B74D* + OUI:38BB23* + ID_OUI_FROM_DATABASE=OzVision America LLC + ++OUI:38BB3C* ++ ID_OUI_FROM_DATABASE=Avaya, Inc ++ + OUI:38BC1A* + ID_OUI_FROM_DATABASE=Meizu technology co.,ltd + +@@ -56224,6 +56380,9 @@ OUI:3CA72B* + OUI:3CA9F4* + ID_OUI_FROM_DATABASE=Intel Corporate + ++OUI:3CAB8E* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:3CB15B* + ID_OUI_FROM_DATABASE=Avaya, Inc + +@@ -56311,6 +56470,9 @@ OUI:3CF72A* + OUI:3CF748* + ID_OUI_FROM_DATABASE=Shenzhen Linsn Technology Development Co.,Ltd + ++OUI:3CF808* ++ ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD ++ + OUI:3CFB96* + ID_OUI_FROM_DATABASE=Emcraft Systems LLC + +@@ -56341,6 +56503,9 @@ OUI:4013D9* + OUI:401597* + ID_OUI_FROM_DATABASE=Protect America, Inc. + ++OUI:40167E* ++ ID_OUI_FROM_DATABASE=ASUSTek COMPUTER INC. ++ + OUI:40169F* + ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO., LTD. + +@@ -56392,6 +56557,9 @@ OUI:404022* + OUI:40406B* + ID_OUI_FROM_DATABASE=Icomera + ++OUI:4045DA* ++ ID_OUI_FROM_DATABASE=Spreadtrum Communications (Shanghai) Co., Ltd. ++ + OUI:404A03* + ID_OUI_FROM_DATABASE=ZyXEL Communications Corporation + +@@ -56527,6 +56695,9 @@ OUI:40B2C8* + OUI:40B395* + ID_OUI_FROM_DATABASE=Apple + ++OUI:40B3CD* ++ ID_OUI_FROM_DATABASE=Chiyoda Electronics Co.,Ltd. ++ + OUI:40B3FC* + ID_OUI_FROM_DATABASE=Logital Co. Limited + +@@ -56596,6 +56767,9 @@ OUI:40F02F* + OUI:40F14C* + ID_OUI_FROM_DATABASE=ISE Europe SPRL + ++OUI:40F201* ++ ID_OUI_FROM_DATABASE=SAGEMCOM ++ + OUI:40F2E9* + ID_OUI_FROM_DATABASE=IBM + +@@ -56632,6 +56806,9 @@ OUI:44184F* + OUI:4419B6* + ID_OUI_FROM_DATABASE=Hangzhou Hikvision Digital Technology Co.,Ltd. + ++OUI:441E91* ++ ID_OUI_FROM_DATABASE=ARVIDA Intelligent Electronics Technology Co.,Ltd. ++ + OUI:441EA1* + ID_OUI_FROM_DATABASE=Hewlett-Packard Company + +@@ -56776,6 +56953,9 @@ OUI:448312* + OUI:448500* + ID_OUI_FROM_DATABASE=Intel Corporate + ++OUI:4486C1* ++ ID_OUI_FROM_DATABASE=Siemens Low Voltage & Products ++ + OUI:4487FC* + ID_OUI_FROM_DATABASE=ELITEGROUP COMPUTER SYSTEM CO., LTD. + +@@ -56860,6 +57040,9 @@ OUI:44D2CA* + OUI:44D3CA* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + ++OUI:44D4E0* ++ ID_OUI_FROM_DATABASE=Sony Mobile Communications AB ++ + OUI:44D63D* + ID_OUI_FROM_DATABASE=Talari Networks + +@@ -56920,6 +57103,9 @@ OUI:48174C* + OUI:481842* + ID_OUI_FROM_DATABASE=Shanghai Winaas Co. Equipment Co. Ltd. + ++OUI:481A84* ++ ID_OUI_FROM_DATABASE=Pointer Telocation Ltd ++ + OUI:481BD2* + ID_OUI_FROM_DATABASE=Intron Scientific co., ltd. + +@@ -56950,9 +57136,15 @@ OUI:4846F1* + OUI:4846FB* + ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD + ++OUI:4851B7* ++ ID_OUI_FROM_DATABASE=Intel Corporate ++ + OUI:485261* + ID_OUI_FROM_DATABASE=SOREEL + ++OUI:485929* ++ ID_OUI_FROM_DATABASE=LG Electronics ++ + OUI:485A3F* + ID_OUI_FROM_DATABASE=WISOL + +@@ -56971,6 +57163,9 @@ OUI:4860BC* + OUI:4861A3* + ID_OUI_FROM_DATABASE=Concern "Axion" JSC + ++OUI:486276* ++ ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD ++ + OUI:486B91* + ID_OUI_FROM_DATABASE=Fleetwood Group Inc. + +@@ -56986,6 +57181,9 @@ OUI:487119* + OUI:48746E* + ID_OUI_FROM_DATABASE=Apple + ++OUI:488244* ++ ID_OUI_FROM_DATABASE=Life Fitness / Div. of Brunswick ++ + OUI:488E42* + ID_OUI_FROM_DATABASE=DIGALOG GmbH + +@@ -57046,15 +57244,24 @@ OUI:48CB6E* + OUI:48D0CF* + ID_OUI_FROM_DATABASE=Universal Electronics, Inc. + ++OUI:48D18E* ++ ID_OUI_FROM_DATABASE=Metis Communication Co.,Ltd ++ + OUI:48D224* + ID_OUI_FROM_DATABASE=Liteon Technology Corporation + + OUI:48D54C* + ID_OUI_FROM_DATABASE=Jeda Networks + ++OUI:48D705* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:48D7FF* + ID_OUI_FROM_DATABASE=BLANKOM Antennentechnik GmbH + ++OUI:48D855* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY ++ + OUI:48D8FE* + ID_OUI_FROM_DATABASE=ClarIDy Solutions, Inc. + +@@ -57136,6 +57343,9 @@ OUI:4C0F6E* + OUI:4C0FC7* + ID_OUI_FROM_DATABASE=Earda Electronics Co.,Ltd + ++OUI:4C11BF* ++ ID_OUI_FROM_DATABASE=ZHEJIANG DAHUA TECHNOLOGY CO.,LTD. ++ + OUI:4C1480* + ID_OUI_FROM_DATABASE=NOREGON SYSTEMS, INC + +@@ -57178,6 +57388,9 @@ OUI:4C322D* + OUI:4C32D9* + ID_OUI_FROM_DATABASE=M Rutty Holdings Pty. Ltd. + ++OUI:4C3909* ++ ID_OUI_FROM_DATABASE=HPL Electric & Power Private Limited ++ + OUI:4C3910* + ID_OUI_FROM_DATABASE=Newtek Electronics co., Ltd. + +@@ -57478,9 +57691,15 @@ OUI:505663* + OUI:5056A8* + ID_OUI_FROM_DATABASE=Jolla Ltd + ++OUI:5056BF* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,LTD ++ + OUI:5057A8* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + ++OUI:505800* ++ ID_OUI_FROM_DATABASE=WyTec International, Inc. ++ + OUI:505AC6* + ID_OUI_FROM_DATABASE=GUANGDONG SUPER TELECOM CO.,LTD. + +@@ -57601,6 +57820,9 @@ OUI:50C271* + OUI:50C58D* + ID_OUI_FROM_DATABASE=Juniper Networks + ++OUI:50C7BF* ++ ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. ++ + OUI:50C971* + ID_OUI_FROM_DATABASE=GN Netcom A/S + +@@ -57706,6 +57928,9 @@ OUI:54271E* + OUI:542A9C* + ID_OUI_FROM_DATABASE=LSY Defense, LLC. + ++OUI:542AA2* ++ ID_OUI_FROM_DATABASE=Alpha Networks Inc. ++ + OUI:542CEA* + ID_OUI_FROM_DATABASE=PROTECTRON + +@@ -57739,9 +57964,15 @@ OUI:544408* + OUI:54466B* + ID_OUI_FROM_DATABASE=Shenzhen CZTIC Electronic Technology Co., Ltd + ++OUI:544A00* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:544A05* + ID_OUI_FROM_DATABASE=wenglor sensoric gmbh + ++OUI:544A16* ++ ID_OUI_FROM_DATABASE=Texas Instruments ++ + OUI:5453ED* + ID_OUI_FROM_DATABASE=Sony Corporation + +@@ -57844,6 +58075,9 @@ OUI:54B620* + OUI:54BEF7* + ID_OUI_FROM_DATABASE=PEGATRON CORPORATION + ++OUI:54C80F* ++ ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. ++ + OUI:54CDA7* + ID_OUI_FROM_DATABASE=Fujian Shenzhou Electronic Co.,Ltd + +@@ -57886,6 +58120,12 @@ OUI:54E6FC* + OUI:54EAA8* + ID_OUI_FROM_DATABASE=Apple, Inc. + ++OUI:54EE75* ++ ID_OUI_FROM_DATABASE=Wistron InfoComm(Kunshan)Co.,Ltd. ++ ++OUI:54EF92* ++ ID_OUI_FROM_DATABASE=Shenzhen Elink Technology Co., LTD ++ + OUI:54F5B6* + ID_OUI_FROM_DATABASE=ORIENTAL PACIFIC INTERNATIONAL LIMITED + +@@ -57928,12 +58168,18 @@ OUI:581CBD* + OUI:581D91* + ID_OUI_FROM_DATABASE=Advanced Mobile Telecom co.,ltd. + ++OUI:581F67* ++ ID_OUI_FROM_DATABASE=Open-m technology limited ++ + OUI:581FAA* + ID_OUI_FROM_DATABASE=Apple + + OUI:581FEF* + ID_OUI_FROM_DATABASE=Tuttnaer LTD + ++OUI:58238C* ++ ID_OUI_FROM_DATABASE=Technicolor CH USA ++ + OUI:582EFE* + ID_OUI_FROM_DATABASE=Lighting Science Group + +@@ -58123,6 +58369,9 @@ OUI:58DB8D* + OUI:58E02C* + ID_OUI_FROM_DATABASE=Micro Technic A/S + ++OUI:58E326* ++ ID_OUI_FROM_DATABASE=Compass Technologies Inc. ++ + OUI:58E476* + ID_OUI_FROM_DATABASE=CENTRON COMMUNICATIONS TECHNOLOGIES FUJIAN CO.,LTD + +@@ -58213,6 +58462,9 @@ OUI:5C260A* + OUI:5C2AEF* + ID_OUI_FROM_DATABASE=Open Access Pty Ltd + ++OUI:5C313E* ++ ID_OUI_FROM_DATABASE=Texas Instruments ++ + OUI:5C3327* + ID_OUI_FROM_DATABASE=Spazio Italia srl + +@@ -58411,6 +58663,9 @@ OUI:5CF370* + OUI:5CF3FC* + ID_OUI_FROM_DATABASE=IBM Corp + ++OUI:5CF4AB* ++ ID_OUI_FROM_DATABASE=ZyXEL Communications Corp ++ + OUI:5CF50D* + ID_OUI_FROM_DATABASE=Institute of microelectronic applications + +@@ -58561,6 +58816,9 @@ OUI:60748D* + OUI:607688* + ID_OUI_FROM_DATABASE=Velodyne + ++OUI:60812B* ++ ID_OUI_FROM_DATABASE=Custom Control Concepts ++ + OUI:6083B2* + ID_OUI_FROM_DATABASE=GkWare e.K. + +@@ -58585,9 +58843,15 @@ OUI:608C2B* + OUI:608D17* + ID_OUI_FROM_DATABASE=Sentrus Government Systems Division, Inc + ++OUI:608F5C* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:609084* + ID_OUI_FROM_DATABASE=DSSD Inc + ++OUI:609217* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:609AA4* + ID_OUI_FROM_DATABASE=GVI SECURITY INC. + +@@ -58615,6 +58879,9 @@ OUI:60B3C4* + OUI:60B606* + ID_OUI_FROM_DATABASE=Phorus + ++OUI:60B617* ++ ID_OUI_FROM_DATABASE=Fiberhome Telecommunication Tech.Co.,Ltd. ++ + OUI:60B933* + ID_OUI_FROM_DATABASE=Deutron Electronics Corp. + +@@ -58633,6 +58900,9 @@ OUI:60BD91* + OUI:60BEB5* + ID_OUI_FROM_DATABASE=Motorola Mobility LLC + ++OUI:60C1CB* ++ ID_OUI_FROM_DATABASE=Fujian Great Power PLC Equipment Co.,Ltd ++ + OUI:60C397* + ID_OUI_FROM_DATABASE=2Wire Inc + +@@ -58681,6 +58951,9 @@ OUI:60DE44* + OUI:60E00E* + ID_OUI_FROM_DATABASE=SHINSEI ELECTRONICS CO LTD + ++OUI:60E327* ++ ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. ++ + OUI:60E956* + ID_OUI_FROM_DATABASE=Ayla Networks, Inc + +@@ -58753,6 +59026,9 @@ OUI:640F28* + OUI:641084* + ID_OUI_FROM_DATABASE=HEXIUM Technical Development Co., Ltd. + ++OUI:641225* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:64168D* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -58966,6 +59242,9 @@ OUI:64A3CB* + OUI:64A769* + ID_OUI_FROM_DATABASE=HTC Corporation + ++OUI:64A7DD* ++ ID_OUI_FROM_DATABASE=Avaya, Inc ++ + OUI:64A837* + ID_OUI_FROM_DATABASE=Juni Korea Co., Ltd + +@@ -59062,6 +59341,9 @@ OUI:64E8E6* + OUI:64E950* + ID_OUI_FROM_DATABASE=Cisco + ++OUI:64EAC5* ++ ID_OUI_FROM_DATABASE=SiboTech Automation Co., Ltd. ++ + OUI:64EB8C* + ID_OUI_FROM_DATABASE=Seiko Epson Corporation + +@@ -59131,6 +59413,9 @@ OUI:681FD8* + OUI:68234B* + ID_OUI_FROM_DATABASE=Nihon Dengyo Kousaku + ++OUI:6828BA* ++ ID_OUI_FROM_DATABASE=Dejai ++ + OUI:682DDC* + ID_OUI_FROM_DATABASE=Wuhan Changjiang Electro-Communication Equipment CO.,LTD + +@@ -59188,6 +59473,9 @@ OUI:6869F2* + OUI:686E23* + ID_OUI_FROM_DATABASE=Wi3 Inc. + ++OUI:686E48* ++ ID_OUI_FROM_DATABASE=Prophet Electronic Technology Corp.,Ltd ++ + OUI:687251* + ID_OUI_FROM_DATABASE=Ubiquiti Networks + +@@ -59332,6 +59620,9 @@ OUI:68DB96* + OUI:68DCE8* + ID_OUI_FROM_DATABASE=PacketStorm Communications + ++OUI:68DFDD* ++ ID_OUI_FROM_DATABASE=Xiaomi inc. ++ + OUI:68E41F* + ID_OUI_FROM_DATABASE=Unglaube Identech GmbH + +@@ -59377,12 +59668,18 @@ OUI:6C0E0D* + OUI:6C0F6A* + ID_OUI_FROM_DATABASE=JDC Tech Co., Ltd. + ++OUI:6C14F7* ++ ID_OUI_FROM_DATABASE=Erhardt+Leimer GmbH ++ + OUI:6C15F9* + ID_OUI_FROM_DATABASE=Nautronix Limited + + OUI:6C1811* + ID_OUI_FROM_DATABASE=Decatur Electronics + ++OUI:6C198F* ++ ID_OUI_FROM_DATABASE=D-Link International ++ + OUI:6C2056* + ID_OUI_FROM_DATABASE=Cisco + +@@ -59395,6 +59692,9 @@ OUI:6C23B9* + OUI:6C2995* + ID_OUI_FROM_DATABASE=Intel Corporate + ++OUI:6C2C06* ++ ID_OUI_FROM_DATABASE=OOO NPP Systemotechnika-NN ++ + OUI:6C2E33* + ID_OUI_FROM_DATABASE=Accelink Technologies Co.,Ltd. + +@@ -59539,6 +59839,9 @@ OUI:6CA906* + OUI:6CA96F* + ID_OUI_FROM_DATABASE=TransPacket AS + ++OUI:6CAAB3* ++ ID_OUI_FROM_DATABASE=Ruckus Wireless ++ + OUI:6CAB4D* + ID_OUI_FROM_DATABASE=Digital Payment Technologies + +@@ -59608,6 +59911,9 @@ OUI:6CE983* + OUI:6CECA1* + ID_OUI_FROM_DATABASE=SHENZHEN CLOU ELECTRONICS CO. LTD. + ++OUI:6CECEB* ++ ID_OUI_FROM_DATABASE=Texas Instruments ++ + OUI:6CF049* + ID_OUI_FROM_DATABASE=GIGA-BYTE TECHNOLOGY CO.,LTD. + +@@ -59623,6 +59929,9 @@ OUI:6CF97C* + OUI:6CFA58* + ID_OUI_FROM_DATABASE=Avaya, Inc + ++OUI:6CFAA7* ++ ID_OUI_FROM_DATABASE=AMPAK Technology Inc. ++ + OUI:6CFDB9* + ID_OUI_FROM_DATABASE=Proware Technologies Co Ltd. + +@@ -59686,6 +59995,9 @@ OUI:702F97* + OUI:703018* + ID_OUI_FROM_DATABASE=Avaya, Inc + ++OUI:70305D* ++ ID_OUI_FROM_DATABASE=Ubiquoss Inc ++ + OUI:70305E* + ID_OUI_FROM_DATABASE=Nanjing Zhongke Menglian Information Technology Co.,LTD + +@@ -59767,6 +60079,9 @@ OUI:7060DE* + OUI:706173* + ID_OUI_FROM_DATABASE=Calantec GmbH + ++OUI:7062B8* ++ ID_OUI_FROM_DATABASE=D-Link International ++ + OUI:706417* + ID_OUI_FROM_DATABASE=ORBIS TECNOLOGIA ELECTRICA S.A. + +@@ -59881,6 +60196,9 @@ OUI:70B14E* + OUI:70B265* + ID_OUI_FROM_DATABASE=Hiltron s.r.l. + ++OUI:70B3D5* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see OUI36 public listing for more information. ++ + OUI:70B599* + ID_OUI_FROM_DATABASE=Embedded Technologies s.r.o. + +@@ -59950,6 +60268,9 @@ OUI:70F395* + OUI:70F927* + ID_OUI_FROM_DATABASE=Samsung Electronics + ++OUI:70F96D* ++ ID_OUI_FROM_DATABASE=Hangzhou H3C Technologies Co., Limited ++ + OUI:70FF76* + ID_OUI_FROM_DATABASE=Texas Instruments + +@@ -59965,12 +60286,18 @@ OUI:741489* + OUI:7415E2* + ID_OUI_FROM_DATABASE=Tri-Sen Systems Corporation + ++OUI:7419F8* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ + OUI:741E93* + ID_OUI_FROM_DATABASE=Fiberhome Telecommunication Tech.Co.,Ltd. + + OUI:74258A* + ID_OUI_FROM_DATABASE=Hangzhou H3C Technologies Co., Limited + ++OUI:7426AC* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:74273C* + ID_OUI_FROM_DATABASE=ChangYang Technology (Nanjing) Co., LTD + +@@ -60077,7 +60404,7 @@ OUI:747E2D* + ID_OUI_FROM_DATABASE=Beijing Thomson CITIC Digital Technology Co. LTD. + + OUI:74867A* +- ID_OUI_FROM_DATABASE=Dell Inc PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:74882A* + ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD +@@ -60172,6 +60499,9 @@ OUI:74D675* + OUI:74D850* + ID_OUI_FROM_DATABASE=Evrisko Systems + ++OUI:74DA38* ++ ID_OUI_FROM_DATABASE=Edimax Technology Co. Ltd. ++ + OUI:74DE2B* + ID_OUI_FROM_DATABASE=Liteon Technology Corporation + +@@ -60292,6 +60622,9 @@ OUI:7831C1* + OUI:78324F* + ID_OUI_FROM_DATABASE=Millennium Group, Inc. + ++OUI:783A84* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:783CE3* + ID_OUI_FROM_DATABASE=Kai-EE + +@@ -60319,6 +60652,9 @@ OUI:7846C4* + OUI:78471D* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:784859* ++ ID_OUI_FROM_DATABASE=Hewlett Packard ++ + OUI:78491D* + ID_OUI_FROM_DATABASE=The Will-Burt Company + +@@ -60391,6 +60727,9 @@ OUI:788C54* + OUI:788DF7* + ID_OUI_FROM_DATABASE=Hitron Technologies. Inc + ++OUI:78923E* ++ ID_OUI_FROM_DATABASE=Nokia Corporation ++ + OUI:78929C* + ID_OUI_FROM_DATABASE=Intel Corporate + +@@ -60523,6 +60862,9 @@ OUI:78D38D* + OUI:78D5B5* + ID_OUI_FROM_DATABASE=NAVIELEKTRO KY + ++OUI:78D66F* ++ ID_OUI_FROM_DATABASE=Aristocrat Technologies Australia Pty. Ltd. ++ + OUI:78D6F0* + ID_OUI_FROM_DATABASE=Samsung Electro Mechanics + +@@ -60736,6 +61078,9 @@ OUI:7C6C8F* + OUI:7C6D62* + ID_OUI_FROM_DATABASE=Apple + ++OUI:7C6DF8* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:7C6F06* + ID_OUI_FROM_DATABASE=Caterpillar Trimble Control Technologies + +@@ -60856,6 +61201,9 @@ OUI:7CCFCF* + OUI:7CD1C3* + ID_OUI_FROM_DATABASE=Apple + ++OUI:7CD30A* ++ ID_OUI_FROM_DATABASE=INVENTEC Corporation ++ + OUI:7CD762* + ID_OUI_FROM_DATABASE=Freestyle Technology Pty Ltd + +@@ -60919,6 +61267,9 @@ OUI:7CFADF* + OUI:7CFE28* + ID_OUI_FROM_DATABASE=Salutron Inc. + ++OUI:7CFE4E* ++ ID_OUI_FROM_DATABASE=Shenzhen Safe vision Technology Co.,LTD ++ + OUI:7CFF62* + ID_OUI_FROM_DATABASE=Huizhou Super Electron Technology Co.,Ltd. + +@@ -60940,9 +61291,15 @@ OUI:8007A2* + OUI:800A06* + ID_OUI_FROM_DATABASE=COMTEC co.,ltd + ++OUI:800E24* ++ ID_OUI_FROM_DATABASE=ForgetBox ++ + OUI:801440* + ID_OUI_FROM_DATABASE=Sunlit System Technology Corp + ++OUI:8014A8* ++ ID_OUI_FROM_DATABASE=Guangzhou V-SOLUTION Electronic Technology Co., Ltd. ++ + OUI:8016B7* + ID_OUI_FROM_DATABASE=Brunel University + +@@ -60952,6 +61309,9 @@ OUI:80177D* + OUI:8018A7* + ID_OUI_FROM_DATABASE=Samsung Eletronics Co., Ltd + ++OUI:801934* ++ ID_OUI_FROM_DATABASE=Intel Corporate ++ + OUI:801DAA* + ID_OUI_FROM_DATABASE=Avaya Inc + +@@ -60994,6 +61354,9 @@ OUI:803F5D* + OUI:803FD6* + ID_OUI_FROM_DATABASE=bytes at work AG + ++OUI:80414E* ++ ID_OUI_FROM_DATABASE=BBK Electronics Corp., Ltd., ++ + OUI:80427C* + ID_OUI_FROM_DATABASE=Adolf Tedsen GmbH & Co. KG + +@@ -61279,6 +61642,9 @@ OUI:843611* + OUI:843835* + ID_OUI_FROM_DATABASE=Apple + ++OUI:843838* ++ ID_OUI_FROM_DATABASE=Samsung Electro Mechanics co., LTD. ++ + OUI:843A4B* + ID_OUI_FROM_DATABASE=Intel Corporate + +@@ -61360,6 +61726,9 @@ OUI:848506* + OUI:848D84* + ID_OUI_FROM_DATABASE=Rajant Corporation + ++OUI:848DC7* ++ ID_OUI_FROM_DATABASE=Cisco SPVTG ++ + OUI:848E0C* + ID_OUI_FROM_DATABASE=Apple + +@@ -61372,6 +61741,12 @@ OUI:848F69* + OUI:849000* + ID_OUI_FROM_DATABASE=Arnold & Richter Cine Technik + ++OUI:84948C* ++ ID_OUI_FROM_DATABASE=Hitron Technologies. Inc ++ ++OUI:8496D8* ++ ID_OUI_FROM_DATABASE=Pace plc ++ + OUI:8497B8* + ID_OUI_FROM_DATABASE=Memjet Inc. + +@@ -61399,6 +61774,9 @@ OUI:84ACA4* + OUI:84AF1F* + ID_OUI_FROM_DATABASE=Beat System Service Co,. Ltd. + ++OUI:84B153* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:84B59C* + ID_OUI_FROM_DATABASE=Juniper networks + +@@ -61468,6 +61846,9 @@ OUI:880355* + OUI:880905* + ID_OUI_FROM_DATABASE=MTMCommunications + ++OUI:880F10* ++ ID_OUI_FROM_DATABASE=Huami Information Technology Co.,Ltd. ++ + OUI:880FB6* + ID_OUI_FROM_DATABASE=Jabil Circuits India Pvt Ltd,-EHTP unit + +@@ -61558,7 +61939,10 @@ OUI:88576D* + OUI:885A92* + ID_OUI_FROM_DATABASE=Cisco + +-OUI:885C4F* ++OUI:885BDD* ++ ID_OUI_FROM_DATABASE=Aerohive Networks Inc. ++ ++OUI:885C47* + ID_OUI_FROM_DATABASE=Alcatel Lucent + + OUI:88615A* +@@ -61654,6 +62038,9 @@ OUI:88AE1D* + OUI:88B168* + ID_OUI_FROM_DATABASE=Delta Control GmbH + ++OUI:88B1E1* ++ ID_OUI_FROM_DATABASE=AirTight Networks, Inc. ++ + OUI:88B627* + ID_OUI_FROM_DATABASE=Gembird Europe BV + +@@ -62107,6 +62494,9 @@ OUI:9046B7* + OUI:904716* + ID_OUI_FROM_DATABASE=RORZE CORPORATION + ++OUI:90489A* ++ ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. ++ + OUI:9049FA* + ID_OUI_FROM_DATABASE=Intel Corporation + +@@ -62179,6 +62569,9 @@ OUI:907A28* + OUI:907AF1* + ID_OUI_FROM_DATABASE=SNUPI Technologies + ++OUI:907EBA* ++ ID_OUI_FROM_DATABASE=UTEK TECHNOLOGY (SHENZHEN) CO.,LTD ++ + OUI:907F61* + ID_OUI_FROM_DATABASE=Chicony Electronics Co., Ltd. + +@@ -62197,12 +62590,12 @@ OUI:9088A2* + OUI:908C44* + ID_OUI_FROM_DATABASE=H.K ZONGMU TECHNOLOGY CO., LTD. + ++OUI:908C63* ++ ID_OUI_FROM_DATABASE=GZ Weedong Networks Technology Co. , Ltd ++ + OUI:908D1D* + ID_OUI_FROM_DATABASE=GH Technologies + +-OUI:908F93* +- ID_OUI_FROM_DATABASE=MakerBot Industries +- + OUI:908FCF* + ID_OUI_FROM_DATABASE=UNO System Co., Ltd + +@@ -62245,6 +62638,9 @@ OUI:90A7C1* + OUI:90AC3F* + ID_OUI_FROM_DATABASE=BrightSign LLC + ++OUI:90AE1B* ++ ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. ++ + OUI:90B11C* + ID_OUI_FROM_DATABASE=Dell Inc. + +@@ -62303,7 +62699,7 @@ OUI:90DFB7* + ID_OUI_FROM_DATABASE=s.m.s smart microwave sensors GmbH + + OUI:90E0F0* +- ID_OUI_FROM_DATABASE=Harman International ++ ID_OUI_FROM_DATABASE=IEEE 1722a Working Group + + OUI:90E2BA* + ID_OUI_FROM_DATABASE=Intel Corporate +@@ -62683,6 +63079,9 @@ OUI:983571* + OUI:9835B8* + ID_OUI_FROM_DATABASE=Assembled Products Corporation + ++OUI:983713* ++ ID_OUI_FROM_DATABASE=PT.Navicom Indonesia ++ + OUI:983B16* + ID_OUI_FROM_DATABASE=AMPAK Technology Inc + +@@ -62746,6 +63145,9 @@ OUI:986022* + OUI:9866EA* + ID_OUI_FROM_DATABASE=Industrial Control Communications, Inc. + ++OUI:986B3D* ++ ID_OUI_FROM_DATABASE=ARRIS Group, Inc. ++ + OUI:986CF5* + ID_OUI_FROM_DATABASE=zte corporation + +@@ -62812,6 +63214,9 @@ OUI:98BC57* + OUI:98BC99* + ID_OUI_FROM_DATABASE=Edeltech Co.,Ltd. + ++OUI:98BE94* ++ ID_OUI_FROM_DATABASE=IBM ++ + OUI:98C0EB* + ID_OUI_FROM_DATABASE=Global Regency Ltd + +@@ -62929,6 +63334,9 @@ OUI:9C2840* + OUI:9C28BF* + ID_OUI_FROM_DATABASE=Continental Automotive Czech Republic s.r.o. + ++OUI:9C28EF* ++ ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD ++ + OUI:9C2A70* + ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. + +@@ -63184,6 +63592,9 @@ OUI:9CFBF1* + OUI:9CFFBE* + ID_OUI_FROM_DATABASE=OTSL Inc. + ++OUI:A002DC* ++ ID_OUI_FROM_DATABASE=Amazon Technologies Inc. ++ + OUI:A00363* + ID_OUI_FROM_DATABASE=Robert Bosch Healthcare GmbH + +@@ -63205,6 +63616,9 @@ OUI:A00CA1* + OUI:A01290* + ID_OUI_FROM_DATABASE=Avaya, Inc + ++OUI:A012DB* ++ ID_OUI_FROM_DATABASE=TABUCHI ELECTRIC CO.,LTD ++ + OUI:A0133B* + ID_OUI_FROM_DATABASE=Copyright © HiTi Digital, Inc. + +@@ -63235,6 +63649,9 @@ OUI:A021B7* + OUI:A0231B* + ID_OUI_FROM_DATABASE=TeleComp R&D Corp. + ++OUI:A02BB8* ++ ID_OUI_FROM_DATABASE=Hewlett Packard ++ + OUI:A02EF3* + ID_OUI_FROM_DATABASE=United Integrated Services Co., Led. + +@@ -63439,6 +63856,9 @@ OUI:A0D12A* + OUI:A0D3C1* + ID_OUI_FROM_DATABASE=Hewlett Packard + ++OUI:A0DA92* ++ ID_OUI_FROM_DATABASE=Nanjing Glarun Atten Technology Co. Ltd. ++ + OUI:A0DC04* + ID_OUI_FROM_DATABASE=Becker-Antriebe GmbH + +@@ -63502,6 +63922,9 @@ OUI:A0F450* + OUI:A0F459* + ID_OUI_FROM_DATABASE=FN-LINK TECHNOLOGY LIMITED + ++OUI:A0FC6E* ++ ID_OUI_FROM_DATABASE=Telegrafia a.s. ++ + OUI:A0FE91* + ID_OUI_FROM_DATABASE=AVAT Automation GmbH + +@@ -63565,6 +63988,12 @@ OUI:A438FC* + OUI:A43A69* + ID_OUI_FROM_DATABASE=Vers Inc + ++OUI:A43BFA* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ ++OUI:A43D78* ++ ID_OUI_FROM_DATABASE=GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP.,LTD ++ + OUI:A4466B* + ID_OUI_FROM_DATABASE=EOC Technology + +@@ -63604,6 +64033,9 @@ OUI:A45C27* + OUI:A45D36* + ID_OUI_FROM_DATABASE=Hewlett Packard + ++OUI:A46032* ++ ID_OUI_FROM_DATABASE=MRV Communications (Networks) LTD ++ + OUI:A46706* + ID_OUI_FROM_DATABASE=Apple + +@@ -63632,7 +64064,13 @@ OUI:A47C14* + ID_OUI_FROM_DATABASE=ChargeStorm AB + + OUI:A47C1F* +- ID_OUI_FROM_DATABASE=Global Microwave Systems Inc. ++ ID_OUI_FROM_DATABASE=Cobham plc ++ ++OUI:A47E39* ++ ID_OUI_FROM_DATABASE=zte corporation ++ ++OUI:A481EE* ++ ID_OUI_FROM_DATABASE=Nokia Corporation + + OUI:A4856B* + ID_OUI_FROM_DATABASE=Q Electronics Ltd +@@ -63664,6 +64102,9 @@ OUI:A49B13* + OUI:A49EDB* + ID_OUI_FROM_DATABASE=AutoCrib, Inc. + ++OUI:A49F85* ++ ID_OUI_FROM_DATABASE=Lyve Minds, Inc ++ + OUI:A49F89* + ID_OUI_FROM_DATABASE=Shanghai Rui Rui Communication Technology Co.Ltd. + +@@ -63964,6 +64405,9 @@ OUI:A8995C* + OUI:A89B10* + ID_OUI_FROM_DATABASE=inMotion Ltd. + ++OUI:A8A668* ++ ID_OUI_FROM_DATABASE=zte corporation ++ + OUI:A8AD3D* + ID_OUI_FROM_DATABASE=Alcatel-Lucent Shanghai Bell Co., Ltd + +@@ -64021,6 +64465,9 @@ OUI:A8F274* + OUI:A8F470* + ID_OUI_FROM_DATABASE=Fujian Newland Communication Science Technologies Co.,Ltd. + ++OUI:A8F7E0* ++ ID_OUI_FROM_DATABASE=PLANET Technology Corporation ++ + OUI:A8F94B* + ID_OUI_FROM_DATABASE=Eltex Enterprise Ltd. + +@@ -64258,12 +64705,21 @@ OUI:ACA22C* + OUI:ACA430* + ID_OUI_FROM_DATABASE=Peerless AV + ++OUI:ACA919* ++ ID_OUI_FROM_DATABASE=TrekStor GmbH ++ ++OUI:ACA9A0* ++ ID_OUI_FROM_DATABASE=Audioengine, Ltd. ++ + OUI:ACAB8D* + ID_OUI_FROM_DATABASE=Lyngso Marine A/S + + OUI:ACB313* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + ++OUI:ACB859* ++ ID_OUI_FROM_DATABASE=Uniband Electronic Corp, ++ + OUI:ACBD0B* + ID_OUI_FROM_DATABASE=IMAC CO.,LTD + +@@ -64375,6 +64831,9 @@ OUI:ACF97E* + OUI:ACFDEC* + ID_OUI_FROM_DATABASE=Apple, Inc + ++OUI:B000B4* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:B00594* + ID_OUI_FROM_DATABASE=Liteon Technology Corporation + +@@ -64465,6 +64924,9 @@ OUI:B06CBF* + OUI:B0750C* + ID_OUI_FROM_DATABASE=QA Cafe + ++OUI:B0754D* ++ ID_OUI_FROM_DATABASE=Alcatel-Lucent ++ + OUI:B075D5* + ID_OUI_FROM_DATABASE=ZTE Corporation + +@@ -64528,9 +64990,15 @@ OUI:B09FBA* + OUI:B0A10A* + ID_OUI_FROM_DATABASE=Pivotal Systems Corporation + ++OUI:B0A37E* ++ ID_OUI_FROM_DATABASE=Qingdao Haier Electronics Co.,Ltd ++ + OUI:B0A72A* + ID_OUI_FROM_DATABASE=Ensemble Designs, Inc. + ++OUI:B0A737* ++ ID_OUI_FROM_DATABASE=Roku, Inc. ++ + OUI:B0A86E* + ID_OUI_FROM_DATABASE=Juniper Networks + +@@ -64597,6 +65065,9 @@ OUI:B0D09C* + OUI:B0D2F5* + ID_OUI_FROM_DATABASE=Vello Systems, Inc. + ++OUI:B0D59D* ++ ID_OUI_FROM_DATABASE=Shenzhen Zowee Technology Co., Ltd ++ + OUI:B0D7C5* + ID_OUI_FROM_DATABASE=STP KFT + +@@ -64813,6 +65284,9 @@ OUI:B499BA* + OUI:B49DB4* + ID_OUI_FROM_DATABASE=Axion Technologies Inc. + ++OUI:B49EAC* ++ ID_OUI_FROM_DATABASE=Imagik Int'l Corp ++ + OUI:B49EE6* + ID_OUI_FROM_DATABASE=SHENZHEN TECHNOLOGY CO LTD + +@@ -64900,6 +65374,9 @@ OUI:B4ED19* + OUI:B4ED54* + ID_OUI_FROM_DATABASE=Wohler Technologies + ++OUI:B4EEB4* ++ ID_OUI_FROM_DATABASE=ASKEY COMPUTER CORP ++ + OUI:B4EED4* + ID_OUI_FROM_DATABASE=Texas Instruments + +@@ -64963,6 +65440,9 @@ OUI:B8288B* + OUI:B829F7* + ID_OUI_FROM_DATABASE=Blaster Tech + ++OUI:B82A72* ++ ID_OUI_FROM_DATABASE=Dell Inc ++ + OUI:B82ADC* + ID_OUI_FROM_DATABASE=EFR Europäische Funk-Rundsteuerung GmbH + +@@ -65047,6 +65527,9 @@ OUI:B87424* + OUI:B87447* + ID_OUI_FROM_DATABASE=Convergence Technologies + ++OUI:B875C0* ++ ID_OUI_FROM_DATABASE=PayPal, Inc. ++ + OUI:B8763F* + ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. + +@@ -65062,6 +65545,9 @@ OUI:B8797E* + OUI:B87AC9* + ID_OUI_FROM_DATABASE=Siemens Ltd. + ++OUI:B87CF2* ++ ID_OUI_FROM_DATABASE=Aerohive Networks Inc. ++ + OUI:B8871E* + ID_OUI_FROM_DATABASE=Good Mind Industries Co., Ltd. + +@@ -65152,6 +65638,9 @@ OUI:B8BB6D* + OUI:B8BEBF* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + ++OUI:B8BF83* ++ ID_OUI_FROM_DATABASE=Intel Corporate ++ + OUI:B8C1A2* + ID_OUI_FROM_DATABASE=Dragon Path Technologies Co., Limited + +@@ -65171,7 +65660,7 @@ OUI:B8C855* + ID_OUI_FROM_DATABASE=Shanghai GBCOM Communication Technology Co.,Ltd. + + OUI:B8CA3A* +- ID_OUI_FROM_DATABASE=Dell PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:B8CD93* + ID_OUI_FROM_DATABASE=Penetek, Inc +@@ -65215,6 +65704,9 @@ OUI:B8E856* + OUI:B8E937* + ID_OUI_FROM_DATABASE=Sonos, Inc. + ++OUI:B8EE65* ++ ID_OUI_FROM_DATABASE=Liteon Technology Corporation ++ + OUI:B8EE79* + ID_OUI_FROM_DATABASE=YWire Technologies, Inc. + +@@ -65284,6 +65776,9 @@ OUI:BC20A4* + OUI:BC20BA* + ID_OUI_FROM_DATABASE=Inspur (Shandong) Electronic Information Co., Ltd + ++OUI:BC25F0* ++ ID_OUI_FROM_DATABASE=3D Display Technologies Co., Ltd. ++ + OUI:BC261D* + ID_OUI_FROM_DATABASE=HONG KONG TECON TECHNOLOGY + +@@ -65311,6 +65806,9 @@ OUI:BC305B* + OUI:BC307D* + ID_OUI_FROM_DATABASE=Wistron Neweb Corp. + ++OUI:BC3400* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ + OUI:BC35E5* + ID_OUI_FROM_DATABASE=Hydro Systems Company + +@@ -65419,6 +65917,9 @@ OUI:BC8B55* + OUI:BC8CCD* + ID_OUI_FROM_DATABASE=Samsung Electro Mechanics co.,LTD. + ++OUI:BC8D0E* ++ ID_OUI_FROM_DATABASE=Alcatel-Lucent ++ + OUI:BC926B* + ID_OUI_FROM_DATABASE=Apple + +@@ -65572,6 +66073,9 @@ OUI:C038F9* + OUI:C03B8F* + ID_OUI_FROM_DATABASE=Minicom Digital Signage + ++OUI:C03D46* ++ ID_OUI_FROM_DATABASE=Shanghai Mochui Network Technology Co., Ltd ++ + OUI:C03E0F* + ID_OUI_FROM_DATABASE=BSkyB Ltd + +@@ -65602,6 +66106,9 @@ OUI:C04A00* + OUI:C04DF7* + ID_OUI_FROM_DATABASE=SERELEC + ++OUI:C056E3* ++ ID_OUI_FROM_DATABASE=Hangzhou Hikvision Digital Technology Co.,Ltd. ++ + OUI:C057BC* + ID_OUI_FROM_DATABASE=Avaya, Inc + +@@ -65614,6 +66121,9 @@ OUI:C05E6F* + OUI:C05E79* + ID_OUI_FROM_DATABASE=SHENZHEN HUAXUN ARK TECHNOLOGIES CO.,LTD + ++OUI:C06118* ++ ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. ++ + OUI:C0626B* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -65794,6 +66304,9 @@ OUI:C40415* + OUI:C40528* + ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd + ++OUI:C4084A* ++ ID_OUI_FROM_DATABASE=Alcatel-Lucent ++ + OUI:C40938* + ID_OUI_FROM_DATABASE=Fujian Star-net Communication Co., Ltd + +@@ -65848,6 +66361,9 @@ OUI:C4291D* + OUI:C42C03* + ID_OUI_FROM_DATABASE=Apple + ++OUI:C4346B* ++ ID_OUI_FROM_DATABASE=Hewlett Packard ++ + OUI:C436DA* + ID_OUI_FROM_DATABASE=Rusteletech Ltd. + +@@ -65938,6 +66454,9 @@ OUI:C467B5* + OUI:C46AB7* + ID_OUI_FROM_DATABASE=Xiaomi Technology,Inc. + ++OUI:C46BB4* ++ ID_OUI_FROM_DATABASE=myIDkey ++ + OUI:C46DF1* + ID_OUI_FROM_DATABASE=DataGravity + +@@ -65983,6 +66502,9 @@ OUI:C48508* + OUI:C488E5* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:C4913A* ++ ID_OUI_FROM_DATABASE=Shenzhen Sanland Electronic Co., ltd. ++ + OUI:C49300* + ID_OUI_FROM_DATABASE=8Devices + +@@ -66025,6 +66547,9 @@ OUI:C4C755* + OUI:C4C919* + ID_OUI_FROM_DATABASE=Energy Imports Ltd + ++OUI:C4C9EC* ++ ID_OUI_FROM_DATABASE=D&D GROUP sp. z o.o. ++ + OUI:C4CAD9* + ID_OUI_FROM_DATABASE=Hangzhou H3C Technologies Co., Limited + +@@ -66113,7 +66638,7 @@ OUI:C81E8E* + ID_OUI_FROM_DATABASE=ADV Security (S) Pte Ltd + + OUI:C81F66* +- ID_OUI_FROM_DATABASE=Dell Inc PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:C8208E* + ID_OUI_FROM_DATABASE=Storagedata +@@ -66127,6 +66652,9 @@ OUI:C82A14* + OUI:C82E94* + ID_OUI_FROM_DATABASE=Halfa Enterprise Co., Ltd. + ++OUI:C83168* ++ ID_OUI_FROM_DATABASE=eZEX corporation ++ + OUI:C83232* + ID_OUI_FROM_DATABASE=Hunting Innova + +@@ -66238,6 +66766,9 @@ OUI:C89C1D* + OUI:C89CDC* + ID_OUI_FROM_DATABASE=ELITEGROUP COMPUTER SYSTEM CO., LTD. + ++OUI:C89F1D* ++ ID_OUI_FROM_DATABASE=SHENZHEN COMMUNICATION TECHNOLOGIES CO.,LTD ++ + OUI:C89F42* + ID_OUI_FROM_DATABASE=VDII Innovation AB + +@@ -66274,6 +66805,9 @@ OUI:C8B373* + OUI:C8B5B7* + ID_OUI_FROM_DATABASE=Apple + ++OUI:C8BA94* ++ ID_OUI_FROM_DATABASE=Samsung Electro Mechanics co., LTD. ++ + OUI:C8BBD3* + ID_OUI_FROM_DATABASE=Embrane + +@@ -66316,6 +66850,9 @@ OUI:C8D3A3* + OUI:C8D429* + ID_OUI_FROM_DATABASE=Muehlbauer AG + ++OUI:C8D590* ++ ID_OUI_FROM_DATABASE=FLIGHT DATA SYSTEMS ++ + OUI:C8D5FE* + ID_OUI_FROM_DATABASE=Shenzhen Zowee Technology Co., Ltd + +@@ -66337,6 +66874,9 @@ OUI:C8E0EB* + OUI:C8E1A7* + ID_OUI_FROM_DATABASE=Vertu Corporation Limited + ++OUI:C8E42F* ++ ID_OUI_FROM_DATABASE=Technical Research Design and Development ++ + OUI:C8EE08* + ID_OUI_FROM_DATABASE=TANGTOP TECHNOLOGY CO.,LTD + +@@ -66358,6 +66898,9 @@ OUI:C8F386* + OUI:C8F406* + ID_OUI_FROM_DATABASE=Avaya, Inc + ++OUI:C8F650* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:C8F68D* + ID_OUI_FROM_DATABASE=S.E.TECHNOLOGIES LIMITED + +@@ -66379,6 +66922,9 @@ OUI:C8FB26* + OUI:C8FE30* + ID_OUI_FROM_DATABASE=Bejing DAYO Mobile Communication Technology Ltd. + ++OUI:C8FF77* ++ ID_OUI_FROM_DATABASE=Dyson Limited ++ + OUI:CC0080* + ID_OUI_FROM_DATABASE=BETTINI SRL + +@@ -66394,6 +66940,9 @@ OUI:CC051B* + OUI:CC07AB* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:CC07E4* ++ ID_OUI_FROM_DATABASE=Lenovo Mobile Communication Technology Ltd. ++ + OUI:CC08E0* + ID_OUI_FROM_DATABASE=Apple + +@@ -66574,6 +67123,9 @@ OUI:CC9E00* + OUI:CC9F35* + ID_OUI_FROM_DATABASE=Transbit Sp. z o.o. + ++OUI:CCA0E5* ++ ID_OUI_FROM_DATABASE=DZG Metering GmbH ++ + OUI:CCA374* + ID_OUI_FROM_DATABASE=Guangdong Guanglian Electronic Technology Co.Ltd + +@@ -66595,6 +67147,9 @@ OUI:CCB3F8* + OUI:CCB55A* + ID_OUI_FROM_DATABASE=Fraunhofer ITWM + ++OUI:CCB691* ++ ID_OUI_FROM_DATABASE=NECMagnusCommunications ++ + OUI:CCB888* + ID_OUI_FROM_DATABASE=AnB Securite s.a. + +@@ -66610,6 +67165,9 @@ OUI:CCBE71* + OUI:CCC104* + ID_OUI_FROM_DATABASE=Applied Technical Systems + ++OUI:CCC3EA* ++ ID_OUI_FROM_DATABASE=Motorola Mobility LLC ++ + OUI:CCC50A* + ID_OUI_FROM_DATABASE=SHENZHEN DAJIAHAO TECHNOLOGY CO.,LTD + +@@ -66643,6 +67201,9 @@ OUI:CCD811* + OUI:CCD9E9* + ID_OUI_FROM_DATABASE=SCR Engineers Ltd. + ++OUI:CCE1D5* ++ ID_OUI_FROM_DATABASE=Buffalo Inc. ++ + OUI:CCE798* + ID_OUI_FROM_DATABASE=My Social Stuff + +@@ -66778,6 +67339,12 @@ OUI:D059C3* + OUI:D05A0F* + ID_OUI_FROM_DATABASE=I-BT DIGITAL CO.,LTD + ++OUI:D05AF1* ++ ID_OUI_FROM_DATABASE=Shenzhen Pulier Tech CO.,Ltd ++ ++OUI:D05FB8* ++ ID_OUI_FROM_DATABASE=Texas Instruments ++ + OUI:D05FCE* + ID_OUI_FROM_DATABASE=Hitachi Data Systems + +@@ -66799,6 +67366,9 @@ OUI:D0699E* + OUI:D069D0* + ID_OUI_FROM_DATABASE=Verto Medical Solutions, LLC + ++OUI:D072DC* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:D0737F* + ID_OUI_FROM_DATABASE=Mini-Circuits + +@@ -66811,6 +67381,9 @@ OUI:D073D5* + OUI:D075BE* + ID_OUI_FROM_DATABASE=Reno A&E + ++OUI:D07650* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ + OUI:D07AB5* + ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd + +@@ -66895,6 +67468,9 @@ OUI:D0C42F* + OUI:D0C789* + ID_OUI_FROM_DATABASE=Cisco + ++OUI:D0C7C0* ++ ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. ++ + OUI:D0CDE1* + ID_OUI_FROM_DATABASE=Scientech Electronics + +@@ -67018,6 +67594,9 @@ OUI:D41F0C* + OUI:D4206D* + ID_OUI_FROM_DATABASE=HTC Corporation + ++OUI:D42122* ++ ID_OUI_FROM_DATABASE=Sercomm Corporation ++ + OUI:D4223F* + ID_OUI_FROM_DATABASE=Lenovo Mobile Communication Technology Ltd. + +@@ -67099,6 +67678,9 @@ OUI:D464F7* + OUI:D466A8* + ID_OUI_FROM_DATABASE=Riedo Networks GmbH + ++OUI:D46761* ++ ID_OUI_FROM_DATABASE=SAHAB TECHNOLOGY ++ + OUI:D467E7* + ID_OUI_FROM_DATABASE=Fiberhome Telecommunication Tech.Co.,Ltd. + +@@ -67168,6 +67750,9 @@ OUI:D49524* + OUI:D496DF* + ID_OUI_FROM_DATABASE=SUNGJIN C&T CO.,LTD + ++OUI:D4970B* ++ ID_OUI_FROM_DATABASE=XIAOMI CORPORATION ++ + OUI:D49A20* + ID_OUI_FROM_DATABASE=Apple + +@@ -67207,6 +67792,9 @@ OUI:D4AE52* + OUI:D4B110* + ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD + ++OUI:D4B43E* ++ ID_OUI_FROM_DATABASE=Messcomp Datentechnik GmbH ++ + OUI:D4BED9* + ID_OUI_FROM_DATABASE=Dell Inc + +@@ -67237,6 +67825,9 @@ OUI:D4CBAF* + OUI:D4CEB8* + ID_OUI_FROM_DATABASE=Enatel LTD + ++OUI:D4CFF9* ++ ID_OUI_FROM_DATABASE=Shenzhen Sen5 Technology Co., Ltd. ++ + OUI:D4D184* + ID_OUI_FROM_DATABASE=ADB Broadband Italia + +@@ -67258,6 +67849,9 @@ OUI:D4D919* + OUI:D4DF57* + ID_OUI_FROM_DATABASE=Alpinion Medical Systems + ++OUI:D4E08E* ++ ID_OUI_FROM_DATABASE=ValueHD Corporation ++ + OUI:D4E32C* + ID_OUI_FROM_DATABASE=S. Siedle & Sohne + +@@ -67375,6 +67969,9 @@ OUI:D84606* + OUI:D8490B* + ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD + ++OUI:D8492F* ++ ID_OUI_FROM_DATABASE=CANON INC. ++ + OUI:D84B2A* + ID_OUI_FROM_DATABASE=Cognitas Technologies, Inc. + +@@ -67397,7 +67994,7 @@ OUI:D85D84* + ID_OUI_FROM_DATABASE=CAx soft GmbH + + OUI:D86194* +- ID_OUI_FROM_DATABASE=Objetivos y Sevicios de Valor Añadido ++ ID_OUI_FROM_DATABASE=Objetivos y Sevicios de Valor Añadido + + OUI:D862DB* + ID_OUI_FROM_DATABASE=Eno Inc. +@@ -67438,6 +68035,9 @@ OUI:D87988* + OUI:D87CDD* + ID_OUI_FROM_DATABASE=SANIX INCORPORATED + ++OUI:D87EB1* ++ ID_OUI_FROM_DATABASE=x.o.ware, inc. ++ + OUI:D881CE* + ID_OUI_FROM_DATABASE=AHN INC. + +@@ -67462,6 +68062,9 @@ OUI:D8973B* + OUI:D89760* + ID_OUI_FROM_DATABASE=C2 Development, Inc. + ++OUI:D8977C* ++ ID_OUI_FROM_DATABASE=Grey Innovation ++ + OUI:D89D67* + ID_OUI_FROM_DATABASE=Hewlett Packard + +@@ -67525,6 +68128,9 @@ OUI:D8C7C8* + OUI:D8C99D* + ID_OUI_FROM_DATABASE=EA DISPLAY LIMITED + ++OUI:D8CF9C* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:D8D1CB* + ID_OUI_FROM_DATABASE=Apple + +@@ -67555,6 +68161,9 @@ OUI:D8DD5F* + OUI:D8DDFD* + ID_OUI_FROM_DATABASE=Texas Instruments + ++OUI:D8DECE* ++ ID_OUI_FROM_DATABASE=ISUNG CO.,LTD ++ + OUI:D8DF0D* + ID_OUI_FROM_DATABASE=beroNet GmbH + +@@ -67660,6 +68269,9 @@ OUI:DC3350* + OUI:DC37D2* + ID_OUI_FROM_DATABASE=Hunan HKT Electronic Technology Co., Ltd + ++OUI:DC38E1* ++ ID_OUI_FROM_DATABASE=Juniper networks ++ + OUI:DC3A5E* + ID_OUI_FROM_DATABASE=Roku, Inc + +@@ -67693,6 +68305,9 @@ OUI:DC5E36* + OUI:DC647C* + ID_OUI_FROM_DATABASE=C.R.S. iiMotion GmbH + ++OUI:DC663A* ++ ID_OUI_FROM_DATABASE=Apacer Technology Inc. ++ + OUI:DC6F00* + ID_OUI_FROM_DATABASE=Livescribe, Inc. + +@@ -67816,6 +68431,9 @@ OUI:DCE71C* + OUI:DCF05D* + ID_OUI_FROM_DATABASE=Letta Teknoloji + ++OUI:DCF110* ++ ID_OUI_FROM_DATABASE=Nokia Corporation ++ + OUI:DCF755* + ID_OUI_FROM_DATABASE=SITRONIK + +@@ -67939,6 +68557,9 @@ OUI:E063E5* + OUI:E064BB* + ID_OUI_FROM_DATABASE=DigiView S.r.l. + ++OUI:E06678* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:E067B3* + ID_OUI_FROM_DATABASE=C-Data Technology Co., Ltd + +@@ -68071,6 +68692,9 @@ OUI:E0CA94* + OUI:E0CB4E* + ID_OUI_FROM_DATABASE=ASUSTek COMPUTER INC. + ++OUI:E0CBEE* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:E0CEC3* + ID_OUI_FROM_DATABASE=ASKEY COMPUTER CORP + +@@ -68152,6 +68776,9 @@ OUI:E40439* + OUI:E4115B* + ID_OUI_FROM_DATABASE=Hewlett Packard + ++OUI:E41218* ++ ID_OUI_FROM_DATABASE=ShenZhen Rapoo Technology Co., Ltd. ++ + OUI:E4121D* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -68341,6 +68968,9 @@ OUI:E4C806* + OUI:E4CE8F* + ID_OUI_FROM_DATABASE=Apple + ++OUI:E4D332* ++ ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. ++ + OUI:E4D3F1* + ID_OUI_FROM_DATABASE=Cisco + +@@ -68371,6 +69001,9 @@ OUI:E4F365* + OUI:E4F3E3* + ID_OUI_FROM_DATABASE=Shanghai iComhome Co.,Ltd. + ++OUI:E4F4C6* ++ ID_OUI_FROM_DATABASE=NETGEAR ++ + OUI:E4F7A1* + ID_OUI_FROM_DATABASE=Datafox GmbH + +@@ -68671,6 +69304,9 @@ OUI:E8EADA* + OUI:E8EDF3* + ID_OUI_FROM_DATABASE=Cisco + ++OUI:E8EF89* ++ ID_OUI_FROM_DATABASE=OPMEX Tech. ++ + OUI:E8F1B0* + ID_OUI_FROM_DATABASE=SAGEMCOM SAS + +@@ -68719,6 +69355,9 @@ OUI:EC2AF0* + OUI:EC2C49* + ID_OUI_FROM_DATABASE=University of Tokyo + ++OUI:EC2E4E* ++ ID_OUI_FROM_DATABASE=HITACHI-LG DATA STORAGE INC ++ + OUI:EC3091* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -68881,6 +69520,9 @@ OUI:ECE09B* + OUI:ECE1A9* + ID_OUI_FROM_DATABASE=Cisco + ++OUI:ECE512* ++ ID_OUI_FROM_DATABASE=tado GmbH ++ + OUI:ECE555* + ID_OUI_FROM_DATABASE=Hirschmann Automation + +@@ -68909,7 +69551,7 @@ OUI:ECF35B* + ID_OUI_FROM_DATABASE=Nokia Corporation + + OUI:ECF4BB* +- ID_OUI_FROM_DATABASE=Dell Inc PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:ECF72B* + ID_OUI_FROM_DATABASE=HD DIGITAL TECH CO., LTD. +@@ -68948,7 +69590,7 @@ OUI:F01C13* + ID_OUI_FROM_DATABASE=LG Electronics + + OUI:F01FAF* +- ID_OUI_FROM_DATABASE=Dell Inc PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:F0219D* + ID_OUI_FROM_DATABASE=Cal-Comp Electronics & Communications Company Ltd. +@@ -69085,6 +69727,9 @@ OUI:F08A28* + OUI:F08BFE* + ID_OUI_FROM_DATABASE=COSTEL.,CO.LTD + ++OUI:F08CFB* ++ ID_OUI_FROM_DATABASE=Fiberhome Telecommunication Tech.Co.,Ltd. ++ + OUI:F08EDB* + ID_OUI_FROM_DATABASE=VeloCloud Networks + +@@ -69241,6 +69886,9 @@ OUI:F4044C* + OUI:F4068D* + ID_OUI_FROM_DATABASE=devolo AG + ++OUI:F406A5* ++ ID_OUI_FROM_DATABASE=Hangzhou Bianfeng Networking Technology Co., Ltd. ++ + OUI:F40B93* + ID_OUI_FROM_DATABASE=Research In Motion + +@@ -69427,6 +70075,9 @@ OUI:F4B7E2* + OUI:F4BD7C* + ID_OUI_FROM_DATABASE=Chengdu jinshi communication Co., LTD + ++OUI:F4C447* ++ ID_OUI_FROM_DATABASE=Coagent International Enterprise Limited ++ + OUI:F4C6D7* + ID_OUI_FROM_DATABASE=blackned GmbH + +@@ -69478,6 +70129,9 @@ OUI:F4F15A* + OUI:F4F5A5* + ID_OUI_FROM_DATABASE=Nokia corporation + ++OUI:F4F5E8* ++ ID_OUI_FROM_DATABASE=Google ++ + OUI:F4F951* + ID_OUI_FROM_DATABASE=Apple + +@@ -69502,6 +70156,9 @@ OUI:F80BD0* + OUI:F80CF3* + ID_OUI_FROM_DATABASE=LG Electronics + ++OUI:F80D43* ++ ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co., Ltd. ++ + OUI:F80DEA* + ID_OUI_FROM_DATABASE=ZyCast Technology Inc. + +@@ -69586,6 +70243,9 @@ OUI:F8472D* + OUI:F84897* + ID_OUI_FROM_DATABASE=Hitachi, Ltd. + ++OUI:F84A73* ++ ID_OUI_FROM_DATABASE=EUMTECH CO., LTD ++ + OUI:F84A7F* + ID_OUI_FROM_DATABASE=Innometriks Inc + +@@ -69622,6 +70282,12 @@ OUI:F85F2A* + OUI:F862AA* + ID_OUI_FROM_DATABASE=xn systems + ++OUI:F86601* ++ ID_OUI_FROM_DATABASE=Suzhou Chi-tek information technology Co., Ltd ++ ++OUI:F866D1* ++ ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co., Ltd. ++ + OUI:F866F2* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -69710,13 +70376,13 @@ OUI:F8AC6D* + ID_OUI_FROM_DATABASE=Deltenna Ltd + + OUI:F8B156* +- ID_OUI_FROM_DATABASE=Dell Inc PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:F8B599* + ID_OUI_FROM_DATABASE=Guangzhou CHNAVS Digital Technology Co.,Ltd + + OUI:F8BC12* +- ID_OUI_FROM_DATABASE=Dell Inc PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:F8C001* + ID_OUI_FROM_DATABASE=Juniper Networks +@@ -69764,7 +70430,7 @@ OUI:F8DB7F* + ID_OUI_FROM_DATABASE=HTC Corporation + + OUI:F8DB88* +- ID_OUI_FROM_DATABASE=Dell Inc PCBA Test ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:F8DC7A* + ID_OUI_FROM_DATABASE=Variscite LTD +@@ -69892,6 +70558,9 @@ OUI:FC1FC0* + OUI:FC229C* + ID_OUI_FROM_DATABASE=Han Kyung I Net Co.,Ltd. + ++OUI:FC2325* ++ ID_OUI_FROM_DATABASE=EosTek (Shenzhen) Co., Ltd. ++ + OUI:FC253F* + ID_OUI_FROM_DATABASE=Apple + +@@ -69928,6 +70597,9 @@ OUI:FC455F* + OUI:FC48EF* + ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD + ++OUI:FC4AE9* ++ ID_OUI_FROM_DATABASE=Castlenet Technology Inc. ++ + OUI:FC4B1C* + ID_OUI_FROM_DATABASE=INTERSENSOR S.R.L. + +@@ -70030,6 +70702,9 @@ OUI:FCBBA1* + OUI:FCC23D* + ID_OUI_FROM_DATABASE=Atmel Corporation + ++OUI:FCC2DE* ++ ID_OUI_FROM_DATABASE=Murata Manufacturing Co., Ltd. ++ + OUI:FCC734* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -70048,6 +70723,9 @@ OUI:FCD4F2* + OUI:FCD4F6* + ID_OUI_FROM_DATABASE=Messana Air.Ray Conditioning s.r.l. + ++OUI:FCD5D9* ++ ID_OUI_FROM_DATABASE=Shenzhen SDMC Technology Co., Ltd. ++ + OUI:FCD6BD* + ID_OUI_FROM_DATABASE=Robert Bosch GmbH + +@@ -70060,6 +70738,9 @@ OUI:FCDB96* + OUI:FCDD55* + ID_OUI_FROM_DATABASE=Shenzhen WeWins wireless Co.,Ltd + ++OUI:FCE186* ++ ID_OUI_FROM_DATABASE=A3M Co., LTD ++ + OUI:FCE192* + ID_OUI_FROM_DATABASE=Sichuan Jinwangtong Electronic Science&Technology Co,.Ltd + +@@ -70078,12 +70759,18 @@ OUI:FCE892* + OUI:FCEDB9* + ID_OUI_FROM_DATABASE=Arrayent + ++OUI:FCF152* ++ ID_OUI_FROM_DATABASE=Sony Corporation ++ + OUI:FCF1CD* + ID_OUI_FROM_DATABASE=OPTEX-FA CO.,LTD. + + OUI:FCF528* + ID_OUI_FROM_DATABASE=ZyXEL Communications Corporation + ++OUI:FCF647* ++ ID_OUI_FROM_DATABASE=Fiberhome Telecommunication Tech.Co.,Ltd. ++ + OUI:FCF8AE* + ID_OUI_FROM_DATABASE=Intel Corporate + +diff --git hwdb/20-pci-vendor-model.hwdb hwdb/20-pci-vendor-model.hwdb +index 7f833e3..371a685 100644 +--- hwdb/20-pci-vendor-model.hwdb ++++ hwdb/20-pci-vendor-model.hwdb +@@ -890,6 +890,9 @@ pci:v00001000d0000005Bsv00001000sd00009295* + pci:v00001000d0000005Bsv00001014sd0000040B* + ID_MODEL_FROM_DATABASE=ServeRAID M5110 SAS/SATA Controller + ++pci:v00001000d0000005Bsv00001014sd0000040C* ++ ID_MODEL_FROM_DATABASE=ServeRAID M5120 SAS/SATA Controller ++ + pci:v00001000d0000005Bsv00001014sd00000412* + ID_MODEL_FROM_DATABASE=ServeRAID M5110e SAS/SATA Controller + +@@ -917,6 +920,9 @@ pci:v00001000d0000005Bsv00001028sd00001F37* + pci:v00001000d0000005Bsv00001028sd00001F38* + ID_MODEL_FROM_DATABASE=PERC H710 Mini (for monolithics) + ++pci:v00001000d0000005Bsv000015D9sd00000690* ++ ID_MODEL_FROM_DATABASE=LSI MegaRAID ROMB ++ + pci:v00001000d0000005Bsv00008086sd00003510* + ID_MODEL_FROM_DATABASE=RMS25PB080 RAID Controller + +@@ -950,6 +956,12 @@ pci:v00001000d0000005Dsv00001028sd00001F49* + pci:v00001000d0000005Dsv00001028sd00001F4A* + ID_MODEL_FROM_DATABASE=PERC H730 Mini (for blades) + ++pci:v00001000d0000005Dsv000017AAsd00001052* ++ ID_MODEL_FROM_DATABASE=ThinkServer RAID 720i ++ ++pci:v00001000d0000005Dsv000017AAsd00001053* ++ ID_MODEL_FROM_DATABASE=ThinkServer RAID 720ix ++ + pci:v00001000d0000005E* + ID_MODEL_FROM_DATABASE=SAS1066 PCI-X Fusion-MPT SAS + +@@ -1163,6 +1175,9 @@ pci:v00001000d00000073sv000015D9sd00000400* + pci:v00001000d00000073sv00001734sd00001177* + ID_MODEL_FROM_DATABASE=RAID Ctrl SAS 6G 0/1 (D2607) + ++pci:v00001000d00000073sv000017AAsd00001051* ++ ID_MODEL_FROM_DATABASE=ThinkServer RAID 510i ++ + pci:v00001000d00000073sv00008086sd0000350D* + ID_MODEL_FROM_DATABASE=RMS2AF040 RAID Controller + +@@ -1598,6 +1613,9 @@ pci:v00001000d00001960sv00008086sd00000520* + pci:v00001000d00001960sv00008086sd00000523* + ID_MODEL_FROM_DATABASE=MegaRAID RAID Controller SRCS16 + ++pci:v00001000d00003050* ++ ID_MODEL_FROM_DATABASE=SAS2008 PCI-Express Fusion-MPT SAS-2 ++ + pci:v00001000d00006001* + ID_MODEL_FROM_DATABASE=DX1 Multiformat Broadcast HD/SD Encoder/Decoder + +@@ -1665,7 +1683,7 @@ pci:v00001002d0000130E* + ID_MODEL_FROM_DATABASE=Kaveri + + pci:v00001002d0000130F* +- ID_MODEL_FROM_DATABASE=Kaveri ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R7 200 Series] + + pci:v00001002d00001310* + ID_MODEL_FROM_DATABASE=Kaveri +@@ -1673,9 +1691,12 @@ pci:v00001002d00001310* + pci:v00001002d00001311* + ID_MODEL_FROM_DATABASE=Kaveri + +-pci:v00001002d00001313* ++pci:v00001002d00001312* + ID_MODEL_FROM_DATABASE=Kaveri + ++pci:v00001002d00001313* ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R7 200 Series] ++ + pci:v00001002d00001314* + ID_MODEL_FROM_DATABASE=Wrestler HDMI Audio + +@@ -1686,6 +1707,9 @@ pci:v00001002d00001315* + ID_MODEL_FROM_DATABASE=Kaveri + + pci:v00001002d00001316* ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R5 200 Series] ++ ++pci:v00001002d00001317* + ID_MODEL_FROM_DATABASE=Kaveri + + pci:v00001002d0000131B* +@@ -1694,6 +1718,9 @@ pci:v00001002d0000131B* + pci:v00001002d0000131C* + ID_MODEL_FROM_DATABASE=Kaveri + ++pci:v00001002d0000131D* ++ ID_MODEL_FROM_DATABASE=Kaveri ++ + pci:v00001002d00001714* + ID_MODEL_FROM_DATABASE=BeaverCreek HDMI Audio [Radeon HD 6500D and 6400G-6600G series] + +@@ -4176,20 +4203,41 @@ pci:v00001002d00006603* + ID_MODEL_FROM_DATABASE=Mars + + pci:v00001002d00006604* +- ID_MODEL_FROM_DATABASE=Mars [Radeon R7 M265] ++ ID_MODEL_FROM_DATABASE=Opal XT [Radeon R7 M265] + + pci:v00001002d00006605* +- ID_MODEL_FROM_DATABASE=Mars [Radeon R7 M260] ++ ID_MODEL_FROM_DATABASE=Opal PRO [Radeon R7 M260] + + pci:v00001002d00006606* + ID_MODEL_FROM_DATABASE=Mars XTX [Radeon HD 8790M] + + pci:v00001002d00006607* +- ID_MODEL_FROM_DATABASE=Mars LE [Radeon HD 8530M] ++ ID_MODEL_FROM_DATABASE=Mars LE [Radeon HD 8530M / R5 M240] + + pci:v00001002d00006610* + ID_MODEL_FROM_DATABASE=Oland XT [Radeon HD 8670 / R7 250] + ++pci:v00001002d00006610sv00001019sd00000030* ++ ID_MODEL_FROM_DATABASE=Radeon HD 8670 ++ ++pci:v00001002d00006610sv00001028sd00002120* ++ ID_MODEL_FROM_DATABASE=Radeon R7 250 ++ ++pci:v00001002d00006610sv00001028sd00002322* ++ ID_MODEL_FROM_DATABASE=Radeon R7 250 ++ ++pci:v00001002d00006610sv00001462sd00002910* ++ ID_MODEL_FROM_DATABASE=Radeon HD 8670 ++ ++pci:v00001002d00006610sv00001462sd00002911* ++ ID_MODEL_FROM_DATABASE=Radeon HD 8670 ++ ++pci:v00001002d00006610sv00001642sd00003C81* ++ ID_MODEL_FROM_DATABASE=Radeon HD 8670 ++ ++pci:v00001002d00006610sv00001642sd00003C91* ++ ID_MODEL_FROM_DATABASE=Radeon HD 8670 ++ + pci:v00001002d00006611* + ID_MODEL_FROM_DATABASE=Oland [Radeon HD 8570 / R7 240 OEM] + +@@ -4278,13 +4326,13 @@ pci:v00001002d00006663sv00001025sd00000846* + ID_MODEL_FROM_DATABASE=Radeon HD 8570A + + pci:v00001002d00006664* +- ID_MODEL_FROM_DATABASE=Jet XT [Radeon R5 M200 Series] ++ ID_MODEL_FROM_DATABASE=Jet XT [Radeon R5 M250] + + pci:v00001002d00006665* +- ID_MODEL_FROM_DATABASE=Jet PRO [Radeon R5 M200 Series] ++ ID_MODEL_FROM_DATABASE=Jet PRO [Radeon R5 M230] + + pci:v00001002d00006667* +- ID_MODEL_FROM_DATABASE=Jet ULT [Radeon R5 M200 Series] ++ ID_MODEL_FROM_DATABASE=Jet ULT [Radeon R5 M240] + + pci:v00001002d0000666F* + ID_MODEL_FROM_DATABASE=Sun LE [Radeon HD 8550M] +@@ -5003,6 +5051,9 @@ pci:v00001002d00006759sv00001B0Asd000090B5* + pci:v00001002d00006759sv00001B0Asd000090B6* + ID_MODEL_FROM_DATABASE=Radeon HD 7570 + ++pci:v00001002d0000675B* ++ ID_MODEL_FROM_DATABASE=Turks [Radeon HD 7600 Series] ++ + pci:v00001002d0000675D* + ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 7570] + +@@ -5801,6 +5852,9 @@ pci:v00001002d00006798sv00001092sd00003000* + pci:v00001002d00006798sv00001458sd00002261* + ID_MODEL_FROM_DATABASE=Tahiti XT2 [Radeon HD 7970 GHz Edition OC] + ++pci:v00001002d00006798sv00001462sd00002774* ++ ID_MODEL_FROM_DATABASE=MSI R7970 TF 3GD5/OC BE ++ + pci:v00001002d00006798sv00001682sd00003211* + ID_MODEL_FROM_DATABASE=Double D HD 7970 Black Edition + +@@ -5823,7 +5877,7 @@ pci:v00001002d00006799* + ID_MODEL_FROM_DATABASE=New Zealand [Radeon HD 7900 Series] + + pci:v00001002d0000679A* +- ID_MODEL_FROM_DATABASE=Tahiti PRO [Radeon HD 7950] ++ ID_MODEL_FROM_DATABASE=Tahiti PRO [Radeon HD 7950/8950 OEM / R9 280] + + pci:v00001002d0000679Asv00001002sd00000B01* + ID_MODEL_FROM_DATABASE=Radeon HD 8950 OEM +@@ -5903,6 +5957,9 @@ pci:v00001002d00006801* + pci:v00001002d00006801sv00001002sd00000124* + ID_MODEL_FROM_DATABASE=Radeon HD 8970M + ++pci:v00001002d00006801sv00001462sd00001117* ++ ID_MODEL_FROM_DATABASE=Radeon R9 M290X ++ + pci:v00001002d00006801sv00008086sd00002110* + ID_MODEL_FROM_DATABASE=Radeon HD 8970M + +@@ -5966,6 +6023,12 @@ pci:v00001002d00006821* + pci:v00001002d00006821sv00001002sd0000031E* + ID_MODEL_FROM_DATABASE=FirePro SX4000 + ++pci:v00001002d00006821sv00001028sd000005CC* ++ ID_MODEL_FROM_DATABASE=FirePro M5100 ++ ++pci:v00001002d00006821sv00001028sd000015CC* ++ ID_MODEL_FROM_DATABASE=FirePro M5100 ++ + pci:v00001002d00006822* + ID_MODEL_FROM_DATABASE=Venus PRO [Radeon E8860] + +@@ -6039,7 +6102,7 @@ pci:v00001002d0000683B* + ID_MODEL_FROM_DATABASE=Cape Verde [Radeon HD 7700 Series] + + pci:v00001002d0000683D* +- ID_MODEL_FROM_DATABASE=Cape Verde XT [Radeon HD 7770 GHz Edition] ++ ID_MODEL_FROM_DATABASE=Cape Verde XT [Radeon HD 7770/8760 / R7 250X] + + pci:v00001002d0000683Dsv00001002sd00000030* + ID_MODEL_FROM_DATABASE=Radeon HD 8760 OEM +@@ -6050,8 +6113,14 @@ pci:v00001002d0000683Dsv00001019sd00000030* + pci:v00001002d0000683Dsv0000103Csd00006890* + ID_MODEL_FROM_DATABASE=Radeon HD 8760 OEM + ++pci:v00001002d0000683Dsv00001043sd00008760* ++ ID_MODEL_FROM_DATABASE=Radeon HD 8760 OEM ++ ++pci:v00001002d0000683Dsv0000174Bsd00008304* ++ ID_MODEL_FROM_DATABASE=Radeon HD 8760 OEM ++ + pci:v00001002d0000683F* +- ID_MODEL_FROM_DATABASE=Cape Verde PRO [Radeon HD 7750] ++ ID_MODEL_FROM_DATABASE=Cape Verde PRO [Radeon HD 7750 / R7 250E] + + pci:v00001002d00006840* + ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] +@@ -8891,6 +8960,9 @@ pci:v00001002d0000985E* + pci:v00001002d0000985F* + ID_MODEL_FROM_DATABASE=Mullins + ++pci:v00001002d00009900* ++ ID_MODEL_FROM_DATABASE=Trinity [Radeon HD 7660G] ++ + pci:v00001002d00009901* + ID_MODEL_FROM_DATABASE=Trinity [Radeon HD 7660D] + +@@ -9498,7 +9570,7 @@ pci:v00001011d0000000D* + ID_MODEL_FROM_DATABASE=PBXGB [TGA2] + + pci:v00001011d0000000F* +- ID_MODEL_FROM_DATABASE=PCI-to-PDQ Interface Chip [PFI] ++ ID_MODEL_FROM_DATABASE=DEFPA FDDI PCI-to-PDQ Interface Chip [PFI] + + pci:v00001011d0000000Fsv00001011sd0000DEF1* + ID_MODEL_FROM_DATABASE=FDDI controller (DEFPA) +@@ -9596,6 +9668,9 @@ pci:v00001011d00000019sv00001186sd00001102* + pci:v00001011d00000019sv00001186sd00001112* + ID_MODEL_FROM_DATABASE=DFE-570TX Quad Fast Ethernet + ++pci:v00001011d00000019sv000011F0sd00004235* ++ ID_MODEL_FROM_DATABASE=21143 [FASTLine-II UTP 10/100] ++ + pci:v00001011d00000019sv00001259sd00002800* + ID_MODEL_FROM_DATABASE=AT-2800Tx Fast Ethernet + +@@ -9761,6 +9836,9 @@ pci:v00001013d000000B0* + pci:v00001013d000000B8* + ID_MODEL_FROM_DATABASE=GD 5446 + ++pci:v00001013d000000B8sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00001013d000000BC* + ID_MODEL_FROM_DATABASE=GD 5480 + +@@ -10487,6 +10565,9 @@ pci:v0000101Ed00001960sv00001028sd00000511* + pci:v0000101Ed00001960sv0000103Csd000060E7* + ID_MODEL_FROM_DATABASE=NetRAID-1M + ++pci:v0000101Ed00001960sv0000103Csd000060E8* ++ ID_MODEL_FROM_DATABASE=NetRaid 2M [AMI MegaRaid 493] ++ + pci:v0000101Ed00009010* + ID_MODEL_FROM_DATABASE=MegaRAID 428 Ultra RAID Controller + +@@ -10811,6 +10892,9 @@ pci:v00001022d00002003* + pci:v00001022d00002020* + ID_MODEL_FROM_DATABASE=53c974 [PCscsi] + ++pci:v00001022d00002020sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00001022d00002040* + ID_MODEL_FROM_DATABASE=79c974 + +@@ -12263,6 +12347,9 @@ pci:v0000102Bd00002007* + pci:v0000102Bd00002527* + ID_MODEL_FROM_DATABASE=Millennium G550 + ++pci:v0000102Bd00002527sv0000102Bsd00000F42* ++ ID_MODEL_FROM_DATABASE=Matrox G550 Low Profile PCI ++ + pci:v0000102Bd00002527sv0000102Bsd00000F83* + ID_MODEL_FROM_DATABASE=Millennium G550 + +@@ -12515,6 +12602,9 @@ pci:v0000102Bd00004949* + pci:v0000102Bd00004949sv0000102Bsd00000010* + ID_MODEL_FROM_DATABASE=Radient eCL (Single-full) frame grabber + ++pci:v0000102Bd00004949sv0000102Bsd00000011* ++ ID_MODEL_FROM_DATABASE=Radient eCLV (Single-full) frame grabber ++ + pci:v0000102Bd00004949sv0000102Bsd00000020* + ID_MODEL_FROM_DATABASE=Radient eCL (Dual-base) frame grabber + +@@ -12527,6 +12617,18 @@ pci:v0000102Bd00004949sv0000102Bsd00000040* + pci:v0000102Bd00004949sv0000102Bsd00000050* + ID_MODEL_FROM_DATABASE=Radient eCL (Golden) frame grabber + ++pci:v0000102Bd00004949sv0000102Bsd00001010* ++ ID_MODEL_FROM_DATABASE=Radient eV-CXP (quad CXP-6) frame grabber ++ ++pci:v0000102Bd00004949sv0000102Bsd00001015* ++ ID_MODEL_FROM_DATABASE=Radient eV-CXP (dual CXP-6) frame grabber ++ ++pci:v0000102Bd00004949sv0000102Bsd00001020* ++ ID_MODEL_FROM_DATABASE=Radient eV-CXP (quad CXP-3) frame grabber ++ ++pci:v0000102Bd00004949sv0000102Bsd00001050* ++ ID_MODEL_FROM_DATABASE=Radient eV-CXP (Golden) frame grabber ++ + pci:v0000102Bd00004CDC* + ID_MODEL_FROM_DATABASE=Morphis JPEG2000 accelerator + +@@ -12911,6 +13013,9 @@ pci:v00001033d00000194sv00001028sd000004DA* + pci:v00001033d00000194sv00001043sd00008413* + ID_MODEL_FROM_DATABASE=P8P67 Deluxe Motherboard + ++pci:v00001033d00000194sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00001033d00000194sv00001B96sd00000001* + ID_MODEL_FROM_DATABASE=USB 3.0 PCIe Card + +@@ -13853,9 +13958,6 @@ pci:v0000103Cd00004037* + pci:v0000103Cd0000403B* + ID_MODEL_FROM_DATABASE=PCIe Root Port + +-pci:v0000103Cd000060E8* +- ID_MODEL_FROM_DATABASE=NetRAID-2M : ZX1/M (OEM AMI MegaRAID 493) +- + pci:v0000103E* + ID_VENDOR_FROM_DATABASE=Solliday Engineering + +@@ -14159,6 +14261,9 @@ pci:v0000104Ad00000010* + pci:v0000104Ad00000010sv0000104Asd00004018* + ID_MODEL_FROM_DATABASE=ST PowerVR Kyro (64MB AGP TVO) + ++pci:v0000104Ad00000010sv00001681sd00000010* ++ ID_MODEL_FROM_DATABASE=PowerVR Kyro II [3D Prophet 4500] ++ + pci:v0000104Ad00000010sv00001681sd00000028* + ID_MODEL_FROM_DATABASE=3D Prophet 4000XT + +@@ -14426,6 +14531,9 @@ pci:v0000104Cd00008022sv0000104Csd00008023* + pci:v0000104Cd00008023* + ID_MODEL_FROM_DATABASE=TSB43AB22A IEEE-1394a-2000 Controller (PHY/Link) [iOHCI-Lynx] + ++pci:v0000104Cd00008023sv00001028sd00000168* ++ ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ + pci:v0000104Cd00008023sv0000103Csd0000088C* + ID_MODEL_FROM_DATABASE=NC8000 laptop + +@@ -15233,6 +15341,9 @@ pci:v00001054d0000302C* + pci:v00001054d0000302D* + ID_MODEL_FROM_DATABASE=M001 PCI Express Switch Downstream Port + ++pci:v00001054d00003070* ++ ID_MODEL_FROM_DATABASE=Hitachi FIVE-FX Fibre Channel to PCIe HBA ++ + pci:v00001054d00003505* + ID_MODEL_FROM_DATABASE=SH7751 PCI Controller (PCIC) + +@@ -16208,6 +16319,9 @@ pci:v0000106Bd0000003E* + pci:v0000106Bd0000003F* + ID_MODEL_FROM_DATABASE=KeyLargo/Intrepid USB + ++pci:v0000106Bd0000003Fsv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v0000106Bd00000040* + ID_MODEL_FROM_DATABASE=K2 KeyLargo USB + +@@ -16517,6 +16631,9 @@ pci:v00001077d00002422sv0000103Csd000012DD* + pci:v00001077d00002432* + ID_MODEL_FROM_DATABASE=ISP2432-based 4Gb Fibre Channel to PCI Express HBA + ++pci:v00001077d00002432sv0000103Csd00007040* ++ ID_MODEL_FROM_DATABASE=FC1142SR 4Gb 1-port PCIe Fibre Channel Host Bus Adapter [HPAE311A] ++ + pci:v00001077d00002532* + ID_MODEL_FROM_DATABASE=ISP2532-based 8Gb Fibre Channel to PCI Express HBA + +@@ -16815,7 +16932,7 @@ pci:v0000108Dd00000002* + ID_MODEL_FROM_DATABASE=16/4 Token Ring + + pci:v0000108Dd00000004* +- ID_MODEL_FROM_DATABASE=RapidFire 3139 Token-Ring 16/4 PCI Adapter ++ ID_MODEL_FROM_DATABASE=RapidFire OC-3139/3140 Token-Ring 16/4 PCI Adapter + + pci:v0000108Dd00000004sv0000108Dsd00000004* + ID_MODEL_FROM_DATABASE=OC-3139/3140 RapidFire Token-Ring 16/4 Adapter +@@ -17294,6 +17411,30 @@ pci:v00001093d00002CC0* + pci:v00001093d00002DB0* + ID_MODEL_FROM_DATABASE=PCI-6608 + ++pci:v00001093d0000702C* ++ ID_MODEL_FROM_DATABASE=PXI-7831R ++ ++pci:v00001093d0000702D* ++ ID_MODEL_FROM_DATABASE=PCI-7831R ++ ++pci:v00001093d0000702E* ++ ID_MODEL_FROM_DATABASE=PXI-7811R ++ ++pci:v00001093d0000702F* ++ ID_MODEL_FROM_DATABASE=PCI-7811R ++ ++pci:v00001093d00007055* ++ ID_MODEL_FROM_DATABASE=PXI-7830R ++ ++pci:v00001093d00007056* ++ ID_MODEL_FROM_DATABASE=PCI-7830R ++ ++pci:v00001093d00007074* ++ ID_MODEL_FROM_DATABASE=PXI-7833R ++ ++pci:v00001093d00007083* ++ ID_MODEL_FROM_DATABASE=PCI-7833R ++ + pci:v00001093d00007085* + ID_MODEL_FROM_DATABASE=PCI-6509 + +@@ -17369,6 +17510,9 @@ pci:v00001093d0000714C* + pci:v00001093d0000714D* + ID_MODEL_FROM_DATABASE=PCI-5114 + ++pci:v00001093d00007152* ++ ID_MODEL_FROM_DATABASE=PCI-5640R ++ + pci:v00001093d0000716C* + ID_MODEL_FROM_DATABASE=PCI-6225 + +@@ -17378,6 +17522,12 @@ pci:v00001093d0000717D* + pci:v00001093d0000717F* + ID_MODEL_FROM_DATABASE=PCIe-6259 + ++pci:v00001093d00007193* ++ ID_MODEL_FROM_DATABASE=PXI-7813R ++ ++pci:v00001093d00007194* ++ ID_MODEL_FROM_DATABASE=PCI-7813R ++ + pci:v00001093d000071BC* + ID_MODEL_FROM_DATABASE=PCI-6221 (37pin) + +@@ -17420,6 +17570,51 @@ pci:v00001093d0000734A* + pci:v00001093d0000737D* + ID_MODEL_FROM_DATABASE=PXI-5124EX + ++pci:v00001093d00007384* ++ ID_MODEL_FROM_DATABASE=PXI-7851R ++ ++pci:v00001093d00007385* ++ ID_MODEL_FROM_DATABASE=PXI-7852R ++ ++pci:v00001093d00007386* ++ ID_MODEL_FROM_DATABASE=PCIe-7851R ++ ++pci:v00001093d00007387* ++ ID_MODEL_FROM_DATABASE=PCIe-7852R ++ ++pci:v00001093d00007390* ++ ID_MODEL_FROM_DATABASE=PXI-7841R ++ ++pci:v00001093d00007391* ++ ID_MODEL_FROM_DATABASE=PXI-7842R ++ ++pci:v00001093d00007392* ++ ID_MODEL_FROM_DATABASE=PXI-7853R ++ ++pci:v00001093d00007393* ++ ID_MODEL_FROM_DATABASE=PCIe-7841R ++ ++pci:v00001093d00007394* ++ ID_MODEL_FROM_DATABASE=PCIe-7842R ++ ++pci:v00001093d000073A5* ++ ID_MODEL_FROM_DATABASE=PXIe-5641R ++ ++pci:v00001093d000073D5* ++ ID_MODEL_FROM_DATABASE=PXI-7951R ++ ++pci:v00001093d000073D6* ++ ID_MODEL_FROM_DATABASE=PXI-7952R ++ ++pci:v00001093d000073D7* ++ ID_MODEL_FROM_DATABASE=PXI-7953R ++ ++pci:v00001093d000073E1* ++ ID_MODEL_FROM_DATABASE=PXI-7854R ++ ++pci:v00001093d000073EC* ++ ID_MODEL_FROM_DATABASE=PXI-7954R ++ + pci:v00001093d000073F0* + ID_MODEL_FROM_DATABASE=PXI-5153 + +@@ -17438,6 +17633,18 @@ pci:v00001093d00007460* + pci:v00001093d00007461* + ID_MODEL_FROM_DATABASE=PCI-5154EX + ++pci:v00001093d00007539* ++ ID_MODEL_FROM_DATABASE=NI 9157 ++ ++pci:v00001093d0000753A* ++ ID_MODEL_FROM_DATABASE=NI 9159 ++ ++pci:v00001093d00007626* ++ ID_MODEL_FROM_DATABASE=NI 9154 ++ ++pci:v00001093d00007627* ++ ID_MODEL_FROM_DATABASE=NI 9155 ++ + pci:v00001093d0000B001* + ID_MODEL_FROM_DATABASE=IMAQ-PCI-1408 + +@@ -17469,7 +17676,28 @@ pci:v00001093d0000B091* + ID_MODEL_FROM_DATABASE=IMAQ-PXI-1411 + + pci:v00001093d0000C4C4* +- ID_MODEL_FROM_DATABASE=PXIe-4353/5160 ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device ++ ++pci:v00001093d0000C4C4sv00001093sd000074B2* ++ ID_MODEL_FROM_DATABASE=PXIe-4353 ++ ++pci:v00001093d0000C4C4sv00001093sd000074D0* ++ ID_MODEL_FROM_DATABASE=PXIe-7961R ++ ++pci:v00001093d0000C4C4sv00001093sd000074E2* ++ ID_MODEL_FROM_DATABASE=PXIe-7962R ++ ++pci:v00001093d0000C4C4sv00001093sd000074E3* ++ ID_MODEL_FROM_DATABASE=PXIe-7965R ++ ++pci:v00001093d0000C4C4sv00001093sd00007553* ++ ID_MODEL_FROM_DATABASE=PCIe-1473R ++ ++pci:v00001093d0000C4C4sv00001093sd000075CE* ++ ID_MODEL_FROM_DATABASE=PXIe-7966R ++ ++pci:v00001093d0000C4C4sv00001093sd000076B7* ++ ID_MODEL_FROM_DATABASE=PXIe-7975R + + pci:v00001093d0000C4C4sv00001093sd000076D0* + ID_MODEL_FROM_DATABASE=PXIe-5160 +@@ -17696,9 +17924,6 @@ pci:v0000109Ed0000036Esv00001461sd00000761* + pci:v0000109Ed0000036Esv00001461sd00000771* + ID_MODEL_FROM_DATABASE=AverMedia AVerTV DVB-T 771 + +-pci:v0000109Ed0000036Esv00001464sd0000AA00* +- ID_MODEL_FROM_DATABASE=iTuner Spectra8 +- + pci:v0000109Ed0000036Esv000014F1sd00000001* + ID_MODEL_FROM_DATABASE=Bt878 Mediastream Controller NTSC + +@@ -18152,6 +18377,9 @@ pci:v000010A9d00008001* + pci:v000010A9d00008002* + ID_MODEL_FROM_DATABASE=G-net NT + ++pci:v000010A9d0000802B* ++ ID_MODEL_FROM_DATABASE=REACT external interrupt controller ++ + pci:v000010AA* + ID_VENDOR_FROM_DATABASE=ACC Microelectronics + +@@ -18485,6 +18713,9 @@ pci:v000010B5d00008732* + pci:v000010B5d00008734* + ID_MODEL_FROM_DATABASE=PEX 8734 32-lane, 8-Port PCI Express Gen 3 (8.0GT/s) Switch + ++pci:v000010B5d00008747* ++ ID_MODEL_FROM_DATABASE=PEX 8747 48-Lane, 5-Port PCI Express Gen 3 (8.0 GT/s) Switch ++ + pci:v000010B5d000087B0* + ID_MODEL_FROM_DATABASE=PEX 8732 32-lane, 8-Port PCI Express Gen 3 (8.0 GT/s) Switch + +@@ -18969,10 +19200,10 @@ pci:v000010B6d00000009sv000010B6sd00000009* + ID_MODEL_FROM_DATABASE=Smart 100/16/4 PCI-HS Ringnode + + pci:v000010B6d0000000A* +- ID_MODEL_FROM_DATABASE=Smart 100/16/4 PCI Ringnode ++ ID_MODEL_FROM_DATABASE=Token Ring 100/16/4 Ringnode/Ringrunner + + pci:v000010B6d0000000Asv000010B6sd0000000A* +- ID_MODEL_FROM_DATABASE=Smart 100/16/4 PCI Ringnode ++ ID_MODEL_FROM_DATABASE=Token Ring 100/16/4 Ringnode/Ringrunner + + pci:v000010B6d0000000B* + ID_MODEL_FROM_DATABASE=16/4 CardBus Adapter Mk2 +@@ -19001,6 +19232,9 @@ pci:v000010B7* + pci:v000010B7d00000001* + ID_MODEL_FROM_DATABASE=3c985 1000BaseSX (SX/TX) + ++pci:v000010B7d00000001sv00009850sd00000001* ++ ID_MODEL_FROM_DATABASE=3c985B-SX ++ + pci:v000010B7d00000013* + ID_MODEL_FROM_DATABASE=AR5212 802.11abg NIC (3CRDAG675) + +@@ -21042,10 +21276,7 @@ pci:v000010DEd000000CC* + ID_MODEL_FROM_DATABASE=NV41GLM [Quadro FX Go1400] + + pci:v000010DEd000000CD* +- ID_MODEL_FROM_DATABASE=NV41GL [Quadro FX 3450/4000 SDI] +- +-pci:v000010DEd000000CDsv000010DEsd0000029B* +- ID_MODEL_FROM_DATABASE=wx4300 Workstation ++ ID_MODEL_FROM_DATABASE=NV42GL [Quadro FX 3450/4000 SDI] + + pci:v000010DEd000000CE* + ID_MODEL_FROM_DATABASE=NV41GL [Quadro FX 1400] +@@ -24858,7 +25089,7 @@ pci:v000010DEd0000086E* + ID_MODEL_FROM_DATABASE=C79 [GeForce 9100M G] + + pci:v000010DEd0000086F* +- ID_MODEL_FROM_DATABASE=C79 [GeForce 9200M G] ++ ID_MODEL_FROM_DATABASE=MCP79 [GeForce 8200M G] + + pci:v000010DEd00000870* + ID_MODEL_FROM_DATABASE=C79 [GeForce 9400M] +@@ -26006,6 +26237,9 @@ pci:v000010DEd00001005sv00003842sd00002795* + pci:v000010DEd0000100A* + ID_MODEL_FROM_DATABASE=GK110B [GeForce GTX 780 Ti] + ++pci:v000010DEd0000100C* ++ ID_MODEL_FROM_DATABASE=GK110B [GeForce GTX Titan Black] ++ + pci:v000010DEd0000101F* + ID_MODEL_FROM_DATABASE=GK110GL [Tesla K20] + +@@ -26582,6 +26816,9 @@ pci:v000010DEd00001140sv00001462sd000010B8* + pci:v000010DEd00001140sv00001462sd000010E9* + ID_MODEL_FROM_DATABASE=GeForce GT 720M + ++pci:v000010DEd00001140sv00001462sd00001116* ++ ID_MODEL_FROM_DATABASE=GeForce 820M ++ + pci:v000010DEd00001140sv00001462sd0000AA33* + ID_MODEL_FROM_DATABASE=GeForce 720M + +@@ -26750,6 +26987,9 @@ pci:v000010DEd00001140sv00001B0Asd00002202* + pci:v000010DEd00001180* + ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 680] + ++pci:v000010DEd00001180sv00001043sd000083F1* ++ ID_MODEL_FROM_DATABASE=GTX680-DC2-2GD5 ++ + pci:v000010DEd00001180sv00003842sd00003682* + ID_MODEL_FROM_DATABASE=GeForce GTX 680 Mac Edition + +@@ -26804,6 +27044,15 @@ pci:v000010DEd0000118F* + pci:v000010DEd00001193* + ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 760 Ti OEM] + ++pci:v000010DEd00001198* ++ ID_MODEL_FROM_DATABASE=GK104M [GeForce GTX 880M] ++ ++pci:v000010DEd00001199* ++ ID_MODEL_FROM_DATABASE=GK104M [GeForce GTX 870M] ++ ++pci:v000010DEd0000119A* ++ ID_MODEL_FROM_DATABASE=GK104M [GeForce GTX 860M] ++ + pci:v000010DEd0000119D* + ID_MODEL_FROM_DATABASE=GK104M [GeForce GTX 775M Mac Edition] + +@@ -27065,6 +27314,9 @@ pci:v000010DEd00001251* + pci:v000010DEd00001280* + ID_MODEL_FROM_DATABASE=GK208 [GeForce GT 635] + ++pci:v000010DEd00001281* ++ ID_MODEL_FROM_DATABASE=GK208 [GeForce GT 710] ++ + pci:v000010DEd00001282* + ID_MODEL_FROM_DATABASE=GK208 [GeForce GT 640 Rev. 2] + +@@ -27107,6 +27359,9 @@ pci:v000010DEd00001294* + pci:v000010DEd00001295* + ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] + ++pci:v000010DEd00001296* ++ ID_MODEL_FROM_DATABASE=GK208M [GeForce 825M] ++ + pci:v000010DEd00001298* + ID_MODEL_FROM_DATABASE=GK208M [GeForce GT 720M] + +@@ -27119,12 +27374,48 @@ pci:v000010DEd000012B9* + pci:v000010DEd000012BA* + ID_MODEL_FROM_DATABASE=GK208GLM [Quadro K510M] + ++pci:v000010DEd00001340* ++ ID_MODEL_FROM_DATABASE=GM108M [GeForce 830M] ++ ++pci:v000010DEd00001341* ++ ID_MODEL_FROM_DATABASE=GM108M [GeForce 840M] ++ ++pci:v000010DEd00001380* ++ ID_MODEL_FROM_DATABASE=GM107 [GeForce GTX 750 Ti] ++ ++pci:v000010DEd00001381* ++ ID_MODEL_FROM_DATABASE=GM107 [GeForce GTX 750] ++ ++pci:v000010DEd00001382* ++ ID_MODEL_FROM_DATABASE=GM107 [GeForce GTX 745] ++ ++pci:v000010DEd00001390* ++ ID_MODEL_FROM_DATABASE=GM107M [GeForce 845M] ++ ++pci:v000010DEd00001391* ++ ID_MODEL_FROM_DATABASE=GM107M [GeForce GTX 850M] ++ ++pci:v000010DEd00001392* ++ ID_MODEL_FROM_DATABASE=GM107M [GeForce GTX 860M] ++ ++pci:v000010DEd00001393* ++ ID_MODEL_FROM_DATABASE=GM107M [GeForce 840M] ++ + pci:v000010DF* + ID_VENDOR_FROM_DATABASE=Emulex Corporation + + pci:v000010DFd00000720* + ID_MODEL_FROM_DATABASE=OneConnect NIC (Skyhawk) + ++pci:v000010DFd00000720sv000017AAsd00001056* ++ ID_MODEL_FROM_DATABASE=ThinkServer OCm14102-UX-L AnyFabric ++ ++pci:v000010DFd00000720sv000017AAsd00001057* ++ ID_MODEL_FROM_DATABASE=ThinkServer OCm14104-UX-L AnyFabric ++ ++pci:v000010DFd00000720sv000017AAsd00001059* ++ ID_MODEL_FROM_DATABASE=ThinkServer OCm14104-UT-L AnyFabric ++ + pci:v000010DFd00000722* + ID_MODEL_FROM_DATABASE=OneConnect iSCSI Initiator (Skyhawk) + +@@ -27167,6 +27458,12 @@ pci:v000010DFd0000E208* + pci:v000010DFd0000E220* + ID_MODEL_FROM_DATABASE=OneConnect NIC (Lancer) + ++pci:v000010DFd0000E220sv000017AAsd00001054* ++ ID_MODEL_FROM_DATABASE=ThinkServer LPm16002B-M6-L AnyFabric ++ ++pci:v000010DFd0000E220sv000017AAsd00001055* ++ ID_MODEL_FROM_DATABASE=ThinkServer LPm16004B-M8-L AnyFabric ++ + pci:v000010DFd0000E240* + ID_MODEL_FROM_DATABASE=OneConnect iSCSI Initiator (Lancer) + +@@ -27573,7 +27870,7 @@ pci:v000010ECd00008029sv00001259sd00002400* + ID_MODEL_FROM_DATABASE=AT-2400 + + pci:v000010ECd00008029sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=Qemu virtual machine ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine + + pci:v000010ECd00008129* + ID_MODEL_FROM_DATABASE=RTL-8129 +@@ -27603,7 +27900,7 @@ pci:v000010ECd00008138sv000010ECsd00008138* + ID_MODEL_FROM_DATABASE=RT8139 (B/C) Fast Ethernet Adapter + + pci:v000010ECd00008139* +- ID_MODEL_FROM_DATABASE=RTL-8139/8139C/8139C+ ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter + + pci:v000010ECd00008139sv00000357sd0000000A* + ID_MODEL_FROM_DATABASE=TTP-Monitoring Card V2.0 +@@ -27638,11 +27935,14 @@ pci:v000010ECd00008139sv00001071sd00008160* + pci:v000010ECd00008139sv000010BDsd00000320* + ID_MODEL_FROM_DATABASE=EP-320X-R + ++pci:v000010ECd00008139sv000010ECsd00008139* ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter ++ + pci:v000010ECd00008139sv000010F7sd00008338* + ID_MODEL_FROM_DATABASE=Panasonic CF-Y5 laptop + + pci:v000010ECd00008139sv00001113sd0000EC01* +- ID_MODEL_FROM_DATABASE=FNC-0107TX ++ ID_MODEL_FROM_DATABASE=LevelOne FNC-0107TX/FNC-0109TX + + pci:v000010ECd00008139sv00001186sd00001300* + ID_MODEL_FROM_DATABASE=DFE-538TX +@@ -27734,6 +28034,9 @@ pci:v000010ECd00008139sv0000187Esd00003303* + pci:v000010ECd00008139sv00001904sd00008139* + ID_MODEL_FROM_DATABASE=RTL8139D Fast Ethernet Adapter + ++pci:v000010ECd00008139sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v000010ECd00008139sv00002646sd00000001* + ID_MODEL_FROM_DATABASE=KNE120TX + +@@ -27779,6 +28082,9 @@ pci:v000010ECd00008168sv0000103Csd00001611* + pci:v000010ECd00008168sv0000103Csd00001950* + ID_MODEL_FROM_DATABASE=ProBook 450/455 + ++pci:v000010ECd00008168sv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v000010ECd00008168sv00001043sd000011F5* + ID_MODEL_FROM_DATABASE=A6J-Q008 + +@@ -27815,6 +28121,9 @@ pci:v000010ECd00008168sv00001462sd0000238C* + pci:v000010ECd00008168sv00001462sd0000368C* + ID_MODEL_FROM_DATABASE=K9AG Neo2 + ++pci:v000010ECd00008168sv00001462sd00004180* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v000010ECd00008168sv00001462sd00007522* + ID_MODEL_FROM_DATABASE=X58 Pro-E + +@@ -27894,10 +28203,10 @@ pci:v000010ECd00008176sv00001A3Bsd00001139* + ID_MODEL_FROM_DATABASE=AW-NE139H Half-size Mini PCIe Card + + pci:v000010ECd00008177* +- ID_MODEL_FROM_DATABASE=RTL8188CE 802.11b/g/n WiFi Adapter ++ ID_MODEL_FROM_DATABASE=RTL8191CE PCIe Wireless Network Adapter + + pci:v000010ECd00008178* +- ID_MODEL_FROM_DATABASE=RTL8188CE 802.11b/g/n WiFi Adapter ++ ID_MODEL_FROM_DATABASE=RTL8192CE PCIe Wireless Network Adapter + + pci:v000010ECd00008179* + ID_MODEL_FROM_DATABASE=RTL8188EE Wireless Network Adapter +@@ -27914,11 +28223,14 @@ pci:v000010ECd00008180sv00001737sd00000019* + pci:v000010ECd00008185* + ID_MODEL_FROM_DATABASE=RTL-8185 IEEE 802.11a/b/g Wireless LAN Controller + ++pci:v000010ECd0000818B* ++ ID_MODEL_FROM_DATABASE=RTL8192EE PCIe Wireless Network Adapter ++ + pci:v000010ECd00008190* +- ID_MODEL_FROM_DATABASE=RTL8190 802.11n Wireless LAN ++ ID_MODEL_FROM_DATABASE=RTL8190 802.11n PCI Wireless Network Adapter + + pci:v000010ECd00008191* +- ID_MODEL_FROM_DATABASE=RTL8188CE 802.11b/g/n WiFi Adapter ++ ID_MODEL_FROM_DATABASE=RTL8192CE PCIe Wireless Network Adapter + + pci:v000010ECd00008192* + ID_MODEL_FROM_DATABASE=RTL8192E/RTL8192SE Wireless LAN Controller +@@ -27938,6 +28250,15 @@ pci:v000010ECd00008199sv00001462sd00006894* + pci:v000010ECd00008723* + ID_MODEL_FROM_DATABASE=RTL8723AE PCIe Wireless Network Adapter + ++pci:v000010ECd00008812* ++ ID_MODEL_FROM_DATABASE=RTL8812AE 802.11ac PCIe Wireless Network Adapter ++ ++pci:v000010ECd00008813* ++ ID_MODEL_FROM_DATABASE=RTL8813AE 802.11ac PCIe Wireless Network Adapter ++ ++pci:v000010ECd00008821* ++ ID_MODEL_FROM_DATABASE=RTL8821AE 802.11ac PCIe Wireless Network Adapter ++ + pci:v000010ECd0000B723* + ID_MODEL_FROM_DATABASE=RTL8723BE PCIe Wireless Network Adapter + +@@ -28211,6 +28532,9 @@ pci:v00001102d00000004sv00001102sd00000058* + pci:v00001102d00000004sv00001102sd00001002* + ID_MODEL_FROM_DATABASE=SB Audigy2 Platinum + ++pci:v00001102d00000004sv00001102sd00001003* ++ ID_MODEL_FROM_DATABASE=SB0350 Audigy 2 ++ + pci:v00001102d00000004sv00001102sd00001007* + ID_MODEL_FROM_DATABASE=SB0240 Audigy 2 Platinum 6.1 + +@@ -28436,6 +28760,9 @@ pci:v00001103d00001742* + pci:v00001103d00002210* + ID_MODEL_FROM_DATABASE=RocketRAID 2210 SATA-II Controller + ++pci:v00001103d00002210sv000011ABsd000011AB* ++ ID_MODEL_FROM_DATABASE=88SX6042 ++ + pci:v00001103d00002300* + ID_MODEL_FROM_DATABASE=RocketRAID 230x 4 Port SATA-II Controller + +@@ -28635,7 +28962,7 @@ pci:v00001106d00000415* + ID_MODEL_FROM_DATABASE=VT6415 PATA IDE Host Controller + + pci:v00001106d00000415sv00001043sd0000838F* +- ID_MODEL_FROM_DATABASE=M5A88-V EVO ++ ID_MODEL_FROM_DATABASE=Motherboard + + pci:v00001106d00000501* + ID_MODEL_FROM_DATABASE=VT8501 [Apollo MVP4] +@@ -29033,6 +29360,9 @@ pci:v00001106d00003038sv00001849sd00003038* + pci:v00001106d00003038sv000019DAsd0000A179* + ID_MODEL_FROM_DATABASE=ZBOX nano VD01 + ++pci:v00001106d00003038sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00001106d00003040* + ID_MODEL_FROM_DATABASE=VT82C586B ACPI + +@@ -29591,6 +29921,9 @@ pci:v00001106d00003238* + pci:v00001106d00003249* + ID_MODEL_FROM_DATABASE=VT6421 IDE/SATA Controller + ++pci:v00001106d00003249sv00001106sd00003249* ++ ID_MODEL_FROM_DATABASE=VT6421 IDE/SATA Controller ++ + pci:v00001106d0000324A* + ID_MODEL_FROM_DATABASE=CX700/VX700 PCI to PCI Bridge + +@@ -30180,7 +30513,7 @@ pci:v00001109d00001400* + ID_MODEL_FROM_DATABASE=EM110TX [EX110TX] + + pci:v0000110A* +- ID_VENDOR_FROM_DATABASE=Siemens Nixdorf AG ++ ID_VENDOR_FROM_DATABASE=Siemens AG + + pci:v0000110Ad00000002* + ID_MODEL_FROM_DATABASE=Pirahna 2-port +@@ -30216,20 +30549,56 @@ pci:v0000110Ad00002104* + ID_MODEL_FROM_DATABASE=Eicon Diva 2.02 compatible passive ISDN card + + pci:v0000110Ad00003141* +- ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5611 (Profibus Adapter) ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5611 / 5621 + + pci:v0000110Ad00003142* +- ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5613A1 (Profibus Adapter) ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5613 / 5614 ++ ++pci:v0000110Ad00003143* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 1613 + + pci:v0000110Ad00004021* + ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5512 (Profibus and MPI Cardbus Adapter) + + pci:v0000110Ad00004029* +- ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5613A2 (Profibus Adapter) ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5614 A2 ++ ++pci:v0000110Ad00004029sv0000110Asd00004029* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5613 A2 ++ ++pci:v0000110Ad00004029sv0000110Asd0000C029* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5614 A2 + + pci:v0000110Ad00004035* + ID_MODEL_FROM_DATABASE=SIMATIC NET CP 1613 A2 + ++pci:v0000110Ad00004036* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 1616 ++ ++pci:v0000110Ad00004038* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 1604 ++ ++pci:v0000110Ad00004069* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5623 ++ ++pci:v0000110Ad00004069sv0000110Asd0000C069* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5624 ++ ++pci:v0000110Ad0000407C* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5612 ++ ++pci:v0000110Ad0000407D* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5613 A3 ++ ++pci:v0000110Ad0000407E* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5622 ++ ++pci:v0000110Ad00004083* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5614 A3 ++ ++pci:v0000110Ad00004084* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 1626 ++ + pci:v0000110Ad00004942* + ID_MODEL_FROM_DATABASE=FPGA I-Bus Tracer for MBD + +@@ -31244,9 +31613,24 @@ pci:v00001131d00007133sv00005ACEsd00006290* + pci:v00001131d00007133sv00005ACEsd00007090* + ID_MODEL_FROM_DATABASE=Behold TV A7 + ++pci:v00001131d00007133sv00005ACEsd00007150* ++ ID_MODEL_FROM_DATABASE=Behold TV H75 ++ ++pci:v00001131d00007133sv00005ACEsd00007151* ++ ID_MODEL_FROM_DATABASE=Behold TV H75 ++ + pci:v00001131d00007133sv00005ACEsd00007190* + ID_MODEL_FROM_DATABASE=Behold TV H7 + ++pci:v00001131d00007133sv00005ACEsd00007191* ++ ID_MODEL_FROM_DATABASE=Behold TV H7 ++ ++pci:v00001131d00007133sv00005ACEsd00007290* ++ ID_MODEL_FROM_DATABASE=Behold TV T7 ++ ++pci:v00001131d00007133sv00005ACEsd00007591* ++ ID_MODEL_FROM_DATABASE=Behold TV X7 ++ + pci:v00001131d00007133sv00005ACEsd00007595* + ID_MODEL_FROM_DATABASE=Behold TV X7 + +@@ -31553,9 +31937,30 @@ pci:v00001131d00007231* + pci:v00001131d00007231sv00005ACEsd00008000* + ID_MODEL_FROM_DATABASE=Behold TV H8 + ++pci:v00001131d00007231sv00005ACEsd00008001* ++ ID_MODEL_FROM_DATABASE=Behold TV H8 ++ ++pci:v00001131d00007231sv00005ACEsd00008050* ++ ID_MODEL_FROM_DATABASE=Behold TV H85 ++ ++pci:v00001131d00007231sv00005ACEsd00008051* ++ ID_MODEL_FROM_DATABASE=Behold TV H85 ++ + pci:v00001131d00007231sv00005ACEsd00008100* + ID_MODEL_FROM_DATABASE=Behold TV A8 + ++pci:v00001131d00007231sv00005ACEsd00008101* ++ ID_MODEL_FROM_DATABASE=Behold TV A8 ++ ++pci:v00001131d00007231sv00005ACEsd00008150* ++ ID_MODEL_FROM_DATABASE=Behold TV A85 ++ ++pci:v00001131d00007231sv00005ACEsd00008151* ++ ID_MODEL_FROM_DATABASE=Behold TV A85 ++ ++pci:v00001131d00007231sv00005ACEsd00008201* ++ ID_MODEL_FROM_DATABASE=Behold TV T8 ++ + pci:v00001131d00009730* + ID_MODEL_FROM_DATABASE=SAA9730 Integrated Multimedia and Peripheral Controller + +@@ -35042,6 +35447,9 @@ pci:v000011C1d00005811* + pci:v000011C1d00005811sv0000103Csd00002A34* + ID_MODEL_FROM_DATABASE=Pavilion a1677c + ++pci:v000011C1d00005811sv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v000011C1d00005811sv0000103Csd00002A9E* + ID_MODEL_FROM_DATABASE=Pavilion p6310f + +@@ -35858,6 +36266,9 @@ pci:v00001217d00008330sv00001028sd000004A3* + pci:v00001217d00008331* + ID_MODEL_FROM_DATABASE=O2 Flash Memory Card + ++pci:v00001217d00008520* ++ ID_MODEL_FROM_DATABASE=SD/MMC Card Reader Controller ++ + pci:v00001218* + ID_VENDOR_FROM_DATABASE=Hybricon Corp. + +@@ -36852,7 +37263,7 @@ pci:v00001274d00001171* + ID_MODEL_FROM_DATABASE=ES1373 [AudioPCI] (also Creative Labs CT5803) + + pci:v00001274d00001371* +- ID_MODEL_FROM_DATABASE=ES1371 [AudioPCI-97] ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] + + pci:v00001274d00001371sv00000E11sd00000024* + ID_MODEL_FROM_DATABASE=AudioPCI on Motherboard Compaq Deskpro +@@ -36870,7 +37281,7 @@ pci:v00001274d00001371sv0000107Bsd00008054* + ID_MODEL_FROM_DATABASE=Tabor2 + + pci:v00001274d00001371sv00001274sd00001371* +- ID_MODEL_FROM_DATABASE=Creative Sound Blaster AudioPCI64V, AudioPCI128 ++ ID_MODEL_FROM_DATABASE=AudioPCI 64V/128 / Creative Sound Blaster CT4810 + + pci:v00001274d00001371sv00001274sd00008001* + ID_MODEL_FROM_DATABASE=CT4751 board +@@ -41858,12 +42269,24 @@ pci:v00001425d00005013* + pci:v00001425d00005014* + ID_MODEL_FROM_DATABASE=T580-LP-SO-CR Unified Wire Ethernet Controller + ++pci:v00001425d00005015* ++ ID_MODEL_FROM_DATABASE=T502-BT Unified Wire Ethernet Controller ++ + pci:v00001425d00005080* + ID_MODEL_FROM_DATABASE=T540-5080 Unified Wire Ethernet Controller + + pci:v00001425d00005081* + ID_MODEL_FROM_DATABASE=T540-5081 Unified Wire Ethernet Controller + ++pci:v00001425d00005083* ++ ID_MODEL_FROM_DATABASE=T540-5083 Unified Wire Ethernet Controller ++ ++pci:v00001425d00005084* ++ ID_MODEL_FROM_DATABASE=T580-5084 Unified Wire Ethernet Controller ++ ++pci:v00001425d00005085* ++ ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Ethernet Controller ++ + pci:v00001425d00005401* + ID_MODEL_FROM_DATABASE=T520-CR Unified Wire Ethernet Controller + +@@ -41924,12 +42347,24 @@ pci:v00001425d00005413* + pci:v00001425d00005414* + ID_MODEL_FROM_DATABASE=T580-LP-SO-CR Unified Wire Ethernet Controller + ++pci:v00001425d00005415* ++ ID_MODEL_FROM_DATABASE=T502-BT Unified Wire Ethernet Controller ++ + pci:v00001425d00005480* + ID_MODEL_FROM_DATABASE=T540-5080 Unified Wire Ethernet Controller + + pci:v00001425d00005481* + ID_MODEL_FROM_DATABASE=T540-5081 Unified Wire Ethernet Controller + ++pci:v00001425d00005483* ++ ID_MODEL_FROM_DATABASE=T540-5083 Unified Wire Ethernet Controller ++ ++pci:v00001425d00005484* ++ ID_MODEL_FROM_DATABASE=T580-5084 Unified Wire Ethernet Controller ++ ++pci:v00001425d00005485* ++ ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Ethernet Controller ++ + pci:v00001425d00005501* + ID_MODEL_FROM_DATABASE=T520-CR Unified Wire Storage Controller + +@@ -41990,12 +42425,24 @@ pci:v00001425d00005513* + pci:v00001425d00005514* + ID_MODEL_FROM_DATABASE=T580-LP-SO-CR Unified Wire Storage Controller + ++pci:v00001425d00005515* ++ ID_MODEL_FROM_DATABASE=T502-BT Unified Wire Storage Controller ++ + pci:v00001425d00005580* + ID_MODEL_FROM_DATABASE=T540-5080 Unified Wire Storage Controller + + pci:v00001425d00005581* + ID_MODEL_FROM_DATABASE=T540-5081 Unified Wire Storage Controller + ++pci:v00001425d00005583* ++ ID_MODEL_FROM_DATABASE=T540-5083 Unified Wire Storage Controller ++ ++pci:v00001425d00005584* ++ ID_MODEL_FROM_DATABASE=T580-5084 Unified Wire Storage Controller ++ ++pci:v00001425d00005585* ++ ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Storage Controller ++ + pci:v00001425d00005601* + ID_MODEL_FROM_DATABASE=T520-CR Unified Wire Storage Controller + +@@ -42056,12 +42503,24 @@ pci:v00001425d00005613* + pci:v00001425d00005614* + ID_MODEL_FROM_DATABASE=T580-LP-SO-CR Unified Wire Storage Controller + ++pci:v00001425d00005615* ++ ID_MODEL_FROM_DATABASE=T502-BT Unified Wire Storage Controller ++ + pci:v00001425d00005680* + ID_MODEL_FROM_DATABASE=T540-5080 Unified Wire Storage Controller + + pci:v00001425d00005681* + ID_MODEL_FROM_DATABASE=T540-5081 Unified Wire Storage Controller + ++pci:v00001425d00005683* ++ ID_MODEL_FROM_DATABASE=T540-5083 Unified Wire Storage Controller ++ ++pci:v00001425d00005684* ++ ID_MODEL_FROM_DATABASE=T580-5084 Unified Wire Storage Controller ++ ++pci:v00001425d00005685* ++ ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Storage Controller ++ + pci:v00001425d00005701* + ID_MODEL_FROM_DATABASE=T520-CR Unified Wire Ethernet Controller + +@@ -42122,12 +42581,24 @@ pci:v00001425d00005713* + pci:v00001425d00005714* + ID_MODEL_FROM_DATABASE=T580-LP-SO-CR Unified Wire Ethernet Controller + ++pci:v00001425d00005715* ++ ID_MODEL_FROM_DATABASE=T502-BT Unified Wire Ethernet Controller ++ + pci:v00001425d00005780* + ID_MODEL_FROM_DATABASE=T540-5080 Unified Wire Ethernet Controller + + pci:v00001425d00005781* + ID_MODEL_FROM_DATABASE=T540-5081 Unified Wire Ethernet Controller + ++pci:v00001425d00005783* ++ ID_MODEL_FROM_DATABASE=T540-5083 Unified Wire Ethernet Controller ++ ++pci:v00001425d00005784* ++ ID_MODEL_FROM_DATABASE=T580-5084 Unified Wire Ethernet Controller ++ ++pci:v00001425d00005785* ++ ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Ethernet Controller ++ + pci:v00001425d00005801* + ID_MODEL_FROM_DATABASE=T520-CR Unified Wire Ethernet Controller + +@@ -42188,12 +42659,24 @@ pci:v00001425d00005813* + pci:v00001425d00005814* + ID_MODEL_FROM_DATABASE=T580-LP-SO-CR Unified Wire Ethernet Controller + ++pci:v00001425d00005815* ++ ID_MODEL_FROM_DATABASE=T502-BT Unified Wire Ethernet Controller ++ + pci:v00001425d00005880* + ID_MODEL_FROM_DATABASE=T540-5080 Unified Wire Ethernet Controller + + pci:v00001425d00005881* + ID_MODEL_FROM_DATABASE=T540-5081 Unified Wire Ethernet Controller + ++pci:v00001425d00005883* ++ ID_MODEL_FROM_DATABASE=T540-5083 Unified Wire Ethernet Controller ++ ++pci:v00001425d00005884* ++ ID_MODEL_FROM_DATABASE=T580-5084 Unified Wire Ethernet Controller ++ ++pci:v00001425d00005885* ++ ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Ethernet Controller ++ + pci:v00001425d0000A000* + ID_MODEL_FROM_DATABASE=PE10K Unified Wire Ethernet Controller + +@@ -42483,7 +42966,7 @@ pci:v00001461d0000F436* + ID_MODEL_FROM_DATABASE=AVerTV Hybrid+FM + + pci:v00001462* +- ID_VENDOR_FROM_DATABASE=Micro-Star International Co., Ltd. ++ ID_VENDOR_FROM_DATABASE=Micro-Star International Co., Ltd. [MSI] + + pci:v00001463* + ID_VENDOR_FROM_DATABASE=Fast Corporation +@@ -43847,6 +44330,33 @@ pci:v000014E4d0000168E* + pci:v000014E4d0000168Esv0000103Csd00001798* + ID_MODEL_FROM_DATABASE=Flex-10 10Gb 2-port 530FLB Adapter [Meru] + ++pci:v000014E4d0000168Esv0000103Csd000017A5* ++ ID_MODEL_FROM_DATABASE=HP Flex-10 10Gb 2-port 530M Adapter ++ ++pci:v000014E4d0000168Esv0000103Csd000018D3* ++ ID_MODEL_FROM_DATABASE=HP Ethernet 10Gb 2-port 530T Adapter ++ ++pci:v000014E4d0000168Esv0000103Csd00001930* ++ ID_MODEL_FROM_DATABASE=HP FlexFabric 10Gb 2-port 534FLR-SFP+ Adapter ++ ++pci:v000014E4d0000168Esv0000103Csd00001931* ++ ID_MODEL_FROM_DATABASE=HP StoreFabric CN1100R Dual Port Converged Network Adapter ++ ++pci:v000014E4d0000168Esv0000103Csd00001932* ++ ID_MODEL_FROM_DATABASE=HP FlexFabric 10Gb 2-port 534FLB Adapter ++ ++pci:v000014E4d0000168Esv0000103Csd00001933* ++ ID_MODEL_FROM_DATABASE=HP FlexFabric 10Gb 2-port 534M Adapter ++ ++pci:v000014E4d0000168Esv0000103Csd0000193A* ++ ID_MODEL_FROM_DATABASE=HP FlexFabric 10Gb 2-port 533FLR-T Adapter ++ ++pci:v000014E4d0000168Esv0000103Csd00003382* ++ ID_MODEL_FROM_DATABASE=HP Ethernet 10Gb 2-port 530FLR-SFP+ Adapter ++ ++pci:v000014E4d0000168Esv0000103Csd0000339D* ++ ID_MODEL_FROM_DATABASE=HP Ethernet 10Gb 2-port 530SFP+ Adapter ++ + pci:v000014E4d00001690* + ID_MODEL_FROM_DATABASE=NetXtreme BCM57760 Gigabit Ethernet PCIe + +@@ -43922,9 +44432,21 @@ pci:v000014E4d000016A1* + pci:v000014E4d000016A2* + ID_MODEL_FROM_DATABASE=BCM57840 NetXtreme II 10/20-Gigabit Ethernet + ++pci:v000014E4d000016A2sv0000103Csd00001916* ++ ID_MODEL_FROM_DATABASE=HP FlexFabric 20Gb 2-port 630FLB Adapter ++ ++pci:v000014E4d000016A2sv0000103Csd00001917* ++ ID_MODEL_FROM_DATABASE=HP FlexFabric 20Gb 2-port 630M Adapter ++ + pci:v000014E4d000016A4* + ID_MODEL_FROM_DATABASE=BCM57840 NetXtreme II Ethernet Multi Function + ++pci:v000014E4d000016A4sv0000103Csd00001916* ++ ID_MODEL_FROM_DATABASE=HP NPAR 20Gb 2-port 630FLB Adapter ++ ++pci:v000014E4d000016A4sv0000103Csd00001917* ++ ID_MODEL_FROM_DATABASE=HP NPAR 20Gb 2-port 630M Adapter ++ + pci:v000014E4d000016A5* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1/10 Gigabit Ethernet Multi Function + +@@ -44048,12 +44570,78 @@ pci:v000014E4d000016ACsv0000103Csd0000703D* + pci:v000014E4d000016AD* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM57840 10/20 Gigabit Ethernet Virtual Function + ++pci:v000014E4d000016ADsv0000103Csd00001916* ++ ID_MODEL_FROM_DATABASE=HP FlexFabric 20Gb 2-port 630FLB Adapter ++ ++pci:v000014E4d000016ADsv0000103Csd00001917* ++ ID_MODEL_FROM_DATABASE=HP FlexFabric 20Gb 2-port 630M Adapter ++ + pci:v000014E4d000016AE* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Multi Function + ++pci:v000014E4d000016AEsv0000103Csd00001798* ++ ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 530FLB Adapter ++ ++pci:v000014E4d000016AEsv0000103Csd000017A5* ++ ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 530M Adapter ++ ++pci:v000014E4d000016AEsv0000103Csd000018D3* ++ ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 530T Adapter ++ ++pci:v000014E4d000016AEsv0000103Csd00001930* ++ ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 534FLR-SFP+ Adapter ++ ++pci:v000014E4d000016AEsv0000103Csd00001931* ++ ID_MODEL_FROM_DATABASE=HP NPAR CN1100R Dual Port Converged Network Adapter ++ ++pci:v000014E4d000016AEsv0000103Csd00001932* ++ ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 534FLB Adapter ++ ++pci:v000014E4d000016AEsv0000103Csd00001933* ++ ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 534M Adapter ++ ++pci:v000014E4d000016AEsv0000103Csd0000193A* ++ ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 533FLR-T Adapter ++ ++pci:v000014E4d000016AEsv0000103Csd00003382* ++ ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 530FLR-SFP+ Adapter ++ ++pci:v000014E4d000016AEsv0000103Csd0000339D* ++ ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 530SFP+ Adapter ++ + pci:v000014E4d000016AF* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Virtual Function + ++pci:v000014E4d000016AFsv0000103Csd00001798* ++ ID_MODEL_FROM_DATABASE=HP Flex-10 10Gb 2-port 530FLB Adapter ++ ++pci:v000014E4d000016AFsv0000103Csd000017A5* ++ ID_MODEL_FROM_DATABASE=HP Flex-10 10Gb 2-port 530M Adapter ++ ++pci:v000014E4d000016AFsv0000103Csd000018D3* ++ ID_MODEL_FROM_DATABASE=HP Ethernet 10Gb 2-port 530T Adapter ++ ++pci:v000014E4d000016AFsv0000103Csd00001930* ++ ID_MODEL_FROM_DATABASE=HP FlexFabric 10Gb 2-port 534FLR-SFP+ Adapter ++ ++pci:v000014E4d000016AFsv0000103Csd00001931* ++ ID_MODEL_FROM_DATABASE=HP StoreFabric CN1100R Dual Port Converged Network Adapter ++ ++pci:v000014E4d000016AFsv0000103Csd00001932* ++ ID_MODEL_FROM_DATABASE=HP FlexFabric 10Gb 2-port 534FLB Adapter ++ ++pci:v000014E4d000016AFsv0000103Csd00001933* ++ ID_MODEL_FROM_DATABASE=HP FlexFabric 10Gb 2-port 534M Adapter ++ ++pci:v000014E4d000016AFsv0000103Csd0000193A* ++ ID_MODEL_FROM_DATABASE=HP FlexFabric 10Gb 2-port 533FLR-T Adapter ++ ++pci:v000014E4d000016AFsv0000103Csd00003382* ++ ID_MODEL_FROM_DATABASE=HP Ethernet 10Gb 2-port 530FLR-SFP+ Adapter ++ ++pci:v000014E4d000016AFsv0000103Csd0000339D* ++ ID_MODEL_FROM_DATABASE=HP Ethernet 10Gb 2-port 530SFP+ Adapter ++ + pci:v000014E4d000016B0* + ID_MODEL_FROM_DATABASE=NetXtreme BCM57761 Gigabit Ethernet PCIe + +@@ -49484,6 +50072,9 @@ pci:v00001814d0000539F* + pci:v00001814d0000539Fsv0000103Csd00001637* + ID_MODEL_FROM_DATABASE=Pavilion DM1Z-3000 PCIe wireless card + ++pci:v00001814d00005592* ++ ID_MODEL_FROM_DATABASE=RT5592 PCIe Wireless Network Adapter ++ + pci:v00001814d0000E932* + ID_MODEL_FROM_DATABASE=RT2560F 802.11 b/g PCI + +@@ -50480,6 +51071,12 @@ pci:v0000193Fd00000367* + pci:v0000193Fd00000370* + ID_MODEL_FROM_DATABASE=AHA370-PCIe + ++pci:v0000193Fd00003641* ++ ID_MODEL_FROM_DATABASE=AHA3641 ++ ++pci:v0000193Fd00003642* ++ ID_MODEL_FROM_DATABASE=AHA3642 ++ + pci:v00001942* + ID_VENDOR_FROM_DATABASE=ClearSpeed Technology plc + +@@ -50633,6 +51230,9 @@ pci:v00001957d00000084* + pci:v00001957d00000085* + ID_MODEL_FROM_DATABASE=MPC8347 PBGA + ++pci:v00001957d00000085sv0000110Asd00004046* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 1623 ++ + pci:v00001957d00000086* + ID_MODEL_FROM_DATABASE=MPC8343E + +@@ -51095,6 +51695,9 @@ pci:v000019A2d00000710sv0000103Csd00003341* + pci:v000019A2d00000710sv0000103Csd00003345* + ID_MODEL_FROM_DATABASE=NC553m 10Gb 2-port FlexFabric Converged Network Adapter + ++pci:v000019A2d00000710sv0000103Csd0000337B* ++ ID_MODEL_FROM_DATABASE=NC554FLB 10Gb 2-port FlexFabric Converged Network Adapter ++ + pci:v000019A2d00000712* + ID_MODEL_FROM_DATABASE=OneConnect 10Gb iSCSI Initiator (be3) + +@@ -51104,6 +51707,9 @@ pci:v000019A2d00000714* + pci:v000019A2d00000714sv0000103Csd00003315* + ID_MODEL_FROM_DATABASE=NC553i 10Gb 2-port FlexFabric Converged Network Adapter + ++pci:v000019A2d00000714sv0000103Csd0000337B* ++ ID_MODEL_FROM_DATABASE=NC554FLB 10Gb 2-port FlexFabric Converged Network Adapter ++ + pci:v000019A8* + ID_VENDOR_FROM_DATABASE=DAQDATA GmbH + +@@ -51236,6 +51842,9 @@ pci:v00001A22* + pci:v00001A29* + ID_VENDOR_FROM_DATABASE=Fortinet, Inc. + ++pci:v00001A29d00004338* ++ ID_MODEL_FROM_DATABASE=CP8 Content Processor ASIC ++ + pci:v00001A2B* + ID_VENDOR_FROM_DATABASE=Ascom AG + +@@ -51605,6 +52214,12 @@ pci:v00001AF4d00001005* + pci:v00001AF4d00001009* + ID_MODEL_FROM_DATABASE=Virtio filesystem + ++pci:v00001AF4d00001110* ++ ID_MODEL_FROM_DATABASE=Virtio Inter-VM shared memory ++ ++pci:v00001AF4d00001110sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00001AF5* + ID_VENDOR_FROM_DATABASE=Netezza Corp. + +@@ -51647,6 +52262,9 @@ pci:v00001B21d00000612sv00001849sd00000612* + pci:v00001B21d00001042* + ID_MODEL_FROM_DATABASE=ASM1042 SuperSpeed USB Host Controller + ++pci:v00001B21d00001042sv00001043sd00008488* ++ ID_MODEL_FROM_DATABASE=P8B WS Motherboard ++ + pci:v00001B21d00001042sv00001849sd00001042* + ID_MODEL_FROM_DATABASE=Motherboard + +@@ -51662,6 +52280,39 @@ pci:v00001B2C* + pci:v00001B36* + ID_VENDOR_FROM_DATABASE=Red Hat, Inc. + ++pci:v00001B36d00000001* ++ ID_MODEL_FROM_DATABASE=QEMU PCI-PCI bridge ++ ++pci:v00001B36d00000002* ++ ID_MODEL_FROM_DATABASE=QEMU PCI 16550A Adapter ++ ++pci:v00001B36d00000002sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ++pci:v00001B36d00000003* ++ ID_MODEL_FROM_DATABASE=QEMU PCI Dual-port 16550A Adapter ++ ++pci:v00001B36d00000003sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ++pci:v00001B36d00000004* ++ ID_MODEL_FROM_DATABASE=QEMU PCI Quad-port 16550A Adapter ++ ++pci:v00001B36d00000004sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ++pci:v00001B36d00000005* ++ ID_MODEL_FROM_DATABASE=QEMU PCI Test Device ++ ++pci:v00001B36d00000005sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ++pci:v00001B36d00000100* ++ ID_MODEL_FROM_DATABASE=QXL paravirtual graphic card ++ ++pci:v00001B36d00000100sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00001B37* + ID_VENDOR_FROM_DATABASE=Signal Processing Devices Sweden AB + +@@ -51725,6 +52376,9 @@ pci:v00001B4Bd00009130sv00001043sd00008438* + pci:v00001B4Bd00009172* + ID_MODEL_FROM_DATABASE=88SE9172 SATA 6Gb/s Controller + ++pci:v00001B4Bd00009178* ++ ID_MODEL_FROM_DATABASE=88SE9170 PCIe SATA 6Gb/s Controller ++ + pci:v00001B4Bd0000917A* + ID_MODEL_FROM_DATABASE=88SE9172 SATA III 6Gb/s RAID Controller + +@@ -51875,6 +52529,9 @@ pci:v00001BBFd00000004* + pci:v00001BF4* + ID_VENDOR_FROM_DATABASE=VTI Instruments Corporation + ++pci:v00001BF4d00000001* ++ ID_MODEL_FROM_DATABASE=SentinelEX ++ + pci:v00001BFD* + ID_VENDOR_FROM_DATABASE=EeeTOP + +@@ -51902,6 +52559,18 @@ pci:v00001C2Cd000000A1* + pci:v00001C2Cd000000A2* + ID_MODEL_FROM_DATABASE=FBC8XG Capture 8x10Gb + ++pci:v00001C2Cd000000A3* ++ ID_MODEL_FROM_DATABASE=FBC2XG Capture 2x10Gb ++ ++pci:v00001C2Cd000000A4* ++ ID_MODEL_FROM_DATABASE=FBC4XGG3 Capture 4x10Gb ++ ++pci:v00001C2Cd000000A5* ++ ID_MODEL_FROM_DATABASE=FBC2XLG Capture 2x40Gb ++ ++pci:v00001C2Cd000000A6* ++ ID_MODEL_FROM_DATABASE=FBC1CG Capture 1x100Gb ++ + pci:v00001C32* + ID_VENDOR_FROM_DATABASE=Highland Technology, Inc. + +@@ -53970,7 +54639,7 @@ pci:v00008086d00000100sv00001028sd000004AA* + ID_MODEL_FROM_DATABASE=XPS 8300 + + pci:v00008086d00000100sv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8P67 Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=P8P67/P8H67 Series Motherboard + + pci:v00008086d00000101* + ID_MODEL_FROM_DATABASE=Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port +@@ -53987,6 +54656,9 @@ pci:v00008086d00000102* + pci:v00008086d00000102sv00001028sd000004AA* + ID_MODEL_FROM_DATABASE=XPS 8300 + ++pci:v00008086d00000102sv00001043sd00000102* ++ ID_MODEL_FROM_DATABASE=P8H67 Series Motherboard ++ + pci:v00008086d00000104* + ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family DRAM Controller + +@@ -54065,9 +54737,15 @@ pci:v00008086d00000151* + pci:v00008086d00000151sv00001043sd00001477* + ID_MODEL_FROM_DATABASE=N56VZ + ++pci:v00008086d00000151sv00001043sd0000844D* ++ ID_MODEL_FROM_DATABASE=P8 series motherboard ++ + pci:v00008086d00000151sv00001043sd000084CA* + ID_MODEL_FROM_DATABASE=P8H77-I Motherboard + ++pci:v00008086d00000151sv00008086sd00002010* ++ ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ + pci:v00008086d00000152* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller + +@@ -54098,12 +54776,21 @@ pci:v00008086d00000154sv00001043sd00001517* + pci:v00008086d00000155* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port + ++pci:v00008086d00000155sv00008086sd00002010* ++ ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ + pci:v00008086d00000156* + ID_MODEL_FROM_DATABASE=3rd Gen Core processor Graphics Controller + + pci:v00008086d00000158* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/Ivy Bridge DRAM Controller + ++pci:v00008086d00000158sv00001043sd0000844D* ++ ID_MODEL_FROM_DATABASE=P8 series motherboard ++ ++pci:v00008086d00000158sv00008086sd00002010* ++ ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ + pci:v00008086d00000159* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port + +@@ -54116,6 +54803,9 @@ pci:v00008086d0000015C* + pci:v00008086d0000015D* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port + ++pci:v00008086d0000015Dsv00001043sd0000844D* ++ ID_MODEL_FROM_DATABASE=P8 series motherboard ++ + pci:v00008086d0000015E* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller + +@@ -54137,6 +54827,9 @@ pci:v00008086d00000166sv00001043sd00002103* + pci:v00008086d0000016A* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller + ++pci:v00008086d0000016Asv00001043sd0000844D* ++ ID_MODEL_FROM_DATABASE=P8B WS Motherboard ++ + pci:v00008086d00000172* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller + +@@ -54753,7 +55446,7 @@ pci:v00008086d0000095Asv00008086sd00005002* + ID_MODEL_FROM_DATABASE=Wireless-N 7265 + + pci:v00008086d0000095Asv00008086sd0000500A* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7265 + + pci:v00008086d0000095Asv00008086sd00005010* + ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 +@@ -54770,9 +55463,18 @@ pci:v00008086d0000095Asv00008086sd0000502A* + pci:v00008086d0000095Asv00008086sd00005090* + ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 + ++pci:v00008086d0000095Asv00008086sd00005100* ++ ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ++pci:v00008086d0000095Asv00008086sd0000510A* ++ ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ + pci:v00008086d0000095Asv00008086sd00005110* + ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 + ++pci:v00008086d0000095Asv00008086sd00005112* ++ ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ + pci:v00008086d0000095Asv00008086sd00005190* + ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 + +@@ -54794,9 +55496,15 @@ pci:v00008086d0000095Asv00008086sd00005590* + pci:v00008086d0000095Asv00008086sd00009010* + ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 + ++pci:v00008086d0000095Asv00008086sd00009012* ++ ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ + pci:v00008086d0000095Asv00008086sd00009110* + ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 + ++pci:v00008086d0000095Asv00008086sd00009112* ++ ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ + pci:v00008086d0000095Asv00008086sd00009210* + ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 + +@@ -55089,397 +55797,409 @@ pci:v00008086d00000D36* + ID_MODEL_FROM_DATABASE=Crystal Well Integrated Graphics Controller + + pci:v00008086d00000E00* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DMI2 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DMI2 + + pci:v00008086d00000E01* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 PCI Express Root Port in DMI2 Mode ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 PCI Express Root Port in DMI2 Mode + + pci:v00008086d00000E02* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 PCI Express Root Port 1a ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 PCI Express Root Port 1a + + pci:v00008086d00000E03* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 PCI Express Root Port 1b ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 PCI Express Root Port 1b + + pci:v00008086d00000E04* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 PCI Express Root Port 2a ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 PCI Express Root Port 2a + + pci:v00008086d00000E05* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 PCI Express Root Port 2b ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 PCI Express Root Port 2b + + pci:v00008086d00000E06* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 PCI Express Root Port 2c ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 PCI Express Root Port 2c + + pci:v00008086d00000E07* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 PCI Express Root Port 2d ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 PCI Express Root Port 2d + + pci:v00008086d00000E08* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 PCI Express Root Port 3a ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 PCI Express Root Port 3a + + pci:v00008086d00000E09* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 PCI Express Root Port 3b ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 PCI Express Root Port 3b + + pci:v00008086d00000E0A* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 PCI Express Root Port 3c ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 PCI Express Root Port 3c + + pci:v00008086d00000E0B* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 PCI Express Root Port 3d ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 PCI Express Root Port 3d + + pci:v00008086d00000E10* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 IIO Configuration Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 IIO Configuration Registers + + pci:v00008086d00000E13* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 IIO Configuration Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 IIO Configuration Registers + + pci:v00008086d00000E17* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 IIO Configuration Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 IIO Configuration Registers + + pci:v00008086d00000E18* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 IIO Configuration Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 IIO Configuration Registers + + pci:v00008086d00000E1C* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 IIO Configuration Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 IIO Configuration Registers + + pci:v00008086d00000E1D* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 R2PCIe ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 R2PCIe + + pci:v00008086d00000E1E* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 UBOX Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 UBOX Registers + + pci:v00008086d00000E1F* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 UBOX Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 UBOX Registers + + pci:v00008086d00000E20* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Crystal Beach DMA Channel 0 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Crystal Beach DMA Channel 0 + + pci:v00008086d00000E21* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Crystal Beach DMA Channel 1 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Crystal Beach DMA Channel 1 + + pci:v00008086d00000E22* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Crystal Beach DMA Channel 2 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Crystal Beach DMA Channel 2 + + pci:v00008086d00000E23* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Crystal Beach DMA Channel 3 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Crystal Beach DMA Channel 3 + + pci:v00008086d00000E24* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Crystal Beach DMA Channel 4 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Crystal Beach DMA Channel 4 + + pci:v00008086d00000E25* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Crystal Beach DMA Channel 5 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Crystal Beach DMA Channel 5 + + pci:v00008086d00000E26* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Crystal Beach DMA Channel 6 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Crystal Beach DMA Channel 6 + + pci:v00008086d00000E27* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Crystal Beach DMA Channel 7 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Crystal Beach DMA Channel 7 + + pci:v00008086d00000E28* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 VTd/Memory Map/Misc ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 VTd/Memory Map/Misc + + pci:v00008086d00000E29* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Memory Hotplug ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Memory Hotplug + + pci:v00008086d00000E2A* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 IIO RAS ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 IIO RAS + + pci:v00008086d00000E2C* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 IOAPIC ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 IOAPIC + + pci:v00008086d00000E2E* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 CBDMA ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 CBDMA + + pci:v00008086d00000E2F* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 CBDMA ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 CBDMA + + pci:v00008086d00000E30* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Home Agent 0 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Home Agent 0 + + pci:v00008086d00000E32* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Link 0 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Link 0 + + pci:v00008086d00000E33* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Link 1 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Link 1 + + pci:v00008086d00000E34* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 R2PCIe ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 R2PCIe + + pci:v00008086d00000E36* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Ring Performance Ring Monitoring ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Ring Performance Ring Monitoring + + pci:v00008086d00000E37* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Ring Performance Ring Monitoring ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Ring Performance Ring Monitoring + + pci:v00008086d00000E38* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Home Agent 1 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Home Agent 1 + + pci:v00008086d00000E3A* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Link 2 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Link 2 + + pci:v00008086d00000E3E* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Ring Performance Ring Monitoring ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Ring Performance Ring Monitoring + + pci:v00008086d00000E3F* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Ring Performance Ring Monitoring ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Ring Performance Ring Monitoring + + pci:v00008086d00000E40* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Link 2 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Link 2 + + pci:v00008086d00000E41* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Ring Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Ring Registers + + pci:v00008086d00000E43* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Link Reut 2 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Link Reut 2 + + pci:v00008086d00000E44* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Link Reut 2 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Link Reut 2 ++ ++pci:v00008086d00000E45* ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Link Agent Register ++ ++pci:v00008086d00000E47* ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Link Agent Register + + pci:v00008086d00000E60* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Home Agent 1 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Home Agent 1 + + pci:v00008086d00000E68* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 1 Target Address/Thermal Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 1 Target Address/Thermal Registers + + pci:v00008086d00000E6A* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel Target Address Decoder Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel Target Address Decoder Registers + + pci:v00008086d00000E6B* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel Target Address Decoder Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel Target Address Decoder Registers + + pci:v00008086d00000E6C* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel Target Address Decoder Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel Target Address Decoder Registers + + pci:v00008086d00000E6D* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel Target Address Decoder Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel Target Address Decoder Registers + + pci:v00008086d00000E71* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 0 RAS Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 0 RAS Registers + + pci:v00008086d00000E74* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 R2PCIe ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 R2PCIe + + pci:v00008086d00000E75* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 R2PCIe ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 R2PCIe + + pci:v00008086d00000E77* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Ring Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Ring Registers + + pci:v00008086d00000E79* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 1 RAS Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 1 RAS Registers + + pci:v00008086d00000E7D* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 UBOX Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 UBOX Registers + + pci:v00008086d00000E7F* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Ring Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Ring Registers + + pci:v00008086d00000E80* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Link 0 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Link 0 + + pci:v00008086d00000E81* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Ring Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Ring Registers + + pci:v00008086d00000E83* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Link Reut 0 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Link Reut 0 + + pci:v00008086d00000E84* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Link Reut 0 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Link Reut 0 ++ ++pci:v00008086d00000E85* ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Link Agent Register + + pci:v00008086d00000E87* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Registers + + pci:v00008086d00000E90* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Link 1 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Link 1 + + pci:v00008086d00000E93* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Link 1 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Link 1 + + pci:v00008086d00000E94* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 QPI Link Reut 1 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Link Reut 1 ++ ++pci:v00008086d00000E95* ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 QPI Link Agent Register + + pci:v00008086d00000EA0* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Home Agent 0 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Home Agent 0 + + pci:v00008086d00000EA8* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 0 Target Address/Thermal Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 0 Target Address/Thermal Registers + + pci:v00008086d00000EAA* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel Target Address Decoder Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel Target Address Decoder Registers + + pci:v00008086d00000EAB* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel Target Address Decoder Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel Target Address Decoder Registers + + pci:v00008086d00000EAC* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel Target Address Decoder Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel Target Address Decoder Registers + + pci:v00008086d00000EAD* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel Target Address Decoder Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel Target Address Decoder Registers + + pci:v00008086d00000EAE* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO Registers + + pci:v00008086d00000EAF* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO Registers + + pci:v00008086d00000EB0* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel 0-3 Thermal Control 0 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel 0-3 Thermal Control 0 + + pci:v00008086d00000EB1* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel 0-3 Thermal Control 1 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel 0-3 Thermal Control 1 + + pci:v00008086d00000EB2* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel 0-3 ERROR Registers 0 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel 0-3 ERROR Registers 0 + + pci:v00008086d00000EB3* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel 0-3 ERROR Registers 1 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel 0-3 ERROR Registers 1 + + pci:v00008086d00000EB4* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel 0-3 Thermal Control 2 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel 0-3 Thermal Control 2 + + pci:v00008086d00000EB5* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel 0-3 Thermal Control 3 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel 0-3 Thermal Control 3 + + pci:v00008086d00000EB6* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel 0-3 ERROR Registers 2 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel 0-3 ERROR Registers 2 + + pci:v00008086d00000EB7* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel 0-3 ERROR Registers 3 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 1 Channel 0-3 ERROR Registers 3 + + pci:v00008086d00000EBC* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO Registers + + pci:v00008086d00000EBE* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO Registers + + pci:v00008086d00000EBF* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO Registers + + pci:v00008086d00000EC0* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Power Control Unit 0 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Power Control Unit 0 + + pci:v00008086d00000EC1* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Power Control Unit 1 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Power Control Unit 1 + + pci:v00008086d00000EC2* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Power Control Unit 2 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Power Control Unit 2 + + pci:v00008086d00000EC3* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Power Control Unit 3 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Power Control Unit 3 + + pci:v00008086d00000EC4* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Power Control Unit 4 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Power Control Unit 4 + + pci:v00008086d00000EC8* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 System Address Decoder ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 System Address Decoder + + pci:v00008086d00000EC9* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Broadcast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Broadcast Registers + + pci:v00008086d00000ECA* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Broadcast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Broadcast Registers + + pci:v00008086d00000ED8* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO + + pci:v00008086d00000ED9* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO + + pci:v00008086d00000EDC* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO + + pci:v00008086d00000EDD* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO + + pci:v00008086d00000EDE* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO + + pci:v00008086d00000EDF* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO + + pci:v00008086d00000EE0* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Unicast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Unicast Registers + + pci:v00008086d00000EE1* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Unicast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Unicast Registers + + pci:v00008086d00000EE2* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Unicast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Unicast Registers + + pci:v00008086d00000EE3* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Unicast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Unicast Registers + + pci:v00008086d00000EE4* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Unicast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Unicast Registers + + pci:v00008086d00000EE5* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Unicast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Unicast Registers + + pci:v00008086d00000EE6* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Unicast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Unicast Registers + + pci:v00008086d00000EE7* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Unicast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Unicast Registers + + pci:v00008086d00000EE8* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Unicast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Unicast Registers + + pci:v00008086d00000EE9* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Unicast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Unicast Registers + + pci:v00008086d00000EEA* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Unicast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Unicast Registers + + pci:v00008086d00000EEB* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Unicast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Unicast Registers + + pci:v00008086d00000EEC* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Unicast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Unicast Registers + + pci:v00008086d00000EED* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Unicast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Unicast Registers + + pci:v00008086d00000EEE* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Unicast Registers ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Unicast Registers + + pci:v00008086d00000EF0* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel 0-3 Thermal Control 0 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel 0-3 Thermal Control 0 + + pci:v00008086d00000EF1* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel 0-3 Thermal Control 1 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel 0-3 Thermal Control 1 + + pci:v00008086d00000EF2* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel 0-3 ERROR Registers 0 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel 0-3 ERROR Registers 0 + + pci:v00008086d00000EF3* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel 0-3 ERROR Registers 1 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel 0-3 ERROR Registers 1 + + pci:v00008086d00000EF4* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel 0-3 Thermal Control 2 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel 0-3 Thermal Control 2 + + pci:v00008086d00000EF5* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel 0-3 Thermal Control 3 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel 0-3 Thermal Control 3 + + pci:v00008086d00000EF6* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel 0-3 ERROR Registers 2 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel 0-3 ERROR Registers 2 + + pci:v00008086d00000EF7* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel 0-3 ERROR Registers 3 ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 Integrated Memory Controller 0 Channel 0-3 ERROR Registers 3 + + pci:v00008086d00000EF8* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO + + pci:v00008086d00000EF9* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO + + pci:v00008086d00000EFA* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO + + pci:v00008086d00000EFB* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO + + pci:v00008086d00000EFC* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO + + pci:v00008086d00000EFD* +- ID_MODEL_FROM_DATABASE=Xeon E5 v2/Core i7 DDRIO ++ ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO + + pci:v00008086d00000F00* + ID_MODEL_FROM_DATABASE=ValleyView SSA-CUnit +@@ -55868,6 +56588,9 @@ pci:v00008086d0000100Esv00001028sd00000151* + pci:v00008086d0000100Esv0000107Bsd00008920* + ID_MODEL_FROM_DATABASE=PRO/1000 MT Desktop Adapter + ++pci:v00008086d0000100Esv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d0000100Esv00008086sd0000001E* + ID_MODEL_FROM_DATABASE=PRO/1000 MT Desktop Adapter + +@@ -56057,6 +56780,9 @@ pci:v00008086d0000101Esv00008086sd0000101E* + pci:v00008086d00001026* + ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller + ++pci:v00008086d00001026sv00001028sd00000168* ++ ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ + pci:v00008086d00001026sv00001028sd00000169* + ID_MODEL_FROM_DATABASE=Precision 470 + +@@ -56867,15 +57593,24 @@ pci:v00008086d000010D3* + pci:v00008086d000010D3sv0000103Csd00003250* + ID_MODEL_FROM_DATABASE=NC112T PCI Express single Port Gigabit Server Adapter + ++pci:v00008086d000010D3sv00001043sd00008369* ++ ID_MODEL_FROM_DATABASE=Motherboard ++ + pci:v00008086d000010D3sv000010A9sd00008029* + ID_MODEL_FROM_DATABASE=Prism XL Single Port Gigabit Ethernet + + pci:v00008086d000010D3sv000015D9sd0000060A* + ID_MODEL_FROM_DATABASE=X7SPA-H/X7SPA-HF Motherboard + ++pci:v00008086d000010D3sv000015D9sd0000060D* ++ ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ + pci:v00008086d000010D3sv00008086sd00000001* + ID_MODEL_FROM_DATABASE=Gigabit CT2 Desktop Adapter + ++pci:v00008086d000010D3sv00008086sd0000357A* ++ ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ + pci:v00008086d000010D3sv00008086sd0000A01F* + ID_MODEL_FROM_DATABASE=Gigabit CT Desktop Adapter + +@@ -57002,6 +57737,9 @@ pci:v00008086d000010EF* + pci:v00008086d000010EFsv00001028sd000002DA* + ID_MODEL_FROM_DATABASE=OptiPlex 980 + ++pci:v00008086d000010EFsv000015D9sd0000060D* ++ ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ + pci:v00008086d000010F0* + ID_MODEL_FROM_DATABASE=82578DC Gigabit Network Connection + +@@ -57086,6 +57824,9 @@ pci:v00008086d000010FBsv0000108Esd00007B11* + pci:v00008086d000010FBsv00001734sd000011A9* + ID_MODEL_FROM_DATABASE=10 Gigabit Dual Port Network Connection + ++pci:v00008086d000010FBsv000017AAsd00001071* ++ ID_MODEL_FROM_DATABASE=ThinkServer X520-2 AnyFabric ++ + pci:v00008086d000010FBsv00008086sd00000002* + ID_MODEL_FROM_DATABASE=Ethernet Server Adapter X520-DA2 + +@@ -57182,6 +57923,9 @@ pci:v00008086d00001209* + pci:v00008086d00001209sv0000140Bsd00000610* + ID_MODEL_FROM_DATABASE=PMC610 quad Ethernet board + ++pci:v00008086d00001209sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d00001209sv00004C53sd00001050* + ID_MODEL_FROM_DATABASE=CT7 mainboard + +@@ -57428,6 +58172,9 @@ pci:v00008086d00001229sv00001775sd00001100* + pci:v00008086d00001229sv00001775sd0000CE90* + ID_MODEL_FROM_DATABASE=CE9 + ++pci:v00008086d00001229sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d00001229sv00004C53sd00001080* + ID_MODEL_FROM_DATABASE=CT8 mainboard + +@@ -57782,6 +58529,9 @@ pci:v00008086d00001502* + pci:v00008086d00001502sv00001028sd000004A3* + ID_MODEL_FROM_DATABASE=Precision M4600 + ++pci:v00008086d00001502sv00008086sd0000357A* ++ ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ + pci:v00008086d00001503* + ID_MODEL_FROM_DATABASE=82579V Gigabit Network Connection + +@@ -57878,12 +58628,18 @@ pci:v00008086d00001520* + pci:v00008086d00001521* + ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection + ++pci:v00008086d00001521sv00001028sd00000602* ++ ID_MODEL_FROM_DATABASE=Gigabit 2P I350-t LOM ++ + pci:v00008086d00001521sv00001028sd00001F60* + ID_MODEL_FROM_DATABASE=Intel GbE 4P I350crNDC + + pci:v00008086d00001521sv00001028sd00001F62* + ID_MODEL_FROM_DATABASE=Intel GbE 2P I350crNDC + ++pci:v00008086d00001521sv00001028sd0000FF9A* ++ ID_MODEL_FROM_DATABASE=Gigabit 4P X710/I350 rNDC ++ + pci:v00008086d00001521sv0000103Csd000017D1* + ID_MODEL_FROM_DATABASE=Ethernet 1Gb 4-port 366FLR Adapter + +@@ -57911,6 +58667,9 @@ pci:v00008086d00001521sv0000108Esd00007B18* + pci:v00008086d00001521sv000010A9sd0000802A* + ID_MODEL_FROM_DATABASE=UV2-BaseIO dual-port GbE + ++pci:v00008086d00001521sv000017AAsd00001074* ++ ID_MODEL_FROM_DATABASE=ThinkServer I350-T4 AnyFabric ++ + pci:v00008086d00001521sv00008086sd00000001* + ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I350-T4 + +@@ -57962,6 +58721,9 @@ pci:v00008086d00001522sv00008086sd000000A4* + pci:v00008086d00001523* + ID_MODEL_FROM_DATABASE=I350 Gigabit Backplane Connection + ++pci:v00008086d00001523sv00001028sd00001F9B* ++ ID_MODEL_FROM_DATABASE=Gigabit 4P I350 bNDC ++ + pci:v00008086d00001523sv0000103Csd00001784* + ID_MODEL_FROM_DATABASE=Ethernet 1Gb 2-port 361FLB Adapter + +@@ -58025,6 +58787,9 @@ pci:v00008086d00001528sv0000108Esd00007B15* + pci:v00008086d00001528sv00001137sd000000BF* + ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X540-T2 + ++pci:v00008086d00001528sv000017AAsd00001073* ++ ID_MODEL_FROM_DATABASE=ThinkServer X540-T2 AnyFabric ++ + pci:v00008086d00001528sv00008086sd00000001* + ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X540-T2 + +@@ -58055,6 +58820,9 @@ pci:v00008086d00001533* + pci:v00008086d00001533sv0000103Csd00000003* + ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I210-T1 + ++pci:v00008086d00001533sv000017AAsd00001100* ++ ID_MODEL_FROM_DATABASE=ThinkServer Ethernet Server Adapter ++ + pci:v00008086d00001533sv00008086sd00000001* + ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I210-T1 + +@@ -58103,6 +58871,9 @@ pci:v00008086d0000154Asv00008086sd0000011B* + pci:v00008086d0000154Asv00008086sd0000011C* + ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X520-4 + ++pci:v00008086d0000154C* ++ ID_MODEL_FROM_DATABASE=XL710 X710 Virtual Function ++ + pci:v00008086d0000154D* + ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X520 Adapter + +@@ -58148,12 +58919,78 @@ pci:v00008086d0000155Dsv00008086sd00000002* + pci:v00008086d00001560* + ID_MODEL_FROM_DATABASE=Ethernet Controller X540 + ++pci:v00008086d00001571* ++ ID_MODEL_FROM_DATABASE=XL710 X710 Virtual Function ++ ++pci:v00008086d00001572* ++ ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter ++ ++pci:v00008086d00001572sv00001028sd00001F99* ++ ID_MODEL_FROM_DATABASE=Ethernet 10G 4P X710/I350 rNDC ++ ++pci:v00008086d00001572sv00008086sd00000001* ++ ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X710-4 ++ ++pci:v00008086d00001572sv00008086sd00000002* ++ ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X710-4 ++ ++pci:v00008086d00001572sv00008086sd00000004* ++ ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X710-4 ++ ++pci:v00008086d00001572sv00008086sd00000005* ++ ID_MODEL_FROM_DATABASE=Ethernet 10G 4P X710 Adapter ++ ++pci:v00008086d00001572sv00008086sd00000006* ++ ID_MODEL_FROM_DATABASE=Ethernet 10G2P X710 Adapter ++ ++pci:v00008086d00001572sv00008086sd00000007* ++ ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X710-2 ++ ++pci:v00008086d00001572sv00008086sd00000008* ++ ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X710-2 ++ + pci:v00008086d0000157B* + ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection + + pci:v00008086d0000157C* + ID_MODEL_FROM_DATABASE=I210 Gigabit Backplane Connection + ++pci:v00008086d00001580* ++ ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40Gbe backplane ++ ++pci:v00008086d00001581* ++ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10Gbe backplane ++ ++pci:v00008086d00001581sv00001028sd00001F98* ++ ID_MODEL_FROM_DATABASE=Ethernet 10G 4P X710-k bNDC ++ ++pci:v00008086d00001583* ++ ID_MODEL_FROM_DATABASE=Ethernet Controller LX710 for 40GbE QSFP+ ++ ++pci:v00008086d00001583sv00008086sd00000001* ++ ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter XL710-Q2 ++ ++pci:v00008086d00001583sv00008086sd00000002* ++ ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter XL710-Q2 ++ ++pci:v00008086d00001583sv00008086sd00000003* ++ ID_MODEL_FROM_DATABASE=Ethernet I/O Module XL710-Q2 ++ ++pci:v00008086d00001584* ++ ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ ++ ++pci:v00008086d00001584sv00008086sd00000001* ++ ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter XL710-Q1 ++ ++pci:v00008086d00001584sv00008086sd00000002* ++ ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter XL710-Q1 ++ ++pci:v00008086d00001584sv00008086sd00000003* ++ ID_MODEL_FROM_DATABASE=Ethernet I/O Module XL710-Q1 ++ ++pci:v00008086d00001585* ++ ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 10GbE QSFP+ ++ + pci:v00008086d000015A0* + ID_MODEL_FROM_DATABASE=Ethernet Connection (2) I218-LM + +@@ -58166,6 +59003,117 @@ pci:v00008086d000015A2* + pci:v00008086d000015A3* + ID_MODEL_FROM_DATABASE=Ethernet Connection (3) I218-V + ++pci:v00008086d00001600* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Host Bridge -OPI ++ ++pci:v00008086d00001601* ++ ID_MODEL_FROM_DATABASE=Broadwell-U PCI Express x16 Controller ++ ++pci:v00008086d00001602* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d00001603* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Camarillo Device ++ ++pci:v00008086d00001604* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Host Bridge -OPI ++ ++pci:v00008086d00001605* ++ ID_MODEL_FROM_DATABASE=Broadwell-U PCI Express x8 Controller ++ ++pci:v00008086d00001606* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d00001607* ++ ID_MODEL_FROM_DATABASE=Broadwell-U CHAPS Device ++ ++pci:v00008086d00001608* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Host Bridge -OPI ++ ++pci:v00008086d00001609* ++ ID_MODEL_FROM_DATABASE=Broadwell-U x4 PCIe ++ ++pci:v00008086d0000160A* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d0000160B* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d0000160C* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Audio Controller ++ ++pci:v00008086d0000160D* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d0000160E* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d0000160F* ++ ID_MODEL_FROM_DATABASE=Broadwell-U SoftSKU ++ ++pci:v00008086d00001610* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Host Bridge - DMI ++ ++pci:v00008086d00001612* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d00001614* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Host Bridge - DMI ++ ++pci:v00008086d00001616* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d00001618* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Host Bridge - DMI ++ ++pci:v00008086d0000161A* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d0000161B* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d0000161D* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d0000161E* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d00001622* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d00001626* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d0000162A* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d0000162B* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d0000162D* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d0000162E* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d00001632* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d00001636* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d0000163A* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d0000163B* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d0000163D* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ ++pci:v00008086d0000163E* ++ ID_MODEL_FROM_DATABASE=Broadwell-U Integrated Graphics ++ + pci:v00008086d00001960* + ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor + +@@ -58308,7 +59256,10 @@ pci:v00008086d00001C02sv00001028sd000004AA* + ID_MODEL_FROM_DATABASE=XPS 8300 + + pci:v00008086d00001C02sv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8P67 Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=P8 series motherboard ++ ++pci:v00008086d00001C02sv00008086sd00007270* ++ ID_MODEL_FROM_DATABASE=Server Board S1200BTS + + pci:v00008086d00001C03* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller +@@ -58346,8 +59297,11 @@ pci:v00008086d00001C10sv00001028sd000004AA* + pci:v00008086d00001C10sv00001028sd000004DA* + ID_MODEL_FROM_DATABASE=Vostro 3750 + ++pci:v00008086d00001C10sv00001043sd0000844D* ++ ID_MODEL_FROM_DATABASE=P8 series motherboard ++ + pci:v00008086d00001C10sv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Apple MacBookPro8,2 [Core i7, 15", 2011] ++ ID_MODEL_FROM_DATABASE=Server Board S1200BTS / Apple MacBook Pro 8,1/8,2 + + pci:v00008086d00001C12* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 2 +@@ -58379,18 +59333,27 @@ pci:v00008086d00001C18* + pci:v00008086d00001C18sv00001028sd000004DA* + ID_MODEL_FROM_DATABASE=Vostro 3750 + ++pci:v00008086d00001C18sv00008086sd00007270* ++ ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ + pci:v00008086d00001C1A* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 6 + + pci:v00008086d00001C1Asv00001028sd000004DA* + ID_MODEL_FROM_DATABASE=Vostro 3750 + ++pci:v00008086d00001C1Asv00001043sd0000844D* ++ ID_MODEL_FROM_DATABASE=P8 series motherboard ++ + pci:v00008086d00001C1C* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 7 + + pci:v00008086d00001C1E* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 8 + ++pci:v00008086d00001C1Esv00001043sd0000844D* ++ ID_MODEL_FROM_DATABASE=P8 series motherboard ++ + pci:v00008086d00001C20* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family High Definition Audio Controller + +@@ -58412,6 +59375,9 @@ pci:v00008086d00001C20sv00001028sd000004DA* + pci:v00008086d00001C20sv00001043sd00008418* + ID_MODEL_FROM_DATABASE=P8P67 Deluxe Motherboard + ++pci:v00008086d00001C20sv00001043sd0000841B* ++ ID_MODEL_FROM_DATABASE=P8H67 Series Motherboard ++ + pci:v00008086d00001C20sv00008086sd00002008* + ID_MODEL_FROM_DATABASE=DQ67SW board + +@@ -58434,10 +59400,10 @@ pci:v00008086d00001C22sv00001028sd000004DA* + ID_MODEL_FROM_DATABASE=Vostro 3750 + + pci:v00008086d00001C22sv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8P67 Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=P8 series motherboard + + pci:v00008086d00001C22sv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Apple MacBookPro8,2 [Core i7, 15", 2011] ++ ID_MODEL_FROM_DATABASE=Server Board S1200BTS / Apple MacBook Pro 8,1/8,2 + + pci:v00008086d00001C24* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family Thermal Management Controller +@@ -58461,10 +59427,10 @@ pci:v00008086d00001C26sv00001028sd000004DA* + ID_MODEL_FROM_DATABASE=Vostro 3750 + + pci:v00008086d00001C26sv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8P67 Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=P8 series motherboard + + pci:v00008086d00001C26sv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Apple MacBookPro8,2 [Core i7, 15", 2011] ++ ID_MODEL_FROM_DATABASE=Server Board S1200BTS / Apple MacBook Pro 8,1/8,2 + + pci:v00008086d00001C27* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Universal Host Controller #1 +@@ -58494,10 +59460,10 @@ pci:v00008086d00001C2Dsv00001028sd000004DA* + ID_MODEL_FROM_DATABASE=Vostro 3750 + + pci:v00008086d00001C2Dsv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8P67 Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=P8 series motherboard + + pci:v00008086d00001C2Dsv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Apple MacBookPro8,2 [Core i7, 15", 2011] ++ ID_MODEL_FROM_DATABASE=Server Board S1200BTS / Apple MacBook Pro 8,1/8,2 + + pci:v00008086d00001C33* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family LAN Controller +@@ -58521,7 +59487,7 @@ pci:v00008086d00001C3Asv00001028sd000004DA* + ID_MODEL_FROM_DATABASE=Vostro 3750 + + pci:v00008086d00001C3Asv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8P67 Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=P8 series motherboard + + pci:v00008086d00001C3Asv00008086sd00007270* + ID_MODEL_FROM_DATABASE=Apple MacBookPro8,2 [Core i7, 15", 2011] +@@ -58577,6 +59543,9 @@ pci:v00008086d00001C4A* + pci:v00008086d00001C4Asv00001028sd000004AA* + ID_MODEL_FROM_DATABASE=XPS 8300 + ++pci:v00008086d00001C4Asv00001043sd0000844D* ++ ID_MODEL_FROM_DATABASE=P8H67 Series Motherboard ++ + pci:v00008086d00001C4B* + ID_MODEL_FROM_DATABASE=HM67 Express Chipset Family LPC Controller + +@@ -58610,6 +59579,9 @@ pci:v00008086d00001C51* + pci:v00008086d00001C52* + ID_MODEL_FROM_DATABASE=C202 Chipset Family LPC Controller + ++pci:v00008086d00001C52sv00008086sd00007270* ++ ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ + pci:v00008086d00001C53* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family LPC Controller + +@@ -58622,6 +59594,9 @@ pci:v00008086d00001C55* + pci:v00008086d00001C56* + ID_MODEL_FROM_DATABASE=C206 Chipset Family LPC Controller + ++pci:v00008086d00001C56sv00001043sd0000844D* ++ ID_MODEL_FROM_DATABASE=P8B WS Motherboard ++ + pci:v00008086d00001C57* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family LPC Controller + +@@ -59345,6 +60320,9 @@ pci:v00008086d0000225C* + pci:v00008086d0000225D* + ID_MODEL_FROM_DATABASE=Xeon Phi coprocessor 3120 series + ++pci:v00008086d0000225E* ++ ID_MODEL_FROM_DATABASE=Xeon Phi coprocessor 31S1 ++ + pci:v00008086d00002310* + ID_MODEL_FROM_DATABASE=DH89xxCC LPC Controller + +@@ -59495,6 +60473,9 @@ pci:v00008086d00002415sv000011D4sd00005340* + pci:v00008086d00002415sv00001734sd00001025* + ID_MODEL_FROM_DATABASE=Activy 3xx + ++pci:v00008086d00002415sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d00002416* + ID_MODEL_FROM_DATABASE=82801AA AC'97 Modem Controller + +@@ -59804,6 +60785,9 @@ pci:v00008086d00002449sv00001186sd00007801* + pci:v00008086d00002449sv0000144Dsd00002602* + ID_MODEL_FROM_DATABASE=HomePNA 1M CNR + ++pci:v00008086d00002449sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d00002449sv00008086sd00003010* + ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE + +@@ -59897,6 +60881,9 @@ pci:v00008086d0000244Esv00001028sd000002DA* + pci:v00008086d0000244Esv0000103Csd00002A3B* + ID_MODEL_FROM_DATABASE=Pavilion A1512X + ++pci:v00008086d0000244Esv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v00008086d0000244Esv0000103Csd000031FE* + ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 + +@@ -59906,15 +60893,27 @@ pci:v00008086d0000244Esv0000103Csd0000330B* + pci:v00008086d0000244Esv00001043sd00008277* + ID_MODEL_FROM_DATABASE=P5K PRO Motherboard + ++pci:v00008086d0000244Esv00001043sd0000844D* ++ ID_MODEL_FROM_DATABASE=P8 series motherboard ++ + pci:v00008086d0000244Esv00001458sd00005000* + ID_MODEL_FROM_DATABASE=Motherboard + ++pci:v00008086d0000244Esv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ++pci:v00008086d0000244Esv000015D9sd0000060D* ++ ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ + pci:v00008086d0000244Esv000015D9sd00009680* + ID_MODEL_FROM_DATABASE=X7DBN Motherboard + + pci:v00008086d0000244Esv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + ++pci:v00008086d0000244Esv00008086sd00007270* ++ ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ + pci:v00008086d00002450* + ID_MODEL_FROM_DATABASE=82801E ISA Bridge (LPC) + +@@ -60671,6 +61670,9 @@ pci:v00008086d000024CDsv00001734sd00001004* + pci:v00008086d000024CDsv00001734sd00001055* + ID_MODEL_FROM_DATABASE=Amilo M1420 + ++pci:v00008086d000024CDsv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d000024CDsv00004C53sd00001090* + ID_MODEL_FROM_DATABASE=Cx9 / Vx9 mainboard + +@@ -60689,6 +61691,9 @@ pci:v00008086d000024D0* + pci:v00008086d000024D1* + ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller + ++pci:v00008086d000024D1sv00001028sd00000168* ++ ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ + pci:v00008086d000024D1sv00001028sd00000169* + ID_MODEL_FROM_DATABASE=Precision 470 + +@@ -60740,6 +61745,9 @@ pci:v00008086d000024D2sv00001014sd000002DD* + pci:v00008086d000024D2sv00001014sd000002ED* + ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard + ++pci:v00008086d000024D2sv00001028sd00000168* ++ ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ + pci:v00008086d000024D2sv00001028sd00000169* + ID_MODEL_FROM_DATABASE=Precision 470 + +@@ -60809,6 +61817,9 @@ pci:v00008086d000024D3sv00001014sd000002ED* + pci:v00008086d000024D3sv00001028sd00000156* + ID_MODEL_FROM_DATABASE=Precision 360 + ++pci:v00008086d000024D3sv00001028sd00000168* ++ ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ + pci:v00008086d000024D3sv00001028sd00000169* + ID_MODEL_FROM_DATABASE=Precision 470 + +@@ -60860,6 +61871,9 @@ pci:v00008086d000024D4sv00001014sd000002DD* + pci:v00008086d000024D4sv00001014sd000002ED* + ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard + ++pci:v00008086d000024D4sv00001028sd00000168* ++ ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ + pci:v00008086d000024D4sv00001028sd00000169* + ID_MODEL_FROM_DATABASE=Precision 470 + +@@ -60926,6 +61940,9 @@ pci:v00008086d000024D5* + pci:v00008086d000024D5sv0000100Asd0000147B* + ID_MODEL_FROM_DATABASE=Abit IS7-E motherboard + ++pci:v00008086d000024D5sv00001028sd00000168* ++ ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ + pci:v00008086d000024D5sv00001028sd00000169* + ID_MODEL_FROM_DATABASE=Precision 470 + +@@ -60977,6 +61994,9 @@ pci:v00008086d000024D7* + pci:v00008086d000024D7sv00001014sd000002ED* + ID_MODEL_FROM_DATABASE=xSeries server mainboard + ++pci:v00008086d000024D7sv00001028sd00000168* ++ ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ + pci:v00008086d000024D7sv00001028sd00000169* + ID_MODEL_FROM_DATABASE=Precision 470 + +@@ -61040,6 +62060,9 @@ pci:v00008086d000024DBsv00001014sd000002DD* + pci:v00008086d000024DBsv00001014sd000002ED* + ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard + ++pci:v00008086d000024DBsv00001028sd00000168* ++ ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ + pci:v00008086d000024DBsv00001028sd00000169* + ID_MODEL_FROM_DATABASE=Precision 470 + +@@ -61112,6 +62135,9 @@ pci:v00008086d000024DDsv00001014sd000002DD* + pci:v00008086d000024DDsv00001014sd000002ED* + ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard + ++pci:v00008086d000024DDsv00001028sd00000168* ++ ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ + pci:v00008086d000024DDsv00001028sd00000169* + ID_MODEL_FROM_DATABASE=Precision 470 + +@@ -61169,6 +62195,9 @@ pci:v00008086d000024DE* + pci:v00008086d000024DEsv00001014sd000002ED* + ID_MODEL_FROM_DATABASE=xSeries server mainboard + ++pci:v00008086d000024DEsv00001028sd00000168* ++ ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ + pci:v00008086d000024DEsv00001028sd00000169* + ID_MODEL_FROM_DATABASE=Precision 470 + +@@ -61208,6 +62237,21 @@ pci:v00008086d000024DEsv00008086sd0000524C* + pci:v00008086d000024DF* + ID_MODEL_FROM_DATABASE=82801ER (ICH5R) SATA Controller + ++pci:v00008086d000024DFsv00001028sd00000168* ++ ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ ++pci:v00008086d000024F3* ++ ID_MODEL_FROM_DATABASE=Wireless 8260 ++ ++pci:v00008086d000024F3sv00008086sd00000010* ++ ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 8260 ++ ++pci:v00008086d000024F4* ++ ID_MODEL_FROM_DATABASE=Wireless 8260 ++ ++pci:v00008086d000024F4sv00008086sd00000030* ++ ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 8260 ++ + pci:v00008086d00002500* + ID_MODEL_FROM_DATABASE=82820 820 (Camino) Chipset Host Bridge (MCH) + +@@ -61679,6 +62723,9 @@ pci:v00008086d000025ABsv00001775sd00001100* + pci:v00008086d000025ABsv00001775sd0000CE90* + ID_MODEL_FROM_DATABASE=CE9 + ++pci:v00008086d000025ABsv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d000025ABsv00004C53sd000010B0* + ID_MODEL_FROM_DATABASE=CL9 mainboard + +@@ -62330,6 +63377,9 @@ pci:v00008086d00002668sv00001043sd0000814E* + pci:v00008086d00002668sv00001462sd00007028* + ID_MODEL_FROM_DATABASE=915P/G Neo2 + ++pci:v00008086d00002668sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d0000266A* + ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller + +@@ -62657,6 +63707,9 @@ pci:v00008086d00002770sv00001043sd0000817A* + pci:v00008086d00002770sv0000107Bsd00005048* + ID_MODEL_FROM_DATABASE=E4500 + ++pci:v00008086d00002770sv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v00008086d00002770sv00008086sd0000544E* + ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP + +@@ -62669,6 +63722,9 @@ pci:v00008086d00002772* + pci:v00008086d00002772sv0000103Csd00002A3B* + ID_MODEL_FROM_DATABASE=Pavilion A1512X + ++pci:v00008086d00002772sv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v00008086d00002772sv00008086sd0000544E* + ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP + +@@ -62831,6 +63887,9 @@ pci:v00008086d000027B8sv00001043sd00008179* + pci:v00008086d000027B8sv0000107Bsd00005048* + ID_MODEL_FROM_DATABASE=E4500 + ++pci:v00008086d000027B8sv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v00008086d000027B8sv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + +@@ -62906,6 +63965,9 @@ pci:v00008086d000027C0sv00001462sd00002310* + pci:v00008086d000027C0sv00001462sd00007236* + ID_MODEL_FROM_DATABASE=945P Neo3-F Rev. 2.2 motherboard + ++pci:v00008086d000027C0sv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v00008086d000027C0sv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + +@@ -62961,7 +64023,7 @@ pci:v00008086d000027C4sv00001028sd000001D7* + ID_MODEL_FROM_DATABASE=XPS M1210 + + pci:v00008086d000027C4sv000017AAsd0000200E* +- ID_MODEL_FROM_DATABASE=Thinkpad T60 model 2007 ++ ID_MODEL_FROM_DATABASE=ThinkPad T60 + + pci:v00008086d000027C5* + ID_MODEL_FROM_DATABASE=82801GBM/GHM (ICH7-M Family) SATA Controller [AHCI mode] +@@ -63026,6 +64088,9 @@ pci:v00008086d000027C8sv0000144Dsd0000C072* + pci:v00008086d000027C8sv00001458sd00005004* + ID_MODEL_FROM_DATABASE=GA-D525TUD + ++pci:v00008086d000027C8sv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v00008086d000027C8sv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + +@@ -63089,6 +64154,9 @@ pci:v00008086d000027C9sv0000144Dsd0000C072* + pci:v00008086d000027C9sv00001458sd00005004* + ID_MODEL_FROM_DATABASE=GA-D525TUD + ++pci:v00008086d000027C9sv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v00008086d000027C9sv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + +@@ -63152,6 +64220,9 @@ pci:v00008086d000027CAsv0000144Dsd0000C072* + pci:v00008086d000027CAsv00001458sd00005004* + ID_MODEL_FROM_DATABASE=GA-D525TUD + ++pci:v00008086d000027CAsv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v00008086d000027CAsv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + +@@ -63209,6 +64280,9 @@ pci:v00008086d000027CBsv0000144Dsd0000C072* + pci:v00008086d000027CBsv00001458sd00005004* + ID_MODEL_FROM_DATABASE=GA-D525TUD + ++pci:v00008086d000027CBsv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v00008086d000027CBsv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + +@@ -63266,6 +64340,9 @@ pci:v00008086d000027CCsv0000144Dsd0000C072* + pci:v00008086d000027CCsv00001458sd00005006* + ID_MODEL_FROM_DATABASE=GA-D525TUD + ++pci:v00008086d000027CCsv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v00008086d000027CCsv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + +@@ -63296,6 +64373,9 @@ pci:v00008086d000027D0sv0000144Dsd0000C072* + pci:v00008086d000027D0sv00001458sd00005001* + ID_MODEL_FROM_DATABASE=GA-D525TUD + ++pci:v00008086d000027D0sv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v00008086d000027D0sv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + +@@ -63314,6 +64394,9 @@ pci:v00008086d000027D2sv0000103Csd000030A3* + pci:v00008086d000027D2sv0000144Dsd0000C072* + ID_MODEL_FROM_DATABASE=Notebook N150P + ++pci:v00008086d000027D2sv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v00008086d000027D2sv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + +@@ -63326,6 +64409,9 @@ pci:v00008086d000027D4* + pci:v00008086d000027D4sv0000144Dsd0000C072* + ID_MODEL_FROM_DATABASE=Notebook N150P + ++pci:v00008086d000027D4sv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v00008086d000027D4sv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + +@@ -63341,6 +64427,9 @@ pci:v00008086d000027D6sv0000103Csd000030A3* + pci:v00008086d000027D6sv0000144Dsd0000C072* + ID_MODEL_FROM_DATABASE=Notebook N150P + ++pci:v00008086d000027D6sv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v00008086d000027D6sv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + +@@ -63410,6 +64499,9 @@ pci:v00008086d000027D8sv00001458sd0000A002* + pci:v00008086d000027D8sv00001458sd0000A102* + ID_MODEL_FROM_DATABASE=GA-8I945PG-RH Mainboard + ++pci:v00008086d000027D8sv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v00008086d000027D8sv0000152Dsd00000753* + ID_MODEL_FROM_DATABASE=Softmodem + +@@ -63470,6 +64562,9 @@ pci:v00008086d000027DAsv0000144Dsd0000C072* + pci:v00008086d000027DAsv00001458sd00005001* + ID_MODEL_FROM_DATABASE=GA-8I945PG-RH/GA-D525TUD Mainboard + ++pci:v00008086d000027DAsv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v00008086d000027DAsv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + +@@ -63545,6 +64640,9 @@ pci:v00008086d000027DFsv0000107Bsd00005048* + pci:v00008086d000027DFsv000010F7sd00008338* + ID_MODEL_FROM_DATABASE=Panasonic CF-Y5 laptop + ++pci:v00008086d000027DFsv00001462sd00007418* ++ ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ + pci:v00008086d000027DFsv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + +@@ -63632,6 +64730,9 @@ pci:v00008086d00002822* + pci:v00008086d00002822sv00001028sd0000020D* + ID_MODEL_FROM_DATABASE=Inspiron 530 + ++pci:v00008086d00002822sv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v00008086d00002823* + ID_MODEL_FROM_DATABASE=Wellsburg sSATA RAID Controller + +@@ -64202,6 +65303,9 @@ pci:v00008086d00002916* + pci:v00008086d00002916sv00001028sd0000020D* + ID_MODEL_FROM_DATABASE=Inspiron 530 + ++pci:v00008086d00002916sv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v00008086d00002916sv00001043sd00008277* + ID_MODEL_FROM_DATABASE=P5K PRO Motherboard + +@@ -64223,6 +65327,9 @@ pci:v00008086d00002918sv00001028sd00000236* + pci:v00008086d00002918sv00001462sd00007360* + ID_MODEL_FROM_DATABASE=G33/P35 Neo + ++pci:v00008086d00002918sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d00002919* + ID_MODEL_FROM_DATABASE=ICH9M LPC Interface Controller + +@@ -64265,6 +65372,9 @@ pci:v00008086d00002921sv00001462sd00007360* + pci:v00008086d00002922* + ID_MODEL_FROM_DATABASE=82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA Controller [AHCI mode] + ++pci:v00008086d00002922sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d00002922sv00008086sd00005044* + ID_MODEL_FROM_DATABASE=Desktop Board DP35DP + +@@ -64331,6 +65441,9 @@ pci:v00008086d00002930sv00001028sd0000020D* + pci:v00008086d00002930sv00001028sd00000211* + ID_MODEL_FROM_DATABASE=Optiplex 755 + ++pci:v00008086d00002930sv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v00008086d00002930sv0000103Csd00003628* + ID_MODEL_FROM_DATABASE=dv6-1190en + +@@ -64340,6 +65453,9 @@ pci:v00008086d00002930sv00001043sd00008277* + pci:v00008086d00002930sv00001462sd00007360* + ID_MODEL_FROM_DATABASE=G33/P35 Neo + ++pci:v00008086d00002930sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d00002930sv00008086sd00005044* + ID_MODEL_FROM_DATABASE=Desktop Board DP35DP + +@@ -64388,12 +65504,18 @@ pci:v00008086d00002934sv00001028sd0000029C* + pci:v00008086d00002934sv00001028sd00002011* + ID_MODEL_FROM_DATABASE=Optiplex 755 + ++pci:v00008086d00002934sv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v00008086d00002934sv00001043sd00008277* + ID_MODEL_FROM_DATABASE=P5K PRO Motherboard + + pci:v00008086d00002934sv00001462sd00007360* + ID_MODEL_FROM_DATABASE=G33/P35 Neo + ++pci:v00008086d00002934sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d00002934sv00008086sd00005044* + ID_MODEL_FROM_DATABASE=Desktop Board DP35DP + +@@ -64433,12 +65555,18 @@ pci:v00008086d00002935sv00001028sd00000287* + pci:v00008086d00002935sv00001028sd0000029C* + ID_MODEL_FROM_DATABASE=PowerEdge M710 USB UHCI Controller + ++pci:v00008086d00002935sv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v00008086d00002935sv00001043sd00008277* + ID_MODEL_FROM_DATABASE=P5K PRO Motherboard + + pci:v00008086d00002935sv00001462sd00007360* + ID_MODEL_FROM_DATABASE=G33/P35 Neo + ++pci:v00008086d00002935sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d00002935sv00008086sd00005044* + ID_MODEL_FROM_DATABASE=Desktop Board DP35DP + +@@ -64472,12 +65600,18 @@ pci:v00008086d00002936sv00001028sd00000287* + pci:v00008086d00002936sv00001028sd0000029C* + ID_MODEL_FROM_DATABASE=PowerEdge M710 USB UHCI Controller + ++pci:v00008086d00002936sv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v00008086d00002936sv00001043sd00008277* + ID_MODEL_FROM_DATABASE=P5K PRO Motherboard + + pci:v00008086d00002936sv00001462sd00007360* + ID_MODEL_FROM_DATABASE=G33/P35 Neo + ++pci:v00008086d00002936sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d00002936sv00008086sd00005044* + ID_MODEL_FROM_DATABASE=Desktop Board DP35DP + +@@ -64511,12 +65645,18 @@ pci:v00008086d00002937sv00001028sd0000029C* + pci:v00008086d00002937sv00001028sd00002011* + ID_MODEL_FROM_DATABASE=Optiplex 755 + ++pci:v00008086d00002937sv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v00008086d00002937sv00001043sd00008277* + ID_MODEL_FROM_DATABASE=P5K PRO Motherboard + + pci:v00008086d00002937sv00001462sd00007360* + ID_MODEL_FROM_DATABASE=G33/P35 Neo + ++pci:v00008086d00002937sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d00002937sv00008086sd00002937* + ID_MODEL_FROM_DATABASE=Optiplex 755 + +@@ -64553,12 +65693,18 @@ pci:v00008086d00002938sv00001028sd00000287* + pci:v00008086d00002938sv00001028sd0000029C* + ID_MODEL_FROM_DATABASE=PowerEdge M710 USB UHCI Controller + ++pci:v00008086d00002938sv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v00008086d00002938sv00001043sd00008277* + ID_MODEL_FROM_DATABASE=P5K PRO Motherboard + + pci:v00008086d00002938sv00001462sd00007360* + ID_MODEL_FROM_DATABASE=G33/P35 Neo + ++pci:v00008086d00002938sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d00002938sv00008086sd00002938* + ID_MODEL_FROM_DATABASE=Optiplex 755 + +@@ -64580,12 +65726,18 @@ pci:v00008086d00002939sv00001028sd00000210* + pci:v00008086d00002939sv00001028sd00000237* + ID_MODEL_FROM_DATABASE=PowerEdge T610 USB UHCI Controller + ++pci:v00008086d00002939sv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v00008086d00002939sv00001043sd00008277* + ID_MODEL_FROM_DATABASE=P5K PRO Motherboard + + pci:v00008086d00002939sv00001462sd00007360* + ID_MODEL_FROM_DATABASE=G33/P35 Neo + ++pci:v00008086d00002939sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d00002939sv00008086sd00005044* + ID_MODEL_FROM_DATABASE=Desktop Board DP35DP + +@@ -64625,12 +65777,18 @@ pci:v00008086d0000293Asv00001028sd00000287* + pci:v00008086d0000293Asv00001028sd0000029C* + ID_MODEL_FROM_DATABASE=PowerEdge M710 USB EHCI Controller + ++pci:v00008086d0000293Asv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v00008086d0000293Asv00001043sd00008277* + ID_MODEL_FROM_DATABASE=P5K PRO Motherboard + + pci:v00008086d0000293Asv00001462sd00007360* + ID_MODEL_FROM_DATABASE=G33/P35 Neo + ++pci:v00008086d0000293Asv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d0000293Asv00008086sd00005044* + ID_MODEL_FROM_DATABASE=Desktop Board DP35DP + +@@ -64661,12 +65819,18 @@ pci:v00008086d0000293Csv00001028sd00000287* + pci:v00008086d0000293Csv00001028sd0000029C* + ID_MODEL_FROM_DATABASE=PowerEdge M710 USB EHCI Controller + ++pci:v00008086d0000293Csv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v00008086d0000293Csv00001043sd00008277* + ID_MODEL_FROM_DATABASE=P5K PRO Motherboard + + pci:v00008086d0000293Csv00001462sd00007360* + ID_MODEL_FROM_DATABASE=G33/P35 Neo + ++pci:v00008086d0000293Csv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d0000293Csv00008086sd0000293C* + ID_MODEL_FROM_DATABASE=Optiplex 755 + +@@ -64685,6 +65849,9 @@ pci:v00008086d0000293Esv00001028sd0000020D* + pci:v00008086d0000293Esv00001028sd00000211* + ID_MODEL_FROM_DATABASE=Optiplex 755 + ++pci:v00008086d0000293Esv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v00008086d0000293Esv0000103Csd00003628* + ID_MODEL_FROM_DATABASE=dv6-1190en + +@@ -64694,6 +65861,9 @@ pci:v00008086d0000293Esv00001043sd0000829F* + pci:v00008086d0000293Esv00001462sd00007360* + ID_MODEL_FROM_DATABASE=G33/P35 Neo + ++pci:v00008086d0000293Esv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d0000293Esv00008086sd0000293E* + ID_MODEL_FROM_DATABASE=Optiplex 755 + +@@ -64712,6 +65882,9 @@ pci:v00008086d00002940sv00001028sd0000020D* + pci:v00008086d00002940sv00001028sd00000211* + ID_MODEL_FROM_DATABASE=Optiplex 755 + ++pci:v00008086d00002940sv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v00008086d00002940sv00001043sd00008277* + ID_MODEL_FROM_DATABASE=P5K PRO Motherboard + +@@ -64730,6 +65903,9 @@ pci:v00008086d00002944* + pci:v00008086d00002944sv00001028sd0000020D* + ID_MODEL_FROM_DATABASE=Inspiron 530 + ++pci:v00008086d00002944sv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v00008086d00002946* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 4 + +@@ -64910,6 +66086,9 @@ pci:v00008086d000029C0* + pci:v00008086d000029C0sv00001028sd0000020D* + ID_MODEL_FROM_DATABASE=Inspiron 530 + ++pci:v00008086d000029C0sv0000103Csd00002A6F* ++ ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ + pci:v00008086d000029C0sv00001043sd00008276* + ID_MODEL_FROM_DATABASE=P5K PRO Motherboard + +@@ -64919,6 +66098,9 @@ pci:v00008086d000029C0sv00001043sd000082B0* + pci:v00008086d000029C0sv00001462sd00007360* + ID_MODEL_FROM_DATABASE=G33/P35 Neo + ++pci:v00008086d000029C0sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d000029C0sv00008086sd00005044* + ID_MODEL_FROM_DATABASE=Desktop Board DP35DP + +@@ -66050,6 +67232,9 @@ pci:v00008086d00002F37* + pci:v00008086d00002F38* + ID_MODEL_FROM_DATABASE=Haswell-E Home Agent 1 + ++pci:v00008086d00002F39* ++ ID_MODEL_FROM_DATABASE=Haswell-E I/O Performance Monitoring ++ + pci:v00008086d00002F3A* + ID_MODEL_FROM_DATABASE=Haswell-E QPI Link 2 + +@@ -66899,6 +68084,9 @@ pci:v00008086d00003591* + pci:v00008086d00003591sv00001014sd000002DD* + ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard + ++pci:v00008086d00003591sv00001028sd00000168* ++ ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ + pci:v00008086d00003591sv00001028sd00000169* + ID_MODEL_FROM_DATABASE=Precision 470 + +@@ -66968,6 +68156,9 @@ pci:v00008086d0000359Bsv00001014sd000002DD* + pci:v00008086d0000359E* + ID_MODEL_FROM_DATABASE=E7525 Memory Controller Hub + ++pci:v00008086d0000359Esv00001028sd00000168* ++ ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ + pci:v00008086d0000359Esv00001028sd00000169* + ID_MODEL_FROM_DATABASE=Precision 470 + +@@ -67586,6 +68777,9 @@ pci:v00008086d00003B0A* + pci:v00008086d00003B0Asv00001028sd000002DA* + ID_MODEL_FROM_DATABASE=OptiPlex 980 + ++pci:v00008086d00003B0Asv000015D9sd0000060D* ++ ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ + pci:v00008086d00003B0B* + ID_MODEL_FROM_DATABASE=Mobile 5 Series Chipset LPC Interface Controller + +@@ -67661,6 +68855,9 @@ pci:v00008086d00003B22* + pci:v00008086d00003B22sv00001028sd000002DA* + ID_MODEL_FROM_DATABASE=OptiPlex 980 + ++pci:v00008086d00003B22sv000015D9sd0000060D* ++ ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ + pci:v00008086d00003B23* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA AHCI Controller + +@@ -67715,6 +68912,9 @@ pci:v00008086d00003B30sv00001028sd000002DA* + pci:v00008086d00003B30sv00001028sd0000040B* + ID_MODEL_FROM_DATABASE=Latitude E6510 + ++pci:v00008086d00003B30sv000015D9sd0000060D* ++ ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ + pci:v00008086d00003B30sv0000E4BFsd000050C1* + ID_MODEL_FROM_DATABASE=PC1-GROOVE + +@@ -67736,6 +68936,9 @@ pci:v00008086d00003B34sv00001028sd000002DA* + pci:v00008086d00003B34sv00001028sd0000040B* + ID_MODEL_FROM_DATABASE=Latitude E6510 + ++pci:v00008086d00003B34sv000015D9sd0000060D* ++ ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ + pci:v00008086d00003B34sv0000E4BFsd000050C1* + ID_MODEL_FROM_DATABASE=PC1-GROOVE + +@@ -67769,6 +68972,9 @@ pci:v00008086d00003B3Csv00001028sd000002DA* + pci:v00008086d00003B3Csv00001028sd0000040B* + ID_MODEL_FROM_DATABASE=Latitude E6510 + ++pci:v00008086d00003B3Csv000015D9sd0000060D* ++ ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ + pci:v00008086d00003B3Csv0000E4BFsd000050C1* + ID_MODEL_FROM_DATABASE=PC1-GROOVE + +@@ -67793,12 +68999,18 @@ pci:v00008086d00003B42sv00001028sd000002DA* + pci:v00008086d00003B42sv00001028sd0000040B* + ID_MODEL_FROM_DATABASE=Latitude E6510 + ++pci:v00008086d00003B42sv000015D9sd0000060D* ++ ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ + pci:v00008086d00003B44* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 2 + + pci:v00008086d00003B44sv00001028sd0000040B* + ID_MODEL_FROM_DATABASE=Latitude E6510 + ++pci:v00008086d00003B44sv000015D9sd0000060D* ++ ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ + pci:v00008086d00003B46* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 3 + +@@ -67841,6 +69053,9 @@ pci:v00008086d00003B56sv00001028sd000002DA* + pci:v00008086d00003B56sv00001028sd0000040B* + ID_MODEL_FROM_DATABASE=Latitude E6510 + ++pci:v00008086d00003B56sv000015D9sd0000060D* ++ ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ + pci:v00008086d00003B56sv0000E4BFsd000050C1* + ID_MODEL_FROM_DATABASE=PC1-GROOVE + +@@ -67853,6 +69068,9 @@ pci:v00008086d00003B64* + pci:v00008086d00003B64sv00001025sd00000347* + ID_MODEL_FROM_DATABASE=Aspire 7740G + ++pci:v00008086d00003B64sv000015D9sd0000060D* ++ ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ + pci:v00008086d00003B64sv0000E4BFsd000050C1* + ID_MODEL_FROM_DATABASE=PC1-GROOVE + +@@ -68601,10 +69819,10 @@ pci:v00008086d0000504C* + ID_MODEL_FROM_DATABASE=EP80579 Integrated Processor with QuickAssist TDM + + pci:v00008086d00005200* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Intelligent Server ++ ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Intelligent Server PCI Bridge + + pci:v00008086d00005201* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Intelligent Server ++ ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Intelligent Server Fast Ethernet Controller + + pci:v00008086d00005201sv00008086sd00000001* + ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Server Ethernet Adapter +@@ -68612,6 +69830,12 @@ pci:v00008086d00005201sv00008086sd00000001* + pci:v00008086d0000530D* + ID_MODEL_FROM_DATABASE=80310 (IOP) IO Processor + ++pci:v00008086d00005845* ++ ID_MODEL_FROM_DATABASE=QEMU NVM Express Controller ++ ++pci:v00008086d00005845sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d000065C0* + ID_MODEL_FROM_DATABASE=5100 Chipset Memory Controller Hub + +@@ -68688,7 +69912,7 @@ pci:v00008086d00007020* + ID_MODEL_FROM_DATABASE=82371SB PIIX3 USB [Natoma/Triton II] + + pci:v00008086d00007020sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=Qemu virtual machine ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine + + pci:v00008086d00007030* + ID_MODEL_FROM_DATABASE=430VX - 82437VX TVX [Triton VX] +@@ -68720,6 +69944,9 @@ pci:v00008086d00007112* + pci:v00008086d00007112sv000015ADsd00001976* + ID_MODEL_FROM_DATABASE=Virtual Machine Chipset + ++pci:v00008086d00007112sv00001AF4sd00001100* ++ ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ + pci:v00008086d00007113* + ID_MODEL_FROM_DATABASE=82371AB/EB/MB PIIX4 ACPI + +@@ -69383,6 +70610,9 @@ pci:v00008086d00008D04* + pci:v00008086d00008D06* + ID_MODEL_FROM_DATABASE=Wellsburg SATA Controller [RAID mode] + ++pci:v00008086d00008D06sv000017AAsd00001031* ++ ID_MODEL_FROM_DATABASE=ThinkServer RAID 110i ++ + pci:v00008086d00008D08* + ID_MODEL_FROM_DATABASE=Wellsburg 2-port SATA Controller [IDE mode] + +@@ -69959,6 +71189,9 @@ pci:v00008086d0000D131* + pci:v00008086d0000D131sv00001028sd000002DA* + ID_MODEL_FROM_DATABASE=OptiPlex 980 + ++pci:v00008086d0000D131sv000015D9sd0000060D* ++ ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ + pci:v00008086d0000D132* + ID_MODEL_FROM_DATABASE=Core Processor DMI + +@@ -69989,6 +71222,9 @@ pci:v00008086d0000D138sv00001028sd000002DA* + pci:v00008086d0000D138sv00001028sd0000040B* + ID_MODEL_FROM_DATABASE=Latitude E6510 + ++pci:v00008086d0000D138sv000015D9sd0000060D* ++ ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ + pci:v00008086d0000D139* + ID_MODEL_FROM_DATABASE=Core Processor PCI Express Root Port 2 + +@@ -71144,6 +72380,9 @@ pci:v00009005d00008089* + pci:v00009005d0000808F* + ID_MODEL_FROM_DATABASE=AIC-7901 U320 w/HostRAID + ++pci:v00009005d0000808Fsv00001028sd00000168* ++ ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ + pci:v00009005d00008090* + ID_MODEL_FROM_DATABASE=ASC-39320 U320 w/HostRAID + +@@ -71271,11 +72510,14 @@ pci:v00009710d00009912* + ID_MODEL_FROM_DATABASE=PCIe 9912 Multi-I/O Controller + + pci:v00009710d00009922* +- ID_MODEL_FROM_DATABASE=PCIe 9922 Multi-I/O Controller ++ ID_MODEL_FROM_DATABASE=MCS9922 PCIe Multi-I/O Controller + + pci:v00009710d00009990* + ID_MODEL_FROM_DATABASE=MCS9990 PCIe to 4‐Port USB 2.0 Host Controller + ++pci:v00009850* ++ ID_VENDOR_FROM_DATABASE=3Com (wrong ID) ++ + pci:v00009902* + ID_VENDOR_FROM_DATABASE=Stargen Inc. + +@@ -71381,6 +72623,9 @@ pci:v0000BD11* + pci:v0000BDBD* + ID_VENDOR_FROM_DATABASE=Blackmagic Design + ++pci:v0000BDBDd0000A106* ++ ID_MODEL_FROM_DATABASE=Multibridge Extreme ++ + pci:v0000BDBDd0000A117* + ID_MODEL_FROM_DATABASE=Intensity Pro + +@@ -71585,6 +72830,51 @@ pci:v0000D84D* + pci:v0000DADA* + ID_VENDOR_FROM_DATABASE=Datapath Limited + ++pci:v0000DADAd00000133* ++ ID_MODEL_FROM_DATABASE=VisionRGB-X2 ++ ++pci:v0000DADAd00000139* ++ ID_MODEL_FROM_DATABASE=VisionRGB-E1 ++ ++pci:v0000DADAd00000144* ++ ID_MODEL_FROM_DATABASE=VisionSD8 ++ ++pci:v0000DADAd00000150* ++ ID_MODEL_FROM_DATABASE=VisionRGB-E2 ++ ++pci:v0000DADAd00000151* ++ ID_MODEL_FROM_DATABASE=VisionSD4+1 ++ ++pci:v0000DADAd00000159* ++ ID_MODEL_FROM_DATABASE=VisionAV ++ ++pci:v0000DADAd00000161* ++ ID_MODEL_FROM_DATABASE=DGC161 ++ ++pci:v0000DADAd00000165* ++ ID_MODEL_FROM_DATABASE=DGC165 ++ ++pci:v0000DADAd00000167* ++ ID_MODEL_FROM_DATABASE=DGC167 ++ ++pci:v0000DADAd00000168* ++ ID_MODEL_FROM_DATABASE=DGC168 ++ ++pci:v0000DADAd00001139* ++ ID_MODEL_FROM_DATABASE=VisionRGB-E1S ++ ++pci:v0000DADAd00001150* ++ ID_MODEL_FROM_DATABASE=VisionRGB-E2S ++ ++pci:v0000DADAd00001151* ++ ID_MODEL_FROM_DATABASE=VisionSD4+1S ++ ++pci:v0000DADAd00001153* ++ ID_MODEL_FROM_DATABASE=VisionDVI-DL ++ ++pci:v0000DADAd00001154* ++ ID_MODEL_FROM_DATABASE=VisionSDI2 ++ + pci:v0000DB10* + ID_VENDOR_FROM_DATABASE=Diablo Technologies + +@@ -71735,6 +73025,9 @@ pci:v0000E4BFd0000CC47* + pci:v0000E4BFd0000CC4D* + ID_MODEL_FROM_DATABASE=CCM-BOOGIE + ++pci:v0000E4E4* ++ ID_VENDOR_FROM_DATABASE=Xorcom ++ + pci:v0000E55E* + ID_VENDOR_FROM_DATABASE=Essence Technology, Inc. + +diff --git hwdb/20-usb-vendor-model.hwdb hwdb/20-usb-vendor-model.hwdb +index 60dbcd2..014c628 100644 +--- hwdb/20-usb-vendor-model.hwdb ++++ hwdb/20-usb-vendor-model.hwdb +@@ -20,6 +20,12 @@ usb:v0003* + usb:v0004* + ID_VENDOR_FROM_DATABASE=Nebraska Furniture Mart + ++usb:v0011* ++ ID_VENDOR_FROM_DATABASE=Unknown manufacturer ++ ++usb:v0011p7788* ++ ID_MODEL_FROM_DATABASE=Flash mass storage drive ++ + usb:v0053* + ID_VENDOR_FROM_DATABASE=Planex + +@@ -30,7 +36,7 @@ usb:v0079* + ID_VENDOR_FROM_DATABASE=DragonRise Inc. + + usb:v0079p0006* +- ID_MODEL_FROM_DATABASE=Generic USB Joystick ++ ID_MODEL_FROM_DATABASE=PC TWIN SHOCK Gamepad + + usb:v0079p0011* + ID_MODEL_FROM_DATABASE=Gamepad +@@ -63,7 +69,7 @@ usb:v0204* + ID_VENDOR_FROM_DATABASE=Chipsbank Microelectronics Co., Ltd + + usb:v0204p6025* +- ID_MODEL_FROM_DATABASE=CBM2080 Flash drive controller ++ ID_MODEL_FROM_DATABASE=CBM2080 / CBM2090 Flash drive controller + + usb:v0204p6026* + ID_MODEL_FROM_DATABASE=CBM1180 Flash drive controller +@@ -263,6 +269,9 @@ usb:v03EBp2109* + usb:v03EBp210D* + ID_MODEL_FROM_DATABASE=XPLAIN evaluation kit (CDC ACM) + ++usb:v03EBp2110* ++ ID_MODEL_FROM_DATABASE=AVR JTAGICE3 Debugger and Programmer ++ + usb:v03EBp2122* + ID_MODEL_FROM_DATABASE=XMEGA-A1 Explained evaluation kit + +@@ -1001,6 +1010,9 @@ usb:v03F0p2505* + usb:v03F0p2512* + ID_MODEL_FROM_DATABASE=OfficeJet Pro L7300 + ++usb:v03F0p2514* ++ ID_MODEL_FROM_DATABASE=4-port hub ++ + usb:v03F0p2517* + ID_MODEL_FROM_DATABASE=LaserJet 2410 + +@@ -1376,6 +1388,9 @@ usb:v03F0p5111* + usb:v03F0p5211* + ID_MODEL_FROM_DATABASE=PhotoSmart 3300 series + ++usb:v03F0p5307* ++ ID_MODEL_FROM_DATABASE=v165w Stick ++ + usb:v03F0p5311* + ID_MODEL_FROM_DATABASE=OfficeJet 6300 + +@@ -2054,6 +2069,21 @@ usb:v0403p8A28* + usb:v0403p8A98* + ID_MODEL_FROM_DATABASE=TIAO Multi-Protocol Adapter + ++usb:v0403p8B28* ++ ID_MODEL_FROM_DATABASE=Alpermann+Velte TCI70 ++ ++usb:v0403p8B29* ++ ID_MODEL_FROM_DATABASE=Alpermann+Velte TC60 CLS ++ ++usb:v0403p8B2A* ++ ID_MODEL_FROM_DATABASE=Alpermann+Velte Rubidium Q1 ++ ++usb:v0403p8B2B* ++ ID_MODEL_FROM_DATABASE=Alpermann+Velte TCD ++ ++usb:v0403p8B2C* ++ ID_MODEL_FROM_DATABASE=Alpermann+Velte TCC70 ++ + usb:v0403p9133* + ID_MODEL_FROM_DATABASE=CallerID + +@@ -2156,6 +2186,9 @@ usb:v0403pC8BD* + usb:v0403pC8BE* + ID_MODEL_FROM_DATABASE=Alpermann+Velte Rubidium D1 + ++usb:v0403pC8BF* ++ ID_MODEL_FROM_DATABASE=Alpermann+Velte TC60 RLV ++ + usb:v0403pCC48* + ID_MODEL_FROM_DATABASE=Tactrix OpenPort 1.3 Mitsubishi + +@@ -2966,6 +2999,9 @@ usb:v040Ap4021* + usb:v040Ap4022* + ID_MODEL_FROM_DATABASE=1400 Digital Photo Printer + ++usb:v040Ap402E* ++ ID_MODEL_FROM_DATABASE=605 Photo Printer ++ + usb:v040Ap4034* + ID_MODEL_FROM_DATABASE=805 Photo Printer + +@@ -4949,6 +4985,9 @@ usb:v043Ep7001* + usb:v043Ep7013* + ID_MODEL_FROM_DATABASE=MP3 Player + ++usb:v043Ep70D7* ++ ID_MODEL_FROM_DATABASE=Mouse Scanner LSM-150 [LG Smart Scan Mouse] ++ + usb:v043Ep70F5* + ID_MODEL_FROM_DATABASE=External HDD + +@@ -5114,6 +5153,9 @@ usb:v044FpB203* + usb:v044FpB300* + ID_MODEL_FROM_DATABASE=Firestorm Dual Power + ++usb:v044FpB303* ++ ID_MODEL_FROM_DATABASE=FireStorm Dual Analog 2 ++ + usb:v044FpB304* + ID_MODEL_FROM_DATABASE=Firestorm Dual Power + +@@ -6437,6 +6479,9 @@ usb:v045Ep0772* + usb:v045Ep0779* + ID_MODEL_FROM_DATABASE=LifeCam HD-3000 + ++usb:v045Ep0780* ++ ID_MODEL_FROM_DATABASE=Comfort Curve Keyboard 3000 ++ + usb:v045Ep0797* + ID_MODEL_FROM_DATABASE=Optical Mouse 200 + +@@ -7313,6 +7358,9 @@ usb:v046DpC062* + usb:v046DpC063* + ID_MODEL_FROM_DATABASE=DELL Laser Mouse + ++usb:v046DpC064* ++ ID_MODEL_FROM_DATABASE=M110 corded optical mouse (M-B0001) ++ + usb:v046DpC066* + ID_MODEL_FROM_DATABASE=G9x Laser Mouse + +@@ -7331,6 +7379,9 @@ usb:v046DpC06B* + usb:v046DpC06C* + ID_MODEL_FROM_DATABASE=Optical Mouse + ++usb:v046DpC077* ++ ID_MODEL_FROM_DATABASE=M105 Optical Mouse ++ + usb:v046DpC101* + ID_MODEL_FROM_DATABASE=UltraX Media Remote + +@@ -7361,6 +7412,9 @@ usb:v046DpC125* + usb:v046DpC126* + ID_MODEL_FROM_DATABASE=Harmony Link + ++usb:v046DpC12B* ++ ID_MODEL_FROM_DATABASE=Harmony Touch Remote ++ + usb:v046DpC201* + ID_MODEL_FROM_DATABASE=WingMan Extreme Joystick with Throttle + +@@ -7448,6 +7502,12 @@ usb:v046DpC226* + usb:v046DpC227* + ID_MODEL_FROM_DATABASE=G15 Refresh Keyboard + ++usb:v046DpC228* ++ ID_MODEL_FROM_DATABASE=G19 Gaming Keyboard ++ ++usb:v046DpC229* ++ ID_MODEL_FROM_DATABASE=G19 Gaming Keyboard Macro Interface ++ + usb:v046DpC22A* + ID_MODEL_FROM_DATABASE=Gaming Keyboard G110 + +@@ -7466,6 +7526,18 @@ usb:v046DpC245* + usb:v046DpC246* + ID_MODEL_FROM_DATABASE=Gaming Mouse G300 + ++usb:v046DpC248* ++ ID_MODEL_FROM_DATABASE=G105 Gaming Keyboard ++ ++usb:v046DpC24A* ++ ID_MODEL_FROM_DATABASE=G600 Gaming Mouse ++ ++usb:v046DpC24D* ++ ID_MODEL_FROM_DATABASE=G710 Gaming Keyboard ++ ++usb:v046DpC24E* ++ ID_MODEL_FROM_DATABASE=G500s Laser Gaming Mouse ++ + usb:v046DpC281* + ID_MODEL_FROM_DATABASE=WingMan Force + +@@ -8543,6 +8615,9 @@ usb:v0480pA006* + usb:v0480pA007* + ID_MODEL_FROM_DATABASE=External Disk USB 3.0 + ++usb:v0480pA009* ++ ID_MODEL_FROM_DATABASE=Stor.E Basics ++ + usb:v0480pD010* + ID_MODEL_FROM_DATABASE=External Disk 3TB + +@@ -10814,6 +10889,9 @@ usb:v04A9p31E5* + usb:v04A9p31E6* + ID_MODEL_FROM_DATABASE=PowerShot SD940 IS DIGITAL ELPH / Digital IXUS 120 IS / IXY DIGITAL 220 IS + ++usb:v04A9p31E7* ++ ID_MODEL_FROM_DATABASE=SELPHY CP790 ++ + usb:v04A9p31EA* + ID_MODEL_FROM_DATABASE=EOS Rebel T2i / EOS 550D / EOS Kiss X4 + +@@ -10985,6 +11063,9 @@ usb:v04A9p325F* + usb:v04A9p3260* + ID_MODEL_FROM_DATABASE=PowerShot SX270 HS + ++usb:v04A9p3262* ++ ID_MODEL_FROM_DATABASE=PowerShot A2600 ++ + usb:v04A9p3264* + ID_MODEL_FROM_DATABASE=PowerShot A1400 + +@@ -11000,6 +11081,9 @@ usb:v04A9p3271* + usb:v04A9p3276* + ID_MODEL_FROM_DATABASE=PowerShot SX170 IS + ++usb:v04A9p3277* ++ ID_MODEL_FROM_DATABASE=PowerShot SX510 HS ++ + usb:v04A9p327D* + ID_MODEL_FROM_DATABASE=Powershot ELPH 115 IS / IXUS 132 + +@@ -11312,6 +11396,9 @@ usb:v04B3p4482* + usb:v04B3p4485* + ID_MODEL_FROM_DATABASE=Serial Converter + ++usb:v04B3p4524* ++ ID_MODEL_FROM_DATABASE=40 Character Vacuum Fluorescent Display ++ + usb:v04B3p4525* + ID_MODEL_FROM_DATABASE=Double sided CRT + +@@ -12335,6 +12422,9 @@ usb:v04C5p10FE* + usb:v04C5p1150* + ID_MODEL_FROM_DATABASE=fi-6230 + ++usb:v04C5p201D* ++ ID_MODEL_FROM_DATABASE=SATA 3.0 6Gbit/s Adaptor [GROOVY] ++ + usb:v04C6* + ID_VENDOR_FROM_DATABASE=Toshiba America Electronic Components + +@@ -12374,6 +12464,9 @@ usb:v04C8p072D* + usb:v04CA* + ID_VENDOR_FROM_DATABASE=Lite-On Technology Corp. + ++usb:v04CAp004F* ++ ID_MODEL_FROM_DATABASE=SK-9020 keyboard ++ + usb:v04CAp1766* + ID_MODEL_FROM_DATABASE=HID Monitor Controls + +@@ -13346,6 +13439,9 @@ usb:v04E6p5292* + usb:v04E6p5410* + ID_MODEL_FROM_DATABASE=SCR35xx Smart Card Reader + ++usb:v04E6p5591* ++ ID_MODEL_FROM_DATABASE=SCL3711-NFC&RW ++ + usb:v04E6pE000* + ID_MODEL_FROM_DATABASE=SCRx31 Reader + +@@ -14138,6 +14234,9 @@ usb:v04F2p0841* + usb:v04F2p0860* + ID_MODEL_FROM_DATABASE=2.4G Multimedia Wireless Kit + ++usb:v04F2p1121* ++ ID_MODEL_FROM_DATABASE=Periboard 717 Mini Wireless Keyboard ++ + usb:v04F2pA001* + ID_MODEL_FROM_DATABASE=E-Video DC-100 Camera + +@@ -28935,10 +29034,10 @@ usb:v0906* + ID_VENDOR_FROM_DATABASE=Faraday Technology Corp. + + usb:v0908* +- ID_VENDOR_FROM_DATABASE=ShenZhen SANZHAI Technology Co.,Ltd ++ ID_VENDOR_FROM_DATABASE=Siemens AG + + usb:v0908p2701* +- ID_MODEL_FROM_DATABASE=Spy Pen VGA ++ ID_MODEL_FROM_DATABASE=ShenZhen SANZHAI Technology Co.,Ltd Spy Pen VGA + + usb:v0909* + ID_VENDOR_FROM_DATABASE=Audio-Technica Corp. +@@ -38360,6 +38459,12 @@ usb:v0FFC* + usb:v0FFCp0021* + ID_MODEL_FROM_DATABASE=Nord Stage 2 + ++usb:v0FFD* ++ ID_VENDOR_FROM_DATABASE=EarlySense ++ ++usb:v0FFDpFF00* ++ ID_MODEL_FROM_DATABASE=OEM ++ + usb:v0FFF* + ID_VENDOR_FROM_DATABASE=Aopen, Inc. + +@@ -47762,6 +47867,12 @@ usb:v2237* + usb:v2237p4161* + ID_MODEL_FROM_DATABASE=eReader White + ++usb:v228D* ++ ID_VENDOR_FROM_DATABASE=8D Technologies inc. ++ ++usb:v228Dp0001* ++ ID_MODEL_FROM_DATABASE=Terminal Bike Key Reader ++ + usb:v22A6* + ID_VENDOR_FROM_DATABASE=Pie Digital, Inc. + +-- +1.7.9.2 + diff --git a/0001-initrd-parse-etc.service-ignore-return-code-of-daemo.patch b/0001-initrd-parse-etc.service-ignore-return-code-of-daemo.patch new file mode 100644 index 00000000..722f7382 --- /dev/null +++ b/0001-initrd-parse-etc.service-ignore-return-code-of-daemo.patch @@ -0,0 +1,29 @@ +From f3b8fbb1da6519e14985ea444f8304673d20ad3f Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Wed, 3 Sep 2014 13:28:31 +0200 +Subject: [PATCH] initrd-parse-etc.service: ignore return code of + daemon-reload + +It seems the return code of systemctl daemon-reload can be !=0 in some +circumstances, which causes a failure of the unit and breaks booting in +the initrd. +--- + units/initrd-parse-etc.service.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git units/initrd-parse-etc.service.in units/initrd-parse-etc.service.in +index c0b2543..42c059b 100644 +--- units/initrd-parse-etc.service.in ++++ units/initrd-parse-etc.service.in +@@ -16,7 +16,7 @@ ConditionPathExists=/etc/initrd-release + + [Service] + Type=oneshot +-ExecStartPre=@rootbindir@/systemctl daemon-reload ++ExecStartPre=-@rootbindir@/systemctl daemon-reload + # we have to retrigger initrd-fs.target after daemon-reload + ExecStart=-@rootbindir@/systemctl --no-block start initrd-fs.target + ExecStart=@rootbindir@/systemctl --no-block start initrd-cleanup.service +-- +1.7.9.2 + diff --git a/0001-journal-Do-not-count-on-the-compiler-initializing-fo.patch b/0001-journal-Do-not-count-on-the-compiler-initializing-fo.patch new file mode 100644 index 00000000..1cf00ff0 --- /dev/null +++ b/0001-journal-Do-not-count-on-the-compiler-initializing-fo.patch @@ -0,0 +1,30 @@ +From e8c108ca9f11a382742f212f5b42a02536b3d40f Mon Sep 17 00:00:00 2001 +From: Philippe De Swert +Date: Wed, 17 Sep 2014 00:27:16 +0300 +Subject: [PATCH] journal: Do not count on the compiler initializing + found_last to false + +There is a very unlikely case where this can happen since gcc usually +does the sane thing. But let's make sure found_last is initialized anyway. + +Fixes: CID#996386 +--- + src/journal/journal-verify.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/journal/journal-verify.c src/journal/journal-verify.c +index 6c8ca8c..b4e8f73 100644 +--- src/journal/journal-verify.c ++++ src/journal/journal-verify.c +@@ -804,7 +804,7 @@ int journal_file_verify( + usec_t last_usec = 0; + int data_fd = -1, entry_fd = -1, entry_array_fd = -1; + unsigned i; +- bool found_last; ++ bool found_last = false; + #ifdef HAVE_GCRYPT + uint64_t last_tag = 0; + #endif +-- +1.7.9.2 + diff --git a/0001-journal-cleanup-up-error-handling-in-update_catalog.patch b/0001-journal-cleanup-up-error-handling-in-update_catalog.patch new file mode 100644 index 00000000..2062149b --- /dev/null +++ b/0001-journal-cleanup-up-error-handling-in-update_catalog.patch @@ -0,0 +1,104 @@ +From e3b9d9c8027a7c4c55cf1614e0fe9423fad69e8f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Fri, 11 Apr 2014 08:44:55 -0400 +Subject: [PATCH] journal: cleanup up error handling in update_catalog() + +- Negative/positive errno mixup caused duplicates not to be detected properly. + Now we get a warning about some duplicate entries in our own catalogs... +- Errors in update_catalog would be ignored, but they should not be. +--- + src/journal/catalog.c | 25 +++++++++++++------------ + src/journal/test-catalog.c | 3 ++- + 2 files changed, 15 insertions(+), 13 deletions(-) + +diff --git src/journal/catalog.c src/journal/catalog.c +index 3ed0b7e..02dedc4 100644 +--- src/journal/catalog.c ++++ src/journal/catalog.c +@@ -103,7 +103,7 @@ static int finish_item( + const char *payload) { + + ssize_t offset; +- CatalogItem *i; ++ _cleanup_free_ CatalogItem *i = NULL; + int r; + + assert(h); +@@ -126,13 +126,14 @@ static int finish_item( + i->offset = htole64((uint64_t) offset); + + r = hashmap_put(h, i, i); +- if (r == EEXIST) { ++ if (r == -EEXIST) { + log_warning("Duplicate entry for " SD_ID128_FORMAT_STR ".%s, ignoring.", + SD_ID128_FORMAT_VAL(id), language ? language : "C"); +- free(i); + return 0; +- } ++ } else if (r < 0) ++ return r; + ++ i = NULL; + return 0; + } + +@@ -383,8 +384,8 @@ error: + int catalog_update(const char* database, const char* root, const char* const* dirs) { + _cleanup_strv_free_ char **files = NULL; + char **f; +- Hashmap *h; + struct strbuf *sb = NULL; ++ _cleanup_hashmap_free_free_ Hashmap *h = NULL; + _cleanup_free_ CatalogItem *items = NULL; + CatalogItem *i; + Iterator j; +@@ -406,13 +407,17 @@ int catalog_update(const char* database, const char* root, const char* const* di + } + + STRV_FOREACH(f, files) { +- log_debug("reading file '%s'", *f); +- catalog_import_file(h, sb, *f); ++ log_debug("Reading file '%s'", *f); ++ r = catalog_import_file(h, sb, *f); ++ if (r < 0) { ++ log_error("Failed to import file '%s': %s.", ++ *f, strerror(-r)); ++ goto finish; ++ } + } + + if (hashmap_size(h) <= 0) { + log_info("No items in catalog."); +- r = 0; + goto finish; + } else + log_debug("Found %u items in catalog.", hashmap_size(h)); +@@ -443,11 +448,7 @@ int catalog_update(const char* database, const char* root, const char* const* di + log_debug("%s: wrote %u items, with %zu bytes of strings, %ld total size.", + database, n, sb->len, r); + +- r = 0; +- + finish: +- if (h) +- hashmap_free_free(h); + if (sb) + strbuf_cleanup(sb); + +diff --git src/journal/test-catalog.c src/journal/test-catalog.c +index b087a8b..967ab67 100644 +--- src/journal/test-catalog.c ++++ src/journal/test-catalog.c +@@ -157,7 +157,8 @@ int main(int argc, char *argv[]) { + + setlocale(LC_ALL, "de_DE.UTF-8"); + +- log_set_max_level(LOG_DEBUG); ++ log_parse_environment(); ++ log_open(); + + test_catalog_file_lang(); + +-- +1.7.9.2 + diff --git a/0001-journal-compress-return-early-in-uncompress_startswi.patch b/0001-journal-compress-return-early-in-uncompress_startswi.patch new file mode 100644 index 00000000..74777205 --- /dev/null +++ b/0001-journal-compress-return-early-in-uncompress_startswi.patch @@ -0,0 +1,186 @@ +Based on 5e592c66bdf76dfc8445b332f7a5088ca504ee90 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Fri, 4 Jul 2014 19:53:58 -0400 +Subject: [PATCH] journal/compress: return early in uncompress_startswith + +uncompress_startswith would always decode the whole stream, even +if it did not start with the given prefix. + +Reallocation policy was also strange. +--- + src/journal/compress.c | 91 ++++++++++++++----------------------------------- + 1 file changed, 27 insertions(+), 64 deletions(-) + +Index: src/journal/compress.c +=================================================================== +--- src/journal/compress.c.orig ++++ src/journal/compress.c +@@ -25,6 +25,7 @@ + #include + + #include "macro.h" ++#include "util.h" + #include "compress.h" + + bool compress_blob(const void *src, uint64_t src_size, void *dst, uint64_t *dst_size) { +@@ -69,10 +70,9 @@ fail: + bool uncompress_blob(const void *src, uint64_t src_size, + void **dst, uint64_t *dst_alloc_size, uint64_t* dst_size, uint64_t dst_max) { + +- lzma_stream s = LZMA_STREAM_INIT; ++ _cleanup_(lzma_end) lzma_stream s = LZMA_STREAM_INIT; + lzma_ret ret; + uint64_t space; +- bool b = false; + + assert(src); + assert(src_size > 0); +@@ -85,26 +85,18 @@ bool uncompress_blob(const void *src, ui + if (ret != LZMA_OK) + return false; + +- if (*dst_alloc_size <= src_size) { +- void *p; +- +- p = realloc(*dst, src_size*2); +- if (!p) +- return false; +- +- *dst = p; +- *dst_alloc_size = src_size*2; +- } ++ space = MIN(src_size * 2, dst_max ?: (uint64_t) -1); ++ if (!greedy_realloc(dst, dst_alloc_size, space)) ++ return false; + + s.next_in = src; + s.avail_in = src_size; + + s.next_out = *dst; +- space = dst_max > 0 ? MIN(*dst_alloc_size, dst_max) : *dst_alloc_size; + s.avail_out = space; + + for (;;) { +- void *p; ++ uint64_t used; + + ret = lzma_code(&s, LZMA_FINISH); + +@@ -112,31 +104,25 @@ bool uncompress_blob(const void *src, ui + break; + + if (ret != LZMA_OK) +- goto fail; ++ return false; + + if (dst_max > 0 && (space - s.avail_out) >= dst_max) + break; + +- p = realloc(*dst, space*2); +- if (!p) +- goto fail; +- +- s.next_out = (uint8_t*) p + ((uint8_t*) s.next_out - (uint8_t*) *dst); +- s.avail_out += space; ++ if (dst_max > 0 && space == dst_max) ++ return false; + +- space *= 2; ++ used = space - s.avail_out; ++ space = MIN(2 * space, dst_max ?: (uint64_t) -1); ++ if (!greedy_realloc(dst, dst_alloc_size, space)) ++ return false; + +- *dst = p; +- *dst_alloc_size = space; ++ s.avail_out = space - used; ++ s.next_out = *dst + used; + } + + *dst_size = space - s.avail_out; +- b = true; +- +-fail: +- lzma_end(&s); +- +- return b; ++ return true; + } + + bool uncompress_startswith(const void *src, uint64_t src_size, +@@ -144,9 +130,8 @@ bool uncompress_startswith(const void *s + const void *prefix, uint64_t prefix_len, + uint8_t extra) { + +- lzma_stream s = LZMA_STREAM_INIT; ++ _cleanup_(lzma_end) lzma_stream s = LZMA_STREAM_INIT; + lzma_ret ret; +- bool b = false; + + /* Checks whether the uncompressed blob starts with the + * mentioned prefix. The byte extra needs to follow the +@@ -163,16 +148,8 @@ bool uncompress_startswith(const void *s + if (ret != LZMA_OK) + return false; + +- if (*buffer_size <= prefix_len) { +- void *p; +- +- p = realloc(*buffer, prefix_len*2); +- if (!p) +- return false; +- +- *buffer = p; +- *buffer_size = prefix_len*2; +- } ++ if (!(greedy_realloc(buffer, buffer_size, prefix_len + 1))) ++ return false; + + s.next_in = src; + s.avail_in = src_size; +@@ -181,36 +158,23 @@ bool uncompress_startswith(const void *s + s.avail_out = *buffer_size; + + for (;;) { +- void *p; +- + ret = lzma_code(&s, LZMA_FINISH); + + if (ret != LZMA_STREAM_END && ret != LZMA_OK) +- goto fail; ++ return false; + +- if ((*buffer_size - s.avail_out > prefix_len) && +- memcmp(*buffer, prefix, prefix_len) == 0 && +- ((const uint8_t*) *buffer)[prefix_len] == extra) +- break; ++ if (*buffer_size - s.avail_out >= prefix_len + 1) ++ return memcmp(*buffer, prefix, prefix_len) == 0 && ++ ((const uint8_t*) *buffer)[prefix_len] == extra; + + if (ret == LZMA_STREAM_END) +- goto fail; +- +- p = realloc(*buffer, *buffer_size*2); +- if (!p) +- goto fail; ++ return false; + +- s.next_out = (uint8_t*) p + ((uint8_t*) s.next_out - (uint8_t*) *buffer); + s.avail_out += *buffer_size; + +- *buffer = p; +- *buffer_size *= 2; +- } +- +- b = true; +- +-fail: +- lzma_end(&s); ++ if (!(greedy_realloc(buffer, buffer_size, *buffer_size * 2))) ++ return false; + +- return b; ++ s.next_out = *buffer + *buffer_size - s.avail_out; ++ } + } diff --git a/0001-journal-fix-export-of-messages-containing-newlines.patch b/0001-journal-fix-export-of-messages-containing-newlines.patch new file mode 100644 index 00000000..75cdd023 --- /dev/null +++ b/0001-journal-fix-export-of-messages-containing-newlines.patch @@ -0,0 +1,80 @@ +From 0ade5ffe2778e7b238bba8d979ca4d53dee1e702 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Mon, 31 Mar 2014 08:57:28 -0400 +Subject: [PATCH] journal: fix export of messages containing newlines + +In "export" format, newlines are significant, and messages containing +newlines must be exported as "binary". +--- + src/shared/logs-show.c | 7 ++++--- + src/shared/utf8.c | 5 +++-- + src/shared/utf8.h | 5 ++++- + 3 files changed, 11 insertions(+), 6 deletions(-) + +diff --git src/shared/logs-show.c src/shared/logs-show.c +index 9d14933..b0b66f6 100644 +--- src/shared/logs-show.c ++++ src/shared/logs-show.c +@@ -547,7 +547,9 @@ static int output_export( + startswith(data, "_BOOT_ID=")) + continue; + +- if (!utf8_is_printable(data, length)) { ++ if (utf8_is_printable_newline(data, length, false)) ++ fwrite(data, length, 1, f); ++ else { + const char *c; + uint64_t le64; + +@@ -562,8 +564,7 @@ static int output_export( + le64 = htole64(length - (c - (const char*) data) - 1); + fwrite(&le64, sizeof(le64), 1, f); + fwrite(c + 1, length - (c - (const char*) data) - 1, 1, f); +- } else +- fwrite(data, length, 1, f); ++ } + + fputc('\n', f); + } +diff --git src/shared/utf8.c src/shared/utf8.c +index 0b524d8..c559c13 100644 +--- src/shared/utf8.c ++++ src/shared/utf8.c +@@ -136,7 +136,7 @@ int utf8_encoded_to_unichar(const char *str) { + return unichar; + } + +-bool utf8_is_printable(const char* str, size_t length) { ++bool utf8_is_printable_newline(const char* str, size_t length, bool newline) { + const uint8_t *p; + + assert(str); +@@ -145,7 +145,8 @@ bool utf8_is_printable(const char* str, size_t length) { + int encoded_len = utf8_encoded_valid_unichar((const char *)p); + int val = utf8_encoded_to_unichar((const char*)p); + +- if (encoded_len < 0 || val < 0 || is_unicode_control(val)) ++ if (encoded_len < 0 || val < 0 || is_unicode_control(val) || ++ (!newline && val == '\n')) + return false; + + length -= encoded_len; +diff --git src/shared/utf8.h src/shared/utf8.h +index c0eb73a..c087995 100644 +--- src/shared/utf8.h ++++ src/shared/utf8.h +@@ -31,7 +31,10 @@ const char *utf8_is_valid(const char *s) _pure_; + char *ascii_is_valid(const char *s) _pure_; + char *utf8_escape_invalid(const char *s); + +-bool utf8_is_printable(const char* str, size_t length) _pure_; ++bool utf8_is_printable_newline(const char* str, size_t length, bool newline) _pure_; ++_pure_ static inline bool utf8_is_printable(const char* str, size_t length) { ++ return utf8_is_printable_newline(str, length, true); ++} + + char *utf16_to_utf8(const void *s, size_t length); + +-- +1.7.9.2 + diff --git a/0001-journalctl-do-not-output-reboot-markers-when-running.patch b/0001-journalctl-do-not-output-reboot-markers-when-running.patch new file mode 100644 index 00000000..b2aed874 --- /dev/null +++ b/0001-journalctl-do-not-output-reboot-markers-when-running.patch @@ -0,0 +1,27 @@ +From 4bed248505da4da94d82078fe60326a374970e97 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Fri, 26 Sep 2014 10:49:55 -0400 +Subject: [PATCH] journalctl: do not output --reboot-- markers when running + non-interactively + +They are not legal in the export format. +--- + src/journal/journalctl.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/journal/journalctl.c src/journal/journalctl.c +index 47206d3..89a922c 100644 +--- src/journal/journalctl.c ++++ src/journal/journalctl.c +@@ -1939,7 +1939,7 @@ int main(int argc, char *argv[]) { + goto finish; + } + +- if (!arg_merge) { ++ if (!arg_merge && !arg_quiet) { + sd_id128_t boot_id; + + r = sd_journal_get_monotonic_usec(j, NULL, &boot_id); +-- +1.7.9.2 + diff --git a/0001-keymap-Add-Lenovo-Enhanced-USB-Keyboard.patch b/0001-keymap-Add-Lenovo-Enhanced-USB-Keyboard.patch new file mode 100644 index 00000000..09bd55ef --- /dev/null +++ b/0001-keymap-Add-Lenovo-Enhanced-USB-Keyboard.patch @@ -0,0 +1,36 @@ +From d258d4967eb24122c2b1014d4e873f61b633f1d2 Mon Sep 17 00:00:00 2001 +From: Martin Pitt +Date: Sun, 25 May 2014 11:57:22 +0200 +Subject: [PATCH] keymap: Add Lenovo Enhanced USB Keyboard + +https://bugs.freedesktop.org/show_bug.cgi?id=77234 +--- + hwdb/60-keyboard.hwdb | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index 832c686..fe5b3ee 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -579,6 +579,18 @@ keyboard:dmi:bvn*:bvr*:svnLENOVO*:pn*IdeaPad*Z370*:pvr* + keyboard:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*Lenovo*V480*:pvr* + KEYBOARD_KEY_f1=f21 + ++# enhanced USB keyboard ++keyboard:usb:v04B3p301B* ++ KEYBOARD_KEY_90001=prog1 # ThinkVantage ++ KEYBOARD_KEY_90002=screenlock ++ KEYBOARD_KEY_90003=file ++ KEYBOARD_KEY_90004=wordprocessor ++ KEYBOARD_KEY_90005=spreadsheet ++ KEYBOARD_KEY_90006=calc ++ KEYBOARD_KEY_90007=mail ++ KEYBOARD_KEY_90008=www ++ ++ + ########################################################### + # Logitech + ########################################################### +-- +1.7.9.2 + diff --git a/0001-keymap-Add-support-for-IBM-ThinkPad-X41-Tablet.patch b/0001-keymap-Add-support-for-IBM-ThinkPad-X41-Tablet.patch new file mode 100644 index 00000000..67fb3061 --- /dev/null +++ b/0001-keymap-Add-support-for-IBM-ThinkPad-X41-Tablet.patch @@ -0,0 +1,38 @@ +From 71ed2d38711e345f22e2200bc7bb156aed98972a Mon Sep 17 00:00:00 2001 +From: Bastien Nocera +Date: Wed, 12 Nov 2014 23:30:46 +0100 +Subject: [PATCH] keymap: Add support for IBM ThinkPad X41 Tablet + +Scancode taken from: +http://www.thinkwiki.org/wiki/Tablet_Hardware_Buttons#Linux_Support + +William Jon McCann provided the DMI match. IBM seems to have +swapped the version and model of the system: + Manufacturer: IBM + Product Name: 18666TU + Version: ThinkPad X41 Tablet +--- + hwdb/60-keyboard.hwdb | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index d2ca965..56a4009 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -594,6 +594,13 @@ keyboard:dmi:bvn*:bvr*:bd*:svnLENOVO*:pnThinkPad*X6*:pvr* + KEYBOARD_KEY_6f=down # down on d-pad + KEYBOARD_KEY_69=enter # enter on d-pad + ++# ThinkPad X41 Tablet ++keyboard:dmi:bvn*:bvr*:bd*:svnIBM*:pn18666TU:pvr* ++ KEYBOARD_KEY_6c=direction # rotate ++ KEYBOARD_KEY_68=f13 # toolbox ++ KEYBOARD_KEY_6b=esc # escape ++ KEYBOARD_KEY_69=enter # enter on d-pad ++ + # IdeaPad + keyboard:name:Ideapad extra buttons:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn* + KEYBOARD_KEY_42=f23 +-- +1.7.9.2 + diff --git a/0001-keymap-Fix-touchpad-toggle-on-Toshiba-Satellite-P75-.patch b/0001-keymap-Fix-touchpad-toggle-on-Toshiba-Satellite-P75-.patch new file mode 100644 index 00000000..29bbbcd1 --- /dev/null +++ b/0001-keymap-Fix-touchpad-toggle-on-Toshiba-Satellite-P75-.patch @@ -0,0 +1,27 @@ +From a046659f8551e1c8f79ba4b66472444e285255df Mon Sep 17 00:00:00 2001 +From: Martin Pitt +Date: Tue, 7 Oct 2014 11:20:04 +0200 +Subject: [PATCH] keymap: Fix touchpad toggle on Toshiba Satellite P75-A7200 + +Just like everywhere else we use KEY_F21 instead of KEY_TOUCHPAD_TOGGLE for X +friendliness. +--- + hwdb/60-keyboard.hwdb | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index 8a1baa7..1fea32a 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -1094,7 +1094,7 @@ keyboard:name:Toshiba*input*device:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnSatellite*P75 + KEYBOARD_KEY_13c=brightnessdown + KEYBOARD_KEY_13d=brightnessup + KEYBOARD_KEY_13e=switchvideomode +- KEYBOARD_KEY_13f=touchpad_toggle ++ KEYBOARD_KEY_13f=f21 # Touchpad toggle + KEYBOARD_KEY_9e=wlan + + ########################################################### +-- +1.7.9.2 + diff --git a/0001-let-systemctl-completion-ignore-at-names.patch b/0001-let-systemctl-completion-ignore-at-names.patch index 4763dcaf..ea89c56a 100644 --- a/0001-let-systemctl-completion-ignore-at-names.patch +++ b/0001-let-systemctl-completion-ignore-at-names.patch @@ -1,5 +1,5 @@ ---- systemd-210/shell-completion/bash/systemctl.in -+++ systemd-210/shell-completion/bash/systemctl.in 2014-08-20 15:01:04.502736981 +0000 +--- systemd-210/shell-completion/bash/systemctl ++++ systemd-210/shell-completion/bash/systemctl 2014-08-20 15:01:04.502736981 +0000 @@ -43,7 +43,7 @@ __filter_units_by_property () { local units=("$@") local props diff --git a/0001-login-fix-memory-leak-on-DropController.patch b/0001-login-fix-memory-leak-on-DropController.patch new file mode 100644 index 00000000..ba5ed744 --- /dev/null +++ b/0001-login-fix-memory-leak-on-DropController.patch @@ -0,0 +1,36 @@ +From 60240797a4ce464ec7a0537ccbec4c83f599251c Mon Sep 17 00:00:00 2001 +From: David Herrmann +Date: Fri, 22 Aug 2014 14:57:11 +0200 +Subject: [PATCH] login: fix memory-leak on DropController() + +Our bus-name watch helpers only remove a bus-name if it's not a +controller, anymore. If we call manager_drop_busname() before +unregistering the controller, the busname will not be dropped. Therefore, +first drop the controller, then drop the bus-name. +--- + src/login/logind-session.c | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git src/login/logind-session.c src/login/logind-session.c +index 136bbce..0c6e425 100644 +--- src/login/logind-session.c ++++ src/login/logind-session.c +@@ -1061,11 +1061,13 @@ bool session_is_controller(Session *s, const char *sender) { + + static void session_swap_controller(Session *s, char *name) { + SessionDevice *sd; ++ char *c; + + if (s->controller) { +- manager_drop_busname(s->manager, s->controller); +- free(s->controller); ++ c = s->controller; + s->controller = NULL; ++ manager_drop_busname(s->manager, c); ++ free(c); + + /* Drop all devices as they're now unused. Do that after the + * controller is released to avoid sending out useles +-- +1.7.9.2 + diff --git a/0001-login-fix-pos-array-allocation.patch b/0001-login-fix-pos-array-allocation.patch new file mode 100644 index 00000000..2549d220 --- /dev/null +++ b/0001-login-fix-pos-array-allocation.patch @@ -0,0 +1,52 @@ +From a1937e679f76758635d295287398abe526de2522 Mon Sep 17 00:00:00 2001 +From: David Herrmann +Date: Tue, 25 Feb 2014 12:20:25 +0100 +Subject: [PATCH] login: fix pos-array allocation + +GREEDY_REALLOC takes a pointer to the real size, not the array-width as +argument. Therefore, our array is currently way to small to keep the seat +positions. + +Introduce GREEDY_REALLOC0_T() as typed version of GREEDY_REALLOC and store +the array-width instead of array-size. +--- + src/login/logind-seat.c | 2 +- + src/shared/util.h | 9 +++++++++ + 2 files changed, 10 insertions(+), 1 deletion(-) + +diff --git src/login/logind-seat.c src/login/logind-seat.c +index 631be5f..36ec7ed 100644 +--- src/login/logind-seat.c ++++ src/login/logind-seat.c +@@ -475,7 +475,7 @@ void seat_claim_position(Seat *s, Session *session, unsigned int pos) { + if (seat_has_vts(s)) + pos = session->vtnr; + +- if (!GREEDY_REALLOC0(s->positions, s->position_count, pos + 1)) ++ if (!GREEDY_REALLOC0_T(s->positions, s->position_count, pos + 1)) + return; + + seat_evict_position(s, session); +diff --git src/shared/util.h src/shared/util.h +index 9913fce..78b1444 100644 +--- src/shared/util.h ++++ src/shared/util.h +@@ -723,6 +723,15 @@ void* greedy_realloc0(void **p, size_t *allocated, size_t need); + #define GREEDY_REALLOC0(array, allocated, need) \ + greedy_realloc0((void**) &(array), &(allocated), sizeof((array)[0]) * (need)) + ++#define GREEDY_REALLOC0_T(array, count, need) \ ++ ({ \ ++ size_t _size = (count) * sizeof((array)[0]); \ ++ void *_ptr = GREEDY_REALLOC0((array), _size, (need)); \ ++ if (_ptr) \ ++ (count) = _size / sizeof((array)[0]); \ ++ _ptr; \ ++ }) ++ + static inline void _reset_errno_(int *saved_errno) { + errno = *saved_errno; + } +-- +1.7.9.2 + diff --git a/0001-login-pause-devices-before-acknowledging-VT-switches.patch b/0001-login-pause-devices-before-acknowledging-VT-switches.patch new file mode 100644 index 00000000..0a335de2 --- /dev/null +++ b/0001-login-pause-devices-before-acknowledging-VT-switches.patch @@ -0,0 +1,82 @@ +Based on 2ec3ff668ff03410e94cfef8e3ee9384a8222211 Mon Sep 17 00:00:00 2001 +From: David Herrmann +Date: Fri, 19 Sep 2014 13:26:39 +0200 +Subject: [PATCH] login: pause devices before acknowledging VT switches + +If a session controller does not need synchronous VT switches, we allow +them to pass VT control to logind, which acknowledges all VT switches +unconditionally. This works fine with all sessions using the dbus API, +but causes out-of-sync device use if we switch to legacy sessions that +are notified via VT signals. Those are processed before logind notices +the session-switch via sysfs. Therefore, leaving the old session still +active for a short amount of time. + +This, in fact, may cause the legacy session to prepare graphics devices +before the old session was deactivated, and thus, maybe causing the old +session to interfer with graphics device usage. + +Fix this by releasing devices immediately before acknowledging VT +switches. This way, sessions without VT handlers are required to support +async session switching (which they do in that case, anyway). +--- + src/login/logind-session.c | 21 +++++++++++++++++++++ + src/login/logind-session.h | 1 + + src/login/logind.c | 4 ++-- + 3 files changed, 24 insertions(+), 2 deletions(-) + +--- src/login/logind-session.c ++++ src/login/logind-session.c 2014-09-24 07:40:45.786639180 +0000 +@@ -1040,6 +1040,27 @@ void session_restore_vt(Session *s) { + s->vtfd = -1; + } + ++void session_leave_vt(Session *s) { ++ assert(s); ++ ++ /* This is called whenever we get a VT-switch signal from the kernel. ++ * We acknowledge all of them unconditionally. Note that session are ++ * free to overwrite those handlers and we only register them for ++ * sessions with controllers. Legacy sessions are not affected. ++ * However, if we switch from a non-legacy to a legacy session, we must ++ * make sure to pause all device before acknowledging the switch. We ++ * process the real switch only after we are notified via sysfs, so the ++ * legacy session might have already started using the devices. If we ++ * don't pause the devices before the switch, we might confuse the ++ * session we switch to. */ ++ ++ if (s->vtfd < 0) ++ return; ++ ++ session_device_pause_all(s); ++ ioctl(s->vtfd, VT_RELDISP, 1); ++} ++ + bool session_is_controller(Session *s, const char *sender) { + assert(s); + +--- src/login/logind-session.h ++++ src/login/logind-session.h 2014-09-24 07:41:50.290236363 +0000 +@@ -173,6 +173,7 @@ KillWho kill_who_from_string(const char + + int session_mute_vt(Session *s); + void session_restore_vt(Session *s); ++void session_leave_vt(Session *s); + + bool session_is_controller(Session *s, const char *sender); + int session_set_controller(Session *s, const char *sender, bool force); +--- src/login/logind.c ++++ src/login/logind.c 2014-09-24 00:00:00.000000000 +0000 +@@ -743,11 +743,11 @@ static int manager_vt_switch(sd_event_so + } + + if (active->vtfd >= 0) { +- ioctl(active->vtfd, VT_RELDISP, 1); ++ session_leave_vt(active); + } else { + LIST_FOREACH(sessions_by_seat, iter, m->seat0->sessions) { + if (iter->vtnr == active->vtnr && iter->vtfd >= 0) { +- ioctl(iter->vtfd, VT_RELDISP, 1); ++ session_leave_vt(iter); + break; + } + } diff --git a/0001-login-rerun-vconsole-setup-when-switching-from-vgaco.patch b/0001-login-rerun-vconsole-setup-when-switching-from-vgaco.patch new file mode 100644 index 00000000..ba00c036 --- /dev/null +++ b/0001-login-rerun-vconsole-setup-when-switching-from-vgaco.patch @@ -0,0 +1,60 @@ +From f6ba8671d83f9fce9a00045d8fa399a1c07ba7fc Mon Sep 17 00:00:00 2001 +From: Ray Strode +Date: Wed, 5 Nov 2014 08:30:52 -0500 +Subject: [PATCH] login: rerun vconsole-setup when switching from vgacon to + fbcon + +The initialization performed by systemd-vconsole-setup is reset +when changing console drivers (say from vgacon to fbcon), so we +need to run it in that case. + +See +http://lists.freedesktop.org/archives/systemd-devel/2014-October/023919.html +http://lists.freedesktop.org/archives/systemd-devel/2014-October/024423.html +http://lists.freedesktop.org/archives/systemd-devel/2014-November/024881.html + +This commit adds a udev rule to make systemd-vconsole-setup get run when +the fbcon device becomes available. + +(david: moved into new file 90-vconsole.rules instead of 71-seats.rules; + build-failures are on me, not on Ray) +--- + Makefile.am | 3 +++ + src/vconsole/90-vconsole.rules | 11 +++++++++++ + 2 files changed, 14 insertions(+) + create mode 100644 src/vconsole/90-vconsole.rules + +diff --git Makefile.am Makefile.am +index 3686103..f614b86 100644 +--- Makefile.am ++++ Makefile.am +@@ -4439,6 +4439,9 @@ rootlibexec_PROGRAMS += \ + nodist_systemunit_DATA += \ + units/systemd-vconsole-setup.service + ++dist_udevrules_DATA += \ ++ src/vconsole/90-vconsole.rules ++ + SYSINIT_TARGET_WANTS += \ + systemd-vconsole-setup.service + endif +diff --git src/vconsole/90-vconsole.rules src/vconsole/90-vconsole.rules +new file mode 100644 +index 0000000..bf6a9ef +--- /dev/null ++++ src/vconsole/90-vconsole.rules +@@ -0,0 +1,11 @@ ++# This file is part of systemd. ++# ++# systemd is free software; you can redistribute it and/or modify it ++# under the terms of the GNU Lesser General Public License as published by ++# the Free Software Foundation; either version 2.1 of the License, or ++# (at your option) any later version. ++ ++# Kernel resets vconsole state when changing console drivers so run ++# systemd-vconsole-setup when fbcon loads ++ ++ACTION=="add", SUBSYSTEM=="graphics", KERNEL=="fbcon", RUN+="/usr/lib/systemd/systemd-vconsole-setup" +-- +1.7.9.2 + diff --git a/0001-login-simplify-controller-handling.patch b/0001-login-simplify-controller-handling.patch new file mode 100644 index 00000000..0ca9ec52 --- /dev/null +++ b/0001-login-simplify-controller-handling.patch @@ -0,0 +1,118 @@ +Based on b12e56156e5f363ebb8dc4ea5c10f5fd0665dc9d Mon Sep 17 00:00:00 2001 +From: David Herrmann +Date: Mon, 1 Sep 2014 14:04:44 +0200 +Subject: [PATCH] login: simplify controller handling + +Simplify the way we handler session-controllers and fix several +shortcomings: + * send ReleaseDevice() signals on forced session takeover + * fix mem-leaks for busnames in case VT preparation fails (non-critical) + * avoid passing pre-allocated names to helpers +--- + src/login/logind-session.c | 55 ++++++++++++++++++++++---------------------- + 1 file changed, 28 insertions(+), 27 deletions(-) + +diff --git src/login/logind-session.c src/login/logind-session.c +index 58453b5..10a43a4 100644 +--- src/login/logind-session.c ++++ src/login/logind-session.c +@@ -1059,32 +1059,30 @@ bool session_is_controller(Session *s, const char *sender) { + return streq_ptr(s->controller, sender); + } + +-static void session_swap_controller(Session *s, char *name) { ++static void session_release_controller(Session *s, bool notify) { ++ _cleanup_free_ char *name = NULL; + SessionDevice *sd; +- char *c; + +- if (s->controller) { +- c = s->controller; +- s->controller = NULL; +- manager_drop_busname(s->manager, c); +- free(c); ++ if (!s->controller) ++ return; + +- /* Drop all devices as they're now unused. Do that after the +- * controller is released to avoid sending out useles +- * dbus signals. */ +- while ((sd = hashmap_first(s->devices))) +- session_device_free(sd); ++ name = s->controller; + +- if (!name) +- session_restore_vt(s); +- } ++ /* By resetting the controller before releasing the devices, we won't ++ * send notification signals. This avoids sending useless notifications ++ * if the controller is released on disconnects. */ ++ if (!notify) ++ s->controller = NULL; + +- s->controller = name; +- session_save(s); ++ while ((sd = hashmap_first(s->devices))) ++ session_device_free(sd); ++ ++ s->controller = NULL; ++ manager_drop_busname(s->manager, name); + } + + int session_set_controller(Session *s, const char *sender, bool force) { +- char *t; ++ _cleanup_free_ char *name = NULL; + int r; + + assert(s); +@@ -1095,15 +1093,13 @@ int session_set_controller(Session *s, const char *sender, bool force) { + if (s->controller && !force) + return -EBUSY; + +- t = strdup(sender); +- if (!t) ++ name = strdup(sender); ++ if (!name) + return -ENOMEM; + +- r = manager_watch_busname(s->manager, sender); +- if (r) { +- free(t); ++ r = manager_watch_busname(s->manager, name); ++ if (r) + return r; +- } + + /* When setting a session controller, we forcibly mute the VT and set + * it into graphics-mode. Applications can override that by changing +@@ -1115,11 +1111,14 @@ int session_set_controller(Session *s, const char *sender, bool force) { + * or reset the VT in case it crashed/exited, too. */ + r = session_mute_vt(s); + if (r < 0) { +- free(t); ++ manager_drop_busname(s->manager, name); + return r; + } + +- session_swap_controller(s, t); ++ session_release_controller(s, true); ++ s->controller = name; ++ name = NULL; ++ session_save(s); + + return 0; + } +@@ -1130,7 +1129,9 @@ void session_drop_controller(Session *s) { + if (!s->controller) + return; + +- session_swap_controller(s, NULL); ++ session_release_controller(s, false); ++ session_save(s); ++ session_restore_vt(s); + } + + static const char* const session_state_table[_SESSION_STATE_MAX] = { +-- +1.7.9.2 + diff --git a/0001-logind-add-support-for-Triton2-Power-Button.patch b/0001-logind-add-support-for-Triton2-Power-Button.patch new file mode 100644 index 00000000..dbd0047c --- /dev/null +++ b/0001-logind-add-support-for-Triton2-Power-Button.patch @@ -0,0 +1,24 @@ +From 58d4aabedd415a735efeb8c2608ee73618c07f78 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Mon, 22 Sep 2014 22:14:39 -0400 +Subject: [PATCH] logind: add support for Triton2 Power Button + +https://bugs.freedesktop.org/show_bug.cgi?id=84201 +--- + src/login/70-power-switch.rules | 1 + + 1 file changed, 1 insertion(+) + +diff --git src/login/70-power-switch.rules src/login/70-power-switch.rules +index 36fb827..a6997f7 100644 +--- src/login/70-power-switch.rules ++++ src/login/70-power-switch.rules +@@ -9,5 +9,6 @@ ACTION=="remove", GOTO="power_switch_end" + + SUBSYSTEM=="input", KERNEL=="event*", SUBSYSTEMS=="acpi", TAG+="power-switch" + SUBSYSTEM=="input", KERNEL=="event*", KERNELS=="thinkpad_acpi", TAG+="power-switch" ++SUBSYSTEM=="input", KERNEL=="event*", ATTRS{name}=="twl4030_pwrbutton", TAG+="power-switch" + + LABEL="power_switch_end" +-- +1.7.9.2 + diff --git a/0001-logind-allow-switching-to-unused-VTs-via-SwitchTo.patch b/0001-logind-allow-switching-to-unused-VTs-via-SwitchTo.patch new file mode 100644 index 00000000..269adaba --- /dev/null +++ b/0001-logind-allow-switching-to-unused-VTs-via-SwitchTo.patch @@ -0,0 +1,37 @@ +From 154034270c4643b7cfe61c0be1676d78bb1b7b07 Mon Sep 17 00:00:00 2001 +From: David Herrmann +Date: Tue, 8 Jul 2014 12:56:55 +0200 +Subject: [PATCH] logind: allow switching to unused VTs via SwitchTo() + +If compositors use the new SwitchTo() logic to map F1-F12, we should allow +them to switch to unregistered VTs, too. Otherwise, the auto-spawn logic +of gettys won't trigger. + +Reported-by: Jasper St. Pierre +Signed-off-by: David Herrmann +--- + src/login/logind-seat.c | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git src/login/logind-seat.c src/login/logind-seat.c +index 3114de8..9992195 100644 +--- src/login/logind-seat.c ++++ src/login/logind-seat.c +@@ -275,8 +275,13 @@ int seat_switch_to(Seat *s, unsigned int num) { + if (!num) + return -EINVAL; + +- if (num >= s->position_count || !s->positions[num]) ++ if (num >= s->position_count || !s->positions[num]) { ++ /* allow switching to unused VTs to trigger auto-activate */ ++ if (seat_has_vts(s) && num < 64) ++ return chvt(num); ++ + return -EINVAL; ++ } + + return session_activate(s->positions[num]); + } +-- +1.7.9.2 + diff --git a/0001-logind-ignore-lid-switch-if-more-than-1-display-is-c.patch b/0001-logind-ignore-lid-switch-if-more-than-1-display-is-c.patch new file mode 100644 index 00000000..382d4bf1 --- /dev/null +++ b/0001-logind-ignore-lid-switch-if-more-than-1-display-is-c.patch @@ -0,0 +1,168 @@ +From 6a79c58603ea816a1b4fa1520397b4e138bc1ca0 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 3 Mar 2014 19:30:16 +0100 +Subject: [PATCH] logind: ignore lid switch if more than 1 display is + connected + +Previously we expected the desktop environment to take an inhibitor +lock, but this opened a race on boot-up where logind might already be +running but no DE is active. + +Hence, let's move checking for additional displays into logind. This +also opens up this logic for other DEs, given that only GNOME +implemented the inhibitor logic so far. +--- + man/logind.conf.xml | 14 +++++++----- + src/login/logind-action.c | 8 +++++++ + src/login/logind-core.c | 55 +++++++++++++++++++++++++++++++++++++++++++-- + src/login/logind.h | 1 + + 4 files changed, 71 insertions(+), 7 deletions(-) + +diff --git man/logind.conf.xml man/logind.conf.xml +index 54cc379..7673201 100644 +--- man/logind.conf.xml ++++ man/logind.conf.xml +@@ -242,10 +242,10 @@ + ignore, logind will + never handle these keys. If + lock, all running +- sessions will be screen-locked; otherwise, +- the specified action +- will be taken in the respective +- event. Only input devices with the ++ sessions will be screen-locked; ++ otherwise, the specified action will ++ be taken in the respective event. Only ++ input devices with the + power-switch udev + tag will be watched for key/lid switch + events. HandlePowerKey= +@@ -257,7 +257,11 @@ + default to suspend. + HandleHibernateKey= + defaults to +- hibernate. ++ hibernate. Note ++ that the lid switch is ignored if the ++ system is inserted in a docking ++ station, or if more than one display ++ is connected. + + + +diff --git src/login/logind-action.c src/login/logind-action.c +index c04f210..da5a830 100644 +--- src/login/logind-action.c ++++ src/login/logind-action.c +@@ -72,10 +72,18 @@ int manager_handle_action( + + /* If we are docked don't react to lid closing */ + if (inhibit_key == INHIBIT_HANDLE_LID_SWITCH) { ++ int n; ++ + if (manager_is_docked(m)) { + log_debug("Ignoring lid switch request, system is docked."); + return 0; + } ++ ++ n = manager_count_displays(m); ++ if (n != 1) { ++ log_debug("Ignoring lid switch request, %s displays connected."); ++ return 0; ++ } + } + + /* If the key handling is inhibited, don't do anything */ +diff --git src/login/logind-core.c src/login/logind-core.c +index e4e593f..b8d03c3 100644 +--- src/login/logind-core.c ++++ src/login/logind-core.c +@@ -32,6 +32,7 @@ + #include "audit.h" + #include "bus-util.h" + #include "bus-error.h" ++#include "udev-util.h" + #include "logind.h" + + int manager_add_device(Manager *m, const char *sysfs, bool master, Device **_device) { +@@ -276,9 +277,11 @@ int manager_process_seat_device(Manager *m, struct udev_device *d) { + return 0; + } + +- /* ignore non-master devices for unknown seats */ ++ seat = hashmap_get(m->seats, sn); + master = udev_device_has_tag(d, "master-of-seat"); +- if (!master && !(seat = hashmap_get(m->seats, sn))) ++ ++ /* Ignore non-master devices for unknown seats */ ++ if (!master && !seat) + return 0; + + r = manager_add_device(m, udev_device_get_syspath(d), master, &device); +@@ -514,3 +517,51 @@ bool manager_is_docked(Manager *m) { + + return false; + } ++ ++int manager_count_displays(Manager *m) { ++ _cleanup_udev_enumerate_unref_ struct udev_enumerate *e = NULL; ++ struct udev_list_entry *item = NULL, *first = NULL; ++ int r; ++ int n = 0; ++ ++ e = udev_enumerate_new(m->udev); ++ if (!e) ++ return -ENOMEM; ++ ++ r = udev_enumerate_add_match_subsystem(e, "drm"); ++ if (r < 0) ++ return r; ++ ++ r = udev_enumerate_scan_devices(e); ++ if (r < 0) ++ return r; ++ ++ first = udev_enumerate_get_list_entry(e); ++ udev_list_entry_foreach(item, first) { ++ _cleanup_udev_device_unref_ struct udev_device *d = NULL; ++ struct udev_device *p; ++ const char *status; ++ ++ d = udev_device_new_from_syspath(m->udev, udev_list_entry_get_name(item)); ++ if (!d) ++ return -ENOMEM; ++ ++ p = udev_device_get_parent(d); ++ if (!p) ++ return -ENOMEM; ++ ++ /* If the parent shares the same subsystem as the ++ * device we are looking at then it is a connector, ++ * which is what we are interested in. */ ++ if (!streq_ptr(udev_device_get_subsystem(p), "drm")) ++ continue; ++ ++ /* We count any connector which is not explicitly ++ * "disconnected" as connected. */ ++ status = udev_device_get_sysattr_value(d, "status"); ++ if (!streq_ptr(status, "disconnected")) ++ n++; ++ } ++ ++ return n; ++} +diff --git src/login/logind.h src/login/logind.h +index 0344acc..74d6641 100644 +--- src/login/logind.h ++++ src/login/logind.h +@@ -149,6 +149,7 @@ int manager_get_user_by_pid(Manager *m, pid_t pid, User **user); + int manager_get_session_by_pid(Manager *m, pid_t pid, Session **session); + + bool manager_is_docked(Manager *m); ++int manager_count_displays(Manager *m); + + extern const sd_bus_vtable manager_vtable[]; + +-- +1.7.9.2 + diff --git a/0001-machine-don-t-return-uninitialized-variable.patch b/0001-machine-don-t-return-uninitialized-variable.patch new file mode 100644 index 00000000..5c1bfd05 --- /dev/null +++ b/0001-machine-don-t-return-uninitialized-variable.patch @@ -0,0 +1,26 @@ +From f14aa1f1b2e4e99ee20393871b5f64f1378ed6c3 Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Sun, 6 Jul 2014 14:12:28 +0200 +Subject: [PATCH] machine: don't return uninitialized variable + +Repotred by Ronny Chevalier +--- + src/machine/machine.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/machine/machine.c src/machine/machine.c +index c0fa1b2..cf38e3f 100644 +--- src/machine/machine.c ++++ src/machine/machine.c +@@ -371,7 +371,7 @@ static int machine_stop_scope(Machine *m) { + free(m->scope_job); + m->scope_job = job; + +- return r; ++ return 0; + } + + int machine_stop(Machine *m) { +-- +1.7.9.2 + diff --git a/0001-main-uid_to_name-might-fail-due-to-OOM-protect-again.patch b/0001-main-uid_to_name-might-fail-due-to-OOM-protect-again.patch new file mode 100644 index 00000000..df04192f --- /dev/null +++ b/0001-main-uid_to_name-might-fail-due-to-OOM-protect-again.patch @@ -0,0 +1,26 @@ +Based on 1f97091d3cb0887c264176b47b0a86c269acf0b5 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 27 Jun 2014 18:34:37 +0200 +Subject: [PATCH] main: uid_to_name() might fail due to OOM, protect against + that + +--- + src/core/main.c | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +--- src/core/main.c ++++ src/core/main.c 2014-07-01 12:25:17.906235000 +0000 +@@ -1525,9 +1525,10 @@ int main(int argc, char *argv[]) { + log_info("Running in initial RAM disk."); + + } else { +- _cleanup_free_ char *t = uid_to_name(getuid()); +- log_debug(PACKAGE_STRING " running in user mode for user "UID_FMT"/%s. (" SYSTEMD_FEATURES ")", +- getuid(), t); ++ _cleanup_free_ char *t; ++ ++ t = uid_to_name(getuid()); ++ log_debug(PACKAGE_STRING " running in user mode for user "UID_FMT"/%s. (" SYSTEMD_FEATURES ")", getuid(), strna(t)); + } + + if (arg_running_as == SYSTEMD_SYSTEM && !skip_setup) { diff --git a/0001-make-209-working-on-older-dist.patch b/0001-make-209-working-on-older-dist.patch new file mode 100644 index 00000000..63fbd03b --- /dev/null +++ b/0001-make-209-working-on-older-dist.patch @@ -0,0 +1,79 @@ +--- systemd-209/units/kmod-static-nodes.service.in ++++ systemd-209/units/kmod-static-nodes.service.in 2014-02-27 15:04:30.378236539 +0000 +@@ -15,4 +15,5 @@ ConditionPathExists=/lib/modules/%v/modu + [Service] + Type=oneshot + RemainAfterExit=yes ++ExecStartPre=@MKDIR_P@ /run/tmpfiles.d + ExecStart=@KMOD@ static-nodes --format=tmpfiles --output=/run/tmpfiles.d/kmod.conf +--- systemd-209/configure.ac ++++ systemd-209/configure.ac 2014-02-28 17:14:14.866235643 +0000 +@@ -300,9 +300,9 @@ AC_ARG_ENABLE(kmod, AS_HELP_STRING([--di + if test "x$enable_kmod" != "xno"; then + PKG_CHECK_EXISTS([ libkmod ], have_kmod=yes, have_kmod=no) + if test "x$have_kmod" = "xyes"; then +- PKG_CHECK_MODULES(KMOD, [ libkmod >= 15 ], ++ PKG_CHECK_MODULES(KMOD, [ libkmod >= 14 ], + [AC_DEFINE(HAVE_KMOD, 1, [Define if kmod is available])], +- AC_MSG_ERROR([*** kmod version >= 15 not found])) ++ AC_MSG_ERROR([*** kmod version >= 14 not found])) + fi + if test "x$have_kmod" = xno -a "x$enable_kmod" = xyes; then + AC_MSG_ERROR([*** kmod support requested, but libraries not found]) +--- systemd-209/configure ++++ systemd-209/configure 2014-02-28 17:13:50.770735397 +0000 +@@ -15999,12 +15999,12 @@ if test -n "$KMOD_CFLAGS"; then + pkg_cv_KMOD_CFLAGS="$KMOD_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ +- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" libkmod >= 15 \""; } >&5 +- ($PKG_CONFIG --exists --print-errors " libkmod >= 15 ") 2>&5 ++ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" libkmod >= 14 \""; } >&5 ++ ($PKG_CONFIG --exists --print-errors " libkmod >= 14 ") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then +- pkg_cv_KMOD_CFLAGS=`$PKG_CONFIG --cflags " libkmod >= 15 " 2>/dev/null` ++ pkg_cv_KMOD_CFLAGS=`$PKG_CONFIG --cflags " libkmod >= 14 " 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes + else + pkg_failed=yes +@@ -16016,12 +16016,12 @@ if test -n "$KMOD_LIBS"; then + pkg_cv_KMOD_LIBS="$KMOD_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ +- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" libkmod >= 15 \""; } >&5 +- ($PKG_CONFIG --exists --print-errors " libkmod >= 15 ") 2>&5 ++ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \" libkmod >= 14 \""; } >&5 ++ ($PKG_CONFIG --exists --print-errors " libkmod >= 14 ") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then +- pkg_cv_KMOD_LIBS=`$PKG_CONFIG --libs " libkmod >= 15 " 2>/dev/null` ++ pkg_cv_KMOD_LIBS=`$PKG_CONFIG --libs " libkmod >= 14 " 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes + else + pkg_failed=yes +@@ -16042,18 +16042,18 @@ else + _pkg_short_errors_supported=no + fi + if test $_pkg_short_errors_supported = yes; then +- KMOD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs " libkmod >= 15 " 2>&1` ++ KMOD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs " libkmod >= 14 " 2>&1` + else +- KMOD_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs " libkmod >= 15 " 2>&1` ++ KMOD_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs " libkmod >= 14 " 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$KMOD_PKG_ERRORS" >&5 + +- as_fn_error $? "*** kmod version >= 15 not found" "$LINENO" 5 ++ as_fn_error $? "*** kmod version >= 14 not found" "$LINENO" 5 + elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 + $as_echo "no" >&6; } +- as_fn_error $? "*** kmod version >= 15 not found" "$LINENO" 5 ++ as_fn_error $? "*** kmod version >= 14 not found" "$LINENO" 5 + else + KMOD_CFLAGS=$pkg_cv_KMOD_CFLAGS + KMOD_LIBS=$pkg_cv_KMOD_LIBS diff --git a/0001-make-fortify-happy-with-ppoll.patch b/0001-make-fortify-happy-with-ppoll.patch new file mode 100644 index 00000000..ed27a725 --- /dev/null +++ b/0001-make-fortify-happy-with-ppoll.patch @@ -0,0 +1,55 @@ +--- systemd-209/src/libsystemd/sd-bus/sd-bus.c ++++ systemd-209/src/libsystemd/sd-bus/sd-bus.c 2014-02-28 11:08:21.354235373 +0000 +@@ -2548,7 +2548,7 @@ static int bus_poll(sd_bus *bus, bool ne + n = 2; + } + +- r = ppoll(p, n, m == (uint64_t) -1 ? NULL : timespec_store(&ts, m), NULL); ++ r = __ppoll_alias(p, n, m == (uint64_t) -1 ? NULL : timespec_store(&ts, m), NULL); + if (r < 0) + return -errno; + +--- systemd-209/src/core/hostname-setup.c ++++ systemd-209/src/core/hostname-setup.c 2014-02-28 11:14:51.594832792 +0000 +@@ -50,8 +50,8 @@ static int read_and_strip_hostname(const + } + + /* strip any leftover of a domain name */ +- if (domain = strchr(s, '.')) { +- *domain = NULL; ++ if ((domain = strchr(s, '.'))) { ++ *domain = '\0'; + } + + *hn = s; +--- systemd-209/src/tty-ask-password-agent/tty-ask-password-agent.c ++++ systemd-209/src/tty-ask-password-agent/tty-ask-password-agent.c 2014-02-28 11:41:42.254735820 +0000 +@@ -142,7 +142,7 @@ static int ask_password_plymouth( + goto finish; + } + +- if ((j = poll(pollfd, notify > 0 ? 2 : 1, sleep_for)) < 0) { ++ if ((j = __poll_alias(pollfd, notify > 0 ? 2 : 1, sleep_for)) < 0) { + + if (errno == EINTR) + continue; +@@ -595,7 +595,7 @@ static int watch_passwords(void) { + if ((r = show_passwords()) < 0) + log_error("Failed to show password: %s", strerror(-r)); + +- if (poll(pollfd, _FD_MAX, -1) < 0) { ++ if (__poll_alias(pollfd, _FD_MAX, -1) < 0) { + + if (errno == EINTR) + continue; +--- systemd-209/src/shared/ask-password-api.c ++++ systemd-209/src/shared/ask-password-api.c 2014-02-28 11:47:21.754234675 +0000 +@@ -138,7 +138,7 @@ int ask_password_tty( + goto finish; + } + +- if ((k = poll(pollfd, notify > 0 ? 2 : 1, sleep_for)) < 0) { ++ if ((k = __poll_alias(pollfd, notify > 0 ? 2 : 1, sleep_for)) < 0) { + + if (errno == EINTR) + continue; diff --git a/0001-manager-Linux-on-hppa-has-fewer-rtsigs-hence-avoid-u.patch b/0001-manager-Linux-on-hppa-has-fewer-rtsigs-hence-avoid-u.patch new file mode 100644 index 00000000..f71e16bd --- /dev/null +++ b/0001-manager-Linux-on-hppa-has-fewer-rtsigs-hence-avoid-u.patch @@ -0,0 +1,79 @@ +Based on 4dffec1459f50ac9f8f67ccfcb79836b4ed5a50e Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 24 Oct 2014 13:44:45 +0200 +Subject: [PATCH] manager: Linux on hppa has fewer rtsigs, hence avoid using + the higher ones there + +https://bugs.freedesktop.org/show_bug.cgi?id=84931 +--- + src/core/manager.c | 29 +++++++++++++++++++++++++++-- + 1 file changed, 27 insertions(+), 2 deletions(-) + +--- src/core/manager.c ++++ src/core/manager.c 2014-10-29 14:02:28.635837997 +0000 +@@ -340,11 +340,14 @@ static int manager_setup_signals(Manager + + assert(m); + +- /* We are not interested in SIGSTOP and friends. */ + assert_se(sigaction(SIGCHLD, &sa, NULL) == 0); + +- assert_se(sigemptyset(&mask) == 0); ++ /* We make liberal use of realtime signals here. On ++ * Linux/glibc we have 30 of them (with the exception of Linux ++ * on hppa, see below), between SIGRTMIN+0 ... SIGRTMIN+30 ++ * (aka SIGRTMAX). */ + ++ assert_se(sigemptyset(&mask) == 0); + sigset_add_many(&mask, + SIGCHLD, /* Child died */ + SIGTERM, /* Reexecute daemon */ +@@ -354,6 +357,7 @@ static int manager_setup_signals(Manager + SIGINT, /* Kernel sends us this on control-alt-del */ + SIGWINCH, /* Kernel sends us this on kbrequest (alt-arrowup) */ + SIGPWR, /* Some kernel drivers and upsd send us this on power failure */ ++ + SIGRTMIN+0, /* systemd: start default.target */ + SIGRTMIN+1, /* systemd: isolate rescue.target */ + SIGRTMIN+2, /* systemd: isolate emergency.target */ +@@ -361,19 +365,40 @@ static int manager_setup_signals(Manager + SIGRTMIN+4, /* systemd: start poweroff.target */ + SIGRTMIN+5, /* systemd: start reboot.target */ + SIGRTMIN+6, /* systemd: start kexec.target */ ++ ++ /* ... space for more special targets ... */ ++ + SIGRTMIN+13, /* systemd: Immediate halt */ + SIGRTMIN+14, /* systemd: Immediate poweroff */ + SIGRTMIN+15, /* systemd: Immediate reboot */ + SIGRTMIN+16, /* systemd: Immediate kexec */ ++ ++ /* ... space for more immediate system state changes ... */ ++ + SIGRTMIN+20, /* systemd: enable status messages */ + SIGRTMIN+21, /* systemd: disable status messages */ + SIGRTMIN+22, /* systemd: set log level to LOG_DEBUG */ + SIGRTMIN+23, /* systemd: set log level to LOG_INFO */ + SIGRTMIN+24, /* systemd: Immediate exit (--user only) */ ++ ++ /* .. one free signal here ... */ ++ ++#if !defined(__hppa64__) && !defined(__hppa__) ++ /* Apparently Linux on hppa has fewer RT ++ * signals (SIGRTMAX is SIGRTMIN+25 there), ++ * hence let's not try to make use of them ++ * here. Since these commands are accessible ++ * by different means and only really a safety ++ * net, the missing functionality on hppa ++ * shouldn't matter. */ ++ + SIGRTMIN+26, /* systemd: set log target to journal-or-kmsg */ + SIGRTMIN+27, /* systemd: set log target to console */ + SIGRTMIN+28, /* systemd: set log target to kmsg */ + SIGRTMIN+29, /* systemd: set log target to syslog-or-kmsg */ ++ ++ /* ... one free signal here SIGRTMIN+30 ... */ ++#endif + -1); + assert_se(sigprocmask(SIG_SETMASK, &mask, NULL) == 0); + diff --git a/0001-nspawn-allow-to-bind-mount-journal-on-top-of-a-non-e.patch b/0001-nspawn-allow-to-bind-mount-journal-on-top-of-a-non-e.patch new file mode 100644 index 00000000..7d5b066f --- /dev/null +++ b/0001-nspawn-allow-to-bind-mount-journal-on-top-of-a-non-e.patch @@ -0,0 +1,45 @@ +From e6a4a517befe559adf6d1dbbadf425c3538849c9 Mon Sep 17 00:00:00 2001 +From: Djalal Harouni +Date: Fri, 11 Apr 2014 01:45:52 +0100 +Subject: [PATCH] nspawn: allow to bind mount journal on top of a non empty + container journal dentry + +Currently if nspawn was called with --link-journal=host or +--link-journal=auto and the right /var/log/journal/machine-id/ exists +then the bind mount the subdirectory into the container might fail due +to the ~/mycontainer/var/log/journal/machine-id/ of the container not +being empty. + +There is no reason to check if the container journal subdir is empty +since there will be a bind mount on top of it. The user asked for a bind +mount so give it. + +Note: a next call with --link-journal=guest may fail due to the +/var/log/journal/machine-id/ on the host not being empty. + +https://bugs.freedesktop.org/show_bug.cgi?id=76193 + +Reported-by: Tobias Hunger +--- + src/nspawn/nspawn.c | 5 ----- + 1 file changed, 5 deletions(-) + +diff --git src/nspawn/nspawn.c src/nspawn/nspawn.c +index 9d9238f..ef84664 100644 +--- src/nspawn/nspawn.c ++++ src/nspawn/nspawn.c +@@ -1143,11 +1143,6 @@ static int setup_journal(const char *directory) { + } else if (access(p, F_OK) < 0) + return 0; + +- if (dir_is_empty(q) == 0) { +- log_error("%s not empty.", q); +- return -ENOTEMPTY; +- } +- + r = mkdir_p(q, 0755); + if (r < 0) { + log_error("Failed to create %s: %m", q); +-- +1.7.9.2 + diff --git a/0001-nspawn-don-t-try-to-create-veth-link-with-too-long-i.patch b/0001-nspawn-don-t-try-to-create-veth-link-with-too-long-i.patch new file mode 100644 index 00000000..ee7cea2a --- /dev/null +++ b/0001-nspawn-don-t-try-to-create-veth-link-with-too-long-i.patch @@ -0,0 +1,21 @@ +Based on c00524c9cc7fb498c7244350e25823b8352f078c Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Fri, 19 Sep 2014 23:02:00 +0200 +Subject: [PATCH] nspawn: don't try to create veth link with too long ifname + +Reported by: James Lott +--- + src/nspawn/nspawn.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- src/nspawn/nspawn.c ++++ src/nspawn/nspawn.c 2014-09-23 15:33:06.766236272 +0000 +@@ -1383,7 +1383,7 @@ static int setup_veth(pid_t pid, char if + + /* Use two different interface name prefixes depending whether + * we are in bridge mode or not. */ +- snprintf(iface_name, IFNAMSIZ, "%s-%s", ++ snprintf(iface_name, IFNAMSIZ - 1, "%s-%s", + arg_network_bridge ? "vb" : "ve", arg_machine); + + r = sd_rtnl_open(&rtnl, 0); diff --git a/0001-nspawn-fix-network-interface.patch b/0001-nspawn-fix-network-interface.patch new file mode 100644 index 00000000..6e9fce7c --- /dev/null +++ b/0001-nspawn-fix-network-interface.patch @@ -0,0 +1,21 @@ +Based on 3125b3ef5db70d45882c7d6f617705802c5f939e Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Thu, 28 Aug 2014 12:15:51 +0200 +Subject: [PATCH] nspawn: fix --network-interface + +Use SETLINK when modifying an existing link. +--- + src/nspawn/nspawn.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- src/nspawn/nspawn.c ++++ src/nspawn/nspawn.c 2014-08-29 14:11:25.866235309 +0000 +@@ -1568,7 +1568,7 @@ static int move_network_interfaces(pid_t + return -EBUSY; + } + +- r = sd_rtnl_message_new_link(rtnl, &m, RTM_NEWLINK, ifi); ++ r = sd_rtnl_message_new_link(rtnl, &m, RTM_SETLINK, ifi); + if (r < 0) { + log_error("Failed to allocate netlink message: %s", strerror(-r)); + return r; diff --git a/0001-nspawn-fix-truncation-of-machine-names-in-interface-.patch b/0001-nspawn-fix-truncation-of-machine-names-in-interface-.patch new file mode 100644 index 00000000..4378b91f --- /dev/null +++ b/0001-nspawn-fix-truncation-of-machine-names-in-interface-.patch @@ -0,0 +1,31 @@ +Based on 4212a3375e03fd12cb407b34cab59dbe4ed9f4eb Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sun, 3 Aug 2014 01:28:21 -0400 +Subject: [PATCH] nspawn: fix truncation of machine names in interface names + +Based on patch by Michael Marineau : + +When deriving the network interface name from machine name strncpy was +not properly null terminating the string and the maximum string size as +returned by strlen() is actually IFNAMSIZ-1, not IFNAMSIZ. +--- + src/nspawn/nspawn.c | 8 ++------ + 1 file changed, 2 insertions(+), 6 deletions(-) + +--- src/nspawn/nspawn.c ++++ src/nspawn/nspawn.c 2014-08-22 10:18:20.390235611 +0000 +@@ -1383,12 +1383,8 @@ static int setup_veth(pid_t pid, char if + + /* Use two different interface name prefixes depending whether + * we are in bridge mode or not. */ +- if (arg_network_bridge) +- memcpy(iface_name, "vb-", 3); +- else +- memcpy(iface_name, "ve-", 3); +- +- strncpy(iface_name+3, arg_machine, IFNAMSIZ - 3); ++ snprintf(iface_name, IFNAMSIZ, "%s-%s", ++ arg_network_bridge ? "vb" : "ve", arg_machine); + + r = sd_rtnl_open(&rtnl, 0); + if (r < 0) { diff --git a/0001-pam_systemd_do_override_XDG_RUNTIME_DIR_of_the_original_user.patch b/0001-pam_systemd_do_override_XDG_RUNTIME_DIR_of_the_original_user.patch index 291de476..4dcfb70f 100644 --- a/0001-pam_systemd_do_override_XDG_RUNTIME_DIR_of_the_original_user.patch +++ b/0001-pam_systemd_do_override_XDG_RUNTIME_DIR_of_the_original_user.patch @@ -8,11 +8,11 @@ is used, the XDG_RUNTIME_DIR will not be clobbered by the new uid. This belongs to BNC#852015 and also to BNC#855160 --- - pam_systemd.c | 19 +++++++++++++++++++ + pam-module.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) ---- systemd-209/src/login/pam_systemd.c -+++ systemd-209/src/login/pam_systemd.c 2014-02-26 14:31:30.158235525 +0000 +--- systemd-209/src/login/pam-module.c ++++ systemd-209/src/login/pam-module.c 2014-02-26 14:31:30.158235525 +0000 @@ -447,6 +447,25 @@ _public_ PAM_EXTERN int pam_sm_open_sess r = export_legacy_dbus_address(handle, pw->pw_uid, runtime_path); if (r != PAM_SUCCESS) diff --git a/0001-parse_uid-return-ENXIO-for-1-uids.patch b/0001-parse_uid-return-ENXIO-for-1-uids.patch new file mode 100644 index 00000000..bc23d1a9 --- /dev/null +++ b/0001-parse_uid-return-ENXIO-for-1-uids.patch @@ -0,0 +1,45 @@ +From f841a154efbb3162d2a732936f031ac7a6b0d4cf Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Tue, 1 Jul 2014 16:00:05 +0200 +Subject: [PATCH] parse_uid: return -ENXIO for -1 uids + +--- + src/shared/audit.c | 3 --- + src/shared/util.c | 4 ++-- + 2 files changed, 2 insertions(+), 5 deletions(-) + +diff --git src/shared/audit.c src/shared/audit.c +index 5466447..f101050 100644 +--- src/shared/audit.c ++++ src/shared/audit.c +@@ -77,9 +77,6 @@ int audit_loginuid_from_pid(pid_t pid, uid_t *uid) { + if (r < 0) + return r; + +- if (u == (uid_t) -1) +- return -ENXIO; +- + *uid = (uid_t) u; + return 0; + } +diff --git src/shared/util.c src/shared/util.c +index e75f6c9..9b5a47a 100644 +--- src/shared/util.c ++++ src/shared/util.c +@@ -282,11 +282,11 @@ int parse_uid(const char *s, uid_t* ret_uid) { + + /* Some libc APIs use (uid_t) -1 as special placeholder */ + if (uid == (uid_t) 0xFFFFFFFF) +- return -EINVAL; ++ return -ENXIO; + + /* A long time ago UIDs where 16bit, hence explicitly avoid the 16bit -1 too */ + if (uid == (uid_t) 0xFFFF) +- return -EINVAL; ++ return -ENXIO; + + *ret_uid = uid; + return 0; +-- +1.7.9.2 + diff --git a/0001-po-add-Ukrainian-translation.patch b/0001-po-add-Ukrainian-translation.patch new file mode 100644 index 00000000..b7dba0ee --- /dev/null +++ b/0001-po-add-Ukrainian-translation.patch @@ -0,0 +1,406 @@ +From 260b6323cc2aebe722d5b8e43fa63a502f906774 Mon Sep 17 00:00:00 2001 +From: Daniel Korostil +Date: Thu, 17 Jul 2014 02:07:29 +0300 +Subject: [PATCH] po: add Ukrainian translation + +--- + po/LINGUAS | 1 + + po/uk.po | 377 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 378 insertions(+) + create mode 100644 po/uk.po + +diff --git po/LINGUAS po/LINGUAS +index 2cb0f30..f214ece 100644 +--- po/LINGUAS ++++ po/LINGUAS +@@ -4,3 +4,4 @@ fr + it + pl + ru ++uk +diff --git po/uk.po po/uk.po +new file mode 100644 +index 0000000..7a5212a +--- /dev/null ++++ po/uk.po +@@ -0,0 +1,377 @@ ++# Ukrainian translation for systemd. ++# Copyright (C) 2014 systemd's COPYRIGHT HOLDER ++# This file is distributed under the same license as the systemd package. ++# Eugene Melnik , 2014. ++# Daniel Korostil , 2014. ++msgid "" ++msgstr "" ++"Project-Id-Version: systemd master\n" ++"Report-Msgid-Bugs-To: https://bugs.freedesktop.org/enter_bug.cgi?product=sys" ++"temd&keywords=I18N+L10N&component=general\n" ++"POT-Creation-Date: 2014-06-06 22:16+0000\n" ++"PO-Revision-Date: 2014-07-16 19:13+0300\n" ++"Last-Translator: Daniel Korostil \n" ++"Language-Team: linux.org.ua\n" ++"Language: uk\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" ++"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" ++"X-Generator: Virtaal 0.7.1\n" ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:1 ++msgid "Set host name" ++msgstr "Встановити назву вузла" ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:2 ++msgid "Authentication is required to set the local host name." ++msgstr "Засвідчення потрібне, щоб встановити назву локального вузла." ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:3 ++msgid "Set static host name" ++msgstr "Встановити статичну назву вузла" ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:4 ++msgid "" ++"Authentication is required to set the statically configured local host name, " ++"as well as the pretty host name." ++msgstr "" ++"Засвідчення потрібне, щоб вказати статично налаштовану назву локального " ++"вузла, так само й форматовану." ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:5 ++msgid "Set machine information" ++msgstr "Встановити інформацію про машину" ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:6 ++msgid "Authentication is required to set local machine information." ++msgstr "Засвідчення потрібно, щоб вказати локальну інформацію про машини." ++ ++#: ../src/locale/org.freedesktop.locale1.policy.in.h:1 ++msgid "Set system locale" ++msgstr "Вказати системну локаль" ++ ++#: ../src/locale/org.freedesktop.locale1.policy.in.h:2 ++msgid "Authentication is required to set the system locale." ++msgstr "Засвідчення потрібно, щоб встановити системну локаль." ++ ++#: ../src/locale/org.freedesktop.locale1.policy.in.h:3 ++msgid "Set system keyboard settings" ++msgstr "Вказати налаштування системної клавіатури" ++ ++#: ../src/locale/org.freedesktop.locale1.policy.in.h:4 ++msgid "Authentication is required to set the system keyboard settings." ++msgstr "Засвідчення потрібно, щоб вказати налаштування системної клавіатури." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:1 ++msgid "Allow applications to inhibit system shutdown" ++msgstr "Дозволити програмам перешкоджати вимкненню системи" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:2 ++msgid "" ++"Authentication is required to allow an application to inhibit system " ++"shutdown." ++msgstr "" ++"Засвідчення потрібно, щоб дозволити програмам перешкоджати вимкненню системи." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:3 ++msgid "Allow applications to delay system shutdown" ++msgstr "Дозволити програмам затримувати вимкнення системи" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:4 ++msgid "" ++"Authentication is required to allow an application to delay system shutdown." ++msgstr "" ++"Засвідчення потрібно, щоб дозволити програмам затримувати вимкнення системи." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:5 ++msgid "Allow applications to inhibit system sleep" ++msgstr "Дозволити програмам перешкоджати засинанню системи" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:6 ++msgid "" ++"Authentication is required to allow an application to inhibit system sleep." ++msgstr "" ++"Засвідчення потрібно, щоб дозволити програмам перешкоджати засинанню системи." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:7 ++msgid "Allow applications to delay system sleep" ++msgstr "Дозволити програмами затримувати засинання системи" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:8 ++msgid "" ++"Authentication is required to allow an application to delay system sleep." ++msgstr "" ++"Засвідчення потрібно, щоб дозволити програмам затримувати засинання системи." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:9 ++msgid "Allow applications to inhibit automatic system suspend" ++msgstr "Дозволити програмам перешкоджати автоматичному призупиненню системи" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:10 ++msgid "" ++"Authentication is required to allow an application to inhibit automatic " ++"system suspend." ++msgstr "" ++"Засвідчення потрібно, щоб дозволити програмам перешкоджати автоматичному " ++"призупиненню системи." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:11 ++msgid "Allow applications to inhibit system handling of the power key" ++msgstr "Дозволити програмам перешкоджати обробленню системою клавіші живлення" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:12 ++msgid "" ++"Authentication is required to allow an application to inhibit system " ++"handling of the power key." ++msgstr "" ++"Засвідчення потрібно, щоб дозволити програмам перешкоджати обробленню " ++"системою клавіші живлення." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:13 ++msgid "Allow applications to inhibit system handling of the suspend key" ++msgstr "" ++"Дозволити програмам перешкоджати обробленню системою клавіші призупинення" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:14 ++msgid "" ++"Authentication is required to allow an application to inhibit system " ++"handling of the suspend key." ++msgstr "" ++"Засвідчення потрібно, щоб дозволити програмам перешкоджати обробленню " ++"системою клавіші призупинення." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:15 ++msgid "Allow applications to inhibit system handling of the hibernate key" ++msgstr "Дозволити програмам перешкоджати обробленню системою клавіші присипання" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:16 ++msgid "" ++"Authentication is required to allow an application to inhibit system " ++"handling of the hibernate key." ++msgstr "" ++"Засвідчення потрібно, щоб дозволити програмам перешкоджати обробленню " ++"системою клавіші присипання." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:17 ++msgid "Allow applications to inhibit system handling of the lid switch" ++msgstr "" ++"Дозволити програмам перешкоджати обробленню системою клавіші перемикання " ++"кришки" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:18 ++msgid "" ++"Authentication is required to allow an application to inhibit system " ++"handling of the lid switch." ++msgstr "" ++"Засвідчення потрібно, щоб дозволити програмам перешкоджати обробленню " ++"системою клавіші перемикання кришки." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:19 ++msgid "Allow non-logged-in users to run programs" ++msgstr "Дозволити незареєстрованим користувачам запускати програми" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:20 ++msgid "" ++"Authentication is required to allow a non-logged-in user to run programs." ++msgstr "" ++"Засвідчення потрібно, щоб дозволити незареєстрованим користувачам запускати " ++"програми." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:21 ++msgid "Allow attaching devices to seats" ++msgstr "Дозволити під'єднання пристроїв до місць" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:22 ++msgid "Authentication is required for attaching a device to a seat." ++msgstr "Засвідчення потрібно, щоб під'єднувати пристрої до місць." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:23 ++msgid "Flush device to seat attachments" ++msgstr "Очисний пристрій для під'єднань до місця" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:24 ++msgid "" ++"Authentication is required for resetting how devices are attached to seats." ++msgstr "Засвідчення потрібно, щоб перезапустити спосіб під'єднання до місць." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:25 ++msgid "Power off the system" ++msgstr "Вимкнути систему" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:26 ++msgid "Authentication is required for powering off the system." ++msgstr "Засвідчення потрібно, щоб вимкнути систему." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:27 ++msgid "Power off the system while other users are logged in" ++msgstr "Вимикнути систему, коли інші користувачі ще в ній" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:28 ++msgid "" ++"Authentication is required for powering off the system while other users are " ++"logged in." ++msgstr "" ++"Засвідчення потрібно, щоб вимкнути систему, коли інші користувачі в ній." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:29 ++msgid "Power off the system while an application asked to inhibit it" ++msgstr "Вимкнути систему, коли програми намагаються першкодити цьому" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:30 ++msgid "" ++"Authentication is required for powering off the system while an application " ++"asked to inhibit it." ++msgstr "" ++"Засвідчення потрібно, щоб вимкнути систему, коли програми намагаються " ++"першкодити цьому." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:31 ++msgid "Reboot the system" ++msgstr "Перезавантажити систему" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:32 ++msgid "Authentication is required for rebooting the system." ++msgstr "Для перезавантаження системи необхідна ідентифікація." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:33 ++msgid "Reboot the system while other users are logged in" ++msgstr "Перезавантажити, якщо інщі користувачі в системі" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:34 ++msgid "" ++"Authentication is required for rebooting the system while other users are " ++"logged in." ++msgstr "" ++"Засвідчення потрібно, щоб перезапустити систему, коли інші користувачі в " ++"ній." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:35 ++msgid "Reboot the system while an application asked to inhibit it" ++msgstr "Перезапустити систему, коли програми намагаються першкодити цьому" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:36 ++msgid "" ++"Authentication is required for rebooting the system while an application " ++"asked to inhibit it." ++msgstr "" ++"Засвідчення потрібно, щоб перезапустити систему, коли програми намагаються " ++"першкодити цьому." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:37 ++msgid "Suspend the system" ++msgstr "Призупинити систему" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:38 ++msgid "Authentication is required for suspending the system." ++msgstr "Засвідчення потрібно, щоб призупинити систему." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:39 ++msgid "Suspend the system while other users are logged in" ++msgstr "Призупинити систему, коли інші користувачі в ній" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:40 ++msgid "" ++"Authentication is required for suspending the system while other users are " ++"logged in." ++msgstr "" ++"Засвідчення потрібно, щоб призупинити систему, коли інші користувачі в ній." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:41 ++msgid "Suspend the system while an application asked to inhibit it" ++msgstr "Призупинити систему, коли програми намагаються першкодити цьому" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:42 ++msgid "" ++"Authentication is required for suspending the system while an application " ++"asked to inhibit it." ++msgstr "" ++"Засвідчення потрібно, щоб призупнити систему, коли програми намагаються " ++"першкодити цьому." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:43 ++msgid "Hibernate the system" ++msgstr "Приспати систему" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:44 ++msgid "Authentication is required for hibernating the system." ++msgstr "Засвідчення потрібно, щоб приспати систему." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:45 ++msgid "Hibernate the system while other users are logged in" ++msgstr "Приспати систему, коли інші користувачі в ній" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:46 ++msgid "" ++"Authentication is required for hibernating the system while other users are " ++"logged in." ++msgstr "" ++"Засвідчення потрібно, щоб присипання систему, коли інші користувачі в ній." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:47 ++msgid "Hibernate the system while an application asked to inhibit it" ++msgstr "Приспати систему, коли програми намагаються першкодити цьому" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:48 ++msgid "" ++"Authentication is required for hibernating the system while an application " ++"asked to inhibit it." ++msgstr "" ++"Засвідчення потрібно, щоб приспати систему, коли програми намагаються " ++"першкодити цьому." ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:1 ++msgid "Set system time" ++msgstr "Вказати системний час" ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:2 ++msgid "Authentication is required to set the system time." ++msgstr "Засвідчення потрібно, щоб вказати системний час." ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:3 ++msgid "Set system timezone" ++msgstr "Вказати системний часовий пояс" ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:4 ++msgid "Authentication is required to set the system timezone." ++msgstr "Засвідчення потрібно, щоб вказати системний часовий пояс." ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:5 ++msgid "Set RTC to local timezone or UTC" ++msgstr "Вкажіть RTC для локального часового поясу або UTC" ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:6 ++msgid "" ++"Authentication is required to control whether the RTC stores the local or " ++"UTC time." ++msgstr "Засвідчення потрібно, щоб контролювати, чи RTC зберігає час, чи UTC." ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:7 ++msgid "Turn network time synchronization on or off" ++msgstr "Увімкнути або вимкнути синхронізування через мережу" ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:8 ++msgid "" ++"Authentication is required to control whether network time synchronization " ++"shall be enabled." ++msgstr "" ++"Засвідчення потрібно, щоб контролювати, чи синхронізування часу через мережу " ++"запущено." ++ ++#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:1 ++msgid "Send passphrase back to system" ++msgstr "Надіслати пароль назад у систему" ++ ++#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:2 ++msgid "" ++"Authentication is required to send the entered passphrase back to the system." ++msgstr "Засвідчення потрібно, щоб надіслати введений пароль назад у систему." ++ ++#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:3 ++msgid "Privileged system and service manager access" ++msgstr "Привілейований доступ до менеджера системи і служб" ++ ++#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:4 ++msgid "Authentication is required to access the system and service manager." ++msgstr "Засвідчення потрібно, щоб доступитись до менеджера системи і служб." +-- +1.7.9.2 + diff --git a/0001-reduce-the-amount-of-messages-logged-to-dev-kmsg-whe.patch b/0001-reduce-the-amount-of-messages-logged-to-dev-kmsg-whe.patch new file mode 100644 index 00000000..9d10cced --- /dev/null +++ b/0001-reduce-the-amount-of-messages-logged-to-dev-kmsg-whe.patch @@ -0,0 +1,27 @@ +Based on b2103dccb354de3f38c49c14ccb637bdf665e40f Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Sat, 5 Apr 2014 13:59:01 -0400 +Subject: [PATCH] reduce the amount of messages logged to /dev/kmsg when + "debug" is specified + +--- + src/core/main.c | 8 ++------ + 1 file changed, 2 insertions(+), 6 deletions(-) + +--- src/core/main.c ++++ src/core/main.c 2014-04-14 13:50:48.490814738 +0000 +@@ -412,12 +412,8 @@ static int parse_proc_cmdline_word(const + if (arg_show_status == _SHOW_STATUS_UNSET) + arg_show_status = SHOW_STATUS_AUTO; + } else if (streq(word, "debug")) { +- /* Log to kmsg, the journal socket will fill up before the +- * journal is started and tools running during that time +- * will block with every log message for for 60 seconds, +- * before they give up. */ +- log_set_max_level(LOG_DEBUG); +- log_set_target(detect_container(NULL) > 0 ? LOG_TARGET_CONSOLE : LOG_TARGET_KMSG); ++ if (detect_container(NULL) > 0) ++ log_set_target(LOG_TARGET_CONSOLE); + } else if (!in_initrd()) { + unsigned i; + diff --git a/0001-replace-more-dup-by-F_DUPFD_CLOEXEC.patch b/0001-replace-more-dup-by-F_DUPFD_CLOEXEC.patch new file mode 100644 index 00000000..0438c3ee --- /dev/null +++ b/0001-replace-more-dup-by-F_DUPFD_CLOEXEC.patch @@ -0,0 +1,39 @@ +From ead349509e325aad720bb0349521a9e56e2ac7c0 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Tue, 13 May 2014 16:40:53 +0200 +Subject: [PATCH] replace more dup() by F_DUPFD_CLOEXEC + +--- + src/login/inhibit.c | 2 +- + src/shared/install.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git src/login/inhibit.c src/login/inhibit.c +index 48c2ec4..ae3afdf 100644 +--- src/login/inhibit.c ++++ src/login/inhibit.c +@@ -64,7 +64,7 @@ static int inhibit(sd_bus *bus, sd_bus_error *error) { + if (r < 0) + return r; + +- r = dup(fd); ++ r = fcntl(fd, F_DUPFD_CLOEXEC, 3); + if (r < 0) + return -errno; + +diff --git src/shared/install.c src/shared/install.c +index acfba25..9ce9403 100644 +--- src/shared/install.c ++++ src/shared/install.c +@@ -332,7 +332,7 @@ static int remove_marked_symlinks( + int q, cfd; + deleted = false; + +- cfd = dup(fd); ++ cfd = fcntl(fd, F_DUPFD_CLOEXEC, 3); + if (cfd < 0) { + r = -errno; + break; +-- +1.7.9.2 + diff --git a/0001-sd-bus-don-t-look-for-a-64bit-value-when-we-only-hav.patch b/0001-sd-bus-don-t-look-for-a-64bit-value-when-we-only-hav.patch new file mode 100644 index 00000000..47dbcce3 --- /dev/null +++ b/0001-sd-bus-don-t-look-for-a-64bit-value-when-we-only-hav.patch @@ -0,0 +1,181 @@ +From 42c4ebcbd4cbd7b27667eb8081ee4dc46f9ece17 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 13 Mar 2014 20:33:22 +0100 +Subject: [PATCH] sd-bus: don't look for a 64bit value when we only have 32bit + value on reply cookie hash table access + +This broke hashtable lookups for the message cookies on s390x, which is +a 64bit BE machine where accessing 32bit values as 64bit and vice versa +will explode. + +Also, while we are at it, be a bit more careful when dealing with the +64bit cookies we expose and the 32bit serial numbers dbus uses in its +payload. + +Problem identified by Fridrich Strba. +--- + src/libsystemd/sd-bus/bus-dump.c | 4 ++-- + src/libsystemd/sd-bus/bus-kernel.c | 2 +- + src/libsystemd/sd-bus/bus-message.c | 15 ++++++++++----- + src/libsystemd/sd-bus/bus-message.h | 5 +++-- + src/libsystemd/sd-bus/sd-bus.c | 12 ++++++------ + 5 files changed, 22 insertions(+), 16 deletions(-) + +diff --git a/src/libsystemd/sd-bus/bus-dump.c b/src/libsystemd/sd-bus/bus-dump.c +index 0e41549..ea81644 100644 +--- a/src/libsystemd/sd-bus/bus-dump.c ++++ b/src/libsystemd/sd-bus/bus-dump.c +@@ -69,10 +69,10 @@ int bus_message_dump(sd_bus_message *m, FILE *f, bool with_header) { + if (BUS_MESSAGE_COOKIE(m) == 0xFFFFFFFFULL) + fprintf(f, " Cookie=-1"); + else +- fprintf(f, " Cookie=%lu", (unsigned long) BUS_MESSAGE_COOKIE(m)); ++ fprintf(f, " Cookie=%" PRIu64, BUS_MESSAGE_COOKIE(m)); + + if (m->reply_cookie != 0) +- fprintf(f, " ReplyCookie=%lu", (unsigned long) m->reply_cookie); ++ fprintf(f, " ReplyCookie=%" PRIu64, m->reply_cookie); + + fputs("\n", f); + +diff --git a/src/libsystemd/sd-bus/bus-kernel.c b/src/libsystemd/sd-bus/bus-kernel.c +index 8a2ca02..80ef15b 100644 +--- a/src/libsystemd/sd-bus/bus-kernel.c ++++ b/src/libsystemd/sd-bus/bus-kernel.c +@@ -266,7 +266,7 @@ static int bus_message_setup_kmsg(sd_bus *b, sd_bus_message *m) { + well_known ? 0 : + m->destination ? unique : KDBUS_DST_ID_BROADCAST; + m->kdbus->payload_type = KDBUS_PAYLOAD_DBUS; +- m->kdbus->cookie = m->header->serial; ++ m->kdbus->cookie = (uint64_t) m->header->serial; + m->kdbus->priority = m->priority; + + if (m->header->flags & BUS_MESSAGE_NO_REPLY_EXPECTED) +diff --git a/src/libsystemd/sd-bus/bus-message.c b/src/libsystemd/sd-bus/bus-message.c +index fb894ef..97ab0e3 100644 +--- a/src/libsystemd/sd-bus/bus-message.c ++++ b/src/libsystemd/sd-bus/bus-message.c +@@ -617,7 +617,7 @@ static int message_new_reply( + t->header->flags |= BUS_MESSAGE_NO_REPLY_EXPECTED; + t->reply_cookie = BUS_MESSAGE_COOKIE(call); + +- r = message_append_field_uint32(t, BUS_MESSAGE_HEADER_REPLY_SERIAL, t->reply_cookie); ++ r = message_append_field_uint32(t, BUS_MESSAGE_HEADER_REPLY_SERIAL, (uint32_t) t->reply_cookie); + if (r < 0) + goto fail; + +@@ -752,7 +752,7 @@ int bus_message_new_synthetic_error( + t->header->flags |= BUS_MESSAGE_NO_REPLY_EXPECTED; + t->reply_cookie = cookie; + +- r = message_append_field_uint32(t, BUS_MESSAGE_HEADER_REPLY_SERIAL, t->reply_cookie); ++ r = message_append_field_uint32(t, BUS_MESSAGE_HEADER_REPLY_SERIAL, (uint32_t) t->reply_cookie); + if (r < 0) + goto fail; + +@@ -5075,21 +5075,26 @@ int bus_message_parse_fields(sd_bus_message *m) { + break; + } + +- case BUS_MESSAGE_HEADER_REPLY_SERIAL: ++ case BUS_MESSAGE_HEADER_REPLY_SERIAL: { ++ uint32_t serial; ++ + if (m->reply_cookie != 0) + return -EBADMSG; + + if (!streq(signature, "u")) + return -EBADMSG; + +- r = message_peek_field_uint32(m, &ri, item_size, &m->reply_cookie); ++ r = message_peek_field_uint32(m, &ri, item_size, &serial); + if (r < 0) + return r; + ++ m->reply_cookie = serial; ++ + if (m->reply_cookie == 0) + return -EBADMSG; + + break; ++ } + + case BUS_MESSAGE_HEADER_UNIX_FDS: + if (unix_fds != 0) +@@ -5489,7 +5494,7 @@ int bus_message_remarshal(sd_bus *bus, sd_bus_message **m) { + return -ENOMEM; + + n->reply_cookie = (*m)->reply_cookie; +- r = message_append_field_uint32(n, BUS_MESSAGE_HEADER_REPLY_SERIAL, n->reply_cookie); ++ r = message_append_field_uint32(n, BUS_MESSAGE_HEADER_REPLY_SERIAL, (uint32_t) n->reply_cookie); + if (r < 0) + return r; + +diff --git a/src/libsystemd/sd-bus/bus-message.h b/src/libsystemd/sd-bus/bus-message.h +index 5fbe3e6..df79294 100644 +--- a/src/libsystemd/sd-bus/bus-message.h ++++ b/src/libsystemd/sd-bus/bus-message.h +@@ -84,7 +84,7 @@ struct sd_bus_message { + + sd_bus *bus; + +- uint32_t reply_cookie; ++ uint64_t reply_cookie; + + const char *path; + const char *interface; +@@ -162,7 +162,8 @@ static inline uint64_t BUS_MESSAGE_BSWAP64(sd_bus_message *m, uint64_t u) { + return BUS_MESSAGE_NEED_BSWAP(m) ? bswap_64(u) : u; + } + +-static inline uint32_t BUS_MESSAGE_COOKIE(sd_bus_message *m) { ++static inline uint64_t BUS_MESSAGE_COOKIE(sd_bus_message *m) { ++ /* Note that we return the serial converted to a 64bit value here */ + return BUS_MESSAGE_BSWAP32(m, m->header->serial); + } + +diff --git a/src/libsystemd/sd-bus/sd-bus.c b/src/libsystemd/sd-bus/sd-bus.c +index ca7c428..8e44e50 100644 +--- a/src/libsystemd/sd-bus/sd-bus.c ++++ b/src/libsystemd/sd-bus/sd-bus.c +@@ -1486,15 +1486,15 @@ static int bus_write_message(sd_bus *bus, sd_bus_message *m, bool hint_sync_call + return r; + + if (bus->is_kernel || *idx >= BUS_MESSAGE_SIZE(m)) +- log_debug("Sent message type=%s sender=%s destination=%s object=%s interface=%s member=%s cookie=%lu reply_cookie=%lu error=%s", ++ log_debug("Sent message type=%s sender=%s destination=%s object=%s interface=%s member=%s cookie=%" PRIu64 " reply_cookie=%" PRIu64 " error=%s", + bus_message_type_to_string(m->header->type), + strna(sd_bus_message_get_sender(m)), + strna(sd_bus_message_get_destination(m)), + strna(sd_bus_message_get_path(m)), + strna(sd_bus_message_get_interface(m)), + strna(sd_bus_message_get_member(m)), +- (unsigned long) BUS_MESSAGE_COOKIE(m), +- (unsigned long) m->reply_cookie, ++ BUS_MESSAGE_COOKIE(m), ++ m->reply_cookie, + strna(m->error.message)); + + return r; +@@ -2253,15 +2253,15 @@ static int process_message(sd_bus *bus, sd_bus_message *m) { + bus->current = m; + bus->iteration_counter++; + +- log_debug("Got message type=%s sender=%s destination=%s object=%s interface=%s member=%s cookie=%lu reply_cookie=%lu error=%s", ++ log_debug("Got message type=%s sender=%s destination=%s object=%s interface=%s member=%s cookie=%" PRIu64 " reply_cookie=%" PRIu64 " error=%s", + bus_message_type_to_string(m->header->type), + strna(sd_bus_message_get_sender(m)), + strna(sd_bus_message_get_destination(m)), + strna(sd_bus_message_get_path(m)), + strna(sd_bus_message_get_interface(m)), + strna(sd_bus_message_get_member(m)), +- (unsigned long) BUS_MESSAGE_COOKIE(m), +- (unsigned long) m->reply_cookie, ++ BUS_MESSAGE_COOKIE(m), ++ m->reply_cookie, + strna(m->error.message)); + + r = process_hello(bus, m); +-- +1.9.0 + diff --git a/0001-sd-bus-properly-handle-removals-of-non-existing-matc.patch b/0001-sd-bus-properly-handle-removals-of-non-existing-matc.patch new file mode 100644 index 00000000..c1326c50 --- /dev/null +++ b/0001-sd-bus-properly-handle-removals-of-non-existing-matc.patch @@ -0,0 +1,25 @@ +From ef7b6c0190fefaacf6d8f8e1a6dda4ba8b98091b Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 29 Oct 2014 17:58:43 +0100 +Subject: [PATCH] sd-bus: properly handle removals of non-existing matches + +--- + src/libsystemd/sd-bus/bus-match.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/libsystemd/sd-bus/bus-match.c src/libsystemd/sd-bus/bus-match.c +index 18afe0f..5658c61 100644 +--- src/libsystemd/sd-bus/bus-match.c ++++ src/libsystemd/sd-bus/bus-match.c +@@ -537,7 +537,7 @@ static int bus_match_find_compare_value( + else if (BUS_MATCH_CAN_HASH(t)) + n = hashmap_get(c->compare.children, value_str); + else { +- for (n = c->child; !value_node_same(n, t, value_u8, value_str); n = n->next) ++ for (n = c->child; n && !value_node_same(n, t, value_u8, value_str); n = n->next) + ; + } + +-- +1.7.9.2 + diff --git a/0001-sd-event-don-t-require-a-signal-event-source-to-be-e.patch b/0001-sd-event-don-t-require-a-signal-event-source-to-be-e.patch new file mode 100644 index 00000000..4b9e6e87 --- /dev/null +++ b/0001-sd-event-don-t-require-a-signal-event-source-to-be-e.patch @@ -0,0 +1,58 @@ +From 92daebc0d0268c35f416c1665e0da3d4be5dd69f Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 11 Jul 2014 16:48:35 +0200 +Subject: [PATCH] sd-event: don't require a signal event source to be enabled + for the child event source to work + +--- + src/libsystemd/sd-event/sd-event.c | 16 +++++++++------- + 1 file changed, 9 insertions(+), 7 deletions(-) + +diff --git src/libsystemd/sd-event/sd-event.c src/libsystemd/sd-event/sd-event.c +index a21f7db..9a9664c 100644 +--- src/libsystemd/sd-event/sd-event.c ++++ src/libsystemd/sd-event/sd-event.c +@@ -1919,14 +1919,13 @@ static int process_signal(sd_event *e, uint32_t events) { + int r; + + assert(e); +- assert(e->signal_sources); + + assert_return(events == EPOLLIN, -EIO); + + for (;;) { + struct signalfd_siginfo si; + ssize_t ss; +- sd_event_source *s; ++ sd_event_source *s = NULL; + + ss = read(e->signal_fd, &si, sizeof(si)); + if (ss < 0) { +@@ -1941,16 +1940,19 @@ static int process_signal(sd_event *e, uint32_t events) { + + read_one = true; + +- s = e->signal_sources[si.ssi_signo]; + if (si.ssi_signo == SIGCHLD) { + r = process_child(e); + if (r < 0) + return r; +- if (r > 0 || !s) ++ if (r > 0) + continue; +- } else +- if (!s) +- return -EIO; ++ } ++ ++ if (e->signal_sources) ++ s = e->signal_sources[si.ssi_signo]; ++ ++ if (!s) ++ continue; + + s->signal.siginfo = si; + r = source_set_pending(s, true); +-- +1.7.9.2 + diff --git a/0001-sd-event-restore-correct-timeout-behaviour.patch b/0001-sd-event-restore-correct-timeout-behaviour.patch new file mode 100644 index 00000000..8787f3f3 --- /dev/null +++ b/0001-sd-event-restore-correct-timeout-behaviour.patch @@ -0,0 +1,37 @@ +Based on eec6022cf039e62233139000b9e95db943959e48 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 5 Jun 2014 13:43:30 +0200 +Subject: [PATCH] sd-event: restore correct timeout behaviour + +--- + src/libsystemd/sd-event/sd-event.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +--- src/libsystemd/sd-event/sd-event.c ++++ src/libsystemd/sd-event/sd-event.c 2014-06-06 10:26:51.422235695 +0000 +@@ -2047,6 +2047,7 @@ _public_ int sd_event_run(sd_event *e, u + unsigned ev_queue_max; + sd_event_source *p; + int r, i, m; ++ bool timedout; + + assert_return(e, -EINVAL); + assert_return(!event_pid_changed(e), -ECHILD); +@@ -2084,6 +2085,8 @@ _public_ int sd_event_run(sd_event *e, u + goto finish; + } + ++ timedout = m == 0; ++ + dual_timestamp_get(&e->timestamp); + + for (i = 0; i < m; i++) { +@@ -2123,7 +2126,7 @@ _public_ int sd_event_run(sd_event *e, u + + p = event_next_pending(e); + if (!p) { +- r = 1; ++ r = !timedout; + goto finish; + } + diff --git a/0001-sd-rtnl-message-append-fix-uninitialized-memory.patch b/0001-sd-rtnl-message-append-fix-uninitialized-memory.patch new file mode 100644 index 00000000..cde6a3da --- /dev/null +++ b/0001-sd-rtnl-message-append-fix-uninitialized-memory.patch @@ -0,0 +1,111 @@ +Backport of 7ca1d31964a2553f7bd011bc10ac42e0ebc1f975 Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Fri, 2 May 2014 22:29:18 +0200 +Subject: [PATCH] sd-rtnl-message: append - fix uninitialized memory + +We were not properly clearing the padding at the front of some containers. +--- + src/libsystemd/sd-rtnl/rtnl-message.c | 42 +++++++++++++++++++++------------- + 1 file changed, 27 insertions(+), 15 deletions(-) + +--- src/libsystemd/sd-rtnl/rtnl-message.c ++++ src/libsystemd/sd-rtnl/rtnl-message.c 2014-05-05 13:33:01.998235340 +0000 +@@ -314,24 +314,28 @@ int sd_rtnl_message_link_get_flags(sd_rt + /* If successful the updated message will be correctly aligned, if + unsuccessful the old message is untouched. */ + static int add_rtattr(sd_rtnl_message *m, unsigned short type, const void *data, size_t data_length) { +- uint32_t rta_length, message_length; ++ uint32_t rta_length; ++ size_t message_length, padding_length; + struct nlmsghdr *new_hdr; + struct rtattr *rta; + char *padding; + unsigned i; ++ int offset; + + assert(m); + assert(m->hdr); + assert(!m->sealed); + assert(NLMSG_ALIGN(m->hdr->nlmsg_len) == m->hdr->nlmsg_len); +- assert(!data || data_length > 0); +- assert(data || m->n_containers < RTNL_CONTAINER_DEPTH); ++ assert(!data || data_length); ++ ++ /* get offset of the new attribute */ ++ offset = m->hdr->nlmsg_len; + + /* get the size of the new rta attribute (with padding at the end) */ + rta_length = RTA_LENGTH(data_length); + + /* get the new message size (with padding at the end) */ +- message_length = m->hdr->nlmsg_len + RTA_ALIGN(rta_length); ++ message_length = offset + RTA_ALIGN(rta_length); + + /* realloc to fit the new attribute */ + new_hdr = realloc(m->hdr, message_length); +@@ -340,32 +344,35 @@ static int add_rtattr(sd_rtnl_message *m + m->hdr = new_hdr; + + /* get pointer to the attribute we are about to add */ +- rta = (struct rtattr *) ((uint8_t *) m->hdr + m->hdr->nlmsg_len); ++ rta = (struct rtattr *) ((uint8_t *) m->hdr + offset); + + /* if we are inside containers, extend them */ + for (i = 0; i < m->n_containers; i++) +- GET_CONTAINER(m, i)->rta_len += message_length - m->hdr->nlmsg_len; ++ GET_CONTAINER(m, i)->rta_len += message_length - offset; + + /* fill in the attribute */ + rta->rta_type = type; + rta->rta_len = rta_length; +- if (!data) { +- /* this is the start of a new container */ +- m->container_offsets[m->n_containers ++] = m->hdr->nlmsg_len; +- } else { ++ if (data) + /* we don't deal with the case where the user lies about the type + * and gives us too little data (so don't do that) +- */ ++ */ + padding = mempcpy(RTA_DATA(rta), data, data_length); +- /* make sure also the padding at the end of the message is initialized */ +- memzero(padding, +- (uint8_t *) m->hdr + message_length - (uint8_t *) padding); ++ else { ++ /* if no data was passed, make sure we still initialize the padding ++ note that we can have data_length > 0 (used by some containers) */ ++ padding = RTA_DATA(rta); ++ data_length = 0; + } + ++ /* make sure also the padding at the end of the message is initialized */ ++ padding_length = (uint8_t*)m->hdr + message_length - (uint8_t*)padding; ++ memzero(padding, padding_length); ++ + /* update message size */ + m->hdr->nlmsg_len = message_length; + +- return 0; ++ return offset; + } + + int sd_rtnl_message_append_string(sd_rtnl_message *m, unsigned short type, const char *data) { +@@ -498,6 +505,7 @@ int sd_rtnl_message_append_u32(sd_rtnl_m + + assert_return(m, -EINVAL); + assert_return(!m->sealed, -EPERM); ++ assert_return(m->n_containers < RTNL_CONTAINER_DEPTH, -ERANGE); + + r = sd_rtnl_message_get_type(m, &rtm_type); + if (r < 0) +@@ -548,6 +556,10 @@ int sd_rtnl_message_append_u32(sd_rtnl_m + if (r < 0) + return r; + ++ m->container_offsets[m->n_containers ++] = r; ++ ++ m->container_offsets[m->n_containers ++] = r; ++ + return 0; + } + diff --git a/0001-selinux-access-fix-broken-ternary-operator.patch b/0001-selinux-access-fix-broken-ternary-operator.patch new file mode 100644 index 00000000..b94de819 --- /dev/null +++ b/0001-selinux-access-fix-broken-ternary-operator.patch @@ -0,0 +1,23 @@ +Based on 1e648011b20c8126412d3cf2699d575d9ba9e0fe Mon Sep 17 00:00:00 2001 +From: Lukas Nykryn +Date: Fri, 21 Nov 2014 17:02:15 +0100 +Subject: [PATCH] selinux-access: fix broken ternary operator + +it seems to be a typo introduced by ebcf1f97de4f6b1580ae55eb56b1a3939fe6b602 +- _r = selinux_access_check(_b, _m, _u->source_path ?:_u->fragment_path, (permission), &_error); \ ++ ({ Unit *_unit = (unit); selinux_generic_access_check(bus,message, _unit->fragment_path ?: _unit->fragment_path, permission,error); }) +--- + src/core/selinux-access.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- src/core/selinux-access.h ++++ src/core/selinux-access.h 2014-12-15 11:49:54.521518349 +0000 +@@ -34,7 +34,7 @@ int selinux_generic_access_check(sd_bus + #define selinux_access_check(bus, message, permission, error) \ + selinux_generic_access_check(bus, message, NULL, permission, error) + #define selinux_unit_access_check(unit, bus, message, permission, error) \ +- ({ Unit *_unit = (unit); selinux_generic_access_check(bus, message, _unit->fragment_path ?: _unit->fragment_path, permission, error); }) ++ ({ Unit *_unit = (unit); selinux_generic_access_check(bus, message, _unit->source_path ?: _unit->fragment_path, permission, error); }) + + #else + diff --git a/0001-shell-completion-fix-completion-of-inactive-units.patch b/0001-shell-completion-fix-completion-of-inactive-units.patch new file mode 100644 index 00000000..563d9828 --- /dev/null +++ b/0001-shell-completion-fix-completion-of-inactive-units.patch @@ -0,0 +1,95 @@ +Based on f29c77bc0179b0fa57407dbe30b495be9f5ad2e8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Tue, 14 Oct 2014 20:20:07 -0400 +Subject: [PATCH] shell-completion: fix completion of inactive units + +Units which not loaded were not proposed properly. OTOH, we should +filter units from get-unit-files by their state if they are currently +loaded. Bring zsh completions in line with bash completion, the same +logic should be used in both implementations. + +https://bugzilla.redhat.com/show_bug.cgi?id=1024379 +https://bugzilla.redhat.com/show_bug.cgi?id=790768 +https://bugs.freedesktop.org/show_bug.cgi?id=84720 +--- + shell-completion/bash/systemctl | 17 +++++++++-------- + shell-completion/zsh/_systemctl | 16 +++++++++------- + 2 files changed, 18 insertions(+), 15 deletions(-) + +--- shell-completion/bash/systemctl ++++ shell-completion/bash/systemctl +@@ -55,10 +55,14 @@ __get_all_units () { { __systemctl $1 list-unit-files; __systemctl $1 list- + | { while read -r a b; do echo " $a"; done; }; } + __get_active_units () { __systemctl $1 list-units \ + | { while read -r a b; do echo " $a"; done; }; } +-__get_startable_units () { { +- __systemctl $1 list-units --all -t service,timer,socket,mount,automount,path,snapshot,swap +- __systemctl $1 list-unit-files -t service,timer,socket,mount,automount,path,snapshot,swap; } \ +- | { while read -r a b c d; do [[ $c == "inactive" || $c == "failed" ]] && echo " $a"; done; }; } ++__get_startable_units () { ++ # find inactive or failed units, filter out masked and not-found ++ __systemctl $1 list-units --state inactive,failed -- $( __get_all_units ) | \ ++ { while read -r a b c d; do [[ $b == "loaded" ]] && echo " $a"; done; }; } ++__get_restartable_units () { ++ # find !masked, filter out masked and not-found ++ __systemctl $1 list-units --state active,inactive,failed -- $( __get_all_units ) | \ ++ { while read -r a b c d; do [[ $b == "loaded" ]] && echo " $a"; done; }; } + __get_failed_units () { __systemctl $1 list-units \ + | { while read -r a b c d; do [[ $c == "failed" ]] && echo " $a"; done; }; } + __get_enabled_units () { __systemctl $1 list-unit-files \ +@@ -180,10 +184,7 @@ _systemctl () { + + elif __contains_word "$verb" ${VERBS[RESTARTABLE_UNITS]}; then + comps=$( __filter_units_by_property $mode CanStart yes \ +- $( __get_all_units $mode \ +- | while read -r line; do \ +- [[ "$line" =~ @\.|\.(device|snapshot|socket|timer)$ ]] || echo " $line"; \ +- done )) ++ $( __get_restartable_units $mode)) + compopt -o filenames + + elif __contains_word "$verb" ${VERBS[STOPPABLE_UNITS]}; then +--- shell-completion/zsh/_systemctl ++++ shell-completion/zsh/_systemctl +@@ -138,8 +138,11 @@ _filter_units_by_property() { + done + } + ++_systemctl_all_units() { { __systemctl list-unit-files; __systemctl list-units --all; } | { while read -r a b; do echo -E - " $a"; done; } } ++ + _systemctl_active_units() {_sys_active_units=( $(__systemctl list-units | { while read -r a b; do echo -E - " $a"; done; }) )} +-_systemctl_inactive_units(){_sys_inactive_units=($(__systemctl list-units --all | { while read -r a b c d; do [[ $c == "inactive" || $c == "failed" ]] && echo -E - " $a"; done; }) )} ++_systemctl_startable_units(){_sys_startable_units=($(__systemctl list-units --state inactive,failed -- $(_systemctl_all_units) | { while read -r a b c d; do [[ $b == "loaded" ]] && echo -E - " $a"; done; }) )} ++_systemctl_restartable_units(){_sys_restartable_units=($(__systemctl list-units --state inactive,failed,active -- $(_systemctl_all_units) | { while read -r a b c d; do [[ $b == "loaded" ]] && echo -E - " $a"; done; }) )} + _systemctl_failed_units() {_sys_failed_units=( $(__systemctl list-units --failed | { while read -r a b; do echo -E - " $a"; done; }) )} + _systemctl_enabled_units() {_sys_enabled_units=( $(__systemctl list-unit-files | { while read -r a b; do [[ $b == "enabled" ]] && echo -E - " $a"; done; }) )} + _systemctl_disabled_units(){_sys_disabled_units=($(__systemctl list-unit-files | { while read -r a b; do [[ $b == "disabled" ]] && echo -E - " $a"; done; }) )} +@@ -181,8 +184,9 @@ done + # Completion functions for STARTABLE_UNITS + (( $+functions[_systemctl_start] )) || _systemctl_start() + { +- _systemctl_inactive_units +- compadd "$@" -a - _sys_inactive_units ++ _systemctl_startable_units ++ compadd "$@" - $( _filter_units_by_property CanStart yes \ ++ ${_sys_startable_units[*]} ) + } + + # Completion functions for STOPPABLE_UNITS +@@ -217,11 +221,9 @@ done + for fun in restart reload-or-restart ; do + (( $+functions[_systemctl_$fun] )) || _systemctl_$fun() + { +- _systemctl_all_units ++ _systemctl_restartable_units + compadd "$@" - $( _filter_units_by_property CanStart yes \ +- ${_sys_all_units[*]} | while read -r line; do \ +- [[ "$line" =~ \.device$ ]] || echo -E - " $line"; \ +- done ) ++ ${_sys_restartable_units[*]} ) + } + done + +-- +1.7.9.2 + diff --git a/0001-shutdownd-clean-up-initialization-of-struct.patch b/0001-shutdownd-clean-up-initialization-of-struct.patch new file mode 100644 index 00000000..3f2fb4ea --- /dev/null +++ b/0001-shutdownd-clean-up-initialization-of-struct.patch @@ -0,0 +1,30 @@ +From b748c7596f79945be5263a0d1c88de64eb0c5146 Mon Sep 17 00:00:00 2001 +From: Thomas Hindoe Paaboel Andersen +Date: Sat, 27 Sep 2014 00:25:09 +0200 +Subject: [PATCH] shutdownd: clean up initialization of struct + +No functional change. We just don't assign the value twice. + +Found by coverity. Fixes: CID#1237616 and #1237617 +--- + src/shutdownd/shutdownd.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git src/shutdownd/shutdownd.c src/shutdownd/shutdownd.c +index 99aa4b3..0f008a6 100644 +--- src/shutdownd/shutdownd.c ++++ src/shutdownd/shutdownd.c +@@ -52,8 +52,8 @@ static int read_packet(int fd, union shutdown_buffer *_b) { + union shutdown_buffer b; /* We maintain our own copy here, in + * order not to corrupt the last message */ + struct iovec iovec = { +- iovec.iov_base = &b, +- iovec.iov_len = sizeof(b) - 1, ++ .iov_base = &b, ++ .iov_len = sizeof(b) - 1, + }; + union { + struct cmsghdr cmsghdr; +-- +1.7.9.2 + diff --git a/0001-socket-introduce-SELinuxContextFromNet-option.patch b/0001-socket-introduce-SELinuxContextFromNet-option.patch new file mode 100644 index 00000000..f437c7be --- /dev/null +++ b/0001-socket-introduce-SELinuxContextFromNet-option.patch @@ -0,0 +1,414 @@ +Based on 16115b0a7b7cdf08fb38084d857d572d8a9088dc Mon Sep 17 00:00:00 2001 +From: Michal Sekletar +Date: Thu, 24 Jul 2014 10:40:28 +0200 +Subject: [PATCH] socket: introduce SELinuxContextFromNet option + +This makes possible to spawn service instances triggered by socket with +MLS/MCS SELinux labels which are created based on information provided by +connected peer. + +Implementation of label_get_child_mls_label derived from xinetd. + +Reviewed-by: Paul Moore +--- + man/systemd.socket.xml | 26 +++++++ + src/core/execute.c | 30 +++++++-- + src/core/execute.h | 1 + src/core/load-fragment-gperf.gperf.m4 | 3 + src/core/mount.c | 1 + src/core/service.c | 4 - + src/core/service.h | 3 + src/core/socket.c | 16 +++- + src/core/socket.h | 2 + src/core/swap.c | 1 + src/shared/label.c | 113 ++++++++++++++++++++++++++++++++++ + src/shared/label.h | 2 + 12 files changed, 191 insertions(+), 11 deletions(-) + +--- man/systemd.socket.xml ++++ man/systemd.socket.xml 2014-09-23 15:36:49.000000000 +0000 +@@ -570,6 +570,32 @@ + + + ++ SELinuxContextFromNet= ++ Takes a boolean ++ argument. When true systemd will attempt ++ to figure out the SELinux label used ++ for the instantiated service from the ++ information handed by the peer over the ++ network. Note that only the security ++ level is used from the information ++ provided by the peer. Other parts of ++ the resulting SELinux context originate ++ from either the target binary that is ++ effectively triggered by socket unit ++ are taken from the value of the ++ SELinuxContext= ++ option.This configuration option only ++ affects sockets with ++ Accept= mode set to ++ true. Also note that ++ this option is useful only when ++ MLS/MCS SELinux policy is ++ deployed. Defaults to ++ false. ++ ++ ++ ++ + PipeSize= + Takes an size in + bytes. Controls the pipe buffer size +--- src/core/execute.c ++++ src/core/execute.c 2014-09-24 09:22:08.882735864 +0000 +@@ -82,6 +82,7 @@ + #include "selinux-util.h" + #include "errno-list.h" + #include "apparmor-util.h" ++#include "label.h" + + #ifdef HAVE_SECCOMP + #include "seccomp-util.h" +@@ -1123,6 +1124,7 @@ int exec_spawn(ExecCommand *command, + bool apply_chroot, + bool apply_tty_stdin, + bool confirm_spawn, ++ bool selinux_context_net, + CGroupControllerMask cgroup_supported, + const char *cgroup_path, + const char *unit_id, +@@ -1594,11 +1596,29 @@ int exec_spawn(ExecCommand *command, + #endif + + #ifdef HAVE_SELINUX +- if (context->selinux_context && use_selinux()) { +- err = setexeccon(context->selinux_context); +- if (err < 0 && !context->selinux_context_ignore) { +- r = EXIT_SELINUX_CONTEXT; +- goto fail_child; ++ if (use_selinux()) { ++ if (context->selinux_context) { ++ err = setexeccon(context->selinux_context); ++ if (err < 0 && !context->selinux_context_ignore) { ++ r = EXIT_SELINUX_CONTEXT; ++ goto fail_child; ++ } ++ } ++ ++ if (selinux_context_net && socket_fd >= 0) { ++ _cleanup_free_ char *label = NULL; ++ ++ err = label_get_child_mls_label(socket_fd, command->path, &label); ++ if (err < 0) { ++ r = EXIT_SELINUX_CONTEXT; ++ goto fail_child; ++ } ++ ++ err = setexeccon(label); ++ if (err < 0) { ++ r = EXIT_SELINUX_CONTEXT; ++ goto fail_child; ++ } + } + } + #endif +--- src/core/execute.h ++++ src/core/execute.h 2014-09-23 15:46:26.000000000 +0000 +@@ -195,6 +195,7 @@ int exec_spawn(ExecCommand *command, + bool apply_chroot, + bool apply_tty_stdin, + bool confirm_spawn, ++ bool selinux_context_net, + CGroupControllerMask cgroup_mask, + const char *cgroup_path, + const char *unit_id, +--- src/core/load-fragment-gperf.gperf.m4 ++++ src/core/load-fragment-gperf.gperf.m4 2014-09-23 00:00:00.000000000 +0000 +@@ -242,6 +242,9 @@ Socket.SmackLabelIPOut, config_ + `Socket.SmackLabel, config_parse_warn_compat, 0, 0 + Socket.SmackLabelIPIn, config_parse_warn_compat, 0, 0 + Socket.SmackLabelIPOut, config_parse_warn_compat, 0, 0') ++m4_ifdef(`HAVE_SELINUX', ++`Socket.SELinuxContextFromNet, config_parse_bool, 0, offsetof(Socket, selinux_context_from_net)', ++`Socket.SELinuxContextFromNet, config_parse_warn_compat, 0, 0') + EXEC_CONTEXT_CONFIG_ITEMS(Socket)m4_dnl + CGROUP_CONTEXT_CONFIG_ITEMS(Socket)m4_dnl + KILL_CONTEXT_CONFIG_ITEMS(Socket)m4_dnl +--- src/core/mount.c ++++ src/core/mount.c 2014-09-24 09:16:26.234235379 +0000 +@@ -785,6 +785,7 @@ static int mount_spawn(Mount *m, ExecCom + true, + true, + UNIT(m)->manager->confirm_spawn, ++ false, + UNIT(m)->manager->cgroup_supported, + UNIT(m)->cgroup_path, + UNIT(m)->id, +--- src/core/service.c ++++ src/core/service.c 2014-09-23 15:49:24.000000000 +0000 +@@ -1856,6 +1856,7 @@ static int service_spawn( + apply_chroot, + apply_tty_stdin, + UNIT(s)->manager->confirm_spawn, ++ s->socket_fd_selinux_context_net, + UNIT(s)->manager->cgroup_supported, + path, + UNIT(s)->id, +@@ -3787,7 +3788,7 @@ static void service_bus_name_owner_chang + } + } + +-int service_set_socket_fd(Service *s, int fd, Socket *sock) { ++int service_set_socket_fd(Service *s, int fd, Socket *sock, bool selinux_context_net) { + _cleanup_free_ char *peer = NULL; + int r; + +@@ -3825,6 +3826,7 @@ int service_set_socket_fd(Service *s, in + } + + s->socket_fd = fd; ++ s->socket_fd_selinux_context_net = selinux_context_net; + + unit_ref_set(&s->accept_socket, UNIT(sock)); + +--- src/core/service.h ++++ src/core/service.h 2014-09-23 15:51:13.000000000 +0000 +@@ -159,6 +159,7 @@ struct Service { + pid_t main_pid, control_pid; + int socket_fd; + ++ bool socket_fd_selinux_context_net; + bool permissions_start_only; + bool root_directory_start_only; + bool remain_after_exit; +@@ -204,7 +205,7 @@ extern const UnitVTable service_vtable; + + struct Socket; + +-int service_set_socket_fd(Service *s, int fd, struct Socket *socket); ++int service_set_socket_fd(Service *s, int fd, struct Socket *socket, bool selinux_context_net); + + const char* service_state_to_string(ServiceState i) _const_; + ServiceState service_state_from_string(const char *s) _pure_; +--- src/core/socket.c ++++ src/core/socket.c 2014-09-24 09:13:29.698735735 +0000 +@@ -453,7 +453,8 @@ static void socket_dump(Unit *u, FILE *f + "%sBroadcast: %s\n" + "%sPassCredentials: %s\n" + "%sPassSecurity: %s\n" +- "%sTCPCongestion: %s\n", ++ "%sTCPCongestion: %s\n" ++ "%sSELinuxContextFromNet: %s\n", + prefix, socket_state_to_string(s->state), + prefix, socket_result_to_string(s->result), + prefix, socket_address_bind_ipv6_only_to_string(s->bind_ipv6_only), +@@ -466,7 +467,8 @@ static void socket_dump(Unit *u, FILE *f + prefix, yes_no(s->broadcast), + prefix, yes_no(s->pass_cred), + prefix, yes_no(s->pass_sec), +- prefix, strna(s->tcp_congestion)); ++ prefix, strna(s->tcp_congestion), ++ prefix, yes_no(s->selinux_context_from_net)); + + if (s->control_pid > 0) + fprintf(f, +@@ -1000,7 +1002,12 @@ static int socket_open_fds(Socket *s) { + + if (p->type == SOCKET_SOCKET) { + +- if (!know_label) { ++ if (!know_label && s->selinux_context_from_net) { ++ r = label_get_our_label(&label); ++ if (r < 0) ++ return r; ++ know_label = true; ++ } else if (!know_label) { + + if ((r = socket_instantiate_service(s)) < 0) + return r; +@@ -1247,6 +1254,7 @@ static int socket_spawn(Socket *s, ExecC + true, + true, + UNIT(s)->manager->confirm_spawn, ++ s->selinux_context_from_net, + UNIT(s)->manager->cgroup_supported, + UNIT(s)->cgroup_path, + UNIT(s)->id, +@@ -1568,7 +1576,7 @@ static void socket_enter_running(Socket + + unit_choose_id(UNIT(service), name); + +- r = service_set_socket_fd(service, cfd, s); ++ r = service_set_socket_fd(service, cfd, s, s->selinux_context_from_net); + if (r < 0) + goto fail; + +--- src/core/socket.h ++++ src/core/socket.h 2014-09-23 15:55:17.000000000 +0000 +@@ -154,6 +154,8 @@ struct Socket { + char *smack; + char *smack_ip_in; + char *smack_ip_out; ++ ++ bool selinux_context_from_net; + }; + + /* Called from the service code when collecting fds */ +--- src/core/swap.c ++++ src/core/swap.c 2014-09-24 09:17:18.438735618 +0000 +@@ -642,6 +642,7 @@ static int swap_spawn(Swap *s, ExecComma + true, + true, + UNIT(s)->manager->confirm_spawn, ++ false, + UNIT(s)->manager->cgroup_supported, + UNIT(s)->cgroup_path, + UNIT(s)->id, +--- src/shared/label.c ++++ src/shared/label.c 2014-09-23 00:00:00.000000000 +0000 +@@ -31,6 +31,7 @@ + #ifdef HAVE_SELINUX + #include + #include ++#include + #endif + + #include "label.h" +@@ -41,6 +42,12 @@ + #include "smack-util.h" + + #ifdef HAVE_SELINUX ++DEFINE_TRIVIAL_CLEANUP_FUNC(security_context_t, freecon); ++DEFINE_TRIVIAL_CLEANUP_FUNC(context_t, context_free); ++ ++#define _cleanup_security_context_free_ _cleanup_(freeconp) ++#define _cleanup_context_free_ _cleanup_(context_freep) ++ + static struct selabel_handle *label_hnd = NULL; + #endif + +@@ -243,6 +250,112 @@ fail: + return r; + } + ++int label_get_our_label(char **label) { ++ int r = -EOPNOTSUPP; ++ char *l = NULL; ++ ++#ifdef HAVE_SELINUX ++ r = getcon(&l); ++ if (r < 0) ++ return r; ++ ++ *label = l; ++#endif ++ ++ return r; ++} ++ ++int label_get_child_mls_label(int socket_fd, const char *exe, char **label) { ++ int r = -EOPNOTSUPP; ++ ++#ifdef HAVE_SELINUX ++ ++ _cleanup_security_context_free_ security_context_t mycon = NULL, peercon = NULL, fcon = NULL, ret = NULL; ++ _cleanup_context_free_ context_t pcon = NULL, bcon = NULL; ++ security_class_t sclass; ++ ++ const char *range = NULL; ++ ++ assert(socket_fd >= 0); ++ assert(exe); ++ assert(label); ++ ++ r = getcon(&mycon); ++ if (r < 0) { ++ r = -EINVAL; ++ goto out; ++ } ++ ++ r = getpeercon(socket_fd, &peercon); ++ if (r < 0) { ++ r = -EINVAL; ++ goto out; ++ } ++ ++ r = getexeccon(&fcon); ++ if (r < 0) { ++ r = -EINVAL; ++ goto out; ++ } ++ ++ if (!fcon) { ++ /* If there is no context set for next exec let's use context ++ of target executable */ ++ r = getfilecon(exe, &fcon); ++ if (r < 0) { ++ r = -errno; ++ goto out; ++ } ++ } ++ ++ bcon = context_new(mycon); ++ if (!bcon) { ++ r = -ENOMEM; ++ goto out; ++ } ++ ++ pcon = context_new(peercon); ++ if (!pcon) { ++ r = -ENOMEM; ++ goto out; ++ } ++ ++ range = context_range_get(pcon); ++ if (!range) { ++ r = -errno; ++ goto out; ++ } ++ ++ r = context_range_set(bcon, range); ++ if (r) { ++ r = -errno; ++ goto out; ++ } ++ ++ freecon(mycon); ++ mycon = context_str(bcon); ++ if (!mycon) { ++ r = -errno; ++ goto out; ++ } ++ ++ sclass = string_to_security_class("process"); ++ r = security_compute_create(mycon, fcon, sclass, &ret); ++ if (r < 0) { ++ r = -EINVAL; ++ goto out; ++ } ++ ++ *label = ret; ++ r = 0; ++ ++out: ++ if (r < 0 && security_getenforce() == 1) ++ return r; ++#endif ++ return r; ++} ++ + int label_context_set(const char *path, mode_t mode) { + int r = 0; + +--- src/shared/label.h ++++ src/shared/label.h 2014-09-23 00:00:00.000000000 +0000 +@@ -40,6 +40,8 @@ void label_context_clear(void); + void label_free(const char *label); + + int label_get_create_label_from_exe(const char *exe, char **label); ++int label_get_our_label(char **label); ++int label_get_child_mls_label(int socket_fd, const char *exec, char **label); + + int label_mkdir(const char *path, mode_t mode); + diff --git a/0001-strv-add-an-additional-overflow-check-when-enlarging.patch b/0001-strv-add-an-additional-overflow-check-when-enlarging.patch new file mode 100644 index 00000000..3f953f4f --- /dev/null +++ b/0001-strv-add-an-additional-overflow-check-when-enlarging.patch @@ -0,0 +1,35 @@ +Based on 97569e154b80541cbad39d78231b7f360d4ff058 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Tue, 21 Oct 2014 14:01:28 +0200 +Subject: [PATCH] strv: add an additional overflow check when enlarging + strv()s + +https://bugs.freedesktop.org/show_bug.cgi?id=76745 +--- + src/shared/strv.c | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +--- src/shared/strv.c ++++ src/shared/strv.c 2014-10-23 00:00:00.000000000 +0000 +@@ -361,13 +361,19 @@ char *strv_join_quoted(char **l) { + + int strv_push(char ***l, char *value) { + char **c; +- unsigned n; ++ unsigned n, m; + + if (!value) + return 0; + + n = strv_length(*l); +- c = realloc(*l, sizeof(char*) * (n + 2)); ++ ++ /* increase and check for overflow */ ++ m = n + 2; ++ if (m < n) ++ return -ENOMEM; ++ ++ c = realloc(*l, sizeof(char*) * (size_t) m); + if (!c) + return -ENOMEM; + diff --git a/0001-systemctl-Correct-error-message-printed-when-bus_pro.patch b/0001-systemctl-Correct-error-message-printed-when-bus_pro.patch new file mode 100644 index 00000000..917c8ec2 --- /dev/null +++ b/0001-systemctl-Correct-error-message-printed-when-bus_pro.patch @@ -0,0 +1,28 @@ +From 498cfc230af8f83675be2e92057956f1792969e4 Mon Sep 17 00:00:00 2001 +From: Sjoerd Simons +Date: Sat, 23 Aug 2014 21:11:44 +0200 +Subject: [PATCH] systemctl: Correct error message printed when + bus_process_wait fails + +Actually use the variable containing the return code of bus_process_wait when +printing the error message as a result of it failing. +--- + src/systemctl/systemctl.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/systemctl/systemctl.c src/systemctl/systemctl.c +index d9b8bee..6534819 100644 +--- src/systemctl/systemctl.c ++++ src/systemctl/systemctl.c +@@ -2382,7 +2382,7 @@ static int wait_for_jobs(sd_bus *bus, Set *s) { + while (!set_isempty(s)) { + q = bus_process_wait(bus); + if (q < 0) { +- log_error("Failed to wait for response: %s", strerror(-r)); ++ log_error("Failed to wait for response: %s", strerror(-q)); + return q; + } + +-- +1.7.9.2 + diff --git a/0001-systemctl-allow-to-change-the-default-target-without.patch b/0001-systemctl-allow-to-change-the-default-target-without.patch new file mode 100644 index 00000000..8e78fe01 --- /dev/null +++ b/0001-systemctl-allow-to-change-the-default-target-without.patch @@ -0,0 +1,51 @@ +From a1484a216e79da1fa7e2323095fb1b7203fb7a17 Mon Sep 17 00:00:00 2001 +From: Djalal Harouni +Date: Mon, 14 Apr 2014 01:07:52 +0100 +Subject: [PATCH] systemctl: allow to change the default target without the + --force switch + +Currently "systemctl set-default" will fail to change the default target +due to the 'default.target' being a symlink which is always the case. + +To work around this, the user must specify the "--force" switch to be +able to overwrite the existing symlink. + +This is clearly a regression that was introduced by commit 718db96199e +since it worked before without the "--force" switch and the man pages do +not mention that you need to specify it. It is expected that this is a +symlink. + +So just explicity set the force flag to make it work again. + +https://bugs.freedesktop.org/show_bug.cgi?id=76623 + +Reported-by: +--- + src/systemctl/systemctl.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git src/systemctl/systemctl.c src/systemctl/systemctl.c +index ee0938f..1b381f7 100644 +--- src/systemctl/systemctl.c ++++ src/systemctl/systemctl.c +@@ -1968,7 +1968,7 @@ static int set_default(sd_bus *bus, char **args) { + return log_oom(); + + if (!bus || avoid_bus()) { +- r = unit_file_set_default(arg_scope, arg_root, unit, arg_force, &changes, &n_changes); ++ r = unit_file_set_default(arg_scope, arg_root, unit, true, &changes, &n_changes); + if (r < 0) { + log_error("Failed to set default target: %s", strerror(-r)); + return r; +@@ -1990,7 +1990,7 @@ static int set_default(sd_bus *bus, char **args) { + "SetDefaultTarget", + &error, + &reply, +- "sb", unit, arg_force); ++ "sb", unit, true); + if (r < 0) { + log_error("Failed to set default target: %s", bus_error_message(&error, -r)); + return r; +-- +1.7.9.2 + diff --git a/0001-systemctl-let-list-units-unit-files-honour-type.patch b/0001-systemctl-let-list-units-unit-files-honour-type.patch new file mode 100644 index 00000000..1548d84f --- /dev/null +++ b/0001-systemctl-let-list-units-unit-files-honour-type.patch @@ -0,0 +1,94 @@ +Based on 6c71341aeecc3d092ed90f66e1b2c481b8e260ff Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Wed, 29 Oct 2014 22:46:30 -0400 +Subject: [PATCH] systemctl: let list-{units,unit-files } honour --type + +The docs don't clarify what is expected, but I don't see any reason +why --type should be ignored. + +Also restucture the compund conditions into separate clauses for +easier reading. +--- + src/systemctl/systemctl.c | 48 ++++++++++++++++++++++++++++++++++----------- + 1 file changed, 37 insertions(+), 11 deletions(-) + +--- src/systemctl/systemctl.c ++++ src/systemctl/systemctl.c 2014-11-18 00:00:00.000000000 +0000 +@@ -305,21 +305,37 @@ static int compare_unit_info(const void + } + + static bool output_show_unit(const UnitInfo *u, char **patterns) { +- const char *dot; +- + if (!strv_isempty(patterns)) { + char **pattern; + + STRV_FOREACH(pattern, patterns) + if (fnmatch(*pattern, u->id, FNM_NOESCAPE) == 0) +- return true; ++ goto next; + return false; + } + +- return (!arg_types || ((dot = strrchr(u->id, '.')) && +- strv_find(arg_types, dot+1))) && +- (arg_all || !(streq(u->active_state, "inactive") +- || u->following[0]) || u->job_id > 0); ++next: ++ if (arg_types) { ++ const char *dot; ++ ++ dot = strrchr(u->id, '.'); ++ if (!dot) ++ return false; ++ ++ if (!strv_find(arg_types, dot+1)) ++ return false; ++ } ++ ++ if (arg_all) ++ return true; ++ ++ if (u->job_id > 0) ++ return true; ++ ++ if (streq(u->active_state, "inactive") || u->following[0]) ++ return false; ++ ++ return true; + } + + static void output_units_list(const UnitInfo *unit_infos, unsigned c) { +@@ -1019,18 +1035,28 @@ static int compare_unit_file_list(const + } + + static bool output_show_unit_file(const UnitFileList *u, char **patterns) { +- const char *dot; +- + if (!strv_isempty(patterns)) { + char **pattern; + + STRV_FOREACH(pattern, patterns) + if (fnmatch(*pattern, basename(u->path), FNM_NOESCAPE) == 0) +- return true; ++ goto next; + return false; + } + +- return !arg_types || ((dot = strrchr(u->path, '.')) && strv_find(arg_types, dot+1)); ++next: ++ if (!strv_isempty(arg_types)) { ++ const char *dot; ++ ++ dot = strrchr(u->path, '.'); ++ if (!dot) ++ return false; ++ ++ if (!strv_find(arg_types, dot+1)) ++ return false; ++ } ++ ++ return true; + } + + static void output_unit_file_list(const UnitFileList *units, unsigned c) { diff --git a/0001-systemctl-when-mangle-unit-names-for-the-isolate-suf.patch b/0001-systemctl-when-mangle-unit-names-for-the-isolate-suf.patch new file mode 100644 index 00000000..544be067 --- /dev/null +++ b/0001-systemctl-when-mangle-unit-names-for-the-isolate-suf.patch @@ -0,0 +1,52 @@ +From 08073121d8171f8e6be27b0c80e2ec283064760e Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 13 Oct 2014 15:43:09 +0200 +Subject: [PATCH] systemctl: when mangle unit names for the "isolate", suffix + with ".target" rather than ".service" by default + +After all, we set AllowIsolate exclusively for target units so far, and +this is more or less the only thing tht makes sense, hence also use +".target" as completion suffix by default. +--- + src/systemctl/systemctl.c | 11 +++++++---- + 1 file changed, 7 insertions(+), 4 deletions(-) + +diff --git src/systemctl/systemctl.c src/systemctl/systemctl.c +index 842ca6c..af3cc97 100644 +--- src/systemctl/systemctl.c ++++ src/systemctl/systemctl.c +@@ -2704,7 +2704,7 @@ static enum action verb_to_action(const char *verb) { + static int start_unit(sd_bus *bus, char **args) { + _cleanup_set_free_free_ Set *s = NULL; + _cleanup_strv_free_ char **names = NULL; +- const char *method, *mode, *one_name; ++ const char *method, *mode, *one_name, *suffix = NULL; + char **name; + int r = 0; + +@@ -2717,8 +2717,11 @@ static int start_unit(sd_bus *bus, char **args) { + method = verb_to_method(args[0]); + action = verb_to_action(args[0]); + +- mode = streq(args[0], "isolate") ? "isolate" : +- action_table[action].mode ?: arg_job_mode; ++ if (streq(args[0], "isolate")) { ++ mode = "isolate"; ++ suffix = ".target"; ++ } else ++ mode = action_table[action].mode ?: arg_job_mode; + + one_name = action_table[action].target; + } else { +@@ -2734,7 +2737,7 @@ static int start_unit(sd_bus *bus, char **args) { + if (one_name) + names = strv_new(one_name, NULL); + else { +- r = expand_names(bus, args + 1, NULL, &names); ++ r = expand_names(bus, args + 1, suffix, &names); + if (r < 0) + log_error("Failed to expand names: %s", strerror(-r)); + } +-- +1.7.9.2 + diff --git a/0001-systemd-continue-switch-root-even-if-umount-fails.patch b/0001-systemd-continue-switch-root-even-if-umount-fails.patch new file mode 100644 index 00000000..e8b3ee9f --- /dev/null +++ b/0001-systemd-continue-switch-root-even-if-umount-fails.patch @@ -0,0 +1,50 @@ +Based on d677d4df80e0ea1c66c691f50867fedd63c6770a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Thu, 16 Oct 2014 19:12:55 -0500 +Subject: [PATCH] systemd: continue switch-root even if umount fails + +Leaving the old root around seems better than aborting the +switch. +--- + src/core/main.c | 2 +- + src/core/switch-root.c | 11 +++++------ + 2 files changed, 6 insertions(+), 7 deletions(-) + +--- src/core/main.c ++++ src/core/main.c 2014-10-20 13:35:35.915837828 +0000 +@@ -1848,7 +1848,7 @@ finish: + /* And switch root */ + r = switch_root(switch_root_dir); + if (r < 0) +- log_error("Failed to switch root, ignoring: %s", strerror(-r)); ++ log_error("Failed to switch root, trying to continue: %s", strerror(-r)); + } + + args_size = MAX(6, argc+1); +--- src/core/switch-root.c ++++ src/core/switch-root.c 2014-10-20 13:39:58.167121460 +0000 +@@ -68,10 +68,9 @@ int switch_root(const char *new_root) { + goto fail; + } + +- /* Work-around for a kernel bug: for some reason the kernel +- * refuses switching root if any file systems are mounted +- * MS_SHARED. Hence remount them MS_PRIVATE here as a +- * work-around. ++ /* Work-around for kernel design: the kernel refuses switching ++ * root if any file systems are mounted MS_SHARED. Hence ++ * remount them MS_PRIVATE here as a work-around. + * + * https://bugzilla.redhat.com/show_bug.cgi?id=847418 */ + if (mount(NULL, "/", NULL, MS_REC|MS_PRIVATE, NULL) < 0) +@@ -124,8 +123,8 @@ int switch_root(const char *new_root) { + * running off it we need to do this lazily. */ + if (umount2("/mnt", MNT_DETACH) < 0) { + r = -errno; +- log_error("Failed to umount old root dir /mnt: %m"); +- goto fail; ++ log_error("Failed to lazily umount old root dir /mnt, %s: %m", ++ errno == ENOENT ? "ignoring" : "leaving it around"); + } + + } else if (mount(new_root, "/", NULL, MS_MOVE, NULL) < 0) { diff --git a/0001-systemd-detect-virt-detect-s390-virtualization.patch b/0001-systemd-detect-virt-detect-s390-virtualization.patch new file mode 100644 index 00000000..300258fb --- /dev/null +++ b/0001-systemd-detect-virt-detect-s390-virtualization.patch @@ -0,0 +1,72 @@ +From f41925b4e442a34c93ad120ef1426c974a047ed1 Mon Sep 17 00:00:00 2001 +From: Thomas Blume +Date: Fri, 18 Jul 2014 09:13:36 -0400 +Subject: [PATCH] systemd-detect-virt: detect s390 virtualization + +A system that is running on a logical partition (LPAR) provided by +PR/SM has access to physical hardware (except CPU). It is true that +PR/SM abstracts the hardware, but only for sharing purposes. + +Details are statet at: + +http://publib.boulder.ibm.com/infocenter/eserver/v1r2/topic/eicaz/eicazzlpar.htm + +-->-- +In other words, PR/SM transforms physical resources into virtual resources so +that many logical partitions can share the same physical resources. +--<-- + +Still, from the OS point of view, the shared virtual resource is real +hardware. ConditionVirtualization must be set to false if the OS runs +directly on PR/SM (e.g. in an LPAR). + +[zj: reorder code so that variables are not allocated when #if-def is +false. Add commit message.] +--- + man/systemd.unit.xml | 1 + + src/shared/virt.c | 17 +++++++++++++++++ + 2 files changed, 18 insertions(+) + +diff --git man/systemd.unit.xml man/systemd.unit.xml +index 6447584..86a8cbb 100644 +--- man/systemd.unit.xml ++++ man/systemd.unit.xml +@@ -996,6 +996,7 @@ + virtualization solution, or one of + qemu, + kvm, ++ zvm, + vmware, + microsoft, + oracle, +diff --git src/shared/virt.c src/shared/virt.c +index 20a8d7c..b436895 100644 +--- src/shared/virt.c ++++ src/shared/virt.c +@@ -220,6 +220,23 @@ int detect_vm(const char **id) { + goto finish; + } + ++#if defined(__s390__) ++ { ++ _cleanup_free_ char *t = NULL; ++ ++ r = get_status_field("/proc/sysinfo", "VM00 Control Program:", &t); ++ if (r >= 0) { ++ if (streq(t, "z/VM")) ++ _id = "zvm"; ++ else ++ _id = "kvm"; ++ r = 1; ++ ++ goto finish; ++ } ++ } ++#endif ++ + r = 0; + + finish: +-- +1.7.9.2 + diff --git a/0001-systemd-tmpfiles-Fix-IGNORE_DIRECTORY_PATH-age-handl.patch b/0001-systemd-tmpfiles-Fix-IGNORE_DIRECTORY_PATH-age-handl.patch new file mode 100644 index 00000000..9f1a8dcb --- /dev/null +++ b/0001-systemd-tmpfiles-Fix-IGNORE_DIRECTORY_PATH-age-handl.patch @@ -0,0 +1,39 @@ +From 9ed2a35e93f4a9e82585f860f54cdcbbdf3e1f86 Mon Sep 17 00:00:00 2001 +From: Richard Weinberger +Date: Tue, 9 Sep 2014 11:09:37 +0200 +Subject: [PATCH] systemd-tmpfiles: Fix IGNORE_DIRECTORY_PATH age handling + +If one has a config like: +d /tmp 1777 root root - +X /tmp/important_mount + +All files below /tmp/important_mount will be deleted as the +/tmp/important_mount item will spuriously inherit a max age of 0 +from /tmp. +/tmp has a max age of 0 but age_set is (of course) false. + +This affects also the PrivateTmp feature of systemd. +All tmp files of such services will be deleted unconditionally +and can cause service failures and data loss. + +Fix this by checking ->age_set in the IGNORE_DIRECTORY_PATH logic. +--- + src/tmpfiles/tmpfiles.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/tmpfiles/tmpfiles.c src/tmpfiles/tmpfiles.c +index f9830c4..7eafd6b 100644 +--- src/tmpfiles/tmpfiles.c ++++ src/tmpfiles/tmpfiles.c +@@ -1576,7 +1576,7 @@ static int read_config_file(const char *fn, bool ignore_enoent) { + candidate_item = j; + } + +- if (candidate_item) { ++ if (candidate_item && candidate_item->age_set) { + i->age = candidate_item->age; + i->age_set = true; + } +-- +1.7.9.2 + diff --git a/0001-sysv-order-initscripts-which-provide-network-before-.patch b/0001-sysv-order-initscripts-which-provide-network-before-.patch new file mode 100644 index 00000000..944b9158 --- /dev/null +++ b/0001-sysv-order-initscripts-which-provide-network-before-.patch @@ -0,0 +1,34 @@ +Based on 805b573fad06b845502e76f3db3a0efa7583149d Mon Sep 17 00:00:00 2001 +From: Lukas Nykryn +Date: Wed, 23 Jul 2014 12:49:14 +0200 +Subject: [PATCH] sysv: order initscripts which provide $network before + network.target + +Due to recent changes where $network "maps" to network-online.target +it is not guaranteed that initscript which provides networking will +be terminated after network.target during shutdown which is against LSB. +--- + src/core/service.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +--- src/core/service.c ++++ src/core/service.c 2014-07-30 11:27:16.074235995 +0000 +@@ -820,7 +820,7 @@ static int service_load_sysv_path(Servic + + if (unit_name_to_type(m) == UNIT_SERVICE) + r = unit_merge_by_name(u, m); +- else ++ else { + /* NB: SysV targets + * which are provided + * by a service are +@@ -835,6 +835,9 @@ static int service_load_sysv_path(Servic + * in the SysV + * services! */ + r = unit_add_two_dependencies_by_name(u, UNIT_BEFORE, UNIT_WANTS, m, NULL, true); ++ if (r >= 0 && streq(m, SPECIAL_NETWORK_ONLINE_TARGET)) ++ r = unit_add_dependency_by_name(u, UNIT_BEFORE, SPECIAL_NETWORK_TARGET, NULL, true); ++ } + + if (r < 0) + log_error_unit(u->id, diff --git a/0001-tmpfiles-compare-return-against-correct-errno.patch b/0001-tmpfiles-compare-return-against-correct-errno.patch new file mode 100644 index 00000000..10c2e214 --- /dev/null +++ b/0001-tmpfiles-compare-return-against-correct-errno.patch @@ -0,0 +1,26 @@ +From e7aab5412829ed6b50d109f670bd0b1b365838a7 Mon Sep 17 00:00:00 2001 +From: Dave Reisner +Date: Sat, 11 Oct 2014 20:35:06 -0400 +Subject: [PATCH] tmpfiles: compare return against correct errno + +name_to_handle_at returns -EOPNOTSUPP, not -ENOTSUP. +--- + src/tmpfiles/tmpfiles.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/tmpfiles/tmpfiles.c src/tmpfiles/tmpfiles.c +index dafb9ae..8108b43 100644 +--- src/tmpfiles/tmpfiles.c ++++ src/tmpfiles/tmpfiles.c +@@ -259,7 +259,7 @@ static int dir_is_mount_point(DIR *d, const char *subdir) { + + /* got only one handle; assume different mount points if one + * of both queries was not supported by the filesystem */ +- if (r_p == -ENOSYS || r_p == -ENOTSUP || r == -ENOSYS || r == -ENOTSUP) ++ if (r_p == -ENOSYS || r_p == -EOPNOTSUPP || r == -ENOSYS || r == -EOPNOTSUPP) + return true; + + /* return error */ +-- +1.7.9.2 + diff --git a/0001-tmpfiles-fix-permissions-on-new-journal-files.patch b/0001-tmpfiles-fix-permissions-on-new-journal-files.patch new file mode 100644 index 00000000..de54a2e5 --- /dev/null +++ b/0001-tmpfiles-fix-permissions-on-new-journal-files.patch @@ -0,0 +1,27 @@ +From a606871da508995f5ede113a8fc6538afd98966c Mon Sep 17 00:00:00 2001 +From: Greg KH +Date: Tue, 15 Apr 2014 14:12:01 -0700 +Subject: [PATCH] tmpfiles: fix permissions on new journal files + +When starting up journald on a new system, set the proper permissions on +the system.journal files, not only on the journal directory. +--- + tmpfiles.d/systemd.conf | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git tmpfiles.d/systemd.conf tmpfiles.d/systemd.conf +index 7c6d6b9..c470045 100644 +--- tmpfiles.d/systemd.conf ++++ tmpfiles.d/systemd.conf +@@ -23,6 +23,6 @@ d /run/systemd/machines 0755 root root - + d /run/systemd/shutdown 0755 root root - + + m /var/log/journal 2755 root systemd-journal - - +-m /var/log/journal/%m 2755 root systemd-journal - - ++Z /var/log/journal/%m 2755 root systemd-journal - - + m /run/log/journal 2755 root systemd-journal - - +-m /run/log/journal/%m 2755 root systemd-journal - - ++Z /run/log/journal/%m 2755 root systemd-journal - - +-- +1.7.9.2 + diff --git a/0001-umount-modernizations.patch b/0001-umount-modernizations.patch new file mode 100644 index 00000000..1397d155 --- /dev/null +++ b/0001-umount-modernizations.patch @@ -0,0 +1,119 @@ +From c3544e8d2c2d870a2aff0944aff4ab7824b9ae6b Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 5 Jun 2014 21:35:15 +0200 +Subject: [PATCH] umount: modernizations + +--- + src/core/umount.c | 65 ++++++++++++++++++++++------------------------------- + 1 file changed, 27 insertions(+), 38 deletions(-) + +diff --git src/core/umount.c src/core/umount.c +index d1258f0..a30f674 100644 +--- src/core/umount.c ++++ src/core/umount.c +@@ -61,52 +61,46 @@ static void mount_points_list_free(MountPoint **head) { + } + + static int mount_points_list_get(MountPoint **head) { +- FILE *proc_self_mountinfo; +- char *path, *p; ++ _cleanup_fclose_ FILE *proc_self_mountinfo = NULL; + unsigned int i; +- int r; + + assert(head); + +- if (!(proc_self_mountinfo = fopen("/proc/self/mountinfo", "re"))) ++ proc_self_mountinfo = fopen("/proc/self/mountinfo", "re"); ++ if (!proc_self_mountinfo) + return -errno; + + for (i = 1;; i++) { +- int k; ++ _cleanup_free_ char *path = NULL; ++ char *p = NULL; + MountPoint *m; ++ int k; + +- path = p = NULL; +- +- if ((k = fscanf(proc_self_mountinfo, +- "%*s " /* (1) mount id */ +- "%*s " /* (2) parent id */ +- "%*s " /* (3) major:minor */ +- "%*s " /* (4) root */ +- "%ms " /* (5) mount point */ +- "%*s" /* (6) mount options */ +- "%*[^-]" /* (7) optional fields */ +- "- " /* (8) separator */ +- "%*s " /* (9) file system type */ +- "%*s" /* (10) mount source */ +- "%*s" /* (11) mount options 2 */ +- "%*[^\n]", /* some rubbish at the end */ +- &path)) != 1) { ++ k = fscanf(proc_self_mountinfo, ++ "%*s " /* (1) mount id */ ++ "%*s " /* (2) parent id */ ++ "%*s " /* (3) major:minor */ ++ "%*s " /* (4) root */ ++ "%ms " /* (5) mount point */ ++ "%*s" /* (6) mount options */ ++ "%*[^-]" /* (7) optional fields */ ++ "- " /* (8) separator */ ++ "%*s " /* (9) file system type */ ++ "%*s" /* (10) mount source */ ++ "%*s" /* (11) mount options 2 */ ++ "%*[^\n]", /* some rubbish at the end */ ++ &path); ++ if (k != 1) { + if (k == EOF) + break; + + log_warning("Failed to parse /proc/self/mountinfo:%u.", i); +- +- free(path); + continue; + } + + p = cunescape(path); +- free(path); +- +- if (!p) { +- r = -ENOMEM; +- goto finish; +- } ++ if (!p) ++ return -ENOMEM; + + /* Ignore mount points we can't unmount because they + * are API or because we are keeping them open (like +@@ -118,22 +112,17 @@ static int mount_points_list_get(MountPoint **head) { + continue; + } + +- if (!(m = new0(MountPoint, 1))) { ++ m = new0(MountPoint, 1); ++ if (!m) { + free(p); +- r = -ENOMEM; +- goto finish; ++ return -ENOMEM; + } + + m->path = p; + LIST_PREPEND(mount_point, *head, m); + } + +- r = 0; +- +-finish: +- fclose(proc_self_mountinfo); +- +- return r; ++ return 0; + } + + static int swap_list_get(MountPoint **head) { +-- +1.7.9.2 + diff --git a/0001-units-introduce-network-pre.target-as-place-to-hook-.patch b/0001-units-introduce-network-pre.target-as-place-to-hook-.patch new file mode 100644 index 00000000..ffbc0569 --- /dev/null +++ b/0001-units-introduce-network-pre.target-as-place-to-hook-.patch @@ -0,0 +1,126 @@ +From a4a878d04045b46fa9783664e3643a890b356790 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 11 Jun 2014 11:33:02 +0200 +Subject: [PATCH] units: introduce network-pre.target as place to hook in + firewalls + +network-pre.target is a passive target that should be pulled in by +services that want to be executed before any network is configured (for +example: firewall scrips). + +network-pre.target should be ordered before all network managemet +services (but not be pulled in by them). + +network-pre.target should be order after all services that want to be +executed before any network is configured (and be pulled in by them). +--- + Makefile.am | 1 + + man/systemd.special.xml | 15 +++++++++++++++ + units/local-fs.target | 2 -- + units/network-pre.target | 12 ++++++++++++ + units/network.target | 2 ++ + units/systemd-networkd.service.in | 2 +- + 6 files changed, 31 insertions(+), 3 deletions(-) + create mode 100644 units/network-pre.target + +diff --git Makefile.am Makefile.am +index 3ea95e9..8514ec9 100644 +--- Makefile.am ++++ Makefile.am +@@ -413,6 +413,7 @@ dist_systemunit_DATA = \ + units/remote-fs.target \ + units/remote-fs-pre.target \ + units/network.target \ ++ units/network-pre.target \ + units/network-online.target \ + units/nss-lookup.target \ + units/nss-user-lookup.target \ +diff --git man/systemd.special.xml man/systemd.special.xml +index 38b94a7..cda6edd 100644 +--- man/systemd.special.xml ++++ man/systemd.special.xml +@@ -72,6 +72,7 @@ + multi-user.target, + network.target, + network-online.target, ++ network-pre.target, + nss-lookup.target, + nss-user-lookup.target, + paths.target, +@@ -891,6 +892,20 @@ + + + ++ network-pre.target ++ ++ This passive target unit ++ may be pulled in by services ++ that want to run before any ++ network is set up, for example ++ for the purpose of setting up a ++ firewall. All network ++ management software orders ++ itself after this target, but ++ does not pull it in. ++ ++ ++ + nss-lookup.target + + A target that should be +diff --git units/local-fs.target units/local-fs.target +index ae3cedc..70cb13f 100644 +--- units/local-fs.target ++++ units/local-fs.target +@@ -9,7 +9,5 @@ + Description=Local File Systems + Documentation=man:systemd.special(7) + After=local-fs-pre.target +-DefaultDependencies=no +-Conflicts=shutdown.target + OnFailure=emergency.target + OnFailureJobMode=replace-irreversibly +diff --git units/network-pre.target units/network-pre.target +new file mode 100644 +index 0000000..0ea4bc7 +--- /dev/null ++++ units/network-pre.target +@@ -0,0 +1,12 @@ ++# This file is part of systemd. ++# ++# systemd is free software; you can redistribute it and/or modify it ++# under the terms of the GNU Lesser General Public License as published by ++# the Free Software Foundation; either version 2.1 of the License, or ++# (at your option) any later version. ++ ++[Unit] ++Description=Network (Pre) ++Documentation=man:systemd.special(7) ++Documentation=http://www.freedesktop.org/wiki/Software/systemd/NetworkTarget ++RefuseManualStart=yes +diff --git units/network.target units/network.target +index 65fc64b..61ebdca 100644 +--- units/network.target ++++ units/network.target +@@ -9,3 +9,5 @@ + Description=Network + Documentation=man:systemd.special(7) + Documentation=http://www.freedesktop.org/wiki/Software/systemd/NetworkTarget ++After=network-pre.target ++RefuseManualStart=yes +diff --git units/systemd-networkd.service.in units/systemd-networkd.service.in +index 373ac4e..48f4d63 100644 +--- units/systemd-networkd.service.in ++++ units/systemd-networkd.service.in +@@ -9,7 +9,7 @@ + Description=Network Service + Documentation=man:systemd-networkd.service(8) + DefaultDependencies=no +-After=dbus.service ++After=dbus.service network-pre.target + Before=network.target + Wants=network.target + ConditionCapability=CAP_NET_ADMIN +-- +1.7.9.2 + diff --git a/0001-units-make-ExecStopPost-action-part-of-ExecStart.patch b/0001-units-make-ExecStopPost-action-part-of-ExecStart.patch new file mode 100644 index 00000000..bb9010bd --- /dev/null +++ b/0001-units-make-ExecStopPost-action-part-of-ExecStart.patch @@ -0,0 +1,46 @@ +Based on d3381512282f2ca1c7669f77fb736a90fdce6982 Mon Sep 17 00:00:00 2001 +From: Michal Sekletar +Date: Tue, 8 Jul 2014 17:42:23 +0200 +Subject: [PATCH] units: make ExecStopPost action part of ExecStart + +Currently after exiting rescue shell we isolate default target. User +might want to isolate to some other target than default one. However +issuing systemctl isolate command to desired target would bring system +to default target as a consequence of running ExecStopPost action. + +Having common ancestor for rescue shell and possible followup systemctl +default command should fix this. If user exits rescue shell we will +proceed with isolating default target, otherwise, on manual isolate, +parent shell process is terminated and we don't isolate default target, +but target chosen by user. + +Suggested-by: Michal Schmidt +--- + units/emergency.service.in | 3 +-- + units/rescue.service.m4.in | 3 +-- + 2 files changed, 2 insertions(+), 4 deletions(-) + +--- units/emergency.service.in ++++ units/emergency.service.in 2014-07-10 13:31:50.662235825 +0000 +@@ -18,8 +18,7 @@ WorkingDirectory=/root + ExecStartPre=-/usr/bin/plymouth quit + ExecStartPre=-/usr/bin/plymouth --wait + ExecStartPre=-/bin/echo -e 'Welcome to emergency mode! After logging in, type "journalctl -xb" to view\\nsystem logs, "systemctl reboot" to reboot, "systemctl default" to try again\\nto boot into default mode.' +-ExecStart=-/usr/sbin/sulogin +-ExecStopPost=@SYSTEMCTL@ --fail --no-block default ++ExecStart=-/bin/sh -c "/usr/sbin/sulogin; @SYSTEMCTL@ --fail --no-block default" + Type=idle + StandardInput=tty-force + StandardOutput=inherit +--- units/rescue.service.m4.in ++++ units/rescue.service.m4.in 2014-07-10 13:32:15.678235509 +0000 +@@ -19,8 +19,7 @@ WorkingDirectory=/root + ExecStartPre=-/usr/bin/plymouth quit + ExecStartPre=-/usr/bin/plymouth --wait + ExecStartPre=-/bin/echo -e 'Welcome to rescue mode! Type "systemctl default" or ^D to enter default mode.\\nType "journalctl -xb" to view system logs. Type "systemctl reboot" to reboot.' +-ExecStart=-/usr/sbin/sulogin +-ExecStopPost=-@SYSTEMCTL@ --fail --no-block default ++ExecStart=-/bin/sh -c "/usr/sbin/sulogin; @SYSTEMCTL@ --fail --no-block default" + Type=idle + StandardInput=tty-force + StandardOutput=inherit diff --git a/0001-units-make-sure-rfkill-service-is-bount-to-the-actua.patch b/0001-units-make-sure-rfkill-service-is-bount-to-the-actua.patch new file mode 100644 index 00000000..052eeca6 --- /dev/null +++ b/0001-units-make-sure-rfkill-service-is-bount-to-the-actua.patch @@ -0,0 +1,32 @@ +Based on 812bd1e6ab4c463507557f2bdbb8875fedd92ade Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 21 Nov 2014 01:20:57 +0100 +Subject: [PATCH] units: make sure rfkill service is bount to the actual + hardware + +--- + rules/99-systemd.rules.in | 2 +- + units/systemd-rfkill@.service.in | 1 + + 2 files changed, 2 insertions(+), 1 deletion(-) + +--- rules/99-systemd.rules.in ++++ rules/99-systemd.rules.in +@@ -62,7 +62,7 @@ SUBSYSTEM=="leds", KERNEL=="*kbd_backlight", TAG+="systemd", IMPORT{builtin}="pa + + # Pull in rfkill save/restore for all rfkill devices + +-SUBSYSTEM=="rfkill", TAG+="systemd", IMPORT{builtin}="path_id", ENV{SYSTEMD_WANTS}+="systemd-rfkill@$name.service" ++SUBSYSTEM=="rfkill", TAG+="systemd", IMPORT{builtin}="path_id", ENV{SYSTEMD_ALIAS}+="/sys/subsystem/rfkill/devices/%k", ENV{SYSTEMD_WANTS}+="systemd-rfkill@$name.service" + + # Asynchronously mount file systems implemented by these modules as + # soon as they are loaded. +--- units/systemd-rfkill@.service.in ++++ units/systemd-rfkill@.service.in 2014-12-05 11:52:59.433518948 +0000 +@@ -9,6 +9,7 @@ + Description=Load/Save RF Kill Switch Status of %I + Documentation=man:systemd-rfkill@.service(8) + DefaultDependencies=no ++BindsTo=sys-subsystem-rfkill-devices-%i.device + RequiresMountsFor=/var/lib/systemd/rfkill + Conflicts=shutdown.target + After=systemd-readahead-collect.service systemd-readahead-replay.service systemd-remount-fs.service diff --git a/0001-units-order-network-online.target-after-network.targ.patch b/0001-units-order-network-online.target-after-network.targ.patch new file mode 100644 index 00000000..d09fa29e --- /dev/null +++ b/0001-units-order-network-online.target-after-network.targ.patch @@ -0,0 +1,20 @@ +Based on 58e027023b47b32e42cf93dd4a629b869ee1ef25 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 11 Jun 2014 14:58:32 +0200 +Subject: [PATCH] units: order network-online.target after network.target + +There might be implementations around where the network-online logic +might not talk to any network configuration service (and thus not have +to wait for it), hence let's explicitly order network-online.target +after network.target to avoid any ambiguities. +--- + units/network-online.target | 1 + + 1 file changed, 1 insertion(+) + +--- units/network-online.target ++++ units/network-online.target 2014-06-26 00:00:00.000000000 +0000 +@@ -9,3 +9,4 @@ + Description=Network is Online + Documentation=man:systemd.special(7) + Documentation=http://www.freedesktop.org/wiki/Software/systemd/NetworkTarget ++After=network.target diff --git a/0001-units-systemd-sysctl.service.in-run-after-load-modul.patch b/0001-units-systemd-sysctl.service.in-run-after-load-modul.patch new file mode 100644 index 00000000..6c60f8b7 --- /dev/null +++ b/0001-units-systemd-sysctl.service.in-run-after-load-modul.patch @@ -0,0 +1,29 @@ +Based on 0b73eab7a2185ae0377650e3fdb8208347a8a575 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Cristian=20Rodr=C3=ADguez?= +Date: Sat, 23 Mar 2013 03:54:16 +0100 +Subject: [PATCH] units/systemd-sysctl.service.in: run after load-modules + +Modules might or will register new sysctl options. + +[zj: This mechanism of adding modules just to reliably set sysctl +attributes is not ideal. Nevertheless, sysctl for dynamically created +attributes is simply broken, and this is the easiest workaround.] + +https://bugzilla.redhat.com/show_bug.cgi?id=1022977 +https://bugzilla.novell.com/show_bug.cgi?id=725412 +--- + units/systemd-sysctl.service.in | 1 + + 1 file changed, 1 insertion(+) + +diff --git units/systemd-sysctl.service.in units/systemd-sysctl.service.in +index 5c7c5d7..ade9dc3 100644 +--- units/systemd-sysctl.service.in ++++ units/systemd-sysctl.service.in +@@ -11,6 +11,7 @@ Documentation=man:systemd-sysctl.service + DefaultDependencies=no + Conflicts=shutdown.target + After=systemd-readahead-collect.service systemd-readahead-replay.service ++After=systemd-modules-load.service + Before=sysinit.target shutdown.target + ConditionPathIsReadWrite=/proc/sys/ + ConditionDirectoryNotEmpty=|/lib/sysctl.d diff --git a/0001-units-tmpfiles-setup-dev-allow-unsafe-file-creation-.patch b/0001-units-tmpfiles-setup-dev-allow-unsafe-file-creation-.patch new file mode 100644 index 00000000..8aa6da5f --- /dev/null +++ b/0001-units-tmpfiles-setup-dev-allow-unsafe-file-creation-.patch @@ -0,0 +1,24 @@ +From 8c94052ee543c3598a3c7b0c46688150aa2c6168 Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Mon, 27 Oct 2014 17:15:42 +0100 +Subject: [PATCH 1/2] units: tmpfiles-setup-dev - allow unsafe file creation to + happen in /dev at boot + +This will allow us to mark static device nodes with '!' to indicate that they should only be created at early boot. +--- + units/systemd-tmpfiles-setup-dev.service.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/units/systemd-tmpfiles-setup-dev.service.in b/units/systemd-tmpfiles-setup-dev.service.in +index f3833fd..0123a03 100644 +--- a/units/systemd-tmpfiles-setup-dev.service.in ++++ b/units/systemd-tmpfiles-setup-dev.service.in +@@ -17,4 +17,4 @@ ConditionCapability=CAP_SYS_MODULE + [Service] + Type=oneshot + RemainAfterExit=yes +-ExecStart=@rootbindir@/systemd-tmpfiles --prefix=/dev --create ++ExecStart=@rootbindir@/systemd-tmpfiles --prefix=/dev --create --boot +-- +2.1.2 + diff --git a/0001-util-consider-0x7F-a-control-chracter-which-it-is-DE.patch b/0001-util-consider-0x7F-a-control-chracter-which-it-is-DE.patch new file mode 100644 index 00000000..9a6c97a5 --- /dev/null +++ b/0001-util-consider-0x7F-a-control-chracter-which-it-is-DE.patch @@ -0,0 +1,54 @@ +From 3a8a916338d8446b938f3cf40f6aae0c611892e3 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 7 Jul 2014 11:47:10 +0200 +Subject: [PATCH] util: consider 0x7F a control chracter (which it is: DEL) + +Let's better be safe than sorry. +--- + src/shared/util.c | 12 ++++++++++-- + 1 file changed, 10 insertions(+), 2 deletions(-) + +diff --git src/shared/util.c src/shared/util.c +index 3d875c7..d25ee66 100644 +--- src/shared/util.c ++++ src/shared/util.c +@@ -1608,8 +1608,9 @@ int read_one_char(FILE *f, char *ret, usec_t t, bool *need_nl) { + return -ETIMEDOUT; + } + ++ errno = 0; + if (!fgets(line, sizeof(line), f)) +- return -EIO; ++ return errno ? -errno : -EIO; + + truncate_nl(line); + +@@ -5355,6 +5356,9 @@ bool string_is_safe(const char *p) { + if (*t > 0 && *t < ' ') + return false; + ++ if (*t == 127) ++ return false; ++ + if (strchr("\\\"\'", *t)) + return false; + } +@@ -5371,10 +5375,14 @@ bool string_has_cc(const char *p) { + + assert(p); + +- for (t = p; *t; t++) ++ for (t = p; *t; t++) { + if (*t > 0 && *t < ' ' && *t != '\t') + return true; + ++ if (*t == 127) ++ return true; ++ } ++ + return false; + } + +-- +1.7.9.2 + diff --git a/0001-vconsole-also-copy-character-maps-not-just-fonts-fro.patch b/0001-vconsole-also-copy-character-maps-not-just-fonts-fro.patch new file mode 100644 index 00000000..bf379908 --- /dev/null +++ b/0001-vconsole-also-copy-character-maps-not-just-fonts-fro.patch @@ -0,0 +1,56 @@ +From ff452e76e2c0f89a32542b7179bb2fd538335933 Mon Sep 17 00:00:00 2001 +From: Carl Schaefer +Date: Mon, 23 Jun 2014 18:23:48 +0200 +Subject: [PATCH] vconsole: also copy character maps (not just fonts) from vt1 + to vt2, vt3, ... + +https://bugs.freedesktop.org/show_bug.cgi?id=78796 +--- + src/vconsole/vconsole-setup.c | 24 ++++++++++++++++++++++++ + 1 file changed, 24 insertions(+) + +diff --git src/vconsole/vconsole-setup.c src/vconsole/vconsole-setup.c +index 0f2b706..e0c4050 100644 +--- src/vconsole/vconsole-setup.c ++++ src/vconsole/vconsole-setup.c +@@ -180,6 +180,10 @@ static int font_load(const char *vc, const char *font, const char *map, const ch + */ + static void font_copy_to_all_vcs(int fd) { + struct vt_stat vcs = {}; ++ unsigned char map8[E_TABSZ]; ++ unsigned short map16[E_TABSZ]; ++ struct unimapdesc unimapd; ++ struct unipair unipairs[USHRT_MAX]; + int i, r; + + /* get active, and 16 bit mask of used VT numbers */ +@@ -209,6 +213,26 @@ static void font_copy_to_all_vcs(int fd) { + cfo.op = KD_FONT_OP_COPY; + cfo.height = vcs.v_active-1; /* tty1 == index 0 */ + ioctl(vcfd, KDFONTOP, &cfo); ++ ++ /* copy map of 8bit chars */ ++ if (ioctl(fd, GIO_SCRNMAP, map8) >= 0) ++ ioctl(vcfd, PIO_SCRNMAP, map8); ++ ++ /* copy map of 8bit chars -> 16bit Unicode values */ ++ if (ioctl(fd, GIO_UNISCRNMAP, map16) >= 0) ++ ioctl(vcfd, PIO_UNISCRNMAP, map16); ++ ++ /* copy unicode translation table */ ++ /* unimapd is a ushort count and a pointer to an ++ array of struct unipair { ushort, ushort } */ ++ unimapd.entries = unipairs; ++ unimapd.entry_ct = USHRT_MAX; ++ if (ioctl(fd, GIO_UNIMAP, &unimapd) >= 0) { ++ struct unimapinit adv = { 0, 0, 0 }; ++ ++ ioctl(vcfd, PIO_UNIMAPCLR, &adv); ++ ioctl(vcfd, PIO_UNIMAP, &unimapd); ++ } + } + } + +-- +1.7.9.2 + diff --git a/0001-virt-detect-that-we-are-running-inside-the-docker-co.patch b/0001-virt-detect-that-we-are-running-inside-the-docker-co.patch new file mode 100644 index 00000000..a5358cc9 --- /dev/null +++ b/0001-virt-detect-that-we-are-running-inside-the-docker-co.patch @@ -0,0 +1,25 @@ +From 893e72da6b27c21b102e1589276e651e9e4f591c Mon Sep 17 00:00:00 2001 +From: Michal Sekletar +Date: Tue, 9 Sep 2014 18:14:25 +0200 +Subject: [PATCH] virt: detect that we are running inside the docker container + +--- + src/shared/virt.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git src/shared/virt.c src/shared/virt.c +index b436895..f9c4e67 100644 +--- src/shared/virt.c ++++ src/shared/virt.c +@@ -310,6 +310,8 @@ int detect_container(const char **id) { + _id = "lxc-libvirt"; + else if (streq(e, "systemd-nspawn")) + _id = "systemd-nspawn"; ++ else if (streq(e, "docker")) ++ _id = "docker"; + else + _id = "other"; + +-- +1.7.9.2 + diff --git a/0001-virt-rework-container-detection-logic.patch b/0001-virt-rework-container-detection-logic.patch new file mode 100644 index 00000000..4adc20a2 --- /dev/null +++ b/0001-virt-rework-container-detection-logic.patch @@ -0,0 +1,159 @@ +Based on fdd25311706bd32580ec4d43211cdf4665d2f9de Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 28 May 2014 18:37:11 +0800 +Subject: [PATCH] virt: rework container detection logic + +Instead of accessing /proc/1/environ directly, trying to read the +$container variable from it, let's make PID 1 save the contents of that +variable to /run/systemd/container. This allows us to detect containers +without the need for CAP_SYS_PTRACE, which allows us to drop it from a +number of daemons and from the file capabilities of systemd-detect-virt. + +Also, don't consider chroot a container technology anymore. After all, +we don't consider file system namespaces container technology anymore, +and hence chroot() should be considered a container even less. +--- + Makefile.am | 3 --- + configure.ac | 2 -- + src/core/main.c | 12 ++++++++++++ + src/shared/virt.c | 48 ++++++++++++++++++++++++++++++------------------ + 4 files changed, 42 insertions(+), 23 deletions(-) + +diff --git Makefile.am Makefile.am +index 5b26bc3..f66ef42 100644 +--- Makefile.am ++++ Makefile.am +@@ -1798,9 +1798,6 @@ systemd_detect_virt_SOURCES = \ + systemd_detect_virt_LDADD = \ + libsystemd-shared.la + +-systemd-detect-virt-install-hook: +- -$(SETCAP) cap_dac_override,cap_sys_ptrace=ep $(DESTDIR)$(bindir)/systemd-detect-virt +- + INSTALL_EXEC_HOOKS += \ + systemd-detect-virt-install-hook + +--- configure.ac ++++ configure.ac 2014-06-03 14:16:45.046237826 +0000 +@@ -68,8 +68,6 @@ AC_PATH_PROG([XSLTPROC], [xsltproc]) + AC_PATH_PROG([QUOTAON], [quotaon], [/usr/sbin/quotaon]) + AC_PATH_PROG([QUOTACHECK], [quotacheck], [/usr/sbin/quotacheck]) + +-AC_PATH_PROG([SETCAP], [setcap], [/usr/sbin/setcap]) +- + AC_PATH_PROG([KILL], [kill], [/usr/bin/kill]) + + AC_PATH_PROG([KMOD], [kmod], [/usr/bin/kmod]) +diff --git src/core/main.c src/core/main.c +index 77cc2fb..d5d1ee2 100644 +--- src/core/main.c ++++ src/core/main.c +@@ -1261,6 +1261,16 @@ static int status_welcome(void) { + isempty(pretty_name) ? "Linux" : pretty_name); + } + ++static int write_container_id(void) { ++ const char *c; ++ ++ c = getenv("container"); ++ if (isempty(c)) ++ return 0; ++ ++ return write_string_file("/run/systemd/container", c); ++} ++ + int main(int argc, char *argv[]) { + Manager *m = NULL; + int r, retval = EXIT_FAILURE; +@@ -1544,6 +1554,8 @@ int main(int argc, char *argv[]) { + if (virtualization) + log_info("Detected virtualization '%s'.", virtualization); + ++ write_container_id(); ++ + log_info("Detected architecture '%s'.", architecture_to_string(uname_architecture())); + + if (in_initrd()) +diff --git src/shared/virt.c src/shared/virt.c +index 0db0514..1e227c5 100644 +--- src/shared/virt.c ++++ src/shared/virt.c +@@ -217,8 +217,8 @@ int detect_container(const char **id) { + static thread_local int cached_found = -1; + static thread_local const char *cached_id = NULL; + +- _cleanup_free_ char *e = NULL; +- const char *_id = NULL; ++ _cleanup_free_ char *m = NULL; ++ const char *_id = NULL, *e = NULL; + int r; + + if (_likely_(cached_found >= 0)) { +@@ -229,17 +229,6 @@ int detect_container(const char **id) { + return cached_found; + } + +- /* Unfortunately many of these operations require root access +- * in one way or another */ +- +- r = running_in_chroot(); +- if (r < 0) +- return r; +- if (r > 0) { +- _id = "chroot"; +- goto finish; +- } +- + /* /proc/vz exists in container and outside of the container, + * /proc/bc only outside of the container. */ + if (access("/proc/vz", F_OK) >= 0 && +@@ -249,11 +238,32 @@ int detect_container(const char **id) { + goto finish; + } + +- r = getenv_for_pid(1, "container", &e); +- if (r < 0) +- return r; +- if (r == 0) +- goto finish; ++ if (getpid() == 1) { ++ /* If we are PID 1 we can just check our own ++ * environment variable */ ++ ++ e = getenv("container"); ++ if (isempty(e)) { ++ r = 0; ++ goto finish; ++ } ++ } else { ++ ++ /* Otherwise, PID 1 dropped this information into a ++ * file in /run. This is better than accessing ++ * /proc/1/environ, since we don't need CAP_SYS_PTRACE ++ * for that. */ ++ ++ r = read_one_line_file("/run/systemd/container", &m); ++ if (r == -ENOENT) { ++ r = 0; ++ goto finish; ++ } ++ if (r < 0) ++ return r; ++ ++ e = m; ++ } + + /* We only recognize a selected few here, since we want to + * enforce a redacted namespace */ +@@ -266,6 +276,8 @@ int detect_container(const char **id) { + else + _id = "other"; + ++ r = 1; ++ + finish: + cached_found = r; + +-- +1.7.9.2 + diff --git a/0002-Add-hwdb-entry-for-Samsung-Series-7-Ultra.patch b/0002-Add-hwdb-entry-for-Samsung-Series-7-Ultra.patch new file mode 100644 index 00000000..30dc17d0 --- /dev/null +++ b/0002-Add-hwdb-entry-for-Samsung-Series-7-Ultra.patch @@ -0,0 +1,31 @@ +From 15f392394e75ffb7f318920008fd1bbe4e82b488 Mon Sep 17 00:00:00 2001 +From: Scott Thrasher +Date: Wed, 26 Mar 2014 18:48:13 -0700 +Subject: [PATCH] Add hwdb entry for Samsung Series 7 Ultra + +--- + hwdb/60-keyboard.hwdb | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index bd8fd10..832c686 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -924,6 +924,14 @@ keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*90X3A*:pvr* + KEYBOARD_KEY_96=!kbdillumup # Fn+F8 keyboard backlight up + KEYBOARD_KEY_d5=!wlan # Fn+F12 Wi-Fi toggle + ++# Series 7 Ultra ++keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*7[34]0U3E*:pvr* ++ KEYBOARD_KEY_ce=!prog1 # Fn+F1 launch settings ++ KEYBOARD_KEY_97=!kbdillumdown # Fn+F9 keyboard backlight down ++ KEYBOARD_KEY_96=!kbdillumup # Fn+F10 keyboard backlight up ++ KEYBOARD_KEY_b3=!prog3 # Fn+F11 fan/cooling mode changer ++ KEYBOARD_KEY_d5=!wlan # Fn+F12 wlan/airplane switch ++ + # SQ1US + keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pnSQ1US:pvr* + KEYBOARD_KEY_d4=menu +-- +1.7.9.2 + diff --git a/0002-Be-more-verbose-when-bind-or-listen-fails.patch b/0002-Be-more-verbose-when-bind-or-listen-fails.patch new file mode 100644 index 00000000..0a8e80e6 --- /dev/null +++ b/0002-Be-more-verbose-when-bind-or-listen-fails.patch @@ -0,0 +1,92 @@ +Based on 6b9732b2bf0499c5e4ea8a9d4f6051d98033f680 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Mon, 3 Mar 2014 19:49:40 -0500 +Subject: [PATCH] Be more verbose when bind or listen fails + +Also be more verbose in devnode_acl_all(). +--- + src/core/manager.c | 2 +- + src/journal/journald-native.c | 2 +- + src/journal/journald-stream.c | 4 ++-- + src/journal/journald-syslog.c | 2 +- + src/login/logind-acl.c | 5 ++++- + src/shared/ask-password-api.c | 2 +- + 6 files changed, 10 insertions(+), 7 deletions(-) + +--- src/core/manager.c ++++ src/core/manager.c 2014-07-21 10:57:20.286367050 +0000 +@@ -571,7 +571,7 @@ static int manager_setup_notify(Manager + + r = bind(fd, &sa.sa, offsetof(struct sockaddr_un, sun_path) + 1 + strlen(sa.un.sun_path+1)); + if (r < 0) { +- log_error("bind() failed: %m"); ++ log_error("bind(@%s) failed: %m", sa.un.sun_path+1); + return -errno; + } + +--- src/journal/journald-native.c ++++ src/journal/journald-native.c 2014-07-21 00:00:00.000000000 +0000 +@@ -405,7 +405,7 @@ int server_open_native_socket(Server*s) + + r = bind(s->native_fd, &sa.sa, offsetof(union sockaddr_union, un.sun_path) + strlen(sa.un.sun_path)); + if (r < 0) { +- log_error("bind() failed: %m"); ++ log_error("bind(%s) failed: %m", sa.un.sun_path); + return -errno; + } + +--- src/journal/journald-stream.c ++++ src/journal/journald-stream.c 2014-07-21 00:00:00.000000000 +0000 +@@ -447,14 +447,14 @@ int server_open_stdout_socket(Server *s) + + r = bind(s->stdout_fd, &sa.sa, offsetof(union sockaddr_union, un.sun_path) + strlen(sa.un.sun_path)); + if (r < 0) { +- log_error("bind() failed: %m"); ++ log_error("bind(%s) failed: %m", sa.un.sun_path); + return -errno; + } + + chmod(sa.un.sun_path, 0666); + + if (listen(s->stdout_fd, SOMAXCONN) < 0) { +- log_error("listen() failed: %m"); ++ log_error("listen(%s) failed: %m", sa.un.sun_path); + return -errno; + } + } else +--- src/journal/journald-syslog.c ++++ src/journal/journald-syslog.c 2014-07-21 00:00:00.000000000 +0000 +@@ -437,7 +437,7 @@ int server_open_syslog_socket(Server *s) + + r = bind(s->syslog_fd, &sa.sa, offsetof(union sockaddr_union, un.sun_path) + strlen(sa.un.sun_path)); + if (r < 0) { +- log_error("bind() failed: %m"); ++ log_error("bind(%s) failed: %m", sa.un.sun_path); + return -errno; + } + +--- src/login/logind-acl.c ++++ src/login/logind-acl.c 2014-07-21 10:59:04.986235573 +0000 +@@ -277,7 +277,10 @@ int devnode_acl_all(struct udev *udev, + SET_FOREACH(n, nodes, i) { + int k; + +- log_debug("Fixing up ACLs at %s for seat %s", n, seat); ++ log_debug("Changing ACLs at %s for seat %s (uid "UID_FMT"→"UID_FMT"%s%s)", ++ n, seat, old_uid, new_uid, ++ del ? " del" : "", add ? " add" : ""); ++ + k = devnode_acl(n, flush, del, old_uid, add, new_uid); + if (k < 0) + r = k; +--- src/shared/ask-password-api.c ++++ src/shared/ask-password-api.c 2014-07-21 00:00:00.000000000 +0000 +@@ -275,7 +275,7 @@ static int create_socket(char **name) { + + if (r < 0) { + r = -errno; +- log_error("bind() failed: %m"); ++ log_error("bind(%s) failed: %m", sa.un.sun_path); + goto fail; + } + diff --git a/0002-analyze-avoid-a-null-dereference.patch b/0002-analyze-avoid-a-null-dereference.patch new file mode 100644 index 00000000..b7662371 --- /dev/null +++ b/0002-analyze-avoid-a-null-dereference.patch @@ -0,0 +1,30 @@ +From d725a138c5c311ba06567d6841933aa5b7b6a435 Mon Sep 17 00:00:00 2001 +From: Thomas Hindoe Paaboel Andersen +Date: Thu, 11 Sep 2014 23:41:44 +0200 +Subject: [PATCH] analyze: avoid a null dereference + +If we have an error in the early sd_bus_* calls then unit_times +will still be null. + +Found with coverity. Fixes: CID#996464 +--- + src/analyze/analyze.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git src/analyze/analyze.c src/analyze/analyze.c +index d860a02..1281d6b 100644 +--- src/analyze/analyze.c ++++ src/analyze/analyze.c +@@ -277,7 +277,8 @@ static int acquire_time_data(sd_bus *bus, struct unit_times **out) { + return c; + + fail: +- free_unit_times(unit_times, (unsigned) c); ++ if (unit_times) ++ free_unit_times(unit_times, (unsigned) c); + return r; + } + +-- +1.7.9.2 + diff --git a/0002-analyze-run-use-bus_open_transport_systemd-instead-o.patch b/0002-analyze-run-use-bus_open_transport_systemd-instead-o.patch new file mode 100644 index 00000000..c18fcb9e --- /dev/null +++ b/0002-analyze-run-use-bus_open_transport_systemd-instead-o.patch @@ -0,0 +1,46 @@ +From 1f89214e6e990a0b552f6854f87f8514ca384956 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Thomas=20B=C3=A4chler?= +Date: Fri, 21 Feb 2014 11:55:24 +0100 +Subject: [PATCH] analyze/run: use bus_open_transport_systemd instead of + bus_open_transport + +Both systemd-analyze and systemd-run only access org.freedesktop.systemd1 +on the bus. This patch allows using systemd-run --user and systemd-analyze +--user even if the user session's bus is not properly integrated with the +systemd user unit. + +https://bugs.freedesktop.org/show_bug.cgi?id=79252 and other reports... +--- + src/analyze/analyze.c | 2 +- + src/run/run.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git src/analyze/analyze.c src/analyze/analyze.c +index 4c5fcfe..0a4190c 100644 +--- src/analyze/analyze.c ++++ src/analyze/analyze.c +@@ -1335,7 +1335,7 @@ int main(int argc, char *argv[]) { + if (r <= 0) + goto finish; + +- r = bus_open_transport(arg_transport, arg_host, arg_user, &bus); ++ r = bus_open_transport_systemd(arg_transport, arg_host, arg_user, &bus); + if (r < 0) { + log_error("Failed to create bus connection: %s", strerror(-r)); + goto finish; +diff --git src/run/run.c src/run/run.c +index e4c695c..9d5527b 100644 +--- src/run/run.c ++++ src/run/run.c +@@ -593,7 +593,7 @@ int main(int argc, char* argv[]) { + arg_description = description; + } + +- r = bus_open_transport(arg_transport, arg_host, arg_user, &bus); ++ r = bus_open_transport_systemd(arg_transport, arg_host, arg_user, &bus); + if (r < 0) { + log_error("Failed to create bus connection: %s", strerror(-r)); + goto finish; +-- +1.7.9.2 + diff --git a/0002-architecture-Add-cris.patch b/0002-architecture-Add-cris.patch new file mode 100644 index 00000000..a93d29d9 --- /dev/null +++ b/0002-architecture-Add-cris.patch @@ -0,0 +1,55 @@ +From 86bafac9540ba9e111ccba2fdf4161fe3a67cd3b Mon Sep 17 00:00:00 2001 +From: Umut Tezduyar Lindskog +Date: Tue, 4 Mar 2014 13:58:35 +0100 +Subject: [PATCH] architecture: Add cris + +--- + src/shared/architecture.c | 3 +++ + src/shared/architecture.h | 3 +++ + 2 files changed, 6 insertions(+) + +diff --git src/shared/architecture.c src/shared/architecture.c +index fcdb3d5..9e0c3ef 100644 +--- src/shared/architecture.c ++++ src/shared/architecture.c +@@ -114,6 +114,8 @@ Architecture uname_architecture(void) { + { "m68k", ARCHITECTURE_M68K }, + #elif defined(__tilegx__) + { "tilegx", ARCHITECTURE_TILEGX }, ++#elif defined(__cris__) ++ { "cris", ARCHITECTURE_CRIS }, + #else + #error "Please register your architecture here!" + #endif +@@ -161,6 +163,7 @@ static const char *const architecture_table[_ARCHITECTURE_MAX] = { + [ARCHITECTURE_SH64] = "sh64", + [ARCHITECTURE_M68K] = "m68k", + [ARCHITECTURE_TILEGX] = "tilegx", ++ [ARCHITECTURE_CRIS] = "cris", + }; + + DEFINE_STRING_TABLE_LOOKUP(architecture, Architecture); +diff --git src/shared/architecture.h src/shared/architecture.h +index e589a91..20e848b 100644 +--- src/shared/architecture.h ++++ src/shared/architecture.h +@@ -48,6 +48,7 @@ typedef enum Architecture { + ARCHITECTURE_SH64, + ARCHITECTURE_M68K, + ARCHITECTURE_TILEGX, ++ ARCHITECTURE_CRIS, + _ARCHITECTURE_MAX, + _ARCHITECTURE_INVALID = -1 + } Architecture; +@@ -110,6 +111,8 @@ Architecture uname_architecture(void); + # define native_architecture() ARCHITECTURE_M68K + #elif defined(__tilegx__) + # define native_architecture() ARCHITECTURE_TILEGX ++#elif defined(__cris__) ++# define native_architecture() ARCHITECTURE_CRIS + #else + #error "Please register your architecture here!" + #endif +-- +1.7.9.2 + diff --git a/0002-backlight-do-nothing-if-max_brightness-is-0.patch b/0002-backlight-do-nothing-if-max_brightness-is-0.patch new file mode 100644 index 00000000..8ca31e28 --- /dev/null +++ b/0002-backlight-do-nothing-if-max_brightness-is-0.patch @@ -0,0 +1,108 @@ +From 3cadce7d33e263ec7a6a83c00c11144930258b22 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Thomas=20B=C3=A4chler?= +Date: Thu, 27 Mar 2014 23:41:59 +0100 +Subject: [PATCH] backlight: do nothing if max_brightness is 0 + +On virtually any newer Asus mainboard, the eeepc-wmi driver is loaded. +It exposes a backlight device despite the lack of any physical backlight +devices. This fake backlight device has max_brightness set to 0. Since +the introduction of the clamp_brightness function, systemd-backlight +tries to write '1' to brightness and fails. + +This patch changes systemd-backlight to exit gracefully when +max_brightness is 0 before performing any action. This affects +both the load and save actions. +--- + src/backlight/backlight.c | 44 ++++++++++++++++++++++++++++++-------------- + 1 file changed, 30 insertions(+), 14 deletions(-) + +diff --git src/backlight/backlight.c src/backlight/backlight.c +index abf8bcf..ce0385b 100644 +--- src/backlight/backlight.c ++++ src/backlight/backlight.c +@@ -192,30 +192,37 @@ static bool validate_device(struct udev *udev, struct udev_device *device) { + return true; + } + +-/* Some systems turn the backlight all the way off at the lowest levels. +- * clamp_brightness clamps the saved brightness to at least 1 or 5% of +- * max_brightness. This avoids preserving an unreadably dim screen, which +- * would otherwise force the user to disable state restoration. */ +-static void clamp_brightness(struct udev_device *device, char **value) { ++static unsigned get_max_brightness(struct udev_device *device) { + int r; + const char *max_brightness_str; +- unsigned brightness, max_brightness, new_brightness; ++ unsigned max_brightness; + + max_brightness_str = udev_device_get_sysattr_value(device, "max_brightness"); + if (!max_brightness_str) { +- log_warning("Failed to read max_brightness attribute; not checking saved brightness"); +- return; ++ log_warning("Failed to read max_brightness attribute"); ++ return 0; + } + +- r = safe_atou(*value, &brightness); ++ r = safe_atou(max_brightness_str, &max_brightness); + if (r < 0) { +- log_warning("Failed to parse brightness \"%s\": %s", *value, strerror(-r)); +- return; ++ log_warning("Failed to parse max_brightness \"%s\": %s", max_brightness_str, strerror(-r)); ++ return 0; + } + +- r = safe_atou(max_brightness_str, &max_brightness); ++ return max_brightness; ++} ++ ++/* Some systems turn the backlight all the way off at the lowest levels. ++ * clamp_brightness clamps the saved brightness to at least 1 or 5% of ++ * max_brightness. This avoids preserving an unreadably dim screen, which ++ * would otherwise force the user to disable state restoration. */ ++static void clamp_brightness(struct udev_device *device, char **value, unsigned max_brightness) { ++ int r; ++ unsigned brightness, new_brightness; ++ ++ r = safe_atou(*value, &brightness); + if (r < 0) { +- log_warning("Failed to parse max_brightness \"%s\": %s", max_brightness_str, strerror(-r)); ++ log_warning("Failed to parse brightness \"%s\": %s", *value, strerror(-r)); + return; + } + +@@ -239,6 +246,7 @@ int main(int argc, char *argv[]) { + _cleanup_udev_device_unref_ struct udev_device *device = NULL; + _cleanup_free_ char *saved = NULL, *ss = NULL, *escaped_ss = NULL, *escaped_sysname = NULL, *escaped_path_id = NULL; + const char *sysname, *path_id; ++ unsigned max_brightness; + int r; + + if (argc != 3) { +@@ -294,6 +302,14 @@ int main(int argc, char *argv[]) { + return EXIT_FAILURE; + } + ++ /* If max_brightness is 0, then there is no actual backlight ++ * device. This happens on desktops with Asus mainboards ++ * that load the eeepc-wmi module. ++ */ ++ max_brightness = get_max_brightness(device); ++ if (max_brightness == 0) ++ return EXIT_SUCCESS; ++ + escaped_ss = cescape(ss); + if (!escaped_ss) { + log_oom(); +@@ -348,7 +364,7 @@ int main(int argc, char *argv[]) { + return EXIT_FAILURE; + } + +- clamp_brightness(device, &value); ++ clamp_brightness(device, &value, max_brightness); + + r = udev_device_set_sysattr_value(device, "brightness", value); + if (r < 0) { +-- +1.7.9.2 + diff --git a/0002-bootchart-use-n-a-if-PRETTY_NAME-is-not-found.patch b/0002-bootchart-use-n-a-if-PRETTY_NAME-is-not-found.patch new file mode 100644 index 00000000..8c1b12e2 --- /dev/null +++ b/0002-bootchart-use-n-a-if-PRETTY_NAME-is-not-found.patch @@ -0,0 +1,31 @@ +From 1c92ff85b786c423f4436ec26007e79369c9ac05 Mon Sep 17 00:00:00 2001 +From: Thomas Hindoe Paaboel Andersen +Date: Fri, 26 Sep 2014 22:01:32 +0200 +Subject: [PATCH] bootchart: use 'n/a' if PRETTY_NAME is not found + +Spotted with coverity. If parsing both /etc/os-release and +/usr/lib/os-release fails then null would be passed on. The calls +to parse the two files are allowed to fail. A empty /etc may not +have had the /etc/os-release symlink restored yet and we just +try again in the loop. If for whatever reason that does not happen +then we now pass on 'n/a' instead of null. +--- + src/bootchart/bootchart.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/bootchart/bootchart.c src/bootchart/bootchart.c +index 366a5ab..813e38d 100644 +--- src/bootchart/bootchart.c ++++ src/bootchart/bootchart.c +@@ -471,7 +471,7 @@ int main(int argc, char *argv[]) { + exit (EXIT_FAILURE); + } + +- svg_do(build); ++ svg_do(strna(build)); + + fprintf(stderr, "systemd-bootchart wrote %s\n", output_file); + +-- +1.7.9.2 + diff --git a/0002-bus-fix-memory-leak-when-kdbus-is-not-enabled.patch b/0002-bus-fix-memory-leak-when-kdbus-is-not-enabled.patch new file mode 100644 index 00000000..718f6862 --- /dev/null +++ b/0002-bus-fix-memory-leak-when-kdbus-is-not-enabled.patch @@ -0,0 +1,26 @@ +From 82923adfe5c4fa09cc91fd2a2e374c936cd4a186 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 13 Mar 2014 20:00:50 +0100 +Subject: [PATCH] bus: fix memory leak when kdbus is not enabled + +--- + src/libsystemd/sd-bus/sd-bus.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git src/libsystemd/sd-bus/sd-bus.c src/libsystemd/sd-bus/sd-bus.c +index ffa3369..ca7c428 100644 +--- src/libsystemd/sd-bus/sd-bus.c ++++ src/libsystemd/sd-bus/sd-bus.c +@@ -1189,7 +1189,8 @@ _public_ int sd_bus_open_user(sd_bus **ret) { + #ifdef ENABLE_KDBUS + asprintf(&b->address, KERNEL_USER_BUS_FMT, (unsigned long) getuid()); + #else +- return -ECONNREFUSED; ++ r = -ECONNREFUSED; ++ goto fail; + #endif + } + +-- +1.7.9.2 + diff --git a/0002-bus-make-use-of-sd_bus_try_close-in-exit-on-idle-ser.patch b/0002-bus-make-use-of-sd_bus_try_close-in-exit-on-idle-ser.patch new file mode 100644 index 00000000..3961c020 --- /dev/null +++ b/0002-bus-make-use-of-sd_bus_try_close-in-exit-on-idle-ser.patch @@ -0,0 +1,59 @@ +From b27adf354a83ad25f4a209c0a6f7989ecab7b4e2 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 5 Jun 2014 13:31:25 +0200 +Subject: [PATCH] bus: make use of sd_bus_try_close() in exit-on-idle services + +--- + src/libsystemd/sd-bus/bus-util.c | 25 +++++++++++++++++++++++-- + 1 file changed, 23 insertions(+), 2 deletions(-) + +diff --git src/libsystemd/sd-bus/bus-util.c src/libsystemd/sd-bus/bus-util.c +index 6bd21cc..6441c5b 100644 +--- src/libsystemd/sd-bus/bus-util.c ++++ src/libsystemd/sd-bus/bus-util.c +@@ -43,7 +43,9 @@ static int name_owner_change_callback(sd_bus *bus, sd_bus_message *m, void *user + assert(m); + assert(e); + ++ sd_bus_close(bus); + sd_event_exit(e, 0); ++ + return 1; + } + +@@ -121,11 +123,30 @@ int bus_event_loop_with_idle( + return r; + + if (r == 0 && !exiting) { +- r = bus_async_unregister_and_exit(e, bus, name); ++ ++ r = sd_bus_try_close(bus); ++ if (r == -EBUSY) ++ continue; ++ ++ if (r == -ENOTSUP) { ++ /* Fallback for dbus1 connections: we ++ * unregister the name and wait for ++ * the response to come through for ++ * it */ ++ ++ r = bus_async_unregister_and_exit(e, bus, name); ++ if (r < 0) ++ return r; ++ ++ exiting = true; ++ continue; ++ } ++ + if (r < 0) + return r; + +- exiting = true; ++ sd_event_exit(e, 0); ++ break; + } + } + +-- +1.7.9.2 + diff --git a/0002-bus-remove-unused-check.patch b/0002-bus-remove-unused-check.patch new file mode 100644 index 00000000..32c35276 --- /dev/null +++ b/0002-bus-remove-unused-check.patch @@ -0,0 +1,29 @@ +From 04c553e322680b6fcdf5b271e84b0b4b0ad8d5f9 Mon Sep 17 00:00:00 2001 +From: Thomas Hindoe Paaboel Andersen +Date: Tue, 23 Sep 2014 21:34:21 +0200 +Subject: [PATCH] bus: remove unused check + +strerror_r does not return null here and even if it did we would have +problems already at the preceding strlen call. + +Found by coverity. Fixes: CID#1237770 +--- + src/libsystemd/sd-bus/bus-error.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/libsystemd/sd-bus/bus-error.c src/libsystemd/sd-bus/bus-error.c +index c2e41fb..abdfd73 100644 +--- src/libsystemd/sd-bus/bus-error.c ++++ src/libsystemd/sd-bus/bus-error.c +@@ -312,7 +312,7 @@ static void bus_error_strerror(sd_bus_error *e, int error) { + continue; + } + +- if (!x || errno) { ++ if (errno) { + free(m); + return; + } +-- +1.7.9.2 + diff --git a/0002-core-make-sure-Environment-fields-passed-in-for-tran.patch b/0002-core-make-sure-Environment-fields-passed-in-for-tran.patch new file mode 100644 index 00000000..ec455770 --- /dev/null +++ b/0002-core-make-sure-Environment-fields-passed-in-for-tran.patch @@ -0,0 +1,27 @@ +From cdd7b7dfd44649b204c43e907f03d4294de4f28a Mon Sep 17 00:00:00 2001 +From: Hristo Venev +Date: Mon, 23 Jun 2014 18:53:04 +0200 +Subject: [PATCH] core: make sure Environment fields passed in for transient + units are properly written to unit files + +https://bugs.freedesktop.org/show_bug.cgi?id=76744 +--- + src/core/dbus-execute.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/core/dbus-execute.c src/core/dbus-execute.c +index cb9a077..ecbadd7 100644 +--- src/core/dbus-execute.c ++++ src/core/dbus-execute.c +@@ -848,7 +848,7 @@ int bus_exec_context_set_transient_property( + strv_free(c->environment); + c->environment = e; + +- joined = strv_join(c->environment, " "); ++ joined = strv_join_quoted(c->environment); + if (!joined) + return -ENOMEM; + +-- +1.7.9.2 + diff --git a/0002-core-transaction-fix-cycle-break-attempts-outside-tr.patch b/0002-core-transaction-fix-cycle-break-attempts-outside-tr.patch new file mode 100644 index 00000000..61888e5f --- /dev/null +++ b/0002-core-transaction-fix-cycle-break-attempts-outside-tr.patch @@ -0,0 +1,42 @@ +From 375ae4aa4d2f89ae8afdd27e9f2b8336fcc2a046 Mon Sep 17 00:00:00 2001 +From: Uoti Urpala +Date: Mon, 23 Jun 2014 16:50:03 +0300 +Subject: [PATCH] core/transaction: fix cycle break attempts outside + transaction + +Patch fixes some incorrect-looking code in transaction.c. +It could fix cases where Debian users with bad package configurations +had systemd go into an infinite loop printing messages about breaking an +ordering cycle, though I have not reproduced that problem myself. + +transaction_verify_order_one() considers jobs/units outside current +transaction when checking whether ordering dependencies cause cycles. +It would also incorrectly try to break cycles at these jobs; this +cannot work, as the break action is to remove the job from the +transaction, which is a no-op if the job isn't part of the transaction +to begin with. The unit_matters_to_anchor() test also looks like it +would not work correctly for non-transaction jobs. Add a check to +verify that the unit is part of the transaction before considering a +job a candidate for deletion. + +https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=752259 +--- + src/core/transaction.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/core/transaction.c src/core/transaction.c +index d23a45c..805d40a 100644 +--- src/core/transaction.c ++++ src/core/transaction.c +@@ -381,7 +381,7 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi + "Found dependency on %s/%s", + k->unit->id, job_type_to_string(k->type)); + +- if (!delete && ++ if (!delete && hashmap_get(tr->jobs, k->unit) && + !unit_matters_to_anchor(k->unit, k)) { + /* Ok, we can drop this one, so let's + * do so. */ +-- +1.7.9.2 + diff --git a/0002-core-watchdog-bus-properties-cannot-be-both-writable.patch b/0002-core-watchdog-bus-properties-cannot-be-both-writable.patch new file mode 100644 index 00000000..3a136da5 --- /dev/null +++ b/0002-core-watchdog-bus-properties-cannot-be-both-writable.patch @@ -0,0 +1,23 @@ +Based on 4c3f1641f13b7687a0dc234d3ae387b7c40494ff Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 19 Nov 2014 20:52:23 +0100 +Subject: [PATCH] core: watchdog bus properties cannot be both writable and + constant + +--- + src/core/dbus-manager.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- src/core/dbus-manager.c ++++ src/core/dbus-manager.c 2014-11-20 13:43:06.781518488 +0000 +@@ -1599,8 +1599,8 @@ const sd_bus_vtable bus_manager_vtable[] + SD_BUS_PROPERTY("UnitPath", "as", NULL, offsetof(Manager, lookup_paths.unit_path), SD_BUS_VTABLE_PROPERTY_CONST), + SD_BUS_PROPERTY("DefaultStandardOutput", "s", bus_property_get_exec_output, offsetof(Manager, default_std_output), SD_BUS_VTABLE_PROPERTY_CONST), + SD_BUS_PROPERTY("DefaultStandardError", "s", bus_property_get_exec_output, offsetof(Manager, default_std_output), SD_BUS_VTABLE_PROPERTY_CONST), +- SD_BUS_WRITABLE_PROPERTY("RuntimeWatchdogUSec", "t", bus_property_get_usec, property_set_runtime_watchdog, offsetof(Manager, runtime_watchdog), SD_BUS_VTABLE_PROPERTY_CONST), +- SD_BUS_WRITABLE_PROPERTY("ShutdownWatchdogUSec", "t", bus_property_get_usec, bus_property_set_usec, offsetof(Manager, shutdown_watchdog), SD_BUS_VTABLE_PROPERTY_CONST), ++ SD_BUS_WRITABLE_PROPERTY("RuntimeWatchdogUSec", "t", bus_property_get_usec, property_set_runtime_watchdog, offsetof(Manager, runtime_watchdog), 0), ++ SD_BUS_WRITABLE_PROPERTY("ShutdownWatchdogUSec", "t", bus_property_get_usec, bus_property_set_usec, offsetof(Manager, shutdown_watchdog), 0), + SD_BUS_PROPERTY("ControlGroup", "s", NULL, offsetof(Manager, cgroup_root), 0), + + SD_BUS_METHOD("GetUnit", "s", "o", method_get_unit, SD_BUS_VTABLE_UNPRIVILEGED), diff --git a/0002-execute-free-directory-path-if-we-fail-to-remove-it-.patch b/0002-execute-free-directory-path-if-we-fail-to-remove-it-.patch new file mode 100644 index 00000000..67454ead --- /dev/null +++ b/0002-execute-free-directory-path-if-we-fail-to-remove-it-.patch @@ -0,0 +1,54 @@ +From 98b47d54ce946ad3524f84eb38d2413498a333dc Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 3 Mar 2014 17:11:39 +0100 +Subject: [PATCH] execute: free directory path if we fail to remove it because + we cannot allocate a thread + +--- + src/core/execute.c | 18 ++++++++++++++++-- + 1 file changed, 16 insertions(+), 2 deletions(-) + +diff --git src/core/execute.c src/core/execute.c +index 9de6e87..3312885 100644 +--- src/core/execute.c ++++ src/core/execute.c +@@ -2713,6 +2713,8 @@ static void *remove_tmpdir_thread(void *p) { + } + + void exec_runtime_destroy(ExecRuntime *rt) { ++ int r; ++ + if (!rt) + return; + +@@ -2722,13 +2724,25 @@ void exec_runtime_destroy(ExecRuntime *rt) { + + if (rt->tmp_dir) { + log_debug("Spawning thread to nuke %s", rt->tmp_dir); +- asynchronous_job(remove_tmpdir_thread, rt->tmp_dir); ++ ++ r = asynchronous_job(remove_tmpdir_thread, rt->tmp_dir); ++ if (r < 0) { ++ log_warning("Failed to nuke %s: %s", rt->tmp_dir, strerror(-r)); ++ free(rt->tmp_dir); ++ } ++ + rt->tmp_dir = NULL; + } + + if (rt->var_tmp_dir) { + log_debug("Spawning thread to nuke %s", rt->var_tmp_dir); +- asynchronous_job(remove_tmpdir_thread, rt->var_tmp_dir); ++ ++ r = asynchronous_job(remove_tmpdir_thread, rt->var_tmp_dir); ++ if (r < 0) { ++ log_warning("Failed to nuke %s: %s", rt->var_tmp_dir, strerror(-r)); ++ free(rt->var_tmp_dir); ++ } ++ + rt->var_tmp_dir = NULL; + } + +-- +1.7.9.2 + diff --git a/0002-fsck-include-device-name-in-the-message-about-missin.patch b/0002-fsck-include-device-name-in-the-message-about-missin.patch new file mode 100644 index 00000000..7ec3506f --- /dev/null +++ b/0002-fsck-include-device-name-in-the-message-about-missin.patch @@ -0,0 +1,26 @@ +Based on 8d2a6145334257c8a9ceabc9dd52dff06cca818e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Mon, 26 May 2014 23:03:11 -0400 +Subject: [PATCH] fsck: include device name in the message about missing fsck + +--- + src/fsck/fsck.c | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +--- src/fsck/fsck.c ++++ src/fsck/fsck.c 2014-06-03 14:15:15.746235301 +0000 +@@ -284,10 +284,12 @@ int main(int argc, char *argv[]) { + r = access(checker, X_OK); + if (r < 0) { + if (errno == ENOENT) { +- log_info("%s doesn't exist, not checking file system.", checker); ++ log_info("%s doesn't exist, not checking file system on %s", ++ checker, device); + return EXIT_SUCCESS; + } else +- log_warning("%s cannot be used: %m", checker); ++ log_warning("%s cannot be used for %s: %m", ++ checker, device); + } + } + diff --git a/0002-hostnamed-add-a-new-chassis-type-for-watches.patch b/0002-hostnamed-add-a-new-chassis-type-for-watches.patch new file mode 100644 index 00000000..a20c11c6 --- /dev/null +++ b/0002-hostnamed-add-a-new-chassis-type-for-watches.patch @@ -0,0 +1,26 @@ +From c49e59c1831f20fe02276d7bc6ba7d23d24c4ab3 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 9 Jul 2014 13:20:05 +0200 +Subject: [PATCH] hostnamed: add a new chassis type for watches + +--- + src/hostname/hostnamed.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git src/hostname/hostnamed.c src/hostname/hostnamed.c +index 514554d..eaae113 100644 +--- src/hostname/hostnamed.c ++++ src/hostname/hostnamed.c +@@ -144,7 +144,8 @@ static bool valid_chassis(const char *chassis) { + "laptop\0" + "server\0" + "tablet\0" +- "handset\0", ++ "handset\0" ++ "watch\0", + chassis); + } + +-- +1.7.9.2 + diff --git a/0002-hwdb-Add-mapping-for-special-keys-on-compaq-ku-0133-.patch b/0002-hwdb-Add-mapping-for-special-keys-on-compaq-ku-0133-.patch new file mode 100644 index 00000000..8304b2d4 --- /dev/null +++ b/0002-hwdb-Add-mapping-for-special-keys-on-compaq-ku-0133-.patch @@ -0,0 +1,42 @@ +From fc1ae82cae69d8dbbd9e7a31938810a486fac782 Mon Sep 17 00:00:00 2001 +From: Hans de Goede +Date: Wed, 22 Oct 2014 14:09:21 +0200 +Subject: [PATCH] hwdb: Add mapping for special keys on compaq ku 0133 + keyboards + +The compaq ku 0133 keyboard has 8 special keys at the top: +http://lackof.org/taggart/hacking/keyboard/cpqwireless.jpg + +3 of these use standard HID usage codes from the consumer page, the 5 +others use part of the reserved 0x07 - 0x1f range. + +This commit adds mapping for this keyboard for these reserved codes, making +the other 5 keys work. + +Cc: Hans de Goede +Signed-off-by: Hans de Goede +--- + hwdb/60-keyboard.hwdb | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index 59f467b..06caba9 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -181,6 +181,13 @@ keyboard:dmi:bvn*:bvr*:bd*:svnCompaq*:pn*Evo*N*:pvr* + KEYBOARD_KEY_9e=email + KEYBOARD_KEY_9f=homepage + ++keyboard:usb:v049Fp0051d*dc*dsc*dp*ic*isc*ip*in01* ++ KEYBOARD_KEY_0c0011=presentation ++ KEYBOARD_KEY_0c0012=addressbook ++ KEYBOARD_KEY_0c0013=info ++ KEYBOARD_KEY_0c0014=prog1 ++ KEYBOARD_KEY_0c0015=messenger ++ + ########################################################### + # Dell + ########################################################### +-- +1.7.9.2 + diff --git a/0002-hwdb-Update-database-of-Bluetooth-company-identifier.patch b/0002-hwdb-Update-database-of-Bluetooth-company-identifier.patch new file mode 100644 index 00000000..a386c649 --- /dev/null +++ b/0002-hwdb-Update-database-of-Bluetooth-company-identifier.patch @@ -0,0 +1,32 @@ +From f401e2b24ba17452f9655993a6dedefdffe06d23 Mon Sep 17 00:00:00 2001 +From: Marcel Holtmann +Date: Tue, 11 Mar 2014 09:33:31 -0700 +Subject: [PATCH] hwdb: Update database of Bluetooth company identifiers + +--- + hwdb/20-bluetooth-vendor-product.hwdb | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +diff --git hwdb/20-bluetooth-vendor-product.hwdb hwdb/20-bluetooth-vendor-product.hwdb +index 0335a71..7d86f10 100644 +--- hwdb/20-bluetooth-vendor-product.hwdb ++++ hwdb/20-bluetooth-vendor-product.hwdb +@@ -911,3 +911,15 @@ bluetooth:v012C* + + bluetooth:v012D* + ID_VENDOR_FROM_DATABASE=Sony Corporation ++ ++bluetooth:v012E* ++ ID_VENDOR_FROM_DATABASE=ASSA ABLOY ++ ++bluetooth:v012F* ++ ID_VENDOR_FROM_DATABASE=Clarion Co., Ltd. ++ ++bluetooth:v0130* ++ ID_VENDOR_FROM_DATABASE=Warehouse Innovations ++ ++bluetooth:v0131* ++ ID_VENDOR_FROM_DATABASE=Cypress Semiconductor Corporation +-- +1.7.9.2 + diff --git a/0002-hwdb-update.patch b/0002-hwdb-update.patch new file mode 100644 index 00000000..1d3abc28 --- /dev/null +++ b/0002-hwdb-update.patch @@ -0,0 +1,2058 @@ +From dbe633cc027e31a0d4fb488a3c68b7762ef0e7b3 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Sun, 13 Apr 2014 23:46:27 -0700 +Subject: [PATCH] hwdb: update + +--- + hwdb/20-OUI.hwdb | 275 +++++++++++++++++++++- + hwdb/20-pci-vendor-model.hwdb | 522 ++++++++++++++++++++++++++++++++++++++--- + 2 files changed, 751 insertions(+), 46 deletions(-) + +diff --git hwdb/20-OUI.hwdb hwdb/20-OUI.hwdb +index 209b89e..17794ed 100644 +--- hwdb/20-OUI.hwdb ++++ hwdb/20-OUI.hwdb +@@ -6929,7 +6929,7 @@ OUI:0050C2912* + ID_OUI_FROM_DATABASE=ASSET InterTech, Inc. + + OUI:0050C2913* +- ID_OUI_FROM_DATABASE=Selex Sensors & Airborne Systems ++ ID_OUI_FROM_DATABASE=Selex Ex Ltd + + OUI:0050C2914* + ID_OUI_FROM_DATABASE=IO-Connect +@@ -15944,7 +15944,7 @@ OUI:000300* + ID_OUI_FROM_DATABASE=Barracuda Networks, Inc. + + OUI:000301* +- ID_OUI_FROM_DATABASE=Avantas Networks Corporation ++ ID_OUI_FROM_DATABASE=EXFO + + OUI:000302* + ID_OUI_FROM_DATABASE=Charles Industries, Ltd. +@@ -24575,7 +24575,7 @@ OUI:000E65* + ID_OUI_FROM_DATABASE=TransCore + + OUI:000E66* +- ID_OUI_FROM_DATABASE=Hitachi Advanced Digital, Inc. ++ ID_OUI_FROM_DATABASE=Hitachi Industry & Control Solutions, Ltd. + + OUI:000E67* + ID_OUI_FROM_DATABASE=Eltis Microelectronics Ltd. +@@ -24947,7 +24947,7 @@ OUI:000EE1* + ID_OUI_FROM_DATABASE=ExtremeSpeed Inc. + + OUI:000EE2* +- ID_OUI_FROM_DATABASE=Custom Engineering S.p.A. ++ ID_OUI_FROM_DATABASE=Custom Engineering + + OUI:000EE3* + ID_OUI_FROM_DATABASE=Chiyu Technology Co.,Ltd +@@ -51760,6 +51760,9 @@ OUI:045A95* + OUI:045C06* + ID_OUI_FROM_DATABASE=Zmodo Technology Corporation + ++OUI:045C8E* ++ ID_OUI_FROM_DATABASE=gosund GROUP CO.,LTD ++ + OUI:045D56* + ID_OUI_FROM_DATABASE=camtron industrial inc. + +@@ -51865,6 +51868,9 @@ OUI:04C5A4* + OUI:04C880* + ID_OUI_FROM_DATABASE=Samtec Inc + ++OUI:04C991* ++ ID_OUI_FROM_DATABASE=Phistek INC. ++ + OUI:04CB1D* + ID_OUI_FROM_DATABASE=Traka plc + +@@ -52633,6 +52639,9 @@ OUI:08CA45* + OUI:08CC68* + ID_OUI_FROM_DATABASE=Cisco + ++OUI:08CD9B* ++ ID_OUI_FROM_DATABASE=samtec automotive electronics & software GmbH ++ + OUI:08D09F* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -52684,6 +52693,9 @@ OUI:08F2F4* + OUI:08F6F8* + ID_OUI_FROM_DATABASE=GET Engineering + ++OUI:08F728* ++ ID_OUI_FROM_DATABASE=GLOBO Multimedia Sp. z o.o. Sp.k. ++ + OUI:08FAE0* + ID_OUI_FROM_DATABASE=Fohhn Audio AG + +@@ -52750,6 +52762,9 @@ OUI:0C3021* + OUI:0C37DC* + ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd + ++OUI:0C383E* ++ ID_OUI_FROM_DATABASE=Fanvil Technology Co., Ltd. ++ + OUI:0C3956* + ID_OUI_FROM_DATABASE=Observator instruments + +@@ -53104,6 +53119,9 @@ OUI:102D96* + OUI:102EAF* + ID_OUI_FROM_DATABASE=Texas Instruments + ++OUI:103047* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:103378* + ID_OUI_FROM_DATABASE=FLECTRON Co., LTD + +@@ -53215,6 +53233,9 @@ OUI:1088CE* + OUI:108CCF* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + ++OUI:109266* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:1093E9* + ID_OUI_FROM_DATABASE=Apple + +@@ -53260,6 +53281,9 @@ OUI:10BF48* + OUI:10C2BA* + ID_OUI_FROM_DATABASE=UTT Co., Ltd. + ++OUI:10C37B* ++ ID_OUI_FROM_DATABASE=ASUSTek COMPUTER INC. ++ + OUI:10C586* + ID_OUI_FROM_DATABASE=BIO SOUND LAB CO., LTD. + +@@ -53365,6 +53389,9 @@ OUI:141BBD* + OUI:141BF0* + ID_OUI_FROM_DATABASE=Intellimedia Systems Ltd + ++OUI:141FBA* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ + OUI:1423D7* + ID_OUI_FROM_DATABASE=EUTRONIX CO., LTD. + +@@ -53518,6 +53545,9 @@ OUI:14B968* + OUI:14C089* + ID_OUI_FROM_DATABASE=DUNE HD LTD + ++OUI:14C126* ++ ID_OUI_FROM_DATABASE=Nokia Corporation ++ + OUI:14C21D* + ID_OUI_FROM_DATABASE=Sabtech Industries + +@@ -53572,6 +53602,9 @@ OUI:14F28E* + OUI:14F42A* + ID_OUI_FROM_DATABASE=Samsung Electronics + ++OUI:14F65A* ++ ID_OUI_FROM_DATABASE=Xiaomi inc. ++ + OUI:14FEAF* + ID_OUI_FROM_DATABASE=SAGITTAR LIMITED + +@@ -53659,6 +53692,9 @@ OUI:182B05* + OUI:182C91* + ID_OUI_FROM_DATABASE=Concept Development, Inc. + ++OUI:183009* ++ ID_OUI_FROM_DATABASE=Woojin Industrial Systems Co., Ltd. ++ + OUI:1832A2* + ID_OUI_FROM_DATABASE=LAON TECHNOLOGY CO., LTD. + +@@ -53698,6 +53734,9 @@ OUI:184617* + OUI:1848D8* + ID_OUI_FROM_DATABASE=Fastback Networks + ++OUI:184A6F* ++ ID_OUI_FROM_DATABASE=Alcatel-Lucent Shanghai Bell Co., Ltd ++ + OUI:184E94* + ID_OUI_FROM_DATABASE=MESSOA TECHNOLOGIES INC. + +@@ -53758,6 +53797,9 @@ OUI:1880F5* + OUI:188331* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:1883BF* ++ ID_OUI_FROM_DATABASE=Arcadyan Technology Corporation ++ + OUI:188410* + ID_OUI_FROM_DATABASE=CoreTrust Inc. + +@@ -54322,6 +54364,9 @@ OUI:206A8A* + OUI:206AFF* + ID_OUI_FROM_DATABASE=Atlas Elektronik UK Limited + ++OUI:206E9C* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:206FEC* + ID_OUI_FROM_DATABASE=Braemac CA LLC + +@@ -54838,6 +54883,9 @@ OUI:284C53* + OUI:284D92* + ID_OUI_FROM_DATABASE=Luminator + ++OUI:284ED7* ++ ID_OUI_FROM_DATABASE=OutSmart Power Systems, Inc. ++ + OUI:284FCE* + ID_OUI_FROM_DATABASE=Liaoning Wontel Science and Technology Development Co.,Ltd. + +@@ -54976,6 +55024,9 @@ OUI:28C68E* + OUI:28C718* + ID_OUI_FROM_DATABASE=Altierre + ++OUI:28C7CE* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:28C825* + ID_OUI_FROM_DATABASE=DellKing Industrial Co., Ltd + +@@ -55069,6 +55120,9 @@ OUI:28FBD3* + OUI:28FC51* + ID_OUI_FROM_DATABASE=The Electric Controller and Manufacturing Co., LLC + ++OUI:28FCF6* ++ ID_OUI_FROM_DATABASE=Shenzhen Xin KingBrand enterprises Co.,Ltd ++ + OUI:2C002C* + ID_OUI_FROM_DATABASE=UNOWHY + +@@ -55291,6 +55345,9 @@ OUI:2CB693* + OUI:2CB69D* + ID_OUI_FROM_DATABASE=RED Digital Cinema + ++OUI:2CBE08* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:2CBE97* + ID_OUI_FROM_DATABASE=Ingenieurbuero Bickele und Buehler GmbH + +@@ -55354,6 +55411,9 @@ OUI:30055C* + OUI:300B9C* + ID_OUI_FROM_DATABASE=Delta Mobile Systems, Inc. + ++OUI:300D2A* ++ ID_OUI_FROM_DATABASE=Zhejiang Wellcom Technology Co.,Ltd. ++ + OUI:300ED5* + ID_OUI_FROM_DATABASE=Hon Hai Precision Ind.Co.Ltd + +@@ -55450,6 +55510,9 @@ OUI:3055ED* + OUI:3057AC* + ID_OUI_FROM_DATABASE=IRLAB LTD. + ++OUI:30595B* ++ ID_OUI_FROM_DATABASE=streamnow AG ++ + OUI:3059B7* + ID_OUI_FROM_DATABASE=Microsoft + +@@ -55543,6 +55606,9 @@ OUI:30B3A2* + OUI:30B5C2* + ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. + ++OUI:30B5F1* ++ ID_OUI_FROM_DATABASE=Aitexin Technology Co., Ltd ++ + OUI:30C750* + ID_OUI_FROM_DATABASE=MIC Technology Group + +@@ -55606,6 +55672,9 @@ OUI:30F9ED* + OUI:30FD11* + ID_OUI_FROM_DATABASE=MACROTECH (USA) INC. + ++OUI:340286* ++ ID_OUI_FROM_DATABASE=Intel Corporate ++ + OUI:3407FB* + ID_OUI_FROM_DATABASE=Ericsson AB + +@@ -55654,6 +55723,9 @@ OUI:342F6E* + OUI:343111* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:3431C4* ++ ID_OUI_FROM_DATABASE=AVM GmbH ++ + OUI:3440B5* + ID_OUI_FROM_DATABASE=IBM + +@@ -55840,6 +55912,9 @@ OUI:34C059* + OUI:34C3AC* + ID_OUI_FROM_DATABASE=Samsung Electronics + ++OUI:34C5D0* ++ ID_OUI_FROM_DATABASE=Hagleitner Hygiene International GmbH ++ + OUI:34C69A* + ID_OUI_FROM_DATABASE=Enecsys Ltd + +@@ -55963,6 +56038,9 @@ OUI:3826CD* + OUI:3828EA* + ID_OUI_FROM_DATABASE=Fujian Netcom Technology Co., LTD + ++OUI:382DD1* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:3831AC* + ID_OUI_FROM_DATABASE=WEG + +@@ -56371,6 +56449,9 @@ OUI:3C99F7* + OUI:3C9F81* + ID_OUI_FROM_DATABASE=Shenzhen CATIC Bit Communications Technology Co.,Ltd + ++OUI:3CA10D* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:3CA315* + ID_OUI_FROM_DATABASE=Bless Information & Communications Co., Ltd + +@@ -56380,6 +56461,9 @@ OUI:3CA72B* + OUI:3CA9F4* + ID_OUI_FROM_DATABASE=Intel Corporate + ++OUI:3CAA3F* ++ ID_OUI_FROM_DATABASE=iKey, Ltd. ++ + OUI:3CAB8E* + ID_OUI_FROM_DATABASE=Apple + +@@ -56413,6 +56497,9 @@ OUI:3CC99E* + OUI:3CCA87* + ID_OUI_FROM_DATABASE=Iders Incorporated + ++OUI:3CCD5A* ++ ID_OUI_FROM_DATABASE=Technische Alternative GmbH ++ + OUI:3CCD93* + ID_OUI_FROM_DATABASE=LG ELECTRONICS INC + +@@ -57109,6 +57196,9 @@ OUI:481A84* + OUI:481BD2* + ID_OUI_FROM_DATABASE=Intron Scientific co., ltd. + ++OUI:4826E8* ++ ID_OUI_FROM_DATABASE=Tek-Air Systems, Inc. ++ + OUI:48282F* + ID_OUI_FROM_DATABASE=ZTE Corporation + +@@ -57260,7 +57350,7 @@ OUI:48D7FF* + ID_OUI_FROM_DATABASE=BLANKOM Antennentechnik GmbH + + OUI:48D855* +- ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY ++ ID_OUI_FROM_DATABASE=Telvent + + OUI:48D8FE* + ID_OUI_FROM_DATABASE=ClarIDy Solutions, Inc. +@@ -57748,6 +57838,9 @@ OUI:507E5D* + OUI:508569* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,LTD + ++OUI:508789* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:5087B8* + ID_OUI_FROM_DATABASE=Nuvyyo Inc + +@@ -57880,6 +57973,9 @@ OUI:50FC30* + OUI:50FC9F* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:50FEF2* ++ ID_OUI_FROM_DATABASE=Sify Technologies Ltd ++ + OUI:5403F5* + ID_OUI_FROM_DATABASE=EBN Technology Corp. + +@@ -58072,6 +58168,9 @@ OUI:54AE27* + OUI:54B620* + ID_OUI_FROM_DATABASE=SUHDOL E&C Co.Ltd. + ++OUI:54B753* ++ ID_OUI_FROM_DATABASE=Hunan Fenghui Yinjia Science And Technology Co.,Ltd ++ + OUI:54BEF7* + ID_OUI_FROM_DATABASE=PEGATRON CORPORATION + +@@ -58132,6 +58231,9 @@ OUI:54F5B6* + OUI:54F666* + ID_OUI_FROM_DATABASE=Berthold Technologies GmbH and Co.KG + ++OUI:54FA3E* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,LTD ++ + OUI:54FB58* + ID_OUI_FROM_DATABASE=WISEWARE, Lda + +@@ -58462,6 +58564,9 @@ OUI:5C260A* + OUI:5C2AEF* + ID_OUI_FROM_DATABASE=Open Access Pty Ltd + ++OUI:5C2E59* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:5C313E* + ID_OUI_FROM_DATABASE=Texas Instruments + +@@ -58519,6 +58624,9 @@ OUI:5C57C8* + OUI:5C5948* + ID_OUI_FROM_DATABASE=Apple + ++OUI:5C5BC2* ++ ID_OUI_FROM_DATABASE=YIK Corporation ++ + OUI:5C5EAB* + ID_OUI_FROM_DATABASE=Juniper Networks + +@@ -58558,6 +58666,9 @@ OUI:5C8778* + OUI:5C89D4* + ID_OUI_FROM_DATABASE=Beijing Banner Electric Co.,Ltd + ++OUI:5C8D4E* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:5C95AE* + ID_OUI_FROM_DATABASE=Apple + +@@ -58819,6 +58930,9 @@ OUI:607688* + OUI:60812B* + ID_OUI_FROM_DATABASE=Custom Control Concepts + ++OUI:6081F9* ++ ID_OUI_FROM_DATABASE=Helium Systems, Inc ++ + OUI:6083B2* + ID_OUI_FROM_DATABASE=GkWare e.K. + +@@ -58867,6 +58981,9 @@ OUI:60A10A* + OUI:60A44C* + ID_OUI_FROM_DATABASE=ASUSTek COMPUTER INC. + ++OUI:60A8FE* ++ ID_OUI_FROM_DATABASE=Nokia Solutions and Networks ++ + OUI:60A9B0* + ID_OUI_FROM_DATABASE=Merchandising Technologies, Inc + +@@ -58918,6 +59035,9 @@ OUI:60C980* + OUI:60CBFB* + ID_OUI_FROM_DATABASE=AirScape Inc. + ++OUI:60CDA9* ++ ID_OUI_FROM_DATABASE=Abloomy ++ + OUI:60CDC5* + ID_OUI_FROM_DATABASE=Taiwan Carol Electronics., Ltd + +@@ -59092,6 +59212,9 @@ OUI:644D70* + OUI:644F74* + ID_OUI_FROM_DATABASE=LENUS Co., Ltd. + ++OUI:644FB0* ++ ID_OUI_FROM_DATABASE=Hyunjin.com ++ + OUI:64517E* + ID_OUI_FROM_DATABASE=LONG BEN (DONGGUAN) ELECTRONIC TECHNOLOGY CO.,LTD. + +@@ -59146,6 +59269,9 @@ OUI:64680C* + OUI:6469BC* + ID_OUI_FROM_DATABASE=Hytera Communications Co .,ltd + ++OUI:646CB2* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:646E6C* + ID_OUI_FROM_DATABASE=Radio Datacom LLC + +@@ -59305,6 +59431,9 @@ OUI:64D814* + OUI:64D912* + ID_OUI_FROM_DATABASE=Solidica, Inc. + ++OUI:64D954* ++ ID_OUI_FROM_DATABASE=TAICANG AND W ELECTRONICS CO LTD ++ + OUI:64D989* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -59368,6 +59497,9 @@ OUI:64F987* + OUI:64FC8C* + ID_OUI_FROM_DATABASE=Zonar Systems + ++OUI:680571* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:6805CA* + ID_OUI_FROM_DATABASE=Intel Corporate + +@@ -59701,6 +59833,9 @@ OUI:6C2E33* + OUI:6C2E85* + ID_OUI_FROM_DATABASE=SAGEMCOM + ++OUI:6C2F2C* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:6C32DE* + ID_OUI_FROM_DATABASE=Indieon Technologies Pvt. Ltd. + +@@ -59860,6 +59995,9 @@ OUI:6CADF8* + OUI:6CAE8B* + ID_OUI_FROM_DATABASE=IBM Corporation + ++OUI:6CB0CE* ++ ID_OUI_FROM_DATABASE=NETGEAR ++ + OUI:6CB311* + ID_OUI_FROM_DATABASE=Shenzhen Lianrui Electronics Co.,Ltd + +@@ -59875,6 +60013,9 @@ OUI:6CBEE9* + OUI:6CC1D2* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + ++OUI:6CC217* ++ ID_OUI_FROM_DATABASE=Hewlett Packard ++ + OUI:6CC26B* + ID_OUI_FROM_DATABASE=Apple + +@@ -59929,6 +60070,9 @@ OUI:6CF97C* + OUI:6CFA58* + ID_OUI_FROM_DATABASE=Avaya, Inc + ++OUI:6CFA89* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:6CFAA7* + ID_OUI_FROM_DATABASE=AMPAK Technology Inc. + +@@ -60097,6 +60241,9 @@ OUI:7071B3* + OUI:7071BC* + ID_OUI_FROM_DATABASE=PEGATRON CORPORATION + ++OUI:70720D* ++ ID_OUI_FROM_DATABASE=Lenovo Mobile Communication Technology Ltd. ++ + OUI:70723C* + ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd + +@@ -60502,6 +60649,9 @@ OUI:74D850* + OUI:74DA38* + ID_OUI_FROM_DATABASE=Edimax Technology Co. Ltd. + ++OUI:74DBD1* ++ ID_OUI_FROM_DATABASE=Ebay Inc ++ + OUI:74DE2B* + ID_OUI_FROM_DATABASE=Liteon Technology Corporation + +@@ -60733,6 +60883,9 @@ OUI:78923E* + OUI:78929C* + ID_OUI_FROM_DATABASE=Intel Corporate + ++OUI:789684* ++ ID_OUI_FROM_DATABASE=ARRIS Group, Inc. ++ + OUI:7898FD* + ID_OUI_FROM_DATABASE=Q9 Networks Inc. + +@@ -60922,6 +61075,9 @@ OUI:78F7BE* + OUI:78F7D0* + ID_OUI_FROM_DATABASE=Silverbrook Research + ++OUI:78FD94* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:78FE3D* + ID_OUI_FROM_DATABASE=Juniper Networks + +@@ -61060,6 +61216,9 @@ OUI:7C69F6* + OUI:7C6AB3* + ID_OUI_FROM_DATABASE=IBC TECHNOLOGIES INC. + ++OUI:7C6AC3* ++ ID_OUI_FROM_DATABASE=GatesAir, Inc ++ + OUI:7C6ADB* + ID_OUI_FROM_DATABASE=SafeTone Technology Co.,Ltd + +@@ -61087,6 +61246,9 @@ OUI:7C6F06* + OUI:7C6FF8* + ID_OUI_FROM_DATABASE=ShenZhen ACTO Digital Video Technology Co.,Ltd. + ++OUI:7C70BC* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ + OUI:7C72E4* + ID_OUI_FROM_DATABASE=Unikey Technologies + +@@ -61174,6 +61336,9 @@ OUI:7CBFB1* + OUI:7CC3A1* + ID_OUI_FROM_DATABASE=Apple + ++OUI:7CC4EF* ++ ID_OUI_FROM_DATABASE=Devialet ++ + OUI:7CC537* + ID_OUI_FROM_DATABASE=Apple + +@@ -61231,6 +61396,9 @@ OUI:7CE044* + OUI:7CE1FF* + ID_OUI_FROM_DATABASE=Computer Performance, Inc. DBA Digital Loggers, Inc. + ++OUI:7CE524* ++ ID_OUI_FROM_DATABASE=Quirky, Inc. ++ + OUI:7CE56B* + ID_OUI_FROM_DATABASE=ESEN Optoelectronics Technology Co.,Ltd. + +@@ -61477,6 +61645,9 @@ OUI:80A1D7* + OUI:80AAA4* + ID_OUI_FROM_DATABASE=USAG + ++OUI:80AD67* ++ ID_OUI_FROM_DATABASE=Kasda Digital Technology Co.,Ltd ++ + OUI:80B219* + ID_OUI_FROM_DATABASE=ELEKTRON TECHNOLOGY UK LIMITED + +@@ -61564,6 +61735,9 @@ OUI:80FFA8* + OUI:8400D2* + ID_OUI_FROM_DATABASE=Sony Ericsson Mobile Communications AB + ++OUI:8401A7* ++ ID_OUI_FROM_DATABASE=Greyware Automation Products, Inc ++ + OUI:840B2D* + ID_OUI_FROM_DATABASE=SAMSUNG ELECTRO-MECHANICS CO., LTD + +@@ -61576,6 +61750,9 @@ OUI:841715* + OUI:841766* + ID_OUI_FROM_DATABASE=Weifang GoerTek Electronics Co., Ltd + ++OUI:84183A* ++ ID_OUI_FROM_DATABASE=Ruckus Wireless ++ + OUI:841888* + ID_OUI_FROM_DATABASE=Juniper Networks + +@@ -61723,6 +61900,9 @@ OUI:848433* + OUI:848506* + ID_OUI_FROM_DATABASE=Apple + ++OUI:84850A* ++ ID_OUI_FROM_DATABASE=Hella Sonnen- und Wetterschutztechnik GmbH ++ + OUI:848D84* + ID_OUI_FROM_DATABASE=Rajant Corporation + +@@ -61885,6 +62065,9 @@ OUI:8823FE* + OUI:88252C* + ID_OUI_FROM_DATABASE=Arcadyan Technology Corporation + ++OUI:882950* ++ ID_OUI_FROM_DATABASE=Dalian Netmoon Tech Develop Co.,Ltd ++ + OUI:882E5A* + ID_OUI_FROM_DATABASE=storONE + +@@ -61948,6 +62131,9 @@ OUI:885C47* + OUI:88615A* + ID_OUI_FROM_DATABASE=Siano Mobile Silicon Ltd. + ++OUI:8863DF* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:88685C* + ID_OUI_FROM_DATABASE=Shenzhen ChuangDao & Perpetual Eternal Technology Co.,Ltd + +@@ -62098,6 +62284,9 @@ OUI:88E917* + OUI:88ED1C* + ID_OUI_FROM_DATABASE=Cudo Communication Co., Ltd. + ++OUI:88F031* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:88F077* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -62326,6 +62515,9 @@ OUI:8CB864* + OUI:8CBEBE* + ID_OUI_FROM_DATABASE=Xiaomi Technology Co.,Ltd + ++OUI:8CBF9D* ++ ID_OUI_FROM_DATABASE=Shanghai Xinyou Information Technology Ltd. Co. ++ + OUI:8CC121* + ID_OUI_FROM_DATABASE=Panasonic Corporation AVC Networks Company + +@@ -62662,6 +62854,9 @@ OUI:90B97D* + OUI:90C115* + ID_OUI_FROM_DATABASE=Sony Ericsson Mobile Communications AB + ++OUI:90C792* ++ ID_OUI_FROM_DATABASE=ARRIS Group, Inc. ++ + OUI:90CC24* + ID_OUI_FROM_DATABASE=Synaptics, Inc + +@@ -63259,6 +63454,9 @@ OUI:98EC65* + OUI:98F0AB* + ID_OUI_FROM_DATABASE=Apple + ++OUI:98F170* ++ ID_OUI_FROM_DATABASE=Murata Manufacturing Co., Ltd. ++ + OUI:98F537* + ID_OUI_FROM_DATABASE=zte corporation + +@@ -63496,6 +63694,9 @@ OUI:9CA577* + OUI:9CA9E4* + ID_OUI_FROM_DATABASE=zte corporation + ++OUI:9CAD97* ++ ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. ++ + OUI:9CADEF* + ID_OUI_FROM_DATABASE=Obihai Technology, Inc. + +@@ -64456,6 +64657,9 @@ OUI:A8E018* + OUI:A8E3EE* + ID_OUI_FROM_DATABASE=Sony Computer Entertainment Inc. + ++OUI:A8E539* ++ ID_OUI_FROM_DATABASE=Moimstone Co.,Ltd ++ + OUI:A8EF26* + ID_OUI_FROM_DATABASE=Tritonwave + +@@ -64702,6 +64906,9 @@ OUI:ACA016* + OUI:ACA22C* + ID_OUI_FROM_DATABASE=Baycity Technologies Ltd + ++OUI:ACA31E* ++ ID_OUI_FROM_DATABASE=Aruba Networks ++ + OUI:ACA430* + ID_OUI_FROM_DATABASE=Peerless AV + +@@ -64837,6 +65044,12 @@ OUI:B000B4* + OUI:B00594* + ID_OUI_FROM_DATABASE=Liteon Technology Corporation + ++OUI:B009D3* ++ ID_OUI_FROM_DATABASE=Avizia ++ ++OUI:B01041* ++ ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. ++ + OUI:B01203* + ID_OUI_FROM_DATABASE=Dynamics Hong Kong Limited + +@@ -64951,6 +65164,9 @@ OUI:B0808C* + OUI:B081D8* + ID_OUI_FROM_DATABASE=I-sys Corp + ++OUI:B083FE* ++ ID_OUI_FROM_DATABASE=Dell Inc ++ + OUI:B0869E* + ID_OUI_FROM_DATABASE=Chloride S.r.L + +@@ -65122,6 +65338,9 @@ OUI:B407F9* + OUI:B40832* + ID_OUI_FROM_DATABASE=TC Communications + ++OUI:B40B44* ++ ID_OUI_FROM_DATABASE=Smartisan Technology Co., Ltd. ++ + OUI:B40B7A* + ID_OUI_FROM_DATABASE=Brusa Elektronik AG + +@@ -65200,6 +65419,9 @@ OUI:B4417A* + OUI:B4430D* + ID_OUI_FROM_DATABASE=Broadlink Pty Ltd + ++OUI:B4475E* ++ ID_OUI_FROM_DATABASE=Avaya, Inc ++ + OUI:B44CC2* + ID_OUI_FROM_DATABASE=NR ELECTRIC CO., LTD + +@@ -65608,6 +65830,9 @@ OUI:B8A8AF* + OUI:B8AC6F* + ID_OUI_FROM_DATABASE=Dell Inc + ++OUI:B8AD3E* ++ ID_OUI_FROM_DATABASE=BLUECOM ++ + OUI:B8AE6E* + ID_OUI_FROM_DATABASE=Nintendo Co., Ltd. + +@@ -65842,6 +66067,9 @@ OUI:BC4B79* + OUI:BC4E3C* + ID_OUI_FROM_DATABASE=CORE STAFF CO., LTD. + ++OUI:BC4E5D* ++ ID_OUI_FROM_DATABASE=ZhongMiao Technology Co., Ltd. ++ + OUI:BC51FE* + ID_OUI_FROM_DATABASE=Swann Communications Pty Ltd + +@@ -65974,6 +66202,9 @@ OUI:BCC6DB* + OUI:BCC810* + ID_OUI_FROM_DATABASE=Cisco SPVTG + ++OUI:BCCAB5* ++ ID_OUI_FROM_DATABASE=ARRIS Group, Inc. ++ + OUI:BCCD45* + ID_OUI_FROM_DATABASE=VOISMART + +@@ -66748,6 +66979,9 @@ OUI:C88B47* + OUI:C8903E* + ID_OUI_FROM_DATABASE=Pakton Technologies + ++OUI:C891F9* ++ ID_OUI_FROM_DATABASE=SAGEMCOM ++ + OUI:C89346* + ID_OUI_FROM_DATABASE=MXCHIP Company Limited + +@@ -67000,6 +67234,9 @@ OUI:CC3A61* + OUI:CC3C3F* + ID_OUI_FROM_DATABASE=SA.S.S. Datentechnik AG + ++OUI:CC3D82* ++ ID_OUI_FROM_DATABASE=Intel Corporate ++ + OUI:CC3E5F* + ID_OUI_FROM_DATABASE=Hewlett Packard + +@@ -67303,6 +67540,9 @@ OUI:D03761* + OUI:D03972* + ID_OUI_FROM_DATABASE=Texas Instruments + ++OUI:D039B3* ++ ID_OUI_FROM_DATABASE=ARRIS Group, Inc. ++ + OUI:D046DC* + ID_OUI_FROM_DATABASE=Southwest Research Institute + +@@ -67735,6 +67975,9 @@ OUI:D48FAA* + OUI:D491AF* + ID_OUI_FROM_DATABASE=Electroacustica General Iberica, S.A. + ++OUI:D49398* ++ ID_OUI_FROM_DATABASE=Nokia Corporation ++ + OUI:D493A0* + ID_OUI_FROM_DATABASE=Fidelix Oy + +@@ -68057,7 +68300,7 @@ OUI:D89695* + ID_OUI_FROM_DATABASE=Apple + + OUI:D8973B* +- ID_OUI_FROM_DATABASE=Emerson Network Power Embedded Power ++ ID_OUI_FROM_DATABASE=Artesyn Embedded Technologies + + OUI:D89760* + ID_OUI_FROM_DATABASE=C2 Development, Inc. +@@ -68170,6 +68413,9 @@ OUI:D8DF0D* + OUI:D8E3AE* + ID_OUI_FROM_DATABASE=CIRTEC MEDICAL SYSTEMS + ++OUI:D8E56D* ++ ID_OUI_FROM_DATABASE=TCT Mobile Limited ++ + OUI:D8E72B* + ID_OUI_FROM_DATABASE=OnPATH Technologies + +@@ -69319,6 +69565,9 @@ OUI:E8F928* + OUI:E8FC60* + ID_OUI_FROM_DATABASE=ELCOM Innovations Private Limited + ++OUI:E8FCAF* ++ ID_OUI_FROM_DATABASE=NETGEAR INC., ++ + OUI:EC0ED6* + ID_OUI_FROM_DATABASE=ITECH INSTRUMENTS SAS + +@@ -69442,6 +69691,9 @@ OUI:EC888F* + OUI:EC89F5* + ID_OUI_FROM_DATABASE=Lenovo Mobile Communication Technology Ltd. + ++OUI:EC8A4C* ++ ID_OUI_FROM_DATABASE=zte corporation ++ + OUI:EC8EAD* + ID_OUI_FROM_DATABASE=DLX + +@@ -70099,6 +70351,9 @@ OUI:F4CE46* + OUI:F4CFE2* + ID_OUI_FROM_DATABASE=Cisco + ++OUI:F4D261* ++ ID_OUI_FROM_DATABASE=SEMOCON Co., Ltd ++ + OUI:F4D9FB* + ID_OUI_FROM_DATABASE=Samsung Electronics CO., LTD + +@@ -70111,6 +70366,9 @@ OUI:F4DCDA* + OUI:F4DCF9* + ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd + ++OUI:F4DD9E* ++ ID_OUI_FROM_DATABASE=GoPro ++ + OUI:F4E142* + ID_OUI_FROM_DATABASE=Delta Elektronika BV + +@@ -70318,6 +70576,9 @@ OUI:F87B8C* + OUI:F8811A* + ID_OUI_FROM_DATABASE=OVERKIZ + ++OUI:F884F2* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:F88C1C* + ID_OUI_FROM_DATABASE=KAISHUN ELECTRONIC TECHNOLOGY CO., LTD. BEIJING + +@@ -70586,7 +70847,7 @@ OUI:FC3FAB* + ID_OUI_FROM_DATABASE=Henan Lanxin Technology Co., Ltd + + OUI:FC4463* +- ID_OUI_FROM_DATABASE=Universal Audio ++ ID_OUI_FROM_DATABASE=Universal Audio, Inc + + OUI:FC4499* + ID_OUI_FROM_DATABASE=Swarco LEA d.o.o. +diff --git hwdb/20-pci-vendor-model.hwdb hwdb/20-pci-vendor-model.hwdb +index 371a685..d54cb2a 100644 +--- hwdb/20-pci-vendor-model.hwdb ++++ hwdb/20-pci-vendor-model.hwdb +@@ -497,6 +497,9 @@ pci:v00000E11d0000F130* + pci:v00000E11d0000F150* + ID_MODEL_FROM_DATABASE=NetFlex-3/P ThunderLAN 2.3 + ++pci:v00000E55* ++ ID_VENDOR_FROM_DATABASE=HaSoTec GmbH ++ + pci:v00000EAC* + ID_VENDOR_FROM_DATABASE=SHF Communication Technologies AG + +@@ -1169,6 +1172,12 @@ pci:v00001000d00000073sv00001137sd000000B0* + pci:v00001000d00000073sv00001137sd000000B1* + ID_MODEL_FROM_DATABASE=UCSC RAID SAS 2008M-8i + ++pci:v00001000d00000073sv00001137sd000000C2* ++ ID_MODEL_FROM_DATABASE=UCS E-Series Double Wide ++ ++pci:v00001000d00000073sv00001137sd000000C3* ++ ID_MODEL_FROM_DATABASE=UCS E-Series Single Wide ++ + pci:v00001000d00000073sv000015D9sd00000400* + ID_MODEL_FROM_DATABASE=Supermicro SMC2008-iMR + +@@ -1665,25 +1674,25 @@ pci:v00001002d00001307* + ID_MODEL_FROM_DATABASE=Kaveri + + pci:v00001002d00001309* +- ID_MODEL_FROM_DATABASE=Kaveri ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R7 Graphics] + + pci:v00001002d0000130A* +- ID_MODEL_FROM_DATABASE=Kaveri ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R6 Graphics] + + pci:v00001002d0000130B* +- ID_MODEL_FROM_DATABASE=Kaveri ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R4 Graphics] + + pci:v00001002d0000130C* +- ID_MODEL_FROM_DATABASE=Kaveri ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R7 Graphics] + + pci:v00001002d0000130D* +- ID_MODEL_FROM_DATABASE=Kaveri ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R6 Graphics] + + pci:v00001002d0000130E* +- ID_MODEL_FROM_DATABASE=Kaveri ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R5 Graphics] + + pci:v00001002d0000130F* +- ID_MODEL_FROM_DATABASE=Kaveri [Radeon R7 200 Series] ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R7 Graphics] + + pci:v00001002d00001310* + ID_MODEL_FROM_DATABASE=Kaveri +@@ -1695,7 +1704,7 @@ pci:v00001002d00001312* + ID_MODEL_FROM_DATABASE=Kaveri + + pci:v00001002d00001313* +- ID_MODEL_FROM_DATABASE=Kaveri [Radeon R7 200 Series] ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R7 Graphics] + + pci:v00001002d00001314* + ID_MODEL_FROM_DATABASE=Wrestler HDMI Audio +@@ -1704,22 +1713,25 @@ pci:v00001002d00001314sv0000174Bsd00001001* + ID_MODEL_FROM_DATABASE=PURE Fusion Mini + + pci:v00001002d00001315* +- ID_MODEL_FROM_DATABASE=Kaveri ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R5 Graphics] + + pci:v00001002d00001316* +- ID_MODEL_FROM_DATABASE=Kaveri [Radeon R5 200 Series] ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R5 Graphics] + + pci:v00001002d00001317* + ID_MODEL_FROM_DATABASE=Kaveri + ++pci:v00001002d00001318* ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R5 Graphics] ++ + pci:v00001002d0000131B* +- ID_MODEL_FROM_DATABASE=Kaveri ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R4 Graphics] + + pci:v00001002d0000131C* +- ID_MODEL_FROM_DATABASE=Kaveri ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R7 Graphics] + + pci:v00001002d0000131D* +- ID_MODEL_FROM_DATABASE=Kaveri ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R6 Graphics] + + pci:v00001002d00001714* + ID_MODEL_FROM_DATABASE=BeaverCreek HDMI Audio [Radeon HD 6500D and 6400G-6600G series] +@@ -4275,7 +4287,7 @@ pci:v00001002d00006641* + ID_MODEL_FROM_DATABASE=Saturn PRO [Radeon HD 8930M] + + pci:v00001002d00006649* +- ID_MODEL_FROM_DATABASE=Bonaire ++ ID_MODEL_FROM_DATABASE=Bonaire [FirePro W5100] + + pci:v00001002d00006650* + ID_MODEL_FROM_DATABASE=Bonaire +@@ -4326,13 +4338,13 @@ pci:v00001002d00006663sv00001025sd00000846* + ID_MODEL_FROM_DATABASE=Radeon HD 8570A + + pci:v00001002d00006664* +- ID_MODEL_FROM_DATABASE=Jet XT [Radeon R5 M250] ++ ID_MODEL_FROM_DATABASE=Jet XT [Radeon R5 M240] + + pci:v00001002d00006665* + ID_MODEL_FROM_DATABASE=Jet PRO [Radeon R5 M230] + + pci:v00001002d00006667* +- ID_MODEL_FROM_DATABASE=Jet ULT [Radeon R5 M240] ++ ID_MODEL_FROM_DATABASE=Jet ULT [Radeon R5 M230] + + pci:v00001002d0000666F* + ID_MODEL_FROM_DATABASE=Sun LE [Radeon HD 8550M] +@@ -5808,7 +5820,7 @@ pci:v00001002d00006792* + ID_MODEL_FROM_DATABASE=Tahiti + + pci:v00001002d00006798* +- ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/R9 280X] ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] + + pci:v00001002d00006798sv00001002sd00003000* + ID_MODEL_FROM_DATABASE=Tahiti XT2 [Radeon HD 7970 GHz Edition] +@@ -5934,7 +5946,7 @@ pci:v00001002d000067B1* + ID_MODEL_FROM_DATABASE=Hawaii PRO [Radeon R9 290] + + pci:v00001002d000067B9* +- ID_MODEL_FROM_DATABASE=Vesuvius ++ ID_MODEL_FROM_DATABASE=Vesuvius [Radeon R9 295 X2] + + pci:v00001002d000067BE* + ID_MODEL_FROM_DATABASE=Hawaii LE +@@ -5952,7 +5964,7 @@ pci:v00001002d00006800sv00008086sd00002111* + ID_MODEL_FROM_DATABASE=Radeon HD 7970M + + pci:v00001002d00006801* +- ID_MODEL_FROM_DATABASE=Neptune [Radeon HD 8970M] ++ ID_MODEL_FROM_DATABASE=Neptune XT [Radeon HD 8970M] + + pci:v00001002d00006801sv00001002sd00000124* + ID_MODEL_FROM_DATABASE=Radeon HD 8970M +@@ -6017,6 +6029,9 @@ pci:v00001002d00006820* + pci:v00001002d00006820sv0000103Csd00001851* + ID_MODEL_FROM_DATABASE=Radeon HD 7750M + ++pci:v00001002d00006820sv000017AAsd00003801* ++ ID_MODEL_FROM_DATABASE=Radeon R9 M275 ++ + pci:v00001002d00006821* + ID_MODEL_FROM_DATABASE=Venus XT [Radeon HD 8870M] + +@@ -7817,6 +7832,12 @@ pci:v00001002d000068FAsv000017AFsd00003015* + pci:v00001002d000068FE* + ID_MODEL_FROM_DATABASE=Cedar LE + ++pci:v00001002d00006900* ++ ID_MODEL_FROM_DATABASE=Topaz XT [Radeon R7 M260] ++ ++pci:v00001002d00006901* ++ ID_MODEL_FROM_DATABASE=Topaz PRO [Radeon R5 M255] ++ + pci:v00001002d00006920* + ID_MODEL_FROM_DATABASE=Tonga + +@@ -10391,6 +10412,15 @@ pci:v00001014d0000034Asv00001014sd00000499* + pci:v00001014d0000034Asv00001014sd0000049A* + ID_MODEL_FROM_DATABASE=PCIe3 x16 SAS RAID Internal Adapter 6Gb (57EE) + ++pci:v00001014d0000034Asv00001014sd000004C7* ++ ID_MODEL_FROM_DATABASE=PCIe3 x 8 Cache SAS RAID Internal Adapter 6GB(2CCA) ++ ++pci:v00001014d0000034Asv00001014sd000004C8* ++ ID_MODEL_FROM_DATABASE=PCIe3 x 8 Cache SAS RAID Internal Adapter 6GB(2CD2) ++ ++pci:v00001014d0000034Asv00001014sd00000C49* ++ ID_MODEL_FROM_DATABASE=PCIe3 x 8 Cache SAS RAID Internal Adapter 6GB(2CCD) ++ + pci:v00001014d000004AA* + ID_MODEL_FROM_DATABASE=Flash Adapter 90 (PCIe2 0.9TB) + +@@ -13793,6 +13823,63 @@ pci:v0000103Cd00003238sv0000103Csd00003211* + pci:v0000103Cd00003238sv0000103Csd00003212* + ID_MODEL_FROM_DATABASE=Smart Array E200 + ++pci:v0000103Cd00003239* ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers ++ ++pci:v0000103Cd00003239sv0000103Csd000021BD* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021BE* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021BF* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021C0* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021C1* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021C2* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021C3* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021C4* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021C5* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021C6* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021C7* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021C8* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021C9* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021CA* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021CB* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021CC* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021CD* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ ++pci:v0000103Cd00003239sv0000103Csd000021CE* ++ ID_MODEL_FROM_DATABASE=Smart Array ++ + pci:v0000103Cd0000323A* + ID_MODEL_FROM_DATABASE=Smart Array G6 controllers + +@@ -17954,6 +18041,54 @@ pci:v0000109Ed0000036Esv000018ACsd0000D500* + pci:v0000109Ed0000036Esv0000270Fsd0000FC00* + ID_MODEL_FROM_DATABASE=Digitop DTT-1000 + ++pci:v0000109Ed0000036Esv0000AA00sd00001460* ++ ID_MODEL_FROM_DATABASE=Spectra8 CardA Input0 ++ ++pci:v0000109Ed0000036Esv0000AA01sd00001461* ++ ID_MODEL_FROM_DATABASE=Spectra8 CardA Input1 ++ ++pci:v0000109Ed0000036Esv0000AA02sd00001462* ++ ID_MODEL_FROM_DATABASE=Spectra8 CardA Input2 ++ ++pci:v0000109Ed0000036Esv0000AA03sd00001463* ++ ID_MODEL_FROM_DATABASE=Spectra8 CardA Input3 ++ ++pci:v0000109Ed0000036Esv0000AA04sd00001464* ++ ID_MODEL_FROM_DATABASE=Spectra8 CardB Input0 ++ ++pci:v0000109Ed0000036Esv0000AA05sd00001465* ++ ID_MODEL_FROM_DATABASE=Spectra8 CardB Input1 ++ ++pci:v0000109Ed0000036Esv0000AA06sd00001466* ++ ID_MODEL_FROM_DATABASE=Spectra8 CardB Input2 ++ ++pci:v0000109Ed0000036Esv0000AA07sd00001467* ++ ID_MODEL_FROM_DATABASE=Spectra8 CardB Input3 ++ ++pci:v0000109Ed0000036Esv0000AA08sd00001468* ++ ID_MODEL_FROM_DATABASE=Spectra8 CardC Input0 ++ ++pci:v0000109Ed0000036Esv0000AA09sd00001469* ++ ID_MODEL_FROM_DATABASE=Spectra8 CardC Input1 ++ ++pci:v0000109Ed0000036Esv0000AA0Asd0000146A* ++ ID_MODEL_FROM_DATABASE=Spectra8 CardC Input2 ++ ++pci:v0000109Ed0000036Esv0000AA0Bsd0000146B* ++ ID_MODEL_FROM_DATABASE=Spectra8 CardC Input3 ++ ++pci:v0000109Ed0000036Esv0000AA0Csd0000146C* ++ ID_MODEL_FROM_DATABASE=Spectra8 CardD Input0 ++ ++pci:v0000109Ed0000036Esv0000AA0Dsd0000146D* ++ ID_MODEL_FROM_DATABASE=Spectra8 CardD Input1 ++ ++pci:v0000109Ed0000036Esv0000AA0Esd0000146E* ++ ID_MODEL_FROM_DATABASE=Spectra8 CardD Input2 ++ ++pci:v0000109Ed0000036Esv0000AA0Fsd0000146F* ++ ID_MODEL_FROM_DATABASE=Spectra8 CardD Input3 ++ + pci:v0000109Ed0000036Esv0000BD11sd00001200* + ID_MODEL_FROM_DATABASE=PCTV pro (TV + FM stereo receiver) + +@@ -26009,6 +26144,9 @@ pci:v000010DEd00000E1A* + pci:v000010DEd00000E1B* + ID_MODEL_FROM_DATABASE=GK107 HDMI Audio Controller + ++pci:v000010DEd00000E1Bsv0000103Csd0000197B* ++ ID_MODEL_FROM_DATABASE=ZBook 15 ++ + pci:v000010DEd00000E1Bsv00001043sd00008428* + ID_MODEL_FROM_DATABASE=GTX650-DC-1GD5 + +@@ -26165,6 +26303,9 @@ pci:v000010DEd00000FF5* + pci:v000010DEd00000FF6* + ID_MODEL_FROM_DATABASE=GK107GLM [Quadro K1100M] + ++pci:v000010DEd00000FF6sv0000103Csd0000197B* ++ ID_MODEL_FROM_DATABASE=ZBook 15 ++ + pci:v000010DEd00000FF7* + ID_MODEL_FROM_DATABASE=GK107GL [GRID K140Q vGPU] + +@@ -26234,6 +26375,12 @@ pci:v000010DEd00001005sv00003842sd00002794* + pci:v000010DEd00001005sv00003842sd00002795* + ID_MODEL_FROM_DATABASE=GeForce GTX Titan SC Hydro Copper Signature + ++pci:v000010DEd00001007* ++ ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX 780 Rev. 2] ++ ++pci:v000010DEd00001008* ++ ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX 780 Ti Rev. 2] ++ + pci:v000010DEd0000100A* + ID_MODEL_FROM_DATABASE=GK110B [GeForce GTX 780 Ti] + +@@ -26294,6 +26441,9 @@ pci:v000010DEd0000104Asv000010B0sd0000104A* + pci:v000010DEd0000104B* + ID_MODEL_FROM_DATABASE=GF119 [GeForce GT 625 OEM] + ++pci:v000010DEd0000104C* ++ ID_MODEL_FROM_DATABASE=GF119 [GeForce GT 705] ++ + pci:v000010DEd00001050* + ID_MODEL_FROM_DATABASE=GF119M [GeForce GT 520M] + +@@ -26333,6 +26483,24 @@ pci:v000010DEd00001058sv00001043sd000010BC* + pci:v000010DEd00001058sv00001043sd00001652* + ID_MODEL_FROM_DATABASE=GeForce GT 610M + ++pci:v000010DEd00001058sv000017AAsd0000367A* ++ ID_MODEL_FROM_DATABASE=GeForce 610M ++ ++pci:v000010DEd00001058sv000017AAsd00003682* ++ ID_MODEL_FROM_DATABASE=GeForce 800A ++ ++pci:v000010DEd00001058sv000017AAsd00003687* ++ ID_MODEL_FROM_DATABASE=GeForce 800A ++ ++pci:v000010DEd00001058sv000017AAsd00003692* ++ ID_MODEL_FROM_DATABASE=GeForce 705A ++ ++pci:v000010DEd00001058sv000017AAsd00003695* ++ ID_MODEL_FROM_DATABASE=GeForce 800A ++ ++pci:v000010DEd00001058sv000017AAsd0000A117* ++ ID_MODEL_FROM_DATABASE=GeForce 610M ++ + pci:v000010DEd00001059* + ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] + +@@ -26351,6 +26519,15 @@ pci:v000010DEd0000105B* + pci:v000010DEd0000105Bsv0000103Csd00002AFB* + ID_MODEL_FROM_DATABASE=GeForce 705A + ++pci:v000010DEd0000105Bsv000017AAsd0000309D* ++ ID_MODEL_FROM_DATABASE=GeForce 705A ++ ++pci:v000010DEd0000105Bsv000017AAsd000030B1* ++ ID_MODEL_FROM_DATABASE=GeForce 800A ++ ++pci:v000010DEd0000105Bsv000017AAsd000036A1* ++ ID_MODEL_FROM_DATABASE=GeForce 800A ++ + pci:v000010DEd0000107C* + ID_MODEL_FROM_DATABASE=GF119 [NVS 315] + +@@ -26675,6 +26852,30 @@ pci:v000010DEd00001140sv00001043sd000014C7* + pci:v000010DEd00001140sv00001043sd00001507* + ID_MODEL_FROM_DATABASE=GeForce GT 620M + ++pci:v000010DEd00001140sv00001043sd000015AD* ++ ID_MODEL_FROM_DATABASE=GeForce 820M ++ ++pci:v000010DEd00001140sv00001043sd000015ED* ++ ID_MODEL_FROM_DATABASE=GeForce 820M ++ ++pci:v000010DEd00001140sv00001043sd0000160D* ++ ID_MODEL_FROM_DATABASE=GeForce 820M ++ ++pci:v000010DEd00001140sv00001043sd0000163D* ++ ID_MODEL_FROM_DATABASE=GeForce 820M ++ ++pci:v000010DEd00001140sv00001043sd0000166D* ++ ID_MODEL_FROM_DATABASE=GeForce 820M ++ ++pci:v000010DEd00001140sv00001043sd000016CD* ++ ID_MODEL_FROM_DATABASE=GeForce 820M ++ ++pci:v000010DEd00001140sv00001043sd000016DD* ++ ID_MODEL_FROM_DATABASE=GeForce 820M ++ ++pci:v000010DEd00001140sv00001043sd0000170D* ++ ID_MODEL_FROM_DATABASE=GeForce 820M ++ + pci:v000010DEd00001140sv00001043sd00002132* + ID_MODEL_FROM_DATABASE=GeForce GT 620M + +@@ -26699,6 +26900,12 @@ pci:v000010DEd00001140sv00001043sd0000223A* + pci:v000010DEd00001140sv00001043sd0000224A* + ID_MODEL_FROM_DATABASE=GeForce GT 710M + ++pci:v000010DEd00001140sv00001043sd0000227A* ++ ID_MODEL_FROM_DATABASE=GeForce 820M ++ ++pci:v000010DEd00001140sv00001043sd0000228A* ++ ID_MODEL_FROM_DATABASE=GeForce 820M ++ + pci:v000010DEd00001140sv00001043sd00008595* + ID_MODEL_FROM_DATABASE=GeForce GT 720M + +@@ -26864,9 +27071,48 @@ pci:v000010DEd00001140sv000017AAsd00002213* + pci:v000010DEd00001140sv000017AAsd00002220* + ID_MODEL_FROM_DATABASE=GeForce GT 720M + ++pci:v000010DEd00001140sv000017AAsd0000309C* ++ ID_MODEL_FROM_DATABASE=GeForce GT 720A ++ ++pci:v000010DEd00001140sv000017AAsd000030B4* ++ ID_MODEL_FROM_DATABASE=GeForce 820A ++ + pci:v000010DEd00001140sv000017AAsd00003656* + ID_MODEL_FROM_DATABASE=GeForce GT 620M + ++pci:v000010DEd00001140sv000017AAsd0000365A* ++ ID_MODEL_FROM_DATABASE=GeForce 705M ++ ++pci:v000010DEd00001140sv000017AAsd0000365E* ++ ID_MODEL_FROM_DATABASE=GeForce 800M ++ ++pci:v000010DEd00001140sv000017AAsd0000366C* ++ ID_MODEL_FROM_DATABASE=GeForce 800M ++ ++pci:v000010DEd00001140sv000017AAsd00003685* ++ ID_MODEL_FROM_DATABASE=GeForce 800M ++ ++pci:v000010DEd00001140sv000017AAsd00003686* ++ ID_MODEL_FROM_DATABASE=GeForce 800M ++ ++pci:v000010DEd00001140sv000017AAsd00003687* ++ ID_MODEL_FROM_DATABASE=GeForce 705A ++ ++pci:v000010DEd00001140sv000017AAsd00003696* ++ ID_MODEL_FROM_DATABASE=GeForce 820A ++ ++pci:v000010DEd00001140sv000017AAsd0000369B* ++ ID_MODEL_FROM_DATABASE=GeForce 820A ++ ++pci:v000010DEd00001140sv000017AAsd0000369C* ++ ID_MODEL_FROM_DATABASE=GeForce 820A ++ ++pci:v000010DEd00001140sv000017AAsd0000369D* ++ ID_MODEL_FROM_DATABASE=GeForce 820A ++ ++pci:v000010DEd00001140sv000017AAsd0000369E* ++ ID_MODEL_FROM_DATABASE=GeForce 820A ++ + pci:v000010DEd00001140sv000017AAsd00003800* + ID_MODEL_FROM_DATABASE=GeForce GT 720M + +@@ -27044,6 +27290,9 @@ pci:v000010DEd0000118F* + pci:v000010DEd00001193* + ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 760 Ti OEM] + ++pci:v000010DEd00001195* ++ ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 660 Rev. 2] ++ + pci:v000010DEd00001198* + ID_MODEL_FROM_DATABASE=GK104M [GeForce GTX 880M] + +@@ -27173,6 +27422,9 @@ pci:v000010DEd000011E2* + pci:v000010DEd000011E3* + ID_MODEL_FROM_DATABASE=GK106M [GeForce GTX 760M] + ++pci:v000010DEd000011E3sv000017AAsd00003683* ++ ID_MODEL_FROM_DATABASE=GeForce GTX 760A ++ + pci:v000010DEd000011FA* + ID_MODEL_FROM_DATABASE=GK106GL [Quadro K4000] + +@@ -27323,6 +27575,9 @@ pci:v000010DEd00001282* + pci:v000010DEd00001284* + ID_MODEL_FROM_DATABASE=GK208 [GeForce GT 630 Rev. 2] + ++pci:v000010DEd00001286* ++ ID_MODEL_FROM_DATABASE=GK208 [GeForce GT 720] ++ + pci:v000010DEd00001290* + ID_MODEL_FROM_DATABASE=GK208M [GeForce GT 730M] + +@@ -27380,6 +27635,15 @@ pci:v000010DEd00001340* + pci:v000010DEd00001341* + ID_MODEL_FROM_DATABASE=GM108M [GeForce 840M] + ++pci:v000010DEd00001341sv000017AAsd00003697* ++ ID_MODEL_FROM_DATABASE=GeForce 840A ++ ++pci:v000010DEd00001341sv000017AAsd00003699* ++ ID_MODEL_FROM_DATABASE=GeForce 840A ++ ++pci:v000010DEd00001341sv000017AAsd0000369C* ++ ID_MODEL_FROM_DATABASE=GeForce 840A ++ + pci:v000010DEd00001380* + ID_MODEL_FROM_DATABASE=GM107 [GeForce GTX 750 Ti] + +@@ -27395,6 +27659,12 @@ pci:v000010DEd00001390* + pci:v000010DEd00001391* + ID_MODEL_FROM_DATABASE=GM107M [GeForce GTX 850M] + ++pci:v000010DEd00001391sv000017AAsd00003697* ++ ID_MODEL_FROM_DATABASE=GeForce GTX 850A ++ ++pci:v000010DEd00001391sv000017AAsd0000A125* ++ ID_MODEL_FROM_DATABASE=GeForce GTX 850A ++ + pci:v000010DEd00001392* + ID_MODEL_FROM_DATABASE=GM107M [GeForce GTX 860M] + +@@ -27839,6 +28109,9 @@ pci:v000010ECd00005227* + pci:v000010ECd00005227sv000017AAsd0000220E* + ID_MODEL_FROM_DATABASE=ThinkPad T440p + ++pci:v000010ECd00005227sv000017AAsd00002214* ++ ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ + pci:v000010ECd00005229* + ID_MODEL_FROM_DATABASE=RTS5229 PCI Express Card Reader + +@@ -27848,6 +28121,12 @@ pci:v000010ECd00005229sv00001025sd00000813* + pci:v000010ECd00005229sv0000103Csd0000194E* + ID_MODEL_FROM_DATABASE=ProBook 455 G1 Notebook + ++pci:v000010ECd00005249* ++ ID_MODEL_FROM_DATABASE=RTS5249 PCI Express Card Reader ++ ++pci:v000010ECd00005249sv0000103Csd00001909* ++ ID_MODEL_FROM_DATABASE=ZBook 15 ++ + pci:v000010ECd00005288* + ID_MODEL_FROM_DATABASE=Barossa PCI Express Card Reader + +@@ -30561,7 +30840,7 @@ pci:v0000110Ad00004021* + ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5512 (Profibus and MPI Cardbus Adapter) + + pci:v0000110Ad00004029* +- ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5614 A2 ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5613 A2 + + pci:v0000110Ad00004029sv0000110Asd00004029* + ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5613 A2 +@@ -30581,6 +30860,9 @@ pci:v0000110Ad00004038* + pci:v0000110Ad00004069* + ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5623 + ++pci:v0000110Ad00004069sv0000110Asd00004069* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5623 ++ + pci:v0000110Ad00004069sv0000110Asd0000C069* + ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5624 + +@@ -31541,6 +31823,9 @@ pci:v00001131d00007133sv0000153Bsd00001160* + pci:v00001131d00007133sv0000153Bsd00001162* + ID_MODEL_FROM_DATABASE=Terratec Cinergy 400 mobile + ++pci:v00001131d00007133sv000017DEsd00007256* ++ ID_MODEL_FROM_DATABASE=PlusTV All In One PI610 card ++ + pci:v00001131d00007133sv000017DEsd00007350* + ID_MODEL_FROM_DATABASE=ATSC 110 Digital / Analog HDTV Tuner + +@@ -33651,7 +33936,7 @@ pci:v00001180d00000476sv000014EFsd00000220* + ID_MODEL_FROM_DATABASE=PCD-RP-220S + + pci:v00001180d00000476sv000017AAsd0000201C* +- ID_MODEL_FROM_DATABASE=ThinkPad X60s ++ ID_MODEL_FROM_DATABASE=ThinkPad X60/X60s + + pci:v00001180d00000476sv000017AAsd000020C4* + ID_MODEL_FROM_DATABASE=ThinkPad T61 +@@ -33711,7 +33996,7 @@ pci:v00001180d00000552sv0000144Dsd0000C00C* + ID_MODEL_FROM_DATABASE=P30/P35 notebook + + pci:v00001180d00000552sv000017AAsd0000201E* +- ID_MODEL_FROM_DATABASE=ThinkPad X60s ++ ID_MODEL_FROM_DATABASE=ThinkPad X60/X60s + + pci:v00001180d00000554* + ID_MODEL_FROM_DATABASE=R5C554 +@@ -33813,7 +34098,7 @@ pci:v00001180d00000822sv0000144Dsd0000C018* + ID_MODEL_FROM_DATABASE=X20 IV + + pci:v00001180d00000822sv000017AAsd0000201D* +- ID_MODEL_FROM_DATABASE=ThinkPad X60s ++ ID_MODEL_FROM_DATABASE=ThinkPad X60/X60s + + pci:v00001180d00000822sv000017AAsd000020C7* + ID_MODEL_FROM_DATABASE=ThinkPad T61 +@@ -33833,6 +34118,9 @@ pci:v00001180d00000832sv00001028sd000001D7* + pci:v00001180d00000832sv00001028sd000001F3* + ID_MODEL_FROM_DATABASE=Inspiron 1420 + ++pci:v00001180d00000832sv00001028sd0000024D* ++ ID_MODEL_FROM_DATABASE=Latitude E4300 ++ + pci:v00001180d00000832sv0000103Csd000030B5* + ID_MODEL_FROM_DATABASE=Presario V3242AU + +@@ -49442,6 +49730,18 @@ pci:v00001797d00006812* + pci:v00001797d00006813* + ID_MODEL_FROM_DATABASE=TW6816 multimedia video controller + ++pci:v00001797d00006814* ++ ID_MODEL_FROM_DATABASE=TW6816 multimedia video controller ++ ++pci:v00001797d00006815* ++ ID_MODEL_FROM_DATABASE=TW6816 multimedia video controller ++ ++pci:v00001797d00006816* ++ ID_MODEL_FROM_DATABASE=TW6816 multimedia video controller ++ ++pci:v00001797d00006817* ++ ID_MODEL_FROM_DATABASE=TW6816 multimedia video controller ++ + pci:v00001799* + ID_VENDOR_FROM_DATABASE=Belkin + +@@ -50978,12 +51278,33 @@ pci:v00001924d00000813sv00001924sd00007904* + pci:v00001924d00000903* + ID_MODEL_FROM_DATABASE=SFC9120 + ++pci:v00001924d00000903sv00001014sd000004CC* ++ ID_MODEL_FROM_DATABASE=SFN7122F-R2 2x10GbE SFP+ Flareon Ultra ++ + pci:v00001924d00000903sv00001924sd00008002* + ID_MODEL_FROM_DATABASE=SFN7122F-R1 SFP+ Server Adapter + ++pci:v00001924d00000903sv00001924sd00008003* ++ ID_MODEL_FROM_DATABASE=SFN7x41Q-R1 Flareon Ultra 7000 Series 10/40G Adapter ++ + pci:v00001924d00000903sv00001924sd00008006* + ID_MODEL_FROM_DATABASE=SFN7022F-R1 SFP+ Server Adapter + ++pci:v00001924d00000903sv00001924sd00008007* ++ ID_MODEL_FROM_DATABASE=SFN7322F-R2 Precision Time SFP+ Server Adapter ++ ++pci:v00001924d00000903sv00001924sd00008009* ++ ID_MODEL_FROM_DATABASE=SFN7x22F-R2 Flareon Ultra 7000 Series 10G Adapter ++ ++pci:v00001924d00000903sv00001924sd0000800A* ++ ID_MODEL_FROM_DATABASE=SFN7x02F-R2 Flareon 7000 Series 10G Adapter ++ ++pci:v00001924d00000923* ++ ID_MODEL_FROM_DATABASE=SFC9140 ++ ++pci:v00001924d00000923sv00001924sd0000800B* ++ ID_MODEL_FROM_DATABASE=SFN7x42Q-R1 Flareon Ultra 7000 Series 10/40G Adapter ++ + pci:v00001924d00001803* + ID_MODEL_FROM_DATABASE=SFC9020 Virtual Function [Solarstorm] + +@@ -51227,6 +51548,9 @@ pci:v00001957d00000083* + pci:v00001957d00000084* + ID_MODEL_FROM_DATABASE=MPC8347E PBGA + ++pci:v00001957d00000084sv0000110Asd00004074* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 1628 ++ + pci:v00001957d00000085* + ID_MODEL_FROM_DATABASE=MPC8347 PBGA + +@@ -51456,7 +51780,7 @@ pci:v00001969d00002062* + ID_MODEL_FROM_DATABASE=AR8152 v2.0 Fast Ethernet + + pci:v00001969d0000E091* +- ID_MODEL_FROM_DATABASE=Killer E2200 Gigabit Ethernet Controller ++ ID_MODEL_FROM_DATABASE=Killer E220x Gigabit Ethernet Controller + + pci:v0000196A* + ID_VENDOR_FROM_DATABASE=Sensory Networks Inc. +@@ -52214,8 +52538,14 @@ pci:v00001AF4d00001005* + pci:v00001AF4d00001009* + ID_MODEL_FROM_DATABASE=Virtio filesystem + ++pci:v00001AF4d00001010* ++ ID_MODEL_FROM_DATABASE=Virtio GPU ++ ++pci:v00001AF4d00001012* ++ ID_MODEL_FROM_DATABASE=Virtio input device ++ + pci:v00001AF4d00001110* +- ID_MODEL_FROM_DATABASE=Virtio Inter-VM shared memory ++ ID_MODEL_FROM_DATABASE=Inter-VM shared memory + + pci:v00001AF4d00001110sv00001AF4sd00001100* + ID_MODEL_FROM_DATABASE=QEMU Virtual Machine +@@ -52397,6 +52727,9 @@ pci:v00001B4Bd000091A4* + pci:v00001B4Bd00009230* + ID_MODEL_FROM_DATABASE=88SE9230 PCIe SATA 6Gb/s Controller + ++pci:v00001B4Bd00009445* ++ ID_MODEL_FROM_DATABASE=88SE9445 PCIe 2.0 x4 4-Port SAS/SATA 6 Gbps RAID Controller ++ + pci:v00001B4Bd00009480* + ID_MODEL_FROM_DATABASE=88SE9480 SAS/SATA 6Gb/s RAID controller + +@@ -55550,15 +55883,24 @@ pci:v00008086d00000964* + pci:v00008086d00000A04* + ID_MODEL_FROM_DATABASE=Haswell-ULT DRAM Controller + ++pci:v00008086d00000A04sv000017AAsd00002214* ++ ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ + pci:v00008086d00000A06* + ID_MODEL_FROM_DATABASE=Haswell-ULT Integrated Graphics Controller + + pci:v00008086d00000A0C* + ID_MODEL_FROM_DATABASE=Haswell-ULT HD Audio Controller + ++pci:v00008086d00000A0Csv000017AAsd00002214* ++ ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ + pci:v00008086d00000A16* + ID_MODEL_FROM_DATABASE=Haswell-ULT Integrated Graphics Controller + ++pci:v00008086d00000A16sv000017AAsd00002214* ++ ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ + pci:v00008086d00000A22* + ID_MODEL_FROM_DATABASE=Haswell-ULT Integrated Graphics Controller + +@@ -55655,6 +55997,9 @@ pci:v00008086d00000C01* + pci:v00008086d00000C04* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller + ++pci:v00008086d00000C04sv0000103Csd00001909* ++ ID_MODEL_FROM_DATABASE=ZBook 15 ++ + pci:v00008086d00000C04sv000017AAsd0000220E* + ID_MODEL_FROM_DATABASE=ThinkPad T440p + +@@ -57360,7 +57705,7 @@ pci:v00008086d0000109Asv000017AAsd00002001* + ID_MODEL_FROM_DATABASE=ThinkPad T60 + + pci:v00008086d0000109Asv000017AAsd0000207E* +- ID_MODEL_FROM_DATABASE=ThinkPad X60s ++ ID_MODEL_FROM_DATABASE=ThinkPad X60/X60s + + pci:v00008086d0000109Asv00008086sd0000109A* + ID_MODEL_FROM_DATABASE=PRO/1000 PL Network Connection +@@ -58847,6 +59192,9 @@ pci:v00008086d00001539* + pci:v00008086d0000153A* + ID_MODEL_FROM_DATABASE=Ethernet Connection I217-LM + ++pci:v00008086d0000153Asv0000103Csd00001909* ++ ID_MODEL_FROM_DATABASE=ZBook 15 ++ + pci:v00008086d0000153Asv000017AAsd0000220E* + ID_MODEL_FROM_DATABASE=ThinkPad T440p + +@@ -58901,6 +59249,9 @@ pci:v00008086d00001559* + pci:v00008086d0000155A* + ID_MODEL_FROM_DATABASE=Ethernet Connection I218-LM + ++pci:v00008086d0000155Asv000017AAsd00002214* ++ ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ + pci:v00008086d0000155C* + ID_MODEL_FROM_DATABASE=Ethernet Server Bypass Adapter + +@@ -63816,7 +64167,7 @@ pci:v00008086d000027A0sv000017AAsd00002015* + ID_MODEL_FROM_DATABASE=ThinkPad T60 + + pci:v00008086d000027A0sv000017AAsd00002017* +- ID_MODEL_FROM_DATABASE=ThinkPad T60/R60 series ++ ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series + + pci:v00008086d000027A1* + ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express PCI Express Root Port +@@ -63834,7 +64185,7 @@ pci:v00008086d000027A2sv0000103Csd000030A1* + ID_MODEL_FROM_DATABASE=NC2400 + + pci:v00008086d000027A2sv000017AAsd0000201A* +- ID_MODEL_FROM_DATABASE=ThinkPad T60/R60 series ++ ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series + + pci:v00008086d000027A2sv00009902sd00001584* + ID_MODEL_FROM_DATABASE=CCE MPL-D10H120F +@@ -63849,7 +64200,7 @@ pci:v00008086d000027A6sv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 integrated graphics (secondary) + + pci:v00008086d000027A6sv000017AAsd0000201A* +- ID_MODEL_FROM_DATABASE=ThinkPad T60/R60 series ++ ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series + + pci:v00008086d000027AC* + ID_MODEL_FROM_DATABASE=Mobile 945GSE Express Memory Controller Hub +@@ -63915,7 +64266,7 @@ pci:v00008086d000027B9sv000010F7sd00008338* + ID_MODEL_FROM_DATABASE=Panasonic CF-Y5 laptop + + pci:v00008086d000027B9sv000017AAsd00002009* +- ID_MODEL_FROM_DATABASE=ThinkPad T60/R60 series ++ ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series + + pci:v00008086d000027BC* + ID_MODEL_FROM_DATABASE=NM10 Family LPC Controller +@@ -64035,7 +64386,7 @@ pci:v00008086d000027C5sv0000103Csd000030A3* + ID_MODEL_FROM_DATABASE=Compaq nw8440 + + pci:v00008086d000027C5sv000017AAsd0000200D* +- ID_MODEL_FROM_DATABASE=ThinkPad T60/R60 series ++ ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series + + pci:v00008086d000027C6* + ID_MODEL_FROM_DATABASE=82801GHM (ICH7-M DH) SATA Controller [RAID mode] +@@ -64095,7 +64446,7 @@ pci:v00008086d000027C8sv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + + pci:v00008086d000027C8sv000017AAsd0000200A* +- ID_MODEL_FROM_DATABASE=ThinkPad T60/R60 series ++ ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series + + pci:v00008086d000027C8sv00008086sd00004F4D* + ID_MODEL_FROM_DATABASE=DeskTop Board D510MO +@@ -64161,7 +64512,7 @@ pci:v00008086d000027C9sv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + + pci:v00008086d000027C9sv000017AAsd0000200A* +- ID_MODEL_FROM_DATABASE=ThinkPad T60/R60 series ++ ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series + + pci:v00008086d000027C9sv00008086sd00004F4D* + ID_MODEL_FROM_DATABASE=DeskTop Board D510MO +@@ -64227,7 +64578,7 @@ pci:v00008086d000027CAsv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + + pci:v00008086d000027CAsv000017AAsd0000200A* +- ID_MODEL_FROM_DATABASE=ThinkPad T60/R60 series ++ ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series + + pci:v00008086d000027CAsv00008086sd00004F4D* + ID_MODEL_FROM_DATABASE=DeskTop Board D510MO +@@ -64287,7 +64638,7 @@ pci:v00008086d000027CBsv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + + pci:v00008086d000027CBsv000017AAsd0000200A* +- ID_MODEL_FROM_DATABASE=ThinkPad T60/R60 series ++ ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series + + pci:v00008086d000027CBsv00008086sd00004F4D* + ID_MODEL_FROM_DATABASE=DeskTop Board D510MO +@@ -64347,7 +64698,7 @@ pci:v00008086d000027CCsv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + + pci:v00008086d000027CCsv000017AAsd0000200B* +- ID_MODEL_FROM_DATABASE=ThinkPad T60/R60 series ++ ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series + + pci:v00008086d000027CCsv00008086sd00004F4D* + ID_MODEL_FROM_DATABASE=DeskTop Board D510MO +@@ -64509,7 +64860,7 @@ pci:v00008086d000027D8sv00001734sd000010AD* + ID_MODEL_FROM_DATABASE=Conexant softmodem SmartCP + + pci:v00008086d000027D8sv000017AAsd00002010* +- ID_MODEL_FROM_DATABASE=ThinkPad T60/R60 series ++ ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series + + pci:v00008086d000027D8sv000017AAsd00003802* + ID_MODEL_FROM_DATABASE=Lenovo 3000 C200 audio [Realtek ALC861VD] +@@ -64569,7 +64920,7 @@ pci:v00008086d000027DAsv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + + pci:v00008086d000027DAsv000017AAsd0000200F* +- ID_MODEL_FROM_DATABASE=ThinkPad T60/R60 series ++ ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series + + pci:v00008086d000027DAsv00008086sd00004F4D* + ID_MODEL_FROM_DATABASE=DeskTop Board D510MO +@@ -64647,7 +64998,7 @@ pci:v00008086d000027DFsv00001775sd000011CC* + ID_MODEL_FROM_DATABASE=CC11/CL11 + + pci:v00008086d000027DFsv000017AAsd0000200C* +- ID_MODEL_FROM_DATABASE=ThinkPad T60/R60 series ++ ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series + + pci:v00008086d000027DFsv00008086sd0000544E* + ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP +@@ -70358,6 +70709,9 @@ pci:v00008086d00008C02* + pci:v00008086d00008C03* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] + ++pci:v00008086d00008C03sv0000103Csd00001909* ++ ID_MODEL_FROM_DATABASE=ZBook 15 ++ + pci:v00008086d00008C03sv000017AAsd0000220E* + ID_MODEL_FROM_DATABASE=ThinkPad T440p + +@@ -70442,6 +70796,9 @@ pci:v00008086d00008C1F* + pci:v00008086d00008C20* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset High Definition Audio Controller + ++pci:v00008086d00008C20sv0000103Csd00001909* ++ ID_MODEL_FROM_DATABASE=ZBook 15 ++ + pci:v00008086d00008C20sv000017AAsd0000220E* + ID_MODEL_FROM_DATABASE=ThinkPad T440p + +@@ -70451,6 +70808,9 @@ pci:v00008086d00008C21* + pci:v00008086d00008C22* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family SMBus Controller + ++pci:v00008086d00008C22sv0000103Csd00001909* ++ ID_MODEL_FROM_DATABASE=ZBook 15 ++ + pci:v00008086d00008C22sv000017AAsd0000220E* + ID_MODEL_FROM_DATABASE=ThinkPad T440p + +@@ -70463,18 +70823,27 @@ pci:v00008086d00008C24* + pci:v00008086d00008C26* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family USB EHCI #1 + ++pci:v00008086d00008C26sv0000103Csd00001909* ++ ID_MODEL_FROM_DATABASE=ZBook 15 ++ + pci:v00008086d00008C26sv000017AAsd0000220E* + ID_MODEL_FROM_DATABASE=ThinkPad T440p + + pci:v00008086d00008C2D* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family USB EHCI #2 + ++pci:v00008086d00008C2Dsv0000103Csd00001909* ++ ID_MODEL_FROM_DATABASE=ZBook 15 ++ + pci:v00008086d00008C2Dsv000017AAsd0000220E* + ID_MODEL_FROM_DATABASE=ThinkPad T440p + + pci:v00008086d00008C31* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family USB xHCI + ++pci:v00008086d00008C31sv0000103Csd00001909* ++ ID_MODEL_FROM_DATABASE=ZBook 15 ++ + pci:v00008086d00008C31sv000017AAsd0000220E* + ID_MODEL_FROM_DATABASE=ThinkPad T440p + +@@ -70487,6 +70856,9 @@ pci:v00008086d00008C34* + pci:v00008086d00008C3A* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family MEI Controller #1 + ++pci:v00008086d00008C3Asv0000103Csd00001909* ++ ID_MODEL_FROM_DATABASE=ZBook 15 ++ + pci:v00008086d00008C3Asv000017AAsd0000220E* + ID_MODEL_FROM_DATABASE=ThinkPad T440p + +@@ -70547,6 +70919,9 @@ pci:v00008086d00008C4E* + pci:v00008086d00008C4F* + ID_MODEL_FROM_DATABASE=QM87 Express LPC Controller + ++pci:v00008086d00008C4Fsv0000103Csd00001909* ++ ID_MODEL_FROM_DATABASE=ZBook 15 ++ + pci:v00008086d00008C4Fsv000017AAsd0000220E* + ID_MODEL_FROM_DATABASE=ThinkPad T440p + +@@ -70820,6 +71195,9 @@ pci:v00008086d00009C02* + pci:v00008086d00009C03* + ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [AHCI mode] + ++pci:v00008086d00009C03sv000017AAsd00002214* ++ ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ + pci:v00008086d00009C04* + ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [RAID mode] + +@@ -70907,12 +71285,18 @@ pci:v00008086d00009C1F* + pci:v00008086d00009C20* + ID_MODEL_FROM_DATABASE=Lynx Point-LP HD Audio Controller + ++pci:v00008086d00009C20sv000017AAsd00002214* ++ ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ + pci:v00008086d00009C21* + ID_MODEL_FROM_DATABASE=Lynx Point-LP HD Audio Controller + + pci:v00008086d00009C22* + ID_MODEL_FROM_DATABASE=Lynx Point-LP SMBus Controller + ++pci:v00008086d00009C22sv000017AAsd00002214* ++ ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ + pci:v00008086d00009C23* + ID_MODEL_FROM_DATABASE=Lynx Point-LP CHAP Counters + +@@ -70922,12 +71306,18 @@ pci:v00008086d00009C24* + pci:v00008086d00009C26* + ID_MODEL_FROM_DATABASE=Lynx Point-LP USB EHCI #1 + ++pci:v00008086d00009C26sv000017AAsd00002214* ++ ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ + pci:v00008086d00009C2D* + ID_MODEL_FROM_DATABASE=Lynx Point-LP USB EHCI #2 + + pci:v00008086d00009C31* + ID_MODEL_FROM_DATABASE=Lynx Point-LP USB xHCI HC + ++pci:v00008086d00009C31sv000017AAsd00002214* ++ ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ + pci:v00008086d00009C35* + ID_MODEL_FROM_DATABASE=Lynx Point-LP SDIO Controller + +@@ -70937,6 +71327,9 @@ pci:v00008086d00009C36* + pci:v00008086d00009C3A* + ID_MODEL_FROM_DATABASE=Lynx Point-LP HECI #0 + ++pci:v00008086d00009C3Asv000017AAsd00002214* ++ ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ + pci:v00008086d00009C3B* + ID_MODEL_FROM_DATABASE=Lynx Point-LP HECI #1 + +@@ -70958,6 +71351,9 @@ pci:v00008086d00009C42* + pci:v00008086d00009C43* + ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller + ++pci:v00008086d00009C43sv000017AAsd00002214* ++ ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ + pci:v00008086d00009C44* + ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller + +@@ -72557,6 +72953,54 @@ pci:v0000A727d00000013* + pci:v0000A727d00006803* + ID_MODEL_FROM_DATABASE=3CRDAG675B Wireless 11a/b/g Adapter + ++pci:v0000AA00* ++ ID_VENDOR_FROM_DATABASE=iTuner ++ ++pci:v0000AA01* ++ ID_VENDOR_FROM_DATABASE=iTuner ++ ++pci:v0000AA02* ++ ID_VENDOR_FROM_DATABASE=iTuner ++ ++pci:v0000AA03* ++ ID_VENDOR_FROM_DATABASE=iTuner ++ ++pci:v0000AA04* ++ ID_VENDOR_FROM_DATABASE=iTuner ++ ++pci:v0000AA05* ++ ID_VENDOR_FROM_DATABASE=iTuner ++ ++pci:v0000AA06* ++ ID_VENDOR_FROM_DATABASE=iTuner ++ ++pci:v0000AA07* ++ ID_VENDOR_FROM_DATABASE=iTuner ++ ++pci:v0000AA08* ++ ID_VENDOR_FROM_DATABASE=iTuner ++ ++pci:v0000AA09* ++ ID_VENDOR_FROM_DATABASE=iTuner ++ ++pci:v0000AA0A* ++ ID_VENDOR_FROM_DATABASE=iTuner ++ ++pci:v0000AA0B* ++ ID_VENDOR_FROM_DATABASE=iTuner ++ ++pci:v0000AA0C* ++ ID_VENDOR_FROM_DATABASE=iTuner ++ ++pci:v0000AA0D* ++ ID_VENDOR_FROM_DATABASE=iTuner ++ ++pci:v0000AA0E* ++ ID_VENDOR_FROM_DATABASE=iTuner ++ ++pci:v0000AA0F* ++ ID_VENDOR_FROM_DATABASE=iTuner ++ + pci:v0000AA42* + ID_VENDOR_FROM_DATABASE=Scitex Digital Video + +-- +1.7.9.2 + diff --git a/0002-include-fcntl.h-rather-than-sys-fcntl.h.patch b/0002-include-fcntl.h-rather-than-sys-fcntl.h.patch new file mode 100644 index 00000000..17cd4197 --- /dev/null +++ b/0002-include-fcntl.h-rather-than-sys-fcntl.h.patch @@ -0,0 +1,25 @@ +From fdb8bd0fe7244b72ddc1c08e401ebddefdaf4f46 Mon Sep 17 00:00:00 2001 +From: Emil Renner Berthing +Date: Thu, 18 Sep 2014 15:24:38 +0200 +Subject: [PATCH] include fcntl.h rather than sys/fcntl.h + +--- + src/socket-proxy/socket-proxyd.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/socket-proxy/socket-proxyd.c src/socket-proxy/socket-proxyd.c +index 81d8457..ff2b24f 100644 +--- src/socket-proxy/socket-proxyd.c ++++ src/socket-proxy/socket-proxyd.c +@@ -26,7 +26,7 @@ + #include + #include + #include +-#include ++#include + #include + #include + #include +-- +1.7.9.2 + diff --git a/0002-journal-compress-improve-xz-compression-performance.patch b/0002-journal-compress-improve-xz-compression-performance.patch new file mode 100644 index 00000000..adccdaad --- /dev/null +++ b/0002-journal-compress-improve-xz-compression-performance.patch @@ -0,0 +1,82 @@ +Based on 1930eed2a7855d2df06ccf51f9e394428bf547e2 Mon Sep 17 00:00:00 2001 +From: Jon Severinsson +Date: Tue, 8 Jul 2014 18:29:46 +0200 +Subject: [PATCH] journal/compress: improve xz compression performance + +The new lzma2 compression options at the top of compress_blob_xz are +equivalent to using preset "0", exept for using a 1 MiB dictionary +(the same as preset "1"). This makes the memory usage at most 7.5 MiB +in the compressor, and 1 MiB in the decompressor, instead of the +previous 92 MiB in the compressor and 8 MiB in the decompressor. + +According to test-compress-benchmark this commit makes XZ compression +20 times faster, with no increase in compressed data size. +Using more realistic test data (an ELF binary rather than repeating +ASCII letters 'a' through 'z' in order) it only provides a factor 10 +speedup, and at a cost if a 10% increase in compressed data size. +But that is still a worthwhile trade-off. + +According to test-compress-benchmark XZ compression is still 25 times +slower than LZ4, but the compressed data is one eighth the size. +Using more realistic test data XZ compression is only 18 times slower +than LZ4, and the compressed data is only one quarter the size. + +--- + src/journal/compress.c | 33 ++++++++++++++------------------- + 1 file changed, 14 insertions(+), 19 deletions(-) + +--- src/journal/compress.c ++++ src/journal/compress.c 2014-07-09 12:09:45.814235274 +0000 +@@ -28,8 +28,15 @@ + #include "compress.h" + + bool compress_blob(const void *src, uint64_t src_size, void *dst, uint64_t *dst_size) { +- lzma_stream s = LZMA_STREAM_INIT; ++ static const lzma_options_lzma opt = { ++ 1u << 20u, NULL, 0, LZMA_LC_DEFAULT, LZMA_LP_DEFAULT, ++ LZMA_PB_DEFAULT, LZMA_MODE_FAST, 128, LZMA_MF_HC3, 4}; ++ static const lzma_filter filters[2] = { ++ {LZMA_FILTER_LZMA2, (lzma_options_lzma*) &opt}, ++ {LZMA_VLI_UNKNOWN, NULL} ++ }; + lzma_ret ret; ++ size_t out_pos = 0; + bool b = false; + + assert(src); +@@ -40,29 +47,17 @@ bool compress_blob(const void *src, uint + /* Returns false if we couldn't compress the data or the + * compressed result is longer than the original */ + +- ret = lzma_easy_encoder(&s, LZMA_PRESET_DEFAULT, LZMA_CHECK_NONE); +- if (ret != LZMA_OK) ++ if (src_size < 80) + return false; + +- s.next_in = src; +- s.avail_in = src_size; +- s.next_out = dst; +- s.avail_out = src_size; +- +- /* Does it fit? */ +- if (lzma_code(&s, LZMA_FINISH) != LZMA_STREAM_END) +- goto fail; +- +- /* Is it actually shorter? */ +- if (s.avail_out == 0) +- goto fail; ++ ret = lzma_stream_buffer_encode((lzma_filter*) filters, LZMA_CHECK_NONE, NULL, ++ src, src_size, dst, &out_pos, src_size - 1); ++ if (ret != LZMA_OK) ++ return false; + +- *dst_size = src_size - s.avail_out; ++ *dst_size = out_pos; + b = true; + +-fail: +- lzma_end(&s); +- + return b; + } + diff --git a/0002-journal-properly-detect-language-specified-in-line.patch b/0002-journal-properly-detect-language-specified-in-line.patch new file mode 100644 index 00000000..361518a2 --- /dev/null +++ b/0002-journal-properly-detect-language-specified-in-line.patch @@ -0,0 +1,99 @@ +From baf167ee0a2953f98e4e7d4c35752ef737832674 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Fri, 11 Apr 2014 20:57:27 -0400 +Subject: [PATCH] journal: properly detect language specified in line + +... it turns out that the duplicates in our own catalog were not real +duplicates, but translations. +--- + TODO | 2 ++ + src/journal/catalog.c | 53 +++++++++++++++++++++++++++++++------------------ + 2 files changed, 36 insertions(+), 19 deletions(-) + +diff --git TODO TODO +index 0343b94..a7307f7 100644 +--- TODO ++++ TODO +@@ -709,6 +709,8 @@ External: + + * fedora: update policy to declare access mode and ownership of unit files to root:root 0644, and add an rpmlint check for it + ++* register catalog database signature as file magic ++ + Regularly: + + * look for close() vs. close_nointr() vs. close_nointr_nofail() +diff --git src/journal/catalog.c src/journal/catalog.c +index 02dedc4..f03357d 100644 +--- src/journal/catalog.c ++++ src/journal/catalog.c +@@ -159,6 +159,37 @@ int catalog_file_lang(const char* filename, char **lang) { + return 1; + } + ++static int catalog_entry_lang(const char* filename, int line, ++ const char* t, const char* deflang, char **lang) { ++ size_t c; ++ ++ c = strlen(t); ++ if (c == 0) { ++ log_error("[%s:%u] Language too short.", filename, line); ++ return -EINVAL; ++ } ++ if (c > 31) { ++ log_error("[%s:%u] language too long.", filename, line); ++ return -EINVAL; ++ } ++ ++ if (deflang) { ++ if (streq(t, deflang)) { ++ log_warning("[%s:%u] language specified unnecessarily", ++ filename, line); ++ return 0; ++ } else ++ log_warning("[%s:%u] language differs from default for file", ++ filename, line); ++ } ++ ++ *lang = strdup(t); ++ if (!*lang) ++ return -ENOMEM; ++ ++ return 0; ++} ++ + int catalog_import_file(Hashmap *h, struct strbuf *sb, const char *path) { + _cleanup_fclose_ FILE *f = NULL; + _cleanup_free_ char *payload = NULL; +@@ -238,25 +269,9 @@ int catalog_import_file(Hashmap *h, struct strbuf *sb, const char *path) { + if (with_language) { + t = strstrip(line + 2 + 1 + 32 + 1); + +- c = strlen(t); +- if (c <= 0) { +- log_error("[%s:%u] Language too short.", path, n); +- return -EINVAL; +- } +- if (c > 31) { +- log_error("[%s:%u] language too long.", path, n); +- return -EINVAL; +- } +- +- if (deflang) { +- log_warning("[%s:%u] language %s", path, n, +- streq(t, deflang) ? +- "specified unnecessarily" : +- "differs from default for file"); +- lang = strdup(t); +- if (!lang) +- return -ENOMEM; +- } ++ r = catalog_entry_lang(path, n, t, deflang, &lang); ++ if (r < 0) ++ return r; + } + + got_id = true; +-- +1.7.9.2 + diff --git a/0002-journalctl-man-allow-only-between-terms.patch b/0002-journalctl-man-allow-only-between-terms.patch new file mode 100644 index 00000000..c29bdf6f --- /dev/null +++ b/0002-journalctl-man-allow-only-between-terms.patch @@ -0,0 +1,109 @@ +From 4e6029435111adcad71489aca2dd68bc65aeffd4 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sat, 19 Jul 2014 21:05:07 -0400 +Subject: [PATCH] journalctl,man: allow + only between terms + +https://bugzilla.redhat.com/show_bug.cgi?id=1110712 +--- + man/journalctl.xml | 19 +++++++++++++++---- + src/journal/journalctl.c | 20 +++++++++++++++++--- + 2 files changed, 32 insertions(+), 7 deletions(-) + +diff --git man/journalctl.xml man/journalctl.xml +index 47b5a05..df9c794 100644 +--- man/journalctl.xml ++++ man/journalctl.xml +@@ -84,10 +84,11 @@ + field, then they are automatically matched as + alternatives, i.e. the resulting output will show + entries matching any of the specified matches for the +- same field. Finally, if the character +- + appears as a separate word on the +- command line, all matches before and after are combined +- in a disjunction (i.e. logical OR). ++ same field. Finally, the character ++ + may appears as a separate word ++ between other terms on the command line. This causes ++ all matches before and after to be combined in a ++ disjunction (i.e. logical OR). + + As shortcuts for a few types of field/value + matches, file paths may be specified. If a file path +@@ -98,11 +99,21 @@ + _KERNEL_DEVICE= match for the + device. + ++ Additional contraints may be added using options ++ , , ++ etc, to futher limit what entries will be shown ++ (logical AND). ++ + Output is interleaved from all accessible + journal files, whether they are rotated or currently + being written, and regardless of whether they belong to the + system itself or are accessible user journals. + ++ The set of journal files which will be used ++ can be modified using the , ++ , , ++ and options, see below. ++ + All users are granted access to their private + per-user journals. However, by default, only root and + users who are members of the systemd-journal +diff --git src/journal/journalctl.c src/journal/journalctl.c +index 92e8286..7aedbf0 100644 +--- src/journal/journalctl.c ++++ src/journal/journalctl.c +@@ -699,15 +699,20 @@ static int generate_new_id128(void) { + + static int add_matches(sd_journal *j, char **args) { + char **i; ++ bool have_term = false; + + assert(j); + + STRV_FOREACH(i, args) { + int r; + +- if (streq(*i, "+")) ++ if (streq(*i, "+")) { ++ if (!have_term) ++ break; + r = sd_journal_add_disjunction(j); +- else if (path_is_absolute(*i)) { ++ have_term = false; ++ ++ } else if (path_is_absolute(*i)) { + _cleanup_free_ char *p, *t = NULL, *t2 = NULL; + const char *path; + _cleanup_free_ char *interpreter = NULL; +@@ -756,8 +761,12 @@ static int add_matches(sd_journal *j, char **args) { + r = sd_journal_add_match(j, t, 0); + if (t2) + r = sd_journal_add_match(j, t2, 0); +- } else ++ have_term = true; ++ ++ } else { + r = sd_journal_add_match(j, *i, 0); ++ have_term = true; ++ } + + if (r < 0) { + log_error("Failed to add match '%s': %s", *i, strerror(-r)); +@@ -765,6 +774,11 @@ static int add_matches(sd_journal *j, char **args) { + } + } + ++ if (!strv_isempty(args) && !have_term) { ++ log_error("\"+\" can only be used between terms"); ++ return -EINVAL; ++ } ++ + return 0; + } + +-- +1.7.9.2 + diff --git a/0002-journald-make-MaxFileSec-really-default-to-1month.patch b/0002-journald-make-MaxFileSec-really-default-to-1month.patch new file mode 100644 index 00000000..9b48fcae --- /dev/null +++ b/0002-journald-make-MaxFileSec-really-default-to-1month.patch @@ -0,0 +1,30 @@ +Based on e150e82097211f09b911c7784a89ef9efed713ca Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20Bartoszkiewicz?= +Date: Thu, 26 Jun 2014 22:11:35 +0200 +Subject: [PATCH] journald: make MaxFileSec really default to 1month + +journald.conf(5) states that the default for MaxFileSec is one month, +but the code didn't respect that. +--- + src/journal/journald-server.c | 3 +++ + 1 file changed, 3 insertions(+) + +--- src/journal/journald-server.c ++++ src/journal/journald-server.c 2014-07-01 12:28:25.506735287 +0000 +@@ -68,6 +68,7 @@ + #define DEFAULT_SYNC_INTERVAL_USEC (5*USEC_PER_MINUTE) + #define DEFAULT_RATE_LIMIT_INTERVAL (30*USEC_PER_SEC) + #define DEFAULT_RATE_LIMIT_BURST 1000 ++#define DEFAULT_MAX_FILE_USEC USEC_PER_MONTH + + #define RECHECK_AVAILABLE_SPACE_USEC (30*USEC_PER_SEC) + +@@ -1496,6 +1497,8 @@ int server_init(Server *s) { + + s->forward_to_syslog = true; + ++ s->max_file_usec = DEFAULT_MAX_FILE_USEC; ++ + s->max_level_store = LOG_DEBUG; + s->max_level_syslog = LOG_DEBUG; + s->max_level_kmsg = LOG_NOTICE; diff --git a/0002-keymap-Add-microphone-mute-keymap-for-Dell-Latitude.patch b/0002-keymap-Add-microphone-mute-keymap-for-Dell-Latitude.patch new file mode 100644 index 00000000..7ba1dc4d --- /dev/null +++ b/0002-keymap-Add-microphone-mute-keymap-for-Dell-Latitude.patch @@ -0,0 +1,38 @@ +From 1f6d36f267186c0e3184bab4c7eca48481c6faab Mon Sep 17 00:00:00 2001 +From: Hui Wang +Date: Wed, 30 Jul 2014 16:09:08 +0800 +Subject: [PATCH] keymap: Add microphone mute keymap for Dell Latitude + +On the Dell Latitude, the mic mute key event is generated by wmi +driver, the keycode assigned to this hotkey from kernel is +KEY_MICMUTE (248), this keycode is too big for xorg to handle, +in the xorg, the XF86AudioMicMute is assigned to F20. + +Please refer to 4e648ea0 of xkeyboard-config. + +BugLink: https://bugs.launchpad.net/bugs/1326684 +BugLink: https://bugs.launchpad.net/bugs/1339998 +Signed-off-by: Hui Wang +Signed-off-by: Martin Pitt +--- + hwdb/60-keyboard.hwdb | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index c7ff4e4..70e372b 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -229,6 +229,10 @@ keyboard:dmi:bvn*:bvr*:bd*:svnDell*:pnPrecision*:pvr* + keyboard:dmi:bvn*:bvr*:bd*:svnDell*:pnXPS*:pvr* + KEYBOARD_KEY_8c=!unknown + ++# Dell Latitude microphone mute ++keyboard:name:Dell WMI hotkeys:dmi:bvn*:bvr*:bd*:svnDell*:pnLatitude* ++ KEYBOARD_KEY_150=f20 # Mic mute toggle ++ + ########################################################### + # Everex + ########################################################### +-- +1.7.9.2 + diff --git a/0002-keymap-Asus-EeePC-touchpad-toggle-key.patch b/0002-keymap-Asus-EeePC-touchpad-toggle-key.patch new file mode 100644 index 00000000..e921c60b --- /dev/null +++ b/0002-keymap-Asus-EeePC-touchpad-toggle-key.patch @@ -0,0 +1,28 @@ +From e55edb22a71e67f01534d28f91c6aa27bba48fc1 Mon Sep 17 00:00:00 2001 +From: Martin Pitt +Date: Sun, 25 May 2014 12:16:35 +0200 +Subject: [PATCH] keymap: Asus EeePC touchpad toggle key + +Originally is KEY_TOUCHPAD_TOGGLE, but X.org can't handle the big key events, +so use the F21 convention. + +https://bugs.freedesktop.org/show_bug.cgi?id=72807 +--- + hwdb/60-keyboard.hwdb | 1 + + 1 file changed, 1 insertion(+) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index fe5b3ee..05e6a04 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -138,6 +138,7 @@ keyboard:dmi:bvn*:bvr*:bd*:svnASUS:pn* + KEYBOARD_KEY_ef=mute + + keyboard:name:Asus WMI hotkeys:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:pvr* ++keyboard:name:Eee PC WMI hotkeys:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:pvr* + KEYBOARD_KEY_6b=f21 # Touchpad Toggle + + ########################################################### +-- +1.7.9.2 + diff --git a/0002-keymap-Fix-special-keys-on-ThinkPad-X60-X61-Tablet.patch b/0002-keymap-Fix-special-keys-on-ThinkPad-X60-X61-Tablet.patch new file mode 100644 index 00000000..28f7bb2a --- /dev/null +++ b/0002-keymap-Fix-special-keys-on-ThinkPad-X60-X61-Tablet.patch @@ -0,0 +1,33 @@ +From b4c72e52d2109fe7f0ac3440c81ae3e1ce64a143 Mon Sep 17 00:00:00 2001 +From: Bastien Nocera +Date: Wed, 12 Nov 2014 23:31:08 +0100 +Subject: [PATCH] keymap: Fix special keys on ThinkPad X60/X61 Tablet + +KEY_DIRECTION is mapped to XF86RotateWindows, to rotate the display: +http://cgit.freedesktop.org/xkeyboard-config/commit/symbols/inet?id=ec875f6f9b7c4028e11d32b071989c682e6502bd + +And F13 is mapped to XF86Tools, which is closest to the original toolbox +usage: +http://cgit.freedesktop.org/xkeyboard-config/tree/symbols/inet?id=7a2c4bed212ebbcc05f3c959aef659ce7dd31fd8#n221 +--- + hwdb/60-keyboard.hwdb | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index 56a4009..533ad5b 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -585,8 +585,8 @@ keyboard:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*:pvrThinkPad*X2*Tablet* + + # ThinkPad X6 Tablet + keyboard:dmi:bvn*:bvr*:bd*:svnLENOVO*:pnThinkPad*X6*:pvr* +- KEYBOARD_KEY_6c=f21 # rotate +- KEYBOARD_KEY_68=screenlock # screenlock ++ KEYBOARD_KEY_6c=direction # rotate ++ KEYBOARD_KEY_68=f13 # toolbox + KEYBOARD_KEY_6b=esc # escape + KEYBOARD_KEY_6d=right # right on d-pad + KEYBOARD_KEY_6e=left # left on d-pad +-- +1.7.9.2 + diff --git a/0002-keymap-Fix-touchpad-toggle-key-on-Asus-laptops.patch b/0002-keymap-Fix-touchpad-toggle-key-on-Asus-laptops.patch new file mode 100644 index 00000000..45af9018 --- /dev/null +++ b/0002-keymap-Fix-touchpad-toggle-key-on-Asus-laptops.patch @@ -0,0 +1,25 @@ +From 4e3deeedc15b03197d591850061316289245c9a9 Mon Sep 17 00:00:00 2001 +From: Martin Pitt +Date: Tue, 7 Oct 2014 11:22:31 +0200 +Subject: [PATCH] keymap: Fix touchpad toggle key on Asus laptops + +https://launchpad.net/bugs/1377352 +--- + hwdb/60-keyboard.hwdb | 1 + + 1 file changed, 1 insertion(+) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index 1fea32a..59f467b 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -153,6 +153,7 @@ keyboard:dmi:bvn*:bvr*:bd*:svnASUS:pn* + + keyboard:name:Asus WMI hotkeys:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:pvr* + keyboard:name:Eee PC WMI hotkeys:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:pvr* ++keyboard:name:Asus Laptop extra buttons:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:pvr* + KEYBOARD_KEY_6b=f21 # Touchpad Toggle + + ########################################################### +-- +1.7.9.2 + diff --git a/0002-keymap-Ignore-brightness-keys-on-Dell-Inspiron-1520-.patch b/0002-keymap-Ignore-brightness-keys-on-Dell-Inspiron-1520-.patch new file mode 100644 index 00000000..e29c01d9 --- /dev/null +++ b/0002-keymap-Ignore-brightness-keys-on-Dell-Inspiron-1520-.patch @@ -0,0 +1,41 @@ +From aba248ee6b1eb10baf3d89eca2ad7569459af6ab Mon Sep 17 00:00:00 2001 +From: Hans de Goede +Date: Thu, 30 Oct 2014 10:15:54 +0100 +Subject: [PATCH] keymap: Ignore brightness keys on Dell Inspiron 1520 to + avoid double events + +On the Dell Inspiron 1520 both the atkbd and acpi-video input devices report +an event for pressing the brightness up / down key-combos, resulting in user +space seeing double events and increasing / decreasing the brightness 2 steps +for each keypress. + +This hwdb snippet suppresses the atkbd events, making the Inspiron 1520 work +like most modern laptops which emit brightness up / down events through +acpi-video only. + +Reported by Pavel Malyshev + +https://bugzilla.redhat.com/show_bug.cgi?id=1141525 +--- + hwdb/60-keyboard.hwdb | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index 06caba9..d2ca965 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -230,6 +230,11 @@ keyboard:dmi:bvn*:bvr*:bd*:svnDell*:pnInspiron*1110:pvr* + keyboard:dmi:bvn*:bvr*:bd*:svnDell*:pnInspiron*1210:pvr* + KEYBOARD_KEY_84=wlan + ++# Dell Inspiron 1520 ++keyboard:dmi:bvn*:bvr*:bd*:svnDell*:pnInspiron*1520:pvr* ++ KEYBOARD_KEY_85=unknown # Brightness Down, also emitted by acpi-video, ignore ++ KEYBOARD_KEY_86=unknown # Brightness Up, also emitted by acpi-video, ignore ++ + # Latitude XT2 + keyboard:dmi:bvn*:bvr*:bd*:svnDell*:pnLatitude*XT2:pvr* + KEYBOARD_KEY_9b=up # tablet rocker up +-- +1.7.9.2 + diff --git a/0002-login-set-pos-slot-to-fallback-on-pos-eviction.patch b/0002-login-set-pos-slot-to-fallback-on-pos-eviction.patch new file mode 100644 index 00000000..a1934486 --- /dev/null +++ b/0002-login-set-pos-slot-to-fallback-on-pos-eviction.patch @@ -0,0 +1,52 @@ +From 3e6b205f81e743c7354ccbc69eb45afbdbebe2dc Mon Sep 17 00:00:00 2001 +From: David Herrmann +Date: Tue, 25 Feb 2014 13:08:24 +0100 +Subject: [PATCH] login: set pos-slot to fallback on pos-eviction + +If we evict a session position, we open the position slot for future +sessions. However, there might already be another session on the same +position if both were started on the same VT. This is currently done if +gdm spawns the session on its own Xserver. + +Hence, look for such a session on pos-eviction and claim the new slot +immediately. +--- + src/login/logind-seat.c | 14 +++++++++++++- + 1 file changed, 13 insertions(+), 1 deletion(-) + +diff --git src/login/logind-seat.c src/login/logind-seat.c +index 36ec7ed..96cf08e 100644 +--- src/login/logind-seat.c ++++ src/login/logind-seat.c +@@ -459,6 +459,7 @@ int seat_stop_sessions(Seat *s, bool force) { + } + + void seat_evict_position(Seat *s, Session *session) { ++ Session *iter; + unsigned int pos = session->pos; + + session->pos = 0; +@@ -466,8 +467,19 @@ void seat_evict_position(Seat *s, Session *session) { + if (!pos) + return; + +- if (pos < s->position_count && s->positions[pos] == session) ++ if (pos < s->position_count && s->positions[pos] == session) { + s->positions[pos] = NULL; ++ ++ /* There might be another session claiming the same ++ * position (eg., during gdm->session transition), so lets look ++ * for it and set it on the free slot. */ ++ LIST_FOREACH(sessions_by_seat, iter, s->sessions) { ++ if (iter->pos == pos) { ++ s->positions[pos] = iter; ++ break; ++ } ++ } ++ } + } + + void seat_claim_position(Seat *s, Session *session, unsigned int pos) { +-- +1.7.9.2 + diff --git a/0002-logind-add-support-for-TPS65217-Power-Button.patch b/0002-logind-add-support-for-TPS65217-Power-Button.patch new file mode 100644 index 00000000..17a576de --- /dev/null +++ b/0002-logind-add-support-for-TPS65217-Power-Button.patch @@ -0,0 +1,71 @@ +From 492d7a3038b154e1813a1ece913a5a27148fec19 Mon Sep 17 00:00:00 2001 +From: Koen Kooi +Date: Sat, 27 Sep 2014 09:55:44 +0200 +Subject: [PATCH] logind: add support for TPS65217 Power Button + +This PMIC is found on TI AM335x based boards like the beaglebone and +beaglebone black. + +root@beaglebone-white:~# udevadm info -a /dev/input/event0 + +Udevadm info starts with the device specified by the devpath and then +walks up the chain of parent devices. It prints for every device +found, all possible attributes in the udev rules key format. +A rule to match, can be composed by the attributes of the device +and the attributes from one single parent device. + + looking at device +'/devices/ocp.3/44e0b000.i2c/i2c-0/0-0024/input/input0/event0': + KERNEL=="event0" + SUBSYSTEM=="input" + DRIVER=="" + + looking at parent device +'/devices/ocp.3/44e0b000.i2c/i2c-0/0-0024/input/input0': + KERNELS=="input0" + SUBSYSTEMS=="input" + DRIVERS=="" + ATTRS{name}=="tps65217_pwr_but" + ATTRS{phys}=="" + ATTRS{uniq}=="" + ATTRS{properties}=="0" + + looking at parent device '/devices/ocp.3/44e0b000.i2c/i2c-0/0-0024': + KERNELS=="0-0024" + SUBSYSTEMS=="i2c" + DRIVERS=="tps65217" + ATTRS{name}=="tps65217" + + looking at parent device '/devices/ocp.3/44e0b000.i2c/i2c-0': + KERNELS=="i2c-0" + SUBSYSTEMS=="i2c" + DRIVERS=="" + ATTRS{name}=="OMAP I2C adapter" + + looking at parent device '/devices/ocp.3/44e0b000.i2c': + KERNELS=="44e0b000.i2c" + SUBSYSTEMS=="platform" + DRIVERS=="omap_i2c" + + looking at parent device '/devices/ocp.3': + KERNELS=="ocp.3" + SUBSYSTEMS=="platform" + DRIVERS=="" +--- + src/login/70-power-switch.rules | 1 + + 1 file changed, 1 insertion(+) + +diff --git src/login/70-power-switch.rules src/login/70-power-switch.rules +index a6997f7..695d246 100644 +--- src/login/70-power-switch.rules ++++ src/login/70-power-switch.rules +@@ -10,5 +10,6 @@ ACTION=="remove", GOTO="power_switch_end" + SUBSYSTEM=="input", KERNEL=="event*", SUBSYSTEMS=="acpi", TAG+="power-switch" + SUBSYSTEM=="input", KERNEL=="event*", KERNELS=="thinkpad_acpi", TAG+="power-switch" + SUBSYSTEM=="input", KERNEL=="event*", ATTRS{name}=="twl4030_pwrbutton", TAG+="power-switch" ++SUBSYSTEM=="input", KERNEL=="event*", ATTRS{name}=="tps65217_pwr_but", TAG+="power-switch" + + LABEL="power_switch_end" +-- +1.7.9.2 + diff --git a/0002-logind-bring-polkit-policy-for-hibernate-in-line-wit.patch b/0002-logind-bring-polkit-policy-for-hibernate-in-line-wit.patch new file mode 100644 index 00000000..73ffb867 --- /dev/null +++ b/0002-logind-bring-polkit-policy-for-hibernate-in-line-wit.patch @@ -0,0 +1,28 @@ +From 301f9684e6465df5d0590f6c571fe3229ded966d Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 15 May 2014 18:30:07 +0200 +Subject: [PATCH] logind: bring polkit policy for hibernate in line with + suspend/poweroff/reboot + +THere's no reason why hibernate should be better protected then +suspendor poweroff, so sync the policies. +--- + src/login/org.freedesktop.login1.policy.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/login/org.freedesktop.login1.policy.in src/login/org.freedesktop.login1.policy.in +index b96d32d..b8e90f1 100644 +--- src/login/org.freedesktop.login1.policy.in ++++ src/login/org.freedesktop.login1.policy.in +@@ -254,7 +254,7 @@ + + auth_admin_keep + auth_admin_keep +- auth_admin_keep ++ yes + + org.freedesktop.login1.hibernate + +-- +1.7.9.2 + diff --git a/0002-logind-fix-printf-format.patch b/0002-logind-fix-printf-format.patch new file mode 100644 index 00000000..61bbc9aa --- /dev/null +++ b/0002-logind-fix-printf-format.patch @@ -0,0 +1,25 @@ +From 7e9110a29d90041b0364cb93a84aec9dd72363b6 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 3 Mar 2014 19:39:51 +0100 +Subject: [PATCH] logind: fix printf format + +--- + src/login/logind-action.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/login/logind-action.c src/login/logind-action.c +index da5a830..c9d8bc5 100644 +--- src/login/logind-action.c ++++ src/login/logind-action.c +@@ -81,7 +81,7 @@ int manager_handle_action( + + n = manager_count_displays(m); + if (n != 1) { +- log_debug("Ignoring lid switch request, %s displays connected."); ++ log_debug("Ignoring lid switch request, %i displays connected.", n); + return 0; + } + } +-- +1.7.9.2 + diff --git a/0002-machined-fix-Kill-bus-call-on-machine-objects-when-w.patch b/0002-machined-fix-Kill-bus-call-on-machine-objects-when-w.patch new file mode 100644 index 00000000..c3381ef7 --- /dev/null +++ b/0002-machined-fix-Kill-bus-call-on-machine-objects-when-w.patch @@ -0,0 +1,70 @@ +From de58a50e24a0d55e3bbcc77f8f6170a7322acf52 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Tue, 18 Mar 2014 04:43:08 +0100 +Subject: [PATCH] machined: fix Kill() bus call on machine objects when "what" + is specified as "leader" + +--- + src/machine/machine.c | 10 +++++++++- + src/machine/machined-dbus.c | 4 ++-- + src/machine/machined.h | 2 +- + 3 files changed, 12 insertions(+), 4 deletions(-) + +diff --git src/machine/machine.c src/machine/machine.c +index 4596a80..9a5cc9a 100644 +--- src/machine/machine.c ++++ src/machine/machine.c +@@ -410,7 +410,15 @@ int machine_kill(Machine *m, KillWho who, int signo) { + if (!m->unit) + return -ESRCH; + +- return manager_kill_unit(m->manager, m->unit, who, signo, NULL); ++ if (who == KILL_LEADER) { ++ /* If we shall simply kill the leader, do so directly */ ++ ++ if (kill(m->leader, signo) < 0) ++ return -errno; ++ } ++ ++ /* Otherwise make PID 1 do it for us, for the entire cgroup */ ++ return manager_kill_unit(m->manager, m->unit, signo, NULL); + } + + static const char* const machine_class_table[_MACHINE_CLASS_MAX] = { +diff --git src/machine/machined-dbus.c src/machine/machined-dbus.c +index 09d28bb..9473105 100644 +--- src/machine/machined-dbus.c ++++ src/machine/machined-dbus.c +@@ -655,7 +655,7 @@ int manager_stop_unit(Manager *manager, const char *unit, sd_bus_error *error, c + return 1; + } + +-int manager_kill_unit(Manager *manager, const char *unit, KillWho who, int signo, sd_bus_error *error) { ++int manager_kill_unit(Manager *manager, const char *unit, int signo, sd_bus_error *error) { + assert(manager); + assert(unit); + +@@ -667,7 +667,7 @@ int manager_kill_unit(Manager *manager, const char *unit, KillWho who, int signo + "KillUnit", + error, + NULL, +- "ssi", unit, who == KILL_LEADER ? "main" : "all", signo); ++ "ssi", unit, "all", signo); + } + + int manager_unit_is_active(Manager *manager, const char *unit) { +diff --git src/machine/machined.h src/machine/machined.h +index d4b581b..2dba303 100644 +--- src/machine/machined.h ++++ src/machine/machined.h +@@ -67,6 +67,6 @@ int match_job_removed(sd_bus *bus, sd_bus_message *message, void *userdata, sd_b + + int manager_start_scope(Manager *manager, const char *scope, pid_t pid, const char *slice, const char *description, sd_bus_message *more_properties, sd_bus_error *error, char **job); + int manager_stop_unit(Manager *manager, const char *unit, sd_bus_error *error, char **job); +-int manager_kill_unit(Manager *manager, const char *unit, KillWho who, int signo, sd_bus_error *error); ++int manager_kill_unit(Manager *manager, const char *unit, int signo, sd_bus_error *error); + int manager_unit_is_active(Manager *manager, const char *unit); + int manager_job_is_active(Manager *manager, const char *path); +-- +1.7.9.2 + diff --git a/0002-man-document-yearly-and-annually-in-systemd.time-7.patch b/0002-man-document-yearly-and-annually-in-systemd.time-7.patch new file mode 100644 index 00000000..521b22cc --- /dev/null +++ b/0002-man-document-yearly-and-annually-in-systemd.time-7.patch @@ -0,0 +1,49 @@ +From 8c275eef38bf7e3e592e4cb35a497522d1f15bb6 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Wed, 16 Jul 2014 22:17:29 -0400 +Subject: [PATCH] man: document yearly and annually in systemd.time(7) + +https://bugs.freedesktop.org/show_bug.cgi?id=81158 +--- + man/systemd.time.xml | 18 ++++++++++++------ + 1 file changed, 12 insertions(+), 6 deletions(-) + +diff --git man/systemd.time.xml man/systemd.time.xml +index 0706cdf..02431a5 100644 +--- man/systemd.time.xml ++++ man/systemd.time.xml +@@ -243,12 +243,16 @@ + + The special expressions + hourly, daily, +- monthly and weekly +- may be used as calendar events which refer to +- *-*-* *:00:00, *-*-* +- 00:00:00, *-*-01 00:00:00 and +- Mon *-*-* 00:00:00, +- respectively. ++ monthly, weekly, ++ and yearly or ++ annually may be used as calendar ++ events which refer to ++ *-*-* *:00:00, ++ *-*-* 00:00:00, ++ *-*-01 00:00:00, ++ Mon *-*-* 00:00:00, and ++ *-01-01 00:00:00 respectively. ++ + + Examples for valid timestamps and their + normalized form: +@@ -277,6 +281,8 @@ Wed-Sat,Tue 12-10-15 1:2:3 → Tue-Sat 2012-10-15 01:02:03 + daily → *-*-* 00:00:00 + monthly → *-*-01 00:00:00 + weekly → Mon *-*-* 00:00:00 ++ yearly → *-01-01 00:00:00 ++ annually → *-01-01 00:00:00 + *:2/3 → *-*-* *:02/3:00 + + Calendar events are used by timer units, see +-- +1.7.9.2 + diff --git a/0002-man-note-that-entire-sections-can-now-be-ignored.patch b/0002-man-note-that-entire-sections-can-now-be-ignored.patch new file mode 100644 index 00000000..2db35728 --- /dev/null +++ b/0002-man-note-that-entire-sections-can-now-be-ignored.patch @@ -0,0 +1,35 @@ +From 2bcc2523711e69e6daa744641e56ed8b78646676 Mon Sep 17 00:00:00 2001 +From: Michael Marineau +Date: Sat, 17 May 2014 16:09:08 -0700 +Subject: [PATCH] man: note that entire sections can now be ignored + +Prefixing a section name with "X-" will cause it and all of its contents +to be silently ignored as of commit 342aea19. +--- + man/systemd.unit.xml | 10 ++++++---- + 1 file changed, 6 insertions(+), 4 deletions(-) + +diff --git man/systemd.unit.xml man/systemd.unit.xml +index 157530b..e903156 100644 +--- man/systemd.unit.xml ++++ man/systemd.unit.xml +@@ -139,10 +139,12 @@ + Unit files may contain additional options on top + of those listed here. If systemd encounters an unknown + option, it will write a warning log message but +- continue loading the unit. If an option is prefixed +- with , it is ignored completely by +- systemd. Applications may use this to include +- additional information in the unit files. ++ continue loading the unit. If an option or section name ++ is prefixed with , it is ignored ++ completely by systemd. Options within an ignored ++ section do not need the prefix. Applications may use ++ this to include additional information in the unit ++ files. + + Boolean arguments used in unit files can be + written in various formats. For positive settings the +-- +1.7.9.2 + diff --git a/0002-man-tmpfiles.d-recommend-using-b-and-c.patch b/0002-man-tmpfiles.d-recommend-using-b-and-c.patch new file mode 100644 index 00000000..bb6c70d2 --- /dev/null +++ b/0002-man-tmpfiles.d-recommend-using-b-and-c.patch @@ -0,0 +1,24 @@ +diff -Naur systemd-210/man/tmpfiles.d.xml systemd-210-mod/man/tmpfiles.d.xml +--- systemd-210/man/tmpfiles.d.xml 2014-12-16 10:16:51.269189374 +0100 ++++ systemd-210-mod/man/tmpfiles.d.xml 2014-12-16 10:39:49.937552189 +0100 +@@ -158,12 +158,18 @@ + + + c +- Create a character device node if it does not exist yet. ++ Create a character device node if it does not exist yet. ++ It is recommended to suffix this entry with an exclamation mark to only ++ create static device nodes at boot, as udev will not manage static device ++ nodes that are created at runtime. + + + + b +- Create a block device node if it does not exist yet. ++ Create a block device node if it does not exist yet. ++ It is recommended to suffix this entry with an exclamation mark to only ++ create static device nodes at boot, as udev will not manage static device ++ nodes that re created at runtime. + + + diff --git a/0002-manager-flush-memory-stream-before-using-the-buffer.patch b/0002-manager-flush-memory-stream-before-using-the-buffer.patch new file mode 100644 index 00000000..39ca371c --- /dev/null +++ b/0002-manager-flush-memory-stream-before-using-the-buffer.patch @@ -0,0 +1,45 @@ +From b2cdc6664ef6b56e47d38649d69b9943d9f9f5d0 Mon Sep 17 00:00:00 2001 +From: Daniel Mack +Date: Fri, 7 Mar 2014 14:43:59 +0100 +Subject: [PATCH] manager: flush memory stream before using the buffer + +When the manager receives a SIGUSR2 signal, it opens a memory stream +with open_memstream(), uses the returned file handle for logging, and +dumps the logged content with log_dump(). + +However, the char* buffer is only safe to use after the file handle has +been flushed with fflush, as the man pages states: + + When the stream is closed (fclose(3)) or flushed (fflush(3)), the + locations pointed to by ptr and sizeloc are updated to contain, + respectively, a pointer to the buffer and the current size of the + buffer. + These values remain valid only as long as the caller performs no + further output on the stream. If further output is performed, then the + stream must again be flushed before trying to access these variables. + +Without that call, dump remains NULL and the daemon crashes in +log_dump(). +--- + src/core/manager.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git src/core/manager.c src/core/manager.c +index 27a1cc6..78f4f3d 100644 +--- src/core/manager.c ++++ src/core/manager.c +@@ -1621,6 +1621,11 @@ static int manager_dispatch_signal_fd(sd_event_source *source, int fd, uint32_t + break; + } + ++ if (fflush(f)) { ++ log_warning("Failed to flush status stream"); ++ break; ++ } ++ + log_dump(LOG_INFO, dump); + break; + } +-- +1.7.9.2 + diff --git a/0002-namespace-fix-uninitialized-memory-access.patch b/0002-namespace-fix-uninitialized-memory-access.patch new file mode 100644 index 00000000..bb6ea8ea --- /dev/null +++ b/0002-namespace-fix-uninitialized-memory-access.patch @@ -0,0 +1,28 @@ +Based on 002b226843e77630128da580225f9c3ef8474db2 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 3 Jul 2014 16:27:53 +0200 +Subject: [PATCH] namespace: fix uninitialized memory access + +--- + src/core/namespace.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +--- src/core/namespace.c ++++ src/core/namespace.c 2014-07-04 00:00:00.000000000 +0000 +@@ -68,6 +68,7 @@ static int append_mounts(BindMount **p, + STRV_FOREACH(i, strv) { + + (*p)->ignore = false; ++ (*p)->done = false; + + if ((mode == INACCESSIBLE || mode == READONLY) && (*i)[0] == '-') { + (*p)->ignore = true; +@@ -298,7 +299,7 @@ int setup_namespace( + private_dev; + + if (n > 0) { +- m = mounts = (BindMount *) alloca(n * sizeof(BindMount)); ++ m = mounts = (BindMount *) alloca0(n * sizeof(BindMount)); + r = append_mounts(&m, read_write_dirs, READWRITE); + if (r < 0) + return r; diff --git a/0002-namespace-when-setting-up-an-inaccessible-mount-poin.patch b/0002-namespace-when-setting-up-an-inaccessible-mount-poin.patch new file mode 100644 index 00000000..dfbf403c --- /dev/null +++ b/0002-namespace-when-setting-up-an-inaccessible-mount-poin.patch @@ -0,0 +1,122 @@ +Based on 6d313367d9ef780560e117e886502a99fa220eac Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 5 Jun 2014 21:35:35 +0200 +Subject: [PATCH] namespace: when setting up an inaccessible mount point, + unmounting everything below + +This has the benefit of not triggering any autofs mount points +unnecessarily. + +--- + src/core/namespace.c | 6 ++++ + src/shared/util.c | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++ + src/shared/util.h | 2 + + 3 files changed, 76 insertions(+) + +--- src/core/namespace.c ++++ src/core/namespace.c 2014-06-11 00:00:00.000000000 +0000 +@@ -220,6 +220,12 @@ static int apply_mount( + return mount_dev(m); + + case INACCESSIBLE: ++ ++ /* First, get rid of everything that is below if there ++ * is anything... Then, overmount it with an ++ * inaccessible directory. */ ++ umount_recursive(m->path, 0); ++ + what = "/run/systemd/inaccessible"; + break; + +--- src/shared/util.c ++++ src/shared/util.c 2014-06-11 00:00:00.000000000 +0000 +@@ -54,6 +54,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -4635,6 +4636,73 @@ char *strjoin(const char *x, ...) { + return r; + } + ++int umount_recursive(const char *prefix, int flags) { ++ bool again; ++ int n = 0, r; ++ ++ /* Try to umount everything recursively below a ++ * directory. Also, take care of stacked mounts, and keep ++ * unmounting them until they are gone. */ ++ ++ do { ++ _cleanup_fclose_ FILE *proc_self_mountinfo = NULL; ++ ++ again = false; ++ r = 0; ++ ++ proc_self_mountinfo = fopen("/proc/self/mountinfo", "re"); ++ if (!proc_self_mountinfo) ++ return -errno; ++ ++ for (;;) { ++ _cleanup_free_ char *path = NULL, *p = NULL; ++ int k; ++ ++ k = fscanf(proc_self_mountinfo, ++ "%*s " /* (1) mount id */ ++ "%*s " /* (2) parent id */ ++ "%*s " /* (3) major:minor */ ++ "%*s " /* (4) root */ ++ "%ms " /* (5) mount point */ ++ "%*s" /* (6) mount options */ ++ "%*[^-]" /* (7) optional fields */ ++ "- " /* (8) separator */ ++ "%*s " /* (9) file system type */ ++ "%*s" /* (10) mount source */ ++ "%*s" /* (11) mount options 2 */ ++ "%*[^\n]", /* some rubbish at the end */ ++ &path); ++ ++ if (k != 1) { ++ if (k == EOF) ++ break; ++ ++ continue; ++ } ++ ++ p = cunescape(path); ++ if (!p) ++ return -ENOMEM; ++ ++ if (!path_startswith(p, prefix)) ++ continue; ++ ++ if (umount2(p, flags) < 0) { ++ r = -errno; ++ continue; ++ } ++ ++ again = true; ++ n++; ++ ++ break; ++ } ++ ++ } while (again); ++ ++ return r ? r : n; ++} ++ + bool is_main_thread(void) { + static thread_local int cached = 0; + +--- src/shared/util.h ++++ src/shared/util.h 2014-06-11 10:10:08.000000000 +0000 +@@ -890,3 +890,5 @@ union file_handle_union { + struct file_handle handle; + char padding[sizeof(struct file_handle) + MAX_HANDLE_SZ]; + }; ++ ++int umount_recursive(const char *target, int flags); diff --git a/0002-nspawn-restore-journal-directory-is-empty-check.patch b/0002-nspawn-restore-journal-directory-is-empty-check.patch new file mode 100644 index 00000000..c3d60bd4 --- /dev/null +++ b/0002-nspawn-restore-journal-directory-is-empty-check.patch @@ -0,0 +1,30 @@ +From cdb2b9d05a2f3d649f47bd2ba24eb3fe30b52e92 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 22 May 2014 15:19:46 +0900 +Subject: [PATCH] nspawn: restore journal directory is empty check + +This undoes part of commit e6a4a517befe559adf6d1dbbadf425c3538849c9. + +Instead of removing the error message about non-empty journal bind mount +directories, simply downgrade the message to a warning and proceed. +--- + src/nspawn/nspawn.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git src/nspawn/nspawn.c src/nspawn/nspawn.c +index ef84664..eb9c5e0 100644 +--- src/nspawn/nspawn.c ++++ src/nspawn/nspawn.c +@@ -1143,6 +1143,9 @@ static int setup_journal(const char *directory) { + } else if (access(p, F_OK) < 0) + return 0; + ++ if (dir_is_empty(q) == 0) ++ log_warning("%s is not empty, proceeding anyway.", q); ++ + r = mkdir_p(q, 0755); + if (r < 0) { + log_error("Failed to create %s: %m", q); +-- +1.7.9.2 + diff --git a/0002-pam_systemd-use-F_DUPFD_CLOEXEC-when-dupping-session.patch b/0002-pam_systemd-use-F_DUPFD_CLOEXEC-when-dupping-session.patch new file mode 100644 index 00000000..06a4521c --- /dev/null +++ b/0002-pam_systemd-use-F_DUPFD_CLOEXEC-when-dupping-session.patch @@ -0,0 +1,26 @@ +From 85c08dc013f9f99b58bc9b79284af0b35304237b Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Tue, 13 May 2014 16:35:34 +0200 +Subject: [PATCH] pam_systemd: use F_DUPFD_CLOEXEC when dupping session fds + +http://lists.freedesktop.org/archives/systemd-devel/2014-May/019034.html +--- + src/login/pam-module.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/login/pam-module.c src/login/pam-module.c +index 9873dd5..1259457 100644 +--- src/login/pam-module.c ++++ src/login/pam-module.c +@@ -475,7 +475,7 @@ _public_ PAM_EXTERN int pam_sm_open_session( + } + + if (session_fd >= 0) { +- session_fd = dup(session_fd); ++ session_fd = fcntl(session_fd, F_DUPFD_CLOEXEC, 3); + if (session_fd < 0) { + pam_syslog(handle, LOG_ERR, "Failed to dup session fd: %m"); + return PAM_SESSION_ERR; +-- +1.7.9.2 + diff --git a/0002-rfkill-rework-how-we-generate-file-names-from-rfkill.patch b/0002-rfkill-rework-how-we-generate-file-names-from-rfkill.patch new file mode 100644 index 00000000..67ad0284 --- /dev/null +++ b/0002-rfkill-rework-how-we-generate-file-names-from-rfkill.patch @@ -0,0 +1,116 @@ +Based on 4844262f25a3ff6bd23de05a0a6f84a8e2983d74 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 3 Dec 2014 02:02:11 +0100 +Subject: [PATCH] rfkill: rework how we generate file names from rfkill + devices + +Generate the file name from ID_PATH plus the rfkill type (wlan, +bluetooth, ...) and ignore the rfkill device name, since it apparently +is not a stable identifier. + +Also, ensure that devices disappearing don't result in broken services, +simply exit cleanly. +--- + src/rfkill/rfkill.c | 47 ++++++++++++++++++++++++----------------------- + 1 file changed, 24 insertions(+), 23 deletions(-) + +--- src/rfkill/rfkill.c ++++ src/rfkill/rfkill.c 2014-12-05 12:05:59.053518122 +0000 +@@ -28,8 +28,8 @@ + int main(int argc, char *argv[]) { + _cleanup_udev_unref_ struct udev *udev = NULL; + _cleanup_udev_device_unref_ struct udev_device *device = NULL; +- _cleanup_free_ char *saved = NULL, *escaped_name = NULL, *escaped_path_id = NULL; +- const char *name, *path_id; ++ _cleanup_free_ char *saved = NULL, *escaped_type = NULL, *escaped_path_id = NULL; ++ const char *name, *type, *path_id; + int r; + + if (argc != 3) { +@@ -55,25 +55,28 @@ int main(int argc, char *argv[]) { + return EXIT_FAILURE; + } + +- errno = 0; + device = udev_device_new_from_subsystem_sysname(udev, "rfkill", argv[2]); + if (!device) { +- if (errno != 0) +- log_error("Failed to get rfkill device '%s': %m", argv[2]); +- else +- log_oom(); +- +- return EXIT_FAILURE; ++ log_debug("Failed to get rfkill device '%s', ignoring: %m", argv[2]); ++ return EXIT_SUCCESS; + } + + name = udev_device_get_sysattr_value(device, "name"); + if (!name) { +- log_error("rfkill device has no name?"); +- return EXIT_FAILURE; ++ log_error("rfkill device has no name? Ignoring device."); ++ return EXIT_SUCCESS; ++ } ++ ++ log_debug("Operating on rfkill device '%s'.", name); ++ ++ type = udev_device_get_sysattr_value(device, "type"); ++ if (!type) { ++ log_error("rfkill device has no type? Ignoring device."); ++ return EXIT_SUCCESS; + } + +- escaped_name = cescape(name); +- if (!escaped_name) { ++ escaped_type = cescape(type); ++ if (!escaped_type) { + log_oom(); + return EXIT_FAILURE; + } +@@ -86,9 +89,9 @@ int main(int argc, char *argv[]) { + return EXIT_FAILURE; + } + +- saved = strjoin("/var/lib/systemd/rfkill/", escaped_path_id, ":", escaped_name, NULL); ++ saved = strjoin("/var/lib/systemd/rfkill/", escaped_path_id, ":", escaped_type, NULL); + } else +- saved = strjoin("/var/lib/systemd/rfkill/", escaped_name, NULL); ++ saved = strjoin("/var/lib/systemd/rfkill/", escaped_type, NULL); + + if (!saved) { + log_oom(); +@@ -102,19 +105,17 @@ int main(int argc, char *argv[]) { + return EXIT_SUCCESS; + + r = read_one_line_file(saved, &value); ++ if (r == -ENOENT) ++ return EXIT_SUCCESS; + if (r < 0) { +- +- if (r == -ENOENT) +- return EXIT_SUCCESS; +- + log_error("Failed to read %s: %s", saved, strerror(-r)); + return EXIT_FAILURE; + } + + r = udev_device_set_sysattr_value(device, "soft", value); + if (r < 0) { +- log_error("Failed to write system attribute: %s", strerror(-r)); +- return EXIT_FAILURE; ++ log_debug("Failed to write 'soft' attribute on rfkill device, ignoring: %s", strerror(-r)); ++ return EXIT_SUCCESS; + } + + } else if (streq(argv[1], "save")) { +@@ -122,8 +123,8 @@ int main(int argc, char *argv[]) { + + value = udev_device_get_sysattr_value(device, "soft"); + if (!value) { +- log_error("Failed to read system attribute: %s", strerror(-r)); +- return EXIT_FAILURE; ++ log_debug("Failed to read system attribute, ignoring device: %s", strerror(-r)); ++ return EXIT_SUCCESS; + } + + r = write_string_file(saved, value); diff --git a/0002-shell-completion-prevent-mangling-unit-names.patch b/0002-shell-completion-prevent-mangling-unit-names.patch new file mode 100644 index 00000000..9d8b1324 --- /dev/null +++ b/0002-shell-completion-prevent-mangling-unit-names.patch @@ -0,0 +1,67 @@ +Based on 6d314eca15f6cbda38d82774b210f784d3d4f52a Mon Sep 17 00:00:00 2001 +From: Eric Cook +Date: Sat, 26 Jul 2014 11:15:52 -0400 +Subject: [PATCH] shell-completion: prevent mangling unit names + +Units with literal hex '\xFF' in their names has to be read +and printed properly. +dev-disk-byx2dlabel-root.device != dev-disk-by\x2dlabel-root.device +--- + shell-completion/zsh/_systemctl.in | 20 ++++++++++---------- + 1 file changed, 10 insertions(+), 10 deletions(-) + +diff --git shell-completion/zsh/_systemctl.in shell-completion/zsh/_systemctl.in +index d364d17..e681ec6 100644 +--- shell-completion/zsh/_systemctl ++++ shell-completion/zsh/_systemctl +@@ -100,7 +100,7 @@ _systemctl_all_units() + if ( [[ ${+_sys_all_units} -eq 0 ]] || _cache_invalid SYS_ALL_UNITS ) && + ! _retrieve_cache SYS_ALL_UNITS; + then +- _sys_all_units=( $(__systemctl list-units --all | { while read a b; do echo " $a"; done; }) ) ++ _sys_all_units=( $(__systemctl list-units --all | { while read -r a b; do echo -E - " $a"; done; }) ) + _store_cache SYS_ALL_UNITS _sys_all_units + fi + } +@@ -113,7 +113,7 @@ _systemctl_really_all_units() + if ( [[ ${+_sys_really_all_units} -eq 0 ]] || _cache_invalid SYS_REALLY_ALL_UNITS ) && + ! _retrieve_cache SYS_REALLY_ALL_UNITS; + then +- all_unit_files=( $(__systemctl list-unit-files | { while read a b; do echo " $a"; done; }) ) ++ all_unit_files=( $(__systemctl list-unit-files | { while read -r a b; do echo -E - " $a"; done; }) ) + _systemctl_all_units + really_all_units=($_sys_all_units $all_unit_files) + _sys_really_all_units=(${(u)really_all_units}) +@@ -138,12 +138,12 @@ _filter_units_by_property() { + done + } + +-_systemctl_active_units() {_sys_active_units=( $(__systemctl list-units | { while read a b; do echo " $a"; done; }) )} +-_systemctl_inactive_units(){_sys_inactive_units=($(__systemctl list-units --all | { while read a b c d; do [[ $c == "inactive" || $c == "failed" ]] && echo " $a"; done; }) )} +-_systemctl_failed_units() {_sys_failed_units=( $(__systemctl list-units --failed | { while read a b; do echo " $a"; done; }) )} +-_systemctl_enabled_units() {_sys_enabled_units=( $(__systemctl list-unit-files | { while read a b; do [[ $b == "enabled" ]] && echo " $a"; done; }) )} +-_systemctl_disabled_units(){_sys_disabled_units=($(__systemctl list-unit-files | { while read a b; do [[ $b == "disabled" ]] && echo " $a"; done; }) )} +-_systemctl_masked_units() {_sys_masked_units=( $(__systemctl list-unit-files | { while read a b; do [[ $b == "masked" ]] && echo " $a"; done; }) )} ++_systemctl_active_units() {_sys_active_units=( $(__systemctl list-units | { while read -r a b; do echo -E - " $a"; done; }) )} ++_systemctl_inactive_units(){_sys_inactive_units=($(__systemctl list-units --all | { while read -r a b c d; do [[ $c == "inactive" || $c == "failed" ]] && echo -E - " $a"; done; }) )} ++_systemctl_failed_units() {_sys_failed_units=( $(__systemctl list-units --failed | { while read -r a b; do echo -E - " $a"; done; }) )} ++_systemctl_enabled_units() {_sys_enabled_units=( $(__systemctl list-unit-files | { while read -r a b; do [[ $b == "enabled" ]] && echo -E - " $a"; done; }) )} ++_systemctl_disabled_units(){_sys_disabled_units=($(__systemctl list-unit-files | { while read -r a b; do [[ $b == "disabled" ]] && echo -E - " $a"; done; }) )} ++_systemctl_masked_units() {_sys_masked_units=( $(__systemctl list-unit-files | { while read -r a b; do [[ $b == "masked" ]] && echo -E - " $a"; done; }) )} + + # Completion functions for ALL_UNITS + for fun in is-active is-failed is-enabled status show cat mask preset help list-dependencies ; do +@@ -219,8 +219,8 @@ for fun in restart reload-or-restart ; do + { + _systemctl_all_units + compadd "$@" - $( _filter_units_by_property CanStart yes \ +- ${_sys_all_units[*]} | while read line; do \ +- [[ "$line" =~ \.device$ ]] || echo " $line"; \ ++ ${_sys_all_units[*]} | while read -r line; do \ ++ [[ "$line" =~ \.device$ ]] || echo -E - " $line"; \ + done ) + } + done +-- +1.7.9.2 + diff --git a/0002-shell-completion-propose-templates-for-disable-re-en.patch b/0002-shell-completion-propose-templates-for-disable-re-en.patch new file mode 100644 index 00000000..3a58e013 --- /dev/null +++ b/0002-shell-completion-propose-templates-for-disable-re-en.patch @@ -0,0 +1,111 @@ +Based on e9a19bd882ff8a2c8aef5c63b39525ea231e5fb9 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Tue, 14 Oct 2014 21:10:02 -0400 +Subject: [PATCH] shell-completion: propose templates for + disable/[re]enable/[re]start + +Templates can be [re]enabled, on their own if the have DefaultInstance set, +and with an instance suffix in all cases. Propose just the template name +ending in @, to underline the instance suffix may have to be appended. + +Likewise for start/restart. + +This means that sometimes superflous units that one will not really +want to operate on will be proposed, but this seems better than +proposing a very incomplete set of names. + +https://bugs.freedesktop.org/show_bug.cgi?id=66912 +--- + shell-completion/bash/systemctl | 15 +++++++++++---- + shell-completion/zsh/_systemctl | 20 +++++++++++++------- + 2 files changed, 24 insertions(+), 11 deletions(-) + +--- shell-completion/bash/systemctl ++++ shell-completion/bash/systemctl +@@ -53,6 +53,9 @@ __filter_units_by_property () { + + __get_all_units () { { __systemctl $1 list-unit-files; __systemctl $1 list-units --all; } \ + | { while read -r a b; do echo " $a"; done; }; } ++__get_template_names () { __systemctl $1 list-unit-files \ ++ | { while read -r a b; do [[ $a =~ @\. ]] && echo " ${a%%@.*}@"; done; }; } ++ + __get_active_units () { __systemctl $1 list-units \ + | { while read -r a b; do echo " $a"; done; }; } + __get_startable_units () { +@@ -169,22 +172,26 @@ _systemctl () { + compopt -o filenames + + elif __contains_word "$verb" ${VERBS[DISABLED_UNITS]}; then +- comps=$( __get_disabled_units $mode ) ++ comps=$( __get_disabled_units $mode; ++ __get_template_names $mode) + compopt -o filenames + + elif __contains_word "$verb" ${VERBS[REENABLABLE_UNITS]}; then + comps=$( __get_disabled_units $mode; +- __get_enabled_units $mode ) ++ __get_enabled_units $mode; ++ __get_template_names $mode) + compopt -o filenames + + elif __contains_word "$verb" ${VERBS[STARTABLE_UNITS]}; then + comps=$( __filter_units_by_property $mode CanStart yes \ +- $( __get_startable_units $mode)) ++ $( __get_startable_units $mode); ++ __get_template_names $mode) + compopt -o filenames + + elif __contains_word "$verb" ${VERBS[RESTARTABLE_UNITS]}; then + comps=$( __filter_units_by_property $mode CanStart yes \ +- $( __get_restartable_units $mode)) ++ $( __get_restartable_units $mode); \ ++ __get_template_names $mode) + compopt -o filenames + + elif __contains_word "$verb" ${VERBS[STOPPABLE_UNITS]}; then +--- shell-completion/zsh/_systemctl ++++ shell-completion/zsh/_systemctl +@@ -139,6 +139,8 @@ _filter_units_by_property() { + } + + _systemctl_all_units() { { __systemctl list-unit-files; __systemctl list-units --all; } | { while read -r a b; do echo -E - " $a"; done; } } ++_systemctl_get_template_names() { __systemctl list-unit-files | { while read -r a b; do [[ $a =~ @\. ]] && echo -E - " ${a%%@.*}@"; done; } } ++ + + _systemctl_active_units() {_sys_active_units=( $(__systemctl list-units | { while read -r a b; do echo -E - " $a"; done; }) )} + _systemctl_startable_units(){_sys_startable_units=($(__systemctl list-units --state inactive,failed -- $(_systemctl_all_units) | { while read -r a b c d; do [[ $b == "loaded" ]] && echo -E - " $a"; done; }) )} +@@ -158,20 +160,24 @@ for fun in is-active is-failed is-enabled status show cat mask preset help list- + done + + # Completion functions for ENABLED_UNITS +-for fun in disable reenable ; do +- (( $+functions[_systemctl_$fun] )) || _systemctl_$fun() +- { ++(( $+functions[_systemctl_disable] )) || _systemctl_disable() ++{ ++ _systemctl_enabled_units ++ compadd "$@" -a - _sys_enabled_units ++} ++ ++(( $+functions[_systemctl_reenable] )) || _systemctl_reenable() ++{ + _systemctl_enabled_units + _systemctl_disabled_units +- compadd "$@" -a - _sys_enabled_units _sys_disabled_units +- } +-done ++ compadd "$@" -a - _sys_enabled_units _sys_disabled_units $(_systemctl_get_template_names) ++} + + # Completion functions for DISABLED_UNITS + (( $+functions[_systemctl_enable] )) || _systemctl_enable() + { + _systemctl_disabled_units +- compadd "$@" -a - _sys_disabled_units ++ compadd "$@" -a - _sys_disabled_units $(_systemctl_get_template_names) + } + + # Completion functions for FAILED_UNITS +-- +1.7.9.2 + diff --git a/0002-shutdown-fix-arguments-to-run-initramfs-shutdown.patch b/0002-shutdown-fix-arguments-to-run-initramfs-shutdown.patch new file mode 100644 index 00000000..12ad7d2d --- /dev/null +++ b/0002-shutdown-fix-arguments-to-run-initramfs-shutdown.patch @@ -0,0 +1,70 @@ +Based on 4b5d8d0f22ae61ceb45a25391354ba53b43ee992 Mon Sep 17 00:00:00 2001 +From: Michal Schmidt +Date: Thu, 6 Nov 2014 22:24:13 +0100 +Subject: [PATCH] shutdown: fix arguments to /run/initramfs/shutdown + +Our initrd interface specifies that the verb is in argv[1]. +This is where systemd passes it to systemd-shutdown, but getopt +permutes argv[]. This confuses dracut's shutdown script: + Shutdown called with argument '--log-level'. Rebooting! + +getopt can be convinced to not permute argv[] by having '-' as the first +character of optstring. Let's use it. This requires changing the way +non-option arguments (in our case, the verb) are processed. + +This fixes a bug where the system would reboot instead of powering off. +--- + src/core/shutdown.c | 24 +++++++++++------------- + 1 file changed, 11 insertions(+), 13 deletions(-) + +--- src/core/shutdown.c ++++ src/core/shutdown.c 2014-11-10 14:14:20.869519112 +0000 +@@ -75,9 +75,9 @@ static int parse_argv(int argc, char *ar + assert(argc >= 1); + assert(argv); + +- opterr = 0; +- +- while ((c = getopt_long(argc, argv, ":", options, NULL)) >= 0) ++ /* "-" prevents getopt from permuting argv[] and moving the verb away ++ * from argv[1]. Our interface to initrd promises it'll be there. */ ++ while ((c = getopt_long(argc, argv, "-", options, NULL)) >= 0) + switch (c) { + + case ARG_LOG_LEVEL: +@@ -115,27 +115,25 @@ static int parse_argv(int argc, char *ar + + break; + +- case '?': +- log_error("Unknown option %s.", argv[optind-1]); +- return -EINVAL; ++ case '\001': ++ if (!arg_verb) ++ arg_verb = optarg; ++ else ++ log_error("Excess arguments, ignoring"); ++ break; + +- case ':': +- log_error("Missing argument to %s.", argv[optind-1]); ++ case '?': + return -EINVAL; + + default: + assert_not_reached("Unhandled option code."); + } + +- if (optind >= argc) { ++ if (!arg_verb) { + log_error("Verb argument missing."); + return -EINVAL; + } + +- arg_verb = argv[optind]; +- +- if (optind + 1 < argc) +- log_error("Excess arguments, ignoring"); + return 0; + } + diff --git a/0002-shutdown-pass-own-argv-to-run-initramfs-shutdown.patch b/0002-shutdown-pass-own-argv-to-run-initramfs-shutdown.patch new file mode 100644 index 00000000..73a98020 --- /dev/null +++ b/0002-shutdown-pass-own-argv-to-run-initramfs-shutdown.patch @@ -0,0 +1,36 @@ +Based on a2726e5cedfa5edeabd7e0784be11bc578555ac5 Mon Sep 17 00:00:00 2001 +From: Marius Tessmann +Date: Fri, 29 Aug 2014 17:51:45 +0200 +Subject: [PATCH] shutdown: pass own argv to /run/initramfs/shutdown + +Since commit b1e90ec515408aec2702522f6f68c4920b56375b systemd passes +its log settings to systemd-shutdown via command line parameters. +However, systemd-shutdown doesn't pass these parameters to +/run/initramfs/shutdown, causing it to fall back to the default log +settings. + +This fixes the following bugs about the shutdown not being quiet +despite "quiet" being in the kernel parameters: + +https://bugs.freedesktop.org/show_bug.cgi?id=79582 +https://bugs.freedesktop.org/show_bug.cgi?id=57216 +--- + src/core/shutdown.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- src/core/shutdown.c ++++ src/core/shutdown.c 2014-10-24 12:32:44.704337960 +0000 +@@ -377,11 +377,11 @@ int main(int argc, char *argv[]) { + + if (prepare_new_root() >= 0 && + pivot_to_new_root() >= 0) { +- arguments[0] = (char*) "/shutdown"; ++ argv[0] = (char*) "/shutdown"; + + log_info("Returning to initrd..."); + +- execv("/shutdown", arguments); ++ execv("/shutdown", argv); + log_error("Failed to execute shutdown binary: %m"); + } + } diff --git a/0002-snapshot-return-error-when-snapshot-exists.patch b/0002-snapshot-return-error-when-snapshot-exists.patch new file mode 100644 index 00000000..4a7fcfb3 --- /dev/null +++ b/0002-snapshot-return-error-when-snapshot-exists.patch @@ -0,0 +1,25 @@ +From 7cabba07745b388497e8c0fc19b61984167fd474 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Tue, 28 Oct 2014 12:36:17 -0400 +Subject: [PATCH] snapshot: return error when snapshot exists + +--- + src/core/snapshot.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/core/snapshot.c src/core/snapshot.c +index 5eed615..c2678cb 100644 +--- src/core/snapshot.c ++++ src/core/snapshot.c +@@ -208,7 +208,7 @@ int snapshot_create(Manager *m, const char *name, bool cleanup, sd_bus_error *e, + return sd_bus_error_setf(e, SD_BUS_ERROR_INVALID_ARGS, "Unit name %s lacks snapshot suffix.", name); + + if (manager_get_unit(m, name)) +- sd_bus_error_setf(e, BUS_ERROR_UNIT_EXISTS, "Snapshot %s exists already.", name); ++ return sd_bus_error_setf(e, BUS_ERROR_UNIT_EXISTS, "Snapshot %s exists already.", name); + + } else { + +-- +1.7.9.2 + diff --git a/0002-switch-root-umount-the-old-root-correctly.patch b/0002-switch-root-umount-the-old-root-correctly.patch new file mode 100644 index 00000000..df79c8f0 --- /dev/null +++ b/0002-switch-root-umount-the-old-root-correctly.patch @@ -0,0 +1,26 @@ +Based on 23f25b1496c31ef4c20b8f3ee8328f7b1d5f3a54 Mon Sep 17 00:00:00 2001 +From: Dan Dedrick +Date: Tue, 29 Jul 2014 15:31:23 -0400 +Subject: [PATCH] switch-root: umount the old root correctly + +The unmount occurs after the pivot_root, so the path used to unmount +should take into account the new root directory. This will allow the +umount to actually succeed. +--- + src/core/switch-root.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- src/core/switch-root.c ++++ src/core/switch-root.c 2014-08-22 11:22:50.230735231 +0000 +@@ -122,9 +122,9 @@ int switch_root(const char *new_root) { + + /* Immediately get rid of the old root. Since we are + * running off it we need to do this lazily. */ +- if (umount2(temporary_old_root, MNT_DETACH) < 0) { ++ if (umount2("/mnt", MNT_DETACH) < 0) { + r = -errno; +- log_error("Failed to umount old root dir %s: %m", temporary_old_root); ++ log_error("Failed to umount old root dir /mnt: %m"); + goto fail; + } + diff --git a/0002-sysctl-replaces-some-slashes-with-dots.patch b/0002-sysctl-replaces-some-slashes-with-dots.patch new file mode 100644 index 00000000..d46fd449 --- /dev/null +++ b/0002-sysctl-replaces-some-slashes-with-dots.patch @@ -0,0 +1,97 @@ +From 2e573fcf8754fdfe0db0a783b1631ec1679b063a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Wed, 16 Apr 2014 21:33:46 -0400 +Subject: [PATCH] sysctl: replaces some slashes with dots + +It turns out that plain sysctl understands a.b/c syntax to write to +/proc/sys/a/b.c. Support this for compatibility. + +https://bugs.freedesktop.org/show_bug.cgi?id=77466 +--- + man/sysctl.d.xml | 29 +++++++++++++++++++++-------- + src/sysctl/sysctl.c | 18 ++++++++++++++++-- + 2 files changed, 37 insertions(+), 10 deletions(-) + +diff --git man/sysctl.d.xml man/sysctl.d.xml +index 00a857b..db53b49 100644 +--- man/sysctl.d.xml ++++ man/sysctl.d.xml +@@ -68,13 +68,26 @@ + The configuration files contain a list of + variable assignments, separated by newlines. Empty + lines and lines whose first non-whitespace character +- is # or ; are ignored. +- +- Note that both / and . are accepted as label +- separators within sysctl variable +- names. kernel.domainname=foo and +- kernel/domainname=foo hence are +- entirely equivalent. ++ is # or ; are ++ ignored. ++ ++ Note that either / or ++ . may be used as separators within ++ sysctl variable names. If the first separator is a ++ slash, remaining slashes and dots are left intact. If ++ the first separator is a dot, dots and slashes are ++ interchanged. kernel.domainname=foo ++ and kernel/domainname=foo are ++ equivalent and will cause foo to ++ be written to ++ /proc/sys/kernel/domainname. ++ Either ++ net.ipv4.conf.enp3s0/200.forwarding ++ or ++ net/ipv4/conf/enp3s0.200/forwarding ++ may be used to refer to ++ /proc/sys/net/ipv4/conf/enp3s0.200/forwarding. ++ + + Each configuration file shall be named in the + style of program.conf. +@@ -109,7 +122,7 @@ + early on boot. The network interface-specific options + will also be applied individually for each network + interface as it shows up in the system. (More +- specifically, that is ++ specifically, + net.ipv4.conf.*, + net.ipv6.conf.*, + net.ipv4.neigh.* and net.ipv6.neigh.*) +diff --git src/sysctl/sysctl.c src/sysctl/sysctl.c +index 283eefe..06defa5 100644 +--- src/sysctl/sysctl.c ++++ src/sysctl/sysctl.c +@@ -48,12 +48,26 @@ static const char conf_file_dirs[] = + #endif + ; + +-static char *normalize_sysctl(char *s) { ++static char* normalize_sysctl(char *s) { + char *n; + +- for (n = s; *n; n++) ++ n = strpbrk(s, "/."); ++ /* If the first separator is a slash, the path is ++ * assumed to be normalized and slashes remain slashes ++ * and dots remains dots. */ ++ if (!n || *n == '/') ++ return s; ++ ++ /* Otherwise, dots become slashes and slashes become ++ * dots. Fun. */ ++ while (n) { + if (*n == '.') + *n = '/'; ++ else ++ *n = '.'; ++ ++ n = strpbrk(n + 1, "/."); ++ } + + return s; + } +-- +1.7.9.2 + diff --git a/0002-systemctl-obey-state-in-list-unit-files.patch b/0002-systemctl-obey-state-in-list-unit-files.patch new file mode 100644 index 00000000..aaa1cbf3 --- /dev/null +++ b/0002-systemctl-obey-state-in-list-unit-files.patch @@ -0,0 +1,28 @@ +From fec1530e6b5b8d6dc352c7338010357126e84621 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Wed, 29 Oct 2014 22:51:00 -0400 +Subject: [PATCH] systemctl: obey --state in list-unit-files + +--- + src/systemctl/systemctl.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git src/systemctl/systemctl.c src/systemctl/systemctl.c +index b71040b..8481a9b 100644 +--- src/systemctl/systemctl.c ++++ src/systemctl/systemctl.c +@@ -1268,6 +1268,11 @@ next: + return false; + } + ++ if (!strv_isempty(arg_states)) { ++ if (!strv_find(arg_states, unit_file_state_to_string(u->state))) ++ return false; ++ } ++ + return true; + } + +-- +1.7.9.2 + diff --git a/0002-systemctl-show-BindsTo-BoundBy-in-list-dependencies.patch b/0002-systemctl-show-BindsTo-BoundBy-in-list-dependencies.patch new file mode 100644 index 00000000..6a9cd2ac --- /dev/null +++ b/0002-systemctl-show-BindsTo-BoundBy-in-list-dependencies.patch @@ -0,0 +1,35 @@ +From c469089cf647ac740c7dcf09c463d2907b6d00eb Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sat, 22 Nov 2014 20:21:56 -0500 +Subject: [PATCH] systemctl: show BindsTo/BoundBy in list-dependencies + +Suggested-by: Peter Mattern + +http://lists.freedesktop.org/archives/systemd-devel/2014-November/025437.html +--- + src/systemctl/systemctl.c | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git src/systemctl/systemctl.c src/systemctl/systemctl.c +index 78b7c96..fd69c69 100644 +--- src/systemctl/systemctl.c ++++ src/systemctl/systemctl.c +@@ -1480,11 +1480,13 @@ static int list_dependencies_get_dependencies(sd_bus *bus, const char *name, cha + "RequiresOverridable\0" + "Requisite\0" + "RequisiteOverridable\0" +- "Wants\0", ++ "Wants\0" ++ "BindsTo\0", + [DEPENDENCY_REVERSE] = "RequiredBy\0" + "RequiredByOverridable\0" + "WantedBy\0" +- "PartOf\0", ++ "PartOf\0" ++ "BoundBy\0", + [DEPENDENCY_AFTER] = "After\0", + [DEPENDENCY_BEFORE] = "Before\0", + }; +-- +1.7.9.2 + diff --git a/0002-systemctl-update-NAME-to-PATTERN-in-help.patch b/0002-systemctl-update-NAME-to-PATTERN-in-help.patch new file mode 100644 index 00000000..fd9096b9 --- /dev/null +++ b/0002-systemctl-update-NAME-to-PATTERN-in-help.patch @@ -0,0 +1,52 @@ +From b3ae710c251d0ce5cf2cef63208e325497b5e323 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Tue, 1 Apr 2014 20:43:15 -0400 +Subject: [PATCH] systemctl: update NAME to PATTERN in help() + +Previously the man page was modified, but not help(). +--- + TODO | 2 ++ + src/systemctl/systemctl.c | 14 +++++++------- + 2 files changed, 9 insertions(+), 7 deletions(-) + +diff --git TODO TODO +index 4ff69ff..0343b94 100644 +--- TODO ++++ TODO +@@ -1,4 +1,6 @@ + Bugfixes: ++* Should systemctl status \* work on all unit types, not just .service? ++ + * enabling an instance unit creates a pointless link, and + the unit will be started with getty@getty.service: + $ systemctl enable getty@.service +diff --git src/systemctl/systemctl.c src/systemctl/systemctl.c +index 6b88f85..653a324 100644 +--- src/systemctl/systemctl.c ++++ src/systemctl/systemctl.c +@@ -5403,15 +5403,15 @@ static int systemctl_help(void) { + " otherwise restart if active\n" + " isolate NAME Start one unit and stop all others\n" + " kill NAME... Send signal to processes of a unit\n" +- " is-active NAME... Check whether units are active\n" +- " is-failed NAME... Check whether units are failed\n" +- " status [NAME...|PID...] Show runtime status of one or more units\n" +- " show [NAME...|JOB...] Show properties of one or more\n" ++ " is-active PATTERN... Check whether units are active\n" ++ " is-failed PATTERN... Check whether units are failed\n" ++ " status [PATTERN...|PID...] Show runtime status of one or more units\n" ++ " show [PATTERN...|JOB...] Show properties of one or more\n" + " units/jobs or the manager\n" +- " cat NAME... Show files and drop-ins of one or more units\n" ++ " cat PATTERN... Show files and drop-ins of one or more units\n" + " set-property NAME ASSIGNMENT... Sets one or more properties of a unit\n" +- " help NAME...|PID... Show manual for one or more units\n" +- " reset-failed [NAME...] Reset failed state for all, one, or more\n" ++ " help PATTERN...|PID... Show manual for one or more units\n" ++ " reset-failed [PATTERN...] Reset failed state for all, one, or more\n" + " units\n" + " list-dependencies [NAME] Recursively show units which are required\n" + " or wanted by this unit or by which this\n" +-- +1.7.9.2 + diff --git a/0002-systemd-fix-error-message.patch b/0002-systemd-fix-error-message.patch new file mode 100644 index 00000000..778444a8 --- /dev/null +++ b/0002-systemd-fix-error-message.patch @@ -0,0 +1,29 @@ +Based on 6ad3b2b62cbe34cc02ee98deb5f48047f5e42d26 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sat, 30 Aug 2014 17:22:42 -0400 +Subject: [PATCH] systemd: fix error message + +--- + src/core/dbus-manager.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- src/core/dbus-manager.c ++++ src/core/dbus-manager.c 2014-09-01 12:51:33.266735961 +0000 +@@ -1114,7 +1114,7 @@ static int method_switch_root(sd_bus *bu + return r; + + if (m->running_as != SYSTEMD_SYSTEM) +- return sd_bus_error_setf(error, SD_BUS_ERROR_NOT_SUPPORTED, "KExec is only supported for system managers."); ++ return sd_bus_error_setf(error, SD_BUS_ERROR_NOT_SUPPORTED, "Root switching is only supported by system manager."); + + r = sd_bus_message_read(message, "ss", &root, &init); + if (r < 0) +@@ -1125,7 +1125,7 @@ static int method_switch_root(sd_bus *bu + + /* Safety check */ + if (isempty(init)) { +- if (! path_is_os_tree(root)) ++ if (!path_is_os_tree(root)) + return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Specified switch root path %s does not seem to be an OS tree. /etc/os-release is missing.", root); + } else { + _cleanup_free_ char *p = NULL; diff --git a/0002-systemd-try-harder-to-bind-to-notify-socket.patch b/0002-systemd-try-harder-to-bind-to-notify-socket.patch new file mode 100644 index 00000000..d0277386 --- /dev/null +++ b/0002-systemd-try-harder-to-bind-to-notify-socket.patch @@ -0,0 +1,44 @@ +Based on e7bc519620cb7bcdbe2166fc2a446453769d827e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Thu, 16 Oct 2014 19:15:38 -0500 +Subject: [PATCH] systemd: try harder to bind to notify socket + +Without the socket open we are going to crash and burn. If for +whatever reason we fail during deserialization we will fail when +trying to open the socket. In this case it is better to unlink the old +socket and maybe lose some messages, than to continue without the +notification socket. + +Of course this situation should not happen, but we should handle +it as gracefully as possible anyway. + +https://bugzilla.redhat.com/show_bug.cgi?id=1099299 +--- + src/core/manager.c | 16 +++++++++++++++- + 1 file changed, 15 insertions(+), 1 deletion(-) + +--- src/core/manager.c ++++ src/core/manager.c 2014-10-20 13:47:21.035837897 +0000 +@@ -572,7 +572,21 @@ static int manager_setup_notify(Manager + r = bind(fd, &sa.sa, offsetof(struct sockaddr_un, sun_path) + 1 + strlen(sa.un.sun_path+1)); + if (r < 0) { + log_error("bind(@%s) failed: %m", sa.un.sun_path+1); +- return -errno; ++ if (errno == EADDRINUSE) { ++ log_notice("Removing %s socket and trying again.", m->notify_socket); ++ r = unlink(m->notify_socket); ++ if (r < 0) { ++ log_error("Failed to remove %s: %m", m->notify_socket); ++ return -EADDRINUSE; ++ } ++ ++ r = bind(fd, &sa.sa, offsetof(struct sockaddr_un, sun_path) + strlen(sa.un.sun_path)); ++ if (r < 0) { ++ log_error("bind(@%s) failed: %m", sa.un.sun_path+1); ++ return -errno; ++ } ++ } else ++ return -errno; + } + + r = setsockopt(fd, SOL_SOCKET, SO_PASSCRED, &one, sizeof(one)); diff --git a/0002-time-also-support-infinity-syntax-in-parse_nsec.patch b/0002-time-also-support-infinity-syntax-in-parse_nsec.patch new file mode 100644 index 00000000..c1f4884c --- /dev/null +++ b/0002-time-also-support-infinity-syntax-in-parse_nsec.patch @@ -0,0 +1,40 @@ +Based on e73c78c27511b03c7abc55aed87896092c0de699 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 24 Oct 2014 19:07:26 +0200 +Subject: [PATCH] time: also support 'infinity' syntax in parse_nsec() + +Let's make parse_usec() and parse_nsec() work similar +--- + src/shared/time-util.c | 14 +++++++++++++- + 1 file changed, 13 insertions(+), 1 deletion(-) + +--- src/shared/time-util.c ++++ src/shared/time-util.c +@@ -773,7 +773,7 @@ int parse_nsec(const char *t, nsec_t *nsec) { + { "", 1ULL }, /* default is nsec */ + }; + +- const char *p; ++ const char *p, *s; + nsec_t r = 0; + bool something = false; + +@@ -781,6 +781,18 @@ int parse_nsec(const char *t, nsec_t *nsec) { + assert(nsec); + + p = t; ++ ++ p += strspn(p, WHITESPACE); ++ s = startswith(p, "infinity"); ++ if (s) { ++ s += strspn(s, WHITESPACE); ++ if (!*s != 0) ++ return -EINVAL; ++ ++ *nsec = ((nsec_t) -1); ++ return 0; ++ } ++ + for (;;) { + long long l, z = 0; + char *e; diff --git a/0002-udev-hwdb-New-Entry-for-Dell-XPS12-9Q33-keyboard.patch b/0002-udev-hwdb-New-Entry-for-Dell-XPS12-9Q33-keyboard.patch new file mode 100644 index 00000000..7fab49e6 --- /dev/null +++ b/0002-udev-hwdb-New-Entry-for-Dell-XPS12-9Q33-keyboard.patch @@ -0,0 +1,29 @@ +From 24119cf10c7ed58a8fc0851745149dcc6dd5757f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Stefan=20Br=C3=BCns?= +Date: Mon, 29 Sep 2014 22:32:10 -0400 +Subject: [PATCH] udev/hwdb: New Entry for Dell XPS12 9Q33 keyboard + +https://bugs.freedesktop.org/show_bug.cgi?id=84437 +--- + hwdb/60-keyboard.hwdb | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index 0ffcb83..8a1baa7 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -243,6 +243,11 @@ keyboard:dmi:bvn*:bvr*:bd*:svnDell*:pnPrecision*:pvr* + keyboard:dmi:bvn*:bvr*:bd*:svnDell*:pnXPS*:pvr* + KEYBOARD_KEY_8c=!unknown + ++# Dell XPS12 9Q33 ++keyboard:dmi:bvn*:bvr*:bd*:svnDell*:pnXPS12-9Q33*:pvr* ++ KEYBOARD_KEY_88=wlan ++ KEYBOARD_KEY_65=switchvideomode # Screen Rotate ++ + # Dell Latitude microphone mute + keyboard:name:Dell WMI hotkeys:dmi:bvn*:bvr*:bd*:svnDell*:pnLatitude* + KEYBOARD_KEY_150=f20 # Mic mute toggle, should be micmute +-- +1.7.9.2 + diff --git a/0002-units-add-missing-caps-so-that-GetAddresses-can-work.patch b/0002-units-add-missing-caps-so-that-GetAddresses-can-work.patch new file mode 100644 index 00000000..58189d0f --- /dev/null +++ b/0002-units-add-missing-caps-so-that-GetAddresses-can-work.patch @@ -0,0 +1,18 @@ +Basedo n a55954297dade7b432fd3a4f328f23261621ff79 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 19 Jun 2014 19:53:16 +0200 +Subject: [PATCH] units: add missing caps so that GetAddresses() can work + +--- + units/systemd-machined.service.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- units/systemd-machined.service.in ++++ units/systemd-machined.service.in 2014-06-24 11:26:19.554235869 +0000 +@@ -15,5 +15,5 @@ After=machine.slice + [Service] + ExecStart=@rootlibexecdir@/systemd-machined + BusName=org.freedesktop.machine1 +-CapabilityBoundingSet=CAP_KILL ++CapabilityBoundingSet=CAP_KILL CAP_SYS_PTRACE CAP_SYS_ADMIN CAP_SETGID + WatchdogSec=1min diff --git a/0002-units-order-systemd-fsck-.service-after-local-fs-pre.patch b/0002-units-order-systemd-fsck-.service-after-local-fs-pre.patch new file mode 100644 index 00000000..6bc06d23 --- /dev/null +++ b/0002-units-order-systemd-fsck-.service-after-local-fs-pre.patch @@ -0,0 +1,29 @@ +From 66f311206e908a5b6f21e66fad73e1e5ea3e31d6 Mon Sep 17 00:00:00 2001 +From: Ivan Shapovalov +Date: Wed, 27 Aug 2014 00:17:43 +0400 +Subject: [PATCH] units: order systemd-fsck@.service after + local-fs-pre.target. + +With this change, it becomes possible to order a unit to activate before any +modifications to the file systems. This is especially useful for supporting +resume from hibernation. +--- + units/systemd-fsck@.service.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git units/systemd-fsck@.service.in units/systemd-fsck@.service.in +index c12efa8..d2cda6a 100644 +--- units/systemd-fsck@.service.in ++++ units/systemd-fsck@.service.in +@@ -10,7 +10,7 @@ Description=File System Check on %f + Documentation=man:systemd-fsck@.service(8) + DefaultDependencies=no + BindsTo=%i.device +-After=systemd-readahead-collect.service systemd-readahead-replay.service %i.device systemd-fsck-root.service ++After=systemd-readahead-collect.service systemd-readahead-replay.service %i.device systemd-fsck-root.service local-fs-pre.target + Before=shutdown.target + + [Service] +-- +1.7.9.2 + diff --git a/0002-units-serial-getty-.service-use-the-default-RestartS.patch b/0002-units-serial-getty-.service-use-the-default-RestartS.patch new file mode 100644 index 00000000..3945e4cd --- /dev/null +++ b/0002-units-serial-getty-.service-use-the-default-RestartS.patch @@ -0,0 +1,29 @@ +Based on 4bf04322b8b7ecca4f3d65cfc642d0ac16356129 Mon Sep 17 00:00:00 2001 +From: Michael Olbrich +Date: Tue, 15 Jul 2014 18:28:10 +0200 +Subject: [PATCH] units/serial-getty@.service: use the default RestartSec + +For pluggable ttys such as USB serial devices, the getty is restarted +and exits in a loop until the remove event reaches systemd. Under +certain circumstances the restart loop can overload the system in a +way that prevents the remove event from reaching systemd for a long +time (e.g. at least several minutes on a small embedded system). + +Use the default RestartSec to prevent the restart loop from +overloading the system. Serial gettys are interactive units, so +waiting an extra 100ms really doesn't make a difference anyways +compared to the time it takes the user to log in. +--- + units/serial-getty@.service.m4 | 1 - + 1 file changed, 1 deletion(-) + +--- units/serial-getty@.service.m4 ++++ units/serial-getty@.service.m4 2014-07-16 00:00:00.000000000 +0000 +@@ -27,7 +27,6 @@ ExecStart=-/sbin/agetty --keep-baud %I 1 + ExecStopPost=-/sbin/vhangup /dev/%I + Type=idle + Restart=always +-RestartSec=0 + UtmpIdentifier=%I + TTYPath=/dev/%I + TTYReset=yes diff --git a/0002-util-avoid-non-portable-__WORDSIZE.patch b/0002-util-avoid-non-portable-__WORDSIZE.patch new file mode 100644 index 00000000..7c82d91c --- /dev/null +++ b/0002-util-avoid-non-portable-__WORDSIZE.patch @@ -0,0 +1,25 @@ +Based on 8507eb20b64010b26f23822cbf442bb0bf96511c Mon Sep 17 00:00:00 2001 +From: Emil Renner Berthing +Date: Fri, 19 Sep 2014 20:26:53 +0200 +Subject: [PATCH] util: avoid non-portable __WORDSIZE + +Lets not unnecessarily rely on __WORDSIZE, which is not clearly specified +by any spec. Use explicit size comparisons if we're not interested in the +WORDSIZE, anyway. + +(David: adjust commit message to explain why we do this) +--- + src/shared/util.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- src/shared/util.h ++++ src/shared/util.h 2014-09-24 06:58:11.378235669 +0000 +@@ -166,7 +166,7 @@ int safe_atolli(const char *s, long long + + int safe_atod(const char *s, double *ret_d); + +-#if __WORDSIZE == 32 ++#if LONG_MAX == INT_MAX + static inline int safe_atolu(const char *s, unsigned long *ret_u) { + assert_cc(sizeof(unsigned long) == sizeof(unsigned)); + return safe_atou(s, (unsigned*) ret_u); diff --git a/0002-util-don-t-consider-tabs-special-in-string_has_cc-an.patch b/0002-util-don-t-consider-tabs-special-in-string_has_cc-an.patch new file mode 100644 index 00000000..7dd59ed5 --- /dev/null +++ b/0002-util-don-t-consider-tabs-special-in-string_has_cc-an.patch @@ -0,0 +1,117 @@ +From 6294aa76d818e831de4592b41a37e225fd0871f9 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 7 Jul 2014 12:04:55 +0200 +Subject: [PATCH] util: don't consider tabs special in string_has_cc() anymore + +Instead, take a list of exceptions to our usual CC check +--- + src/hostname/hostnamed.c | 3 +-- + src/shared/env-util.c | 4 +++- + src/shared/fileio.c | 2 +- + src/shared/util.c | 19 ++++++++++--------- + src/shared/util.h | 5 +++-- + 5 files changed, 18 insertions(+), 15 deletions(-) + +Index: src/hostname/hostnamed.c +=================================================================== +--- src/hostname/hostnamed.c.orig ++++ src/hostname/hostnamed.c +@@ -507,8 +507,7 @@ static int set_machine_info(Context *c, + + if (prop == PROP_ICON_NAME && !filename_is_safe(name)) + return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Invalid icon name '%s'", name); +- if (prop == PROP_PRETTY_HOSTNAME && +- (string_has_cc(name) || chars_intersect(name, "\t"))) ++ if (prop == PROP_PRETTY_HOSTNAME && string_has_cc(name, NULL)) + return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Invalid pretty host name '%s'", name); + if (prop == PROP_CHASSIS && !valid_chassis(name)) + return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Invalid chassis '%s'", name); +Index: src/shared/env-util.c +=================================================================== +--- src/shared/env-util.c.orig ++++ src/shared/env-util.c +@@ -78,7 +78,9 @@ bool env_value_is_valid(const char *e) { + if (!utf8_is_valid(e)) + return false; + +- if (string_has_cc(e)) ++ /* bash allows tabs in environment variables, and so should ++ * we */ ++ if (string_has_cc(e, "\t")) + return false; + + /* POSIX says the overall size of the environment block cannot +Index: src/shared/fileio.c +=================================================================== +--- src/shared/fileio.c.orig ++++ src/shared/fileio.c +@@ -658,7 +658,7 @@ static void write_env_var(FILE *f, const + p++; + fwrite(v, 1, p-v, f); + +- if (string_has_cc(p) || chars_intersect(p, WHITESPACE "\'\"\\`$")) { ++ if (string_has_cc(p, NULL) || chars_intersect(p, WHITESPACE "\'\"\\`$")) { + fputc('\"', f); + + for (; *p; p++) { +Index: src/shared/util.c +=================================================================== +--- src/shared/util.c.orig ++++ src/shared/util.c +@@ -5466,16 +5466,14 @@ bool filename_is_safe(const char *p) { + bool string_is_safe(const char *p) { + const char *t; + +- assert(p); ++ if (!p) ++ return false; + + for (t = p; *t; t++) { + if (*t > 0 && *t < ' ') + return false; + +- if (*t == 127) +- return false; +- +- if (strchr("\\\"\'", *t)) ++ if (strchr("\\\"\'\0x7f", *t)) + return false; + } + +@@ -5483,16 +5481,19 @@ bool string_is_safe(const char *p) { + } + + /** +- * Check if a string contains control characters. +- * Spaces and tabs are not considered control characters. ++ * Check if a string contains control characters. If 'ok' is non-NULL ++ * it may be a string containing additional CCs to be considered OK. + */ +-bool string_has_cc(const char *p) { ++bool string_has_cc(const char *p, const char *ok) { + const char *t; + + assert(p); + + for (t = p; *t; t++) { +- if (*t > 0 && *t < ' ' && *t != '\t') ++ if (ok && strchr(ok, *t)) ++ return false; ++ ++ if (*t > 0 && *t < ' ') + return true; + + if (*t == 127) +Index: src/shared/util.h +=================================================================== +--- src/shared/util.h.orig ++++ src/shared/util.h +@@ -652,7 +652,7 @@ _alloc_(2, 3) static inline void *memdup + bool filename_is_safe(const char *p) _pure_; + bool path_is_safe(const char *p) _pure_; + bool string_is_safe(const char *p) _pure_; +-bool string_has_cc(const char *p) _pure_; ++bool string_has_cc(const char *p, const char *ok) _pure_; + + /** + * Check if a string contains any glob patterns. diff --git a/0002-util-fix-has-cc-check-and-add-test.patch b/0002-util-fix-has-cc-check-and-add-test.patch new file mode 100644 index 00000000..f39ad16c --- /dev/null +++ b/0002-util-fix-has-cc-check-and-add-test.patch @@ -0,0 +1,25 @@ +Based on 1cb1767a29458b3d16d6b161b4ee34dd496ff60d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Fri, 11 Jul 2014 09:21:15 -0400 +Subject: [PATCH] util: fix has cc check and add test + +--- + src/shared/util.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/shared/util.c src/shared/util.c +index 3342798..75dc58b 100644 +--- src/shared/util.c ++++ src/shared/util.c +@@ -5419,7 +5419,7 @@ bool string_has_cc(const char *p, const char *ok) { + + for (t = p; *t; t++) { + if (ok && strchr(ok, *t)) +- return false; ++ continue; + + if (*t > 0 && *t < ' ') + return true; +-- +1.7.9.2 + diff --git a/0002-util-fix-minimal-race-where-we-might-miss-SIGTERMs-w.patch b/0002-util-fix-minimal-race-where-we-might-miss-SIGTERMs-w.patch new file mode 100644 index 00000000..9cd13c2d --- /dev/null +++ b/0002-util-fix-minimal-race-where-we-might-miss-SIGTERMs-w.patch @@ -0,0 +1,96 @@ +Based on 8a7c93d858c342744adf481565d8bb03b9713dcf Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 27 Aug 2014 21:42:20 +0200 +Subject: [PATCH] util: fix minimal race where we might miss SIGTERMs when + forking off an agent + +Before forking, block all signals, and unblock them afterwards. This way +the child will have them blocked, and we won't lose them. +--- + src/shared/util.c | 39 ++++++++++++++++++++++++++++++++++----- + 1 file changed, 34 insertions(+), 5 deletions(-) + +--- src/shared/util.c ++++ src/shared/util.c 2014-08-28 10:32:06.442693437 +0000 +@@ -894,6 +894,18 @@ int reset_all_signal_handlers(void) { + return 0; + } + ++static int reset_signal_mask(void) { ++ sigset_t ss; ++ ++ if (sigemptyset(&ss) < 0) ++ return -errno; ++ ++ if (sigprocmask(SIG_SETMASK, &ss, NULL) < 0) ++ return -errno; ++ ++ return 0; ++} ++ + char *strstrip(char *s) { + char *e; + +@@ -5119,9 +5131,9 @@ int fd_inc_rcvbuf(int fd, size_t n) { + } + + int fork_agent(pid_t *pid, const int except[], unsigned n_except, const char *path, ...) { +- pid_t parent_pid, agent_pid; +- int fd; + bool stdout_is_tty, stderr_is_tty; ++ pid_t parent_pid, agent_pid; ++ sigset_t ss, saved_ss; + unsigned n, i; + va_list ap; + char **l; +@@ -5129,16 +5141,25 @@ int fork_agent(pid_t *pid, const int exc + assert(pid); + assert(path); + +- parent_pid = getpid(); +- + /* Spawns a temporary TTY agent, making sure it goes away when + * we go away */ + ++ parent_pid = getpid(); ++ ++ /* First we temporarily block all signals, so that the new ++ * child has them blocked initially. This way, we can be sure ++ * that SIGTERMs are not lost we might send to the agent. */ ++ assert_se(sigfillset(&ss) >= 0); ++ assert_se(sigprocmask(SIG_SETMASK, &ss, &saved_ss) >= 0); ++ + agent_pid = fork(); +- if (agent_pid < 0) ++ if (agent_pid < 0) { ++ assert_se(sigprocmask(SIG_SETMASK, &saved_ss, NULL) >= 0); + return -errno; ++ } + + if (agent_pid != 0) { ++ assert_se(sigprocmask(SIG_SETMASK, &saved_ss, NULL) >= 0); + *pid = agent_pid; + return 0; + } +@@ -5149,6 +5170,12 @@ int fork_agent(pid_t *pid, const int exc + if (prctl(PR_SET_PDEATHSIG, SIGTERM) < 0) + _exit(EXIT_FAILURE); + ++ /* Make sure we actually can kill the agent, if we need to, in ++ * case somebody invoked us from a shell script that trapped ++ * SIGTERM or so... */ ++ reset_all_signal_handlers(); ++ reset_signal_mask(); ++ + /* Check whether our parent died before we were able + * to set the death signal */ + if (getppid() != parent_pid) +@@ -5161,6 +5188,8 @@ int fork_agent(pid_t *pid, const int exc + stderr_is_tty = isatty(STDERR_FILENO); + + if (!stdout_is_tty || !stderr_is_tty) { ++ int fd; ++ + /* Detach from stdout/stderr. and reopen + * /dev/tty for them. This is important to + * ensure that when systemctl is started via diff --git a/0002-util-remove-a-unnecessary-check.patch b/0002-util-remove-a-unnecessary-check.patch new file mode 100644 index 00000000..ac7cdfb8 --- /dev/null +++ b/0002-util-remove-a-unnecessary-check.patch @@ -0,0 +1,25 @@ +Based on 42646a8bf24be2c9280554c9d8540c67c835b3c4 Mon Sep 17 00:00:00 2001 +From: Thomas Hindoe Paaboel Andersen +Date: Tue, 16 Sep 2014 22:58:35 +0200 +Subject: [PATCH] util: remove a unnecessary check + +We only break out of the previous loop if fd >= 0 so there is no +use in checking it again. + +Found by coverity. Fixes: CID#1237577 +--- + src/shared/util.c | 3 --- + 1 file changed, 3 deletions(-) + +--- src/shared/util.c ++++ src/shared/util.c 2014-09-18 13:05:08.218236754 +0000 +@@ -1772,9 +1772,6 @@ int open_terminal(const char *name, int + c++; + } + +- if (fd < 0) +- return -errno; +- + r = isatty(fd); + if (r < 0) { + close_nointr_nofail(fd); diff --git a/0002-util-when-unescaping-strings-don-t-allow-smuggling-i.patch b/0002-util-when-unescaping-strings-don-t-allow-smuggling-i.patch new file mode 100644 index 00000000..b202ce37 --- /dev/null +++ b/0002-util-when-unescaping-strings-don-t-allow-smuggling-i.patch @@ -0,0 +1,74 @@ +Based on e0a33e7ba619eb44f732aaf23cb249fa43d0ce8d Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 2 Jul 2014 13:42:25 +0200 +Subject: [PATCH] util: when unescaping strings, don't allow smuggling in of + additional NUL bytes + +Better safe than sorry. +--- + src/shared/util.c | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git src/shared/util.c src/shared/util.c +index ceafa01..4ad3f20 100644 +--- src/shared/util.c ++++ src/shared/util.c +@@ -1256,7 +1256,7 @@ char *cunescape_length_with_prefix(const char *s, size_t length, const char *pre + a = unhexchar(f[1]); + b = unhexchar(f[2]); + +- if (a < 0 || b < 0) { ++ if (a < 0 || b < 0 || (a == 0 && b == 0)) { + /* Invalid escape code, let's take it literal then */ + *(t++) = '\\'; + *(t++) = 'x'; +@@ -1283,7 +1283,7 @@ char *cunescape_length_with_prefix(const char *s, size_t length, const char *pre + b = unoctchar(f[1]); + c = unoctchar(f[2]); + +- if (a < 0 || b < 0 || c < 0) { ++ if (a < 0 || b < 0 || c < 0 || (a == 0 && b == 0 && c == 0)) { + /* Invalid escape code, let's take it literal then */ + *(t++) = '\\'; + *(t++) = f[0]; +@@ -1566,8 +1566,7 @@ int chvt(int vt) { + + int read_one_char(FILE *f, char *ret, usec_t t, bool *need_nl) { + struct termios old_termios, new_termios; +- char c; +- char line[LINE_MAX]; ++ char c, line[LINE_MAX]; + + assert(f); + assert(ret); +@@ -1604,9 +1603,10 @@ int read_one_char(FILE *f, char *ret, usec_t t, bool *need_nl) { + } + } + +- if (t != (usec_t) -1) ++ if (t != (usec_t) -1) { + if (fd_wait_for_event(fileno(f), POLLIN, t) <= 0) + return -ETIMEDOUT; ++ } + + if (!fgets(line, sizeof(line), f)) + return -EIO; +@@ -1624,6 +1624,7 @@ int read_one_char(FILE *f, char *ret, usec_t t, bool *need_nl) { + } + + int ask(char *ret, const char *replies, const char *text, ...) { ++ int r; + + assert(ret); + assert(replies); +@@ -1632,7 +1633,6 @@ int ask(char *ret, const char *replies, const char *text, ...) { + for (;;) { + va_list ap; + char c; +- int r; + bool need_nl = true; + + if (on_tty()) +-- +1.7.9.2 + diff --git a/0002-vconsole-setup-run-setfont-before-loadkeys.patch b/0002-vconsole-setup-run-setfont-before-loadkeys.patch new file mode 100644 index 00000000..7ef05c2d --- /dev/null +++ b/0002-vconsole-setup-run-setfont-before-loadkeys.patch @@ -0,0 +1,167 @@ +Based on abee28c56d523e55751b0c007d0bf812cc285c00 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Tue, 1 Jul 2014 22:20:11 -0400 +Subject: [PATCH] vconsole-setup: run setfont before loadkeys + +https://bugs.freedesktop.org/show_bug.cgi?id=80685 + +For SUSE please note that this had been ported on top of the patches + * handle-disable_caplock-and-compose_table-and-kbd_rate.patch + * handle-numlock-value-in-etc-sysconfig-keyboard.patch +that is that now set_kbd_rate() will be called first before font_load(). +Then font_load() is followed by load_compose_table() and afterwards as +in the original commit the keymap_load() follows. + +--- + src/vconsole/vconsole-setup.c | 93 +++++++++++++++++++++--------------------- + 1 file changed, 47 insertions(+), 46 deletions(-) + +Index: src/vconsole/vconsole-setup.c +=================================================================== +--- src/vconsole/vconsole-setup.c.orig ++++ src/vconsole/vconsole-setup.c +@@ -340,23 +340,20 @@ static int set_kbd_rate(const char *vc, + + int main(int argc, char **argv) { + const char *vc; +- char *vc_keymap = NULL; +- char *vc_keymap_toggle = NULL; +- char *vc_font = NULL; +- char *vc_font_map = NULL; +- char *vc_font_unimap = NULL; ++ _cleanup_free_ char ++ *vc_keymap = NULL, *vc_keymap_toggle = NULL, ++ *vc_font = NULL, *vc_font_map = NULL, *vc_font_unimap = NULL; ++ _cleanup_close_ int fd = -1; + #ifdef HAVE_SYSV_COMPAT +- char *vc_kbd_delay = NULL; +- char *vc_kbd_rate = NULL; +- char *vc_kbd_disable_caps_lock = NULL; +- char *vc_kbd_numlock = NULL; +- char *vc_compose_table = NULL; ++ _cleanup_free_ char ++ *vc_kbd_numlock = NULL, *vc_kbd_delay = NULL, ++ *vc_kbd_rate = NULL, * vc_kbd_disable_caps_lock = NULL, ++ *vc_compose_table = NULL; + pid_t kbd_rate_pid = 0, compose_table_pid = 0; ++ bool numlock = false; + #endif +- int fd = -1; + bool utf8; + bool disable_capslock = false; +- bool numlock = false; + pid_t font_pid = 0, keymap_pid = 0; + bool font_copy = false; + int r = EXIT_FAILURE; +@@ -377,12 +374,12 @@ int main(int argc, char **argv) { + fd = open_terminal(vc, O_RDWR|O_CLOEXEC); + if (fd < 0) { + log_error("Failed to open %s: %m", vc); +- goto finish; ++ return EXIT_FAILURE; + } + + if (!is_vconsole(fd)) { + log_error("Device %s is not a virtual console.", vc); +- goto finish; ++ return EXIT_FAILURE; + } + + utf8 = is_locale_utf8(); +@@ -464,58 +461,62 @@ int main(int argc, char **argv) { + if (r < 0 && r != -ENOENT) + log_warning("Failed to read /proc/cmdline: %s", strerror(-r)); + } ++#ifdef HAVE_SYSV_COMPAT ++finish: ++ r = set_kbd_rate(vc, vc_kbd_rate, vc_kbd_delay, &kbd_rate_pid); ++ if (r < 0) { ++ log_error("Failed to start /bin/kbdrate: %s", strerror(-r)); ++ return EXIT_FAILURE; ++ } ++ ++ if (kbd_rate_pid > 0) ++ wait_for_terminate_and_warn("/bin/kbdrate", kbd_rate_pid); ++#endif + + if (utf8) + enable_utf8(fd); + else + disable_utf8(fd); + +- r = EXIT_FAILURE; +- +- if (keymap_load(vc, vc_keymap, vc_keymap_toggle, utf8, disable_capslock, &keymap_pid) >= 0 && +-#ifdef HAVE_SYSV_COMPAT +- load_compose_table(vc, vc_compose_table, &compose_table_pid) >= 0 && +- set_kbd_rate(vc, vc_kbd_rate, vc_kbd_delay, &kbd_rate_pid) >= 0 && +-#endif +- font_load(vc, vc_font, vc_font_map, vc_font_unimap, &font_pid) >= 0) +- r = EXIT_SUCCESS; ++ r = font_load(vc, vc_font, vc_font_map, vc_font_unimap, &font_pid); ++ if (r < 0) { ++ log_error("Failed to start " KBD_SETFONT ": %s", strerror(-r)); ++ return EXIT_FAILURE; ++ } + +-finish: +- if (keymap_pid > 0) +- wait_for_terminate_and_warn(KBD_LOADKEYS, keymap_pid); +- if (numlock) +- touch("/run/numlock-on"); +- else +- unlink("/run/numlock-on"); ++ if (font_pid > 0) ++ wait_for_terminate_and_warn(KBD_SETFONT, font_pid); + + #ifdef HAVE_SYSV_COMPAT ++ r = load_compose_table(vc, vc_compose_table, &compose_table_pid); ++ if (r < 0) { ++ log_error("Failed to start " KBD_LOADKEYS ": %s", strerror(-r)); ++ return EXIT_FAILURE; ++ } ++ + if (compose_table_pid > 0) + wait_for_terminate_and_warn(KBD_LOADKEYS, compose_table_pid); +- +- if (kbd_rate_pid > 0) +- wait_for_terminate_and_warn("/bin/kbdrate", kbd_rate_pid); + #endif + +- if (font_pid > 0) { +- wait_for_terminate_and_warn(KBD_SETFONT, font_pid); +- if (font_copy) +- font_copy_to_all_vcs(fd); ++ r = keymap_load(vc, vc_keymap, vc_keymap_toggle, utf8, disable_capslock, &keymap_pid); ++ if (r < 0) { ++ log_error("Failed to start " KBD_LOADKEYS ": %s", strerror(-r)); ++ return EXIT_FAILURE; + } + +- free(vc_keymap); +- free(vc_font); +- free(vc_font_map); +- free(vc_font_unimap); +- free(vc_kbd_numlock); ++ if (keymap_pid > 0) ++ wait_for_terminate_and_warn(KBD_LOADKEYS, keymap_pid); ++ + #ifdef HAVE_SYSV_COMPAT +- free(vc_kbd_delay); +- free(vc_kbd_rate); +- free(vc_kbd_disable_caps_lock); +- free(vc_compose_table); ++ if (numlock) ++ touch("/run/numlock-on"); ++ else ++ unlink("/run/numlock-on"); + #endif + +- if (fd >= 0) +- close_nointr_nofail(fd); ++ /* Only copy the font when we started setfont successfully */ ++ if (font_copy && font_pid > 0) ++ font_copy_to_all_vcs(fd); + + return r; + } diff --git a/0003-Add-quotes-to-warning-message.patch b/0003-Add-quotes-to-warning-message.patch new file mode 100644 index 00000000..3a742bac --- /dev/null +++ b/0003-Add-quotes-to-warning-message.patch @@ -0,0 +1,41 @@ +From f0ea29eaeb3449822bfbdfa839b00e323dfc523e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sun, 20 Jul 2014 19:47:42 -0400 +Subject: [PATCH] Add quotes to warning message + +The message for SYSTEMD_LOG_LEVEL= looked a bit strange. +--- + src/shared/log.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git src/shared/log.c src/shared/log.c +index 9039db3..3941e3e 100644 +--- src/shared/log.c ++++ src/shared/log.c +@@ -884,19 +884,19 @@ void log_parse_environment(void) { + + e = secure_getenv("SYSTEMD_LOG_TARGET"); + if (e && log_set_target_from_string(e) < 0) +- log_warning("Failed to parse log target %s. Ignoring.", e); ++ log_warning("Failed to parse log target '%s'. Ignoring.", e); + + e = secure_getenv("SYSTEMD_LOG_LEVEL"); + if (e && log_set_max_level_from_string(e) < 0) +- log_warning("Failed to parse log level %s. Ignoring.", e); ++ log_warning("Failed to parse log level '%s'. Ignoring.", e); + + e = secure_getenv("SYSTEMD_LOG_COLOR"); + if (e && log_show_color_from_string(e) < 0) +- log_warning("Failed to parse bool %s. Ignoring.", e); ++ log_warning("Failed to parse bool '%s'. Ignoring.", e); + + e = secure_getenv("SYSTEMD_LOG_LOCATION"); + if (e && log_show_location_from_string(e) < 0) +- log_warning("Failed to parse bool %s. Ignoring.", e); ++ log_warning("Failed to parse bool '%s'. Ignoring.", e); + } + + LogTarget log_get_target(void) { +-- +1.7.9.2 + diff --git a/0003-Always-check-asprintf-return-code.patch b/0003-Always-check-asprintf-return-code.patch new file mode 100644 index 00000000..00d873f7 --- /dev/null +++ b/0003-Always-check-asprintf-return-code.patch @@ -0,0 +1,223 @@ +Based on 7de80bfe2e61d5818601ccfddbadad3b7703ed70 Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Fri, 25 Jul 2014 15:38:31 +0200 +Subject: [PATCH] Always check asprintf return code + +There is a small number of the places in sources where we don't check +asprintf() return code and assume that after error the function +returns NULL pointer via the first argument. That's wrong, after +error the content of pointer is undefined. +--- + src/core/unit-printf.c | 8 ++++---- + src/cryptsetup/cryptsetup.c | 11 ++++++++--- + src/journal/journalctl.c | 16 +++++++++++----- + src/run/run.c | 20 ++++++++++---------- + src/shared/install.c | 15 +++++++++------ + src/systemctl/systemctl.c | 18 +++++++++--------- + src/tty-ask-password-agent/tty-ask-password-agent.c | 5 +++-- + 7 files changed, 54 insertions(+), 39 deletions(-) + +--- src/core/unit-printf.c ++++ src/core/unit-printf.c 2014-07-28 09:42:20.726235696 +0000 +@@ -182,7 +182,7 @@ static int specifier_user_name(char spec + char *printed = NULL; + Unit *u = userdata; + ExecContext *c; +- int r; ++ int r = 0; + + assert(u); + +@@ -208,7 +208,7 @@ static int specifier_user_name(char spec + if (r < 0) + return -ENODATA; + +- asprintf(&printed, "%lu", (unsigned long) uid); ++ r = asprintf(&printed, "%lu", (unsigned long) uid); + } + } + +@@ -231,10 +231,10 @@ static int specifier_user_name(char spec + if (specifier == 'u') + printed = strdup(username); + else +- asprintf(&printed, "%lu", (unsigned long) uid); ++ r = asprintf(&printed, "%lu", (unsigned long) uid); + } + +- if (!printed) ++ if (r < 0 || !printed) + return -ENOMEM; + + *ret = printed; +--- src/cryptsetup/cryptsetup.c ++++ src/cryptsetup/cryptsetup.c 2014-07-28 00:00:00.000000000 +0000 +@@ -535,13 +535,18 @@ int main(int argc, char *argv[]) { + description = NULL; + } + ++ k = 0; + if (mount_point && description) +- asprintf(&name_buffer, "%s (%s) on %s", description, argv[2], mount_point); ++ k = asprintf(&name_buffer, "%s (%s) on %s", description, argv[2], mount_point); + else if (mount_point) +- asprintf(&name_buffer, "%s on %s", argv[2], mount_point); ++ k = asprintf(&name_buffer, "%s on %s", argv[2], mount_point); + else if (description) +- asprintf(&name_buffer, "%s (%s)", description, argv[2]); ++ k = asprintf(&name_buffer, "%s (%s)", description, argv[2]); + ++ if (k < 0) { ++ log_oom(); ++ goto finish; ++ } + name = name_buffer ? name_buffer : argv[2]; + + k = crypt_init(&cd, argv[3]); +--- src/journal/journalctl.c ++++ src/journal/journalctl.c 2014-07-28 00:00:00.000000000 +0000 +@@ -746,11 +746,17 @@ static int add_matches(sd_journal *j, ch + } + } else + t = strappend("_EXE=", path); +- } else if (S_ISCHR(st.st_mode)) +- asprintf(&t, "_KERNEL_DEVICE=c%u:%u", major(st.st_rdev), minor(st.st_rdev)); +- else if (S_ISBLK(st.st_mode)) +- asprintf(&t, "_KERNEL_DEVICE=b%u:%u", major(st.st_rdev), minor(st.st_rdev)); +- else { ++ } else if (S_ISCHR(st.st_mode)) { ++ if (asprintf(&t, "_KERNEL_DEVICE=c%u:%u", ++ major(st.st_rdev), ++ minor(st.st_rdev)) < 0) ++ return -ENOMEM; ++ } else if (S_ISBLK(st.st_mode)) { ++ if (asprintf(&t, "_KERNEL_DEVICE=b%u:%u", ++ major(st.st_rdev), ++ minor(st.st_rdev)) < 0) ++ return -ENOMEM; ++ } else { + log_error("File is neither a device node, nor regular file, nor executable: %s", *i); + return -EINVAL; + } +--- src/run/run.c ++++ src/run/run.c 2014-07-28 09:46:36.846235596 +0000 +@@ -309,12 +309,12 @@ static int start_transient_service( + _cleanup_free_ char *name = NULL; + int r; + +- if (arg_unit) ++ if (arg_unit) { + name = unit_name_mangle_with_suffix(arg_unit, MANGLE_NOGLOB, ".service"); +- else +- asprintf(&name, "run-%lu.service", (unsigned long) getpid()); +- if (!name) +- return -ENOMEM; ++ if (!name) ++ return log_oom(); ++ } else if (asprintf(&name, "run-%lu.service", (unsigned long) getpid()) < 0) ++ return log_oom(); + + r = message_start_transient_unit_new(bus, name, &m); + if (r < 0) +@@ -436,12 +436,12 @@ static int start_transient_scope( + + assert(bus); + +- if (arg_unit) ++ if (arg_unit) { + name = unit_name_mangle_with_suffix(arg_unit, MANGLE_NOGLOB, ".scope"); +- else +- asprintf(&name, "run-%lu.scope", (unsigned long) getpid()); +- if (!name) +- return -ENOMEM; ++ if (!name) ++ return log_oom(); ++ } else if (asprintf(&name, "run-%lu.scope", (unsigned long) getpid()) < 0) ++ return log_oom(); + + r = message_start_transient_unit_new(bus, name, &m); + if (r < 0) +--- src/shared/install.c ++++ src/shared/install.c 2014-07-28 00:00:00.000000000 +0000 +@@ -72,13 +72,16 @@ static int get_config_path(UnitFileScope + + case UNIT_FILE_SYSTEM: + +- if (root_dir && runtime) +- asprintf(&p, "%s/run/systemd/system", root_dir); +- else if (runtime) ++ if (root_dir && runtime) { ++ if (asprintf(&p, "%s/run/systemd/system", root_dir) < 0) ++ return -ENOMEM; ++ } else if (runtime) + p = strdup("/run/systemd/system"); +- else if (root_dir) +- asprintf(&p, "%s/%s", root_dir, SYSTEM_CONFIG_UNIT_PATH); +- else ++ else if (root_dir) { ++ if (asprintf(&p, "%s/%s", root_dir, ++ SYSTEM_CONFIG_UNIT_PATH) < 0) ++ return -ENOMEM; ++ } else + p = strdup(SYSTEM_CONFIG_UNIT_PATH); + + break; +--- src/systemctl/systemctl.c ++++ src/systemctl/systemctl.c 2014-07-28 09:51:40.894735541 +0000 +@@ -4639,11 +4639,11 @@ static int enable_sysv_units(const char + + STRV_FOREACH(k, paths.unit_path) { + if (!isempty(arg_root)) +- asprintf(&p, "%s/%s/%s", arg_root, *k, name); ++ j = asprintf(&p, "%s/%s/%s", arg_root, *k, name); + else +- asprintf(&p, "%s/%s", *k, name); ++ j = asprintf(&p, "%s/%s", *k, name); + +- if (!p) { ++ if (j < 0) { + r = log_oom(); + goto finish; + } +@@ -4660,10 +4660,10 @@ static int enable_sysv_units(const char + continue; + + if (!isempty(arg_root)) +- asprintf(&p, "%s/" SYSTEM_SYSVINIT_PATH "/%s", arg_root, name); ++ j = asprintf(&p, "%s/" SYSTEM_SYSVINIT_PATH "/%s", arg_root, name); + else +- asprintf(&p, SYSTEM_SYSVINIT_PATH "/%s", name); +- if (!p) { ++ j = asprintf(&p, SYSTEM_SYSVINIT_PATH "/%s", name); ++ if (j < 0) { + r = log_oom(); + goto finish; + } +@@ -4676,10 +4676,10 @@ static int enable_sysv_units(const char + free(p); + p = NULL; + if (!isempty(arg_root)) +- asprintf(&p, "%s/" SYSTEM_SYSVINIT_PATH "/boot.%s", arg_root, name); ++ j = asprintf(&p, "%s/" SYSTEM_SYSVINIT_PATH "/boot.%s", arg_root, name); + else +- asprintf(&p, SYSTEM_SYSVINIT_PATH "/boot.%s", name); +- if (!p) { ++ j = asprintf(&p, SYSTEM_SYSVINIT_PATH "/boot.%s", name); ++ if (j < 0) { + r = log_oom(); + goto finish; + } +--- src/tty-ask-password-agent/tty-ask-password-agent.c ++++ src/tty-ask-password-agent/tty-ask-password-agent.c 2014-07-28 00:00:00.000000000 +0000 +@@ -102,8 +102,9 @@ static int ask_password_plymouth( + if (accept_cached) { + packet = strdup("c"); + n = 1; +- } else +- asprintf(&packet, "*\002%c%s%n", (int) (strlen(message) + 1), message, &n); ++ } else if (asprintf(&packet, "*\002%c%s%n", (int) (strlen(message) + 1), ++ message, &n) < 0) ++ packet = NULL; + + if (!packet) { + r = -ENOMEM; diff --git a/0003-Do-not-print-invalid-UTF-8-in-error-messages.patch b/0003-Do-not-print-invalid-UTF-8-in-error-messages.patch new file mode 100644 index 00000000..7f485448 --- /dev/null +++ b/0003-Do-not-print-invalid-UTF-8-in-error-messages.patch @@ -0,0 +1,130 @@ +From b5d742138f71e87312541a89aac5657015f50f48 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Tue, 4 Mar 2014 09:50:26 -0500 +Subject: [PATCH] Do not print invalid UTF-8 in error messages + +Inexplicably, 550a40ec ('core: do not print invalid utf-8 in error +messages') only fixed two paths. Convert all of them now. +--- + src/core/load-fragment.c | 13 ++++--------- + src/shared/conf-parser.c | 7 +++---- + src/shared/conf-parser.h | 6 ++++++ + src/shared/fileio.c | 9 ++++++--- + 4 files changed, 19 insertions(+), 16 deletions(-) + +diff --git src/core/load-fragment.c src/core/load-fragment.c +index d77bf5c..5628d8c 100644 +--- src/core/load-fragment.c ++++ src/core/load-fragment.c +@@ -536,9 +536,7 @@ int config_parse_exec(const char *unit, + } + + if (!utf8_is_valid(path)) { +- log_syntax(unit, LOG_ERR, filename, line, EINVAL, +- "Path is not UTF-8 clean, ignoring assignment: %s", +- rvalue); ++ log_invalid_utf8(unit, LOG_ERR, filename, line, EINVAL, rvalue); + r = 0; + goto fail; + } +@@ -553,9 +551,7 @@ int config_parse_exec(const char *unit, + } + + if (!utf8_is_valid(c)) { +- log_syntax(unit, LOG_ERR, filename, line, EINVAL, +- "Path is not UTF-8 clean, ignoring assignment: %s", +- rvalue); ++ log_invalid_utf8(unit, LOG_ERR, filename, line, EINVAL, rvalue); + r = 0; + goto fail; + } +@@ -1960,8 +1956,7 @@ int config_parse_unit_requires_mounts_for( + return log_oom(); + + if (!utf8_is_valid(n)) { +- log_syntax(unit, LOG_ERR, filename, line, EINVAL, +- "Path is not UTF-8 clean, ignoring assignment: %s", rvalue); ++ log_invalid_utf8(unit, LOG_ERR, filename, line, EINVAL, rvalue); + continue; + } + +diff --git src/shared/conf-parser.c src/shared/conf-parser.c +index 0a87a71..d27b1b7 100644 +--- src/shared/conf-parser.c ++++ src/shared/conf-parser.c +@@ -618,8 +618,7 @@ int config_parse_string(const char *unit + return log_oom(); + + if (!utf8_is_valid(n)) { +- log_syntax(unit, LOG_ERR, filename, line, EINVAL, +- "String is not UTF-8 clean, ignoring assignment: %s", rvalue); ++ log_invalid_utf8(unit, LOG_ERR, filename, line, EINVAL, rvalue); + free(n); + return 0; + } +@@ -656,8 +655,7 @@ int config_parse_path(const char *unit, + assert(data); + + if (!utf8_is_valid(rvalue)) { +- log_syntax(unit, LOG_ERR, filename, line, EINVAL, +- "Path is not UTF-8 clean, ignoring assignment: %s", rvalue); ++ log_invalid_utf8(unit, LOG_ERR, filename, line, EINVAL, rvalue); + return 0; + } + +@@ -725,8 +723,7 @@ int config_parse_strv(const char *unit, + return log_oom(); + + if (!utf8_is_valid(n)) { +- log_syntax(unit, LOG_ERR, filename, line, EINVAL, +- "String is not UTF-8 clean, ignoring: %s", rvalue); ++ log_invalid_utf8(unit, LOG_ERR, filename, line, EINVAL, rvalue); + continue; + } + +diff --git src/shared/conf-parser.h src/shared/conf-parser.h +index e1c7ab4..ba0e58d 100644 +--- src/shared/conf-parser.h ++++ src/shared/conf-parser.h +@@ -121,6 +121,12 @@ int log_syntax_internal(const char *unit, int level, + config_file, config_line, \ + error, __VA_ARGS__) + ++#define log_invalid_utf8(unit, level, config_file, config_line, error, rvalue) { \ ++ _cleanup_free_ char *__p = utf8_escape_invalid(rvalue); \ ++ log_syntax(unit, level, config_file, config_line, error, \ ++ "String is not UTF-8 clean, ignoring assignment: %s", __p); \ ++ } ++ + #define DEFINE_CONFIG_PARSE_ENUM(function,name,type,msg) \ + int function(const char *unit, \ + const char *filename, \ +diff --git src/shared/fileio.c src/shared/fileio.c +index d591567..f101269 100644 +--- src/shared/fileio.c ++++ src/shared/fileio.c +@@ -598,15 +598,18 @@ static int load_env_file_push(const char *filename, unsigned line, + int r; + + if (!utf8_is_valid(key)) { ++ _cleanup_free_ char *t = utf8_escape_invalid(key); ++ + log_error("%s:%u: invalid UTF-8 for key '%s', ignoring.", +- filename, line, key); ++ filename, line, t); + return -EINVAL; + } + + if (value && !utf8_is_valid(value)) { +- /* FIXME: filter UTF-8 */ ++ _cleanup_free_ char *t = utf8_escape_invalid(value); ++ + log_error("%s:%u: invalid UTF-8 value for key %s: '%s', ignoring.", +- filename, line, key, value); ++ filename, line, key, t); + return -EINVAL; + } + +-- +1.7.9.2 + diff --git a/0003-Quote-unit-names-in-suggested-systemctl-commandlines.patch b/0003-Quote-unit-names-in-suggested-systemctl-commandlines.patch new file mode 100644 index 00000000..38b777fe --- /dev/null +++ b/0003-Quote-unit-names-in-suggested-systemctl-commandlines.patch @@ -0,0 +1,68 @@ +From 8e07fc41f86d41e68c5663b2a3c620a0adedcc11 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sun, 31 Aug 2014 00:42:27 -0400 +Subject: [PATCH] Quote unit names in suggested systemctl commandlines + +The fact that unit names have to be quoted can be a bit surprising. +Show quotes in the hint commandline, but only after checking that this +is necessary, since quotes are visually heavy and usually not needed. + +https://bugs.freedesktop.org/show_bug.cgi?id=82832 +--- + src/core/job.c | 11 +++++++++-- + src/systemctl/systemctl.c | 14 ++++++++++++-- + 2 files changed, 21 insertions(+), 4 deletions(-) + +diff --git src/core/job.c src/core/job.c +index 5e4987f..ef5dbce 100644 +--- src/core/job.c ++++ src/core/job.c +@@ -632,11 +632,18 @@ static void job_print_status_message(Unit *u, JobType t, JobResult result) { + unit_status_printf(u, ANSI_GREEN_ON " OK " ANSI_HIGHLIGHT_OFF, format); + break; + +- case JOB_FAILED: ++ case JOB_FAILED: { ++ bool quotes; ++ ++ quotes = chars_intersect(u->id, SHELL_NEED_QUOTES); ++ + manager_flip_auto_status(u->manager, true); + unit_status_printf(u, ANSI_HIGHLIGHT_RED_ON "FAILED" ANSI_HIGHLIGHT_OFF, format); +- manager_status_printf(u->manager, false, NULL, "See 'systemctl status %s' for details.", u->id); ++ manager_status_printf(u->manager, false, NULL, ++ "See \"systemctl status %s%s%s\" for details.", ++ quotes ? "'" : "", u->id, quotes ? "'" : ""); + break; ++ } + + case JOB_DEPENDENCY: + manager_flip_auto_status(u->manager, true); +diff --git src/systemctl/systemctl.c src/systemctl/systemctl.c +index 6534819..de43c87 100644 +--- src/systemctl/systemctl.c ++++ src/systemctl/systemctl.c +@@ -2351,8 +2351,18 @@ static int check_wait_response(WaitData *d) { + log_error("Job for %s canceled.", strna(d->name)); + else if (streq(d->result, "dependency")) + log_error("A dependency job for %s failed. See 'journalctl -xn' for details.", strna(d->name)); +- else if (!streq(d->result, "done") && !streq(d->result, "skipped")) +- log_error("Job for %s failed. See 'systemctl status %s' and 'journalctl -xn' for details.", strna(d->name), strna(d->name)); ++ else if (!streq(d->result, "done") && !streq(d->result, "skipped")) { ++ if (d->name) { ++ bool quotes; ++ ++ quotes = chars_intersect(d->name, SHELL_NEED_QUOTES); ++ ++ log_error("Job for %s failed. See \"systemctl status %s%s%s\" and \"journalctl -xn\" for details.", ++ d->name, ++ quotes ? "'" : "", d->name, quotes ? "'" : ""); ++ } else ++ log_error("Job failed. See \"journalctl -xn\" for details."); ++ } + } + + if (streq(d->result, "timeout")) +-- +1.7.9.2 + diff --git a/0003-analyze-fix-mem-leak.patch b/0003-analyze-fix-mem-leak.patch new file mode 100644 index 00000000..10ecbcfc --- /dev/null +++ b/0003-analyze-fix-mem-leak.patch @@ -0,0 +1,27 @@ +From 0ee9613d98cbe1f36ffc98c6bfa51dd2b798fc6d Mon Sep 17 00:00:00 2001 +From: Thomas Hindoe Paaboel Andersen +Date: Sat, 13 Sep 2014 12:29:43 +0200 +Subject: [PATCH] analyze: fix mem leak + +Found with Coverity. Fixes: CID#1237756 +--- + src/analyze/analyze.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git src/analyze/analyze.c src/analyze/analyze.c +index 1281d6b..82f5cf3 100644 +--- src/analyze/analyze.c ++++ src/analyze/analyze.c +@@ -848,7 +848,8 @@ static int list_dependencies(sd_bus *bus, const char *name) { + char ts[FORMAT_TIMESPAN_MAX]; + struct unit_times *times; + int r; +- const char *path, *id; ++ const char *id; ++ _cleanup_free_ char *path = NULL; + _cleanup_bus_message_unref_ sd_bus_message *reply = NULL; + _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL; + struct boot_times *boot; +-- +1.7.9.2 + diff --git a/0003-analyze-fix-plot-with-bad-y-size.patch b/0003-analyze-fix-plot-with-bad-y-size.patch new file mode 100644 index 00000000..07761449 --- /dev/null +++ b/0003-analyze-fix-plot-with-bad-y-size.patch @@ -0,0 +1,31 @@ +From a213b7e977221ca96bbc1b19a5a879c912ba2488 Mon Sep 17 00:00:00 2001 +From: Jeffrey Clark +Date: Wed, 23 Apr 2014 22:37:43 +0200 +Subject: [PATCH] analyze: fix plot with bad y size + +systemd-analyze plot > test.svg produces output with all y and height +element attributes equal to zero. This of course causes the resulting +svg to appear blank (zero height). Bug does not affect x86. Looks like +a compiler optimization may be the culprit. + +https://github.com/archlinuxarm/PKGBUILDs/issues/815 +--- + src/analyze/analyze.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/analyze/analyze.c src/analyze/analyze.c +index ba236d9..ebaa9d0 100644 +--- src/analyze/analyze.c ++++ src/analyze/analyze.c +@@ -43,7 +43,7 @@ + #include "pager.h" + + #define SCALE_X (0.1 / 1000.0) /* pixels per us */ +-#define SCALE_Y 20.0 ++#define SCALE_Y (20.0) + + #define compare(a, b) (((a) > (b))? 1 : (((b) > (a))? -1 : 0)) + +-- +1.7.9.2 + diff --git a/0003-arch-add-crisv32-to-uname-check.patch b/0003-arch-add-crisv32-to-uname-check.patch new file mode 100644 index 00000000..c8a9e7f3 --- /dev/null +++ b/0003-arch-add-crisv32-to-uname-check.patch @@ -0,0 +1,24 @@ +From 9b3a0ba3e9e28382a1072bf0e2c07a3661432743 Mon Sep 17 00:00:00 2001 +From: Umut Tezduyar Lindskog +Date: Thu, 3 Jul 2014 09:54:45 +0200 +Subject: [PATCH] arch: add crisv32 to uname check + +--- + src/shared/architecture.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git src/shared/architecture.c src/shared/architecture.c +index 9e0c3ef..7dd049a 100644 +--- src/shared/architecture.c ++++ src/shared/architecture.c +@@ -116,6 +116,7 @@ Architecture uname_architecture(void) { + { "tilegx", ARCHITECTURE_TILEGX }, + #elif defined(__cris__) + { "cris", ARCHITECTURE_CRIS }, ++ { "crisv32", ARCHITECTURE_CRIS }, + #else + #error "Please register your architecture here!" + #endif +-- +1.7.9.2 + diff --git a/0003-architecture-add-string-table-entries-for-mips-le-ar.patch b/0003-architecture-add-string-table-entries-for-mips-le-ar.patch new file mode 100644 index 00000000..c3944702 --- /dev/null +++ b/0003-architecture-add-string-table-entries-for-mips-le-ar.patch @@ -0,0 +1,52 @@ +Based on 037c26d0aeb750ca9c8d605884ea1db7baecfea8 Mon Sep 17 00:00:00 2001 +Based on 9a00f57a5ba7ed431e6bac8d8b36518708503b4e Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 7 Jul 2014 14:59:06 +0200 +Subject: [PATCH] architecture: add string table entries for mips-le archs + which were missing + +--- + src/shared/architecture.c | 2 ++ + src/shared/architecture.h | 4 ++++ + 2 files changed, 6 insertions(+) + +diff --git src/shared/architecture.c src/shared/architecture.c +index 6cdca4e..dc45f35 100644 +--- src/shared/architecture.c ++++ src/shared/architecture.c +@@ -153,7 +153,9 @@ static const char *const architecture_table[_ARCHITECTURE_MAX] = { + [ARCHITECTURE_SPARC] = "sparc", + [ARCHITECTURE_SPARC64] = "sparc64", + [ARCHITECTURE_MIPS] = "mips", ++ [ARCHITECTURE_MIPS_LE] = "mips-le", + [ARCHITECTURE_MIPS64] = "mips64", ++ [ARCHITECTURE_MIPS64_LE] = "mips64-le", + [ARCHITECTURE_ALPHA] = "alpha", + [ARCHITECTURE_ARM] = "arm", + [ARCHITECTURE_ARM_BE] = "arm-be", +diff --git src/shared/architecture.h src/shared/architecture.h +index 20e848b..0807924 100644 +--- src/shared/architecture.h ++++ src/shared/architecture.h +@@ -23,6 +23,8 @@ + + #include "util.h" + ++/* A cleaned up architecture definition */ ++ + typedef enum Architecture { + ARCHITECTURE_X86 = 0, + ARCHITECTURE_X86_64, +@@ -38,7 +40,9 @@ typedef enum Architecture { + ARCHITECTURE_SPARC, + ARCHITECTURE_SPARC64, + ARCHITECTURE_MIPS, ++ ARCHITECTURE_MIPS_LE, + ARCHITECTURE_MIPS64, ++ ARCHITECTURE_MIPS64_LE, + ARCHITECTURE_ALPHA, + ARCHITECTURE_ARM, + ARCHITECTURE_ARM_BE, +-- +1.7.9.2 + diff --git a/0003-backlight-unify-error-messages.patch b/0003-backlight-unify-error-messages.patch new file mode 100644 index 00000000..452de616 --- /dev/null +++ b/0003-backlight-unify-error-messages.patch @@ -0,0 +1,115 @@ +Based on 938d2699d2e818bd996614e89ea3d668200ad2a8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Mon, 7 Apr 2014 20:57:22 -0400 +Subject: [PATCH] backlight: unify error messages + +--- + src/backlight/backlight.c | 29 +++++++++++++++++++---------- + 1 file changed, 19 insertions(+), 10 deletions(-) + +--- src/backlight/backlight.c ++++ src/backlight/backlight.c 2014-05-12 13:31:50.502235843 +0000 +@@ -24,6 +24,7 @@ + #include "fileio.h" + #include "libudev.h" + #include "udev-util.h" ++#include "def.h" + + static struct udev_device *find_pci_or_platform_parent(struct udev_device *device) { + struct udev_device *parent; +@@ -50,7 +51,7 @@ static struct udev_device *find_pci_or_p + if (!c) + return NULL; + +- c += strspn(c, "0123456789"); ++ c += strspn(c, DIGITS); + if (*c == '-') { + /* A connector DRM device, let's ignore all but LVDS and eDP! */ + +@@ -67,7 +68,8 @@ static struct udev_device *find_pci_or_p + unsigned long class = 0; + + if (safe_atolu(value, &class) < 0) { +- log_warning("Cannot parse PCI class %s of device %s:%s.", value, subsystem, sysname); ++ log_warning("Cannot parse PCI class %s of device %s:%s.", ++ value, subsystem, sysname); + return NULL; + } + +@@ -175,7 +177,9 @@ static bool validate_device(struct udev + if (same_device(parent, other_parent)) { + /* Both have the same PCI parent, that means + * we are out. */ +- log_debug("Skipping backlight device %s, since backlight device %s is on same PCI device and, takes precedence.", udev_device_get_sysname(device), udev_device_get_sysname(other)); ++ log_debug("Skipping backlight device %s, since device %s is on same PCI device and takes precedence.", ++ udev_device_get_sysname(device), ++ udev_device_get_sysname(other)); + return false; + } + +@@ -184,7 +188,9 @@ static bool validate_device(struct udev + /* The other is connected to the platform bus + * and we are a PCI device, that also means we + * are out. */ +- log_debug("Skipping backlight device %s, since backlight device %s is a platform device and takes precedence.", udev_device_get_sysname(device), udev_device_get_sysname(other)); ++ log_debug("Skipping backlight device %s, since device %s is a platform device and takes precedence.", ++ udev_device_get_sysname(device), ++ udev_device_get_sysname(other)); + return false; + } + } +@@ -199,13 +205,14 @@ static unsigned get_max_brightness(struc + + max_brightness_str = udev_device_get_sysattr_value(device, "max_brightness"); + if (!max_brightness_str) { +- log_warning("Failed to read max_brightness attribute"); ++ log_warning("Failed to read 'max_brightness' attribute"); + return 0; + } + + r = safe_atou(max_brightness_str, &max_brightness); + if (r < 0) { +- log_warning("Failed to parse max_brightness \"%s\": %s", max_brightness_str, strerror(-r)); ++ log_warning("Failed to parse 'max_brightness' \"%s\": %s", ++ max_brightness_str, strerror(-r)); + return 0; + } + +@@ -262,7 +269,8 @@ int main(int argc, char *argv[]) { + + r = mkdir_p("/var/lib/systemd/backlight", 0755); + if (r < 0) { +- log_error("Failed to create backlight directory: %s", strerror(-r)); ++ log_error("Failed to create backlight directory /var/lib/systemd/backlight: %s", ++ strerror(-r)); + return EXIT_FAILURE; + } + +@@ -274,7 +282,7 @@ int main(int argc, char *argv[]) { + + sysname = strchr(argv[2], ':'); + if (!sysname) { +- log_error("Requires pair of subsystem and sysname for specifying backlight device."); ++ log_error("Requires a subsystem and sysname pair specifying a backlight device."); + return EXIT_FAILURE; + } + +@@ -368,7 +376,8 @@ int main(int argc, char *argv[]) { + + r = udev_device_set_sysattr_value(device, "brightness", value); + if (r < 0) { +- log_error("Failed to write system attribute: %s", strerror(-r)); ++ log_error("Failed to write system 'brightness' attribute: %s", ++ strerror(-r)); + return EXIT_FAILURE; + } + +@@ -382,7 +391,7 @@ int main(int argc, char *argv[]) { + + value = udev_device_get_sysattr_value(device, "brightness"); + if (!value) { +- log_error("Failed to read system attribute: %s", strerror(-r)); ++ log_error("Failed to read system 'brightness' attribute: %s", strerror(-r)); + return EXIT_FAILURE; + } + diff --git a/0003-bootchart-it-s-not-OK-to-return-1-from-a-main-progra.patch b/0003-bootchart-it-s-not-OK-to-return-1-from-a-main-progra.patch new file mode 100644 index 00000000..9796af4f --- /dev/null +++ b/0003-bootchart-it-s-not-OK-to-return-1-from-a-main-progra.patch @@ -0,0 +1,27 @@ +From 4155f7d4be5053d5f34a26e5437fd85e1fe00fa3 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 11 Aug 2014 18:23:47 +0200 +Subject: [PATCH] bootchart: it's not OK to return -1 from a main program + +--- + src/bootchart/bootchart.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git src/bootchart/bootchart.c src/bootchart/bootchart.c +index c0e176d..8ef5ad1 100644 +--- src/bootchart/bootchart.c ++++ src/bootchart/bootchart.c +@@ -380,8 +380,8 @@ int main(int argc, char *argv[]) { + + sampledata = new0(struct list_sample_data, 1); + if (sampledata == NULL) { +- log_error("Failed to allocate memory for a node: %m"); +- return -1; ++ log_oom(); ++ return EXIT_FAILURE; + } + + sampledata->sampletime = gettime_ns(); +-- +1.7.9.2 + diff --git a/0003-bootchart-parse-userinput-with-safe_atoi.patch b/0003-bootchart-parse-userinput-with-safe_atoi.patch new file mode 100644 index 00000000..16378405 --- /dev/null +++ b/0003-bootchart-parse-userinput-with-safe_atoi.patch @@ -0,0 +1,34 @@ +From 9bcf7507fab6e6b022ae3cc7178237e6e0a09e9a Mon Sep 17 00:00:00 2001 +From: Thomas Hindoe Paaboel Andersen +Date: Fri, 26 Sep 2014 21:41:02 +0200 +Subject: [PATCH] bootchart: parse userinput with safe_atoi + +Found by coverity. Fixes: CID#996409 +--- + src/bootchart/store.c | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git src/bootchart/store.c src/bootchart/store.c +index ed683e8..3099ff1 100644 +--- src/bootchart/store.c ++++ src/bootchart/store.c +@@ -192,12 +192,14 @@ vmstat_next: + + m = buf; + while (m) { ++ int r; ++ + if (sscanf(m, "%s %*s %*s %*s %*s %*s %*s %s %s", key, rt, wt) < 3) + goto schedstat_next; + + if (strstr(key, "cpu")) { +- c = atoi((const char*)(key+3)); +- if (c > MAXCPUS) ++ r = safe_atoi((const char*)(key+3), &c); ++ if (r < 0 || c > MAXCPUS) + /* Oops, we only have room for MAXCPUS data */ + break; + sampledata->runtime[c] = atoll(rt); +-- +1.7.9.2 + diff --git a/0003-busname-don-t-drop-service-from-the-result-string.patch b/0003-busname-don-t-drop-service-from-the-result-string.patch new file mode 100644 index 00000000..37b7bd5c --- /dev/null +++ b/0003-busname-don-t-drop-service-from-the-result-string.patch @@ -0,0 +1,25 @@ +From 700ff4d97311902a440109a2c081731ab6ae8a20 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 7 Mar 2014 17:29:16 +0100 +Subject: [PATCH] busname: don't drop 'service' from the result string + +--- + src/core/busname.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/core/busname.c src/core/busname.c +index 237011a..bca2145 100644 +--- src/core/busname.c ++++ src/core/busname.c +@@ -548,7 +548,7 @@ DEFINE_STRING_TABLE_LOOKUP(busname_state, BusNameState); + static const char* const busname_result_table[_BUSNAME_RESULT_MAX] = { + [BUSNAME_SUCCESS] = "success", + [BUSNAME_FAILURE_RESOURCES] = "resources", +- [BUSNAME_FAILURE_SERVICE_FAILED_PERMANENT] = "failed-permanent", ++ [BUSNAME_FAILURE_SERVICE_FAILED_PERMANENT] = "service-failed-permanent", + }; + + DEFINE_STRING_TABLE_LOOKUP(busname_result, BusNameResult); +-- +1.7.9.2 + diff --git a/0003-core-You-can-not-put-the-cached-result-of-use_smack-.patch b/0003-core-You-can-not-put-the-cached-result-of-use_smack-.patch new file mode 100644 index 00000000..8305035f --- /dev/null +++ b/0003-core-You-can-not-put-the-cached-result-of-use_smack-.patch @@ -0,0 +1,32 @@ +From d1d8e5d49f3149d03ceb94d1d2f6c14e7abccb6f Mon Sep 17 00:00:00 2001 +From: Ronan Le Martret +Date: Tue, 22 Apr 2014 10:33:25 +0200 +Subject: [PATCH] core: You can not put the cached result of use_smack fct, as + we are not sure the "/sys" is mounted. So we should mount + "sys" before "/proc" + +https://bugs.freedesktop.org/show_bug.cgi?id=77646 +--- + src/core/mount-setup.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git src/core/mount-setup.c src/core/mount-setup.c +index ae8447c..991bfdf 100644 +--- src/core/mount-setup.c ++++ src/core/mount-setup.c +@@ -67,10 +67,10 @@ typedef struct MountPoint { + #define N_EARLY_MOUNT 5 + + static const MountPoint mount_table[] = { +- { "proc", "/proc", "proc", NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV, +- NULL, MNT_FATAL|MNT_IN_CONTAINER }, + { "sysfs", "/sys", "sysfs", NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV, + NULL, MNT_FATAL|MNT_IN_CONTAINER }, ++ { "proc", "/proc", "proc", NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV, ++ NULL, MNT_FATAL|MNT_IN_CONTAINER }, + { "devtmpfs", "/dev", "devtmpfs", "mode=755", MS_NOSUID|MS_STRICTATIME, + NULL, MNT_FATAL|MNT_IN_CONTAINER }, + { "securityfs", "/sys/kernel/security", "securityfs", NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV, +-- +1.7.9.2 + diff --git a/0003-core-allow-transient-mount-units.patch b/0003-core-allow-transient-mount-units.patch new file mode 100644 index 00000000..607bdaea --- /dev/null +++ b/0003-core-allow-transient-mount-units.patch @@ -0,0 +1,115 @@ +From 0e252f6b375af59eac9bd6d2fe8dd6ee2f51998d Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Fri, 6 Jun 2014 15:10:20 +0200 +Subject: [PATCH] core: allow transient mount units + +For now only What=, Options=, Type= are supported, and Where= is deduced +from the unit name. +--- + src/core/dbus-mount.c | 64 ++++++++++++++++++++++++++++++++++++++++++++++++- + src/core/mount.c | 2 ++ + 2 files changed, 65 insertions(+), 1 deletion(-) + +diff --git src/core/dbus-mount.c src/core/dbus-mount.c +index e64d3ea..e27019d 100644 +--- src/core/dbus-mount.c ++++ src/core/dbus-mount.c +@@ -124,6 +124,47 @@ const sd_bus_vtable bus_mount_vtable[] = { + SD_BUS_VTABLE_END + }; + ++static int bus_mount_set_transient_property( ++ Mount *m, ++ const char *name, ++ sd_bus_message *message, ++ UnitSetPropertiesMode mode, ++ sd_bus_error *error) { ++ ++ const char *new_property; ++ char **property; ++ char *p; ++ int r; ++ ++ assert(m); ++ assert(name); ++ assert(message); ++ ++ if (streq(name, "What")) ++ property = &m->parameters_fragment.what; ++ else if (streq(name, "Options")) ++ property = &m->parameters_fragment.options; ++ else if (streq(name, "Type")) ++ property = &m->parameters_fragment.fstype; ++ else ++ return 0; ++ ++ r = sd_bus_message_read(message, "s", &new_property); ++ if (r < 0) ++ return r; ++ ++ if (mode != UNIT_CHECK) { ++ p = strdup(new_property); ++ if (!p) ++ return -ENOMEM; ++ ++ free(*property); ++ *property = p; ++ } ++ ++ return 1; ++} ++ + int bus_mount_set_property( + Unit *u, + const char *name, +@@ -132,12 +173,33 @@ int bus_mount_set_property( + sd_bus_error *error) { + + Mount *m = MOUNT(u); ++ int r; + + assert(m); + assert(name); + assert(message); + +- return bus_cgroup_set_property(u, &m->cgroup_context, name, message, mode, error); ++ r = bus_cgroup_set_property(u, &m->cgroup_context, name, message, mode, error); ++ if (r != 0) ++ return r; ++ ++ if (u->transient && u->load_state == UNIT_STUB) { ++ /* This is a transient unit, let's load a little more */ ++ ++ r = bus_mount_set_transient_property(m, name, message, mode, error); ++ if (r != 0) ++ return r; ++ ++ r = bus_exec_context_set_transient_property(u, &m->exec_context, name, message, mode, error); ++ if (r != 0) ++ return r; ++ ++ r = bus_kill_context_set_transient_property(u, &m->kill_context, name, message, mode, error); ++ if (r != 0) ++ return r; ++ } ++ ++ return 0; + } + + int bus_mount_commit_properties(Unit *u) { +diff --git src/core/mount.c src/core/mount.c +index a979837..14ac0a0 100644 +--- src/core/mount.c ++++ src/core/mount.c +@@ -1819,6 +1819,8 @@ const UnitVTable mount_vtable = { + + .get_timeout = mount_get_timeout, + ++ .can_transient = true, ++ + .enumerate = mount_enumerate, + .shutdown = mount_shutdown, + +-- +1.7.9.2 + diff --git a/0003-core-make-sure-to-serialize-jobs-for-all-units.patch b/0003-core-make-sure-to-serialize-jobs-for-all-units.patch new file mode 100644 index 00000000..30c4615f --- /dev/null +++ b/0003-core-make-sure-to-serialize-jobs-for-all-units.patch @@ -0,0 +1,118 @@ +From 9bdb98c59451ed090f8d35d470a54710f389ce71 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 16 May 2014 01:15:03 +0200 +Subject: [PATCH] core: make sure to serialize jobs for all units + +Previously we wouldn't serialize jobs for units that themselves have +nothing to serialize. + +http://lists.freedesktop.org/archives/systemd-devel/2014-May/019051.html +--- + src/core/manager.c | 3 --- + src/core/unit.c | 43 +++++++++++++++++++++---------------------- + 2 files changed, 21 insertions(+), 25 deletions(-) + +diff --git src/core/manager.c src/core/manager.c +index 1e3e127..d0af674 100644 +--- src/core/manager.c ++++ src/core/manager.c +@@ -2131,9 +2131,6 @@ int manager_serialize(Manager *m, FILE *f, FDSet *fds, bool switching_root) { + if (u->id != t) + continue; + +- if (!unit_can_serialize(u)) +- continue; +- + /* Start marker */ + fputs(u->id, f); + fputc('\n', f); +diff --git src/core/unit.c src/core/unit.c +index c4ed923..41651ba 100644 +--- src/core/unit.c ++++ src/core/unit.c +@@ -2288,25 +2288,25 @@ bool unit_can_serialize(Unit *u) { + } + + int unit_serialize(Unit *u, FILE *f, FDSet *fds, bool serialize_jobs) { +- ExecRuntime *rt; + int r; + + assert(u); + assert(f); + assert(fds); + +- if (!unit_can_serialize(u)) +- return 0; +- +- r = UNIT_VTABLE(u)->serialize(u, f, fds); +- if (r < 0) +- return r; ++ if (unit_can_serialize(u)) { ++ ExecRuntime *rt; + +- rt = unit_get_exec_runtime(u); +- if (rt) { +- r = exec_runtime_serialize(rt, u, f, fds); ++ r = UNIT_VTABLE(u)->serialize(u, f, fds); + if (r < 0) + return r; ++ ++ rt = unit_get_exec_runtime(u); ++ if (rt) { ++ r = exec_runtime_serialize(rt, u, f, fds); ++ if (r < 0) ++ return r; ++ } + } + + dual_timestamp_serialize(f, "inactive-exit-timestamp", &u->inactive_exit_timestamp); +@@ -2368,17 +2368,14 @@ void unit_serialize_item(Unit *u, FILE *f, const char *key, const char *value) { + } + + int unit_deserialize(Unit *u, FILE *f, FDSet *fds) { +- size_t offset; + ExecRuntime **rt = NULL; ++ size_t offset; + int r; + + assert(u); + assert(f); + assert(fds); + +- if (!unit_can_serialize(u)) +- return 0; +- + offset = UNIT_VTABLE(u)->exec_runtime_offset; + if (offset > 0) + rt = (ExecRuntime**) ((uint8_t*) u + offset); +@@ -2503,17 +2500,19 @@ int unit_deserialize(Unit *u, FILE *f, FDSet *fds) { + continue; + } + +- if (rt) { +- r = exec_runtime_deserialize_item(rt, u, l, v, fds); ++ if (unit_can_serialize(u)) { ++ if (rt) { ++ r = exec_runtime_deserialize_item(rt, u, l, v, fds); ++ if (r < 0) ++ return r; ++ if (r > 0) ++ continue; ++ } ++ ++ r = UNIT_VTABLE(u)->deserialize_item(u, l, v, fds); + if (r < 0) + return r; +- if (r > 0) +- continue; + } +- +- r = UNIT_VTABLE(u)->deserialize_item(u, l, v, fds); +- if (r < 0) +- return r; + } + } + +-- +1.7.9.2 + diff --git a/0003-core-never-consider-failure-when-reading-drop-ins-fa.patch b/0003-core-never-consider-failure-when-reading-drop-ins-fa.patch new file mode 100644 index 00000000..74a3f0e8 --- /dev/null +++ b/0003-core-never-consider-failure-when-reading-drop-ins-fa.patch @@ -0,0 +1,113 @@ +From bcd816bd349241bcd9c0bfbfd9cfe7b034ba351b Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 22 May 2014 16:49:12 +0900 +Subject: [PATCH] core: never consider failure when reading drop-ins fatal + +drop-ins don't carry the main configuration of a unit, hence read them +if we can't, complain if we cannot, but don't fail. +--- + src/core/load-dropin.c | 42 +++++++++++++----------------------------- + 1 file changed, 13 insertions(+), 29 deletions(-) + +Index: src/core/load-dropin.c +=================================================================== +--- src/core/load-dropin.c.orig ++++ src/core/load-dropin.c +@@ -58,6 +58,7 @@ static int iterate_dir( + if (errno == ENOENT) + return 0; + ++ log_error("Failed to open directory %s: %m", path); + return -errno; + } + +@@ -101,7 +102,6 @@ static int process_dir( + char ***strv) { + + _cleanup_free_ char *path = NULL; +- int r; + + assert(u); + assert(unit_path); +@@ -112,11 +112,8 @@ static int process_dir( + if (!path) + return log_oom(); + +- if (!u->manager->unit_path_cache || set_get(u->manager->unit_path_cache, path)) { +- r = iterate_dir(u, path, dependency, strv); +- if (r < 0) +- return r; +- } ++ if (!u->manager->unit_path_cache || set_get(u->manager->unit_path_cache, path)) ++ iterate_dir(u, path, dependency, strv); + + if (u->instance) { + _cleanup_free_ char *template = NULL, *p = NULL; +@@ -130,11 +127,8 @@ static int process_dir( + if (!p) + return log_oom(); + +- if (!u->manager->unit_path_cache || set_get(u->manager->unit_path_cache, p)) { +- r = iterate_dir(u, p, dependency, strv); +- if (r < 0) +- return r; +- } ++ if (!u->manager->unit_path_cache || set_get(u->manager->unit_path_cache, p)) ++ iterate_dir(u, p, dependency, strv); + } + + return 0; +@@ -152,12 +146,8 @@ char **unit_find_dropin_paths(Unit *u) { + SET_FOREACH(t, u->names, i) { + char **p; + +- STRV_FOREACH(p, u->manager->lookup_paths.unit_path) { +- /* This loads the drop-in config snippets */ +- r = process_dir(u, *p, t, ".d", _UNIT_DEPENDENCY_INVALID, &strv); +- if (r < 0) +- return NULL; +- } ++ STRV_FOREACH(p, u->manager->lookup_paths.unit_path) ++ process_dir(u, *p, t, ".d", _UNIT_DEPENDENCY_INVALID, &strv); + } + + if (strv_isempty(strv)) +@@ -176,7 +166,6 @@ char **unit_find_dropin_paths(Unit *u) { + int unit_load_dropin(Unit *u) { + Iterator i; + char *t, **f; +- int r; + + assert(u); + +@@ -186,13 +175,8 @@ int unit_load_dropin(Unit *u) { + char **p; + + STRV_FOREACH(p, u->manager->lookup_paths.unit_path) { +- r = process_dir(u, *p, t, ".wants", UNIT_WANTS, NULL); +- if (r < 0) +- return r; +- +- r = process_dir(u, *p, t, ".requires", UNIT_REQUIRES, NULL); +- if (r < 0) +- return r; ++ process_dir(u, *p, t, ".wants", UNIT_WANTS, NULL); ++ process_dir(u, *p, t, ".requires", UNIT_REQUIRES, NULL); + } + } + +@@ -201,11 +185,9 @@ int unit_load_dropin(Unit *u) { + return 0; + + STRV_FOREACH(f, u->dropin_paths) { +- r = config_parse(u->id, *f, NULL, +- UNIT_VTABLE(u)->sections, config_item_perf_lookup, +- (void*) load_fragment_gperf_lookup, false, false, u); +- if (r < 0) +- return r; ++ config_parse(u->id, *f, NULL, ++ UNIT_VTABLE(u)->sections, config_item_perf_lookup, ++ (void*) load_fragment_gperf_lookup, false, false, u); + } + + u->dropin_mtime = now(CLOCK_REALTIME); diff --git a/0003-core-nicer-message-when-inotify-watches-are-exhauste.patch b/0003-core-nicer-message-when-inotify-watches-are-exhauste.patch new file mode 100644 index 00000000..5a60b86b --- /dev/null +++ b/0003-core-nicer-message-when-inotify-watches-are-exhauste.patch @@ -0,0 +1,30 @@ +From 18abe7bd3e13525b257da69ac49ff7841c289567 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Wed, 16 Jul 2014 22:52:53 -0400 +Subject: [PATCH] core: nicer message when inotify watches are exhausted + +inotify_add_watch returns ENOSPC, which translates to +"No space left on device", which is misleading. + +https://bugs.freedesktop.org/show_bug.cgi?id=73628 +--- + src/core/path.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git src/core/path.c src/core/path.c +index 20e454d..f54c77f 100644 +--- src/core/path.c ++++ src/core/path.c +@@ -99,7 +99,8 @@ int path_spec_watch(PathSpec *s, sd_event_io_handler_t handler) { + break; + } + +- log_warning("Failed to add watch on %s: %m", s->path); ++ log_warning("Failed to add watch on %s: %s", s->path, ++ errno == ENOSPC ? "too many watches" : strerror(-r)); + r = -errno; + if (cut) + *cut = tmp; +-- +1.7.9.2 + diff --git a/0003-cryptsetup-default-to-no-hash-when-keyfile-is-specif.patch b/0003-cryptsetup-default-to-no-hash-when-keyfile-is-specif.patch new file mode 100644 index 00000000..5424ff1c --- /dev/null +++ b/0003-cryptsetup-default-to-no-hash-when-keyfile-is-specif.patch @@ -0,0 +1,28 @@ +Based on 8a52210c9392887a31fdb2845f65b4c5869e8e66 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Mon, 24 Nov 2014 09:11:12 -0500 +Subject: [PATCH] cryptsetup: default to no hash when keyfile is specified + +For plain dm-crypt devices, the behavior of cryptsetup package is to +ignore the hash algorithm when a key file is provided. It seems wrong +to ignore a hash when it is explicitly specified, but we should default +to no hash if the keyfile is specified. + +https://bugs.freedesktop.org/show_bug.cgi?id=52630 +--- + src/cryptsetup/cryptsetup.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +--- src/cryptsetup/cryptsetup.c ++++ src/cryptsetup/cryptsetup.c 2014-12-15 12:00:17.554019752 +0000 +@@ -386,7 +386,9 @@ static int attach_luks_or_plain(struct c + /* plain isn't a real hash type. it just means "use no hash" */ + if (!streq(opt_hash, "plain")) + params.hash = opt_hash; +- } else ++ } else if (!key_file) ++ /* for CRYPT_PLAIN, the behaviour of cryptsetup ++ * package is to not hash when a key file is provided */ + params.hash = "ripemd160"; + + if (opt_cipher) { diff --git a/0003-delta-do-not-use-unicode-chars-in-C-locale.patch b/0003-delta-do-not-use-unicode-chars-in-C-locale.patch new file mode 100644 index 00000000..f7360178 --- /dev/null +++ b/0003-delta-do-not-use-unicode-chars-in-C-locale.patch @@ -0,0 +1,134 @@ +From 00a5cc3a63c125633e822f39efd9c32223169f62 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Wed, 16 Apr 2014 23:33:41 -0400 +Subject: [PATCH] delta: do not use unicode chars in C locale + +https://bugzilla.redhat.com/show_bug.cgi?id=1088418 +--- + src/delta/delta.c | 40 +++++++++++++++++++++++++--------------- + 1 file changed, 25 insertions(+), 15 deletions(-) + +diff --git src/delta/delta.c src/delta/delta.c +index 369f8f8..8fc37c5 100644 +--- src/delta/delta.c ++++ src/delta/delta.c +@@ -85,6 +85,10 @@ static void pager_open_if_enabled(void) { + pager_open(false); + } + ++static inline const char* arrow(void) { ++ return is_locale_utf8() ? "→" : "->"; ++} ++ + static int equivalent(const char *a, const char *b) { + _cleanup_free_ char *x = NULL, *y = NULL; + +@@ -103,8 +107,9 @@ static int notify_override_masked(const char *top, const char *bottom) { + if (!(arg_flags & SHOW_MASKED)) + return 0; + +- printf("%s%s%s %s → %s\n", +- ansi_highlight_red(), "[MASKED]", ansi_highlight_off(), top, bottom); ++ printf("%s%s%s %s %s %s\n", ++ ansi_highlight_red(), "[MASKED]", ansi_highlight_off(), ++ top, arrow(), bottom); + return 1; + } + +@@ -112,8 +117,9 @@ static int notify_override_equivalent(const char *top, const char *bottom) { + if (!(arg_flags & SHOW_EQUIVALENT)) + return 0; + +- printf("%s%s%s %s → %s\n", +- ansi_highlight_green(), "[EQUIVALENT]", ansi_highlight_off(), top, bottom); ++ printf("%s%s%s %s %s %s\n", ++ ansi_highlight_green(), "[EQUIVALENT]", ansi_highlight_off(), ++ top, arrow(), bottom); + return 1; + } + +@@ -121,8 +127,9 @@ static int notify_override_redirected(const char *top, const char *bottom) { + if (!(arg_flags & SHOW_REDIRECTED)) + return 0; + +- printf("%s%s%s %s → %s\n", +- ansi_highlight(), "[REDIRECTED]", ansi_highlight_off(), top, bottom); ++ printf("%s%s%s %s %s %s\n", ++ ansi_highlight(), "[REDIRECTED]", ansi_highlight_off(), ++ top, arrow(), bottom); + return 1; + } + +@@ -130,8 +137,9 @@ static int notify_override_overridden(const char *top, const char *bottom) { + if (!(arg_flags & SHOW_OVERRIDDEN)) + return 0; + +- printf("%s%s%s %s → %s\n", +- ansi_highlight(), "[OVERRIDDEN]", ansi_highlight_off(), top, bottom); ++ printf("%s%s%s %s %s %s\n", ++ ansi_highlight(), "[OVERRIDDEN]", ansi_highlight_off(), ++ top, arrow(), bottom); + return 1; + } + +@@ -139,8 +147,9 @@ static int notify_override_extended(const char *top, const char *bottom) { + if (!(arg_flags & SHOW_EXTENDED)) + return 0; + +- printf("%s%s%s %s → %s\n", +- ansi_highlight(), "[EXTENDED]", ansi_highlight_off(), top, bottom); ++ printf("%s%s%s %s %s %s\n", ++ ansi_highlight(), "[EXTENDED]", ansi_highlight_off(), ++ top, arrow(), bottom); + return 1; + } + +@@ -241,7 +250,7 @@ static int enumerate_dir_d(Hashmap *top, Hashmap *bottom, Hashmap *drops, const + return -ENOMEM; + d = p + strlen(toppath) + 1; + +- log_debug("Adding at top: %s → %s", d, p); ++ log_debug("Adding at top: %s %s %s", d, arrow(), p); + k = hashmap_put(top, d, p); + if (k >= 0) { + p = strdup(p); +@@ -253,7 +262,7 @@ static int enumerate_dir_d(Hashmap *top, Hashmap *bottom, Hashmap *drops, const + return k; + } + +- log_debug("Adding at bottom: %s → %s", d, p); ++ log_debug("Adding at bottom: %s %s %s", d, arrow(), p); + free(hashmap_remove(bottom, d)); + k = hashmap_put(bottom, d, p); + if (k < 0) { +@@ -276,7 +285,8 @@ static int enumerate_dir_d(Hashmap *top, Hashmap *bottom, Hashmap *drops, const + if (!p) + return -ENOMEM; + +- log_debug("Adding to drops: %s → %s → %s", unit, basename(p), p); ++ log_debug("Adding to drops: %s %s %s %s %s", ++ unit, arrow(), basename(p), arrow(), p); + k = hashmap_put(h, basename(p), p); + if (k < 0) { + free(p); +@@ -328,7 +338,7 @@ static int enumerate_dir(Hashmap *top, Hashmap *bottom, Hashmap *drops, const ch + if (!p) + return -ENOMEM; + +- log_debug("Adding at top: %s → %s", basename(p), p); ++ log_debug("Adding at top: %s %s %s", basename(p), arrow(), p); + k = hashmap_put(top, basename(p), p); + if (k >= 0) { + p = strdup(p); +@@ -339,7 +349,7 @@ static int enumerate_dir(Hashmap *top, Hashmap *bottom, Hashmap *drops, const ch + return k; + } + +- log_debug("Adding at bottom: %s → %s", basename(p), p); ++ log_debug("Adding at bottom: %s %s %s", basename(p), arrow(), p); + free(hashmap_remove(bottom, basename(p))); + k = hashmap_put(bottom, basename(p), p); + if (k < 0) { +-- +1.7.9.2 + diff --git a/0003-fileio-label-return-error-when-writing-fails.patch b/0003-fileio-label-return-error-when-writing-fails.patch new file mode 100644 index 00000000..91ea97d9 --- /dev/null +++ b/0003-fileio-label-return-error-when-writing-fails.patch @@ -0,0 +1,30 @@ +Based on 754fc0c720eb998b8e47e695c12807ced0ff3602 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Fri, 3 Oct 2014 08:58:40 -0400 +Subject: [PATCH] fileio-label: return error when writing fails + +The status of actually writing the file was totally ignored. +--- + src/shared/fileio-label.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- src/shared/fileio-label.c ++++ src/shared/fileio-label.c 2014-10-14 14:52:50.883837740 +0000 +@@ -33,7 +33,7 @@ int write_string_file_atomic_label(const + if (r < 0) + return r; + +- write_string_file_atomic(fn, line); ++ r = write_string_file_atomic(fn, line); + + label_context_clear(); + +@@ -47,7 +47,7 @@ int write_env_file_label(const char *fna + if (r < 0) + return r; + +- write_env_file(fname, l); ++ r = write_env_file(fname, l); + + label_context_clear(); + diff --git a/0003-fsck-consider-a-fsck-implementation-linked-to-bin-tr.patch b/0003-fsck-consider-a-fsck-implementation-linked-to-bin-tr.patch new file mode 100644 index 00000000..27bfc4e6 --- /dev/null +++ b/0003-fsck-consider-a-fsck-implementation-linked-to-bin-tr.patch @@ -0,0 +1,110 @@ +Based on 571d0134bd464444567cf4eb0d2ed8df40045f36 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Tue, 24 Jun 2014 19:37:22 +0200 +Subject: [PATCH] fsck: consider a fsck implementation linked to /bin/true + non-existant + +--- + src/fsck/fsck.c | 32 ++++++++++++++++++++++---------- + src/shared/path-util.c | 26 +++++++++++++++----------- + 2 files changed, 37 insertions(+), 21 deletions(-) + +Index: src/fsck/fsck.c +=================================================================== +--- src/fsck/fsck.c.orig ++++ src/fsck/fsck.c +@@ -37,6 +37,7 @@ + #include "bus-errors.h" + #include "fileio.h" + #include "udev-util.h" ++#include "path-util.h" + + static bool arg_skip = false; + static bool arg_force = false; +@@ -280,16 +281,28 @@ int main(int argc, char *argv[]) { + + type = udev_device_get_property_value(udev_device, "ID_FS_TYPE"); + if (type) { +- const char *checker = strappenda("/sbin/fsck.", type); +- r = access(checker, X_OK); +- if (r < 0) { +- if (errno == ENOENT) { +- log_info("%s doesn't exist, not checking file system on %s", +- checker, device); +- return EXIT_SUCCESS; +- } else +- log_warning("%s cannot be used for %s: %m", +- checker, device); ++ _cleanup_free_ char *p = NULL, *d = NULL; ++ const char *checker = strappenda("fsck.", type); ++ r = find_binary(checker, &p); ++ if (r == -ENOENT) { ++ log_info("fsck.%s doesn't exist, not checking file system on %s", ++ type, device); ++ return EXIT_SUCCESS; ++ } else if (r < 0) { ++ log_warning("fsck.%s cannot be used for %s: %m", ++ type, device); ++ return r; ++ } ++ ++ /* An fsck that is linked to /bin/true is a non-existant fsck */ ++ r = readlink_malloc(p, &d); ++ if (r >= 0 && ++ (path_equal(d, "/bin/true") || ++ path_equal(d, "/usr/bin/true") || ++ path_equal(d, "/dev/null"))) { ++ log_info("fsck.%s doesn't exist, not checking file system on %s", ++ type, device); ++ return EXIT_SUCCESS; + } + } + +Index: src/shared/path-util.c +=================================================================== +--- src/shared/path-util.c.orig ++++ src/shared/path-util.c +@@ -425,19 +425,21 @@ int path_is_os_tree(const char *path) { + + int find_binary(const char *name, char **filename) { + assert(name); +- assert(filename); + +- if (strchr(name, '/')) { +- char *p; ++ if (is_path(name)) { ++ if (access(name, X_OK) < 0) ++ return -errno; ++ ++ if (filename) { ++ char *p; + +- if (path_is_absolute(name)) +- p = strdup(name); +- else + p = path_make_absolute_cwd(name); +- if (!p) +- return -ENOMEM; ++ if (!p) ++ return -ENOMEM; ++ ++ *filename = p; ++ } + +- *filename = p; + return 0; + } else { + const char *path; +@@ -463,8 +465,10 @@ int find_binary(const char *name, char * + continue; + } + +- path_kill_slashes(p); +- *filename = p; ++ if (filename) { ++ path_kill_slashes(p); ++ *filename = p; ++ } + + return 0; + } diff --git a/0003-hwdb-PCI-include-primary-model-string-in-subsystem-m.patch b/0003-hwdb-PCI-include-primary-model-string-in-subsystem-m.patch new file mode 100644 index 00000000..6515929b --- /dev/null +++ b/0003-hwdb-PCI-include-primary-model-string-in-subsystem-m.patch @@ -0,0 +1,51583 @@ +Based on d060b62fcb4746d3758c567e9379c6728a035b66 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Mon, 14 Apr 2014 07:54:35 -0700 +Subject: [PATCH] hwdb: PCI - include "primary" model string in subsystem + model string + +The data in the PCI ids file is randomly inconsistent. Many +subvendor model strings just describe the "product" where the +hardware is built into, not the hardware itself. This causes +some "Network Card Model Foo" to show up as "Laptop Model Bar". + +Try to make the best out of this mess and concatenate both +strings to describe the hardware. +--- + hwdb/20-pci-vendor-model.hwdb |21356 +++++++++++++++++++++--------------------- + 1 file changed, 10678 insertions(+), 10678 deletions(-) + +diff --git hwdb/20-pci-vendor-model.hwdb hwdb/20-pci-vendor-model.hwdb +index d54cb2a..14637d3 100644 +--- hwdb/20-pci-vendor-model.hwdb ++++ hwdb/20-pci-vendor-model.hwdb +@@ -15,10 +15,10 @@ pci:v0000001Cd00000001* + ID_MODEL_FROM_DATABASE=PCAN-PCI CAN-Bus controller + + pci:v0000001Cd00000001sv0000001Csd00000004* +- ID_MODEL_FROM_DATABASE=2 Channel CAN Bus SJC1000 ++ ID_MODEL_FROM_DATABASE=PCAN-PCI CAN-Bus controller (2 Channel CAN Bus SJC1000) + + pci:v0000001Cd00000001sv0000001Csd00000005* +- ID_MODEL_FROM_DATABASE=2 Channel CAN Bus SJC1000 (Optically Isolated) ++ ID_MODEL_FROM_DATABASE=PCAN-PCI CAN-Bus controller (2 Channel CAN Bus SJC1000 (Optically Isolated)) + + pci:v0000003D* + ID_VENDOR_FROM_DATABASE=Lockheed Martin-Marietta Corp +@@ -189,19 +189,19 @@ pci:v00000E11d00000046* + ID_MODEL_FROM_DATABASE=Smart Array 64xx + + pci:v00000E11d00000046sv00000E11sd00004091* +- ID_MODEL_FROM_DATABASE=Smart Array 6i ++ ID_MODEL_FROM_DATABASE=Smart Array 64xx (Smart Array 6i) + + pci:v00000E11d00000046sv00000E11sd0000409A* +- ID_MODEL_FROM_DATABASE=Smart Array 641 ++ ID_MODEL_FROM_DATABASE=Smart Array 64xx (Smart Array 641) + + pci:v00000E11d00000046sv00000E11sd0000409B* +- ID_MODEL_FROM_DATABASE=Smart Array 642 ++ ID_MODEL_FROM_DATABASE=Smart Array 64xx (Smart Array 642) + + pci:v00000E11d00000046sv00000E11sd0000409C* +- ID_MODEL_FROM_DATABASE=Smart Array 6400 ++ ID_MODEL_FROM_DATABASE=Smart Array 64xx (Smart Array 6400) + + pci:v00000E11d00000046sv00000E11sd0000409D* +- ID_MODEL_FROM_DATABASE=Smart Array 6400 EM ++ ID_MODEL_FROM_DATABASE=Smart Array 64xx (Smart Array 6400 EM) + + pci:v00000E11d00000049* + ID_MODEL_FROM_DATABASE=NC7132 Gigabit Upgrade Module +@@ -321,7 +321,7 @@ pci:v00000E11d0000A0F0* + ID_MODEL_FROM_DATABASE=Advanced System Management Controller + + pci:v00000E11d0000A0F0sv00000E11sd0000B0F3* +- ID_MODEL_FROM_DATABASE=ProLiant DL360 ++ ID_MODEL_FROM_DATABASE=Advanced System Management Controller (ProLiant DL360) + + pci:v00000E11d0000A0F3* + ID_MODEL_FROM_DATABASE=Triflex PCI to ISA Bridge +@@ -330,10 +330,10 @@ pci:v00000E11d0000A0F7* + ID_MODEL_FROM_DATABASE=PCI Hotplug Controller + + pci:v00000E11d0000A0F7sv00008086sd0000002A* +- ID_MODEL_FROM_DATABASE=PCI Hotplug Controller A ++ ID_MODEL_FROM_DATABASE=PCI Hotplug Controller (A) + + pci:v00000E11d0000A0F7sv00008086sd0000002B* +- ID_MODEL_FROM_DATABASE=PCI Hotplug Controller B ++ ID_MODEL_FROM_DATABASE=PCI Hotplug Controller (B) + + pci:v00000E11d0000A0F8* + ID_MODEL_FROM_DATABASE=ZFMicro Chipset USB +@@ -345,19 +345,19 @@ pci:v00000E11d0000AE10* + ID_MODEL_FROM_DATABASE=Smart-2/P RAID Controller + + pci:v00000E11d0000AE10sv00000E11sd00004030* +- ID_MODEL_FROM_DATABASE=Smart-2/P Array Controller ++ ID_MODEL_FROM_DATABASE=Smart-2/P RAID Controller (Smart-2/P Array Controller) + + pci:v00000E11d0000AE10sv00000E11sd00004031* +- ID_MODEL_FROM_DATABASE=Smart-2SL Array Controller ++ ID_MODEL_FROM_DATABASE=Smart-2/P RAID Controller (Smart-2SL Array Controller) + + pci:v00000E11d0000AE10sv00000E11sd00004032* +- ID_MODEL_FROM_DATABASE=Smart Array 3200 Controller ++ ID_MODEL_FROM_DATABASE=Smart-2/P RAID Controller (Smart Array 3200 Controller) + + pci:v00000E11d0000AE10sv00000E11sd00004033* +- ID_MODEL_FROM_DATABASE=Smart Array 3100ES Controller ++ ID_MODEL_FROM_DATABASE=Smart-2/P RAID Controller (Smart Array 3100ES Controller) + + pci:v00000E11d0000AE10sv00000E11sd00004034* +- ID_MODEL_FROM_DATABASE=Smart Array 221 Controller ++ ID_MODEL_FROM_DATABASE=Smart-2/P RAID Controller (Smart Array 221 Controller) + + pci:v00000E11d0000AE29* + ID_MODEL_FROM_DATABASE=MIS-L +@@ -468,13 +468,13 @@ pci:v00000E11d0000B178* + ID_MODEL_FROM_DATABASE=Smart Array 5i/532 + + pci:v00000E11d0000B178sv00000E11sd00004080* +- ID_MODEL_FROM_DATABASE=Smart Array 5i ++ ID_MODEL_FROM_DATABASE=Smart Array 5i/532 (Smart Array 5i) + + pci:v00000E11d0000B178sv00000E11sd00004082* +- ID_MODEL_FROM_DATABASE=Smart Array 532 ++ ID_MODEL_FROM_DATABASE=Smart Array 5i/532 (Smart Array 532) + + pci:v00000E11d0000B178sv00000E11sd00004083* +- ID_MODEL_FROM_DATABASE=Smart Array 5312 ++ ID_MODEL_FROM_DATABASE=Smart Array 5i/532 (Smart Array 5312) + + pci:v00000E11d0000B1A4* + ID_MODEL_FROM_DATABASE=NC7131 Gigabit Server Adapter +@@ -516,7 +516,7 @@ pci:v00001000d00000001* + ID_MODEL_FROM_DATABASE=53c810 + + pci:v00001000d00000001sv00001000sd00001000* +- ID_MODEL_FROM_DATABASE=LSI53C810AE PCI to SCSI I/O Processor ++ ID_MODEL_FROM_DATABASE=53c810 (LSI53C810AE PCI to SCSI I/O Processor) + + pci:v00001000d00000002* + ID_MODEL_FROM_DATABASE=53c820 +@@ -525,7 +525,7 @@ pci:v00001000d00000003* + ID_MODEL_FROM_DATABASE=53c825 + + pci:v00001000d00000003sv00001000sd00001000* +- ID_MODEL_FROM_DATABASE=LSI53C825AE PCI to SCSI I/O Processor (Ultra Wide) ++ ID_MODEL_FROM_DATABASE=53c825 (LSI53C825AE PCI to SCSI I/O Processor (Ultra Wide)) + + pci:v00001000d00000004* + ID_MODEL_FROM_DATABASE=53c815 +@@ -537,49 +537,49 @@ pci:v00001000d00000006* + ID_MODEL_FROM_DATABASE=53c860 + + pci:v00001000d00000006sv00001000sd00001000* +- ID_MODEL_FROM_DATABASE=LSI53C860E PCI to Ultra SCSI I/O Processor ++ ID_MODEL_FROM_DATABASE=53c860 (LSI53C860E PCI to Ultra SCSI I/O Processor) + + pci:v00001000d0000000A* + ID_MODEL_FROM_DATABASE=53c1510 + + pci:v00001000d0000000Asv00000E11sd0000B143* +- ID_MODEL_FROM_DATABASE=Integrated Dual Channel Wide Ultra2 SCSI Controller ++ ID_MODEL_FROM_DATABASE=53c1510 (Integrated Dual Channel Wide Ultra2 SCSI Controller) + + pci:v00001000d0000000Asv00001000sd00001000* +- ID_MODEL_FROM_DATABASE=LSI53C1510 PCI to Dual Channel Wide Ultra2 SCSI Controller (Nonintelligent mode) ++ ID_MODEL_FROM_DATABASE=53c1510 (LSI53C1510 PCI to Dual Channel Wide Ultra2 SCSI Controller (Nonintelligent mode)) + + pci:v00001000d0000000B* + ID_MODEL_FROM_DATABASE=53C896/897 + + pci:v00001000d0000000Bsv00000E11sd00006004* +- ID_MODEL_FROM_DATABASE=EOB003 Series SCSI host adapter ++ ID_MODEL_FROM_DATABASE=53C896/897 (EOB003 Series SCSI host adapter) + + pci:v00001000d0000000Bsv00001000sd00001000* +- ID_MODEL_FROM_DATABASE=LSI53C896/7 PCI to Dual Channel Ultra2 SCSI Multifunction Controller ++ ID_MODEL_FROM_DATABASE=53C896/897 (LSI53C896/7 PCI to Dual Channel Ultra2 SCSI Multifunction Controller) + + pci:v00001000d0000000Bsv00001000sd00001010* +- ID_MODEL_FROM_DATABASE=LSI22910 PCI to Dual Channel Ultra2 SCSI host adapter ++ ID_MODEL_FROM_DATABASE=53C896/897 (LSI22910 PCI to Dual Channel Ultra2 SCSI host adapter) + + pci:v00001000d0000000Bsv00001000sd00001020* +- ID_MODEL_FROM_DATABASE=LSI21002 PCI to Dual Channel Ultra2 SCSI host adapter ++ ID_MODEL_FROM_DATABASE=53C896/897 (LSI21002 PCI to Dual Channel Ultra2 SCSI host adapter) + + pci:v00001000d0000000Bsv000013E9sd00001000* +- ID_MODEL_FROM_DATABASE=6221L-4U (Dual U2W SCSI, dual 10/100TX, graphics) ++ ID_MODEL_FROM_DATABASE=53C896/897 (6221L-4U (Dual U2W SCSI, dual 10/100TX, graphics)) + + pci:v00001000d0000000C* + ID_MODEL_FROM_DATABASE=53c895 + + pci:v00001000d0000000Csv00001000sd00001010* +- ID_MODEL_FROM_DATABASE=LSI8951U PCI to Ultra2 SCSI host adapter ++ ID_MODEL_FROM_DATABASE=53c895 (LSI8951U PCI to Ultra2 SCSI host adapter) + + pci:v00001000d0000000Csv00001000sd00001020* +- ID_MODEL_FROM_DATABASE=LSI8952U PCI to Ultra2 SCSI host adapter ++ ID_MODEL_FROM_DATABASE=53c895 (LSI8952U PCI to Ultra2 SCSI host adapter) + + pci:v00001000d0000000Csv00001DE1sd00003906* +- ID_MODEL_FROM_DATABASE=DC-390U2B SCSI adapter ++ ID_MODEL_FROM_DATABASE=53c895 (DC-390U2B SCSI adapter) + + pci:v00001000d0000000Csv00001DE1sd00003907* +- ID_MODEL_FROM_DATABASE=DC-390U2W ++ ID_MODEL_FROM_DATABASE=53c895 (DC-390U2W) + + pci:v00001000d0000000D* + ID_MODEL_FROM_DATABASE=53c885 +@@ -588,151 +588,151 @@ pci:v00001000d0000000F* + ID_MODEL_FROM_DATABASE=53c875 + + pci:v00001000d0000000Fsv00000E11sd00007004* +- ID_MODEL_FROM_DATABASE=Embedded Ultra Wide SCSI Controller ++ ID_MODEL_FROM_DATABASE=53c875 (Embedded Ultra Wide SCSI Controller) + + pci:v00001000d0000000Fsv00001000sd00001000* +- ID_MODEL_FROM_DATABASE=LSI53C876/E PCI to Dual Channel SCSI Controller ++ ID_MODEL_FROM_DATABASE=53c875 (LSI53C876/E PCI to Dual Channel SCSI Controller) + + pci:v00001000d0000000Fsv00001000sd00001010* +- ID_MODEL_FROM_DATABASE=LSI22801 PCI to Dual Channel Ultra SCSI host adapter ++ ID_MODEL_FROM_DATABASE=53c875 (LSI22801 PCI to Dual Channel Ultra SCSI host adapter) + + pci:v00001000d0000000Fsv00001000sd00001020* +- ID_MODEL_FROM_DATABASE=LSI22802 PCI to Dual Channel Ultra SCSI host adapter ++ ID_MODEL_FROM_DATABASE=53c875 (LSI22802 PCI to Dual Channel Ultra SCSI host adapter) + + pci:v00001000d0000000Fsv00001092sd00008760* +- ID_MODEL_FROM_DATABASE=FirePort 40 Dual SCSI Controller ++ ID_MODEL_FROM_DATABASE=53c875 (FirePort 40 Dual SCSI Controller) + + pci:v00001000d0000000Fsv00001775sd000010D0* +- ID_MODEL_FROM_DATABASE=V5D Single Board Computer Wide Ultra SCSI ++ ID_MODEL_FROM_DATABASE=53c875 (V5D Single Board Computer Wide Ultra SCSI) + + pci:v00001000d0000000Fsv00001775sd000010D1* +- ID_MODEL_FROM_DATABASE=V5D Single Board Computer Ultra SCSI ++ ID_MODEL_FROM_DATABASE=53c875 (V5D Single Board Computer Ultra SCSI) + + pci:v00001000d0000000Fsv00001DE1sd00003904* +- ID_MODEL_FROM_DATABASE=DC390F/U Ultra Wide SCSI Adapter ++ ID_MODEL_FROM_DATABASE=53c875 (DC390F/U Ultra Wide SCSI Adapter) + + pci:v00001000d0000000Fsv00004C53sd00001000* +- ID_MODEL_FROM_DATABASE=CC7/CR7/CP7/VC7/VP7/VR7 mainboard ++ ID_MODEL_FROM_DATABASE=53c875 (CC7/CR7/CP7/VC7/VP7/VR7 mainboard) + + pci:v00001000d0000000Fsv00004C53sd00001050* +- ID_MODEL_FROM_DATABASE=CT7 mainboard ++ ID_MODEL_FROM_DATABASE=53c875 (CT7 mainboard) + + pci:v00001000d00000010* + ID_MODEL_FROM_DATABASE=53C1510 + + pci:v00001000d00000010sv00000E11sd00004040* +- ID_MODEL_FROM_DATABASE=Integrated Smart Array Controller ++ ID_MODEL_FROM_DATABASE=53C1510 (Integrated Smart Array Controller) + + pci:v00001000d00000010sv00000E11sd00004048* +- ID_MODEL_FROM_DATABASE=RAID LC2 Controller ++ ID_MODEL_FROM_DATABASE=53C1510 (RAID LC2 Controller) + + pci:v00001000d00000010sv00001000sd00001000* +- ID_MODEL_FROM_DATABASE=53C1510 PCI to Dual Channel Wide Ultra2 SCSI Controller (Intelligent mode) ++ ID_MODEL_FROM_DATABASE=53C1510 (PCI to Dual Channel Wide Ultra2 SCSI Controller (Intelligent mode)) + + pci:v00001000d00000012* + ID_MODEL_FROM_DATABASE=53c895a + + pci:v00001000d00000012sv00001000sd00001000* +- ID_MODEL_FROM_DATABASE=LSI53C895A PCI to Ultra2 SCSI Controller ++ ID_MODEL_FROM_DATABASE=53c895a (LSI53C895A PCI to Ultra2 SCSI Controller) + + pci:v00001000d00000013* + ID_MODEL_FROM_DATABASE=53c875a + + pci:v00001000d00000013sv00001000sd00001000* +- ID_MODEL_FROM_DATABASE=LSI53C875A PCI to Ultra SCSI Controller ++ ID_MODEL_FROM_DATABASE=53c875a (LSI53C875A PCI to Ultra SCSI Controller) + + pci:v00001000d00000020* + ID_MODEL_FROM_DATABASE=53c1010 Ultra3 SCSI Adapter + + pci:v00001000d00000020sv00001000sd00001000* +- ID_MODEL_FROM_DATABASE=LSI53C1010-33 PCI to Dual Channel Ultra160 SCSI Controller ++ ID_MODEL_FROM_DATABASE=53c1010 Ultra3 SCSI Adapter (LSI53C1010-33 PCI to Dual Channel Ultra160 SCSI Controller) + + pci:v00001000d00000020sv0000107Bsd00001040* +- ID_MODEL_FROM_DATABASE=Server Onboard 53C1010-33 ++ ID_MODEL_FROM_DATABASE=53c1010 Ultra3 SCSI Adapter (Server Onboard 53C1010-33) + + pci:v00001000d00000020sv00001DE1sd00001020* +- ID_MODEL_FROM_DATABASE=DC-390U3W ++ ID_MODEL_FROM_DATABASE=53c1010 Ultra3 SCSI Adapter (DC-390U3W) + + pci:v00001000d00000021* + ID_MODEL_FROM_DATABASE=53c1010 66MHz Ultra3 SCSI Adapter + + pci:v00001000d00000021sv00001000sd00001000* +- ID_MODEL_FROM_DATABASE=LSI53C1000/1000R/1010R/1010-66 PCI to Ultra160 SCSI Controller ++ ID_MODEL_FROM_DATABASE=53c1010 66MHz Ultra3 SCSI Adapter (LSI53C1000/1000R/1010R/1010-66 PCI to Ultra160 SCSI Controller) + + pci:v00001000d00000021sv00001000sd00001010* +- ID_MODEL_FROM_DATABASE=Asus TR-DLS onboard 53C1010-66 ++ ID_MODEL_FROM_DATABASE=53c1010 66MHz Ultra3 SCSI Adapter (Asus TR-DLS onboard 53C1010-66) + + pci:v00001000d00000021sv0000103Csd00001300* +- ID_MODEL_FROM_DATABASE=Ultra160 SCSI [AB306A] ++ ID_MODEL_FROM_DATABASE=53c1010 66MHz Ultra3 SCSI Adapter (Ultra160 SCSI [AB306A]) + + pci:v00001000d00000021sv0000103Csd00001310* +- ID_MODEL_FROM_DATABASE=Ultra160 SCSI [A9918A] ++ ID_MODEL_FROM_DATABASE=53c1010 66MHz Ultra3 SCSI Adapter (Ultra160 SCSI [A9918A]) + + pci:v00001000d00000021sv0000103Csd00001330* +- ID_MODEL_FROM_DATABASE=Ultra160 SCSI [A7059A] ++ ID_MODEL_FROM_DATABASE=53c1010 66MHz Ultra3 SCSI Adapter (Ultra160 SCSI [A7059A]) + + pci:v00001000d00000021sv0000103Csd00001340* +- ID_MODEL_FROM_DATABASE=Ultra160 SCSI [A7060A] ++ ID_MODEL_FROM_DATABASE=53c1010 66MHz Ultra3 SCSI Adapter (Ultra160 SCSI [A7060A]) + + pci:v00001000d00000021sv0000124Bsd00001070* +- ID_MODEL_FROM_DATABASE=PMC-USCSI3 ++ ID_MODEL_FROM_DATABASE=53c1010 66MHz Ultra3 SCSI Adapter (PMC-USCSI3) + + pci:v00001000d00000021sv00004C53sd00001080* +- ID_MODEL_FROM_DATABASE=CT8 mainboard ++ ID_MODEL_FROM_DATABASE=53c1010 66MHz Ultra3 SCSI Adapter (CT8 mainboard) + + pci:v00001000d00000021sv00004C53sd00001300* +- ID_MODEL_FROM_DATABASE=P017 mezzanine (32-bit PMC) ++ ID_MODEL_FROM_DATABASE=53c1010 66MHz Ultra3 SCSI Adapter (P017 mezzanine (32-bit PMC)) + + pci:v00001000d00000021sv00004C53sd00001310* +- ID_MODEL_FROM_DATABASE=P017 mezzanine (64-bit PMC) ++ ID_MODEL_FROM_DATABASE=53c1010 66MHz Ultra3 SCSI Adapter (P017 mezzanine (64-bit PMC)) + + pci:v00001000d0000002F* + ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 IOV [Thunderbolt] + + pci:v00001000d0000002Fsv00001028sd00001F3E* +- ID_MODEL_FROM_DATABASE=SPERC 8 ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 IOV [Thunderbolt] (SPERC 8) + + pci:v00001000d00000030* + ID_MODEL_FROM_DATABASE=53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI + + pci:v00001000d00000030sv00000E11sd000000DA* +- ID_MODEL_FROM_DATABASE=ProLiant ML 350 ++ ID_MODEL_FROM_DATABASE=53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (ProLiant ML 350) + + pci:v00001000d00000030sv00001028sd00000123* +- ID_MODEL_FROM_DATABASE=LSI Logic 1020/1030 ++ ID_MODEL_FROM_DATABASE=53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (LSI Logic 1020/1030) + + pci:v00001000d00000030sv00001028sd0000014A* +- ID_MODEL_FROM_DATABASE=LSI Logic 1020/1030 ++ ID_MODEL_FROM_DATABASE=53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (LSI Logic 1020/1030) + + pci:v00001000d00000030sv00001028sd0000016C* +- ID_MODEL_FROM_DATABASE=PowerEdge 1850 MPT Fusion SCSI/RAID (Perc 4) ++ ID_MODEL_FROM_DATABASE=53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (PowerEdge 1850 MPT Fusion SCSI/RAID (Perc 4)) + + pci:v00001000d00000030sv00001028sd00000183* +- ID_MODEL_FROM_DATABASE=LSI Logic 1020/1030 ++ ID_MODEL_FROM_DATABASE=53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (LSI Logic 1020/1030) + + pci:v00001000d00000030sv00001028sd0000018A* +- ID_MODEL_FROM_DATABASE=PERC 4/IM ++ ID_MODEL_FROM_DATABASE=53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (PERC 4/IM) + + pci:v00001000d00000030sv00001028sd00001010* +- ID_MODEL_FROM_DATABASE=LSI U320 SCSI Controller ++ ID_MODEL_FROM_DATABASE=53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (LSI U320 SCSI Controller) + + pci:v00001000d00000030sv0000103Csd000012C5* +- ID_MODEL_FROM_DATABASE=Ultra320 SCSI [A7173A] ++ ID_MODEL_FROM_DATABASE=53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (Ultra320 SCSI [A7173A]) + + pci:v00001000d00000030sv0000103Csd00001323* +- ID_MODEL_FROM_DATABASE=Core I/O LAN/SCSI Combo [AB314A] ++ ID_MODEL_FROM_DATABASE=53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (Core I/O LAN/SCSI Combo [AB314A]) + + pci:v00001000d00000030sv0000103Csd00003108* +- ID_MODEL_FROM_DATABASE=Single Channel Ultra320 SCSI HBA G2 ++ ID_MODEL_FROM_DATABASE=53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (Single Channel Ultra320 SCSI HBA G2) + + pci:v00001000d00000030sv0000124Bsd00001170* +- ID_MODEL_FROM_DATABASE=PMC-USCSI320 ++ ID_MODEL_FROM_DATABASE=53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (PMC-USCSI320) + + pci:v00001000d00000030sv000015ADsd00001976* +- ID_MODEL_FROM_DATABASE=LSI Logic Parallel SCSI Controller ++ ID_MODEL_FROM_DATABASE=53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (LSI Logic Parallel SCSI Controller) + + pci:v00001000d00000030sv00001734sd00001052* +- ID_MODEL_FROM_DATABASE=PRIMERGY BX/RX/TX S2 series onboard SCSI(IME) ++ ID_MODEL_FROM_DATABASE=53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (PRIMERGY BX/RX/TX S2 series onboard SCSI(IME)) + + pci:v00001000d00000031* + ID_MODEL_FROM_DATABASE=53c1030ZC PCI-X Fusion-MPT Dual Ultra320 SCSI +@@ -741,7 +741,7 @@ pci:v00001000d00000032* + ID_MODEL_FROM_DATABASE=53c1035 PCI-X Fusion-MPT Dual Ultra320 SCSI + + pci:v00001000d00000032sv00001000sd00001000* +- ID_MODEL_FROM_DATABASE=LSI53C1020/1030 PCI-X to Ultra320 SCSI Controller ++ ID_MODEL_FROM_DATABASE=53c1035 PCI-X Fusion-MPT Dual Ultra320 SCSI (LSI53C1020/1030 PCI-X to Ultra320 SCSI Controller) + + pci:v00001000d00000033* + ID_MODEL_FROM_DATABASE=1030ZC_53c1035 PCI-X Fusion-MPT Dual Ultra320 SCSI +@@ -750,10 +750,10 @@ pci:v00001000d00000040* + ID_MODEL_FROM_DATABASE=53c1035 PCI-X Fusion-MPT Dual Ultra320 SCSI + + pci:v00001000d00000040sv00001000sd00000033* +- ID_MODEL_FROM_DATABASE=MegaRAID SCSI 320-2XR ++ ID_MODEL_FROM_DATABASE=53c1035 PCI-X Fusion-MPT Dual Ultra320 SCSI (MegaRAID SCSI 320-2XR) + + pci:v00001000d00000040sv00001000sd00000066* +- ID_MODEL_FROM_DATABASE=MegaRAID SCSI 320-2XRWS ++ ID_MODEL_FROM_DATABASE=53c1035 PCI-X Fusion-MPT Dual Ultra320 SCSI (MegaRAID SCSI 320-2XRWS) + + pci:v00001000d00000041* + ID_MODEL_FROM_DATABASE=53C1035ZC PCI-X Fusion-MPT Dual Ultra320 SCSI +@@ -762,73 +762,73 @@ pci:v00001000d00000050* + ID_MODEL_FROM_DATABASE=SAS1064 PCI-X Fusion-MPT SAS + + pci:v00001000d00000050sv00001028sd00001F04* +- ID_MODEL_FROM_DATABASE=SAS 5/E ++ ID_MODEL_FROM_DATABASE=SAS1064 PCI-X Fusion-MPT SAS (SAS 5/E) + + pci:v00001000d00000050sv00001028sd00001F09* +- ID_MODEL_FROM_DATABASE=SAS 5i/R ++ ID_MODEL_FROM_DATABASE=SAS1064 PCI-X Fusion-MPT SAS (SAS 5i/R) + + pci:v00001000d00000054* + ID_MODEL_FROM_DATABASE=SAS1068 PCI-X Fusion-MPT SAS + + pci:v00001000d00000054sv00001028sd00001F04* +- ID_MODEL_FROM_DATABASE=SAS 5/E Adapter Controller ++ ID_MODEL_FROM_DATABASE=SAS1068 PCI-X Fusion-MPT SAS (SAS 5/E Adapter Controller) + + pci:v00001000d00000054sv00001028sd00001F05* +- ID_MODEL_FROM_DATABASE=SAS 5/i Adapter Controller ++ ID_MODEL_FROM_DATABASE=SAS1068 PCI-X Fusion-MPT SAS (SAS 5/i Adapter Controller) + + pci:v00001000d00000054sv00001028sd00001F06* +- ID_MODEL_FROM_DATABASE=SAS 5/i Integrated Controller ++ ID_MODEL_FROM_DATABASE=SAS1068 PCI-X Fusion-MPT SAS (SAS 5/i Integrated Controller) + + pci:v00001000d00000054sv00001028sd00001F07* +- ID_MODEL_FROM_DATABASE=SAS 5/iR Integrated RAID Controller ++ ID_MODEL_FROM_DATABASE=SAS1068 PCI-X Fusion-MPT SAS (SAS 5/iR Integrated RAID Controller) + + pci:v00001000d00000054sv00001028sd00001F08* +- ID_MODEL_FROM_DATABASE=SAS 5/iR Integrated RAID Controller ++ ID_MODEL_FROM_DATABASE=SAS1068 PCI-X Fusion-MPT SAS (SAS 5/iR Integrated RAID Controller) + + pci:v00001000d00000054sv00001028sd00001F09* +- ID_MODEL_FROM_DATABASE=SAS 5/iR Adapter RAID Controller ++ ID_MODEL_FROM_DATABASE=SAS1068 PCI-X Fusion-MPT SAS (SAS 5/iR Adapter RAID Controller) + + pci:v00001000d00000054sv000015ADsd00001976* +- ID_MODEL_FROM_DATABASE=SAS Controller ++ ID_MODEL_FROM_DATABASE=SAS1068 PCI-X Fusion-MPT SAS (SAS Controller) + + pci:v00001000d00000055* + ID_MODEL_FROM_DATABASE=SAS1068 PCI-X Fusion-MPT SAS + + pci:v00001000d00000055sv00001033sd00008336* +- ID_MODEL_FROM_DATABASE=SAS1068 ++ ID_MODEL_FROM_DATABASE=SAS1068 PCI-X Fusion-MPT SAS (SAS1068) + + pci:v00001000d00000056* + ID_MODEL_FROM_DATABASE=SAS1064ET PCI-Express Fusion-MPT SAS + + pci:v00001000d00000056sv00001014sd000003BB* +- ID_MODEL_FROM_DATABASE=ServeRAID BR10il SAS/SATA Controller v2 ++ ID_MODEL_FROM_DATABASE=SAS1064ET PCI-Express Fusion-MPT SAS (ServeRAID BR10il SAS/SATA Controller v2) + + pci:v00001000d00000057* + ID_MODEL_FROM_DATABASE=M1064E MegaRAID SAS + + pci:v00001000d00000057sv00008086sd0000346C* +- ID_MODEL_FROM_DATABASE=Embedded Software RAID Technology II (ESTRII) ++ ID_MODEL_FROM_DATABASE=M1064E MegaRAID SAS (Embedded Software RAID Technology II (ESTRII)) + + pci:v00001000d00000058* + ID_MODEL_FROM_DATABASE=SAS1068E PCI-Express Fusion-MPT SAS + + pci:v00001000d00000058sv00001000sd00003140* +- ID_MODEL_FROM_DATABASE=SAS3081E-R 8-Port SAS/SATA Host Bus Adapter ++ ID_MODEL_FROM_DATABASE=SAS1068E PCI-Express Fusion-MPT SAS (SAS3081E-R 8-Port SAS/SATA Host Bus Adapter) + + pci:v00001000d00000058sv00001028sd0000021D* +- ID_MODEL_FROM_DATABASE=SAS 6/iR Integrated Workstations RAID Controller ++ ID_MODEL_FROM_DATABASE=SAS1068E PCI-Express Fusion-MPT SAS (SAS 6/iR Integrated Workstations RAID Controller) + + pci:v00001000d00000058sv00001028sd00001F0E* +- ID_MODEL_FROM_DATABASE=SAS 6/iR Adapter RAID Controller ++ ID_MODEL_FROM_DATABASE=SAS1068E PCI-Express Fusion-MPT SAS (SAS 6/iR Adapter RAID Controller) + + pci:v00001000d00000058sv00001028sd00001F0F* +- ID_MODEL_FROM_DATABASE=SAS 6/iR Integrated Blades RAID Controller ++ ID_MODEL_FROM_DATABASE=SAS1068E PCI-Express Fusion-MPT SAS (SAS 6/iR Integrated Blades RAID Controller) + + pci:v00001000d00000058sv00001028sd00001F10* +- ID_MODEL_FROM_DATABASE=SAS 6/iR Integrated RAID Controller ++ ID_MODEL_FROM_DATABASE=SAS1068E PCI-Express Fusion-MPT SAS (SAS 6/iR Integrated RAID Controller) + + pci:v00001000d00000058sv0000103Csd00003229* +- ID_MODEL_FROM_DATABASE=SC44Ge Host Bus Adapter ++ ID_MODEL_FROM_DATABASE=SAS1068E PCI-Express Fusion-MPT SAS (SC44Ge Host Bus Adapter) + + pci:v00001000d00000059* + ID_MODEL_FROM_DATABASE=MegaRAID SAS 8208ELP/8208ELP +@@ -840,97 +840,97 @@ pci:v00001000d0000005B* + ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] + + pci:v00001000d0000005Bsv00001000sd00009265* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9265-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9265-8i) + + pci:v00001000d0000005Bsv00001000sd00009266* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9266-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9266-8i) + + pci:v00001000d0000005Bsv00001000sd00009267* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9267-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9267-8i) + + pci:v00001000d0000005Bsv00001000sd00009268* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9265CV-8i / 9270CV-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9265CV-8i / 9270CV-8i) + + pci:v00001000d0000005Bsv00001000sd00009269* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9266-4i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9266-4i) + + pci:v00001000d0000005Bsv00001000sd00009270* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9270-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9270-8i) + + pci:v00001000d0000005Bsv00001000sd00009271* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9271-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9271-8i) + + pci:v00001000d0000005Bsv00001000sd00009272* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9272-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9272-8i) + + pci:v00001000d0000005Bsv00001000sd00009273* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9270CV-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9270CV-8i) + + pci:v00001000d0000005Bsv00001000sd00009274* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9270-4i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9270-4i) + + pci:v00001000d0000005Bsv00001000sd00009275* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9271-8iCC ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9271-8iCC) + + pci:v00001000d0000005Bsv00001000sd00009276* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9271-4i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9271-4i) + + pci:v00001000d0000005Bsv00001000sd00009285* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9285-8e ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9285-8e) + + pci:v00001000d0000005Bsv00001000sd00009288* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9285CV-8e ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9285CV-8e) + + pci:v00001000d0000005Bsv00001000sd00009290* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9286-8e ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9286-8e) + + pci:v00001000d0000005Bsv00001000sd00009291* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9286CV-8e ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9286CV-8e) + + pci:v00001000d0000005Bsv00001000sd00009295* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9286CV-8eCC ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (MegaRAID SAS 9286CV-8eCC) + + pci:v00001000d0000005Bsv00001014sd0000040B* +- ID_MODEL_FROM_DATABASE=ServeRAID M5110 SAS/SATA Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (ServeRAID M5110 SAS/SATA Controller) + + pci:v00001000d0000005Bsv00001014sd0000040C* +- ID_MODEL_FROM_DATABASE=ServeRAID M5120 SAS/SATA Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (ServeRAID M5120 SAS/SATA Controller) + + pci:v00001000d0000005Bsv00001014sd00000412* +- ID_MODEL_FROM_DATABASE=ServeRAID M5110e SAS/SATA Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (ServeRAID M5110e SAS/SATA Controller) + + pci:v00001000d0000005Bsv00001028sd00001F2D* +- ID_MODEL_FROM_DATABASE=PERC H810 Adapter ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (PERC H810 Adapter) + + pci:v00001000d0000005Bsv00001028sd00001F30* +- ID_MODEL_FROM_DATABASE=PERC H710 Embedded ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (PERC H710 Embedded) + + pci:v00001000d0000005Bsv00001028sd00001F31* +- ID_MODEL_FROM_DATABASE=PERC H710P Adapter ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (PERC H710P Adapter) + + pci:v00001000d0000005Bsv00001028sd00001F33* +- ID_MODEL_FROM_DATABASE=PERC H710P Mini (for blades) ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (PERC H710P Mini (for blades)) + + pci:v00001000d0000005Bsv00001028sd00001F34* +- ID_MODEL_FROM_DATABASE=PERC H710P Mini (for monolithics) ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (PERC H710P Mini (for monolithics)) + + pci:v00001000d0000005Bsv00001028sd00001F35* +- ID_MODEL_FROM_DATABASE=PERC H710 Adapter ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (PERC H710 Adapter) + + pci:v00001000d0000005Bsv00001028sd00001F37* +- ID_MODEL_FROM_DATABASE=PERC H710 Mini (for blades) ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (PERC H710 Mini (for blades)) + + pci:v00001000d0000005Bsv00001028sd00001F38* +- ID_MODEL_FROM_DATABASE=PERC H710 Mini (for monolithics) ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (PERC H710 Mini (for monolithics)) + + pci:v00001000d0000005Bsv000015D9sd00000690* +- ID_MODEL_FROM_DATABASE=LSI MegaRAID ROMB ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (LSI MegaRAID ROMB) + + pci:v00001000d0000005Bsv00008086sd00003510* +- ID_MODEL_FROM_DATABASE=RMS25PB080 RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (RMS25PB080 RAID Controller) + + pci:v00001000d0000005Bsv00008086sd00003513* +- ID_MODEL_FROM_DATABASE=RMS25CB080 RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2208 [Thunderbolt] (RMS25CB080 RAID Controller) + + pci:v00001000d0000005C* + ID_MODEL_FROM_DATABASE=SAS1064A PCI-X Fusion-MPT SAS +@@ -939,31 +939,31 @@ pci:v00001000d0000005D* + ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] + + pci:v00001000d0000005Dsv00001028sd00001F41* +- ID_MODEL_FROM_DATABASE=PERC H830 Adapter ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (PERC H830 Adapter) + + pci:v00001000d0000005Dsv00001028sd00001F42* +- ID_MODEL_FROM_DATABASE=PERC H730P Adapter ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (PERC H730P Adapter) + + pci:v00001000d0000005Dsv00001028sd00001F43* +- ID_MODEL_FROM_DATABASE=PERC H730 Adapter ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (PERC H730 Adapter) + + pci:v00001000d0000005Dsv00001028sd00001F47* +- ID_MODEL_FROM_DATABASE=PERC H730P Mini ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (PERC H730P Mini) + + pci:v00001000d0000005Dsv00001028sd00001F48* +- ID_MODEL_FROM_DATABASE=PERC H730P Mini (for blades) ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (PERC H730P Mini (for blades)) + + pci:v00001000d0000005Dsv00001028sd00001F49* +- ID_MODEL_FROM_DATABASE=PERC H730 Mini ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (PERC H730 Mini) + + pci:v00001000d0000005Dsv00001028sd00001F4A* +- ID_MODEL_FROM_DATABASE=PERC H730 Mini (for blades) ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (PERC H730 Mini (for blades)) + + pci:v00001000d0000005Dsv000017AAsd00001052* +- ID_MODEL_FROM_DATABASE=ThinkServer RAID 720i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (ThinkServer RAID 720i) + + pci:v00001000d0000005Dsv000017AAsd00001053* +- ID_MODEL_FROM_DATABASE=ThinkServer RAID 720ix ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (ThinkServer RAID 720ix) + + pci:v00001000d0000005E* + ID_MODEL_FROM_DATABASE=SAS1066 PCI-X Fusion-MPT SAS +@@ -972,109 +972,109 @@ pci:v00001000d0000005F* + ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3008 [Fury] + + pci:v00001000d0000005Fsv00001028sd00001F44* +- ID_MODEL_FROM_DATABASE=PERC H330 Adapter ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3008 [Fury] (PERC H330 Adapter) + + pci:v00001000d0000005Fsv00001028sd00001F4B* +- ID_MODEL_FROM_DATABASE=PERC H330 Mini ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3008 [Fury] (PERC H330 Mini) + + pci:v00001000d0000005Fsv00001028sd00001F4C* +- ID_MODEL_FROM_DATABASE=PERC H330 Mini (for blades) ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3008 [Fury] (PERC H330 Mini (for blades)) + + pci:v00001000d0000005Fsv00001028sd00001F4D* +- ID_MODEL_FROM_DATABASE=PERC H330 Embedded (for monolithic) ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3008 [Fury] (PERC H330 Embedded (for monolithic)) + + pci:v00001000d00000060* + ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 + + pci:v00001000d00000060sv00001000sd00001006* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 8888ELP ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (MegaRAID SAS 8888ELP) + + pci:v00001000d00000060sv00001000sd0000100A* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 8708ELP ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (MegaRAID SAS 8708ELP) + + pci:v00001000d00000060sv00001000sd0000100E* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 8884E ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (MegaRAID SAS 8884E) + + pci:v00001000d00000060sv00001000sd0000100F* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 8708E ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (MegaRAID SAS 8708E) + + pci:v00001000d00000060sv00001000sd00001010* +- ID_MODEL_FROM_DATABASE=MegaRAID SATA 350-8ELP ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (MegaRAID SATA 350-8ELP) + + pci:v00001000d00000060sv00001000sd00001011* +- ID_MODEL_FROM_DATABASE=MegaRAID SATA 350-4ELP ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (MegaRAID SATA 350-4ELP) + + pci:v00001000d00000060sv00001000sd00001012* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 8704ELP ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (MegaRAID SAS 8704ELP) + + pci:v00001000d00000060sv00001000sd00001016* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 8880EM2 ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (MegaRAID SAS 8880EM2) + + pci:v00001000d00000060sv00001014sd00000363* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS PCI Express ROMB ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (MegaRAID SAS PCI Express ROMB) + + pci:v00001000d00000060sv00001014sd00000364* +- ID_MODEL_FROM_DATABASE=SystemX MegaRAID SAS 8808E ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (SystemX MegaRAID SAS 8808E) + + pci:v00001000d00000060sv00001014sd00000365* +- ID_MODEL_FROM_DATABASE=SystemX MegaRAID SAS 8884E ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (SystemX MegaRAID SAS 8884E) + + pci:v00001000d00000060sv00001014sd00000379* +- ID_MODEL_FROM_DATABASE=SystemX MegaRAID SAS 8880EM2 ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (SystemX MegaRAID SAS 8880EM2) + + pci:v00001000d00000060sv00001028sd00001F0A* +- ID_MODEL_FROM_DATABASE=PERC 6/E Adapter RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (PERC 6/E Adapter RAID Controller) + + pci:v00001000d00000060sv00001028sd00001F0B* +- ID_MODEL_FROM_DATABASE=PERC 6/i Adapter RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (PERC 6/i Adapter RAID Controller) + + pci:v00001000d00000060sv00001028sd00001F0C* +- ID_MODEL_FROM_DATABASE=PERC 6/i Integrated RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (PERC 6/i Integrated RAID Controller) + + pci:v00001000d00000060sv00001028sd00001F0D* +- ID_MODEL_FROM_DATABASE=PERC 6/i Integrated RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (PERC 6/i Integrated RAID Controller) + + pci:v00001000d00000060sv00001028sd00001F11* +- ID_MODEL_FROM_DATABASE=CERC 6/i Integrated RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (CERC 6/i Integrated RAID Controller) + + pci:v00001000d00000060sv00001033sd0000835A* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS PCI Express ROMB ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (MegaRAID SAS PCI Express ROMB) + + pci:v00001000d00000060sv00001043sd0000824D* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS PCI Express ROMB ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (MegaRAID SAS PCI Express ROMB) + + pci:v00001000d00000060sv00001170sd0000002F* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS PCI Express ROMB ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (MegaRAID SAS PCI Express ROMB) + + pci:v00001000d00000060sv00001170sd00000036* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS PCI Express ROMB ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (MegaRAID SAS PCI Express ROMB) + + pci:v00001000d00000060sv000015D9sd0000C080* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS PCI Express ROMB ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (MegaRAID SAS PCI Express ROMB) + + pci:v00001000d00000060sv000017AAsd00006B7C* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS PCI Express ROMB ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (MegaRAID SAS PCI Express ROMB) + + pci:v00001000d00000060sv000018A1sd00000003* +- ID_MODEL_FROM_DATABASE=LSI MegaRAID SAS PCI Express ROMB ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (LSI MegaRAID SAS PCI Express ROMB) + + pci:v00001000d00000060sv00008086sd00001006* +- ID_MODEL_FROM_DATABASE=RAID Controller SRCSAS28EP ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (RAID Controller SRCSAS28EP) + + pci:v00001000d00000060sv00008086sd0000100A* +- ID_MODEL_FROM_DATABASE=RAID Controller SRCSAS28EV ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (RAID Controller SRCSAS28EV) + + pci:v00001000d00000060sv00008086sd00001010* +- ID_MODEL_FROM_DATABASE=RAID Controller SRCSATA28E ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (RAID Controller SRCSATA28E) + + pci:v00001000d00000060sv00008086sd000034CC* +- ID_MODEL_FROM_DATABASE=Integrated RAID Controller SROMBSAS28E ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (Integrated RAID Controller SROMBSAS28E) + + pci:v00001000d00000060sv00008086sd000034CD* +- ID_MODEL_FROM_DATABASE=Integrated RAID Controller SROMBSAS28E ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (Integrated RAID Controller SROMBSAS28E) + + pci:v00001000d00000060sv00008086sd00003505* +- ID_MODEL_FROM_DATABASE=Integrated RAID Controller SROMBSASMP2 ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078 (Integrated RAID Controller SROMBSASMP2) + + pci:v00001000d00000062* + ID_MODEL_FROM_DATABASE=SAS1078 PCI-Express Fusion-MPT SAS +@@ -1101,100 +1101,100 @@ pci:v00001000d00000072* + ID_MODEL_FROM_DATABASE=SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] + + pci:v00001000d00000072sv00001028sd00001F1C* +- ID_MODEL_FROM_DATABASE=6Gbps SAS HBA Adapter ++ ID_MODEL_FROM_DATABASE=SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (6Gbps SAS HBA Adapter) + + pci:v00001000d00000072sv00001028sd00001F1D* +- ID_MODEL_FROM_DATABASE=PERC H200 Adapter ++ ID_MODEL_FROM_DATABASE=SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (PERC H200 Adapter) + + pci:v00001000d00000072sv00001028sd00001F1E* +- ID_MODEL_FROM_DATABASE=PERC H200 Integrated ++ ID_MODEL_FROM_DATABASE=SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (PERC H200 Integrated) + + pci:v00001000d00000072sv00001028sd00001F1F* +- ID_MODEL_FROM_DATABASE=PERC H200 Modular ++ ID_MODEL_FROM_DATABASE=SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (PERC H200 Modular) + + pci:v00001000d00000072sv00001028sd00001F20* +- ID_MODEL_FROM_DATABASE=PERC H200 Embedded ++ ID_MODEL_FROM_DATABASE=SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (PERC H200 Embedded) + + pci:v00001000d00000072sv00001028sd00001F22* +- ID_MODEL_FROM_DATABASE=Internal Tape Adapter ++ ID_MODEL_FROM_DATABASE=SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (Internal Tape Adapter) + + pci:v00001000d00000072sv00008086sd0000350F* +- ID_MODEL_FROM_DATABASE=RMS2LL040 RAID Controller ++ ID_MODEL_FROM_DATABASE=SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (RMS2LL040 RAID Controller) + + pci:v00001000d00000073* + ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] + + pci:v00001000d00000073sv00001000sd00009240* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9240-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (MegaRAID SAS 9240-8i) + + pci:v00001000d00000073sv00001000sd00009241* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9240-4i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (MegaRAID SAS 9240-4i) + + pci:v00001000d00000073sv00001000sd000092A0* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9220-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (MegaRAID SAS 9220-8i) + + pci:v00001000d00000073sv00001014sd000003B1* +- ID_MODEL_FROM_DATABASE=ServeRAID M1015 SAS/SATA Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (ServeRAID M1015 SAS/SATA Controller) + + pci:v00001000d00000073sv00001028sd00001F4E* +- ID_MODEL_FROM_DATABASE=PERC H310 Adapter ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (PERC H310 Adapter) + + pci:v00001000d00000073sv00001028sd00001F4F* +- ID_MODEL_FROM_DATABASE=PERC H310 Integrated ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (PERC H310 Integrated) + + pci:v00001000d00000073sv00001028sd00001F50* +- ID_MODEL_FROM_DATABASE=PERC H310 Mini Blades ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (PERC H310 Mini Blades) + + pci:v00001000d00000073sv00001028sd00001F51* +- ID_MODEL_FROM_DATABASE=PERC H310 Mini Monolithics ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (PERC H310 Mini Monolithics) + + pci:v00001000d00000073sv00001028sd00001F52* +- ID_MODEL_FROM_DATABASE=PERC H310 Embedded1 ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (PERC H310 Embedded1) + + pci:v00001000d00000073sv00001028sd00001F53* +- ID_MODEL_FROM_DATABASE=PERC H310 Embedded2 ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (PERC H310 Embedded2) + + pci:v00001000d00000073sv00001028sd00001F54* +- ID_MODEL_FROM_DATABASE=PERC H310 Reserved ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (PERC H310 Reserved) + + pci:v00001000d00000073sv00001054sd00003035* +- ID_MODEL_FROM_DATABASE=LSI MegaRAID SAS 9240-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (LSI MegaRAID SAS 9240-8i) + + pci:v00001000d00000073sv00001137sd00000072* +- ID_MODEL_FROM_DATABASE=2004 iMR ROMB ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (2004 iMR ROMB) + + pci:v00001000d00000073sv00001137sd00000073* +- ID_MODEL_FROM_DATABASE=2008 ROMB ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (2008 ROMB) + + pci:v00001000d00000073sv00001137sd000000B0* +- ID_MODEL_FROM_DATABASE=UCSC RAID SAS 2008M-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (UCSC RAID SAS 2008M-8i) + + pci:v00001000d00000073sv00001137sd000000B1* +- ID_MODEL_FROM_DATABASE=UCSC RAID SAS 2008M-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (UCSC RAID SAS 2008M-8i) + + pci:v00001000d00000073sv00001137sd000000C2* +- ID_MODEL_FROM_DATABASE=UCS E-Series Double Wide ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (UCS E-Series Double Wide) + + pci:v00001000d00000073sv00001137sd000000C3* +- ID_MODEL_FROM_DATABASE=UCS E-Series Single Wide ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (UCS E-Series Single Wide) + + pci:v00001000d00000073sv000015D9sd00000400* +- ID_MODEL_FROM_DATABASE=Supermicro SMC2008-iMR ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (Supermicro SMC2008-iMR) + + pci:v00001000d00000073sv00001734sd00001177* +- ID_MODEL_FROM_DATABASE=RAID Ctrl SAS 6G 0/1 (D2607) ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (RAID Ctrl SAS 6G 0/1 (D2607)) + + pci:v00001000d00000073sv000017AAsd00001051* +- ID_MODEL_FROM_DATABASE=ThinkServer RAID 510i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (ThinkServer RAID 510i) + + pci:v00001000d00000073sv00008086sd0000350D* +- ID_MODEL_FROM_DATABASE=RMS2AF040 RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (RMS2AF040 RAID Controller) + + pci:v00001000d00000073sv00008086sd00009240* +- ID_MODEL_FROM_DATABASE=RAID Controller RS2WC080 ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (RAID Controller RS2WC080) + + pci:v00001000d00000073sv00008086sd00009241* +- ID_MODEL_FROM_DATABASE=RAID Controller RS2WC040 ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2008 [Falcon] (RAID Controller RS2WC040) + + pci:v00001000d00000074* + ID_MODEL_FROM_DATABASE=SAS2108 PCI-Express Fusion-MPT SAS-2 [Liberator] +@@ -1209,106 +1209,106 @@ pci:v00001000d00000079* + ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] + + pci:v00001000d00000079sv00001000sd00009251* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9260-4ix ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (MegaRAID SAS 9260-4ix) + + pci:v00001000d00000079sv00001000sd00009256* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9260-8ix ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (MegaRAID SAS 9260-8ix) + + pci:v00001000d00000079sv00001000sd00009260* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9260-4i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (MegaRAID SAS 9260-4i) + + pci:v00001000d00000079sv00001000sd00009261* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9260-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (MegaRAID SAS 9260-8i) + + pci:v00001000d00000079sv00001000sd00009262* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9262-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (MegaRAID SAS 9262-8i) + + pci:v00001000d00000079sv00001000sd00009263* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9261-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (MegaRAID SAS 9261-8i) + + pci:v00001000d00000079sv00001000sd00009264* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9264-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (MegaRAID SAS 9264-8i) + + pci:v00001000d00000079sv00001000sd00009267* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9260CV-4i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (MegaRAID SAS 9260CV-4i) + + pci:v00001000d00000079sv00001000sd00009268* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9260CV-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (MegaRAID SAS 9260CV-8i) + + pci:v00001000d00000079sv00001000sd00009275* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9280-8ex ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (MegaRAID SAS 9280-8ex) + + pci:v00001000d00000079sv00001000sd00009276* +- ID_MODEL_FROM_DATABASE=MR9260-16i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (MR9260-16i) + + pci:v00001000d00000079sv00001000sd00009280* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9280-8e ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (MegaRAID SAS 9280-8e) + + pci:v00001000d00000079sv00001000sd00009281* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9281-8E ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (MegaRAID SAS 9281-8E) + + pci:v00001000d00000079sv00001000sd00009282* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9280-4i4e ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (MegaRAID SAS 9280-4i4e) + + pci:v00001000d00000079sv00001000sd00009290* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9280DE-24i4e ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (MegaRAID SAS 9280DE-24i4e) + + pci:v00001000d00000079sv00001014sd000003B2* +- ID_MODEL_FROM_DATABASE=ServeRAID M5015 SAS/SATA Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (ServeRAID M5015 SAS/SATA Controller) + + pci:v00001000d00000079sv00001014sd000003B3* +- ID_MODEL_FROM_DATABASE=ServeRAID M5025 SAS/SATA Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (ServeRAID M5025 SAS/SATA Controller) + + pci:v00001000d00000079sv00001028sd00001F15* +- ID_MODEL_FROM_DATABASE=PERC H800 Adapter ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (PERC H800 Adapter) + + pci:v00001000d00000079sv00001028sd00001F16* +- ID_MODEL_FROM_DATABASE=PERC H700 Adapter ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (PERC H700 Adapter) + + pci:v00001000d00000079sv00001028sd00001F17* +- ID_MODEL_FROM_DATABASE=PERC H700 Integrated ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (PERC H700 Integrated) + + pci:v00001000d00000079sv00001028sd00001F18* +- ID_MODEL_FROM_DATABASE=PERC H700 Modular ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (PERC H700 Modular) + + pci:v00001000d00000079sv00001028sd00001F1A* +- ID_MODEL_FROM_DATABASE=PERC H800 Proto Adapter ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (PERC H800 Proto Adapter) + + pci:v00001000d00000079sv00001028sd00001F1B* +- ID_MODEL_FROM_DATABASE=PERC H700 Integrated ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (PERC H700 Integrated) + + pci:v00001000d00000079sv00001043sd00008480* +- ID_MODEL_FROM_DATABASE=PIKE-2108 16PD ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (PIKE-2108 16PD) + + pci:v00001000d00000079sv00001734sd00001176* +- ID_MODEL_FROM_DATABASE=RAID Ctrl SAS 6G 5/6 512MB (D2616) ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (RAID Ctrl SAS 6G 5/6 512MB (D2616)) + + pci:v00001000d00000079sv00001734sd00001177* +- ID_MODEL_FROM_DATABASE=RAID Ctrl SAS 6G 0/1 (D2607) ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (RAID Ctrl SAS 6G 0/1 (D2607)) + + pci:v00001000d00000079sv00008086sd00009256* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 9260DE-8i ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (MegaRAID SAS 9260DE-8i) + + pci:v00001000d00000079sv00008086sd00009260* +- ID_MODEL_FROM_DATABASE=RAID Controller RS2BL040 ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (RAID Controller RS2BL040) + + pci:v00001000d00000079sv00008086sd00009261* +- ID_MODEL_FROM_DATABASE=RAID Controller RS2BL080 ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (RAID Controller RS2BL080) + + pci:v00001000d00000079sv00008086sd00009264* +- ID_MODEL_FROM_DATABASE=Warm Beach (Caster Lite) ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (Warm Beach (Caster Lite)) + + pci:v00001000d00000079sv00008086sd00009267* +- ID_MODEL_FROM_DATABASE=RAID Controller RS2VB040 ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (RAID Controller RS2VB040) + + pci:v00001000d00000079sv00008086sd00009268* +- ID_MODEL_FROM_DATABASE=RAID Controller RS2VB080 ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 2108 [Liberator] (RAID Controller RS2VB080) + + pci:v00001000d0000007C* + ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078DE + + pci:v00001000d0000007Csv00001014sd00000395* +- ID_MODEL_FROM_DATABASE=ServeRAID-AR10is SAS/SATA Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1078DE (ServeRAID-AR10is SAS/SATA Controller) + + pci:v00001000d0000007E* + ID_MODEL_FROM_DATABASE=SSS6200 PCI-Express Flash SSD +@@ -1338,16 +1338,16 @@ pci:v00001000d00000087* + ID_MODEL_FROM_DATABASE=SAS2308 PCI-Express Fusion-MPT SAS-2 + + pci:v00001000d00000087sv00001590sd00000044* +- ID_MODEL_FROM_DATABASE=H220i ++ ID_MODEL_FROM_DATABASE=SAS2308 PCI-Express Fusion-MPT SAS-2 (H220i) + + pci:v00001000d0000008F* + ID_MODEL_FROM_DATABASE=53c875J + + pci:v00001000d0000008Fsv00001092sd00008000* +- ID_MODEL_FROM_DATABASE=FirePort 40 SCSI Controller ++ ID_MODEL_FROM_DATABASE=53c875J (FirePort 40 SCSI Controller) + + pci:v00001000d0000008Fsv00001092sd00008760* +- ID_MODEL_FROM_DATABASE=FirePort 40 Dual SCSI Host Adapter ++ ID_MODEL_FROM_DATABASE=53c875J (FirePort 40 Dual SCSI Host Adapter) + + pci:v00001000d00000090* + ID_MODEL_FROM_DATABASE=SAS3108 PCI-Express Fusion-MPT SAS-3 +@@ -1368,151 +1368,151 @@ pci:v00001000d00000097* + ID_MODEL_FROM_DATABASE=SAS3008 PCI-Express Fusion-MPT SAS-3 + + pci:v00001000d00000097sv00001028sd00001F45* +- ID_MODEL_FROM_DATABASE=12GB/s HBA internal ++ ID_MODEL_FROM_DATABASE=SAS3008 PCI-Express Fusion-MPT SAS-3 (12GB/s HBA internal) + + pci:v00001000d00000097sv00001028sd00001F46* +- ID_MODEL_FROM_DATABASE=12GB/s HBA external ++ ID_MODEL_FROM_DATABASE=SAS3008 PCI-Express Fusion-MPT SAS-3 (12GB/s HBA external) + + pci:v00001000d00000407* + ID_MODEL_FROM_DATABASE=MegaRAID + + pci:v00001000d00000407sv00001000sd00000530* +- ID_MODEL_FROM_DATABASE=MegaRAID 530 SCSI 320-0X RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (530 SCSI 320-0X RAID Controller) + + pci:v00001000d00000407sv00001000sd00000531* +- ID_MODEL_FROM_DATABASE=MegaRAID 531 SCSI 320-4X RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (531 SCSI 320-4X RAID Controller) + + pci:v00001000d00000407sv00001000sd00000532* +- ID_MODEL_FROM_DATABASE=MegaRAID 532 SCSI 320-2X RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (532 SCSI 320-2X RAID Controller) + + pci:v00001000d00000407sv00001028sd00000531* +- ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 4/QC ++ ID_MODEL_FROM_DATABASE=MegaRAID (PowerEdge Expandable RAID Controller 4/QC) + + pci:v00001000d00000407sv00001028sd00000533* +- ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 4/QC ++ ID_MODEL_FROM_DATABASE=MegaRAID (PowerEdge Expandable RAID Controller 4/QC) + + pci:v00001000d00000407sv00008086sd00000530* +- ID_MODEL_FROM_DATABASE=MegaRAID Intel RAID Controller SRCZCRX ++ ID_MODEL_FROM_DATABASE=MegaRAID (Intel RAID Controller SRCZCRX) + + pci:v00001000d00000407sv00008086sd00000532* +- ID_MODEL_FROM_DATABASE=MegaRAID Intel RAID Controller SRCU42X ++ ID_MODEL_FROM_DATABASE=MegaRAID (Intel RAID Controller SRCU42X) + + pci:v00001000d00000408* + ID_MODEL_FROM_DATABASE=MegaRAID + + pci:v00001000d00000408sv00001000sd00000001* +- ID_MODEL_FROM_DATABASE=MegaRAID SCSI 320-1E RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (SCSI 320-1E RAID Controller) + + pci:v00001000d00000408sv00001000sd00000002* +- ID_MODEL_FROM_DATABASE=MegaRAID SCSI 320-2E RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (SCSI 320-2E RAID Controller) + + pci:v00001000d00000408sv00001025sd0000004D* +- ID_MODEL_FROM_DATABASE=MegaRAID ACER ROMB-2E RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (ACER ROMB-2E RAID Controller) + + pci:v00001000d00000408sv00001028sd00000001* +- ID_MODEL_FROM_DATABASE=PowerEdge RAID Controller PERC4e/SC ++ ID_MODEL_FROM_DATABASE=MegaRAID (PowerEdge RAID Controller PERC4e/SC) + + pci:v00001000d00000408sv00001028sd00000002* +- ID_MODEL_FROM_DATABASE=PowerEdge RAID Controller PERC4e/DC ++ ID_MODEL_FROM_DATABASE=MegaRAID (PowerEdge RAID Controller PERC4e/DC) + + pci:v00001000d00000408sv00001028sd00000012* +- ID_MODEL_FROM_DATABASE=PowerEdge RAID Controller RAC4 ++ ID_MODEL_FROM_DATABASE=MegaRAID (PowerEdge RAID Controller RAC4) + + pci:v00001000d00000408sv00001028sd00000015* +- ID_MODEL_FROM_DATABASE=PowerEdge RAID Controller PERC5 ++ ID_MODEL_FROM_DATABASE=MegaRAID (PowerEdge RAID Controller PERC5) + + pci:v00001000d00000408sv00001028sd00001F03* +- ID_MODEL_FROM_DATABASE=PowerEdge RAID Controller PERC5 ++ ID_MODEL_FROM_DATABASE=MegaRAID (PowerEdge RAID Controller PERC5) + + pci:v00001000d00000408sv00001734sd00001065* +- ID_MODEL_FROM_DATABASE=FSC MegaRAID PCI Express ROMB ++ ID_MODEL_FROM_DATABASE=MegaRAID (FSC MegaRAID PCI Express ROMB) + + pci:v00001000d00000408sv00008086sd00000002* +- ID_MODEL_FROM_DATABASE=MegaRAID Intel RAID Controller SRCU42E ++ ID_MODEL_FROM_DATABASE=MegaRAID (Intel RAID Controller SRCU42E) + + pci:v00001000d00000408sv00008086sd00003449* +- ID_MODEL_FROM_DATABASE=MegaRAID Intel RAID Controller SROMBU ++ ID_MODEL_FROM_DATABASE=MegaRAID (Intel RAID Controller SROMBU) + + pci:v00001000d00000409* + ID_MODEL_FROM_DATABASE=MegaRAID + + pci:v00001000d00000409sv00001000sd00003004* +- ID_MODEL_FROM_DATABASE=MegaRAID SATA 300-4X RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (SATA 300-4X RAID Controller) + + pci:v00001000d00000409sv00001000sd00003008* +- ID_MODEL_FROM_DATABASE=MegaRAID SATA 300-8X RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (SATA 300-8X RAID Controller) + + pci:v00001000d00000409sv00008086sd00003008* +- ID_MODEL_FROM_DATABASE=MegaRAID RAID Controller SRCS28X ++ ID_MODEL_FROM_DATABASE=MegaRAID (RAID Controller SRCS28X) + + pci:v00001000d00000409sv00008086sd00003431* +- ID_MODEL_FROM_DATABASE=MegaRAID RAID Controller Alief SROMBU42E ++ ID_MODEL_FROM_DATABASE=MegaRAID (RAID Controller Alief SROMBU42E) + + pci:v00001000d00000409sv00008086sd00003499* +- ID_MODEL_FROM_DATABASE=MegaRAID RAID Controller Harwich SROMBU42E ++ ID_MODEL_FROM_DATABASE=MegaRAID (RAID Controller Harwich SROMBU42E) + + pci:v00001000d00000411* + ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 + + pci:v00001000d00000411sv00001000sd00001001* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 8408E ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (MegaRAID SAS 8408E) + + pci:v00001000d00000411sv00001000sd00001002* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 8480E ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (MegaRAID SAS 8480E) + + pci:v00001000d00000411sv00001000sd00001003* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 8344ELP ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (MegaRAID SAS 8344ELP) + + pci:v00001000d00000411sv00001000sd00001004* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 8308ELP ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (MegaRAID SAS 8308ELP) + + pci:v00001000d00000411sv00001000sd00001008* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 84016E ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (MegaRAID SAS 84016E) + + pci:v00001000d00000411sv00001000sd0000100C* +- ID_MODEL_FROM_DATABASE=MegaRAID SATA 300-12E ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (MegaRAID SATA 300-12E) + + pci:v00001000d00000411sv00001000sd0000100D* +- ID_MODEL_FROM_DATABASE=MegaRAID SATA 300-16E ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (MegaRAID SATA 300-16E) + + pci:v00001000d00000411sv00001000sd00002004* +- ID_MODEL_FROM_DATABASE=MegaRAID SATA 300-8ELP ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (MegaRAID SATA 300-8ELP) + + pci:v00001000d00000411sv00001000sd00002005* +- ID_MODEL_FROM_DATABASE=MegaRAID SATA 300-4ELP ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (MegaRAID SATA 300-4ELP) + + pci:v00001000d00000411sv00001033sd00008287* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS PCI Express ROMB ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (MegaRAID SAS PCI Express ROMB) + + pci:v00001000d00000411sv00001054sd00003016* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS RoMB Server ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (MegaRAID SAS RoMB Server) + + pci:v00001000d00000411sv00001734sd00001081* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS PCI Express ROMB ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (MegaRAID SAS PCI Express ROMB) + + pci:v00001000d00000411sv00001734sd000010A3* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS PCI Express ROMB ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (MegaRAID SAS PCI Express ROMB) + + pci:v00001000d00000411sv00008086sd00001001* +- ID_MODEL_FROM_DATABASE=RAID Controller SRCSAS18E ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (RAID Controller SRCSAS18E) + + pci:v00001000d00000411sv00008086sd00001003* +- ID_MODEL_FROM_DATABASE=RAID Controller SRCSAS144E ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (RAID Controller SRCSAS144E) + + pci:v00001000d00000411sv00008086sd00003500* +- ID_MODEL_FROM_DATABASE=SROMBSAS18E RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (SROMBSAS18E RAID Controller) + + pci:v00001000d00000411sv00008086sd00003501* +- ID_MODEL_FROM_DATABASE=SROMBSAS18E RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (SROMBSAS18E RAID Controller) + + pci:v00001000d00000411sv00008086sd00003504* +- ID_MODEL_FROM_DATABASE=SROMBSAS18E RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 (SROMBSAS18E RAID Controller) + + pci:v00001000d00000413* + ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 [Verde ZCR] + + pci:v00001000d00000413sv00001000sd00001005* +- ID_MODEL_FROM_DATABASE=MegaRAID SAS 8300XLP ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS 1068 [Verde ZCR] (MegaRAID SAS 8300XLP) + + pci:v00001000d00000621* + ID_MODEL_FROM_DATABASE=FC909 Fibre Channel Adapter +@@ -1521,7 +1521,7 @@ pci:v00001000d00000622* + ID_MODEL_FROM_DATABASE=FC929 Fibre Channel Adapter + + pci:v00001000d00000622sv00001000sd00001020* +- ID_MODEL_FROM_DATABASE=44929 O Dual Fibre Channel card ++ ID_MODEL_FROM_DATABASE=FC929 Fibre Channel Adapter (44929 O Dual Fibre Channel card) + + pci:v00001000d00000623* + ID_MODEL_FROM_DATABASE=FC929 LAN +@@ -1536,7 +1536,7 @@ pci:v00001000d00000626* + ID_MODEL_FROM_DATABASE=FC929X Fibre Channel Adapter + + pci:v00001000d00000626sv00001000sd00001010* +- ID_MODEL_FROM_DATABASE=7202-XP-LC Dual Fibre Channel card ++ ID_MODEL_FROM_DATABASE=FC929X Fibre Channel Adapter (7202-XP-LC Dual Fibre Channel card) + + pci:v00001000d00000627* + ID_MODEL_FROM_DATABASE=FC929X LAN +@@ -1563,7 +1563,7 @@ pci:v00001000d00000702* + ID_MODEL_FROM_DATABASE=Yellowfin G-NIC gigabit ethernet + + pci:v00001000d00000702sv00001318sd00000000* +- ID_MODEL_FROM_DATABASE=PEI100X ++ ID_MODEL_FROM_DATABASE=Yellowfin G-NIC gigabit ethernet (PEI100X) + + pci:v00001000d00000804* + ID_MODEL_FROM_DATABASE=SA2010 +@@ -1587,40 +1587,40 @@ pci:v00001000d00001960* + ID_MODEL_FROM_DATABASE=MegaRAID + + pci:v00001000d00001960sv00001000sd00000518* +- ID_MODEL_FROM_DATABASE=MegaRAID 518 SCSI 320-2 Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (518 SCSI 320-2 Controller) + + pci:v00001000d00001960sv00001000sd00000520* +- ID_MODEL_FROM_DATABASE=MegaRAID 520 SCSI 320-1 Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (520 SCSI 320-1 Controller) + + pci:v00001000d00001960sv00001000sd00000522* +- ID_MODEL_FROM_DATABASE=MegaRAID 522 i4 133 RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (522 i4 133 RAID Controller) + + pci:v00001000d00001960sv00001000sd00000523* +- ID_MODEL_FROM_DATABASE=MegaRAID SATA 150-6 RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (SATA 150-6 RAID Controller) + + pci:v00001000d00001960sv00001000sd00004523* +- ID_MODEL_FROM_DATABASE=MegaRAID SATA 150-4 RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (SATA 150-4 RAID Controller) + + pci:v00001000d00001960sv00001000sd0000A520* +- ID_MODEL_FROM_DATABASE=MegaRAID ZCR SCSI 320-0 Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (ZCR SCSI 320-0 Controller) + + pci:v00001000d00001960sv00001028sd00000518* +- ID_MODEL_FROM_DATABASE=MegaRAID 518 DELL PERC 4/DC RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (518 DELL PERC 4/DC RAID Controller) + + pci:v00001000d00001960sv00001028sd00000520* +- ID_MODEL_FROM_DATABASE=MegaRAID 520 DELL PERC 4/SC RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (520 DELL PERC 4/SC RAID Controller) + + pci:v00001000d00001960sv00001028sd00000531* +- ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 4/QC ++ ID_MODEL_FROM_DATABASE=MegaRAID (PowerEdge Expandable RAID Controller 4/QC) + + pci:v00001000d00001960sv00001028sd00000533* +- ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 4/QC ++ ID_MODEL_FROM_DATABASE=MegaRAID (PowerEdge Expandable RAID Controller 4/QC) + + pci:v00001000d00001960sv00008086sd00000520* +- ID_MODEL_FROM_DATABASE=MegaRAID RAID Controller SRCU41L ++ ID_MODEL_FROM_DATABASE=MegaRAID (RAID Controller SRCU41L) + + pci:v00001000d00001960sv00008086sd00000523* +- ID_MODEL_FROM_DATABASE=MegaRAID RAID Controller SRCS16 ++ ID_MODEL_FROM_DATABASE=MegaRAID (RAID Controller SRCS16) + + pci:v00001000d00003050* + ID_MODEL_FROM_DATABASE=SAS2008 PCI-Express Fusion-MPT SAS-2 +@@ -1710,7 +1710,7 @@ pci:v00001002d00001314* + ID_MODEL_FROM_DATABASE=Wrestler HDMI Audio + + pci:v00001002d00001314sv0000174Bsd00001001* +- ID_MODEL_FROM_DATABASE=PURE Fusion Mini ++ ID_MODEL_FROM_DATABASE=Wrestler HDMI Audio (PURE Fusion Mini) + + pci:v00001002d00001315* + ID_MODEL_FROM_DATABASE=Kaveri [Radeon R5 Graphics] +@@ -1737,13 +1737,13 @@ pci:v00001002d00001714* + ID_MODEL_FROM_DATABASE=BeaverCreek HDMI Audio [Radeon HD 6500D and 6400G-6600G series] + + pci:v00001002d00001714sv0000103Csd0000168B* +- ID_MODEL_FROM_DATABASE=ProBook 4535s ++ ID_MODEL_FROM_DATABASE=BeaverCreek HDMI Audio [Radeon HD 6500D and 6400G-6600G series] (ProBook 4535s) + + pci:v00001002d00003150* + ID_MODEL_FROM_DATABASE=RV380/M24 [Mobility Radeon X600] + + pci:v00001002d00003150sv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=nx8220 ++ ID_MODEL_FROM_DATABASE=RV380/M24 [Mobility Radeon X600] (nx8220) + + pci:v00001002d00003151* + ID_MODEL_FROM_DATABASE=RV380 GL [FireMV 2400] +@@ -1791,73 +1791,73 @@ pci:v00001002d00004150* + ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] + + pci:v00001002d00004150sv00001002sd00000002* +- ID_MODEL_FROM_DATABASE=R9600 Pro primary (Asus OEM for HP) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (R9600 Pro primary (Asus OEM for HP)) + + pci:v00001002d00004150sv00001002sd00000003* +- ID_MODEL_FROM_DATABASE=R9600 Pro secondary (Asus OEM for HP) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (R9600 Pro secondary (Asus OEM for HP)) + + pci:v00001002d00004150sv00001002sd00004722* +- ID_MODEL_FROM_DATABASE=All-in-Wonder 2006 AGP Edition ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (All-in-Wonder 2006 AGP Edition) + + pci:v00001002d00004150sv00001458sd00004024* +- ID_MODEL_FROM_DATABASE=GV-R96128D ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (GV-R96128D) + + pci:v00001002d00004150sv0000148Csd00002064* +- ID_MODEL_FROM_DATABASE=R96A-C3N ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (R96A-C3N) + + pci:v00001002d00004150sv0000148Csd00002066* +- ID_MODEL_FROM_DATABASE=R96A-C3N ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (R96A-C3N) + + pci:v00001002d00004150sv0000174Bsd00007C19* +- ID_MODEL_FROM_DATABASE=Atlantis Radeon 9600 Pro ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (Atlantis Radeon 9600 Pro) + + pci:v00001002d00004150sv0000174Bsd00007C29* +- ID_MODEL_FROM_DATABASE=GC-R9600PRO ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (GC-R9600PRO) + + pci:v00001002d00004150sv000017EEsd00002002* +- ID_MODEL_FROM_DATABASE=Radeon 9600 256Mb Primary ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (Radeon 9600 256Mb Primary) + + pci:v00001002d00004150sv000018BCsd00000101* +- ID_MODEL_FROM_DATABASE=GC-R9600PRO (Primary) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (GC-R9600PRO (Primary)) + + pci:v00001002d00004151* + ID_MODEL_FROM_DATABASE=RV350 [Radeon 9600 Series] + + pci:v00001002d00004151sv00001043sd0000C004* +- ID_MODEL_FROM_DATABASE=A9600SE ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9600 Series] (A9600SE) + + pci:v00001002d00004152* + ID_MODEL_FROM_DATABASE=RV360 [Radeon 9600/X1050 Series] + + pci:v00001002d00004152sv00001002sd00000002* +- ID_MODEL_FROM_DATABASE=Radeon 9600XT ++ ID_MODEL_FROM_DATABASE=RV360 [Radeon 9600/X1050 Series] (Radeon 9600XT) + + pci:v00001002d00004152sv00001002sd00004772* +- ID_MODEL_FROM_DATABASE=All-in-Wonder 9600 XT ++ ID_MODEL_FROM_DATABASE=RV360 [Radeon 9600/X1050 Series] (All-in-Wonder 9600 XT) + + pci:v00001002d00004152sv00001043sd0000C002* +- ID_MODEL_FROM_DATABASE=Radeon 9600 XT TVD ++ ID_MODEL_FROM_DATABASE=RV360 [Radeon 9600/X1050 Series] (Radeon 9600 XT TVD) + + pci:v00001002d00004152sv00001043sd0000C01A* +- ID_MODEL_FROM_DATABASE=A9600XT/TD ++ ID_MODEL_FROM_DATABASE=RV360 [Radeon 9600/X1050 Series] (A9600XT/TD) + + pci:v00001002d00004152sv00001462sd00009510* +- ID_MODEL_FROM_DATABASE=RX9600XT (MS-8951) ++ ID_MODEL_FROM_DATABASE=RV360 [Radeon 9600/X1050 Series] (RX9600XT (MS-8951)) + + pci:v00001002d00004152sv0000174Bsd00007C29* +- ID_MODEL_FROM_DATABASE=Radeon 9600XT ++ ID_MODEL_FROM_DATABASE=RV360 [Radeon 9600/X1050 Series] (Radeon 9600XT) + + pci:v00001002d00004152sv00001787sd00004002* +- ID_MODEL_FROM_DATABASE=Radeon 9600 XT ++ ID_MODEL_FROM_DATABASE=RV360 [Radeon 9600/X1050 Series] (Radeon 9600 XT) + + pci:v00001002d00004153* + ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550] + + pci:v00001002d00004153sv00001043sd0000010C* +- ID_MODEL_FROM_DATABASE=A9550GE/TD ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550] (A9550GE/TD) + + pci:v00001002d00004153sv00001462sd0000932C* +- ID_MODEL_FROM_DATABASE=RX9550SE-TD128 (MS-8932) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550] (RX9550SE-TD128 (MS-8932)) + + pci:v00001002d00004154* + ID_MODEL_FROM_DATABASE=RV350 GL [FireGL T2] +@@ -1887,64 +1887,64 @@ pci:v00001002d00004170* + ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (Secondary) + + pci:v00001002d00004170sv00001002sd00000003* +- ID_MODEL_FROM_DATABASE=R9600 Pro secondary (Asus OEM for HP) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (Secondary) (R9600 Pro secondary (Asus OEM for HP)) + + pci:v00001002d00004170sv00001002sd00004723* +- ID_MODEL_FROM_DATABASE=All-in-Wonder 2006 AGP Edition (Secondary) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (Secondary) (All-in-Wonder 2006 AGP Edition (Secondary)) + + pci:v00001002d00004170sv00001458sd00004025* +- ID_MODEL_FROM_DATABASE=GV-R96128D (Secondary) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (Secondary) (GV-R96128D (Secondary)) + + pci:v00001002d00004170sv0000148Csd00002067* +- ID_MODEL_FROM_DATABASE=R96A-C3N (Secondary) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (Secondary) (R96A-C3N (Secondary)) + + pci:v00001002d00004170sv0000174Bsd00007C28* +- ID_MODEL_FROM_DATABASE=GC-R9600PRO (Secondary) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (Secondary) (GC-R9600PRO (Secondary)) + + pci:v00001002d00004170sv000017EEsd00002003* +- ID_MODEL_FROM_DATABASE=Radeon 9600 256Mb (Secondary) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (Secondary) (Radeon 9600 256Mb (Secondary)) + + pci:v00001002d00004170sv000018BCsd00000100* +- ID_MODEL_FROM_DATABASE=GC-R9600PRO (Secondary) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] (Secondary) (GC-R9600PRO (Secondary)) + + pci:v00001002d00004171* + ID_MODEL_FROM_DATABASE=RV350 [Radeon 9600] (Secondary) + + pci:v00001002d00004171sv00001043sd0000C005* +- ID_MODEL_FROM_DATABASE=A9600SE (Secondary) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9600] (Secondary) (A9600SE (Secondary)) + + pci:v00001002d00004172* + ID_MODEL_FROM_DATABASE=RV350 [Radeon 9600/X1050 Series] (Secondary) + + pci:v00001002d00004172sv00001002sd00000003* +- ID_MODEL_FROM_DATABASE=Radeon 9600XT (Secondary) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9600/X1050 Series] (Secondary) (Radeon 9600XT (Secondary)) + + pci:v00001002d00004172sv00001002sd00004773* +- ID_MODEL_FROM_DATABASE=All-in-Wonder 9600 XT (Secondary) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9600/X1050 Series] (Secondary) (All-in-Wonder 9600 XT (Secondary)) + + pci:v00001002d00004172sv00001043sd0000C003* +- ID_MODEL_FROM_DATABASE=A9600XT (Secondary) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9600/X1050 Series] (Secondary) (A9600XT (Secondary)) + + pci:v00001002d00004172sv00001043sd0000C01B* +- ID_MODEL_FROM_DATABASE=A9600XT/TD (Secondary) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9600/X1050 Series] (Secondary) (A9600XT/TD (Secondary)) + + pci:v00001002d00004172sv0000174Bsd00007C28* +- ID_MODEL_FROM_DATABASE=Radeon 9600XT (Secondary) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9600/X1050 Series] (Secondary) (Radeon 9600XT (Secondary)) + + pci:v00001002d00004172sv00001787sd00004003* +- ID_MODEL_FROM_DATABASE=Radeon 9600 XT (Secondary) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9600/X1050 Series] (Secondary) (Radeon 9600 XT (Secondary)) + + pci:v00001002d00004173* + ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550] (Secondary) + + pci:v00001002d00004173sv00001043sd0000010D* +- ID_MODEL_FROM_DATABASE=A9550GE/TD (Secondary) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550] (Secondary) (A9550GE/TD (Secondary)) + + pci:v00001002d00004242* + ID_MODEL_FROM_DATABASE=R200 [All-In-Wonder Radeon 8500 DV] + + pci:v00001002d00004242sv00001002sd000002AA* +- ID_MODEL_FROM_DATABASE=Radeon 8500 AIW DV Edition ++ ID_MODEL_FROM_DATABASE=R200 [All-In-Wonder Radeon 8500 DV] (Radeon 8500 AIW DV Edition) + + pci:v00001002d00004243* + ID_MODEL_FROM_DATABASE=R200 PCI Bridge [All-in-Wonder Radeon 8500DV] +@@ -1953,22 +1953,22 @@ pci:v00001002d00004336* + ID_MODEL_FROM_DATABASE=RS100 [Radeon IGP 320M] + + pci:v00001002d00004336sv00001002sd00004336* +- ID_MODEL_FROM_DATABASE=Pavilion ze4300 ATI Radeon Mobility U1 (IGP 320 M) ++ ID_MODEL_FROM_DATABASE=RS100 [Radeon IGP 320M] (Pavilion ze4300 ATI Radeon Mobility U1 (IGP 320 M)) + + pci:v00001002d00004336sv0000103Csd00000024* +- ID_MODEL_FROM_DATABASE=Pavilion ze4400 builtin Video ++ ID_MODEL_FROM_DATABASE=RS100 [Radeon IGP 320M] (Pavilion ze4400 builtin Video) + + pci:v00001002d00004336sv0000161Fsd00002029* +- ID_MODEL_FROM_DATABASE=eMachines M5312 builtin Video ++ ID_MODEL_FROM_DATABASE=RS100 [Radeon IGP 320M] (eMachines M5312 builtin Video) + + pci:v00001002d00004337* + ID_MODEL_FROM_DATABASE=RS200M [Radeon IGP 330M/340M/345M/350M] + + pci:v00001002d00004337sv00001014sd0000053A* +- ID_MODEL_FROM_DATABASE=ThinkPad R40e ++ ID_MODEL_FROM_DATABASE=RS200M [Radeon IGP 330M/340M/345M/350M] (ThinkPad R40e) + + pci:v00001002d00004337sv0000103Csd00000850* +- ID_MODEL_FROM_DATABASE=Radeon IGP 345M ++ ID_MODEL_FROM_DATABASE=RS200M [Radeon IGP 330M/340M/345M/350M] (Radeon IGP 345M) + + pci:v00001002d00004341* + ID_MODEL_FROM_DATABASE=IXP150 AC'97 Audio Controller +@@ -2013,160 +2013,160 @@ pci:v00001002d00004370* + ID_MODEL_FROM_DATABASE=IXP SB400 AC'97 Audio Controller + + pci:v00001002d00004370sv00001025sd00000079* +- ID_MODEL_FROM_DATABASE=Aspire 5024WLMMi ++ ID_MODEL_FROM_DATABASE=IXP SB400 AC'97 Audio Controller (Aspire 5024WLMMi) + + pci:v00001002d00004370sv00001025sd00000091* +- ID_MODEL_FROM_DATABASE=Aspire 5032WXMi ++ ID_MODEL_FROM_DATABASE=IXP SB400 AC'97 Audio Controller (Aspire 5032WXMi) + + pci:v00001002d00004370sv0000103Csd00002A05* +- ID_MODEL_FROM_DATABASE=Pavilion t3030.de Desktop PC ++ ID_MODEL_FROM_DATABASE=IXP SB400 AC'97 Audio Controller (Pavilion t3030.de Desktop PC) + + pci:v00001002d00004370sv0000103Csd0000308B* +- ID_MODEL_FROM_DATABASE=MX6125 ++ ID_MODEL_FROM_DATABASE=IXP SB400 AC'97 Audio Controller (MX6125) + + pci:v00001002d00004370sv0000105Bsd00000C81* +- ID_MODEL_FROM_DATABASE=Realtek ALC 653 ++ ID_MODEL_FROM_DATABASE=IXP SB400 AC'97 Audio Controller (Realtek ALC 653) + + pci:v00001002d00004370sv0000107Bsd00000300* +- ID_MODEL_FROM_DATABASE=MX6421 ++ ID_MODEL_FROM_DATABASE=IXP SB400 AC'97 Audio Controller (MX6421) + + pci:v00001002d00004370sv00001462sd00000131* +- ID_MODEL_FROM_DATABASE=MS-1013 Notebook ++ ID_MODEL_FROM_DATABASE=IXP SB400 AC'97 Audio Controller (MS-1013 Notebook) + + pci:v00001002d00004371* + ID_MODEL_FROM_DATABASE=IXP SB4x0 PCI-PCI Bridge + + pci:v00001002d00004371sv0000103Csd0000308B* +- ID_MODEL_FROM_DATABASE=MX6125 ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 PCI-PCI Bridge (MX6125) + + pci:v00001002d00004371sv00001462sd00007217* +- ID_MODEL_FROM_DATABASE=Aspire L250 ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 PCI-PCI Bridge (Aspire L250) + + pci:v00001002d00004372* + ID_MODEL_FROM_DATABASE=IXP SB4x0 SMBus Controller + + pci:v00001002d00004372sv00001025sd00000080* +- ID_MODEL_FROM_DATABASE=Aspire 5024WLMMi ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 SMBus Controller (Aspire 5024WLMMi) + + pci:v00001002d00004372sv0000103Csd00002A20* +- ID_MODEL_FROM_DATABASE=Pavilion t3030.de Desktop PC ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 SMBus Controller (Pavilion t3030.de Desktop PC) + + pci:v00001002d00004372sv0000103Csd0000308B* +- ID_MODEL_FROM_DATABASE=MX6125 ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 SMBus Controller (MX6125) + + pci:v00001002d00004372sv00001462sd00000131* +- ID_MODEL_FROM_DATABASE=MS-1013 Notebook ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 SMBus Controller (MS-1013 Notebook) + + pci:v00001002d00004372sv00001462sd00007217* +- ID_MODEL_FROM_DATABASE=Aspire L250 ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 SMBus Controller (Aspire L250) + + pci:v00001002d00004373* + ID_MODEL_FROM_DATABASE=IXP SB4x0 USB2 Host Controller + + pci:v00001002d00004373sv00001025sd00000080* +- ID_MODEL_FROM_DATABASE=Aspire 5024WLMMi ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 USB2 Host Controller (Aspire 5024WLMMi) + + pci:v00001002d00004373sv0000103Csd00002A20* +- ID_MODEL_FROM_DATABASE=Pavilion t3030.de Desktop PC ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 USB2 Host Controller (Pavilion t3030.de Desktop PC) + + pci:v00001002d00004373sv0000103Csd0000308B* +- ID_MODEL_FROM_DATABASE=MX6125 ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 USB2 Host Controller (MX6125) + + pci:v00001002d00004373sv00001462sd00007217* +- ID_MODEL_FROM_DATABASE=Aspire L250 ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 USB2 Host Controller (Aspire L250) + + pci:v00001002d00004374* + ID_MODEL_FROM_DATABASE=IXP SB4x0 USB Host Controller + + pci:v00001002d00004374sv0000103Csd00002A20* +- ID_MODEL_FROM_DATABASE=Pavilion t3030.de Desktop PC ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 USB Host Controller (Pavilion t3030.de Desktop PC) + + pci:v00001002d00004374sv0000103Csd0000308B* +- ID_MODEL_FROM_DATABASE=MX6125 ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 USB Host Controller (MX6125) + + pci:v00001002d00004374sv00001462sd00007217* +- ID_MODEL_FROM_DATABASE=Aspire L250 ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 USB Host Controller (Aspire L250) + + pci:v00001002d00004375* + ID_MODEL_FROM_DATABASE=IXP SB4x0 USB Host Controller + + pci:v00001002d00004375sv00001025sd00000080* +- ID_MODEL_FROM_DATABASE=Aspire 5024WLMMi ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 USB Host Controller (Aspire 5024WLMMi) + + pci:v00001002d00004375sv0000103Csd00002A20* +- ID_MODEL_FROM_DATABASE=Pavilion t3030.de Desktop PC ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 USB Host Controller (Pavilion t3030.de Desktop PC) + + pci:v00001002d00004375sv0000103Csd0000308B* +- ID_MODEL_FROM_DATABASE=MX6125 ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 USB Host Controller (MX6125) + + pci:v00001002d00004375sv00001462sd00007217* +- ID_MODEL_FROM_DATABASE=Aspire L250 ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 USB Host Controller (Aspire L250) + + pci:v00001002d00004376* + ID_MODEL_FROM_DATABASE=IXP SB4x0 IDE Controller + + pci:v00001002d00004376sv00001025sd00000080* +- ID_MODEL_FROM_DATABASE=Aspire 5024WLMMi ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 IDE Controller (Aspire 5024WLMMi) + + pci:v00001002d00004376sv0000103Csd00002A20* +- ID_MODEL_FROM_DATABASE=Pavilion t3030.de Desktop PC ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 IDE Controller (Pavilion t3030.de Desktop PC) + + pci:v00001002d00004376sv0000103Csd0000308B* +- ID_MODEL_FROM_DATABASE=MX6125 ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 IDE Controller (MX6125) + + pci:v00001002d00004376sv00001462sd00000131* +- ID_MODEL_FROM_DATABASE=MS-1013 Notebook ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 IDE Controller (MS-1013 Notebook) + + pci:v00001002d00004376sv00001462sd00007217* +- ID_MODEL_FROM_DATABASE=Aspire L250 ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 IDE Controller (Aspire L250) + + pci:v00001002d00004377* + ID_MODEL_FROM_DATABASE=IXP SB4x0 PCI-ISA Bridge + + pci:v00001002d00004377sv00001025sd00000080* +- ID_MODEL_FROM_DATABASE=Aspire 5024WLMi ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 PCI-ISA Bridge (Aspire 5024WLMi) + + pci:v00001002d00004377sv0000103Csd00002A20* +- ID_MODEL_FROM_DATABASE=Pavilion t3030.de Desktop PC ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 PCI-ISA Bridge (Pavilion t3030.de Desktop PC) + + pci:v00001002d00004377sv0000103Csd0000308B* +- ID_MODEL_FROM_DATABASE=MX6125 ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 PCI-ISA Bridge (MX6125) + + pci:v00001002d00004377sv00001462sd00007217* +- ID_MODEL_FROM_DATABASE=Aspire L250 ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 PCI-ISA Bridge (Aspire L250) + + pci:v00001002d00004378* + ID_MODEL_FROM_DATABASE=IXP SB400 AC'97 Modem Controller + + pci:v00001002d00004378sv00001025sd00000080* +- ID_MODEL_FROM_DATABASE=Aspire 5024WLMMi ++ ID_MODEL_FROM_DATABASE=IXP SB400 AC'97 Modem Controller (Aspire 5024WLMMi) + + pci:v00001002d00004378sv0000103Csd0000308B* +- ID_MODEL_FROM_DATABASE=MX6125 ++ ID_MODEL_FROM_DATABASE=IXP SB400 AC'97 Modem Controller (MX6125) + + pci:v00001002d00004378sv00001462sd00000131* +- ID_MODEL_FROM_DATABASE=MS-1013 Notebook ++ ID_MODEL_FROM_DATABASE=IXP SB400 AC'97 Modem Controller (MS-1013 Notebook) + + pci:v00001002d00004379* + ID_MODEL_FROM_DATABASE=IXP SB4x0 Serial ATA Controller + + pci:v00001002d00004379sv00001462sd00007141* +- ID_MODEL_FROM_DATABASE=Aspire L250 ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 Serial ATA Controller (Aspire L250) + + pci:v00001002d0000437A* + ID_MODEL_FROM_DATABASE=IXP SB400 Serial ATA Controller + + pci:v00001002d0000437Asv00001002sd00004379* +- ID_MODEL_FROM_DATABASE=4379 Serial ATA Controller ++ ID_MODEL_FROM_DATABASE=IXP SB400 Serial ATA Controller (4379 Serial ATA Controller) + + pci:v00001002d0000437Asv00001002sd0000437A* +- ID_MODEL_FROM_DATABASE=437A Serial ATA Controller ++ ID_MODEL_FROM_DATABASE=IXP SB400 Serial ATA Controller (437A Serial ATA Controller) + + pci:v00001002d0000437Asv00001462sd00007141* +- ID_MODEL_FROM_DATABASE=Aspire L250 ++ ID_MODEL_FROM_DATABASE=IXP SB400 Serial ATA Controller (Aspire L250) + + pci:v00001002d0000437Asv000014F1sd00008800* +- ID_MODEL_FROM_DATABASE=Leadtek WinFast TV2000XP Expert ++ ID_MODEL_FROM_DATABASE=IXP SB400 Serial ATA Controller (Leadtek WinFast TV2000XP Expert) + + pci:v00001002d0000437B* + ID_MODEL_FROM_DATABASE=IXP SB4x0 High Definition Audio Controller +@@ -2175,31 +2175,31 @@ pci:v00001002d0000437Bsv00001002sd0000437B* + ID_MODEL_FROM_DATABASE=IXP SB4x0 High Definition Audio Controller + + pci:v00001002d0000437Bsv000010CFsd00001326* +- ID_MODEL_FROM_DATABASE=Fujitsu Lifebook A3040 ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 High Definition Audio Controller (Fujitsu Lifebook A3040) + + pci:v00001002d0000437Bsv00001734sd000010B8* +- ID_MODEL_FROM_DATABASE=Realtek High Definition Audio ++ ID_MODEL_FROM_DATABASE=IXP SB4x0 High Definition Audio Controller (Realtek High Definition Audio) + + pci:v00001002d00004380* + ID_MODEL_FROM_DATABASE=SB600 Non-Raid-5 SATA + + pci:v00001002d00004380sv0000103Csd00002813* +- ID_MODEL_FROM_DATABASE=DC5750 Microtower ++ ID_MODEL_FROM_DATABASE=SB600 Non-Raid-5 SATA (DC5750 Microtower) + + pci:v00001002d00004380sv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=SB600 Non-Raid-5 SATA (Satellite P305D-S8995E) + + pci:v00001002d00004380sv00001458sd0000B003* +- ID_MODEL_FROM_DATABASE=GA-MA790FX-DS5 (rev. 1.0) ++ ID_MODEL_FROM_DATABASE=SB600 Non-Raid-5 SATA (GA-MA790FX-DS5 (rev. 1.0)) + + pci:v00001002d00004380sv00001458sd0000B005* +- ID_MODEL_FROM_DATABASE=Gigabyte GA-MA69G-S3H Motherboard ++ ID_MODEL_FROM_DATABASE=SB600 Non-Raid-5 SATA (Gigabyte GA-MA69G-S3H Motherboard) + + pci:v00001002d00004380sv00001462sd00007327* +- ID_MODEL_FROM_DATABASE=K9AG Neo2 ++ ID_MODEL_FROM_DATABASE=SB600 Non-Raid-5 SATA (K9AG Neo2) + + pci:v00001002d00004380sv000017F2sd00005999* +- ID_MODEL_FROM_DATABASE=KI690-AM2 Motherboard ++ ID_MODEL_FROM_DATABASE=SB600 Non-Raid-5 SATA (KI690-AM2 Motherboard) + + pci:v00001002d00004381* + ID_MODEL_FROM_DATABASE=SB600 SATA Controller (RAID 5 mode) +@@ -2211,34 +2211,34 @@ pci:v00001002d00004383* + ID_MODEL_FROM_DATABASE=SBx00 Azalia (Intel HDA) + + pci:v00001002d00004383sv00001019sd00002120* +- ID_MODEL_FROM_DATABASE=A785GM-M ++ ID_MODEL_FROM_DATABASE=SBx00 Azalia (Intel HDA) (A785GM-M) + + pci:v00001002d00004383sv0000103Csd00001611* +- ID_MODEL_FROM_DATABASE=Pavilion DM1Z-3000 ++ ID_MODEL_FROM_DATABASE=SBx00 Azalia (Intel HDA) (Pavilion DM1Z-3000) + + pci:v00001002d00004383sv0000103Csd0000280A* +- ID_MODEL_FROM_DATABASE=DC5750 Microtower ++ ID_MODEL_FROM_DATABASE=SBx00 Azalia (Intel HDA) (DC5750 Microtower) + + pci:v00001002d00004383sv00001043sd00008230* +- ID_MODEL_FROM_DATABASE=M3A78-EH Motherboard ++ ID_MODEL_FROM_DATABASE=SBx00 Azalia (Intel HDA) (M3A78-EH Motherboard) + + pci:v00001002d00004383sv00001043sd0000836C* +- ID_MODEL_FROM_DATABASE=M4A785TD Motherboard ++ ID_MODEL_FROM_DATABASE=SBx00 Azalia (Intel HDA) (M4A785TD Motherboard) + + pci:v00001002d00004383sv00001043sd00008410* +- ID_MODEL_FROM_DATABASE=M4A89GTD PRO/USB3 Motherboard ++ ID_MODEL_FROM_DATABASE=SBx00 Azalia (Intel HDA) (M4A89GTD PRO/USB3 Motherboard) + + pci:v00001002d00004383sv00001043sd0000841B* +- ID_MODEL_FROM_DATABASE=M5A88-V EVO ++ ID_MODEL_FROM_DATABASE=SBx00 Azalia (Intel HDA) (M5A88-V EVO) + + pci:v00001002d00004383sv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=SBx00 Azalia (Intel HDA) (Satellite P305D-S8995E) + + pci:v00001002d00004383sv00001458sd0000A022* +- ID_MODEL_FROM_DATABASE=GA-MA770-DS3rev2.0 Motherboard ++ ID_MODEL_FROM_DATABASE=SBx00 Azalia (Intel HDA) (GA-MA770-DS3rev2.0 Motherboard) + + pci:v00001002d00004383sv000017F2sd00005000* +- ID_MODEL_FROM_DATABASE=KI690-AM2 Motherboard ++ ID_MODEL_FROM_DATABASE=SBx00 Azalia (Intel HDA) (KI690-AM2 Motherboard) + + pci:v00001002d00004384* + ID_MODEL_FROM_DATABASE=SBx00 PCI to PCI Bridge +@@ -2247,160 +2247,160 @@ pci:v00001002d00004385* + ID_MODEL_FROM_DATABASE=SBx00 SMBus Controller + + pci:v00001002d00004385sv00001019sd00002120* +- ID_MODEL_FROM_DATABASE=A785GM-M ++ ID_MODEL_FROM_DATABASE=SBx00 SMBus Controller (A785GM-M) + + pci:v00001002d00004385sv0000103Csd00001611* +- ID_MODEL_FROM_DATABASE=Pavilion DM1Z-3000 ++ ID_MODEL_FROM_DATABASE=SBx00 SMBus Controller (Pavilion DM1Z-3000) + + pci:v00001002d00004385sv0000103Csd0000280A* +- ID_MODEL_FROM_DATABASE=DC5750 Microtower ++ ID_MODEL_FROM_DATABASE=SBx00 SMBus Controller (DC5750 Microtower) + + pci:v00001002d00004385sv00001043sd000082EF* +- ID_MODEL_FROM_DATABASE=M3A78-EH Motherboard ++ ID_MODEL_FROM_DATABASE=SBx00 SMBus Controller (M3A78-EH Motherboard) + + pci:v00001002d00004385sv00001043sd00008389* +- ID_MODEL_FROM_DATABASE=M4A785TD Motherboard ++ ID_MODEL_FROM_DATABASE=SBx00 SMBus Controller (M4A785TD Motherboard) + + pci:v00001002d00004385sv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=SBx00 SMBus Controller (Satellite P305D-S8995E) + + pci:v00001002d00004385sv00001458sd00004385* +- ID_MODEL_FROM_DATABASE=GA-MA770-DS3rev2.0 Motherboard ++ ID_MODEL_FROM_DATABASE=SBx00 SMBus Controller (GA-MA770-DS3rev2.0 Motherboard) + + pci:v00001002d00004385sv00001462sd00007368* +- ID_MODEL_FROM_DATABASE=K9AG Neo2 ++ ID_MODEL_FROM_DATABASE=SBx00 SMBus Controller (K9AG Neo2) + + pci:v00001002d00004385sv000015D9sd0000A811* +- ID_MODEL_FROM_DATABASE=H8DGU ++ ID_MODEL_FROM_DATABASE=SBx00 SMBus Controller (H8DGU) + + pci:v00001002d00004385sv0000174Bsd00001001* +- ID_MODEL_FROM_DATABASE=PURE Fusion Mini ++ ID_MODEL_FROM_DATABASE=SBx00 SMBus Controller (PURE Fusion Mini) + + pci:v00001002d00004385sv000017F2sd00005000* +- ID_MODEL_FROM_DATABASE=KI690-AM2 Motherboard ++ ID_MODEL_FROM_DATABASE=SBx00 SMBus Controller (KI690-AM2 Motherboard) + + pci:v00001002d00004386* + ID_MODEL_FROM_DATABASE=SB600 USB Controller (EHCI) + + pci:v00001002d00004386sv0000103Csd0000280A* +- ID_MODEL_FROM_DATABASE=DC5750 Microtower ++ ID_MODEL_FROM_DATABASE=SB600 USB Controller (EHCI) (DC5750 Microtower) + + pci:v00001002d00004386sv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=SB600 USB Controller (EHCI) (Satellite P305D-S8995E) + + pci:v00001002d00004386sv00001462sd00007368* +- ID_MODEL_FROM_DATABASE=K9AG Neo2 ++ ID_MODEL_FROM_DATABASE=SB600 USB Controller (EHCI) (K9AG Neo2) + + pci:v00001002d00004386sv000017F2sd00005000* +- ID_MODEL_FROM_DATABASE=KI690-AM2 Motherboard ++ ID_MODEL_FROM_DATABASE=SB600 USB Controller (EHCI) (KI690-AM2 Motherboard) + + pci:v00001002d00004387* + ID_MODEL_FROM_DATABASE=SB600 USB (OHCI0) + + pci:v00001002d00004387sv0000103Csd0000280A* +- ID_MODEL_FROM_DATABASE=DC5750 Microtower ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI0) (DC5750 Microtower) + + pci:v00001002d00004387sv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI0) (Satellite P305D-S8995E) + + pci:v00001002d00004387sv00001462sd00007368* +- ID_MODEL_FROM_DATABASE=K9AG Neo2 ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI0) (K9AG Neo2) + + pci:v00001002d00004387sv000017F2sd00005000* +- ID_MODEL_FROM_DATABASE=KI690-AM2 Motherboard ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI0) (KI690-AM2 Motherboard) + + pci:v00001002d00004388* + ID_MODEL_FROM_DATABASE=SB600 USB (OHCI1) + + pci:v00001002d00004388sv0000103Csd0000280A* +- ID_MODEL_FROM_DATABASE=DC5750 Microtower ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI1) (DC5750 Microtower) + + pci:v00001002d00004388sv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI1) (Satellite P305D-S8995E) + + pci:v00001002d00004388sv00001462sd00007368* +- ID_MODEL_FROM_DATABASE=K9AG Neo2 ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI1) (K9AG Neo2) + + pci:v00001002d00004388sv000017F2sd00005000* +- ID_MODEL_FROM_DATABASE=KI690-AM2 Motherboard ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI1) (KI690-AM2 Motherboard) + + pci:v00001002d00004389* + ID_MODEL_FROM_DATABASE=SB600 USB (OHCI2) + + pci:v00001002d00004389sv0000103Csd0000280A* +- ID_MODEL_FROM_DATABASE=DC5750 Microtower ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI2) (DC5750 Microtower) + + pci:v00001002d00004389sv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI2) (Satellite P305D-S8995E) + + pci:v00001002d00004389sv00001462sd00007368* +- ID_MODEL_FROM_DATABASE=K9AG Neo2 ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI2) (K9AG Neo2) + + pci:v00001002d00004389sv000017F2sd00005000* +- ID_MODEL_FROM_DATABASE=KI690-AM2 Motherboard ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI2) (KI690-AM2 Motherboard) + + pci:v00001002d0000438A* + ID_MODEL_FROM_DATABASE=SB600 USB (OHCI3) + + pci:v00001002d0000438Asv0000103Csd0000280A* +- ID_MODEL_FROM_DATABASE=DC5750 Microtower ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI3) (DC5750 Microtower) + + pci:v00001002d0000438Asv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI3) (Satellite P305D-S8995E) + + pci:v00001002d0000438Asv00001462sd00007368* +- ID_MODEL_FROM_DATABASE=K9AG Neo2 ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI3) (K9AG Neo2) + + pci:v00001002d0000438Asv000017F2sd00005000* +- ID_MODEL_FROM_DATABASE=KI690-AM2 Motherboard ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI3) (KI690-AM2 Motherboard) + + pci:v00001002d0000438B* + ID_MODEL_FROM_DATABASE=SB600 USB (OHCI4) + + pci:v00001002d0000438Bsv0000103Csd0000280A* +- ID_MODEL_FROM_DATABASE=DC5750 Microtower ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI4) (DC5750 Microtower) + + pci:v00001002d0000438Bsv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI4) (Satellite P305D-S8995E) + + pci:v00001002d0000438Bsv00001462sd00007368* +- ID_MODEL_FROM_DATABASE=K9AG Neo2 ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI4) (K9AG Neo2) + + pci:v00001002d0000438Bsv000017F2sd00005000* +- ID_MODEL_FROM_DATABASE=KI690-AM2 Motherboard ++ ID_MODEL_FROM_DATABASE=SB600 USB (OHCI4) (KI690-AM2 Motherboard) + + pci:v00001002d0000438C* + ID_MODEL_FROM_DATABASE=SB600 IDE + + pci:v00001002d0000438Csv0000103Csd0000280A* +- ID_MODEL_FROM_DATABASE=DC5750 Microtower ++ ID_MODEL_FROM_DATABASE=SB600 IDE (DC5750 Microtower) + + pci:v00001002d0000438Csv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=SB600 IDE (Satellite P305D-S8995E) + + pci:v00001002d0000438Csv00001458sd00005002* +- ID_MODEL_FROM_DATABASE=Gigabyte GA-MA69G-S3H Motherboard ++ ID_MODEL_FROM_DATABASE=SB600 IDE (Gigabyte GA-MA69G-S3H Motherboard) + + pci:v00001002d0000438Csv00001462sd00007368* +- ID_MODEL_FROM_DATABASE=K9AG Neo2 ++ ID_MODEL_FROM_DATABASE=SB600 IDE (K9AG Neo2) + + pci:v00001002d0000438Csv000017F2sd00005000* +- ID_MODEL_FROM_DATABASE=KI690-AM2 Motherboard ++ ID_MODEL_FROM_DATABASE=SB600 IDE (KI690-AM2 Motherboard) + + pci:v00001002d0000438D* + ID_MODEL_FROM_DATABASE=SB600 PCI to LPC Bridge + + pci:v00001002d0000438Dsv0000103Csd0000280A* +- ID_MODEL_FROM_DATABASE=DC5750 Microtower ++ ID_MODEL_FROM_DATABASE=SB600 PCI to LPC Bridge (DC5750 Microtower) + + pci:v00001002d0000438Dsv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=SB600 PCI to LPC Bridge (Satellite P305D-S8995E) + + pci:v00001002d0000438Dsv00001462sd00007368* +- ID_MODEL_FROM_DATABASE=K9AG Neo2 ++ ID_MODEL_FROM_DATABASE=SB600 PCI to LPC Bridge (K9AG Neo2) + + pci:v00001002d0000438Dsv000017F2sd00005000* +- ID_MODEL_FROM_DATABASE=KI690-AM2 Motherboard ++ ID_MODEL_FROM_DATABASE=SB600 PCI to LPC Bridge (KI690-AM2 Motherboard) + + pci:v00001002d0000438E* + ID_MODEL_FROM_DATABASE=SB600 AC97 Modem +@@ -2409,31 +2409,31 @@ pci:v00001002d00004390* + ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 SATA Controller [IDE mode] + + pci:v00001002d00004390sv00001043sd000082EF* +- ID_MODEL_FROM_DATABASE=M3A78-EH Motherboard ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 SATA Controller [IDE mode] (M3A78-EH Motherboard) + + pci:v00001002d00004390sv00001043sd00008389* +- ID_MODEL_FROM_DATABASE=M4A785TD Motherboard ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 SATA Controller [IDE mode] (M4A785TD Motherboard) + + pci:v00001002d00004390sv00001458sd0000B002* +- ID_MODEL_FROM_DATABASE=GA-MA770-DS3rev2.0 Motherboard ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 SATA Controller [IDE mode] (GA-MA770-DS3rev2.0 Motherboard) + + pci:v00001002d00004390sv00001849sd00004390* +- ID_MODEL_FROM_DATABASE=Motherboard (one of many) ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 SATA Controller [IDE mode] (Motherboard (one of many)) + + pci:v00001002d00004391* + ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode] + + pci:v00001002d00004391sv0000103Csd00001611* +- ID_MODEL_FROM_DATABASE=Pavilion DM1Z-3000 ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode] (Pavilion DM1Z-3000) + + pci:v00001002d00004391sv00001043sd000082EF* +- ID_MODEL_FROM_DATABASE=M3A78-EH Motherboard ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode] (M3A78-EH Motherboard) + + pci:v00001002d00004391sv00001043sd00008443* +- ID_MODEL_FROM_DATABASE=M5A88-V EVO ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode] (M5A88-V EVO) + + pci:v00001002d00004391sv0000174Bsd00001001* +- ID_MODEL_FROM_DATABASE=PURE Fusion Mini ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode] (PURE Fusion Mini) + + pci:v00001002d00004392* + ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 SATA Controller [Non-RAID5 mode] +@@ -2451,97 +2451,97 @@ pci:v00001002d00004396* + ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB EHCI Controller + + pci:v00001002d00004396sv00001019sd00002120* +- ID_MODEL_FROM_DATABASE=A785GM-M ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB EHCI Controller (A785GM-M) + + pci:v00001002d00004396sv0000103Csd00001611* +- ID_MODEL_FROM_DATABASE=Pavilion DM1Z-3000 ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB EHCI Controller (Pavilion DM1Z-3000) + + pci:v00001002d00004396sv00001043sd000082EF* +- ID_MODEL_FROM_DATABASE=M3A78-EH Motherboard ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB EHCI Controller (M3A78-EH Motherboard) + + pci:v00001002d00004396sv00001043sd00008443* +- ID_MODEL_FROM_DATABASE=M5A88-V EVO ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB EHCI Controller (M5A88-V EVO) + + pci:v00001002d00004396sv000015D9sd0000A811* +- ID_MODEL_FROM_DATABASE=H8DGU ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB EHCI Controller (H8DGU) + + pci:v00001002d00004396sv0000174Bsd00001001* +- ID_MODEL_FROM_DATABASE=PURE Fusion Mini ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB EHCI Controller (PURE Fusion Mini) + + pci:v00001002d00004397* + ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB OHCI0 Controller + + pci:v00001002d00004397sv00001019sd00002120* +- ID_MODEL_FROM_DATABASE=A785GM-M ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB OHCI0 Controller (A785GM-M) + + pci:v00001002d00004397sv0000103Csd00001611* +- ID_MODEL_FROM_DATABASE=Pavilion DM1Z-3000 ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB OHCI0 Controller (Pavilion DM1Z-3000) + + pci:v00001002d00004397sv00001043sd000082EF* +- ID_MODEL_FROM_DATABASE=M3A78-EH Motherboard ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB OHCI0 Controller (M3A78-EH Motherboard) + + pci:v00001002d00004397sv00001043sd00008443* +- ID_MODEL_FROM_DATABASE=M5A88-V EVO ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB OHCI0 Controller (M5A88-V EVO) + + pci:v00001002d00004397sv000015D9sd0000A811* +- ID_MODEL_FROM_DATABASE=H8DGU ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB OHCI0 Controller (H8DGU) + + pci:v00001002d00004397sv0000174Bsd00001001* +- ID_MODEL_FROM_DATABASE=PURE Fusion Mini ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB OHCI0 Controller (PURE Fusion Mini) + + pci:v00001002d00004398* + ID_MODEL_FROM_DATABASE=SB7x0 USB OHCI1 Controller + + pci:v00001002d00004398sv00001019sd00002120* +- ID_MODEL_FROM_DATABASE=A785GM-M ++ ID_MODEL_FROM_DATABASE=SB7x0 USB OHCI1 Controller (A785GM-M) + + pci:v00001002d00004398sv00001043sd000082EF* +- ID_MODEL_FROM_DATABASE=M3A78-EH Motherboard ++ ID_MODEL_FROM_DATABASE=SB7x0 USB OHCI1 Controller (M3A78-EH Motherboard) + + pci:v00001002d00004398sv000015D9sd0000A811* +- ID_MODEL_FROM_DATABASE=H8DGU ++ ID_MODEL_FROM_DATABASE=SB7x0 USB OHCI1 Controller (H8DGU) + + pci:v00001002d00004399* + ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB OHCI2 Controller + + pci:v00001002d00004399sv00001019sd00002120* +- ID_MODEL_FROM_DATABASE=A785GM-M ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB OHCI2 Controller (A785GM-M) + + pci:v00001002d00004399sv00001043sd000082EF* +- ID_MODEL_FROM_DATABASE=M3A78-EH Motherboard ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB OHCI2 Controller (M3A78-EH Motherboard) + + pci:v00001002d00004399sv00001043sd00008443* +- ID_MODEL_FROM_DATABASE=M5A88-V EVO ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB OHCI2 Controller (M5A88-V EVO) + + pci:v00001002d00004399sv0000174Bsd00001001* +- ID_MODEL_FROM_DATABASE=PURE Fusion Mini ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 USB OHCI2 Controller (PURE Fusion Mini) + + pci:v00001002d0000439C* + ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 IDE Controller + + pci:v00001002d0000439Csv00001019sd00002120* +- ID_MODEL_FROM_DATABASE=A785GM-M ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 IDE Controller (A785GM-M) + + pci:v00001002d0000439Csv00001043sd000082EF* +- ID_MODEL_FROM_DATABASE=M3A78-EH Motherboard ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 IDE Controller (M3A78-EH Motherboard) + + pci:v00001002d0000439D* + ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 LPC host controller + + pci:v00001002d0000439Dsv00001019sd00002120* +- ID_MODEL_FROM_DATABASE=A785GM-M ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 LPC host controller (A785GM-M) + + pci:v00001002d0000439Dsv0000103Csd00001611* +- ID_MODEL_FROM_DATABASE=Pavilion DM1Z-3000 ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 LPC host controller (Pavilion DM1Z-3000) + + pci:v00001002d0000439Dsv00001043sd000082EF* +- ID_MODEL_FROM_DATABASE=M3A78-EH Motherboard ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 LPC host controller (M3A78-EH Motherboard) + + pci:v00001002d0000439Dsv00001043sd00008443* +- ID_MODEL_FROM_DATABASE=M5A88-V EVO ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 LPC host controller (M5A88-V EVO) + + pci:v00001002d0000439Dsv0000174Bsd00001001* +- ID_MODEL_FROM_DATABASE=PURE Fusion Mini ++ ID_MODEL_FROM_DATABASE=SB7x0/SB8x0/SB9x0 LPC host controller (PURE Fusion Mini) + + pci:v00001002d000043A0* + ID_MODEL_FROM_DATABASE=SB700/SB800/SB900 PCI to PCI bridge (PCIE port 0) +@@ -2568,88 +2568,88 @@ pci:v00001002d00004742* + ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 2X + + pci:v00001002d00004742sv00001002sd00000040* +- ID_MODEL_FROM_DATABASE=Rage Pro Turbo AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 2X (Rage Pro Turbo AGP 2X) + + pci:v00001002d00004742sv00001002sd00000044* +- ID_MODEL_FROM_DATABASE=Rage Pro Turbo AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 2X (Rage Pro Turbo AGP 2X) + + pci:v00001002d00004742sv00001002sd00000061* +- ID_MODEL_FROM_DATABASE=Rage Pro AIW AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 2X (Rage Pro AIW AGP 2X) + + pci:v00001002d00004742sv00001002sd00000062* +- ID_MODEL_FROM_DATABASE=Rage Pro AIW AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 2X (Rage Pro AIW AGP 2X) + + pci:v00001002d00004742sv00001002sd00000063* +- ID_MODEL_FROM_DATABASE=Rage Pro AIW AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 2X (Rage Pro AIW AGP 2X) + + pci:v00001002d00004742sv00001002sd00000080* +- ID_MODEL_FROM_DATABASE=Rage Pro Turbo AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 2X (Rage Pro Turbo AGP 2X) + + pci:v00001002d00004742sv00001002sd00000084* +- ID_MODEL_FROM_DATABASE=Rage Pro Turbo AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 2X (Rage Pro Turbo AGP 2X) + + pci:v00001002d00004742sv00001002sd00004742* +- ID_MODEL_FROM_DATABASE=Rage Pro Turbo AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 2X (Rage Pro Turbo AGP 2X) + + pci:v00001002d00004742sv00001002sd00008001* +- ID_MODEL_FROM_DATABASE=Rage Pro Turbo AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 2X (Rage Pro Turbo AGP 2X) + + pci:v00001002d00004742sv00001028sd00000082* +- ID_MODEL_FROM_DATABASE=Rage Pro Turbo AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 2X (Rage Pro Turbo AGP 2X) + + pci:v00001002d00004742sv00001028sd00004082* +- ID_MODEL_FROM_DATABASE=Optiplex GX1 Onboard Display Adapter ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 2X (Optiplex GX1 Onboard Display Adapter) + + pci:v00001002d00004742sv00001028sd00008082* +- ID_MODEL_FROM_DATABASE=Rage Pro Turbo AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 2X (Rage Pro Turbo AGP 2X) + + pci:v00001002d00004742sv00001028sd0000C082* +- ID_MODEL_FROM_DATABASE=Rage Pro Turbo AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 2X (Rage Pro Turbo AGP 2X) + + pci:v00001002d00004742sv00008086sd00004152* +- ID_MODEL_FROM_DATABASE=Xpert 98D AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 2X (Xpert 98D AGP 2X) + + pci:v00001002d00004742sv00008086sd0000464A* +- ID_MODEL_FROM_DATABASE=Rage Pro Turbo AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 2X (Rage Pro Turbo AGP 2X) + + pci:v00001002d00004744* + ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 1X + + pci:v00001002d00004744sv00001002sd00004744* +- ID_MODEL_FROM_DATABASE=Rage Pro Turbo AGP ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 1X (Rage Pro Turbo AGP) + + pci:v00001002d00004744sv00008086sd00004D55* +- ID_MODEL_FROM_DATABASE=Rage 3D Pro AGP 1X [Intel MU440EX] ++ ID_MODEL_FROM_DATABASE=3D Rage PRO AGP 1X (Rage 3D Pro AGP 1X [Intel MU440EX]) + + pci:v00001002d00004749* + ID_MODEL_FROM_DATABASE=3D Rage PRO PCI + + pci:v00001002d00004749sv00001002sd00000061* +- ID_MODEL_FROM_DATABASE=Rage Pro AIW ++ ID_MODEL_FROM_DATABASE=3D Rage PRO PCI (Rage Pro AIW) + + pci:v00001002d00004749sv00001002sd00000062* +- ID_MODEL_FROM_DATABASE=Rage Pro AIW ++ ID_MODEL_FROM_DATABASE=3D Rage PRO PCI (Rage Pro AIW) + + pci:v00001002d0000474D* + ID_MODEL_FROM_DATABASE=Rage XL AGP 2X + + pci:v00001002d0000474Dsv00001002sd00000004* +- ID_MODEL_FROM_DATABASE=Xpert 98 RXL AGP 2X ++ ID_MODEL_FROM_DATABASE=Rage XL AGP 2X (Xpert 98 RXL AGP 2X) + + pci:v00001002d0000474Dsv00001002sd00000008* +- ID_MODEL_FROM_DATABASE=Xpert 98 RXL AGP 2X ++ ID_MODEL_FROM_DATABASE=Rage XL AGP 2X (Xpert 98 RXL AGP 2X) + + pci:v00001002d0000474Dsv00001002sd00000080* + ID_MODEL_FROM_DATABASE=Rage XL AGP 2X + + pci:v00001002d0000474Dsv00001002sd00000084* +- ID_MODEL_FROM_DATABASE=Xpert 98 AGP 2X ++ ID_MODEL_FROM_DATABASE=Rage XL AGP 2X (Xpert 98 AGP 2X) + + pci:v00001002d0000474Dsv00001002sd0000474D* +- ID_MODEL_FROM_DATABASE=Rage XL AGP ++ ID_MODEL_FROM_DATABASE=Rage XL AGP 2X (Rage XL AGP) + + pci:v00001002d0000474Dsv00001033sd0000806A* +- ID_MODEL_FROM_DATABASE=Rage XL AGP ++ ID_MODEL_FROM_DATABASE=Rage XL AGP 2X (Rage XL AGP) + + pci:v00001002d0000474E* + ID_MODEL_FROM_DATABASE=Rage XC AGP +@@ -2670,79 +2670,79 @@ pci:v00001002d00004750* + ID_MODEL_FROM_DATABASE=3D Rage Pro PCI + + pci:v00001002d00004750sv00001002sd00000040* +- ID_MODEL_FROM_DATABASE=Rage Pro Turbo ++ ID_MODEL_FROM_DATABASE=3D Rage Pro PCI (Rage Pro Turbo) + + pci:v00001002d00004750sv00001002sd00000044* +- ID_MODEL_FROM_DATABASE=Rage Pro Turbo ++ ID_MODEL_FROM_DATABASE=3D Rage Pro PCI (Rage Pro Turbo) + + pci:v00001002d00004750sv00001002sd00000080* +- ID_MODEL_FROM_DATABASE=Rage Pro Turbo ++ ID_MODEL_FROM_DATABASE=3D Rage Pro PCI (Rage Pro Turbo) + + pci:v00001002d00004750sv00001002sd00000084* +- ID_MODEL_FROM_DATABASE=Rage Pro Turbo ++ ID_MODEL_FROM_DATABASE=3D Rage Pro PCI (Rage Pro Turbo) + + pci:v00001002d00004750sv00001002sd00004750* +- ID_MODEL_FROM_DATABASE=Rage Pro Turbo ++ ID_MODEL_FROM_DATABASE=3D Rage Pro PCI (Rage Pro Turbo) + + pci:v00001002d00004752* + ID_MODEL_FROM_DATABASE=Rage XL PCI + + pci:v00001002d00004752sv00000E11sd0000001E* +- ID_MODEL_FROM_DATABASE=Proliant Rage XL ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (Proliant Rage XL) + + pci:v00001002d00004752sv00001002sd00000008* +- ID_MODEL_FROM_DATABASE=Rage XL ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (Rage XL) + + pci:v00001002d00004752sv00001002sd00004752* +- ID_MODEL_FROM_DATABASE=Proliant Rage XL ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (Proliant Rage XL) + + pci:v00001002d00004752sv00001002sd00008008* +- ID_MODEL_FROM_DATABASE=Rage XL ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (Rage XL) + + pci:v00001002d00004752sv00001014sd00000240* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (eServer xSeries server mainboard) + + pci:v00001002d00004752sv00001028sd000000CE* +- ID_MODEL_FROM_DATABASE=PowerEdge 1400 ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (PowerEdge 1400) + + pci:v00001002d00004752sv00001028sd000000D1* +- ID_MODEL_FROM_DATABASE=PowerEdge 2550 ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (PowerEdge 2550) + + pci:v00001002d00004752sv00001028sd000000D9* +- ID_MODEL_FROM_DATABASE=PowerEdge 2500 ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (PowerEdge 2500) + + pci:v00001002d00004752sv00001028sd00000134* +- ID_MODEL_FROM_DATABASE=PowerEdge 600SC ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (PowerEdge 600SC) + + pci:v00001002d00004752sv00001028sd0000014A* +- ID_MODEL_FROM_DATABASE=PowerEdge 1750 ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (PowerEdge 1750) + + pci:v00001002d00004752sv00001028sd00000165* +- ID_MODEL_FROM_DATABASE=PowerEdge 750 ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (PowerEdge 750) + + pci:v00001002d00004752sv0000103Csd000010E1* +- ID_MODEL_FROM_DATABASE=NetServer Rage XL ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (NetServer Rage XL) + + pci:v00001002d00004752sv0000103Csd00003208* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G2 ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (ProLiant DL140 G2) + + pci:v00001002d00004752sv0000107Bsd00006400* +- ID_MODEL_FROM_DATABASE=6400 Server ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (6400 Server) + + pci:v00001002d00004752sv00001734sd0000007A* +- ID_MODEL_FROM_DATABASE=PRIMERGY RX/TX series onboard VGA ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (PRIMERGY RX/TX series onboard VGA) + + pci:v00001002d00004752sv00001734sd00001073* +- ID_MODEL_FROM_DATABASE=Primergy Econel 200 D2020 mainboard ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (Primergy Econel 200 D2020 mainboard) + + pci:v00001002d00004752sv00008086sd00003411* +- ID_MODEL_FROM_DATABASE=SDS2 Mainboard ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (SDS2 Mainboard) + + pci:v00001002d00004752sv00008086sd00003427* +- ID_MODEL_FROM_DATABASE=S875WP1-E mainboard ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (S875WP1-E mainboard) + + pci:v00001002d00004752sv00008086sd00005744* +- ID_MODEL_FROM_DATABASE=S845WD1-E mainboard ++ ID_MODEL_FROM_DATABASE=Rage XL PCI (S845WD1-E mainboard) + + pci:v00001002d00004753* + ID_MODEL_FROM_DATABASE=Rage XC +@@ -2760,28 +2760,28 @@ pci:v00001002d00004756* + ID_MODEL_FROM_DATABASE=3D Rage IIC PCI [Mach64 GT IIC] + + pci:v00001002d00004756sv00001002sd00004756* +- ID_MODEL_FROM_DATABASE=Rage IIC ++ ID_MODEL_FROM_DATABASE=3D Rage IIC PCI [Mach64 GT IIC] (Rage IIC) + + pci:v00001002d00004757* + ID_MODEL_FROM_DATABASE=3D Rage IIC AGP + + pci:v00001002d00004757sv00001002sd00004757* +- ID_MODEL_FROM_DATABASE=Rage IIC AGP ++ ID_MODEL_FROM_DATABASE=3D Rage IIC AGP (Rage IIC AGP) + + pci:v00001002d00004757sv00001028sd00000089* +- ID_MODEL_FROM_DATABASE=Rage 3D IIC ++ ID_MODEL_FROM_DATABASE=3D Rage IIC AGP (Rage 3D IIC) + + pci:v00001002d00004757sv00001028sd0000008E* +- ID_MODEL_FROM_DATABASE=PowerEdge 1300 onboard video ++ ID_MODEL_FROM_DATABASE=3D Rage IIC AGP (PowerEdge 1300 onboard video) + + pci:v00001002d00004757sv00001028sd00004082* +- ID_MODEL_FROM_DATABASE=Rage 3D IIC ++ ID_MODEL_FROM_DATABASE=3D Rage IIC AGP (Rage 3D IIC) + + pci:v00001002d00004757sv00001028sd00008082* +- ID_MODEL_FROM_DATABASE=Rage 3D IIC ++ ID_MODEL_FROM_DATABASE=3D Rage IIC AGP (Rage 3D IIC) + + pci:v00001002d00004757sv00001028sd0000C082* +- ID_MODEL_FROM_DATABASE=Rage 3D IIC ++ ID_MODEL_FROM_DATABASE=3D Rage IIC AGP (Rage 3D IIC) + + pci:v00001002d00004758* + ID_MODEL_FROM_DATABASE=210888GX [Mach64 GX PCI] +@@ -2793,40 +2793,40 @@ pci:v00001002d0000475A* + ID_MODEL_FROM_DATABASE=3D Rage IIC AGP + + pci:v00001002d0000475Asv00001002sd00000084* +- ID_MODEL_FROM_DATABASE=Rage 3D Pro AGP 2x XPERT 98 ++ ID_MODEL_FROM_DATABASE=3D Rage IIC AGP (Rage 3D Pro AGP 2x XPERT 98) + + pci:v00001002d0000475Asv00001002sd00000087* +- ID_MODEL_FROM_DATABASE=Rage 3D IIC ++ ID_MODEL_FROM_DATABASE=3D Rage IIC AGP (Rage 3D IIC) + + pci:v00001002d0000475Asv00001002sd0000475A* +- ID_MODEL_FROM_DATABASE=Rage IIC AGP ++ ID_MODEL_FROM_DATABASE=3D Rage IIC AGP (Rage IIC AGP) + + pci:v00001002d00004966* + ID_MODEL_FROM_DATABASE=RV250 [Radeon 9000 Series] + + pci:v00001002d00004966sv000010F1sd00000002* +- ID_MODEL_FROM_DATABASE=RV250 If [Tachyon G9000 PRO] ++ ID_MODEL_FROM_DATABASE=RV250 [Radeon 9000 Series] (RV250 If [Tachyon G9000 PRO]) + + pci:v00001002d00004966sv0000148Csd00002039* +- ID_MODEL_FROM_DATABASE=RV250 If [Radeon 9000 Pro "Evil Commando"] ++ ID_MODEL_FROM_DATABASE=RV250 [Radeon 9000 Series] (RV250 If [Radeon 9000 Pro "Evil Commando"]) + + pci:v00001002d00004966sv00001509sd00009A00* +- ID_MODEL_FROM_DATABASE=RV250 If [Radeon 9000 "AT009"] ++ ID_MODEL_FROM_DATABASE=RV250 [Radeon 9000 Series] (RV250 If [Radeon 9000 "AT009"]) + + pci:v00001002d00004966sv00001681sd00000040* +- ID_MODEL_FROM_DATABASE=RV250 If [3D prophet 9000] ++ ID_MODEL_FROM_DATABASE=RV250 [Radeon 9000 Series] (RV250 If [3D prophet 9000]) + + pci:v00001002d00004966sv0000174Bsd00007176* +- ID_MODEL_FROM_DATABASE=Radeon 9000 Pro ++ ID_MODEL_FROM_DATABASE=RV250 [Radeon 9000 Series] (Radeon 9000 Pro) + + pci:v00001002d00004966sv0000174Bsd00007192* +- ID_MODEL_FROM_DATABASE=RV250 If [Radeon 9000 "Atlantis"] ++ ID_MODEL_FROM_DATABASE=RV250 [Radeon 9000 Series] (RV250 If [Radeon 9000 "Atlantis"]) + + pci:v00001002d00004966sv000017AFsd00002005* +- ID_MODEL_FROM_DATABASE=RV250 If [Excalibur Radeon 9000 Pro] ++ ID_MODEL_FROM_DATABASE=RV250 [Radeon 9000 Series] (RV250 If [Excalibur Radeon 9000 Pro]) + + pci:v00001002d00004966sv000017AFsd00002006* +- ID_MODEL_FROM_DATABASE=RV250 If [Excalibur Radeon 9000] ++ ID_MODEL_FROM_DATABASE=RV250 [Radeon 9000 Series] (RV250 If [Excalibur Radeon 9000]) + + pci:v00001002d0000496E* + ID_MODEL_FROM_DATABASE=RV250 [Radeon 9000] (Secondary) +@@ -2835,7 +2835,7 @@ pci:v00001002d00004A49* + ID_MODEL_FROM_DATABASE=R420 [Radeon X800 PRO/GTO AGP] + + pci:v00001002d00004A49sv0000174Bsd00002620* +- ID_MODEL_FROM_DATABASE=R420 [Radeon X800 GTO AGP] ++ ID_MODEL_FROM_DATABASE=R420 [Radeon X800 PRO/GTO AGP] (R420 [Radeon X800 GTO AGP]) + + pci:v00001002d00004A4A* + ID_MODEL_FROM_DATABASE=R420 [Radeon X800 GT AGP] +@@ -2859,7 +2859,7 @@ pci:v00001002d00004A54* + ID_MODEL_FROM_DATABASE=R420 [Radeon X800 VE AGP] + + pci:v00001002d00004A54sv00001002sd00004422* +- ID_MODEL_FROM_DATABASE=All-In-Wonder X800 VE AGP ++ ID_MODEL_FROM_DATABASE=R420 [Radeon X800 VE AGP] (All-In-Wonder X800 VE AGP) + + pci:v00001002d00004A69* + ID_MODEL_FROM_DATABASE=R420 [Radeon X800 PRO/GTO] (Secondary) +@@ -2898,40 +2898,40 @@ pci:v00001002d00004C42* + ID_MODEL_FROM_DATABASE=3D Rage LT PRO AGP 2X + + pci:v00001002d00004C42sv00000E11sd0000B0E7* +- ID_MODEL_FROM_DATABASE=Rage LT Pro (Compaq Presario 5240) ++ ID_MODEL_FROM_DATABASE=3D Rage LT PRO AGP 2X (Rage LT Pro (Compaq Presario 5240)) + + pci:v00001002d00004C42sv00000E11sd0000B0E8* +- ID_MODEL_FROM_DATABASE=Rage 3D LT Pro ++ ID_MODEL_FROM_DATABASE=3D Rage LT PRO AGP 2X (Rage 3D LT Pro) + + pci:v00001002d00004C42sv00000E11sd0000B10E* +- ID_MODEL_FROM_DATABASE=3D Rage LT Pro (Compaq Armada 1750) ++ ID_MODEL_FROM_DATABASE=3D Rage LT PRO AGP 2X (3D Rage LT Pro (Compaq Armada 1750)) + + pci:v00001002d00004C42sv00001002sd00000040* +- ID_MODEL_FROM_DATABASE=Rage LT Pro AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage LT PRO AGP 2X (Rage LT Pro AGP 2X) + + pci:v00001002d00004C42sv00001002sd00000044* +- ID_MODEL_FROM_DATABASE=Rage LT Pro AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage LT PRO AGP 2X (Rage LT Pro AGP 2X) + + pci:v00001002d00004C42sv00001002sd00004C42* +- ID_MODEL_FROM_DATABASE=Rage LT Pro AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage LT PRO AGP 2X (Rage LT Pro AGP 2X) + + pci:v00001002d00004C42sv00001002sd00008001* +- ID_MODEL_FROM_DATABASE=Rage LT Pro AGP 2X ++ ID_MODEL_FROM_DATABASE=3D Rage LT PRO AGP 2X (Rage LT Pro AGP 2X) + + pci:v00001002d00004C42sv00001028sd00000085* +- ID_MODEL_FROM_DATABASE=Rage 3D LT Pro ++ ID_MODEL_FROM_DATABASE=3D Rage LT PRO AGP 2X (Rage 3D LT Pro) + + pci:v00001002d00004C46* + ID_MODEL_FROM_DATABASE=Rage Mobility 128 AGP 2X/Mobility M3 + + pci:v00001002d00004C46sv00001002sd00000155* +- ID_MODEL_FROM_DATABASE=IBM Thinkpad A22p ++ ID_MODEL_FROM_DATABASE=Rage Mobility 128 AGP 2X/Mobility M3 (IBM Thinkpad A22p) + + pci:v00001002d00004C46sv00001014sd00000155* +- ID_MODEL_FROM_DATABASE=IBM Thinkpad A22p ++ ID_MODEL_FROM_DATABASE=Rage Mobility 128 AGP 2X/Mobility M3 (IBM Thinkpad A22p) + + pci:v00001002d00004C46sv00001028sd000000B1* +- ID_MODEL_FROM_DATABASE=Latitude C600 ++ ID_MODEL_FROM_DATABASE=Rage Mobility 128 AGP 2X/Mobility M3 (Latitude C600) + + pci:v00001002d00004C47* + ID_MODEL_FROM_DATABASE=3D Rage IIC PCI / Mobility Radeon 7500/7500C +@@ -2940,55 +2940,55 @@ pci:v00001002d00004C49* + ID_MODEL_FROM_DATABASE=3D Rage LT PRO PCI + + pci:v00001002d00004C49sv00001002sd00000004* +- ID_MODEL_FROM_DATABASE=Rage LT Pro ++ ID_MODEL_FROM_DATABASE=3D Rage LT PRO PCI (Rage LT Pro) + + pci:v00001002d00004C49sv00001002sd00000040* +- ID_MODEL_FROM_DATABASE=Rage LT Pro ++ ID_MODEL_FROM_DATABASE=3D Rage LT PRO PCI (Rage LT Pro) + + pci:v00001002d00004C49sv00001002sd00000044* +- ID_MODEL_FROM_DATABASE=Rage LT Pro ++ ID_MODEL_FROM_DATABASE=3D Rage LT PRO PCI (Rage LT Pro) + + pci:v00001002d00004C49sv00001002sd00004C49* +- ID_MODEL_FROM_DATABASE=Rage LT Pro ++ ID_MODEL_FROM_DATABASE=3D Rage LT PRO PCI (Rage LT Pro) + + pci:v00001002d00004C4D* + ID_MODEL_FROM_DATABASE=Rage Mobility AGP 2x Series + + pci:v00001002d00004C4Dsv00000E11sd0000B111* +- ID_MODEL_FROM_DATABASE=Armada M700 ++ ID_MODEL_FROM_DATABASE=Rage Mobility AGP 2x Series (Armada M700) + + pci:v00001002d00004C4Dsv00000E11sd0000B160* +- ID_MODEL_FROM_DATABASE=Armada E500 ++ ID_MODEL_FROM_DATABASE=Rage Mobility AGP 2x Series (Armada E500) + + pci:v00001002d00004C4Dsv00001002sd00000084* +- ID_MODEL_FROM_DATABASE=Xpert 98 AGP 2X (Mobility) ++ ID_MODEL_FROM_DATABASE=Rage Mobility AGP 2x Series (Xpert 98 AGP 2X (Mobility)) + + pci:v00001002d00004C4Dsv00001014sd00000154* +- ID_MODEL_FROM_DATABASE=ThinkPad A20m/A21m ++ ID_MODEL_FROM_DATABASE=Rage Mobility AGP 2x Series (ThinkPad A20m/A21m) + + pci:v00001002d00004C4Dsv00001028sd000000AA* +- ID_MODEL_FROM_DATABASE=Latitude CPt ++ ID_MODEL_FROM_DATABASE=Rage Mobility AGP 2x Series (Latitude CPt) + + pci:v00001002d00004C4Dsv00001028sd000000BB* +- ID_MODEL_FROM_DATABASE=Latitude CPx ++ ID_MODEL_FROM_DATABASE=Rage Mobility AGP 2x Series (Latitude CPx) + + pci:v00001002d00004C4Dsv00001179sd0000FF00* +- ID_MODEL_FROM_DATABASE=Satellite 1715XCDS laptop ++ ID_MODEL_FROM_DATABASE=Rage Mobility AGP 2x Series (Satellite 1715XCDS laptop) + + pci:v00001002d00004C4Dsv000013BDsd00001019* +- ID_MODEL_FROM_DATABASE=PC-AR10 ++ ID_MODEL_FROM_DATABASE=Rage Mobility AGP 2x Series (PC-AR10) + + pci:v00001002d00004C50* + ID_MODEL_FROM_DATABASE=3D Rage LT PRO PCI + + pci:v00001002d00004C50sv00001002sd00004C50* +- ID_MODEL_FROM_DATABASE=Rage LT Pro ++ ID_MODEL_FROM_DATABASE=3D Rage LT PRO PCI (Rage LT Pro) + + pci:v00001002d00004C52* + ID_MODEL_FROM_DATABASE=Rage Mobility-M1 PCI + + pci:v00001002d00004C52sv00001033sd00008112* +- ID_MODEL_FROM_DATABASE=Versa Note VXi ++ ID_MODEL_FROM_DATABASE=Rage Mobility-M1 PCI (Versa Note VXi) + + pci:v00001002d00004C54* + ID_MODEL_FROM_DATABASE=264LT [Mach64 LT] +@@ -2997,22 +2997,22 @@ pci:v00001002d00004C57* + ID_MODEL_FROM_DATABASE=RV200/M7 [Mobility Radeon 7500] + + pci:v00001002d00004C57sv00001014sd00000517* +- ID_MODEL_FROM_DATABASE=ThinkPad T30 ++ ID_MODEL_FROM_DATABASE=RV200/M7 [Mobility Radeon 7500] (ThinkPad T30) + + pci:v00001002d00004C57sv00001014sd00000530* +- ID_MODEL_FROM_DATABASE=ThinkPad T42 2373-4WU ++ ID_MODEL_FROM_DATABASE=RV200/M7 [Mobility Radeon 7500] (ThinkPad T42 2373-4WU) + + pci:v00001002d00004C57sv00001028sd000000E6* +- ID_MODEL_FROM_DATABASE=Radeon Mobility M7 LW (Dell Inspiron 8100) ++ ID_MODEL_FROM_DATABASE=RV200/M7 [Mobility Radeon 7500] (Radeon Mobility M7 LW (Dell Inspiron 8100)) + + pci:v00001002d00004C57sv00001028sd0000012A* +- ID_MODEL_FROM_DATABASE=Latitude C640 ++ ID_MODEL_FROM_DATABASE=RV200/M7 [Mobility Radeon 7500] (Latitude C640) + + pci:v00001002d00004C57sv00001043sd00001622* +- ID_MODEL_FROM_DATABASE=Mobility Radeon M7 (L3C/S) ++ ID_MODEL_FROM_DATABASE=RV200/M7 [Mobility Radeon 7500] (Mobility Radeon M7 (L3C/S)) + + pci:v00001002d00004C57sv0000144Dsd0000C006* +- ID_MODEL_FROM_DATABASE=Radeon Mobility M7 LW in vpr Matrix 170B4 ++ ID_MODEL_FROM_DATABASE=RV200/M7 [Mobility Radeon 7500] (Radeon Mobility M7 LW in vpr Matrix 170B4) + + pci:v00001002d00004C58* + ID_MODEL_FROM_DATABASE=RV200/M7 GL [Mobility FireGL 7800] +@@ -3021,31 +3021,31 @@ pci:v00001002d00004C59* + ID_MODEL_FROM_DATABASE=RV100/M6 [Rage/Radeon Mobility Series] + + pci:v00001002d00004C59sv00000E11sd0000B111* +- ID_MODEL_FROM_DATABASE=Evo N600c ++ ID_MODEL_FROM_DATABASE=RV100/M6 [Rage/Radeon Mobility Series] (Evo N600c) + + pci:v00001002d00004C59sv00001014sd00000235* +- ID_MODEL_FROM_DATABASE=ThinkPad A30/A30p (2652/2653) ++ ID_MODEL_FROM_DATABASE=RV100/M6 [Rage/Radeon Mobility Series] (ThinkPad A30/A30p (2652/2653)) + + pci:v00001002d00004C59sv00001014sd00000239* +- ID_MODEL_FROM_DATABASE=ThinkPad X22/X23/X24 ++ ID_MODEL_FROM_DATABASE=RV100/M6 [Rage/Radeon Mobility Series] (ThinkPad X22/X23/X24) + + pci:v00001002d00004C59sv0000103Csd00000025* +- ID_MODEL_FROM_DATABASE=XE4500 Notebook ++ ID_MODEL_FROM_DATABASE=RV100/M6 [Rage/Radeon Mobility Series] (XE4500 Notebook) + + pci:v00001002d00004C59sv0000104Dsd000080E7* +- ID_MODEL_FROM_DATABASE=VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ++ ID_MODEL_FROM_DATABASE=RV100/M6 [Rage/Radeon Mobility Series] (VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP) + + pci:v00001002d00004C59sv0000104Dsd00008140* +- ID_MODEL_FROM_DATABASE=PCG-Z1SP laptop ++ ID_MODEL_FROM_DATABASE=RV100/M6 [Rage/Radeon Mobility Series] (PCG-Z1SP laptop) + + pci:v00001002d00004C59sv00001509sd00001930* +- ID_MODEL_FROM_DATABASE=Medion MD9703 ++ ID_MODEL_FROM_DATABASE=RV100/M6 [Rage/Radeon Mobility Series] (Medion MD9703) + + pci:v00001002d00004C66* + ID_MODEL_FROM_DATABASE=RV250/M9 GL [Mobility FireGL 9000/Radeon 9000] + + pci:v00001002d00004C66sv00001014sd0000054D* +- ID_MODEL_FROM_DATABASE=ThinkPad T41 ++ ID_MODEL_FROM_DATABASE=RV250/M9 GL [Mobility FireGL 9000/Radeon 9000] (ThinkPad T41) + + pci:v00001002d00004C6E* + ID_MODEL_FROM_DATABASE=RV250/M9 [Mobility Radeon 9000] (Secondary) +@@ -3063,19 +3063,19 @@ pci:v00001002d00004E44* + ID_MODEL_FROM_DATABASE=R300 [Radeon 9700/9700 PRO] + + pci:v00001002d00004E44sv00001002sd0000515E* +- ID_MODEL_FROM_DATABASE=Radeon ES1000 ++ ID_MODEL_FROM_DATABASE=R300 [Radeon 9700/9700 PRO] (Radeon ES1000) + + pci:v00001002d00004E44sv00001002sd00005965* +- ID_MODEL_FROM_DATABASE=Radeon ES1000 ++ ID_MODEL_FROM_DATABASE=R300 [Radeon 9700/9700 PRO] (Radeon ES1000) + + pci:v00001002d00004E45* + ID_MODEL_FROM_DATABASE=R300 [Radeon 9500 PRO/9700] + + pci:v00001002d00004E45sv00001002sd00000002* +- ID_MODEL_FROM_DATABASE=Radeon R300 NE [Radeon 9500 Pro] ++ ID_MODEL_FROM_DATABASE=R300 [Radeon 9500 PRO/9700] (Radeon R300 NE [Radeon 9500 Pro]) + + pci:v00001002d00004E45sv00001681sd00000002* +- ID_MODEL_FROM_DATABASE=Hercules 3D Prophet 9500 PRO [Radeon 9500 Pro] ++ ID_MODEL_FROM_DATABASE=R300 [Radeon 9500 PRO/9700] (Hercules 3D Prophet 9500 PRO [Radeon 9500 Pro]) + + pci:v00001002d00004E46* + ID_MODEL_FROM_DATABASE=R300 [Radeon 9600 TX] +@@ -3093,7 +3093,7 @@ pci:v00001002d00004E4A* + ID_MODEL_FROM_DATABASE=R360 [Radeon 9800 XXL/XT] + + pci:v00001002d00004E4Asv00001002sd00004E4A* +- ID_MODEL_FROM_DATABASE=R360 [Radeon 9800 XT] ++ ID_MODEL_FROM_DATABASE=R360 [Radeon 9800 XXL/XT] (R360 [Radeon 9800 XT]) + + pci:v00001002d00004E4B* + ID_MODEL_FROM_DATABASE=R350 GL [FireGL X2 AGP Pro] +@@ -3102,22 +3102,22 @@ pci:v00001002d00004E50* + ID_MODEL_FROM_DATABASE=RV350/M10 [Mobility Radeon 9600 PRO Turbo] + + pci:v00001002d00004E50sv00001025sd0000005A* +- ID_MODEL_FROM_DATABASE=TravelMate 290 ++ ID_MODEL_FROM_DATABASE=RV350/M10 [Mobility Radeon 9600 PRO Turbo] (TravelMate 290) + + pci:v00001002d00004E50sv0000103Csd0000088C* +- ID_MODEL_FROM_DATABASE=NC8000 laptop ++ ID_MODEL_FROM_DATABASE=RV350/M10 [Mobility Radeon 9600 PRO Turbo] (NC8000 laptop) + + pci:v00001002d00004E50sv0000103Csd00000890* +- ID_MODEL_FROM_DATABASE=NC6000 laptop ++ ID_MODEL_FROM_DATABASE=RV350/M10 [Mobility Radeon 9600 PRO Turbo] (NC6000 laptop) + + pci:v00001002d00004E50sv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P35 notebook ++ ID_MODEL_FROM_DATABASE=RV350/M10 [Mobility Radeon 9600 PRO Turbo] (P35 notebook) + + pci:v00001002d00004E50sv00001462sd00000311* +- ID_MODEL_FROM_DATABASE=MSI M510A ++ ID_MODEL_FROM_DATABASE=RV350/M10 [Mobility Radeon 9600 PRO Turbo] (MSI M510A) + + pci:v00001002d00004E50sv00001734sd00001055* +- ID_MODEL_FROM_DATABASE=Amilo M1420W ++ ID_MODEL_FROM_DATABASE=RV350/M10 [Mobility Radeon 9600 PRO Turbo] (Amilo M1420W) + + pci:v00001002d00004E51* + ID_MODEL_FROM_DATABASE=RV350 [Radeon 9550/9600/X1050 Series] +@@ -3126,7 +3126,7 @@ pci:v00001002d00004E52* + ID_MODEL_FROM_DATABASE=RV350/M10 [Mobility Radeon 9500/9700 SE] + + pci:v00001002d00004E52sv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P35 notebook ++ ID_MODEL_FROM_DATABASE=RV350/M10 [Mobility Radeon 9500/9700 SE] (P35 notebook) + + pci:v00001002d00004E54* + ID_MODEL_FROM_DATABASE=RV350/M10 GL [Mobility FireGL T2] +@@ -3141,10 +3141,10 @@ pci:v00001002d00004E65* + ID_MODEL_FROM_DATABASE=R300 [Radeon 9500 PRO] (Secondary) + + pci:v00001002d00004E65sv00001002sd00000003* +- ID_MODEL_FROM_DATABASE=Radeon R300 NE [Radeon 9500 Pro] ++ ID_MODEL_FROM_DATABASE=R300 [Radeon 9500 PRO] (Secondary) (Radeon R300 NE [Radeon 9500 Pro]) + + pci:v00001002d00004E65sv00001681sd00000003* +- ID_MODEL_FROM_DATABASE=Hercules 3D Prophet 9500 PRO [Radeon 9500 Pro] (Secondary) ++ ID_MODEL_FROM_DATABASE=R300 [Radeon 9500 PRO] (Secondary) (Hercules 3D Prophet 9500 PRO [Radeon 9500 Pro] (Secondary)) + + pci:v00001002d00004E66* + ID_MODEL_FROM_DATABASE=RV350 [Radeon 9600] (Secondary) +@@ -3162,10 +3162,10 @@ pci:v00001002d00004E6A* + ID_MODEL_FROM_DATABASE=RV350 [Radeon 9800 XT] (Secondary) + + pci:v00001002d00004E6Asv00001002sd00004E6A* +- ID_MODEL_FROM_DATABASE=R360 [Radeon 9800 XT] (Secondary) ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9800 XT] (Secondary) (R360 [Radeon 9800 XT] (Secondary)) + + pci:v00001002d00004E6Asv00001002sd00004E71* +- ID_MODEL_FROM_DATABASE=M10 NQ [Radeon Mobility 9600] ++ ID_MODEL_FROM_DATABASE=RV350 [Radeon 9800 XT] (Secondary) (M10 NQ [Radeon Mobility 9600]) + + pci:v00001002d00004E71* + ID_MODEL_FROM_DATABASE=RV350/M10 [Mobility Radeon 9600] (Secondary) +@@ -3180,46 +3180,46 @@ pci:v00001002d00005044* + ID_MODEL_FROM_DATABASE=All-In-Wonder 128 PCI + + pci:v00001002d00005044sv00001002sd00000028* +- ID_MODEL_FROM_DATABASE=Rage 128 AIW ++ ID_MODEL_FROM_DATABASE=All-In-Wonder 128 PCI (Rage 128 AIW) + + pci:v00001002d00005044sv00001002sd00000029* +- ID_MODEL_FROM_DATABASE=Rage 128 AIW ++ ID_MODEL_FROM_DATABASE=All-In-Wonder 128 PCI (Rage 128 AIW) + + pci:v00001002d00005046* + ID_MODEL_FROM_DATABASE=Rage 128 PRO AGP 4x TMDS + + pci:v00001002d00005046sv00001002sd00000004* +- ID_MODEL_FROM_DATABASE=Rage Fury Pro ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO AGP 4x TMDS (Rage Fury Pro) + + pci:v00001002d00005046sv00001002sd00000008* +- ID_MODEL_FROM_DATABASE=Rage Fury Pro/Xpert 2000 Pro ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO AGP 4x TMDS (Rage Fury Pro/Xpert 2000 Pro) + + pci:v00001002d00005046sv00001002sd00000014* +- ID_MODEL_FROM_DATABASE=Rage Fury Pro ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO AGP 4x TMDS (Rage Fury Pro) + + pci:v00001002d00005046sv00001002sd00000018* +- ID_MODEL_FROM_DATABASE=Rage Fury Pro/Xpert 2000 Pro ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO AGP 4x TMDS (Rage Fury Pro/Xpert 2000 Pro) + + pci:v00001002d00005046sv00001002sd00000028* +- ID_MODEL_FROM_DATABASE=Rage 128 Pro AIW AGP ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO AGP 4x TMDS (Rage 128 Pro AIW AGP) + + pci:v00001002d00005046sv00001002sd0000002A* +- ID_MODEL_FROM_DATABASE=Rage 128 Pro AIW AGP ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO AGP 4x TMDS (Rage 128 Pro AIW AGP) + + pci:v00001002d00005046sv00001002sd00000048* +- ID_MODEL_FROM_DATABASE=Rage Fury Pro ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO AGP 4x TMDS (Rage Fury Pro) + + pci:v00001002d00005046sv00001002sd00002000* +- ID_MODEL_FROM_DATABASE=Rage Fury MAXX AGP 4x (TMDS) (VGA device) ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO AGP 4x TMDS (Rage Fury MAXX AGP 4x (TMDS) (VGA device)) + + pci:v00001002d00005046sv00001002sd00002001* +- ID_MODEL_FROM_DATABASE=Rage Fury MAXX AGP 4x (TMDS) (Extra device?!) ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO AGP 4x TMDS (Rage Fury MAXX AGP 4x (TMDS) (Extra device?!)) + + pci:v00001002d00005050* + ID_MODEL_FROM_DATABASE=Rage128 [Xpert 128 PCI] + + pci:v00001002d00005050sv00001002sd00000008* +- ID_MODEL_FROM_DATABASE=Xpert 128 ++ ID_MODEL_FROM_DATABASE=Rage128 [Xpert 128 PCI] (Xpert 128) + + pci:v00001002d00005052* + ID_MODEL_FROM_DATABASE=Rage 128 PRO AGP 4X TMDS +@@ -3228,79 +3228,79 @@ pci:v00001002d00005144* + ID_MODEL_FROM_DATABASE=R100 [Radeon 7200 / All-In-Wonder Radeon] + + pci:v00001002d00005144sv00001002sd00000008* +- ID_MODEL_FROM_DATABASE=Radeon 7000/Radeon VE ++ ID_MODEL_FROM_DATABASE=R100 [Radeon 7200 / All-In-Wonder Radeon] (Radeon 7000/Radeon VE) + + pci:v00001002d00005144sv00001002sd00000009* +- ID_MODEL_FROM_DATABASE=Radeon 7000/Radeon ++ ID_MODEL_FROM_DATABASE=R100 [Radeon 7200 / All-In-Wonder Radeon] (Radeon 7000/Radeon) + + pci:v00001002d00005144sv00001002sd0000000A* +- ID_MODEL_FROM_DATABASE=Radeon 7000/Radeon ++ ID_MODEL_FROM_DATABASE=R100 [Radeon 7200 / All-In-Wonder Radeon] (Radeon 7000/Radeon) + + pci:v00001002d00005144sv00001002sd0000001A* +- ID_MODEL_FROM_DATABASE=Radeon 7000/Radeon ++ ID_MODEL_FROM_DATABASE=R100 [Radeon 7200 / All-In-Wonder Radeon] (Radeon 7000/Radeon) + + pci:v00001002d00005144sv00001002sd00000029* +- ID_MODEL_FROM_DATABASE=Radeon AIW ++ ID_MODEL_FROM_DATABASE=R100 [Radeon 7200 / All-In-Wonder Radeon] (Radeon AIW) + + pci:v00001002d00005144sv00001002sd00000038* +- ID_MODEL_FROM_DATABASE=Radeon 7000/Radeon ++ ID_MODEL_FROM_DATABASE=R100 [Radeon 7200 / All-In-Wonder Radeon] (Radeon 7000/Radeon) + + pci:v00001002d00005144sv00001002sd00000039* +- ID_MODEL_FROM_DATABASE=Radeon 7000/Radeon ++ ID_MODEL_FROM_DATABASE=R100 [Radeon 7200 / All-In-Wonder Radeon] (Radeon 7000/Radeon) + + pci:v00001002d00005144sv00001002sd0000008A* +- ID_MODEL_FROM_DATABASE=Radeon 7000/Radeon ++ ID_MODEL_FROM_DATABASE=R100 [Radeon 7200 / All-In-Wonder Radeon] (Radeon 7000/Radeon) + + pci:v00001002d00005144sv00001002sd000000BA* +- ID_MODEL_FROM_DATABASE=Radeon 7000/Radeon ++ ID_MODEL_FROM_DATABASE=R100 [Radeon 7200 / All-In-Wonder Radeon] (Radeon 7000/Radeon) + + pci:v00001002d00005144sv00001002sd00000139* +- ID_MODEL_FROM_DATABASE=Radeon 7000/Radeon ++ ID_MODEL_FROM_DATABASE=R100 [Radeon 7200 / All-In-Wonder Radeon] (Radeon 7000/Radeon) + + pci:v00001002d00005144sv00001002sd0000028A* +- ID_MODEL_FROM_DATABASE=Radeon 7000/Radeon ++ ID_MODEL_FROM_DATABASE=R100 [Radeon 7200 / All-In-Wonder Radeon] (Radeon 7000/Radeon) + + pci:v00001002d00005144sv00001002sd000002AA* +- ID_MODEL_FROM_DATABASE=Radeon AIW ++ ID_MODEL_FROM_DATABASE=R100 [Radeon 7200 / All-In-Wonder Radeon] (Radeon AIW) + + pci:v00001002d00005144sv00001002sd0000053A* +- ID_MODEL_FROM_DATABASE=Radeon 7000/Radeon ++ ID_MODEL_FROM_DATABASE=R100 [Radeon 7200 / All-In-Wonder Radeon] (Radeon 7000/Radeon) + + pci:v00001002d00005148* + ID_MODEL_FROM_DATABASE=R200 GL [FireGL 8800] + + pci:v00001002d00005148sv00001002sd0000010A* +- ID_MODEL_FROM_DATABASE=FireGL 8800 64Mb ++ ID_MODEL_FROM_DATABASE=R200 GL [FireGL 8800] (FireGL 8800 64Mb) + + pci:v00001002d00005148sv00001002sd00000152* +- ID_MODEL_FROM_DATABASE=FireGL 8800 128Mb ++ ID_MODEL_FROM_DATABASE=R200 GL [FireGL 8800] (FireGL 8800 128Mb) + + pci:v00001002d00005148sv00001002sd00000162* +- ID_MODEL_FROM_DATABASE=FireGL 8700 32Mb ++ ID_MODEL_FROM_DATABASE=R200 GL [FireGL 8800] (FireGL 8700 32Mb) + + pci:v00001002d00005148sv00001002sd00000172* +- ID_MODEL_FROM_DATABASE=FireGL 8700 64Mb ++ ID_MODEL_FROM_DATABASE=R200 GL [FireGL 8800] (FireGL 8700 64Mb) + + pci:v00001002d0000514C* + ID_MODEL_FROM_DATABASE=R200 [Radeon 8500/8500 LE] + + pci:v00001002d0000514Csv00001002sd0000003A* +- ID_MODEL_FROM_DATABASE=Radeon R200 QL [Radeon 8500 LE] ++ ID_MODEL_FROM_DATABASE=R200 [Radeon 8500/8500 LE] (Radeon R200 QL [Radeon 8500 LE]) + + pci:v00001002d0000514Csv00001002sd0000013A* +- ID_MODEL_FROM_DATABASE=Radeon 8500 ++ ID_MODEL_FROM_DATABASE=R200 [Radeon 8500/8500 LE] (Radeon 8500) + + pci:v00001002d0000514Csv0000148Csd00002026* +- ID_MODEL_FROM_DATABASE=R200 QL [Radeon 8500 Evil Master II Multi Display Edition] ++ ID_MODEL_FROM_DATABASE=R200 [Radeon 8500/8500 LE] (R200 QL [Radeon 8500 Evil Master II Multi Display Edition]) + + pci:v00001002d0000514Csv00001681sd00000010* +- ID_MODEL_FROM_DATABASE=Radeon 8500 [3D Prophet 8500 128Mb] ++ ID_MODEL_FROM_DATABASE=R200 [Radeon 8500/8500 LE] (Radeon 8500 [3D Prophet 8500 128Mb]) + + pci:v00001002d0000514Csv0000174Bsd00007149* +- ID_MODEL_FROM_DATABASE=Radeon 8500 LE ++ ID_MODEL_FROM_DATABASE=R200 [Radeon 8500/8500 LE] (Radeon 8500 LE) + + pci:v00001002d0000514Csv00001787sd00000F08* +- ID_MODEL_FROM_DATABASE=Radeon R200 QL [PowerMagic Radeon 8500] ++ ID_MODEL_FROM_DATABASE=R200 [Radeon 8500/8500 LE] (Radeon R200 QL [PowerMagic Radeon 8500]) + + pci:v00001002d0000514D* + ID_MODEL_FROM_DATABASE=R200 [Radeon 9100] +@@ -3309,196 +3309,196 @@ pci:v00001002d00005157* + ID_MODEL_FROM_DATABASE=RV200 [Radeon 7500/7500 LE] + + pci:v00001002d00005157sv00001002sd0000013A* +- ID_MODEL_FROM_DATABASE=Radeon 7500 ++ ID_MODEL_FROM_DATABASE=RV200 [Radeon 7500/7500 LE] (Radeon 7500) + + pci:v00001002d00005157sv00001002sd00000F2B* +- ID_MODEL_FROM_DATABASE=ALL-IN-WONDER VE PCI ++ ID_MODEL_FROM_DATABASE=RV200 [Radeon 7500/7500 LE] (ALL-IN-WONDER VE PCI) + + pci:v00001002d00005157sv00001002sd0000103A* +- ID_MODEL_FROM_DATABASE=Dell Optiplex GX260 ++ ID_MODEL_FROM_DATABASE=RV200 [Radeon 7500/7500 LE] (Dell Optiplex GX260) + + pci:v00001002d00005157sv00001458sd00004000* +- ID_MODEL_FROM_DATABASE=RV200 QW [RADEON 7500 PRO MAYA AR] ++ ID_MODEL_FROM_DATABASE=RV200 [Radeon 7500/7500 LE] (RV200 QW [RADEON 7500 PRO MAYA AR]) + + pci:v00001002d00005157sv0000148Csd00002024* +- ID_MODEL_FROM_DATABASE=RV200 QW [Radeon 7500LE Dual Display] ++ ID_MODEL_FROM_DATABASE=RV200 [Radeon 7500/7500 LE] (RV200 QW [Radeon 7500LE Dual Display]) + + pci:v00001002d00005157sv0000148Csd00002025* +- ID_MODEL_FROM_DATABASE=RV200 QW [Radeon 7500 Evil Master Multi Display Edition] ++ ID_MODEL_FROM_DATABASE=RV200 [Radeon 7500/7500 LE] (RV200 QW [Radeon 7500 Evil Master Multi Display Edition]) + + pci:v00001002d00005157sv0000148Csd00002036* +- ID_MODEL_FROM_DATABASE=RV200 QW [Radeon 7500 PCI Dual Display] ++ ID_MODEL_FROM_DATABASE=RV200 [Radeon 7500/7500 LE] (RV200 QW [Radeon 7500 PCI Dual Display]) + + pci:v00001002d00005157sv0000174Bsd00007146* +- ID_MODEL_FROM_DATABASE=RV200 QW [Radeon 7500 LE] ++ ID_MODEL_FROM_DATABASE=RV200 [Radeon 7500/7500 LE] (RV200 QW [Radeon 7500 LE]) + + pci:v00001002d00005157sv0000174Bsd00007147* +- ID_MODEL_FROM_DATABASE=Radeon 7500 LE ++ ID_MODEL_FROM_DATABASE=RV200 [Radeon 7500/7500 LE] (Radeon 7500 LE) + + pci:v00001002d00005157sv0000174Bsd00007161* +- ID_MODEL_FROM_DATABASE=Radeon RV200 QW [Radeon 7500 LE] ++ ID_MODEL_FROM_DATABASE=RV200 [Radeon 7500/7500 LE] (Radeon RV200 QW [Radeon 7500 LE]) + + pci:v00001002d00005157sv000017AFsd00000202* +- ID_MODEL_FROM_DATABASE=RV200 QW [Excalibur Radeon 7500LE] ++ ID_MODEL_FROM_DATABASE=RV200 [Radeon 7500/7500 LE] (RV200 QW [Excalibur Radeon 7500LE]) + + pci:v00001002d00005159* + ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] + + pci:v00001002d00005159sv00001002sd0000000A* +- ID_MODEL_FROM_DATABASE=Radeon 7000/Radeon VE ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (Radeon 7000/Radeon VE) + + pci:v00001002d00005159sv00001002sd0000000B* +- ID_MODEL_FROM_DATABASE=Radeon 7000 ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (Radeon 7000) + + pci:v00001002d00005159sv00001002sd00000038* +- ID_MODEL_FROM_DATABASE=Radeon 7000/Radeon VE ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (Radeon 7000/Radeon VE) + + pci:v00001002d00005159sv00001002sd0000003A* +- ID_MODEL_FROM_DATABASE=Radeon 7000/Radeon VE ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (Radeon 7000/Radeon VE) + + pci:v00001002d00005159sv00001002sd000000BA* +- ID_MODEL_FROM_DATABASE=Radeon 7000/Radeon VE ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (Radeon 7000/Radeon VE) + + pci:v00001002d00005159sv00001002sd0000013A* +- ID_MODEL_FROM_DATABASE=Radeon 7000/Radeon VE ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (Radeon 7000/Radeon VE) + + pci:v00001002d00005159sv00001002sd00000908* +- ID_MODEL_FROM_DATABASE=XVR-100 (supplied by Sun) ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (XVR-100 (supplied by Sun)) + + pci:v00001002d00005159sv00001014sd0000029A* +- ID_MODEL_FROM_DATABASE=Remote Supervisor Adapter II (RSA2) ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (Remote Supervisor Adapter II (RSA2)) + + pci:v00001002d00005159sv00001014sd000002C8* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (eServer xSeries server mainboard) + + pci:v00001002d00005159sv00001028sd0000016C* +- ID_MODEL_FROM_DATABASE=PowerEdge 1850 Embedded Radeon 7000/VE ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (PowerEdge 1850 Embedded Radeon 7000/VE) + + pci:v00001002d00005159sv00001028sd0000016D* +- ID_MODEL_FROM_DATABASE=PowerEdge 2850 Embedded Radeon 7000-M ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (PowerEdge 2850 Embedded Radeon 7000-M) + + pci:v00001002d00005159sv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge 6850 Embedded Radeon 7000/VE ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (PowerEdge 6850 Embedded Radeon 7000/VE) + + pci:v00001002d00005159sv00001028sd0000019A* +- ID_MODEL_FROM_DATABASE=PowerEdge SC1425 ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (PowerEdge SC1425) + + pci:v00001002d00005159sv0000103Csd00001292* +- ID_MODEL_FROM_DATABASE=Radeon 7000 ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (Radeon 7000) + + pci:v00001002d00005159sv00001043sd0000C00A* +- ID_MODEL_FROM_DATABASE=A7000/T/64M ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (A7000/T/64M) + + pci:v00001002d00005159sv00001458sd00004002* +- ID_MODEL_FROM_DATABASE=RV100 QY [RADEON 7000 PRO MAYA AV Series] ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (RV100 QY [RADEON 7000 PRO MAYA AV Series]) + + pci:v00001002d00005159sv0000148Csd00002003* +- ID_MODEL_FROM_DATABASE=RV100 QY [Radeon 7000 Multi-Display Edition] ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (RV100 QY [Radeon 7000 Multi-Display Edition]) + + pci:v00001002d00005159sv0000148Csd00002023* +- ID_MODEL_FROM_DATABASE=RV100 QY [Radeon 7000 Evil Master Multi-Display] ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (RV100 QY [Radeon 7000 Evil Master Multi-Display]) + + pci:v00001002d00005159sv0000174Bsd00000280* +- ID_MODEL_FROM_DATABASE=Radeon RV100 QY [Radeon 7000/VE] ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (Radeon RV100 QY [Radeon 7000/VE]) + + pci:v00001002d00005159sv0000174Bsd00007112* +- ID_MODEL_FROM_DATABASE=Radeon VE 7000 ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (Radeon VE 7000) + + pci:v00001002d00005159sv0000174Bsd00007C28* +- ID_MODEL_FROM_DATABASE=Radeon VE 7000 DDR ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (Radeon VE 7000 DDR) + + pci:v00001002d00005159sv00001787sd00000202* +- ID_MODEL_FROM_DATABASE=RV100 QY [Excalibur Radeon 7000] ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (RV100 QY [Excalibur Radeon 7000]) + + pci:v00001002d00005159sv000017EEsd00001001* +- ID_MODEL_FROM_DATABASE=Radeon 7000 64MB DDR + DVI ++ ID_MODEL_FROM_DATABASE=RV100 [Radeon 7000 / Radeon VE] (Radeon 7000 64MB DDR + DVI) + + pci:v00001002d0000515E* + ID_MODEL_FROM_DATABASE=ES1000 + + pci:v00001002d0000515Esv00001028sd000001BB* +- ID_MODEL_FROM_DATABASE=PowerEdge 1955 Embedded ATI ES1000 ++ ID_MODEL_FROM_DATABASE=ES1000 (PowerEdge 1955 Embedded ATI ES1000) + + pci:v00001002d0000515Esv00001028sd000001DF* +- ID_MODEL_FROM_DATABASE=PowerEdge SC440 ++ ID_MODEL_FROM_DATABASE=ES1000 (PowerEdge SC440) + + pci:v00001002d0000515Esv00001028sd000001E6* +- ID_MODEL_FROM_DATABASE=PowerEdge 860 ++ ID_MODEL_FROM_DATABASE=ES1000 (PowerEdge 860) + + pci:v00001002d0000515Esv00001028sd000001F0* +- ID_MODEL_FROM_DATABASE=PowerEdge R900 Embedded ATI ES1000 ++ ID_MODEL_FROM_DATABASE=ES1000 (PowerEdge R900 Embedded ATI ES1000) + + pci:v00001002d0000515Esv00001028sd00000205* +- ID_MODEL_FROM_DATABASE=PowerEdge 2970 Embedded ATI ES1000 ++ ID_MODEL_FROM_DATABASE=ES1000 (PowerEdge 2970 Embedded ATI ES1000) + + pci:v00001002d0000515Esv00001028sd0000020B* +- ID_MODEL_FROM_DATABASE=PowerEdge T605 Embedded ATI ES1000 ++ ID_MODEL_FROM_DATABASE=ES1000 (PowerEdge T605 Embedded ATI ES1000) + + pci:v00001002d0000515Esv00001028sd0000020F* +- ID_MODEL_FROM_DATABASE=PowerEdge R300 Embedded ATI ES1000 ++ ID_MODEL_FROM_DATABASE=ES1000 (PowerEdge R300 Embedded ATI ES1000) + + pci:v00001002d0000515Esv00001028sd00000210* +- ID_MODEL_FROM_DATABASE=PowerEdge T300 Embedded ATI ES1000 ++ ID_MODEL_FROM_DATABASE=ES1000 (PowerEdge T300 Embedded ATI ES1000) + + pci:v00001002d0000515Esv00001028sd00000221* +- ID_MODEL_FROM_DATABASE=PowerEdge R805 Embedded ATI ES1000 ++ ID_MODEL_FROM_DATABASE=ES1000 (PowerEdge R805 Embedded ATI ES1000) + + pci:v00001002d0000515Esv00001028sd00000223* +- ID_MODEL_FROM_DATABASE=PowerEdge R905 Embedded ATI ES1000 ++ ID_MODEL_FROM_DATABASE=ES1000 (PowerEdge R905 Embedded ATI ES1000) + + pci:v00001002d0000515Esv00001028sd00000225* +- ID_MODEL_FROM_DATABASE=PowerEdge T105 Embedded ATI ES1000 ++ ID_MODEL_FROM_DATABASE=ES1000 (PowerEdge T105 Embedded ATI ES1000) + + pci:v00001002d0000515Esv00001028sd0000023C* +- ID_MODEL_FROM_DATABASE=PowerEdge R200 Embedded ATI ES1000 ++ ID_MODEL_FROM_DATABASE=ES1000 (PowerEdge R200 Embedded ATI ES1000) + + pci:v00001002d0000515Esv0000103Csd00001304* +- ID_MODEL_FROM_DATABASE=Integrity iLO2 Advanced KVM VGA [AD307A] ++ ID_MODEL_FROM_DATABASE=ES1000 (Integrity iLO2 Advanced KVM VGA [AD307A]) + + pci:v00001002d0000515Esv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=ES1000 (X7DVL-E-O motherboard) + + pci:v00001002d0000515Esv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=ES1000 (X7DBN Motherboard) + + pci:v00001002d0000515Esv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=ES1000 (S5000PSLSATA Server Board) + + pci:v00001002d00005245* + ID_MODEL_FROM_DATABASE=Rage 128 GL PCI + + pci:v00001002d00005245sv00001002sd00000008* +- ID_MODEL_FROM_DATABASE=Xpert 128 ++ ID_MODEL_FROM_DATABASE=Rage 128 GL PCI (Xpert 128) + + pci:v00001002d00005245sv00001002sd00000028* +- ID_MODEL_FROM_DATABASE=Rage 128 AIW ++ ID_MODEL_FROM_DATABASE=Rage 128 GL PCI (Rage 128 AIW) + + pci:v00001002d00005245sv00001002sd00000029* +- ID_MODEL_FROM_DATABASE=Rage 128 AIW ++ ID_MODEL_FROM_DATABASE=Rage 128 GL PCI (Rage 128 AIW) + + pci:v00001002d00005245sv00001002sd00000068* +- ID_MODEL_FROM_DATABASE=Rage 128 AIW ++ ID_MODEL_FROM_DATABASE=Rage 128 GL PCI (Rage 128 AIW) + + pci:v00001002d00005246* + ID_MODEL_FROM_DATABASE=Rage Fury/Xpert 128/Xpert 2000 AGP 2x + + pci:v00001002d00005246sv00001002sd00000004* +- ID_MODEL_FROM_DATABASE=Magnum/Xpert 128/Xpert 99 ++ ID_MODEL_FROM_DATABASE=Rage Fury/Xpert 128/Xpert 2000 AGP 2x (Magnum/Xpert 128/Xpert 99) + + pci:v00001002d00005246sv00001002sd00000008* +- ID_MODEL_FROM_DATABASE=Magnum/Xpert128/X99/Xpert2000 ++ ID_MODEL_FROM_DATABASE=Rage Fury/Xpert 128/Xpert 2000 AGP 2x (Magnum/Xpert128/X99/Xpert2000) + + pci:v00001002d00005246sv00001002sd00000028* +- ID_MODEL_FROM_DATABASE=Rage 128 AIW AGP ++ ID_MODEL_FROM_DATABASE=Rage Fury/Xpert 128/Xpert 2000 AGP 2x (Rage 128 AIW AGP) + + pci:v00001002d00005246sv00001002sd00000044* +- ID_MODEL_FROM_DATABASE=Rage Fury/Xpert 128/Xpert 2000 ++ ID_MODEL_FROM_DATABASE=Rage Fury/Xpert 128/Xpert 2000 AGP 2x (Rage Fury/Xpert 128/Xpert 2000) + + pci:v00001002d00005246sv00001002sd00000068* +- ID_MODEL_FROM_DATABASE=Rage 128 AIW AGP ++ ID_MODEL_FROM_DATABASE=Rage Fury/Xpert 128/Xpert 2000 AGP 2x (Rage 128 AIW AGP) + + pci:v00001002d00005246sv00001002sd00000448* +- ID_MODEL_FROM_DATABASE=Rage Fury ++ ID_MODEL_FROM_DATABASE=Rage Fury/Xpert 128/Xpert 2000 AGP 2x (Rage Fury) + + pci:v00001002d0000524B* + ID_MODEL_FROM_DATABASE=Rage 128 VR PCI +@@ -3507,73 +3507,73 @@ pci:v00001002d0000524C* + ID_MODEL_FROM_DATABASE=Rage 128 VR AGP + + pci:v00001002d0000524Csv00001002sd00000008* +- ID_MODEL_FROM_DATABASE=Xpert 99/Xpert 2000 ++ ID_MODEL_FROM_DATABASE=Rage 128 VR AGP (Xpert 99/Xpert 2000) + + pci:v00001002d0000524Csv00001002sd00000088* +- ID_MODEL_FROM_DATABASE=Xpert 99 ++ ID_MODEL_FROM_DATABASE=Rage 128 VR AGP (Xpert 99) + + pci:v00001002d00005346* + ID_MODEL_FROM_DATABASE=Rage 128 SF/4x AGP 2x + + pci:v00001002d00005346sv00001002sd00000048* +- ID_MODEL_FROM_DATABASE=RAGE 128 16MB VGA TVOUT AMC PAL ++ ID_MODEL_FROM_DATABASE=Rage 128 SF/4x AGP 2x (RAGE 128 16MB VGA TVOUT AMC PAL) + + pci:v00001002d0000534D* + ID_MODEL_FROM_DATABASE=Rage 128 4X AGP 4x + + pci:v00001002d0000534Dsv00001002sd00000008* +- ID_MODEL_FROM_DATABASE=Xpert 99/Xpert 2000 ++ ID_MODEL_FROM_DATABASE=Rage 128 4X AGP 4x (Xpert 99/Xpert 2000) + + pci:v00001002d0000534Dsv00001002sd00000018* +- ID_MODEL_FROM_DATABASE=Xpert 2000 ++ ID_MODEL_FROM_DATABASE=Rage 128 4X AGP 4x (Xpert 2000) + + pci:v00001002d00005354* + ID_MODEL_FROM_DATABASE=Mach 64 VT + + pci:v00001002d00005354sv00001002sd00005654* +- ID_MODEL_FROM_DATABASE=Mach 64 reference ++ ID_MODEL_FROM_DATABASE=Mach 64 VT (Mach 64 reference) + + pci:v00001002d00005446* + ID_MODEL_FROM_DATABASE=Rage 128 PRO Ultra AGP 4x + + pci:v00001002d00005446sv00001002sd00000004* +- ID_MODEL_FROM_DATABASE=Rage Fury Pro ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO Ultra AGP 4x (Rage Fury Pro) + + pci:v00001002d00005446sv00001002sd00000008* +- ID_MODEL_FROM_DATABASE=Rage Fury Pro/Xpert 2000 Pro ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO Ultra AGP 4x (Rage Fury Pro/Xpert 2000 Pro) + + pci:v00001002d00005446sv00001002sd00000018* +- ID_MODEL_FROM_DATABASE=Rage Fury Pro/Xpert 2000 Pro ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO Ultra AGP 4x (Rage Fury Pro/Xpert 2000 Pro) + + pci:v00001002d00005446sv00001002sd00000028* +- ID_MODEL_FROM_DATABASE=Rage 128 AIW Pro AGP ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO Ultra AGP 4x (Rage 128 AIW Pro AGP) + + pci:v00001002d00005446sv00001002sd00000029* +- ID_MODEL_FROM_DATABASE=Rage 128 AIW ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO Ultra AGP 4x (Rage 128 AIW) + + pci:v00001002d00005446sv00001002sd0000002A* +- ID_MODEL_FROM_DATABASE=Rage 128 AIW Pro AGP ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO Ultra AGP 4x (Rage 128 AIW Pro AGP) + + pci:v00001002d00005446sv00001002sd0000002B* +- ID_MODEL_FROM_DATABASE=Rage 128 AIW ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO Ultra AGP 4x (Rage 128 AIW) + + pci:v00001002d00005446sv00001002sd00000048* +- ID_MODEL_FROM_DATABASE=Xpert 2000 Pro ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO Ultra AGP 4x (Xpert 2000 Pro) + + pci:v00001002d00005452* + ID_MODEL_FROM_DATABASE=Rage 128 PRO Ultra4XL VR-R AGP + + pci:v00001002d00005452sv00001002sd0000001C* +- ID_MODEL_FROM_DATABASE=Rage 128 Pro 4XL ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO Ultra4XL VR-R AGP (Rage 128 Pro 4XL) + + pci:v00001002d00005452sv0000103Csd00001279* +- ID_MODEL_FROM_DATABASE=Rage 128 Pro 4XL ++ ID_MODEL_FROM_DATABASE=Rage 128 PRO Ultra4XL VR-R AGP (Rage 128 Pro 4XL) + + pci:v00001002d00005460* + ID_MODEL_FROM_DATABASE=RV370/M22 [Mobility Radeon X300] + + pci:v00001002d00005460sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=RV370/M22 [Mobility Radeon X300] (CR11/VR11 Single Board Computer) + + pci:v00001002d00005461* + ID_MODEL_FROM_DATABASE=RV370/M22 [Mobility Radeon X300] +@@ -3594,16 +3594,16 @@ pci:v00001002d0000554B* + ID_MODEL_FROM_DATABASE=R423 [Radeon X800 GT/SE] + + pci:v00001002d0000554Bsv00001002sd00000302* +- ID_MODEL_FROM_DATABASE=Radeon X800 SE ++ ID_MODEL_FROM_DATABASE=R423 [Radeon X800 GT/SE] (Radeon X800 SE) + + pci:v00001002d0000554D* + ID_MODEL_FROM_DATABASE=R430 [Radeon X800 XL] + + pci:v00001002d0000554Dsv00001002sd00000322* +- ID_MODEL_FROM_DATABASE=All-In-Wonder X800 XL ++ ID_MODEL_FROM_DATABASE=R430 [Radeon X800 XL] (All-In-Wonder X800 XL) + + pci:v00001002d0000554Dsv00001458sd00002124* +- ID_MODEL_FROM_DATABASE=GV-R80L256V-B (AGP) ++ ID_MODEL_FROM_DATABASE=R430 [Radeon X800 XL] (GV-R80L256V-B (AGP)) + + pci:v00001002d0000554E* + ID_MODEL_FROM_DATABASE=R430 [All-In-Wonder X800 GT] +@@ -3627,7 +3627,7 @@ pci:v00001002d0000556D* + ID_MODEL_FROM_DATABASE=R430 [Radeon X800 XL] (Secondary) + + pci:v00001002d0000556Dsv00001458sd00002125* +- ID_MODEL_FROM_DATABASE=GV-R80L256V-B (AGP) ++ ID_MODEL_FROM_DATABASE=R430 [Radeon X800 XL] (Secondary) (GV-R80L256V-B (AGP)) + + pci:v00001002d0000556F* + ID_MODEL_FROM_DATABASE=R430 [Radeon X800] (Secondary) +@@ -3648,16 +3648,16 @@ pci:v00001002d00005653* + ID_MODEL_FROM_DATABASE=RV410/M26 [Mobility Radeon X700] + + pci:v00001002d00005653sv00001025sd00000080* +- ID_MODEL_FROM_DATABASE=Aspire 5024WLMi ++ ID_MODEL_FROM_DATABASE=RV410/M26 [Mobility Radeon X700] (Aspire 5024WLMi) + + pci:v00001002d00005653sv0000103Csd00000940* +- ID_MODEL_FROM_DATABASE=HP Compaq NW8240 Mobile Workstation ++ ID_MODEL_FROM_DATABASE=RV410/M26 [Mobility Radeon X700] (HP Compaq NW8240 Mobile Workstation) + + pci:v00001002d00005654* + ID_MODEL_FROM_DATABASE=264VT [Mach64 VT] + + pci:v00001002d00005654sv00001002sd00005654* +- ID_MODEL_FROM_DATABASE=Mach64VT Reference ++ ID_MODEL_FROM_DATABASE=264VT [Mach64 VT] (Mach64VT Reference) + + pci:v00001002d00005655* + ID_MODEL_FROM_DATABASE=264VT3 [Mach64 VT3] +@@ -3699,22 +3699,22 @@ pci:v00001002d00005940* + ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 PRO] (Secondary) + + pci:v00001002d00005940sv000017AFsd00002021* +- ID_MODEL_FROM_DATABASE=Excalibur Radeon 9250 (Secondary) ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 PRO] (Secondary) (Excalibur Radeon 9250 (Secondary)) + + pci:v00001002d00005941* + ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200] (Secondary) + + pci:v00001002d00005941sv00001458sd00004019* +- ID_MODEL_FROM_DATABASE=Radeon 9200 ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200] (Secondary) (Radeon 9200) + + pci:v00001002d00005941sv0000174Bsd00007C12* +- ID_MODEL_FROM_DATABASE=Radeon 9200 ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200] (Secondary) (Radeon 9200) + + pci:v00001002d00005941sv000017AFsd0000200D* +- ID_MODEL_FROM_DATABASE=Excalibur Radeon 9200 ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200] (Secondary) (Excalibur Radeon 9200) + + pci:v00001002d00005941sv000018BCsd00000050* +- ID_MODEL_FROM_DATABASE=GC-R9200-C3 (Secondary) ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200] (Secondary) (GC-R9200-C3 (Secondary)) + + pci:v00001002d00005944* + ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE PCI] +@@ -3723,22 +3723,22 @@ pci:v00001002d00005950* + ID_MODEL_FROM_DATABASE=RS480/RS482/RS485 Host Bridge + + pci:v00001002d00005950sv00001025sd00000080* +- ID_MODEL_FROM_DATABASE=Aspire 5024WLMMi ++ ID_MODEL_FROM_DATABASE=RS480/RS482/RS485 Host Bridge (Aspire 5024WLMMi) + + pci:v00001002d00005950sv0000103Csd0000280A* +- ID_MODEL_FROM_DATABASE=DC5750 Microtower ++ ID_MODEL_FROM_DATABASE=RS480/RS482/RS485 Host Bridge (DC5750 Microtower) + + pci:v00001002d00005950sv0000103Csd00002A20* +- ID_MODEL_FROM_DATABASE=Pavilion t3030.de Desktop PC ++ ID_MODEL_FROM_DATABASE=RS480/RS482/RS485 Host Bridge (Pavilion t3030.de Desktop PC) + + pci:v00001002d00005950sv0000103Csd0000308B* +- ID_MODEL_FROM_DATABASE=MX6125 ++ ID_MODEL_FROM_DATABASE=RS480/RS482/RS485 Host Bridge (MX6125) + + pci:v00001002d00005950sv00001462sd00000131* +- ID_MODEL_FROM_DATABASE=MS-1013 Notebook ++ ID_MODEL_FROM_DATABASE=RS480/RS482/RS485 Host Bridge (MS-1013 Notebook) + + pci:v00001002d00005950sv00001462sd00007217* +- ID_MODEL_FROM_DATABASE=Aspire L250 ++ ID_MODEL_FROM_DATABASE=RS480/RS482/RS485 Host Bridge (Aspire L250) + + pci:v00001002d00005951* + ID_MODEL_FROM_DATABASE=RX480/RX482 Host Bridge +@@ -3750,19 +3750,19 @@ pci:v00001002d00005954* + ID_MODEL_FROM_DATABASE=RS480 [Radeon Xpress 200 Series] + + pci:v00001002d00005954sv00001002sd00005954* +- ID_MODEL_FROM_DATABASE=RV370 [Radeon Xpress 200G Series] ++ ID_MODEL_FROM_DATABASE=RS480 [Radeon Xpress 200 Series] (RV370 [Radeon Xpress 200G Series]) + + pci:v00001002d00005955* + ID_MODEL_FROM_DATABASE=RS480M [Mobility Radeon Xpress 200] + + pci:v00001002d00005955sv00001002sd00005955* +- ID_MODEL_FROM_DATABASE=RS480 0x5955 [Radeon XPRESS 200M 5955 (PCIE)] ++ ID_MODEL_FROM_DATABASE=RS480M [Mobility Radeon Xpress 200] (RS480 0x5955 [Radeon XPRESS 200M 5955 (PCIE)]) + + pci:v00001002d00005955sv0000103Csd0000308B* +- ID_MODEL_FROM_DATABASE=MX6125 ++ ID_MODEL_FROM_DATABASE=RS480M [Mobility Radeon Xpress 200] (MX6125) + + pci:v00001002d00005955sv00001462sd00000131* +- ID_MODEL_FROM_DATABASE=MS-1013 Notebook ++ ID_MODEL_FROM_DATABASE=RS480M [Mobility Radeon Xpress 200] (MS-1013 Notebook) + + pci:v00001002d00005956* + ID_MODEL_FROM_DATABASE=RD790 Host Bridge +@@ -3771,7 +3771,7 @@ pci:v00001002d00005957* + ID_MODEL_FROM_DATABASE=RX780/RX790 Host Bridge + + pci:v00001002d00005957sv00001849sd00005957* +- ID_MODEL_FROM_DATABASE=A770CrossFire Motherboard ++ ID_MODEL_FROM_DATABASE=RX780/RX790 Host Bridge (A770CrossFire Motherboard) + + pci:v00001002d00005958* + ID_MODEL_FROM_DATABASE=RD780 Host Bridge +@@ -3780,37 +3780,37 @@ pci:v00001002d00005960* + ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 PRO] + + pci:v00001002d00005960sv000017AFsd00002020* +- ID_MODEL_FROM_DATABASE=Excalibur Radeon 9250 ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 PRO] (Excalibur Radeon 9250) + + pci:v00001002d00005961* + ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200] + + pci:v00001002d00005961sv00001002sd00002F72* +- ID_MODEL_FROM_DATABASE=All-in-Wonder 9200 Series ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200] (All-in-Wonder 9200 Series) + + pci:v00001002d00005961sv00001019sd00004C30* +- ID_MODEL_FROM_DATABASE=Radeon 9200 VIVO ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200] (Radeon 9200 VIVO) + + pci:v00001002d00005961sv000012ABsd00005961* +- ID_MODEL_FROM_DATABASE=YUAN SMARTVGA Radeon 9200 ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200] (YUAN SMARTVGA Radeon 9200) + + pci:v00001002d00005961sv00001458sd00004018* +- ID_MODEL_FROM_DATABASE=Radeon 9200 ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200] (Radeon 9200) + + pci:v00001002d00005961sv0000174Bsd00007C13* +- ID_MODEL_FROM_DATABASE=Radeon 9200 ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200] (Radeon 9200) + + pci:v00001002d00005961sv000017AFsd0000200C* +- ID_MODEL_FROM_DATABASE=Excalibur Radeon 9200 ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200] (Excalibur Radeon 9200) + + pci:v00001002d00005961sv000018BCsd00000050* +- ID_MODEL_FROM_DATABASE=Radeon 9200 Game Buster ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200] (Radeon 9200 Game Buster) + + pci:v00001002d00005961sv000018BCsd00000051* +- ID_MODEL_FROM_DATABASE=GC-R9200-C3 ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200] (GC-R9200-C3) + + pci:v00001002d00005961sv000018BCsd00000053* +- ID_MODEL_FROM_DATABASE=Radeon 9200 Game Buster VIVO ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200] (Radeon 9200 Game Buster VIVO) + + pci:v00001002d00005962* + ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200] +@@ -3819,37 +3819,37 @@ pci:v00001002d00005964* + ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] + + pci:v00001002d00005964sv00001002sd00005964* +- ID_MODEL_FROM_DATABASE=Radeon 9200 SE, 64-bit 128MB DDR, 200/166MHz ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Radeon 9200 SE, 64-bit 128MB DDR, 200/166MHz) + + pci:v00001002d00005964sv00001043sd0000C006* +- ID_MODEL_FROM_DATABASE=Radeon 9200 SE / TD / 128M ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Radeon 9200 SE / TD / 128M) + + pci:v00001002d00005964sv00001458sd00004018* +- ID_MODEL_FROM_DATABASE=Radeon 9200 SE ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Radeon 9200 SE) + + pci:v00001002d00005964sv00001458sd00004032* +- ID_MODEL_FROM_DATABASE=Radeon 9200 SE 128MB ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Radeon 9200 SE 128MB) + + pci:v00001002d00005964sv0000147Bsd00006191* +- ID_MODEL_FROM_DATABASE=R9200SE-DT ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (R9200SE-DT) + + pci:v00001002d00005964sv0000148Csd00002073* +- ID_MODEL_FROM_DATABASE=CN-AG92E ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (CN-AG92E) + + pci:v00001002d00005964sv0000174Bsd00007C13* +- ID_MODEL_FROM_DATABASE=Radeon 9200 SE ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Radeon 9200 SE) + + pci:v00001002d00005964sv00001787sd00005964* +- ID_MODEL_FROM_DATABASE=Excalibur 9200SE VIVO 128M ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Excalibur 9200SE VIVO 128M) + + pci:v00001002d00005964sv000017AFsd00002012* +- ID_MODEL_FROM_DATABASE=Radeon 9200 SE Excalibur ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Radeon 9200 SE Excalibur) + + pci:v00001002d00005964sv000018BCsd00000170* +- ID_MODEL_FROM_DATABASE=Sapphire Radeon 9200 SE 128MB Game Buster ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Sapphire Radeon 9200 SE 128MB Game Buster) + + pci:v00001002d00005964sv000018BCsd00000173* +- ID_MODEL_FROM_DATABASE=GC-R9200L(SE)-C3H [Radeon 9200 Game Buster] ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (GC-R9200L(SE)-C3H [Radeon 9200 Game Buster]) + + pci:v00001002d00005965* + ID_MODEL_FROM_DATABASE=RV280 GL [FireMV 2200 PCI] +@@ -3858,10 +3858,10 @@ pci:v00001002d00005974* + ID_MODEL_FROM_DATABASE=RS482/RS485 [Radeon Xpress 1100/1150] + + pci:v00001002d00005974sv0000103Csd0000280A* +- ID_MODEL_FROM_DATABASE=DC5750 Microtower ++ ID_MODEL_FROM_DATABASE=RS482/RS485 [Radeon Xpress 1100/1150] (DC5750 Microtower) + + pci:v00001002d00005974sv00001462sd00007141* +- ID_MODEL_FROM_DATABASE=Aspire L250 ++ ID_MODEL_FROM_DATABASE=RS482/RS485 [Radeon Xpress 1100/1150] (Aspire L250) + + pci:v00001002d00005975* + ID_MODEL_FROM_DATABASE=RS482M [Mobility Radeon Xpress 200] +@@ -3870,7 +3870,7 @@ pci:v00001002d00005978* + ID_MODEL_FROM_DATABASE=RX780/RD790 PCI to PCI bridge (external gfx0 port A) + + pci:v00001002d00005978sv00001849sd00005957* +- ID_MODEL_FROM_DATABASE=A770CrossFire Motherboard ++ ID_MODEL_FROM_DATABASE=RX780/RD790 PCI to PCI bridge (external gfx0 port A) (A770CrossFire Motherboard) + + pci:v00001002d00005979* + ID_MODEL_FROM_DATABASE=RD790 PCI to PCI bridge (external gfx0 port B) +@@ -3891,13 +3891,13 @@ pci:v00001002d0000597E* + ID_MODEL_FROM_DATABASE=RD790 PCI to PCI bridge (PCI express gpp port E) + + pci:v00001002d0000597Esv00001849sd00005957* +- ID_MODEL_FROM_DATABASE=A770CrossFire Motherboard ++ ID_MODEL_FROM_DATABASE=RD790 PCI to PCI bridge (PCI express gpp port E) (A770CrossFire Motherboard) + + pci:v00001002d0000597F* + ID_MODEL_FROM_DATABASE=RD790 PCI to PCI bridge (PCI express gpp port F) + + pci:v00001002d0000597Fsv00001849sd00005957* +- ID_MODEL_FROM_DATABASE=A770CrossFire Motherboard ++ ID_MODEL_FROM_DATABASE=RD790 PCI to PCI bridge (PCI express gpp port F) (A770CrossFire Motherboard) + + pci:v00001002d00005980* + ID_MODEL_FROM_DATABASE=RD790 PCI to PCI bridge (external gfx1 port A) +@@ -3918,7 +3918,7 @@ pci:v00001002d00005A12* + ID_MODEL_FROM_DATABASE=RD890 Northbridge only dual slot (2x8) PCI-e GFX Hydra part + + pci:v00001002d00005A12sv000015D9sd0000A811* +- ID_MODEL_FROM_DATABASE=H8DGU ++ ID_MODEL_FROM_DATABASE=RD890 Northbridge only dual slot (2x8) PCI-e GFX Hydra part (H8DGU) + + pci:v00001002d00005A13* + ID_MODEL_FROM_DATABASE=RD890 PCI to PCI bridge (external gfx0 port A) +@@ -3939,7 +3939,7 @@ pci:v00001002d00005A18* + ID_MODEL_FROM_DATABASE=RD890 PCI to PCI bridge (PCI express gpp port D) + + pci:v00001002d00005A18sv000015D9sd0000A811* +- ID_MODEL_FROM_DATABASE=H8DGU ++ ID_MODEL_FROM_DATABASE=RD890 PCI to PCI bridge (PCI express gpp port D) (H8DGU) + + pci:v00001002d00005A19* + ID_MODEL_FROM_DATABASE=RD890 PCI to PCI bridge (PCI express gpp port E) +@@ -3963,7 +3963,7 @@ pci:v00001002d00005A1F* + ID_MODEL_FROM_DATABASE=RD890 PCI to PCI bridge (NB-SB link) + + pci:v00001002d00005A1Fsv000015D9sd0000A811* +- ID_MODEL_FROM_DATABASE=H8DGU ++ ID_MODEL_FROM_DATABASE=RD890 PCI to PCI bridge (NB-SB link) (H8DGU) + + pci:v00001002d00005A20* + ID_MODEL_FROM_DATABASE=RD890S PCI Express bridge for GPP2 port 1 +@@ -3996,7 +3996,7 @@ pci:v00001002d00005A3F* + ID_MODEL_FROM_DATABASE=RC4xx/RS4xx PCI Bridge [int gfx] + + pci:v00001002d00005A3Fsv00001462sd00007217* +- ID_MODEL_FROM_DATABASE=Aspire L250 ++ ID_MODEL_FROM_DATABASE=RC4xx/RS4xx PCI Bridge [int gfx] (Aspire L250) + + pci:v00001002d00005A41* + ID_MODEL_FROM_DATABASE=RS400 [Radeon Xpress 200] +@@ -4014,25 +4014,25 @@ pci:v00001002d00005B60* + ID_MODEL_FROM_DATABASE=RV370 [Radeon X300] + + pci:v00001002d00005B60sv00001043sd0000002A* +- ID_MODEL_FROM_DATABASE=Extreme AX300SE-X ++ ID_MODEL_FROM_DATABASE=RV370 [Radeon X300] (Extreme AX300SE-X) + + pci:v00001002d00005B60sv00001043sd0000032E* +- ID_MODEL_FROM_DATABASE=Extreme AX300/TD ++ ID_MODEL_FROM_DATABASE=RV370 [Radeon X300] (Extreme AX300/TD) + + pci:v00001002d00005B60sv00001458sd00002102* +- ID_MODEL_FROM_DATABASE=GV-RX30S128D (X300SE) ++ ID_MODEL_FROM_DATABASE=RV370 [Radeon X300] (GV-RX30S128D (X300SE)) + + pci:v00001002d00005B60sv00001462sd00000400* +- ID_MODEL_FROM_DATABASE=RX300SE-TD128E (MS-8940 REV:200) ++ ID_MODEL_FROM_DATABASE=RV370 [Radeon X300] (RX300SE-TD128E (MS-8940 REV:200)) + + pci:v00001002d00005B60sv00001462sd00000402* +- ID_MODEL_FROM_DATABASE=RX300SE-TD128E (MS-8940) ++ ID_MODEL_FROM_DATABASE=RV370 [Radeon X300] (RX300SE-TD128E (MS-8940)) + + pci:v00001002d00005B60sv0000174Bsd00000500* +- ID_MODEL_FROM_DATABASE=Radeon X300 (PCIE) ++ ID_MODEL_FROM_DATABASE=RV370 [Radeon X300] (Radeon X300 (PCIE)) + + pci:v00001002d00005B60sv0000196Dsd00001086* +- ID_MODEL_FROM_DATABASE=X300SE HM ++ ID_MODEL_FROM_DATABASE=RV370 [Radeon X300] (X300SE HM) + + pci:v00001002d00005B62* + ID_MODEL_FROM_DATABASE=RV370 [Radeon X600/X600 SE] +@@ -4053,13 +4053,13 @@ pci:v00001002d00005B70* + ID_MODEL_FROM_DATABASE=RV370 [Radeon X300 SE] + + pci:v00001002d00005B70sv00001462sd00000403* +- ID_MODEL_FROM_DATABASE=Radeon X300 SE 128MB DDR ++ ID_MODEL_FROM_DATABASE=RV370 [Radeon X300 SE] (Radeon X300 SE 128MB DDR) + + pci:v00001002d00005B70sv0000174Bsd00000501* +- ID_MODEL_FROM_DATABASE=Radeon X300 SE ++ ID_MODEL_FROM_DATABASE=RV370 [Radeon X300 SE] (Radeon X300 SE) + + pci:v00001002d00005B70sv0000196Dsd00001087* +- ID_MODEL_FROM_DATABASE=Radeon X300 SE HyperMemory ++ ID_MODEL_FROM_DATABASE=RV370 [Radeon X300 SE] (Radeon X300 SE HyperMemory) + + pci:v00001002d00005B72* + ID_MODEL_FROM_DATABASE=RV380 [Radeon X300/X550/X1050 Series] (Secondary) +@@ -4080,37 +4080,37 @@ pci:v00001002d00005C63* + ID_MODEL_FROM_DATABASE=RV280/M9+ [Mobility Radeon 9200 AGP] + + pci:v00001002d00005C63sv00001002sd00005C63* +- ID_MODEL_FROM_DATABASE=Apple iBook G4 2004 ++ ID_MODEL_FROM_DATABASE=RV280/M9+ [Mobility Radeon 9200 AGP] (Apple iBook G4 2004) + + pci:v00001002d00005C63sv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P30 notebook ++ ID_MODEL_FROM_DATABASE=RV280/M9+ [Mobility Radeon 9200 AGP] (P30 notebook) + + pci:v00001002d00005D44* + ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Secondary) + + pci:v00001002d00005D44sv00001458sd00004019* +- ID_MODEL_FROM_DATABASE=Radeon 9200 SE (Secondary) ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Secondary) (Radeon 9200 SE (Secondary)) + + pci:v00001002d00005D44sv00001458sd00004032* +- ID_MODEL_FROM_DATABASE=Radeon 9200 SE 128MB ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Secondary) (Radeon 9200 SE 128MB) + + pci:v00001002d00005D44sv0000147Bsd00006190* +- ID_MODEL_FROM_DATABASE=R9200SE-DT (Secondary) ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Secondary) (R9200SE-DT (Secondary)) + + pci:v00001002d00005D44sv0000174Bsd00007C12* +- ID_MODEL_FROM_DATABASE=Radeon 9200 SE (Secondary) ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Secondary) (Radeon 9200 SE (Secondary)) + + pci:v00001002d00005D44sv00001787sd00005965* +- ID_MODEL_FROM_DATABASE=Excalibur 9200SE VIVO 128M (Secondary) ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Secondary) (Excalibur 9200SE VIVO 128M (Secondary)) + + pci:v00001002d00005D44sv000017AFsd00002013* +- ID_MODEL_FROM_DATABASE=Radeon 9200 SE Excalibur (Secondary) ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Secondary) (Radeon 9200 SE Excalibur (Secondary)) + + pci:v00001002d00005D44sv000018BCsd00000171* +- ID_MODEL_FROM_DATABASE=Radeon 9200 SE 128MB Game Buster (Secondary) ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Secondary) (Radeon 9200 SE 128MB Game Buster (Secondary)) + + pci:v00001002d00005D44sv000018BCsd00000172* +- ID_MODEL_FROM_DATABASE=GC-R9200L(SE)-C3H [Radeon 9200 Game Buster] ++ ID_MODEL_FROM_DATABASE=RV280 [Radeon 9200 SE] (Secondary) (GC-R9200L(SE)-C3H [Radeon 9200 Game Buster]) + + pci:v00001002d00005D45* + ID_MODEL_FROM_DATABASE=RV280 GL [FireMV 2200 PCI] (Secondary) +@@ -4140,7 +4140,7 @@ pci:v00001002d00005D52* + ID_MODEL_FROM_DATABASE=R480 [Radeon X850 XT] + + pci:v00001002d00005D52sv00001002sd00000B12* +- ID_MODEL_FROM_DATABASE=PowerColor X850XT PCIe (Primary) ++ ID_MODEL_FROM_DATABASE=R480 [Radeon X850 XT] (PowerColor X850XT PCIe (Primary)) + + pci:v00001002d00005D57* + ID_MODEL_FROM_DATABASE=R423 [Radeon X800 XT] +@@ -4155,7 +4155,7 @@ pci:v00001002d00005D72* + ID_MODEL_FROM_DATABASE=R480 [Radeon X850 XT] (Secondary) + + pci:v00001002d00005D72sv00001002sd00000B13* +- ID_MODEL_FROM_DATABASE=PowerColor X850XT PCIe (Secondary) ++ ID_MODEL_FROM_DATABASE=R480 [Radeon X850 XT] (Secondary) (PowerColor X850XT PCIe (Secondary)) + + pci:v00001002d00005D77* + ID_MODEL_FROM_DATABASE=R423 [Radeon X800 XT] (Secondary) +@@ -4179,13 +4179,13 @@ pci:v00001002d00005E4D* + ID_MODEL_FROM_DATABASE=RV410 [Radeon X700] + + pci:v00001002d00005E4Dsv0000148Csd00002116* +- ID_MODEL_FROM_DATABASE=Bravo X700 ++ ID_MODEL_FROM_DATABASE=RV410 [Radeon X700] (Bravo X700) + + pci:v00001002d00005E4F* + ID_MODEL_FROM_DATABASE=RV410 [Radeon X700] + + pci:v00001002d00005E4Fsv00001569sd00001E4F* +- ID_MODEL_FROM_DATABASE=Radeon X550 XT ++ ID_MODEL_FROM_DATABASE=RV410 [Radeon X700] (Radeon X550 XT) + + pci:v00001002d00005E6B* + ID_MODEL_FROM_DATABASE=RV410 [Radeon X700 PRO] (Secondary) +@@ -4194,7 +4194,7 @@ pci:v00001002d00005E6D* + ID_MODEL_FROM_DATABASE=RV410 [Radeon X700] (Secondary) + + pci:v00001002d00005E6Dsv0000148Csd00002117* +- ID_MODEL_FROM_DATABASE=Bravo X700 (Secondary) ++ ID_MODEL_FROM_DATABASE=RV410 [Radeon X700] (Secondary) (Bravo X700 (Secondary)) + + pci:v00001002d00005F57* + ID_MODEL_FROM_DATABASE=R423 [Radeon X800 XT] +@@ -4206,7 +4206,7 @@ pci:v00001002d00006601* + ID_MODEL_FROM_DATABASE=Mars [Radeon HD 8730M] + + pci:v00001002d00006601sv0000103Csd00002100* +- ID_MODEL_FROM_DATABASE=FirePro M4100 ++ ID_MODEL_FROM_DATABASE=Mars [Radeon HD 8730M] (FirePro M4100) + + pci:v00001002d00006602* + ID_MODEL_FROM_DATABASE=Mars +@@ -4230,40 +4230,40 @@ pci:v00001002d00006610* + ID_MODEL_FROM_DATABASE=Oland XT [Radeon HD 8670 / R7 250] + + pci:v00001002d00006610sv00001019sd00000030* +- ID_MODEL_FROM_DATABASE=Radeon HD 8670 ++ ID_MODEL_FROM_DATABASE=Oland XT [Radeon HD 8670 / R7 250] (Radeon HD 8670) + + pci:v00001002d00006610sv00001028sd00002120* +- ID_MODEL_FROM_DATABASE=Radeon R7 250 ++ ID_MODEL_FROM_DATABASE=Oland XT [Radeon HD 8670 / R7 250] (Radeon R7 250) + + pci:v00001002d00006610sv00001028sd00002322* +- ID_MODEL_FROM_DATABASE=Radeon R7 250 ++ ID_MODEL_FROM_DATABASE=Oland XT [Radeon HD 8670 / R7 250] (Radeon R7 250) + + pci:v00001002d00006610sv00001462sd00002910* +- ID_MODEL_FROM_DATABASE=Radeon HD 8670 ++ ID_MODEL_FROM_DATABASE=Oland XT [Radeon HD 8670 / R7 250] (Radeon HD 8670) + + pci:v00001002d00006610sv00001462sd00002911* +- ID_MODEL_FROM_DATABASE=Radeon HD 8670 ++ ID_MODEL_FROM_DATABASE=Oland XT [Radeon HD 8670 / R7 250] (Radeon HD 8670) + + pci:v00001002d00006610sv00001642sd00003C81* +- ID_MODEL_FROM_DATABASE=Radeon HD 8670 ++ ID_MODEL_FROM_DATABASE=Oland XT [Radeon HD 8670 / R7 250] (Radeon HD 8670) + + pci:v00001002d00006610sv00001642sd00003C91* +- ID_MODEL_FROM_DATABASE=Radeon HD 8670 ++ ID_MODEL_FROM_DATABASE=Oland XT [Radeon HD 8670 / R7 250] (Radeon HD 8670) + + pci:v00001002d00006611* + ID_MODEL_FROM_DATABASE=Oland [Radeon HD 8570 / R7 240 OEM] + + pci:v00001002d00006611sv00001028sd0000210B* +- ID_MODEL_FROM_DATABASE=Radeon R5 240 OEM ++ ID_MODEL_FROM_DATABASE=Oland [Radeon HD 8570 / R7 240 OEM] (Radeon R5 240 OEM) + + pci:v00001002d00006611sv0000174Bsd00004248* +- ID_MODEL_FROM_DATABASE=Radeon R7 240 OEM ++ ID_MODEL_FROM_DATABASE=Oland [Radeon HD 8570 / R7 240 OEM] (Radeon R7 240 OEM) + + pci:v00001002d00006611sv0000174Bsd0000A240* +- ID_MODEL_FROM_DATABASE=Radeon R7 240 OEM ++ ID_MODEL_FROM_DATABASE=Oland [Radeon HD 8570 / R7 240 OEM] (Radeon R7 240 OEM) + + pci:v00001002d00006611sv00001B0Asd000090D3* +- ID_MODEL_FROM_DATABASE=Radeon R7 240 OEM ++ ID_MODEL_FROM_DATABASE=Oland [Radeon HD 8570 / R7 240 OEM] (Radeon R7 240 OEM) + + pci:v00001002d00006613* + ID_MODEL_FROM_DATABASE=Oland PRO [Radeon R7 240] +@@ -4302,28 +4302,28 @@ pci:v00001002d0000665C* + ID_MODEL_FROM_DATABASE=Bonaire XT [Radeon HD 7790/8770 / R9 260 OEM] + + pci:v00001002d0000665Csv00001043sd00000452* +- ID_MODEL_FROM_DATABASE=Radeon HD 7790 DirectCU II OC ++ ID_MODEL_FROM_DATABASE=Bonaire XT [Radeon HD 7790/8770 / R9 260 OEM] (Radeon HD 7790 DirectCU II OC) + + pci:v00001002d0000665Csv00001462sd00002930* +- ID_MODEL_FROM_DATABASE=Radeon HD 7790 OC ++ ID_MODEL_FROM_DATABASE=Bonaire XT [Radeon HD 7790/8770 / R9 260 OEM] (Radeon HD 7790 OC) + + pci:v00001002d0000665Csv00001462sd00002932* +- ID_MODEL_FROM_DATABASE=Radeon HD 8770 ++ ID_MODEL_FROM_DATABASE=Bonaire XT [Radeon HD 7790/8770 / R9 260 OEM] (Radeon HD 8770) + + pci:v00001002d0000665Csv00001462sd00002934* +- ID_MODEL_FROM_DATABASE=Radeon R9 260 OEM ++ ID_MODEL_FROM_DATABASE=Bonaire XT [Radeon HD 7790/8770 / R9 260 OEM] (Radeon R9 260 OEM) + + pci:v00001002d0000665Csv0000148Csd00009260* +- ID_MODEL_FROM_DATABASE=Radeon R9 260 OEM ++ ID_MODEL_FROM_DATABASE=Bonaire XT [Radeon HD 7790/8770 / R9 260 OEM] (Radeon R9 260 OEM) + + pci:v00001002d0000665Csv00001682sd00003310* +- ID_MODEL_FROM_DATABASE=Radeon HD 7790 Black Edition 2 GB ++ ID_MODEL_FROM_DATABASE=Bonaire XT [Radeon HD 7790/8770 / R9 260 OEM] (Radeon HD 7790 Black Edition 2 GB) + + pci:v00001002d0000665Csv0000174Bsd0000E253* +- ID_MODEL_FROM_DATABASE=Radeon HD 7790 Dual-X OC ++ ID_MODEL_FROM_DATABASE=Bonaire XT [Radeon HD 7790/8770 / R9 260 OEM] (Radeon HD 7790 Dual-X OC) + + pci:v00001002d0000665Csv00001787sd00002329* +- ID_MODEL_FROM_DATABASE=Radeon HD 7790 TurboDuo ++ ID_MODEL_FROM_DATABASE=Bonaire XT [Radeon HD 7790/8770 / R9 260 OEM] (Radeon HD 7790 TurboDuo) + + pci:v00001002d0000665D* + ID_MODEL_FROM_DATABASE=Bonaire [Radeon R7 200 Series] +@@ -4335,7 +4335,7 @@ pci:v00001002d00006663* + ID_MODEL_FROM_DATABASE=Sun PRO [Radeon HD 8570A/8570M] + + pci:v00001002d00006663sv00001025sd00000846* +- ID_MODEL_FROM_DATABASE=Radeon HD 8570A ++ ID_MODEL_FROM_DATABASE=Sun PRO [Radeon HD 8570A/8570M] (Radeon HD 8570A) + + pci:v00001002d00006664* + ID_MODEL_FROM_DATABASE=Jet XT [Radeon R5 M240] +@@ -4377,34 +4377,34 @@ pci:v00001002d00006720* + ID_MODEL_FROM_DATABASE=Blackcomb [Radeon HD 6970M/6990M] + + pci:v00001002d00006720sv00001028sd0000048F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6990M ++ ID_MODEL_FROM_DATABASE=Blackcomb [Radeon HD 6970M/6990M] (Radeon HD 6990M) + + pci:v00001002d00006720sv00001028sd00000490* +- ID_MODEL_FROM_DATABASE=Alienware M17x R3 Radeon HD 6970M ++ ID_MODEL_FROM_DATABASE=Blackcomb [Radeon HD 6970M/6990M] (Alienware M17x R3 Radeon HD 6970M) + + pci:v00001002d00006720sv00001028sd000004A4* +- ID_MODEL_FROM_DATABASE=FirePro M8900 ++ ID_MODEL_FROM_DATABASE=Blackcomb [Radeon HD 6970M/6990M] (FirePro M8900) + + pci:v00001002d00006720sv00001028sd000004BA* +- ID_MODEL_FROM_DATABASE=Radeon HD 6990M ++ ID_MODEL_FROM_DATABASE=Blackcomb [Radeon HD 6970M/6990M] (Radeon HD 6990M) + + pci:v00001002d00006720sv00001028sd0000053F* +- ID_MODEL_FROM_DATABASE=FirePro M8900 ++ ID_MODEL_FROM_DATABASE=Blackcomb [Radeon HD 6970M/6990M] (FirePro M8900) + + pci:v00001002d00006720sv0000106Bsd00000B00* +- ID_MODEL_FROM_DATABASE=Radeon HD 6970M ++ ID_MODEL_FROM_DATABASE=Blackcomb [Radeon HD 6970M/6990M] (Radeon HD 6970M) + + pci:v00001002d00006720sv00001558sd00005102* +- ID_MODEL_FROM_DATABASE=Radeon HD 6970M ++ ID_MODEL_FROM_DATABASE=Blackcomb [Radeon HD 6970M/6990M] (Radeon HD 6970M) + + pci:v00001002d00006720sv00001558sd00005104* +- ID_MODEL_FROM_DATABASE=Radeon HD 6990M ++ ID_MODEL_FROM_DATABASE=Blackcomb [Radeon HD 6970M/6990M] (Radeon HD 6990M) + + pci:v00001002d00006720sv00001558sd00007201* +- ID_MODEL_FROM_DATABASE=Radeon HD 6990M ++ ID_MODEL_FROM_DATABASE=Blackcomb [Radeon HD 6970M/6990M] (Radeon HD 6990M) + + pci:v00001002d00006720sv0000174Bsd0000E188* +- ID_MODEL_FROM_DATABASE=Radeon HD 6970M ++ ID_MODEL_FROM_DATABASE=Blackcomb [Radeon HD 6970M/6990M] (Radeon HD 6970M) + + pci:v00001002d00006724* + ID_MODEL_FROM_DATABASE=Blackcomb [Mobility Radeon HD 6000 series] +@@ -4416,511 +4416,511 @@ pci:v00001002d00006738* + ID_MODEL_FROM_DATABASE=Barts XT [Radeon HD 6870] + + pci:v00001002d00006738sv00001682sd00003103* +- ID_MODEL_FROM_DATABASE=Radeon HD 8670 ++ ID_MODEL_FROM_DATABASE=Barts XT [Radeon HD 6870] (Radeon HD 8670) + + pci:v00001002d00006738sv00001787sd0000201A* +- ID_MODEL_FROM_DATABASE=Barts XT [Radeon HD 6870 X2] ++ ID_MODEL_FROM_DATABASE=Barts XT [Radeon HD 6870] (Barts XT [Radeon HD 6870 X2]) + + pci:v00001002d00006738sv00001787sd0000201B* +- ID_MODEL_FROM_DATABASE=Barts XT [Radeon HD 6870 X2] ++ ID_MODEL_FROM_DATABASE=Barts XT [Radeon HD 6870] (Barts XT [Radeon HD 6870 X2]) + + pci:v00001002d00006739* + ID_MODEL_FROM_DATABASE=Barts PRO [Radeon HD 6850] + + pci:v00001002d00006739sv00001043sd000003B4* +- ID_MODEL_FROM_DATABASE=EAH6850 [Radeon HD 6850] ++ ID_MODEL_FROM_DATABASE=Barts PRO [Radeon HD 6850] (EAH6850 [Radeon HD 6850]) + + pci:v00001002d0000673E* + ID_MODEL_FROM_DATABASE=Barts LE [Radeon HD 6790] + + pci:v00001002d0000673Esv0000148Csd00007720* +- ID_MODEL_FROM_DATABASE=Radeon HD 7720 OEM ++ ID_MODEL_FROM_DATABASE=Barts LE [Radeon HD 6790] (Radeon HD 7720 OEM) + + pci:v00001002d00006740* + ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] + + pci:v00001002d00006740sv00001019sd0000238C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6730M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6730M) + + pci:v00001002d00006740sv00001019sd0000238E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6730M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6730M) + + pci:v00001002d00006740sv00001019sd00002391* +- ID_MODEL_FROM_DATABASE=Radeon HD 6730M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6730M) + + pci:v00001002d00006740sv00001019sd00002392* +- ID_MODEL_FROM_DATABASE=Radeon HD 6770M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6770M) + + pci:v00001002d00006740sv00001028sd000004A3* +- ID_MODEL_FROM_DATABASE=Precision M4600 ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Precision M4600) + + pci:v00001002d00006740sv00001028sd0000053E* +- ID_MODEL_FROM_DATABASE=FirePro M5950 ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (FirePro M5950) + + pci:v00001002d00006740sv0000103Csd00001630* +- ID_MODEL_FROM_DATABASE=FirePro M5950 ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (FirePro M5950) + + pci:v00001002d00006740sv0000103Csd00001631* +- ID_MODEL_FROM_DATABASE=FirePro M5950 ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (FirePro M5950) + + pci:v00001002d00006740sv0000103Csd0000164B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6730M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6730M) + + pci:v00001002d00006740sv0000103Csd0000164E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6730M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6730M) + + pci:v00001002d00006740sv0000103Csd00001657* +- ID_MODEL_FROM_DATABASE=Radeon HD 6770M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6770M) + + pci:v00001002d00006740sv0000103Csd00001658* +- ID_MODEL_FROM_DATABASE=Radeon HD 6770M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6770M) + + pci:v00001002d00006740sv0000103Csd0000165A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6770M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6770M) + + pci:v00001002d00006740sv0000103Csd0000165B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6770M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6770M) + + pci:v00001002d00006740sv0000103Csd00001688* +- ID_MODEL_FROM_DATABASE=Radeon HD 6770M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6770M) + + pci:v00001002d00006740sv0000103Csd00001689* +- ID_MODEL_FROM_DATABASE=Radeon HD 6770M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6770M) + + pci:v00001002d00006740sv0000103Csd0000168A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6770M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6770M) + + pci:v00001002d00006740sv0000103Csd0000185E* +- ID_MODEL_FROM_DATABASE=Radeon HD 7690M XT ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 7690M XT) + + pci:v00001002d00006740sv0000103Csd00003388* +- ID_MODEL_FROM_DATABASE=Radeon HD 6770M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6770M) + + pci:v00001002d00006740sv0000103Csd00003389* +- ID_MODEL_FROM_DATABASE=Radeon HD 6770M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6770M) + + pci:v00001002d00006740sv0000103Csd00003582* +- ID_MODEL_FROM_DATABASE=Radeon HD 6770M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6770M) + + pci:v00001002d00006740sv0000103Csd0000366C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6730M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6730M) + + pci:v00001002d00006740sv00001043sd00001D02* +- ID_MODEL_FROM_DATABASE=Radeon HD 6730M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6730M) + + pci:v00001002d00006740sv00001043sd00001D12* +- ID_MODEL_FROM_DATABASE=Radeon HD 6730M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6730M) + + pci:v00001002d00006740sv0000104Dsd00009084* +- ID_MODEL_FROM_DATABASE=Radeon HD 6730M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6730M) + + pci:v00001002d00006740sv0000104Dsd00009085* +- ID_MODEL_FROM_DATABASE=Radeon HD 6730M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6730M) + + pci:v00001002d00006740sv0000144Dsd0000B074* +- ID_MODEL_FROM_DATABASE=Radeon HD 6730M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6730M) + + pci:v00001002d00006740sv0000144Dsd0000B077* +- ID_MODEL_FROM_DATABASE=Radeon HD 6730M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6730M) + + pci:v00001002d00006740sv0000144Dsd0000B084* +- ID_MODEL_FROM_DATABASE=Radeon HD 6730M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6730M) + + pci:v00001002d00006740sv0000144Dsd0000B088* +- ID_MODEL_FROM_DATABASE=Radeon HD 6730M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6730M) + + pci:v00001002d00006740sv000017AAsd00003982* +- ID_MODEL_FROM_DATABASE=Radeon HD 6730M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6730M/6770M/7690M XT] (Radeon HD 6730M) + + pci:v00001002d00006741* + ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] + + pci:v00001002d00006741sv00001019sd0000238E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001019sd0000238F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000379* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000037B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000037E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000382* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000384* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000385* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000386* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000387* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000388* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000442* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000451* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000489* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000048B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000048C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000050A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000050B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000050C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000050E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000050F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000513* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000514* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000515* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000516* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000051E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000051F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000520* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000521* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000052A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000555* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000556* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000055D* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000055E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000056D* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000059A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000059B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000059E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd0000059F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000600* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000605* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000606* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001025sd00000619* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001028sd000004C1* +- ID_MODEL_FROM_DATABASE=Radeon HD 6630M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6630M) + + pci:v00001002d00006741sv00001028sd000004C5* +- ID_MODEL_FROM_DATABASE=Radeon HD 6630M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6630M) + + pci:v00001002d00006741sv00001028sd000004CD* +- ID_MODEL_FROM_DATABASE=Radeon HD 6630M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6630M) + + pci:v00001002d00006741sv00001028sd000004D7* +- ID_MODEL_FROM_DATABASE=Radeon HD 6630M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6630M) + + pci:v00001002d00006741sv00001028sd000004D9* +- ID_MODEL_FROM_DATABASE=Radeon HD 6630M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6630M) + + pci:v00001002d00006741sv00001028sd0000052D* +- ID_MODEL_FROM_DATABASE=Radeon HD 6630M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6630M) + + pci:v00001002d00006741sv0000103Csd00001617* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv0000103Csd00001646* +- ID_MODEL_FROM_DATABASE=Radeon HD 6750M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6750M) + + pci:v00001002d00006741sv0000103Csd00001647* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv0000103Csd0000164B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv0000103Csd0000164E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv0000103Csd00001688* +- ID_MODEL_FROM_DATABASE=Radeon HD 6750M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6750M) + + pci:v00001002d00006741sv0000103Csd00001689* +- ID_MODEL_FROM_DATABASE=Radeon HD 6750M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6750M) + + pci:v00001002d00006741sv0000103Csd0000168A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6750M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6750M) + + pci:v00001002d00006741sv0000103Csd00001860* +- ID_MODEL_FROM_DATABASE=Radeon HD 7690M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 7690M) + + pci:v00001002d00006741sv0000103Csd00003385* +- ID_MODEL_FROM_DATABASE=Radeon HD 6630M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6630M) + + pci:v00001002d00006741sv0000103Csd00003560* +- ID_MODEL_FROM_DATABASE=Radeon HD 6750M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6750M) + + pci:v00001002d00006741sv0000103Csd0000358D* +- ID_MODEL_FROM_DATABASE=Radeon HD 6750M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6750M) + + pci:v00001002d00006741sv0000103Csd00003590* +- ID_MODEL_FROM_DATABASE=Radeon HD 6750M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6750M) + + pci:v00001002d00006741sv0000103Csd00003593* +- ID_MODEL_FROM_DATABASE=Radeon HD 6750M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6750M) + + pci:v00001002d00006741sv0000103Csd0000366C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001043sd00001CD2* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001043sd00002121* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001043sd00002122* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001043sd00002123* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001043sd00002125* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 7670M) + + pci:v00001002d00006741sv00001043sd00002127* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 7670M) + + pci:v00001002d00006741sv0000104Dsd0000907B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6630M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6630M) + + pci:v00001002d00006741sv0000104Dsd00009080* +- ID_MODEL_FROM_DATABASE=Radeon HD 6630M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6630M) + + pci:v00001002d00006741sv0000104Dsd00009081* +- ID_MODEL_FROM_DATABASE=Radeon HD 6630M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6630M) + + pci:v00001002d00006741sv0000106Bsd000000E2* +- ID_MODEL_FROM_DATABASE=MacBookPro8,2 [Core i7, 15", Late 2011] ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (MacBookPro8,2 [Core i7, 15", Late 2011]) + + pci:v00001002d00006741sv00001179sd0000FD63* +- ID_MODEL_FROM_DATABASE=Radeon HD 6630M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6630M) + + pci:v00001002d00006741sv00001179sd0000FD65* +- ID_MODEL_FROM_DATABASE=Radeon HD 6630M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6630M) + + pci:v00001002d00006741sv0000144Dsd0000C093* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv0000144Dsd0000C0AC* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv0000144Dsd0000C0B3* +- ID_MODEL_FROM_DATABASE=Radeon HD 6750M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6750M) + + pci:v00001002d00006741sv0000144Dsd0000C539* +- ID_MODEL_FROM_DATABASE=Radeon HD 6630M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6630M) + + pci:v00001002d00006741sv0000144Dsd0000C609* +- ID_MODEL_FROM_DATABASE=Radeon HD 6630M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6630M) + + pci:v00001002d00006741sv0000152Dsd00000914* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv000017AAsd000021E1* +- ID_MODEL_FROM_DATABASE=Radeon HD 6630M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6630M) + + pci:v00001002d00006741sv000017AAsd00003970* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv000017AAsd00003976* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006741sv00001854sd00000907* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650M ++ ID_MODEL_FROM_DATABASE=Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M] (Radeon HD 6650M) + + pci:v00001002d00006742* + ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] + + pci:v00001002d00006742sv00001002sd00006570* +- ID_MODEL_FROM_DATABASE=Turks [Radeon HD 6570] ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Turks [Radeon HD 6570]) + + pci:v00001002d00006742sv00001019sd00002393* +- ID_MODEL_FROM_DATABASE=Radeon HD 6610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 6610M) + + pci:v00001002d00006742sv00001043sd00001D82* +- ID_MODEL_FROM_DATABASE=K53SK Laptop Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (K53SK Laptop Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB22* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB23* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB27* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB2A* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB2C* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB30* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB31* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB32* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB38* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB39* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB3A* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB3B* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB40* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB41* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB47* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB48* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB49* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB51* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB52* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB53* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB56* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB81* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB82* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FB83* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FC56* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FCD4* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001179sd0000FCEE* +- ID_MODEL_FROM_DATABASE=Radeon HD 7610M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 7610M) + + pci:v00001002d00006742sv00001458sd00006570* +- ID_MODEL_FROM_DATABASE=Turks [Radeon HD 6570] ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Turks [Radeon HD 6570]) + + pci:v00001002d00006742sv00001462sd00006570* +- ID_MODEL_FROM_DATABASE=Turks [Radeon HD 6570] ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Turks [Radeon HD 6570]) + + pci:v00001002d00006742sv0000148Csd00006570* +- ID_MODEL_FROM_DATABASE=Turks [Radeon HD 6570] ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Turks [Radeon HD 6570]) + + pci:v00001002d00006742sv00001682sd00006570* +- ID_MODEL_FROM_DATABASE=Turks [Radeon HD 6570] ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Turks [Radeon HD 6570]) + + pci:v00001002d00006742sv0000174Bsd00005570* +- ID_MODEL_FROM_DATABASE=Turks [Radeon HD 5570] ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Turks [Radeon HD 5570]) + + pci:v00001002d00006742sv0000174Bsd00006570* +- ID_MODEL_FROM_DATABASE=Turks [Radeon HD 6570] ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Turks [Radeon HD 6570]) + + pci:v00001002d00006742sv0000174Bsd00007570* +- ID_MODEL_FROM_DATABASE=Turks [Radeon HD 7570] ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Turks [Radeon HD 7570]) + + pci:v00001002d00006742sv0000174Bsd00008510* +- ID_MODEL_FROM_DATABASE=Turks [Radeon HD 8510] ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Turks [Radeon HD 8510]) + + pci:v00001002d00006742sv0000174Bsd00008570* +- ID_MODEL_FROM_DATABASE=Turks [Radeon HD 8570] ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Turks [Radeon HD 8570]) + + pci:v00001002d00006742sv00001787sd00006570* +- ID_MODEL_FROM_DATABASE=Turks [Radeon HD 6570] ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Turks [Radeon HD 6570]) + + pci:v00001002d00006742sv000017AFsd00006570* +- ID_MODEL_FROM_DATABASE=Turks [Radeon HD 6570] ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Turks [Radeon HD 6570]) + + pci:v00001002d00006742sv00008086sd00002111* +- ID_MODEL_FROM_DATABASE=Radeon HD 6625M ++ ID_MODEL_FROM_DATABASE=Whistler LE [Radeon HD 6610M/7610M] (Radeon HD 6625M) + + pci:v00001002d00006743* + ID_MODEL_FROM_DATABASE=Whistler [Radeon E6760] +@@ -4935,133 +4935,133 @@ pci:v00001002d00006750* + ID_MODEL_FROM_DATABASE=Onega [Radeon HD 6650A/7650A] + + pci:v00001002d00006750sv00001462sd00002670* +- ID_MODEL_FROM_DATABASE=Radeon HD 6670A ++ ID_MODEL_FROM_DATABASE=Onega [Radeon HD 6650A/7650A] (Radeon HD 6670A) + + pci:v00001002d00006750sv000017AAsd00003079* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650A ++ ID_MODEL_FROM_DATABASE=Onega [Radeon HD 6650A/7650A] (Radeon HD 7650A) + + pci:v00001002d00006750sv000017AAsd0000307A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650A ++ ID_MODEL_FROM_DATABASE=Onega [Radeon HD 6650A/7650A] (Radeon HD 6650A) + + pci:v00001002d00006750sv000017AAsd00003087* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650A ++ ID_MODEL_FROM_DATABASE=Onega [Radeon HD 6650A/7650A] (Radeon HD 7650A) + + pci:v00001002d00006750sv000017AAsd00003618* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650A ++ ID_MODEL_FROM_DATABASE=Onega [Radeon HD 6650A/7650A] (Radeon HD 6650A) + + pci:v00001002d00006750sv000017AAsd00003623* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650A ++ ID_MODEL_FROM_DATABASE=Onega [Radeon HD 6650A/7650A] (Radeon HD 6650A) + + pci:v00001002d00006750sv000017AAsd00003627* +- ID_MODEL_FROM_DATABASE=Radeon HD 6650A ++ ID_MODEL_FROM_DATABASE=Onega [Radeon HD 6650A/7650A] (Radeon HD 6650A) + + pci:v00001002d00006751* + ID_MODEL_FROM_DATABASE=Turks [Radeon HD 7650A/7670A] + + pci:v00001002d00006751sv00001028sd00000548* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650A ++ ID_MODEL_FROM_DATABASE=Turks [Radeon HD 7650A/7670A] (Radeon HD 7650A) + + pci:v00001002d00006751sv00001462sd00002671* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670A ++ ID_MODEL_FROM_DATABASE=Turks [Radeon HD 7650A/7670A] (Radeon HD 7670A) + + pci:v00001002d00006751sv00001462sd00002672* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670A ++ ID_MODEL_FROM_DATABASE=Turks [Radeon HD 7650A/7670A] (Radeon HD 7670A) + + pci:v00001002d00006751sv00001462sd00002680* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650A ++ ID_MODEL_FROM_DATABASE=Turks [Radeon HD 7650A/7670A] (Radeon HD 7650A) + + pci:v00001002d00006751sv00001462sd00002681* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650A ++ ID_MODEL_FROM_DATABASE=Turks [Radeon HD 7650A/7670A] (Radeon HD 7650A) + + pci:v00001002d00006751sv000017AAsd00003087* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650A ++ ID_MODEL_FROM_DATABASE=Turks [Radeon HD 7650A/7670A] (Radeon HD 7650A) + + pci:v00001002d00006758* + ID_MODEL_FROM_DATABASE=Turks XT [Radeon HD 6670/7670] + + pci:v00001002d00006758sv00001028sd00000B0E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6670 ++ ID_MODEL_FROM_DATABASE=Turks XT [Radeon HD 6670/7670] (Radeon HD 6670) + + pci:v00001002d00006758sv0000103Csd00006882* +- ID_MODEL_FROM_DATABASE=Radeon HD 6670 ++ ID_MODEL_FROM_DATABASE=Turks XT [Radeon HD 6670/7670] (Radeon HD 6670) + + pci:v00001002d00006758sv00001462sd0000250A* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670 ++ ID_MODEL_FROM_DATABASE=Turks XT [Radeon HD 6670/7670] (Radeon HD 7670) + + pci:v00001002d00006758sv0000148Csd00007670* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670 ++ ID_MODEL_FROM_DATABASE=Turks XT [Radeon HD 6670/7670] (Radeon HD 7670) + + pci:v00001002d00006758sv00001545sd00007670* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670 ++ ID_MODEL_FROM_DATABASE=Turks XT [Radeon HD 6670/7670] (Radeon HD 7670) + + pci:v00001002d00006758sv00001682sd00003300* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670 ++ ID_MODEL_FROM_DATABASE=Turks XT [Radeon HD 6670/7670] (Radeon HD 7670) + + pci:v00001002d00006758sv0000174Bsd00007670* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670 ++ ID_MODEL_FROM_DATABASE=Turks XT [Radeon HD 6670/7670] (Radeon HD 7670) + + pci:v00001002d00006758sv0000174Bsd0000E181* +- ID_MODEL_FROM_DATABASE=Radeon HD 6670 ++ ID_MODEL_FROM_DATABASE=Turks XT [Radeon HD 6670/7670] (Radeon HD 6670) + + pci:v00001002d00006758sv00001787sd00002309* +- ID_MODEL_FROM_DATABASE=Radeon HD 6670 ++ ID_MODEL_FROM_DATABASE=Turks XT [Radeon HD 6670/7670] (Radeon HD 6670) + + pci:v00001002d00006759* + ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] + + pci:v00001002d00006759sv0000103Csd00003130* +- ID_MODEL_FROM_DATABASE=Radeon HD 6570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 6570) + + pci:v00001002d00006759sv00001043sd00000403* +- ID_MODEL_FROM_DATABASE=Radeon HD 6570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 6570) + + pci:v00001002d00006759sv00001462sd00002500* +- ID_MODEL_FROM_DATABASE=Radeon HD 6570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 6570) + + pci:v00001002d00006759sv00001462sd00002509* +- ID_MODEL_FROM_DATABASE=Radeon HD 7570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 7570) + + pci:v00001002d00006759sv0000148Csd00007570* +- ID_MODEL_FROM_DATABASE=Radeon HD 7570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 7570) + + pci:v00001002d00006759sv00001642sd00003A67* +- ID_MODEL_FROM_DATABASE=Radeon HD 6570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 6570) + + pci:v00001002d00006759sv00001682sd00003280* +- ID_MODEL_FROM_DATABASE=Radeon HD 7570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 7570) + + pci:v00001002d00006759sv00001682sd00003530* +- ID_MODEL_FROM_DATABASE=Radeon HD 8550 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 8550) + + pci:v00001002d00006759sv0000174Bsd00007570* +- ID_MODEL_FROM_DATABASE=Radeon HD 7570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 7570) + + pci:v00001002d00006759sv0000174Bsd0000E142* +- ID_MODEL_FROM_DATABASE=Radeon HD 6570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 6570) + + pci:v00001002d00006759sv0000174Bsd0000E181* +- ID_MODEL_FROM_DATABASE=Radeon HD 6570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 6570) + + pci:v00001002d00006759sv00001B0Asd0000908F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 6570) + + pci:v00001002d00006759sv00001B0Asd00009090* +- ID_MODEL_FROM_DATABASE=Radeon HD 6570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 6570) + + pci:v00001002d00006759sv00001B0Asd00009091* +- ID_MODEL_FROM_DATABASE=Radeon HD 6570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 6570) + + pci:v00001002d00006759sv00001B0Asd00009092* +- ID_MODEL_FROM_DATABASE=Radeon HD 6570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 6570) + + pci:v00001002d00006759sv00001B0Asd0000909E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 6570) + + pci:v00001002d00006759sv00001B0Asd000090B5* +- ID_MODEL_FROM_DATABASE=Radeon HD 7570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 7570) + + pci:v00001002d00006759sv00001B0Asd000090B6* +- ID_MODEL_FROM_DATABASE=Radeon HD 7570 ++ ID_MODEL_FROM_DATABASE=Turks PRO [Radeon HD 6570/7570/8550] (Radeon HD 7570) + + pci:v00001002d0000675B* + ID_MODEL_FROM_DATABASE=Turks [Radeon HD 7600 Series] +@@ -5073,526 +5073,526 @@ pci:v00001002d0000675F* + ID_MODEL_FROM_DATABASE=Turks LE [Radeon HD 5570/6510/7510/8510] + + pci:v00001002d0000675Fsv0000148Csd00006510* +- ID_MODEL_FROM_DATABASE=Radeon HD 6510 ++ ID_MODEL_FROM_DATABASE=Turks LE [Radeon HD 5570/6510/7510/8510] (Radeon HD 6510) + + pci:v00001002d0000675Fsv0000148Csd00006530* +- ID_MODEL_FROM_DATABASE=Radeon HD 6530 ++ ID_MODEL_FROM_DATABASE=Turks LE [Radeon HD 5570/6510/7510/8510] (Radeon HD 6530) + + pci:v00001002d0000675Fsv0000148Csd00007510* +- ID_MODEL_FROM_DATABASE=Radeon HD 7510 ++ ID_MODEL_FROM_DATABASE=Turks LE [Radeon HD 5570/6510/7510/8510] (Radeon HD 7510) + + pci:v00001002d0000675Fsv00001545sd00007570* +- ID_MODEL_FROM_DATABASE=Radeon HD 7570 ++ ID_MODEL_FROM_DATABASE=Turks LE [Radeon HD 5570/6510/7510/8510] (Radeon HD 7570) + + pci:v00001002d0000675Fsv0000174Bsd00006510* +- ID_MODEL_FROM_DATABASE=Radeon HD 6510 ++ ID_MODEL_FROM_DATABASE=Turks LE [Radeon HD 5570/6510/7510/8510] (Radeon HD 6510) + + pci:v00001002d0000675Fsv0000174Bsd00007510* +- ID_MODEL_FROM_DATABASE=Radeon HD 7510 ++ ID_MODEL_FROM_DATABASE=Turks LE [Radeon HD 5570/6510/7510/8510] (Radeon HD 7510) + + pci:v00001002d0000675Fsv0000174Bsd00008510* +- ID_MODEL_FROM_DATABASE=Radeon HD 8510 ++ ID_MODEL_FROM_DATABASE=Turks LE [Radeon HD 5570/6510/7510/8510] (Radeon HD 8510) + + pci:v00001002d0000675Fsv00001787sd00002012* +- ID_MODEL_FROM_DATABASE=Radeon HD 5570 2GB GDDR3 ++ ID_MODEL_FROM_DATABASE=Turks LE [Radeon HD 5570/6510/7510/8510] (Radeon HD 5570 2GB GDDR3) + + pci:v00001002d0000675Fsv00001787sd00002314* +- ID_MODEL_FROM_DATABASE=Radeon HD 5570 1GB DDR2/GDDR3 ++ ID_MODEL_FROM_DATABASE=Turks LE [Radeon HD 5570/6510/7510/8510] (Radeon HD 5570 1GB DDR2/GDDR3) + + pci:v00001002d00006760* + ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] + + pci:v00001002d00006760sv00001002sd00000124* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001002sd00000134* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001019sd0000238B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001019sd0000238E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001019sd00002390* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001019sd00009985* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001028sd000004C1* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001028sd000004C3* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001028sd000004CA* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001028sd000004CB* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001028sd000004CC* +- ID_MODEL_FROM_DATABASE=Vostro 3350 ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Vostro 3350) + + pci:v00001002d00006760sv00001028sd000004D1* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001028sd000004D3* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001028sd000004D7* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001028sd00000502* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001028sd00000503* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001028sd00000506* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001028sd00000507* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001028sd00000514* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001028sd0000051C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6450M) + + pci:v00001002d00006760sv00001028sd0000051D* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6450M) + + pci:v00001002d00006760sv0000103Csd0000161A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd0000161B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd0000161E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd0000161F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00001622* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6450M) + + pci:v00001002d00006760sv0000103Csd00001623* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6450M) + + pci:v00001002d00006760sv0000103Csd0000164A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd0000164D* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00001651* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00001656* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6490M) + + pci:v00001002d00006760sv0000103Csd00001658* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6490M) + + pci:v00001002d00006760sv0000103Csd00001659* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6490M) + + pci:v00001002d00006760sv0000103Csd0000165B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6490M) + + pci:v00001002d00006760sv0000103Csd0000165D* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd0000165F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00001661* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00001663* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00001665* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00001667* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00001669* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd0000166B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd0000166C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd0000166E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00001670* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00001672* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd0000167A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd0000167B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd0000167D* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6490M) + + pci:v00001002d00006760sv0000103Csd0000167F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6490M) + + pci:v00001002d00006760sv0000103Csd0000168C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd0000168F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00001694* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00001696* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00001698* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd0000169A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd0000169C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6490M) + + pci:v00001002d00006760sv0000103Csd00001855* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7450M) + + pci:v00001002d00006760sv0000103Csd00001859* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7450M) + + pci:v00001002d00006760sv0000103Csd0000185C* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7450M) + + pci:v00001002d00006760sv0000103Csd0000185D* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv0000103Csd0000185F* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv0000103Csd00001863* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7450M) + + pci:v00001002d00006760sv0000103Csd0000355C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6490M) + + pci:v00001002d00006760sv0000103Csd0000355F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6490M) + + pci:v00001002d00006760sv0000103Csd00003563* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00003565* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00003567* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00003569* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00003581* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6490M) + + pci:v00001002d00006760sv0000103Csd00003584* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd0000358C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6490M) + + pci:v00001002d00006760sv0000103Csd0000358F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6490M) + + pci:v00001002d00006760sv0000103Csd00003592* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6490M) + + pci:v00001002d00006760sv0000103Csd00003596* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6490M) + + pci:v00001002d00006760sv0000103Csd0000366B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000103Csd00003671* +- ID_MODEL_FROM_DATABASE=FirePro M3900 ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (FirePro M3900) + + pci:v00001002d00006760sv0000103Csd00003673* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001043sd0000100A* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001043sd0000100C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001043sd0000101B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001043sd0000101C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001043sd0000102A* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7450M) + + pci:v00001002d00006760sv00001043sd0000102C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001043sd0000104B* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001043sd0000105D* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001043sd0000106B* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001043sd0000106D* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001043sd0000107D* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001043sd00001CB2* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001043sd00001D22* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001043sd00001D32* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001043sd00002001* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001043sd00002002* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001043sd00002107* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001043sd00002108* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001043sd00002109* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001043sd000084A0* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001043sd000084E9* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001043sd00008515* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001043sd00008517* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001043sd0000855A* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv0000104Dsd0000907B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000104Dsd00009081* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000104Dsd00009084* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000104Dsd00009085* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6450M) + + pci:v00001002d00006760sv00001179sd00000003* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6450M) + + pci:v00001002d00006760sv00001179sd00000004* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6450M) + + pci:v00001002d00006760sv00001179sd0000FB22* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB23* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB2C* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB31* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB32* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB33* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB38* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB39* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB3A* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB40* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB41* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB42* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB47* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB48* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB51* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB52* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB53* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB81* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB82* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FB83* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FC51* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001179sd0000FC52* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FC56* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FCD3* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FCD4* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FCEE* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv00001179sd0000FDEE* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv0000144Dsd0000B074* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000144Dsd0000B084* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000144Dsd0000C095* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000144Dsd0000C0B3* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6490M) + + pci:v00001002d00006760sv0000144Dsd0000C538* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000144Dsd0000C581* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000144Dsd0000C589* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000144Dsd0000C609* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv0000144Dsd0000C625* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv0000144Dsd0000C636* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7450M) + + pci:v00001002d00006760sv00001462sd000010AC* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv0000152Dsd00000916* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv000017AAsd000021E5* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv000017AAsd00003900* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7450M) + + pci:v00001002d00006760sv000017AAsd00003902* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7450M) + + pci:v00001002d00006760sv000017AAsd00003969* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv000017AAsd00003970* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7450M) + + pci:v00001002d00006760sv000017AAsd00003976* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv000017AAsd0000397B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv000017AAsd0000397D* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv000017AAsd00005101* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7470M) + + pci:v00001002d00006760sv000017AAsd00005102* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7450M) + + pci:v00001002d00006760sv000017AAsd00005103* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7450M) + + pci:v00001002d00006760sv000017AAsd00005106* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 7450M) + + pci:v00001002d00006760sv00001854sd00000897* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001854sd00000900* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001854sd00000908* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006760sv00001854sd00002015* +- ID_MODEL_FROM_DATABASE=Radeon HD 6470M ++ ID_MODEL_FROM_DATABASE=Seymour [Radeon HD 6400M/7400M Series] (Radeon HD 6470M) + + pci:v00001002d00006761* + ID_MODEL_FROM_DATABASE=Seymour LP [Radeon HD 6430M] +@@ -5619,22 +5619,22 @@ pci:v00001002d00006770* + ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450A/7450A] + + pci:v00001002d00006770sv000017AAsd0000308D* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450A ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450A/7450A] (Radeon HD 7450A) + + pci:v00001002d00006770sv000017AAsd00003623* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450A ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450A/7450A] (Radeon HD 6450A) + + pci:v00001002d00006770sv000017AAsd00003627* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450A ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450A/7450A] (Radeon HD 6450A) + + pci:v00001002d00006770sv000017AAsd00003629* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450A ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450A/7450A] (Radeon HD 6450A) + + pci:v00001002d00006770sv000017AAsd0000363C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450A ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450A/7450A] (Radeon HD 6450A) + + pci:v00001002d00006770sv000017AAsd00003658* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470A ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450A/7450A] (Radeon HD 7470A) + + pci:v00001002d00006771* + ID_MODEL_FROM_DATABASE=Caicos XTX [Radeon HD 8490 / R5 235X OEM] +@@ -5646,133 +5646,133 @@ pci:v00001002d00006778* + ID_MODEL_FROM_DATABASE=Caicos XT [Radeon HD 7470/8470 / R5 235 OEM] + + pci:v00001002d00006778sv00001019sd00000024* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470 ++ ID_MODEL_FROM_DATABASE=Caicos XT [Radeon HD 7470/8470 / R5 235 OEM] (Radeon HD 7470) + + pci:v00001002d00006778sv00001019sd00000027* +- ID_MODEL_FROM_DATABASE=Radeon HD 8470 ++ ID_MODEL_FROM_DATABASE=Caicos XT [Radeon HD 7470/8470 / R5 235 OEM] (Radeon HD 8470) + + pci:v00001002d00006778sv00001028sd00002120* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470 ++ ID_MODEL_FROM_DATABASE=Caicos XT [Radeon HD 7470/8470 / R5 235 OEM] (Radeon HD 7470) + + pci:v00001002d00006778sv00001462sd0000B491* +- ID_MODEL_FROM_DATABASE=Radeon HD 8470 ++ ID_MODEL_FROM_DATABASE=Caicos XT [Radeon HD 7470/8470 / R5 235 OEM] (Radeon HD 8470) + + pci:v00001002d00006778sv00001462sd0000B492* +- ID_MODEL_FROM_DATABASE=Radeon HD 8470 ++ ID_MODEL_FROM_DATABASE=Caicos XT [Radeon HD 7470/8470 / R5 235 OEM] (Radeon HD 8470) + + pci:v00001002d00006778sv00001462sd0000B493* +- ID_MODEL_FROM_DATABASE=Radeon HD 8470 OEM ++ ID_MODEL_FROM_DATABASE=Caicos XT [Radeon HD 7470/8470 / R5 235 OEM] (Radeon HD 8470 OEM) + + pci:v00001002d00006778sv00001642sd00003C65* +- ID_MODEL_FROM_DATABASE=Radeon HD 8470 ++ ID_MODEL_FROM_DATABASE=Caicos XT [Radeon HD 7470/8470 / R5 235 OEM] (Radeon HD 8470) + + pci:v00001002d00006778sv00001642sd00003C75* +- ID_MODEL_FROM_DATABASE=Radeon HD 8470 ++ ID_MODEL_FROM_DATABASE=Caicos XT [Radeon HD 7470/8470 / R5 235 OEM] (Radeon HD 8470) + + pci:v00001002d00006778sv0000174Bsd00008145* +- ID_MODEL_FROM_DATABASE=Radeon HD 8470 ++ ID_MODEL_FROM_DATABASE=Caicos XT [Radeon HD 7470/8470 / R5 235 OEM] (Radeon HD 8470) + + pci:v00001002d00006778sv0000174Bsd0000E145* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470 ++ ID_MODEL_FROM_DATABASE=Caicos XT [Radeon HD 7470/8470 / R5 235 OEM] (Radeon HD 7470) + + pci:v00001002d00006779* + ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] + + pci:v00001002d00006779sv00001019sd00000016* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv00001019sd00000017* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv00001019sd00000018* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv00001028sd00002120* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv0000103Csd00002128* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv0000103Csd00002AEE* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450A ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 7450A) + + pci:v00001002d00006779sv00001462sd00002125* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv00001462sd00002346* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 7450) + + pci:v00001002d00006779sv00001462sd00002490* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv00001462sd00002494* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv00001462sd00002496* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 7450) + + pci:v00001002d00006779sv0000148Csd00007450* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 7450) + + pci:v00001002d00006779sv0000148Csd00008450* +- ID_MODEL_FROM_DATABASE=Radeon HD 8450 OEM ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 8450 OEM) + + pci:v00001002d00006779sv00001545sd00007470* +- ID_MODEL_FROM_DATABASE=Radeon HD 7470 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 7470) + + pci:v00001002d00006779sv00001642sd00003A65* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv00001642sd00003A66* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 7450) + + pci:v00001002d00006779sv00001642sd00003A75* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv00001642sd00003A76* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 7450) + + pci:v00001002d00006779sv00001682sd00003200* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 7450) + + pci:v00001002d00006779sv0000174Bsd00007450* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 7450) + + pci:v00001002d00006779sv0000174Bsd0000E127* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv0000174Bsd0000E153* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv0000174Bsd0000E164* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 1 GB DDR3 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450 1 GB DDR3) + + pci:v00001002d00006779sv0000174Bsd0000E180* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv0000174Bsd0000E201* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv000017AFsd00008450* +- ID_MODEL_FROM_DATABASE=Radeon HD 8450 OEM ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 8450 OEM) + + pci:v00001002d00006779sv00001B0Asd00009096* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv00001B0Asd00009097* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv00001B0Asd000090A8* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450A ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450A) + + pci:v00001002d00006779sv00001B0Asd000090B1* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 6450) + + pci:v00001002d00006779sv00001B0Asd000090B3* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450A ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 7450A) + + pci:v00001002d00006779sv00001B0Asd000090BB* +- ID_MODEL_FROM_DATABASE=Radeon HD 7450A ++ ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM] (Radeon HD 7450A) + + pci:v00001002d0000677B* + ID_MODEL_FROM_DATABASE=Caicos PRO [Radeon HD 7450] +@@ -5790,25 +5790,25 @@ pci:v00001002d0000678A* + ID_MODEL_FROM_DATABASE=Tahiti PRO GL [FirePro Series] + + pci:v00001002d0000678Asv00001002sd0000030C* +- ID_MODEL_FROM_DATABASE=FirePro W8000 ++ ID_MODEL_FROM_DATABASE=Tahiti PRO GL [FirePro Series] (FirePro W8000) + + pci:v00001002d0000678Asv00001002sd00000310* +- ID_MODEL_FROM_DATABASE=FirePro S9000 ++ ID_MODEL_FROM_DATABASE=Tahiti PRO GL [FirePro Series] (FirePro S9000) + + pci:v00001002d0000678Asv00001002sd00000420* +- ID_MODEL_FROM_DATABASE=Radeon Sky 700 ++ ID_MODEL_FROM_DATABASE=Tahiti PRO GL [FirePro Series] (Radeon Sky 700) + + pci:v00001002d0000678Asv00001002sd00000422* +- ID_MODEL_FROM_DATABASE=Radeon Sky 900 ++ ID_MODEL_FROM_DATABASE=Tahiti PRO GL [FirePro Series] (Radeon Sky 900) + + pci:v00001002d0000678Asv00001002sd00000B0E* +- ID_MODEL_FROM_DATABASE=FirePro S10000 Passive ++ ID_MODEL_FROM_DATABASE=Tahiti PRO GL [FirePro Series] (FirePro S10000 Passive) + + pci:v00001002d0000678Asv00001002sd00000B2A* +- ID_MODEL_FROM_DATABASE=FirePro S10000 ++ ID_MODEL_FROM_DATABASE=Tahiti PRO GL [FirePro Series] (FirePro S10000) + + pci:v00001002d0000678Asv00001028sd0000030C* +- ID_MODEL_FROM_DATABASE=FirePro W8000 ++ ID_MODEL_FROM_DATABASE=Tahiti PRO GL [FirePro Series] (FirePro W8000) + + pci:v00001002d00006790* + ID_MODEL_FROM_DATABASE=Tahiti +@@ -5823,67 +5823,67 @@ pci:v00001002d00006798* + ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] + + pci:v00001002d00006798sv00001002sd00003000* +- ID_MODEL_FROM_DATABASE=Tahiti XT2 [Radeon HD 7970 GHz Edition] ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (Tahiti XT2 [Radeon HD 7970 GHz Edition]) + + pci:v00001002d00006798sv00001002sd00003001* +- ID_MODEL_FROM_DATABASE=Tahiti XTL [Radeon R9 280X] ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (Tahiti XTL [Radeon R9 280X]) + + pci:v00001002d00006798sv00001002sd00004000* +- ID_MODEL_FROM_DATABASE=Radeon HD 8970 OEM ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (Radeon HD 8970 OEM) + + pci:v00001002d00006798sv00001043sd0000041C* +- ID_MODEL_FROM_DATABASE=HD 7970 DirectCU II ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (HD 7970 DirectCU II) + + pci:v00001002d00006798sv00001043sd00000420* +- ID_MODEL_FROM_DATABASE=HD 7970 DirectCU II TOP ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (HD 7970 DirectCU II TOP) + + pci:v00001002d00006798sv00001043sd00000444* +- ID_MODEL_FROM_DATABASE=HD 7970 DirectCU II TOP ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (HD 7970 DirectCU II TOP) + + pci:v00001002d00006798sv00001043sd00000448* +- ID_MODEL_FROM_DATABASE=HD 7970 DirectCU II TOP ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (HD 7970 DirectCU II TOP) + + pci:v00001002d00006798sv00001043sd0000044A* +- ID_MODEL_FROM_DATABASE=Tahiti XT2 [Matrix HD 7970] ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (Tahiti XT2 [Matrix HD 7970]) + + pci:v00001002d00006798sv00001043sd0000044C* +- ID_MODEL_FROM_DATABASE=Tahiti XT2 [Matrix HD 7970 Platinum] ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (Tahiti XT2 [Matrix HD 7970 Platinum]) + + pci:v00001002d00006798sv00001043sd00003001* +- ID_MODEL_FROM_DATABASE=Tahiti XTL [ROG Matrix R9 280X] ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (Tahiti XTL [ROG Matrix R9 280X]) + + pci:v00001002d00006798sv00001043sd00003006* +- ID_MODEL_FROM_DATABASE=Tahiti XTL [Radeon R9 280X DirectCU II TOP] ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (Tahiti XTL [Radeon R9 280X DirectCU II TOP]) + + pci:v00001002d00006798sv00001043sd00009999* +- ID_MODEL_FROM_DATABASE=ARES II ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (ARES II) + + pci:v00001002d00006798sv00001092sd00003000* +- ID_MODEL_FROM_DATABASE=Tahiti XT2 [Radeon HD 7970 GHz Edition] ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (Tahiti XT2 [Radeon HD 7970 GHz Edition]) + + pci:v00001002d00006798sv00001458sd00002261* +- ID_MODEL_FROM_DATABASE=Tahiti XT2 [Radeon HD 7970 GHz Edition OC] ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (Tahiti XT2 [Radeon HD 7970 GHz Edition OC]) + + pci:v00001002d00006798sv00001462sd00002774* +- ID_MODEL_FROM_DATABASE=MSI R7970 TF 3GD5/OC BE ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (MSI R7970 TF 3GD5/OC BE) + + pci:v00001002d00006798sv00001682sd00003211* +- ID_MODEL_FROM_DATABASE=Double D HD 7970 Black Edition ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (Double D HD 7970 Black Edition) + + pci:v00001002d00006798sv00001682sd00003213* +- ID_MODEL_FROM_DATABASE=HD 7970 Black Edition ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (HD 7970 Black Edition) + + pci:v00001002d00006798sv00001682sd00003214* +- ID_MODEL_FROM_DATABASE=Double D HD 7970 ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (Double D HD 7970) + + pci:v00001002d00006798sv00001787sd0000201C* +- ID_MODEL_FROM_DATABASE=HD 7970 IceQ X² ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (HD 7970 IceQ X²) + + pci:v00001002d00006798sv00001787sd00002317* +- ID_MODEL_FROM_DATABASE=Radeon HD 7990 ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (Radeon HD 7990) + + pci:v00001002d00006798sv00001787sd00003000* +- ID_MODEL_FROM_DATABASE=Tahiti XT2 [Radeon HD 7970 GHz Edition] ++ ID_MODEL_FROM_DATABASE=Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] (Tahiti XT2 [Radeon HD 7970 GHz Edition]) + + pci:v00001002d00006799* + ID_MODEL_FROM_DATABASE=New Zealand [Radeon HD 7900 Series] +@@ -5892,28 +5892,28 @@ pci:v00001002d0000679A* + ID_MODEL_FROM_DATABASE=Tahiti PRO [Radeon HD 7950/8950 OEM / R9 280] + + pci:v00001002d0000679Asv00001002sd00000B01* +- ID_MODEL_FROM_DATABASE=Radeon HD 8950 OEM ++ ID_MODEL_FROM_DATABASE=Tahiti PRO [Radeon HD 7950/8950 OEM / R9 280] (Radeon HD 8950 OEM) + + pci:v00001002d0000679Asv00001002sd00003000* +- ID_MODEL_FROM_DATABASE=Tahiti PRO2 [Radeon HD 7950 Boost] ++ ID_MODEL_FROM_DATABASE=Tahiti PRO [Radeon HD 7950/8950 OEM / R9 280] (Tahiti PRO2 [Radeon HD 7950 Boost]) + + pci:v00001002d0000679Asv00001462sd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 8950 OEM ++ ID_MODEL_FROM_DATABASE=Tahiti PRO [Radeon HD 7950/8950 OEM / R9 280] (Radeon HD 8950 OEM) + + pci:v00001002d0000679B* + ID_MODEL_FROM_DATABASE=Malta [Radeon HD 7990] + + pci:v00001002d0000679Bsv00001002sd00000B28* +- ID_MODEL_FROM_DATABASE=Radeon HD 8990 OEM ++ ID_MODEL_FROM_DATABASE=Malta [Radeon HD 7990] (Radeon HD 8990 OEM) + + pci:v00001002d0000679Bsv00001002sd00000B2A* +- ID_MODEL_FROM_DATABASE=Radeon HD 7990 ++ ID_MODEL_FROM_DATABASE=Malta [Radeon HD 7990] (Radeon HD 7990) + + pci:v00001002d0000679Bsv00001462sd00008036* +- ID_MODEL_FROM_DATABASE=Radeon HD 8990 OEM ++ ID_MODEL_FROM_DATABASE=Malta [Radeon HD 7990] (Radeon HD 8990 OEM) + + pci:v00001002d0000679Bsv0000148Csd00008990* +- ID_MODEL_FROM_DATABASE=Radeon HD 8990 OEM ++ ID_MODEL_FROM_DATABASE=Malta [Radeon HD 7990] (Radeon HD 8990 OEM) + + pci:v00001002d0000679E* + ID_MODEL_FROM_DATABASE=Tahiti LE [Radeon HD 7870 XT] +@@ -5955,28 +5955,28 @@ pci:v00001002d00006800* + ID_MODEL_FROM_DATABASE=Wimbledon XT [Radeon HD 7970M] + + pci:v00001002d00006800sv00001002sd00000124* +- ID_MODEL_FROM_DATABASE=Radeon HD 7970M ++ ID_MODEL_FROM_DATABASE=Wimbledon XT [Radeon HD 7970M] (Radeon HD 7970M) + + pci:v00001002d00006800sv00008086sd00002110* +- ID_MODEL_FROM_DATABASE=Radeon HD 7970M ++ ID_MODEL_FROM_DATABASE=Wimbledon XT [Radeon HD 7970M] (Radeon HD 7970M) + + pci:v00001002d00006800sv00008086sd00002111* +- ID_MODEL_FROM_DATABASE=Radeon HD 7970M ++ ID_MODEL_FROM_DATABASE=Wimbledon XT [Radeon HD 7970M] (Radeon HD 7970M) + + pci:v00001002d00006801* + ID_MODEL_FROM_DATABASE=Neptune XT [Radeon HD 8970M] + + pci:v00001002d00006801sv00001002sd00000124* +- ID_MODEL_FROM_DATABASE=Radeon HD 8970M ++ ID_MODEL_FROM_DATABASE=Neptune XT [Radeon HD 8970M] (Radeon HD 8970M) + + pci:v00001002d00006801sv00001462sd00001117* +- ID_MODEL_FROM_DATABASE=Radeon R9 M290X ++ ID_MODEL_FROM_DATABASE=Neptune XT [Radeon HD 8970M] (Radeon R9 M290X) + + pci:v00001002d00006801sv00008086sd00002110* +- ID_MODEL_FROM_DATABASE=Radeon HD 8970M ++ ID_MODEL_FROM_DATABASE=Neptune XT [Radeon HD 8970M] (Radeon HD 8970M) + + pci:v00001002d00006801sv00008086sd00002111* +- ID_MODEL_FROM_DATABASE=Radeon HD 8970M ++ ID_MODEL_FROM_DATABASE=Neptune XT [Radeon HD 8970M] (Radeon HD 8970M) + + pci:v00001002d00006802* + ID_MODEL_FROM_DATABASE=Wimbledon +@@ -5988,10 +5988,10 @@ pci:v00001002d00006808* + ID_MODEL_FROM_DATABASE=Pitcairn XT GL [FirePro W7000] + + pci:v00001002d00006808sv00001002sd00000310* +- ID_MODEL_FROM_DATABASE=FirePro S7000 ++ ID_MODEL_FROM_DATABASE=Pitcairn XT GL [FirePro W7000] (FirePro S7000) + + pci:v00001002d00006808sv00001002sd00000420* +- ID_MODEL_FROM_DATABASE=Radeon Sky 500 ++ ID_MODEL_FROM_DATABASE=Pitcairn XT GL [FirePro W7000] (Radeon Sky 500) + + pci:v00001002d00006809* + ID_MODEL_FROM_DATABASE=Pitcairn LE GL [FirePro W5000] +@@ -6012,37 +6012,37 @@ pci:v00001002d00006818* + ID_MODEL_FROM_DATABASE=Pitcairn XT [Radeon HD 7870 GHz Edition] + + pci:v00001002d00006818sv00001002sd00000B05* +- ID_MODEL_FROM_DATABASE=Radeon HD 8870 OEM ++ ID_MODEL_FROM_DATABASE=Pitcairn XT [Radeon HD 7870 GHz Edition] (Radeon HD 8870 OEM) + + pci:v00001002d00006818sv0000174Bsd00008B04* +- ID_MODEL_FROM_DATABASE=Radeon HD 8860 ++ ID_MODEL_FROM_DATABASE=Pitcairn XT [Radeon HD 7870 GHz Edition] (Radeon HD 8860) + + pci:v00001002d00006819* + ID_MODEL_FROM_DATABASE=Pitcairn PRO [Radeon HD 7850] + + pci:v00001002d00006819sv0000174Bsd0000E221* +- ID_MODEL_FROM_DATABASE=Radeon HD 7850 2GB GDDR5 DVI-I/DVI-D/HDMI/DP ++ ID_MODEL_FROM_DATABASE=Pitcairn PRO [Radeon HD 7850] (Radeon HD 7850 2GB GDDR5 DVI-I/DVI-D/HDMI/DP) + + pci:v00001002d00006820* + ID_MODEL_FROM_DATABASE=Venus XTX [Radeon HD 8890M] + + pci:v00001002d00006820sv0000103Csd00001851* +- ID_MODEL_FROM_DATABASE=Radeon HD 7750M ++ ID_MODEL_FROM_DATABASE=Venus XTX [Radeon HD 8890M] (Radeon HD 7750M) + + pci:v00001002d00006820sv000017AAsd00003801* +- ID_MODEL_FROM_DATABASE=Radeon R9 M275 ++ ID_MODEL_FROM_DATABASE=Venus XTX [Radeon HD 8890M] (Radeon R9 M275) + + pci:v00001002d00006821* + ID_MODEL_FROM_DATABASE=Venus XT [Radeon HD 8870M] + + pci:v00001002d00006821sv00001002sd0000031E* +- ID_MODEL_FROM_DATABASE=FirePro SX4000 ++ ID_MODEL_FROM_DATABASE=Venus XT [Radeon HD 8870M] (FirePro SX4000) + + pci:v00001002d00006821sv00001028sd000005CC* +- ID_MODEL_FROM_DATABASE=FirePro M5100 ++ ID_MODEL_FROM_DATABASE=Venus XT [Radeon HD 8870M] (FirePro M5100) + + pci:v00001002d00006821sv00001028sd000015CC* +- ID_MODEL_FROM_DATABASE=FirePro M5100 ++ ID_MODEL_FROM_DATABASE=Venus XT [Radeon HD 8870M] (FirePro M5100) + + pci:v00001002d00006822* + ID_MODEL_FROM_DATABASE=Venus PRO [Radeon E8860] +@@ -6054,7 +6054,7 @@ pci:v00001002d00006825* + ID_MODEL_FROM_DATABASE=Heathrow XT [Radeon HD 7870M] + + pci:v00001002d00006825sv00008086sd00002111* +- ID_MODEL_FROM_DATABASE=Chelsea PRO ++ ID_MODEL_FROM_DATABASE=Heathrow XT [Radeon HD 7870M] (Chelsea PRO) + + pci:v00001002d00006826* + ID_MODEL_FROM_DATABASE=Chelsea LP [Radeon HD 7700M Series] +@@ -6081,7 +6081,7 @@ pci:v00001002d0000682F* + ID_MODEL_FROM_DATABASE=Chelsea LP [Radeon HD 7730M] + + pci:v00001002d0000682Fsv0000103Csd00001851* +- ID_MODEL_FROM_DATABASE=Radeon HD 7750M ++ ID_MODEL_FROM_DATABASE=Chelsea LP [Radeon HD 7730M] (Radeon HD 7750M) + + pci:v00001002d00006830* + ID_MODEL_FROM_DATABASE=Cape Verde [Radeon HD 7800M Series] +@@ -6096,16 +6096,16 @@ pci:v00001002d00006837* + ID_MODEL_FROM_DATABASE=Cape Verde LE [Radeon HD 7730/8730] + + pci:v00001002d00006837sv00001462sd00002796* +- ID_MODEL_FROM_DATABASE=Radeon HD 8730 ++ ID_MODEL_FROM_DATABASE=Cape Verde LE [Radeon HD 7730/8730] (Radeon HD 8730) + + pci:v00001002d00006837sv00001462sd00008092* +- ID_MODEL_FROM_DATABASE=Radeon HD 8730 ++ ID_MODEL_FROM_DATABASE=Cape Verde LE [Radeon HD 7730/8730] (Radeon HD 8730) + + pci:v00001002d00006837sv0000148Csd00008730* +- ID_MODEL_FROM_DATABASE=Radeon HD 8730 ++ ID_MODEL_FROM_DATABASE=Cape Verde LE [Radeon HD 7730/8730] (Radeon HD 8730) + + pci:v00001002d00006837sv00001787sd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 6570 ++ ID_MODEL_FROM_DATABASE=Cape Verde LE [Radeon HD 7730/8730] (Radeon HD 6570) + + pci:v00001002d00006838* + ID_MODEL_FROM_DATABASE=Cape Verde +@@ -6120,19 +6120,19 @@ pci:v00001002d0000683D* + ID_MODEL_FROM_DATABASE=Cape Verde XT [Radeon HD 7770/8760 / R7 250X] + + pci:v00001002d0000683Dsv00001002sd00000030* +- ID_MODEL_FROM_DATABASE=Radeon HD 8760 OEM ++ ID_MODEL_FROM_DATABASE=Cape Verde XT [Radeon HD 7770/8760 / R7 250X] (Radeon HD 8760 OEM) + + pci:v00001002d0000683Dsv00001019sd00000030* +- ID_MODEL_FROM_DATABASE=Radeon HD 8760 OEM ++ ID_MODEL_FROM_DATABASE=Cape Verde XT [Radeon HD 7770/8760 / R7 250X] (Radeon HD 8760 OEM) + + pci:v00001002d0000683Dsv0000103Csd00006890* +- ID_MODEL_FROM_DATABASE=Radeon HD 8760 OEM ++ ID_MODEL_FROM_DATABASE=Cape Verde XT [Radeon HD 7770/8760 / R7 250X] (Radeon HD 8760 OEM) + + pci:v00001002d0000683Dsv00001043sd00008760* +- ID_MODEL_FROM_DATABASE=Radeon HD 8760 OEM ++ ID_MODEL_FROM_DATABASE=Cape Verde XT [Radeon HD 7770/8760 / R7 250X] (Radeon HD 8760 OEM) + + pci:v00001002d0000683Dsv0000174Bsd00008304* +- ID_MODEL_FROM_DATABASE=Radeon HD 8760 OEM ++ ID_MODEL_FROM_DATABASE=Cape Verde XT [Radeon HD 7770/8760 / R7 250X] (Radeon HD 8760 OEM) + + pci:v00001002d0000683F* + ID_MODEL_FROM_DATABASE=Cape Verde PRO [Radeon HD 7750 / R7 250E] +@@ -6141,322 +6141,322 @@ pci:v00001002d00006840* + ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] + + pci:v00001002d00006840sv00001025sd0000050E* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001025sd0000050F* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001025sd00000513* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001025sd00000514* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001025sd0000056D* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001025sd0000059A* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001025sd0000059B* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001025sd0000059E* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001025sd00000600* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001025sd00000606* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001025sd00000696* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7650M) + + pci:v00001002d00006840sv00001025sd00000697* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7650M) + + pci:v00001002d00006840sv00001025sd00000698* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7650M) + + pci:v00001002d00006840sv00001025sd00000699* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7650M) + + pci:v00001002d00006840sv00001025sd00000757* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001028sd0000056A* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001028sd0000056E* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001028sd00000598* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001028sd0000059D* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001028sd000005A3* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001028sd000005B9* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001028sd000005BB* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd000017F1* +- ID_MODEL_FROM_DATABASE=Radeon HD 7570M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7570M) + + pci:v00001002d00006840sv0000103Csd000017F4* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7650M) + + pci:v00001002d00006840sv0000103Csd00001813* +- ID_MODEL_FROM_DATABASE=Radeon HD 7590M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7590M) + + pci:v00001002d00006840sv0000103Csd0000182F* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd00001830* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd00001835* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd0000183A* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd0000183C* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd0000183E* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd00001840* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd00001842* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd00001844* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd00001848* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd0000184A* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd0000184C* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd00001895* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd00001897* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd000018A5* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd000018A7* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000103Csd000018F4* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001043sd0000100A* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001043sd0000104B* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001043sd000010DC* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001043sd00002121* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001043sd00002122* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001043sd00002123* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001043sd00002125* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001043sd00002127* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB11* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB22* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB23* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB2C* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB31* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB32* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB38* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB39* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB3A* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB40* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB41* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB47* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB48* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB51* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB52* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB53* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB81* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB82* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FB83* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FC56* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FCD4* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv00001179sd0000FCEE* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000144Dsd0000C0C5* +- ID_MODEL_FROM_DATABASE=Radeon HD 7690M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7690M) + + pci:v00001002d00006840sv0000144Dsd0000C0CE* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv0000144Dsd0000C0DA* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv000017AAsd00003970* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv000017AAsd0000397B* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv000017AAsd00005101* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv000017AAsd00005102* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006840sv000017AAsd00005103* +- ID_MODEL_FROM_DATABASE=Radeon HD 7670M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7500M/7600M Series] (Radeon HD 7670M) + + pci:v00001002d00006841* + ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] + + pci:v00001002d00006841sv00001028sd00000561* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7650M) + + pci:v00001002d00006841sv00001028sd0000056C* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7650M) + + pci:v00001002d00006841sv00001028sd0000057F* +- ID_MODEL_FROM_DATABASE=Radeon HD 7570M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7570M) + + pci:v00001002d00006841sv0000103Csd000017F1* +- ID_MODEL_FROM_DATABASE=Radeon HD 7570M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7570M) + + pci:v00001002d00006841sv0000103Csd000017F4* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7650M) + + pci:v00001002d00006841sv0000103Csd00001813* +- ID_MODEL_FROM_DATABASE=Radeon HD 7570M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7570M) + + pci:v00001002d00006841sv0000103Csd0000183A* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7650M) + + pci:v00001002d00006841sv0000103Csd0000183C* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7650M) + + pci:v00001002d00006841sv0000103Csd0000183E* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7650M) + + pci:v00001002d00006841sv0000103Csd00001840* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7650M) + + pci:v00001002d00006841sv0000103Csd00001842* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7650M) + + pci:v00001002d00006841sv0000103Csd00001844* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7650M) + + pci:v00001002d00006841sv00001043sd0000100A* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7650M) + + pci:v00001002d00006841sv00001043sd0000104B* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7650M) + + pci:v00001002d00006841sv00001043sd000010DC* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7650M) + + pci:v00001002d00006841sv00001043sd00002134* +- ID_MODEL_FROM_DATABASE=Radeon HD 7650M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7650M) + + pci:v00001002d00006841sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Radeon HD 7570M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7570M) + + pci:v00001002d00006841sv00001179sd00000002* +- ID_MODEL_FROM_DATABASE=Radeon HD 7570M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7570M) + + pci:v00001002d00006841sv00001179sd0000FB43* +- ID_MODEL_FROM_DATABASE=Radeon HD 7550M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7550M) + + pci:v00001002d00006841sv00001179sd0000FB91* +- ID_MODEL_FROM_DATABASE=Radeon HD 7550M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7550M) + + pci:v00001002d00006841sv00001179sd0000FB92* +- ID_MODEL_FROM_DATABASE=Radeon HD 7550M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7550M) + + pci:v00001002d00006841sv00001179sd0000FB93* +- ID_MODEL_FROM_DATABASE=Radeon HD 7550M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7550M) + + pci:v00001002d00006841sv00001179sd0000FBA2* +- ID_MODEL_FROM_DATABASE=Radeon HD 7550M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7550M) + + pci:v00001002d00006841sv00001179sd0000FBA3* +- ID_MODEL_FROM_DATABASE=Radeon HD 7550M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7550M) + + pci:v00001002d00006841sv0000144Dsd0000C0C7* +- ID_MODEL_FROM_DATABASE=Radeon HD 7550M ++ ID_MODEL_FROM_DATABASE=Thames [Radeon HD 7550M/7570M/7650M] (Radeon HD 7550M) + + pci:v00001002d00006842* + ID_MODEL_FROM_DATABASE=Thames LE [Radeon HD 7000M Series] +@@ -6471,13 +6471,13 @@ pci:v00001002d00006889* + ID_MODEL_FROM_DATABASE=Cypress PRO [FirePro V7800] + + pci:v00001002d00006889sv00001002sd00000301* +- ID_MODEL_FROM_DATABASE=FirePro V7800P ++ ID_MODEL_FROM_DATABASE=Cypress PRO [FirePro V7800] (FirePro V7800P) + + pci:v00001002d0000688A* + ID_MODEL_FROM_DATABASE=Cypress XT [FirePro V9800] + + pci:v00001002d0000688Asv00001002sd0000030C* +- ID_MODEL_FROM_DATABASE=FirePro V9800P ++ ID_MODEL_FROM_DATABASE=Cypress XT [FirePro V9800] (FirePro V9800P) + + pci:v00001002d0000688C* + ID_MODEL_FROM_DATABASE=Cypress XT GL [FireStream 9370] +@@ -6489,28 +6489,28 @@ pci:v00001002d00006898* + ID_MODEL_FROM_DATABASE=Cypress XT [Radeon HD 5870] + + pci:v00001002d00006898sv00001002sd00000B00* +- ID_MODEL_FROM_DATABASE=Radeon HD 5870 Eyefinity⁶ Edition ++ ID_MODEL_FROM_DATABASE=Cypress XT [Radeon HD 5870] (Radeon HD 5870 Eyefinity⁶ Edition) + + pci:v00001002d00006898sv0000106Bsd000000D0* +- ID_MODEL_FROM_DATABASE=Radeon HD 5870 Mac Edition ++ ID_MODEL_FROM_DATABASE=Cypress XT [Radeon HD 5870] (Radeon HD 5870 Mac Edition) + + pci:v00001002d00006898sv00001462sd00008032* +- ID_MODEL_FROM_DATABASE=Radeon HD 5870 1 GB GDDR5 ++ ID_MODEL_FROM_DATABASE=Cypress XT [Radeon HD 5870] (Radeon HD 5870 1 GB GDDR5) + + pci:v00001002d00006898sv0000174Bsd00006870* +- ID_MODEL_FROM_DATABASE=Radeon HD 6870 1600SP Edition ++ ID_MODEL_FROM_DATABASE=Cypress XT [Radeon HD 5870] (Radeon HD 6870 1600SP Edition) + + pci:v00001002d00006899* + ID_MODEL_FROM_DATABASE=Cypress PRO [Radeon HD 5850] + + pci:v00001002d00006899sv00001043sd00000330* +- ID_MODEL_FROM_DATABASE=Radeon HD 5850 ++ ID_MODEL_FROM_DATABASE=Cypress PRO [Radeon HD 5850] (Radeon HD 5850) + + pci:v00001002d00006899sv0000174Bsd0000237B* +- ID_MODEL_FROM_DATABASE=Radeon HD 5850 X2 ++ ID_MODEL_FROM_DATABASE=Cypress PRO [Radeon HD 5850] (Radeon HD 5850 X2) + + pci:v00001002d00006899sv0000174Bsd00006850* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850 1440SP Edition ++ ID_MODEL_FROM_DATABASE=Cypress PRO [Radeon HD 5850] (Radeon HD 6850 1440SP Edition) + + pci:v00001002d0000689B* + ID_MODEL_FROM_DATABASE=Cypress PRO [Radeon HD 6800 Series] +@@ -6519,7 +6519,7 @@ pci:v00001002d0000689C* + ID_MODEL_FROM_DATABASE=Hemlock [Radeon HD 5970] + + pci:v00001002d0000689Csv00001043sd00000352* +- ID_MODEL_FROM_DATABASE=ARES ++ ID_MODEL_FROM_DATABASE=Hemlock [Radeon HD 5970] (ARES) + + pci:v00001002d0000689D* + ID_MODEL_FROM_DATABASE=Hemlock [Radeon HD 5970] +@@ -6531,79 +6531,79 @@ pci:v00001002d000068A0* + ID_MODEL_FROM_DATABASE=Broadway XT [Mobility Radeon HD 5870] + + pci:v00001002d000068A0sv00001028sd000012EF* +- ID_MODEL_FROM_DATABASE=FirePro M7820 ++ ID_MODEL_FROM_DATABASE=Broadway XT [Mobility Radeon HD 5870] (FirePro M7820) + + pci:v00001002d000068A0sv0000103Csd00001520* +- ID_MODEL_FROM_DATABASE=FirePro M7820 ++ ID_MODEL_FROM_DATABASE=Broadway XT [Mobility Radeon HD 5870] (FirePro M7820) + + pci:v00001002d000068A1* + ID_MODEL_FROM_DATABASE=Broadway PRO [Mobility Radeon HD 5850] + + pci:v00001002d000068A1sv0000106Bsd000000CC* +- ID_MODEL_FROM_DATABASE=iMac MC511 Mobility Radeon HD 5850 MXM Module ++ ID_MODEL_FROM_DATABASE=Broadway PRO [Mobility Radeon HD 5850] (iMac MC511 Mobility Radeon HD 5850 MXM Module) + + pci:v00001002d000068A8* + ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] + + pci:v00001002d000068A8sv00001025sd00000442* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6850M) + + pci:v00001002d000068A8sv00001025sd00000451* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6850M) + + pci:v00001002d000068A8sv00001025sd0000050A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6850M) + + pci:v00001002d000068A8sv00001025sd0000050B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6850M) + + pci:v00001002d000068A8sv00001025sd0000050C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6850M) + + pci:v00001002d000068A8sv00001025sd0000050E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6850M) + + pci:v00001002d000068A8sv00001025sd0000050F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6850M) + + pci:v00001002d000068A8sv00001025sd00000513* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6850M) + + pci:v00001002d000068A8sv00001025sd00000514* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6850M) + + pci:v00001002d000068A8sv00001025sd00000515* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6850M) + + pci:v00001002d000068A8sv00001025sd00000516* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6850M) + + pci:v00001002d000068A8sv00001025sd00000525* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6850M) + + pci:v00001002d000068A8sv00001025sd00000526* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6850M) + + pci:v00001002d000068A8sv00001025sd0000056D* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6850M) + + pci:v00001002d000068A8sv00001028sd0000048F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6870M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6870M) + + pci:v00001002d000068A8sv00001028sd00000490* +- ID_MODEL_FROM_DATABASE=Radeon HD 6870M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6870M) + + pci:v00001002d000068A8sv00001028sd000004B9* +- ID_MODEL_FROM_DATABASE=Radeon HD 6870M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6870M) + + pci:v00001002d000068A8sv00001028sd000004BA* +- ID_MODEL_FROM_DATABASE=Radeon HD 6870M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6870M) + + pci:v00001002d000068A8sv0000103Csd0000159B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6850M) + + pci:v00001002d000068A8sv0000144Dsd0000C0AD* +- ID_MODEL_FROM_DATABASE=Radeon HD 6850M ++ ID_MODEL_FROM_DATABASE=Granville [Radeon HD 6850M/6870M] (Radeon HD 6850M) + + pci:v00001002d000068A9* + ID_MODEL_FROM_DATABASE=Juniper XT [FirePro V5800] +@@ -6612,7 +6612,7 @@ pci:v00001002d000068B8* + ID_MODEL_FROM_DATABASE=Juniper XT [Radeon HD 5770] + + pci:v00001002d000068B8sv0000106Bsd000000CF* +- ID_MODEL_FROM_DATABASE=MacPro5,1 [Mac Pro 2.8GHz DDR3] ++ ID_MODEL_FROM_DATABASE=Juniper XT [Radeon HD 5770] (MacPro5,1 [Mac Pro 2.8GHz DDR3]) + + pci:v00001002d000068B9* + ID_MODEL_FROM_DATABASE=Juniper LE [Radeon HD 5670 640SP Edition] +@@ -6624,466 +6624,466 @@ pci:v00001002d000068BE* + ID_MODEL_FROM_DATABASE=Juniper PRO [Radeon HD 5750] + + pci:v00001002d000068BEsv0000148Csd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 6750 ++ ID_MODEL_FROM_DATABASE=Juniper PRO [Radeon HD 5750] (Radeon HD 6750) + + pci:v00001002d000068BF* + ID_MODEL_FROM_DATABASE=Juniper PRO [Radeon HD 6750] + + pci:v00001002d000068BFsv0000174Bsd00006750* +- ID_MODEL_FROM_DATABASE=Radeon HD 6750 ++ ID_MODEL_FROM_DATABASE=Juniper PRO [Radeon HD 6750] (Radeon HD 6750) + + pci:v00001002d000068C0* + ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5730 / 6570M] + + pci:v00001002d000068C0sv00001019sd00002383* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5730 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5730 / 6570M] (Mobility Radeon HD 5730) + + pci:v00001002d000068C0sv00001028sd000002A2* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5730 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5730 / 6570M] (Mobility Radeon HD 5730) + + pci:v00001002d000068C0sv00001028sd000002FE* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5730 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5730 / 6570M] (Mobility Radeon HD 5730) + + pci:v00001002d000068C0sv00001028sd00000419* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5730 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5730 / 6570M] (Mobility Radeon HD 5730) + + pci:v00001002d000068C0sv0000103Csd0000147D* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5730 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5730 / 6570M] (Mobility Radeon HD 5730) + + pci:v00001002d000068C0sv0000103Csd00001521* +- ID_MODEL_FROM_DATABASE=Madison XT [FirePro M5800] ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5730 / 6570M] (Madison XT [FirePro M5800]) + + pci:v00001002d000068C0sv0000103Csd00001593* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 6570 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5730 / 6570M] (Mobility Radeon HD 6570) + + pci:v00001002d000068C0sv0000103Csd00001596* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 6570 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5730 / 6570M] (Mobility Radeon HD 6570) + + pci:v00001002d000068C0sv0000103Csd00001599* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 6570 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5730 / 6570M] (Mobility Radeon HD 6570) + + pci:v00001002d000068C0sv00001043sd00001C22* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5730 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5730 / 6570M] (Mobility Radeon HD 5730) + + pci:v00001002d000068C0sv000017AAsd00003927* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5730 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5730 / 6570M] (Mobility Radeon HD 5730) + + pci:v00001002d000068C0sv000017AAsd00003952* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5730 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5730 / 6570M] (Mobility Radeon HD 5730) + + pci:v00001002d000068C0sv000017AAsd00003978* +- ID_MODEL_FROM_DATABASE=Radeon HD 6570M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5730 / 6570M] (Radeon HD 6570M) + + pci:v00001002d000068C1* + ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] + + pci:v00001002d000068C1sv00001025sd00000205* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000293* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000294* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000296* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000308* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000030A* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000311* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000312* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000031C* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000031D* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000033D* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000033E* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000033F* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000346* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000347* +- ID_MODEL_FROM_DATABASE=Aspire 7740G ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Aspire 7740G) + + pci:v00001002d000068C1sv00001025sd00000348* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000356* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000357* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000358* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000359* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000035A* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000035B* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000035C* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000035D* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000035E* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000360* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000362* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000364* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000365* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000366* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000367* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000368* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000036C* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000036D* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000036E* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000036F* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000372* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000373* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000377* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000378* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000379* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000037A* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000037B* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000037E* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000037F* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000382* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000383* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000384* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000385* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000386* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000387* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000388* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000038B* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000038C* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000039A* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000411* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000412* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000418* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000419* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000420* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000421* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000425* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000042A* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000042E* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000042F* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000432* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000433* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000442* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000044C* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd0000044E* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000451* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000454* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000455* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000475* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000476* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000487* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000489* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000498* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001025sd00000517* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6550M) + + pci:v00001002d000068C1sv00001025sd0000051A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6550M) + + pci:v00001002d000068C1sv00001025sd0000051B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6550M) + + pci:v00001002d000068C1sv00001025sd0000051C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6550M) + + pci:v00001002d000068C1sv00001025sd0000051D* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6550M) + + pci:v00001002d000068C1sv00001025sd00000525* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6550M) + + pci:v00001002d000068C1sv00001025sd00000526* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6550M) + + pci:v00001002d000068C1sv00001025sd0000052B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6550M) + + pci:v00001002d000068C1sv00001025sd0000052C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6550M) + + pci:v00001002d000068C1sv00001025sd0000053C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6550M) + + pci:v00001002d000068C1sv00001025sd0000053D* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6550M) + + pci:v00001002d000068C1sv00001025sd0000053E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6550M) + + pci:v00001002d000068C1sv00001025sd0000053F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6550M) + + pci:v00001002d000068C1sv00001025sd00000607* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6550M) + + pci:v00001002d000068C1sv00001028sd0000041B* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001028sd00000447* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001028sd00000448* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001028sd00000456* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001028sd00000457* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv0000103Csd00001436* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv0000103Csd00001437* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv0000103Csd00001440* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv0000103Csd00001448* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv0000103Csd00001449* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv0000103Csd0000144A* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv0000103Csd0000144B* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv0000103Csd0000147B* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv0000103Csd0000149C* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv0000103Csd0000149E* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv0000103Csd00001521* +- ID_MODEL_FROM_DATABASE=Madison Pro [FirePro M5800] ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Madison Pro [FirePro M5800]) + + pci:v00001002d000068C1sv00001043sd00001BC2* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv0000104Dsd00009071* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv0000104Dsd00009077* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv0000104Dsd00009081* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001179sd0000FD00* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001179sd0000FD12* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001179sd0000FD1A* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001179sd0000FD30* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001179sd0000FD31* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001179sd0000FD50* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001179sd0000FD52* +- ID_MODEL_FROM_DATABASE=Radeon HD 6530M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6530M) + + pci:v00001002d000068C1sv00001179sd0000FD63* +- ID_MODEL_FROM_DATABASE=Radeon HD 6530M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6530M) + + pci:v00001002d000068C1sv00001179sd0000FD65* +- ID_MODEL_FROM_DATABASE=Radeon HD 6530M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6530M) + + pci:v00001002d000068C1sv00001179sd0000FDD0* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv00001179sd0000FDD2* +- ID_MODEL_FROM_DATABASE=Radeon HD 6530M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6530M) + + pci:v00001002d000068C1sv0000144Dsd0000C07E* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv0000144Dsd0000C085* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv000014C0sd00000043* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv000014C0sd0000004D* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv000017AAsd00003928* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv000017AAsd00003951* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Mobility Radeon HD 5650) + + pci:v00001002d000068C1sv000017AAsd00003977* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550M ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (Radeon HD 6550M) + + pci:v00001002d000068C7* + ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5570/6550A] + + pci:v00001002d000068C7sv00001462sd00002241* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5570 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5570/6550A] (Mobility Radeon HD 5570) + + pci:v00001002d000068C7sv00001462sd00002243* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5570 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5570/6550A] (Mobility Radeon HD 5570) + + pci:v00001002d000068C7sv00001462sd00002244* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5570 ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5570/6550A] (Mobility Radeon HD 5570) + + pci:v00001002d000068C7sv00001462sd00002245* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550A ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5570/6550A] (Radeon HD 6550A) + + pci:v00001002d000068C7sv00001462sd00002246* +- ID_MODEL_FROM_DATABASE=Radeon HD 6550A ++ ID_MODEL_FROM_DATABASE=Madison [Mobility Radeon HD 5570/6550A] (Radeon HD 6550A) + + pci:v00001002d000068C8* + ID_MODEL_FROM_DATABASE=Redwood XT GL [FirePro V4800] +@@ -7095,115 +7095,115 @@ pci:v00001002d000068D8* + ID_MODEL_FROM_DATABASE=Redwood XT [Radeon HD 5670/5690/5730] + + pci:v00001002d000068D8sv00001028sd000068E0* +- ID_MODEL_FROM_DATABASE=Radeon HD 5670 ++ ID_MODEL_FROM_DATABASE=Redwood XT [Radeon HD 5670/5690/5730] (Radeon HD 5670) + + pci:v00001002d000068D8sv0000174Bsd00005690* +- ID_MODEL_FROM_DATABASE=Radeon HD 5690 ++ ID_MODEL_FROM_DATABASE=Redwood XT [Radeon HD 5670/5690/5730] (Radeon HD 5690) + + pci:v00001002d000068D8sv0000174Bsd00005730* +- ID_MODEL_FROM_DATABASE=Radeon HD 5730 ++ ID_MODEL_FROM_DATABASE=Redwood XT [Radeon HD 5670/5690/5730] (Radeon HD 5730) + + pci:v00001002d000068D8sv0000174Bsd0000E151* +- ID_MODEL_FROM_DATABASE=Radeon HD 5670 ++ ID_MODEL_FROM_DATABASE=Redwood XT [Radeon HD 5670/5690/5730] (Radeon HD 5670) + + pci:v00001002d000068D8sv00001787sd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 5730 ++ ID_MODEL_FROM_DATABASE=Redwood XT [Radeon HD 5670/5690/5730] (Radeon HD 5730) + + pci:v00001002d000068D8sv000017AFsd00003010* +- ID_MODEL_FROM_DATABASE=Radeon HD 5730 ++ ID_MODEL_FROM_DATABASE=Redwood XT [Radeon HD 5670/5690/5730] (Radeon HD 5730) + + pci:v00001002d000068D8sv000017AFsd00003011* +- ID_MODEL_FROM_DATABASE=Radeon HD 5690 ++ ID_MODEL_FROM_DATABASE=Redwood XT [Radeon HD 5670/5690/5730] (Radeon HD 5690) + + pci:v00001002d000068D9* + ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] + + pci:v00001002d000068D9sv0000103Csd00006870* +- ID_MODEL_FROM_DATABASE=Radeon HD 5570 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 5570) + + pci:v00001002d000068D9sv0000103Csd00006872* +- ID_MODEL_FROM_DATABASE=Radeon HD 5570 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 5570) + + pci:v00001002d000068D9sv00001043sd000003CE* +- ID_MODEL_FROM_DATABASE=Radeon HD 5550 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 5550) + + pci:v00001002d000068D9sv00001462sd00002151* +- ID_MODEL_FROM_DATABASE=Radeon HD 5570 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 5570) + + pci:v00001002d000068D9sv00001462sd00002240* +- ID_MODEL_FROM_DATABASE=Radeon HD 5570 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 5570) + + pci:v00001002d000068D9sv0000148Csd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 6510 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 6510) + + pci:v00001002d000068D9sv0000148Csd00003001* +- ID_MODEL_FROM_DATABASE=Radeon HD 6610 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 6610) + + pci:v00001002d000068D9sv00001545sd00005550* +- ID_MODEL_FROM_DATABASE=Radeon HD 5550 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 5550) + + pci:v00001002d000068D9sv00001545sd00007570* +- ID_MODEL_FROM_DATABASE=Radeon HD 7570 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 7570) + + pci:v00001002d000068D9sv00001642sd00003985* +- ID_MODEL_FROM_DATABASE=Radeon HD 5570 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 5570) + + pci:v00001002d000068D9sv00001642sd00003996* +- ID_MODEL_FROM_DATABASE=Radeon HD 5570 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 5570) + + pci:v00001002d000068D9sv0000174Bsd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 6510 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 6510) + + pci:v00001002d000068D9sv0000174Bsd00006510* +- ID_MODEL_FROM_DATABASE=Radeon HD 6510 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 6510) + + pci:v00001002d000068D9sv0000174Bsd00006610* +- ID_MODEL_FROM_DATABASE=Radeon HD 6610 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 6610) + + pci:v00001002d000068D9sv0000174Bsd0000E142* +- ID_MODEL_FROM_DATABASE=Radeon HD 5570 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 5570) + + pci:v00001002d000068D9sv00001787sd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 6510 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 6510) + + pci:v00001002d000068D9sv000017AFsd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 6510 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 6510) + + pci:v00001002d000068D9sv000017AFsd00003010* +- ID_MODEL_FROM_DATABASE=Radeon HD 5630 ++ ID_MODEL_FROM_DATABASE=Redwood PRO [Radeon HD 5550/5570/5630/6510/6610/7570] (Radeon HD 5630) + + pci:v00001002d000068DA* + ID_MODEL_FROM_DATABASE=Redwood LE [Radeon HD 5550/5570/5630/6390/6490/7570] + + pci:v00001002d000068DAsv0000148Csd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 6390 ++ ID_MODEL_FROM_DATABASE=Redwood LE [Radeon HD 5550/5570/5630/6390/6490/7570] (Radeon HD 6390) + + pci:v00001002d000068DAsv0000148Csd00003001* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490 ++ ID_MODEL_FROM_DATABASE=Redwood LE [Radeon HD 5550/5570/5630/6390/6490/7570] (Radeon HD 6490) + + pci:v00001002d000068DAsv00001545sd00007570* +- ID_MODEL_FROM_DATABASE=Radeon HD 7570 ++ ID_MODEL_FROM_DATABASE=Redwood LE [Radeon HD 5550/5570/5630/6390/6490/7570] (Radeon HD 7570) + + pci:v00001002d000068DAsv0000174Bsd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 6390 ++ ID_MODEL_FROM_DATABASE=Redwood LE [Radeon HD 5550/5570/5630/6390/6490/7570] (Radeon HD 6390) + + pci:v00001002d000068DAsv0000174Bsd00005570* +- ID_MODEL_FROM_DATABASE=Radeon HD 5570 ++ ID_MODEL_FROM_DATABASE=Redwood LE [Radeon HD 5550/5570/5630/6390/6490/7570] (Radeon HD 5570) + + pci:v00001002d000068DAsv0000174Bsd00005630* +- ID_MODEL_FROM_DATABASE=Radeon HD 5630 ++ ID_MODEL_FROM_DATABASE=Redwood LE [Radeon HD 5550/5570/5630/6390/6490/7570] (Radeon HD 5630) + + pci:v00001002d000068DAsv0000174Bsd00006490* +- ID_MODEL_FROM_DATABASE=Radeon HD 6490 ++ ID_MODEL_FROM_DATABASE=Redwood LE [Radeon HD 5550/5570/5630/6390/6490/7570] (Radeon HD 6490) + + pci:v00001002d000068DAsv00001787sd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 5630 ++ ID_MODEL_FROM_DATABASE=Redwood LE [Radeon HD 5550/5570/5630/6390/6490/7570] (Radeon HD 5630) + + pci:v00001002d000068DAsv000017AFsd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 6390 ++ ID_MODEL_FROM_DATABASE=Redwood LE [Radeon HD 5550/5570/5630/6390/6490/7570] (Radeon HD 6390) + + pci:v00001002d000068DAsv000017AFsd00003010* +- ID_MODEL_FROM_DATABASE=Radeon HD 5630 ++ ID_MODEL_FROM_DATABASE=Redwood LE [Radeon HD 5550/5570/5630/6390/6490/7570] (Radeon HD 5630) + + pci:v00001002d000068DE* + ID_MODEL_FROM_DATABASE=Redwood +@@ -7212,349 +7212,349 @@ pci:v00001002d000068E0* + ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] + + pci:v00001002d000068E0sv00001028sd00000404* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] (Mobility Radeon HD 5450) + + pci:v00001002d000068E0sv00001028sd00000414* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] (Mobility Radeon HD 5450) + + pci:v00001002d000068E0sv00001028sd00000434* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] (Mobility Radeon HD 5450) + + pci:v00001002d000068E0sv0000103Csd00001433* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] (Mobility Radeon HD 5450) + + pci:v00001002d000068E0sv0000103Csd00001434* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] (Mobility Radeon HD 5450) + + pci:v00001002d000068E0sv0000103Csd00001469* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] (Mobility Radeon HD 5450) + + pci:v00001002d000068E0sv0000103Csd0000146B* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] (Mobility Radeon HD 5450) + + pci:v00001002d000068E0sv0000103Csd00001486* +- ID_MODEL_FROM_DATABASE=TouchSmart tm2-2050er discrete GPU (Mobility Radeon HD 5450) ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] (TouchSmart tm2-2050er discrete GPU (Mobility Radeon HD 5450)) + + pci:v00001002d000068E0sv0000103Csd00001622* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] (Mobility Radeon HD 5450) + + pci:v00001002d000068E0sv0000103Csd00001623* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] (Mobility Radeon HD 5450) + + pci:v00001002d000068E0sv0000103Csd0000EEEE* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] (Mobility Radeon HD 5450) + + pci:v00001002d000068E0sv0000104Dsd00009076* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] (Mobility Radeon HD 5450) + + pci:v00001002d000068E0sv00001682sd0000304E* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 5450] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] (Caicos [Radeon HD 5450]) + + pci:v00001002d000068E0sv00001682sd00006000* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 5450] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] (Caicos [Radeon HD 5450]) + + pci:v00001002d000068E0sv000017AAsd00009E52* +- ID_MODEL_FROM_DATABASE=FirePro M3800 ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] (FirePro M3800) + + pci:v00001002d000068E0sv000017AAsd00009E53* +- ID_MODEL_FROM_DATABASE=FirePro M3800 ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430/5450/5470] (FirePro M3800) + + pci:v00001002d000068E1* + ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] + + pci:v00001002d000068E1sv00001043sd0000041F* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 7350] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 7350]) + + pci:v00001002d000068E1sv00001043sd00003000* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 5450] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 5450]) + + pci:v00001002d000068E1sv0000148Csd00003000* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 5450] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 5450]) + + pci:v00001002d000068E1sv0000148Csd00003001* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6230] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 6230]) + + pci:v00001002d000068E1sv0000148Csd00003002* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6250] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 6250]) + + pci:v00001002d000068E1sv0000148Csd00003003* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6350] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 6350]) + + pci:v00001002d000068E1sv0000148Csd00007350* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 7350] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 7350]) + + pci:v00001002d000068E1sv0000148Csd00008350* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 8350] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 8350]) + + pci:v00001002d000068E1sv00001545sd00005450* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 5450] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 5450]) + + pci:v00001002d000068E1sv00001545sd00007350* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 7350] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 7350]) + + pci:v00001002d000068E1sv00001682sd00003000* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 5450] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 5450]) + + pci:v00001002d000068E1sv00001682sd00006000* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 5450] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 5450]) + + pci:v00001002d000068E1sv00001682sd00007350* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 7350] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 7350]) + + pci:v00001002d000068E1sv0000174Bsd00003000* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 5450] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 5450]) + + pci:v00001002d000068E1sv0000174Bsd00005470* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 5470] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 5470]) + + pci:v00001002d000068E1sv0000174Bsd00006000* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 5450] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 5450]) + + pci:v00001002d000068E1sv0000174Bsd00006230* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6230] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 6230]) + + pci:v00001002d000068E1sv0000174Bsd00006350* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6350] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 6350]) + + pci:v00001002d000068E1sv0000174Bsd00007350* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 7350] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 7350]) + + pci:v00001002d000068E1sv00001787sd00003000* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 5450] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 5450]) + + pci:v00001002d000068E1sv000017AFsd00003000* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 5450] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 5450]) + + pci:v00001002d000068E1sv000017AFsd00003001* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6230] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 6230]) + + pci:v00001002d000068E1sv000017AFsd00003014* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 6350] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 6350]) + + pci:v00001002d000068E1sv000017AFsd00003015* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 7350] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 7350]) + + pci:v00001002d000068E1sv000017AFsd00008350* +- ID_MODEL_FROM_DATABASE=Caicos [Radeon HD 8350 OEM] ++ ID_MODEL_FROM_DATABASE=Park [Mobility Radeon HD 5430] (Caicos [Radeon HD 8350 OEM]) + + pci:v00001002d000068E4* + ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] + + pci:v00001002d000068E4sv00001019sd00002386* +- ID_MODEL_FROM_DATABASE=Radeon HD 6350M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6350M) + + pci:v00001002d000068E4sv00001019sd00002387* +- ID_MODEL_FROM_DATABASE=Radeon HD 6350M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6350M) + + pci:v00001002d000068E4sv00001019sd0000238D* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv00001019sd0000238E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv00001025sd00000382* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv00001025sd00000489* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv00001025sd0000048A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv00001025sd0000048B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv00001025sd0000048C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv00001028sd000004C1* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv00001028sd000004CA* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv00001028sd000004CC* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv00001028sd000004CD* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv00001028sd000004D7* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd00001411* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd00001421* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd00001426* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd00001428* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd0000142A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd0000142B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd0000143A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd0000143C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd00001445* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd0000162C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd0000162D* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd0000162E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd0000162F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd00001639* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd0000163A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd0000163B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd0000163C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd0000163D* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd0000163E* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd0000163F* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd00001641* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd00001643* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd00003578* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd0000357A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd00003673* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000103Csd00003675* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv00001043sd00001C92* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv00001043sd000084A1* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv00001043sd000084AD* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000104Dsd00009081* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv00001545sd00007350* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350] ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Cedar [Radeon HD 7350]) + + pci:v00001002d000068E4sv00001558sd00004510* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv00001558sd00005505* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv0000174Bsd00005450* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5450] ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Cedar [Radeon HD 5450]) + + pci:v00001002d000068E4sv000017AAsd000021DD* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv000017AAsd000021E9* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv000017AAsd00003971* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M) + + pci:v00001002d000068E4sv000017AAsd00003972* +- ID_MODEL_FROM_DATABASE=Radeon HD 7370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 7370M) + + pci:v00001002d000068E4sv000017AAsd0000397A* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M/7370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M/7370M) + + pci:v00001002d000068E4sv000017AAsd0000397B* +- ID_MODEL_FROM_DATABASE=Radeon HD 6370M/7370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 6370M/7370M) + + pci:v00001002d000068E4sv000017AAsd0000397F* +- ID_MODEL_FROM_DATABASE=Radeon HD 7370M ++ ID_MODEL_FROM_DATABASE=Robson CE [Radeon HD 6370M/7370M] (Radeon HD 7370M) + + pci:v00001002d000068E5* + ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] + + pci:v00001002d000068E5sv00001179sd0000FD3C* +- ID_MODEL_FROM_DATABASE=Radeon HD 6330M ++ ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] (Radeon HD 6330M) + + pci:v00001002d000068E5sv00001179sd0000FD50* +- ID_MODEL_FROM_DATABASE=Radeon HD 6330M ++ ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] (Radeon HD 6330M) + + pci:v00001002d000068E5sv00001179sd0000FD52* +- ID_MODEL_FROM_DATABASE=Radeon HD 6330M ++ ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] (Radeon HD 6330M) + + pci:v00001002d000068E5sv00001179sd0000FD63* +- ID_MODEL_FROM_DATABASE=Radeon HD 6330M ++ ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] (Radeon HD 6330M) + + pci:v00001002d000068E5sv00001179sd0000FD65* +- ID_MODEL_FROM_DATABASE=Radeon HD 6330M ++ ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] (Radeon HD 6330M) + + pci:v00001002d000068E5sv00001179sd0000FD73* +- ID_MODEL_FROM_DATABASE=Radeon HD 6330M ++ ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] (Radeon HD 6330M) + + pci:v00001002d000068E5sv00001179sd0000FD75* +- ID_MODEL_FROM_DATABASE=Radeon HD 6330M ++ ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] (Radeon HD 6330M) + + pci:v00001002d000068E5sv00001179sd0000FDD0* +- ID_MODEL_FROM_DATABASE=Radeon HD 6330M ++ ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] (Radeon HD 6330M) + + pci:v00001002d000068E5sv00001179sd0000FDD2* +- ID_MODEL_FROM_DATABASE=Radeon HD 6330M ++ ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] (Radeon HD 6330M) + + pci:v00001002d000068E5sv00001179sd0000FDEA* +- ID_MODEL_FROM_DATABASE=Radeon HD 6330M ++ ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] (Radeon HD 6330M) + + pci:v00001002d000068E5sv00001179sd0000FDF8* +- ID_MODEL_FROM_DATABASE=Radeon HD 6330M ++ ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] (Radeon HD 6330M) + + pci:v00001002d000068E5sv0000148Csd00005450* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5450] ++ ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] (Cedar [Radeon HD 5450]) + + pci:v00001002d000068E5sv0000148Csd00006350* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 6350] ++ ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] (Cedar [Radeon HD 6350]) + + pci:v00001002d000068E5sv0000148Csd00007350* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350] ++ ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] (Cedar [Radeon HD 7350]) + + pci:v00001002d000068E5sv0000148Csd00008350* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 8350] ++ ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] (Cedar [Radeon HD 8350]) + + pci:v00001002d000068E5sv00001545sd00007350* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350] ++ ID_MODEL_FROM_DATABASE=Robson LE [Radeon HD 6330M] (Cedar [Radeon HD 7350]) + + pci:v00001002d000068E8* + ID_MODEL_FROM_DATABASE=Cedar +@@ -7575,259 +7575,259 @@ pci:v00001002d000068F9* + ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] + + pci:v00001002d000068F9sv00001019sd00000001* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv00001019sd00000002* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv00001019sd00000019* +- ID_MODEL_FROM_DATABASE=Radeon HD 6350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6350) + + pci:v00001002d000068F9sv00001025sd00000518* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv00001025sd00000519* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv00001028sd0000010E* +- ID_MODEL_FROM_DATABASE=XPS 8300 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (XPS 8300) + + pci:v00001002d000068F9sv00001028sd00002126* +- ID_MODEL_FROM_DATABASE=Radeon HD 6350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6350) + + pci:v00001002d000068F9sv0000103Csd00002126* +- ID_MODEL_FROM_DATABASE=Radeon HD 6350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6350) + + pci:v00001002d000068F9sv0000103Csd00002AAC* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv0000103Csd00002AAE* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv0000103Csd00003580* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv00001043sd00000386* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv00001043sd000003C2* +- ID_MODEL_FROM_DATABASE=EAH5450 SILENT/DI/512MD2 (LP) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (EAH5450 SILENT/DI/512MD2 (LP)) + + pci:v00001002d000068F9sv00001462sd00002130* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv00001462sd00002131* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv00001462sd00002133* +- ID_MODEL_FROM_DATABASE=Radeon HD 6350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6350) + + pci:v00001002d000068F9sv00001462sd00002180* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv00001462sd00002181* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv00001462sd00002182* +- ID_MODEL_FROM_DATABASE=Radeon HD 6350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6350) + + pci:v00001002d000068F9sv00001462sd00002183* +- ID_MODEL_FROM_DATABASE=Radeon HD 6350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6350) + + pci:v00001002d000068F9sv00001462sd00002230* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv00001462sd00002231* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv00001462sd00002495* +- ID_MODEL_FROM_DATABASE=Radeon HD 6350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6350) + + pci:v00001002d000068F9sv0000148Csd00003001* +- ID_MODEL_FROM_DATABASE=Radeon HD 5530/6250 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5530/6250) + + pci:v00001002d000068F9sv0000148Csd00003002* +- ID_MODEL_FROM_DATABASE=Radeon HD 6290 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6290) + + pci:v00001002d000068F9sv0000148Csd00003003* +- ID_MODEL_FROM_DATABASE=Radeon HD 6230 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6230) + + pci:v00001002d000068F9sv0000148Csd00003004* +- ID_MODEL_FROM_DATABASE=Radeon HD 6350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6350) + + pci:v00001002d000068F9sv0000148Csd00007350* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 7350) + + pci:v00001002d000068F9sv0000148Csd00008350* +- ID_MODEL_FROM_DATABASE=Radeon HD 8350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 8350) + + pci:v00001002d000068F9sv00001545sd00007350* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 7350) + + pci:v00001002d000068F9sv00001642sd00003983* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv00001642sd00003984* +- ID_MODEL_FROM_DATABASE=Radeon HD 6350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6350) + + pci:v00001002d000068F9sv00001642sd00003987* +- ID_MODEL_FROM_DATABASE=Radeon HD 6350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6350) + + pci:v00001002d000068F9sv00001642sd00003997* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv00001642sd00003A05* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv00001642sd00003B31* +- ID_MODEL_FROM_DATABASE=Radeon HD 6350A ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6350A) + + pci:v00001002d000068F9sv00001682sd00003270* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 7350) + + pci:v00001002d000068F9sv0000174Bsd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 6230 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6230) + + pci:v00001002d000068F9sv0000174Bsd00003987* +- ID_MODEL_FROM_DATABASE=Radeon HD 6350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6350) + + pci:v00001002d000068F9sv0000174Bsd00005470* +- ID_MODEL_FROM_DATABASE=Radeon HD 5470 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5470) + + pci:v00001002d000068F9sv0000174Bsd00005490* +- ID_MODEL_FROM_DATABASE=Radeon HD 5490 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5490) + + pci:v00001002d000068F9sv0000174Bsd00005530* +- ID_MODEL_FROM_DATABASE=Radeon HD 5530 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5530) + + pci:v00001002d000068F9sv0000174Bsd00006230* +- ID_MODEL_FROM_DATABASE=Radeon HD 6230 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6230) + + pci:v00001002d000068F9sv0000174Bsd00006250* +- ID_MODEL_FROM_DATABASE=Radeon HD 6250 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6250) + + pci:v00001002d000068F9sv0000174Bsd00006290* +- ID_MODEL_FROM_DATABASE=Radeon HD 6290 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6290) + + pci:v00001002d000068F9sv0000174Bsd00006350* +- ID_MODEL_FROM_DATABASE=Radeon HD 6350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6350) + + pci:v00001002d000068F9sv0000174Bsd00007350* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 7350) + + pci:v00001002d000068F9sv0000174Bsd00008350* +- ID_MODEL_FROM_DATABASE=Radeon HD 8350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 8350) + + pci:v00001002d000068F9sv0000174Bsd0000E127* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv0000174Bsd0000E145* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv0000174Bsd0000E153* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv00001787sd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 5470 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5470) + + pci:v00001002d000068F9sv00001787sd00003001* +- ID_MODEL_FROM_DATABASE=Radeon HD 5530 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5530) + + pci:v00001002d000068F9sv00001787sd00003002* +- ID_MODEL_FROM_DATABASE=Radeon HD 5490 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5490) + + pci:v00001002d000068F9sv000017AAsd00003602* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv000017AAsd00003603* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv000017AAsd0000360F* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv000017AAsd00003619* +- ID_MODEL_FROM_DATABASE=Radeon HD 5450 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5450) + + pci:v00001002d000068F9sv000017AFsd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 6250 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6250) + + pci:v00001002d000068F9sv000017AFsd00003001* +- ID_MODEL_FROM_DATABASE=Radeon HD 6230 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6230) + + pci:v00001002d000068F9sv000017AFsd00003002* +- ID_MODEL_FROM_DATABASE=Radeon HD 6290 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6290) + + pci:v00001002d000068F9sv000017AFsd00003011* +- ID_MODEL_FROM_DATABASE=Radeon HD 5470 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5470) + + pci:v00001002d000068F9sv000017AFsd00003012* +- ID_MODEL_FROM_DATABASE=Radeon HD 5490 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5490) + + pci:v00001002d000068F9sv000017AFsd00003013* +- ID_MODEL_FROM_DATABASE=Radeon HD 5470 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 5470) + + pci:v00001002d000068F9sv000017AFsd00003014* +- ID_MODEL_FROM_DATABASE=Radeon HD 6350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6350) + + pci:v00001002d000068FA* + ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] + + pci:v00001002d000068FAsv00001019sd00000019* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) + + pci:v00001002d000068FAsv00001019sd00000021* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) + + pci:v00001002d000068FAsv00001019sd00000022* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) + + pci:v00001002d000068FAsv00001019sd00000026* +- ID_MODEL_FROM_DATABASE=Radeon HD 8350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 8350) + + pci:v00001002d000068FAsv0000103Csd00002ADF* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350A ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350A) + + pci:v00001002d000068FAsv0000103Csd00002AE8* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350A ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350A) + + pci:v00001002d000068FAsv00001043sd00008350* +- ID_MODEL_FROM_DATABASE=Radeon HD 8350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 8350) + + pci:v00001002d000068FAsv00001462sd00002128* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) + + pci:v00001002d000068FAsv00001462sd00002184* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) + + pci:v00001002d000068FAsv00001462sd00002186* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) + + pci:v00001002d000068FAsv00001462sd00002495* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) + + pci:v00001002d000068FAsv00001462sd0000B490* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) + + pci:v00001002d000068FAsv00001642sd00003985* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) + + pci:v00001002d000068FAsv0000174Bsd00007350* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) + + pci:v00001002d000068FAsv0000174Bsd00008153* +- ID_MODEL_FROM_DATABASE=Radeon HD 8350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 8350) + + pci:v00001002d000068FAsv0000174Bsd0000E127* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) + + pci:v00001002d000068FAsv0000174Bsd0000E153* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) + + pci:v00001002d000068FAsv0000174Bsd0000E180* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) + + pci:v00001002d000068FAsv000017AFsd00003015* +- ID_MODEL_FROM_DATABASE=Radeon HD 7350 ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) + + pci:v00001002d000068FE* + ID_MODEL_FROM_DATABASE=Cedar LE +@@ -7863,16 +7863,16 @@ pci:v00001002d00007109* + ID_MODEL_FROM_DATABASE=R520 [Radeon X1800 XL] + + pci:v00001002d00007109sv00001002sd00000322* +- ID_MODEL_FROM_DATABASE=All-in-Wonder X1800XL ++ ID_MODEL_FROM_DATABASE=R520 [Radeon X1800 XL] (All-in-Wonder X1800XL) + + pci:v00001002d00007109sv00001002sd00000D02* +- ID_MODEL_FROM_DATABASE=Radeon X1800 CrossFire Edition ++ ID_MODEL_FROM_DATABASE=R520 [Radeon X1800 XL] (Radeon X1800 CrossFire Edition) + + pci:v00001002d0000710A* + ID_MODEL_FROM_DATABASE=R520 [Radeon X1800 GTO] + + pci:v00001002d0000710Asv00001002sd00000B12* +- ID_MODEL_FROM_DATABASE=Radeon X1800 GTO² ++ ID_MODEL_FROM_DATABASE=R520 [Radeon X1800 GTO] (Radeon X1800 GTO²) + + pci:v00001002d0000710B* + ID_MODEL_FROM_DATABASE=R520 [Radeon X1800 GTO] +@@ -7887,10 +7887,10 @@ pci:v00001002d00007129* + ID_MODEL_FROM_DATABASE=R520 [Radeon X1800] (Secondary) + + pci:v00001002d00007129sv00001002sd00000323* +- ID_MODEL_FROM_DATABASE=All-In-Wonder X1800 XL (Secondary) ++ ID_MODEL_FROM_DATABASE=R520 [Radeon X1800] (Secondary) (All-In-Wonder X1800 XL (Secondary)) + + pci:v00001002d00007129sv00001002sd00000D03* +- ID_MODEL_FROM_DATABASE=Radeon X1800 CrossFire Edition (Secondary) ++ ID_MODEL_FROM_DATABASE=R520 [Radeon X1800] (Secondary) (Radeon X1800 CrossFire Edition (Secondary)) + + pci:v00001002d00007140* + ID_MODEL_FROM_DATABASE=RV515 [Radeon X1300/X1550/X1600 Series] +@@ -7899,10 +7899,10 @@ pci:v00001002d00007142* + ID_MODEL_FROM_DATABASE=RV515 PRO [Radeon X1300/X1550 Series] + + pci:v00001002d00007142sv00001002sd00000322* +- ID_MODEL_FROM_DATABASE=All-in-Wonder 2006 PCI-E Edition ++ ID_MODEL_FROM_DATABASE=RV515 PRO [Radeon X1300/X1550 Series] (All-in-Wonder 2006 PCI-E Edition) + + pci:v00001002d00007142sv00001043sd00000142* +- ID_MODEL_FROM_DATABASE=EAX1300PRO/TD/256M ++ ID_MODEL_FROM_DATABASE=RV515 PRO [Radeon X1300/X1550 Series] (EAX1300PRO/TD/256M) + + pci:v00001002d00007143* + ID_MODEL_FROM_DATABASE=RV505 [Radeon X1300/X1550 Series] +@@ -7911,16 +7911,16 @@ pci:v00001002d00007145* + ID_MODEL_FROM_DATABASE=RV515/M54 [Mobility Radeon X1400] + + pci:v00001002d00007145sv000017AAsd00002006* +- ID_MODEL_FROM_DATABASE=Thinkpad T60 model 2007 ++ ID_MODEL_FROM_DATABASE=RV515/M54 [Mobility Radeon X1400] (Thinkpad T60 model 2007) + + pci:v00001002d00007146* + ID_MODEL_FROM_DATABASE=RV515 [Radeon X1300/X1550] + + pci:v00001002d00007146sv00001002sd00000322* +- ID_MODEL_FROM_DATABASE=All-in-Wonder 2006 PCI-E Edition ++ ID_MODEL_FROM_DATABASE=RV515 [Radeon X1300/X1550] (All-in-Wonder 2006 PCI-E Edition) + + pci:v00001002d00007146sv00001545sd00001996* +- ID_MODEL_FROM_DATABASE=Radeon X1300 512MB PCI-e ++ ID_MODEL_FROM_DATABASE=RV515 [Radeon X1300/X1550] (Radeon X1300 512MB PCI-e) + + pci:v00001002d00007147* + ID_MODEL_FROM_DATABASE=RV505 [Radeon X1550 64-bit] +@@ -7944,7 +7944,7 @@ pci:v00001002d00007162* + ID_MODEL_FROM_DATABASE=RV515 PRO [Radeon X1300/X1550 Series] (Secondary) + + pci:v00001002d00007162sv00001002sd00000323* +- ID_MODEL_FROM_DATABASE=All-in-Wonder 2006 PCI-E Edition (Secondary) ++ ID_MODEL_FROM_DATABASE=RV515 PRO [Radeon X1300/X1550 Series] (Secondary) (All-in-Wonder 2006 PCI-E Edition (Secondary)) + + pci:v00001002d00007163* + ID_MODEL_FROM_DATABASE=RV505 [Radeon X1550 Series] (Secondary) +@@ -7953,10 +7953,10 @@ pci:v00001002d00007166* + ID_MODEL_FROM_DATABASE=RV515 [Radeon X1300/X1550 Series] (Secondary) + + pci:v00001002d00007166sv00001002sd00000323* +- ID_MODEL_FROM_DATABASE=All-in-Wonder 2006 PCI-E Edition (Secondary) ++ ID_MODEL_FROM_DATABASE=RV515 [Radeon X1300/X1550 Series] (Secondary) (All-in-Wonder 2006 PCI-E Edition (Secondary)) + + pci:v00001002d00007166sv00001545sd00001997* +- ID_MODEL_FROM_DATABASE=Radeon X1300 512MB PCI-e (Secondary) ++ ID_MODEL_FROM_DATABASE=RV515 [Radeon X1300/X1550 Series] (Secondary) (Radeon X1300 512MB PCI-e (Secondary)) + + pci:v00001002d00007167* + ID_MODEL_FROM_DATABASE=RV515 [Radeon X1550 64-bit] (Secondary) +@@ -7983,7 +7983,7 @@ pci:v00001002d00007188* + ID_MODEL_FROM_DATABASE=RV516/M64-S [Mobility Radeon X2300] + + pci:v00001002d00007188sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=6910p ++ ID_MODEL_FROM_DATABASE=RV516/M64-S [Mobility Radeon X2300] (6910p) + + pci:v00001002d0000718A* + ID_MODEL_FROM_DATABASE=RV516/M64 [Mobility Radeon X2300] +@@ -8028,16 +8028,16 @@ pci:v00001002d000071C0* + ID_MODEL_FROM_DATABASE=RV530 [Radeon X1600 XT/X1650 GTO] + + pci:v00001002d000071C0sv00001002sd0000E160* +- ID_MODEL_FROM_DATABASE=Radeon X1650 GTO ++ ID_MODEL_FROM_DATABASE=RV530 [Radeon X1600 XT/X1650 GTO] (Radeon X1650 GTO) + + pci:v00001002d000071C0sv0000174Bsd0000E160* +- ID_MODEL_FROM_DATABASE=Radeon X1650 GTO ++ ID_MODEL_FROM_DATABASE=RV530 [Radeon X1600 XT/X1650 GTO] (Radeon X1650 GTO) + + pci:v00001002d000071C1* + ID_MODEL_FROM_DATABASE=RV535 [Radeon X1650 PRO] + + pci:v00001002d000071C1sv0000174Bsd00000880* +- ID_MODEL_FROM_DATABASE=Radeon X1700 FSC ++ ID_MODEL_FROM_DATABASE=RV535 [Radeon X1650 PRO] (Radeon X1700 FSC) + + pci:v00001002d000071C2* + ID_MODEL_FROM_DATABASE=RV530 [Radeon X1600 PRO] +@@ -8046,22 +8046,22 @@ pci:v00001002d000071C4* + ID_MODEL_FROM_DATABASE=RV530/M56 GL [Mobility FireGL V5200] + + pci:v00001002d000071C4sv000017AAsd00002007* +- ID_MODEL_FROM_DATABASE=ThinkPad T60p ++ ID_MODEL_FROM_DATABASE=RV530/M56 GL [Mobility FireGL V5200] (ThinkPad T60p) + + pci:v00001002d000071C5* + ID_MODEL_FROM_DATABASE=RV530/M56-P [Mobility Radeon X1600] + + pci:v00001002d000071C5sv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=RV530/M56-P [Mobility Radeon X1600] (Compaq nx9420 Notebook) + + pci:v00001002d000071C5sv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq NW8440 ++ ID_MODEL_FROM_DATABASE=RV530/M56-P [Mobility Radeon X1600] (Compaq NW8440) + + pci:v00001002d000071C5sv00001043sd000010B2* +- ID_MODEL_FROM_DATABASE=A6J-Q008 ++ ID_MODEL_FROM_DATABASE=RV530/M56-P [Mobility Radeon X1600] (A6J-Q008) + + pci:v00001002d000071C5sv0000106Bsd00000080* +- ID_MODEL_FROM_DATABASE=MacBook Pro ++ ID_MODEL_FROM_DATABASE=RV530/M56-P [Mobility Radeon X1600] (MacBook Pro) + + pci:v00001002d000071C6* + ID_MODEL_FROM_DATABASE=RV530LE [Radeon X1600/X1650 PRO] +@@ -8070,7 +8070,7 @@ pci:v00001002d000071C7* + ID_MODEL_FROM_DATABASE=RV535 [Radeon X1650 PRO] + + pci:v00001002d000071C7sv00001787sd00003000* +- ID_MODEL_FROM_DATABASE=PowerColor X1650 PRO AGP ++ ID_MODEL_FROM_DATABASE=RV535 [Radeon X1650 PRO] (PowerColor X1650 PRO AGP) + + pci:v00001002d000071CE* + ID_MODEL_FROM_DATABASE=RV530 [Radeon X1300 XT/X1600 PRO] +@@ -8094,13 +8094,13 @@ pci:v00001002d000071E0* + ID_MODEL_FROM_DATABASE=RV530 [Radeon X1600] (Secondary) + + pci:v00001002d000071E0sv0000174Bsd0000E161* +- ID_MODEL_FROM_DATABASE=Radeon X1600 GTO (Secondary) ++ ID_MODEL_FROM_DATABASE=RV530 [Radeon X1600] (Secondary) (Radeon X1600 GTO (Secondary)) + + pci:v00001002d000071E1* + ID_MODEL_FROM_DATABASE=RV535 [Radeon X1650 PRO] (Secondary) + + pci:v00001002d000071E1sv0000174Bsd00000881* +- ID_MODEL_FROM_DATABASE=Radeon X1700 FSC (Secondary) ++ ID_MODEL_FROM_DATABASE=RV535 [Radeon X1650 PRO] (Secondary) (Radeon X1700 FSC (Secondary)) + + pci:v00001002d000071E2* + ID_MODEL_FROM_DATABASE=RV530 [Radeon X1600] (Secondary) +@@ -8112,7 +8112,7 @@ pci:v00001002d000071E7* + ID_MODEL_FROM_DATABASE=RV535 [Radeon X1650 PRO] (Secondary) + + pci:v00001002d000071E7sv00001787sd00003001* +- ID_MODEL_FROM_DATABASE=Radeon X1650 PRO AGP ++ ID_MODEL_FROM_DATABASE=RV535 [Radeon X1650 PRO] (Secondary) (Radeon X1650 PRO AGP) + + pci:v00001002d000071F2* + ID_MODEL_FROM_DATABASE=RV530 GL [FireGL V3400] (Secondary) +@@ -8127,7 +8127,7 @@ pci:v00001002d00007240* + ID_MODEL_FROM_DATABASE=R580+ [Radeon X1950 XTX] + + pci:v00001002d00007240sv00001002sd00000D02* +- ID_MODEL_FROM_DATABASE=Radeon X1950 CrossFire Edition ++ ID_MODEL_FROM_DATABASE=R580+ [Radeon X1950 XTX] (Radeon X1950 CrossFire Edition) + + pci:v00001002d00007244* + ID_MODEL_FROM_DATABASE=R580+ [Radeon X1950 XT] +@@ -8139,25 +8139,25 @@ pci:v00001002d00007249* + ID_MODEL_FROM_DATABASE=R580 [Radeon X1900 XT] + + pci:v00001002d00007249sv00001002sd00000412* +- ID_MODEL_FROM_DATABASE=All-In-Wonder X1900 ++ ID_MODEL_FROM_DATABASE=R580 [Radeon X1900 XT] (All-In-Wonder X1900) + + pci:v00001002d00007249sv00001002sd00000B12* +- ID_MODEL_FROM_DATABASE=Radeon X1900 XT/XTX ++ ID_MODEL_FROM_DATABASE=R580 [Radeon X1900 XT] (Radeon X1900 XT/XTX) + + pci:v00001002d00007249sv00001002sd00000D02* +- ID_MODEL_FROM_DATABASE=Radeon X1900 CrossFire Edition ++ ID_MODEL_FROM_DATABASE=R580 [Radeon X1900 XT] (Radeon X1900 CrossFire Edition) + + pci:v00001002d00007249sv00001043sd00000160* +- ID_MODEL_FROM_DATABASE=Radeon X1900 XTX 512 MB GDDR3 ++ ID_MODEL_FROM_DATABASE=R580 [Radeon X1900 XT] (Radeon X1900 XTX 512 MB GDDR3) + + pci:v00001002d0000724B* + ID_MODEL_FROM_DATABASE=R580 [Radeon X1900 GT] + + pci:v00001002d0000724Bsv00001002sd00000B12* +- ID_MODEL_FROM_DATABASE=Radeon X1900 (Primary) ++ ID_MODEL_FROM_DATABASE=R580 [Radeon X1900 GT] (Radeon X1900 (Primary)) + + pci:v00001002d0000724Bsv00001002sd00000B13* +- ID_MODEL_FROM_DATABASE=Radeon X1900 (Secondary) ++ ID_MODEL_FROM_DATABASE=R580 [Radeon X1900 GT] (Radeon X1900 (Secondary)) + + pci:v00001002d0000724E* + ID_MODEL_FROM_DATABASE=R580 GL [FireGL V7350] +@@ -8181,7 +8181,7 @@ pci:v00001002d00007291* + ID_MODEL_FROM_DATABASE=RV560 [Radeon X1650 XT] + + pci:v00001002d00007291sv00001462sd00000810* +- ID_MODEL_FROM_DATABASE=Radeon X1700 SE ++ ID_MODEL_FROM_DATABASE=RV560 [Radeon X1650 XT] (Radeon X1700 SE) + + pci:v00001002d00007293* + ID_MODEL_FROM_DATABASE=RV560 [Radeon X1650 GT] +@@ -8214,10 +8214,10 @@ pci:v00001002d00007910* + ID_MODEL_FROM_DATABASE=RS690 Host Bridge + + pci:v00001002d00007910sv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=RS690 Host Bridge (Satellite P305D-S8995E) + + pci:v00001002d00007910sv000017F2sd00005000* +- ID_MODEL_FROM_DATABASE=KI690-AM2 Motherboard ++ ID_MODEL_FROM_DATABASE=RS690 Host Bridge (KI690-AM2 Motherboard) + + pci:v00001002d00007911* + ID_MODEL_FROM_DATABASE=RS690 Host Bridge +@@ -8238,31 +8238,31 @@ pci:v00001002d00007917* + ID_MODEL_FROM_DATABASE=RS690 PCI to PCI Bridge (PCI Express Port 3) + + pci:v00001002d00007917sv00001002sd00007910* +- ID_MODEL_FROM_DATABASE=RS690 PCI to PCI Bridge ++ ID_MODEL_FROM_DATABASE=RS690 PCI to PCI Bridge (PCI Express Port 3) (RS690 PCI to PCI Bridge) + + pci:v00001002d00007919* + ID_MODEL_FROM_DATABASE=RS690 HDMI Audio [Radeon Xpress 1200 Series] + + pci:v00001002d00007919sv00001179sd00007919* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=RS690 HDMI Audio [Radeon Xpress 1200 Series] (Satellite P305D-S8995E) + + pci:v00001002d00007919sv000017F2sd00005000* +- ID_MODEL_FROM_DATABASE=KI690-AM2 Motherboard ++ ID_MODEL_FROM_DATABASE=RS690 HDMI Audio [Radeon Xpress 1200 Series] (KI690-AM2 Motherboard) + + pci:v00001002d0000791E* + ID_MODEL_FROM_DATABASE=RS690 [Radeon X1200] + + pci:v00001002d0000791Esv00001462sd00007327* +- ID_MODEL_FROM_DATABASE=K9AG Neo2 ++ ID_MODEL_FROM_DATABASE=RS690 [Radeon X1200] (K9AG Neo2) + + pci:v00001002d0000791Esv000017F2sd00005000* +- ID_MODEL_FROM_DATABASE=KI690-AM2 Motherboard ++ ID_MODEL_FROM_DATABASE=RS690 [Radeon X1200] (KI690-AM2 Motherboard) + + pci:v00001002d0000791F* + ID_MODEL_FROM_DATABASE=RS690M [Radeon Xpress 1200/1250/1270] + + pci:v00001002d0000791Fsv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=RS690M [Radeon Xpress 1200/1250/1270] (Satellite P305D-S8995E) + + pci:v00001002d00007930* + ID_MODEL_FROM_DATABASE=RS600 Host Bridge +@@ -8301,13 +8301,13 @@ pci:v00001002d00009400* + ID_MODEL_FROM_DATABASE=R600 [Radeon HD 2900 PRO/XT] + + pci:v00001002d00009400sv00001002sd00002552* +- ID_MODEL_FROM_DATABASE=Radeon HD 2900 XT ++ ID_MODEL_FROM_DATABASE=R600 [Radeon HD 2900 PRO/XT] (Radeon HD 2900 XT) + + pci:v00001002d00009400sv00001002sd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 2900 PRO ++ ID_MODEL_FROM_DATABASE=R600 [Radeon HD 2900 PRO/XT] (Radeon HD 2900 PRO) + + pci:v00001002d00009400sv00001002sd00003142* +- ID_MODEL_FROM_DATABASE=HIS Radeon HD 2900XT 512MB GDDR3 VIVO PCIe ++ ID_MODEL_FROM_DATABASE=R600 [Radeon HD 2900 PRO/XT] (HIS Radeon HD 2900XT 512MB GDDR3 VIVO PCIe) + + pci:v00001002d00009401* + ID_MODEL_FROM_DATABASE=R600 [Radeon HD 2900 XT] +@@ -8337,10 +8337,10 @@ pci:v00001002d00009442* + ID_MODEL_FROM_DATABASE=RV770 [Radeon HD 4850] + + pci:v00001002d00009442sv00001002sd00000502* +- ID_MODEL_FROM_DATABASE=MSI Radeon HD 4850 512MB GDDR3 ++ ID_MODEL_FROM_DATABASE=RV770 [Radeon HD 4850] (MSI Radeon HD 4850 512MB GDDR3) + + pci:v00001002d00009442sv0000174Bsd0000E810* +- ID_MODEL_FROM_DATABASE=Radeon HD 4850 512MB GDDR3 ++ ID_MODEL_FROM_DATABASE=RV770 [Radeon HD 4850] (Radeon HD 4850 512MB GDDR3) + + pci:v00001002d00009443* + ID_MODEL_FROM_DATABASE=R700 [Radeon HD 4850 X2] +@@ -8364,7 +8364,7 @@ pci:v00001002d0000944E* + ID_MODEL_FROM_DATABASE=RV770 CE [Radeon HD 4710] + + pci:v00001002d0000944Esv0000174Bsd00003261* +- ID_MODEL_FROM_DATABASE=Radeon HD 4810 ++ ID_MODEL_FROM_DATABASE=RV770 CE [Radeon HD 4710] (Radeon HD 4810) + + pci:v00001002d00009450* + ID_MODEL_FROM_DATABASE=RV770 GL [FireStream 9270] +@@ -8391,7 +8391,7 @@ pci:v00001002d00009480* + ID_MODEL_FROM_DATABASE=RV730/M96 [Mobility Radeon HD 4650/5165] + + pci:v00001002d00009480sv0000103Csd00003628* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 4650 [dv6-1190en] ++ ID_MODEL_FROM_DATABASE=RV730/M96 [Mobility Radeon HD 4650/5165] (Mobility Radeon HD 4650 [dv6-1190en]) + + pci:v00001002d00009488* + ID_MODEL_FROM_DATABASE=RV730/M96-XT [Mobility Radeon HD 4670] +@@ -8403,7 +8403,7 @@ pci:v00001002d00009490* + ID_MODEL_FROM_DATABASE=RV730 XT [Radeon HD 4670] + + pci:v00001002d00009490sv0000174Bsd0000E880* +- ID_MODEL_FROM_DATABASE=Radeon HD 4670 512MB GDDR3 Dual DVI-I/TVO ++ ID_MODEL_FROM_DATABASE=RV730 XT [Radeon HD 4670] (Radeon HD 4670 512MB GDDR3 Dual DVI-I/TVO) + + pci:v00001002d00009491* + ID_MODEL_FROM_DATABASE=RV730/M96-CSP [Radeon E4690] +@@ -8412,19 +8412,19 @@ pci:v00001002d00009495* + ID_MODEL_FROM_DATABASE=RV730 [Radeon HD 4600 AGP Series] + + pci:v00001002d00009495sv00001002sd00000028* +- ID_MODEL_FROM_DATABASE=Radeon HD 4650/4670 AGP ++ ID_MODEL_FROM_DATABASE=RV730 [Radeon HD 4600 AGP Series] (Radeon HD 4650/4670 AGP) + + pci:v00001002d00009495sv00001092sd00000028* +- ID_MODEL_FROM_DATABASE=Radeon HD 4670 AGP 512MB DDR2 ++ ID_MODEL_FROM_DATABASE=RV730 [Radeon HD 4600 AGP Series] (Radeon HD 4670 AGP 512MB DDR2) + + pci:v00001002d00009495sv00001458sd00000028* +- ID_MODEL_FROM_DATABASE=Radeon HD 4650 AGP ++ ID_MODEL_FROM_DATABASE=RV730 [Radeon HD 4600 AGP Series] (Radeon HD 4650 AGP) + + pci:v00001002d00009495sv00001682sd00000028* +- ID_MODEL_FROM_DATABASE=Radeon HD 4650 AGP ++ ID_MODEL_FROM_DATABASE=RV730 [Radeon HD 4600 AGP Series] (Radeon HD 4650 AGP) + + pci:v00001002d00009495sv0000174Bsd00000028* +- ID_MODEL_FROM_DATABASE=Radeon HD 4650 AGP DDR2 ++ ID_MODEL_FROM_DATABASE=RV730 [Radeon HD 4600 AGP Series] (Radeon HD 4650 AGP DDR2) + + pci:v00001002d00009498* + ID_MODEL_FROM_DATABASE=RV730 PRO [Radeon HD 4650] +@@ -8457,22 +8457,22 @@ pci:v00001002d000094C1* + ID_MODEL_FROM_DATABASE=RV610 [Radeon HD 2400 PRO/XT] + + pci:v00001002d000094C1sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=RV610 [Radeon HD 2400 PRO/XT] (Optiplex 755) + + pci:v00001002d000094C1sv00001028sd00000D02* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=RV610 [Radeon HD 2400 PRO/XT] (Optiplex 755) + + pci:v00001002d000094C3* + ID_MODEL_FROM_DATABASE=RV610 [Radeon HD 2400 PRO] + + pci:v00001002d000094C3sv00001028sd00000302* +- ID_MODEL_FROM_DATABASE=Radeon HD 2400 Pro ++ ID_MODEL_FROM_DATABASE=RV610 [Radeon HD 2400 PRO] (Radeon HD 2400 Pro) + + pci:v00001002d000094C3sv0000174Bsd0000E400* +- ID_MODEL_FROM_DATABASE=Radeon HD 2400 PRO ++ ID_MODEL_FROM_DATABASE=RV610 [Radeon HD 2400 PRO] (Radeon HD 2400 PRO) + + pci:v00001002d000094C3sv000018BCsd00003550* +- ID_MODEL_FROM_DATABASE=Radeon HD 2400 PRO ++ ID_MODEL_FROM_DATABASE=RV610 [Radeon HD 2400 PRO] (Radeon HD 2400 PRO) + + pci:v00001002d000094C4* + ID_MODEL_FROM_DATABASE=RV610 LE [Radeon HD 2400 PRO AGP] +@@ -8490,7 +8490,7 @@ pci:v00001002d000094C9* + ID_MODEL_FROM_DATABASE=RV610/M72-S [Mobility Radeon HD 2400] + + pci:v00001002d000094C9sv00001002sd000094C9* +- ID_MODEL_FROM_DATABASE=Radeon HD2400 ++ ID_MODEL_FROM_DATABASE=RV610/M72-S [Mobility Radeon HD 2400] (Radeon HD2400) + + pci:v00001002d000094CB* + ID_MODEL_FROM_DATABASE=RV610 [Radeon E2400] +@@ -8505,7 +8505,7 @@ pci:v00001002d00009501* + ID_MODEL_FROM_DATABASE=RV670 [Radeon HD 3870] + + pci:v00001002d00009501sv0000174Bsd0000E620* +- ID_MODEL_FROM_DATABASE=Radeon HD 3870 ++ ID_MODEL_FROM_DATABASE=RV670 [Radeon HD 3870] (Radeon HD 3870) + + pci:v00001002d00009504* + ID_MODEL_FROM_DATABASE=RV670/M88 [Mobility Radeon HD 3850] +@@ -8514,13 +8514,13 @@ pci:v00001002d00009505* + ID_MODEL_FROM_DATABASE=RV670 [Radeon HD 3690/3850] + + pci:v00001002d00009505sv0000148Csd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 3850 ++ ID_MODEL_FROM_DATABASE=RV670 [Radeon HD 3690/3850] (Radeon HD 3850) + + pci:v00001002d00009505sv0000174Bsd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 3690/3850 ++ ID_MODEL_FROM_DATABASE=RV670 [Radeon HD 3690/3850] (Radeon HD 3690/3850) + + pci:v00001002d00009505sv00001787sd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 3690 ++ ID_MODEL_FROM_DATABASE=RV670 [Radeon HD 3690/3850] (Radeon HD 3690) + + pci:v00001002d00009506* + ID_MODEL_FROM_DATABASE=RV670/M88 [Mobility Radeon HD 3850 X2] +@@ -8556,76 +8556,76 @@ pci:v00001002d0000954F* + ID_MODEL_FROM_DATABASE=RV710 [Radeon HD 4350/4550] + + pci:v00001002d0000954Fsv00001462sd00001618* +- ID_MODEL_FROM_DATABASE=R4350 MD512H (MS-V161) ++ ID_MODEL_FROM_DATABASE=RV710 [Radeon HD 4350/4550] (R4350 MD512H (MS-V161)) + + pci:v00001002d00009552* + ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4330/4350/4550] + + pci:v00001002d00009552sv00001028sd00001103* +- ID_MODEL_FROM_DATABASE=M92 [Mobility Radeon HD 4330] ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4330/4350/4550] (M92 [Mobility Radeon HD 4330]) + + pci:v00001002d00009552sv00001458sd000021AC* +- ID_MODEL_FROM_DATABASE=Radeon HD 4350 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4330/4350/4550] (Radeon HD 4350) + + pci:v00001002d00009552sv00001458sd000021ED* +- ID_MODEL_FROM_DATABASE=Radeon HD 4550 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4330/4350/4550] (Radeon HD 4550) + + pci:v00001002d00009552sv0000148Csd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 4350 Go! Green 512MB GDDR3 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4330/4350/4550] (Radeon HD 4350 Go! Green 512MB GDDR3) + + pci:v00001002d00009552sv0000174Bsd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 4350/4550 HyperMemory DDR2 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4330/4350/4550] (Radeon HD 4350/4550 HyperMemory DDR2) + + pci:v00001002d00009553* + ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4530/4570/545v] + + pci:v00001002d00009553sv00001025sd0000015E* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 4570 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4530/4570/545v] (Mobility Radeon HD 4570) + + pci:v00001002d00009553sv00001025sd0000017D* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 4570 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4530/4570/545v] (Mobility Radeon HD 4570) + + pci:v00001002d00009553sv00001025sd00000205* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 4570 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4530/4570/545v] (Mobility Radeon HD 4570) + + pci:v00001002d00009553sv00001025sd00000206* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 4570 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4530/4570/545v] (Mobility Radeon HD 4570) + + pci:v00001002d00009553sv00001025sd00000237* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 4570 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4530/4570/545v] (Mobility Radeon HD 4570) + + pci:v00001002d00009553sv00001028sd000002BE* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 4570 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4530/4570/545v] (Mobility Radeon HD 4570) + + pci:v00001002d00009553sv00001028sd000002E8* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 4530 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4530/4570/545v] (Mobility Radeon HD 4530) + + pci:v00001002d00009553sv0000103Csd00003624* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 4530 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4530/4570/545v] (Mobility Radeon HD 4530) + + pci:v00001002d00009553sv0000103Csd00003628* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 4530 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4530/4570/545v] (Mobility Radeon HD 4530) + + pci:v00001002d00009553sv0000103Csd00003636* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 4530 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4530/4570/545v] (Mobility Radeon HD 4530) + + pci:v00001002d00009553sv00001043sd00001B32* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 4570 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4530/4570/545v] (Mobility Radeon HD 4570) + + pci:v00001002d00009553sv00001043sd00001B42* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 4570 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4530/4570/545v] (Mobility Radeon HD 4570) + + pci:v00001002d00009553sv0000104Dsd00009056* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 4570 ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4530/4570/545v] (Mobility Radeon HD 4570) + + pci:v00001002d00009553sv00001179sd0000FF82* +- ID_MODEL_FROM_DATABASE=Satellite L505-13T GPU (Mobility Radeon HD 5145) ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4530/4570/545v] (Satellite L505-13T GPU (Mobility Radeon HD 5145)) + + pci:v00001002d00009555* + ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4350/4550] + + pci:v00001002d00009555sv0000103Csd00001411* +- ID_MODEL_FROM_DATABASE=ProBook 4720s GPU (Mobility Radeon HD 4350) ++ ID_MODEL_FROM_DATABASE=RV710/M92 [Mobility Radeon HD 4350/4550] (ProBook 4720s GPU (Mobility Radeon HD 4350)) + + pci:v00001002d00009557* + ID_MODEL_FROM_DATABASE=RV711 GL [FirePro RG220] +@@ -8643,10 +8643,10 @@ pci:v00001002d00009583* + ID_MODEL_FROM_DATABASE=RV630/M76 [Mobility Radeon HD 2600 XT/2700] + + pci:v00001002d00009583sv0000106Bsd00000083* +- ID_MODEL_FROM_DATABASE=iMac 7,1 ++ ID_MODEL_FROM_DATABASE=RV630/M76 [Mobility Radeon HD 2600 XT/2700] (iMac 7,1) + + pci:v00001002d00009583sv00001734sd00001107* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 2700 ++ ID_MODEL_FROM_DATABASE=RV630/M76 [Mobility Radeon HD 2600 XT/2700] (Mobility Radeon HD 2700) + + pci:v00001002d00009586* + ID_MODEL_FROM_DATABASE=RV630 XT [Radeon HD 2600 XT AGP] +@@ -8658,13 +8658,13 @@ pci:v00001002d00009588* + ID_MODEL_FROM_DATABASE=RV630 XT [Radeon HD 2600 XT] + + pci:v00001002d00009588sv00001458sd0000216C* +- ID_MODEL_FROM_DATABASE=Radeon HD 2600 XT, 256MB GDDR3, 2x DVI, TV-out, PCIe (GV-RX26T256H) ++ ID_MODEL_FROM_DATABASE=RV630 XT [Radeon HD 2600 XT] (Radeon HD 2600 XT, 256MB GDDR3, 2x DVI, TV-out, PCIe (GV-RX26T256H)) + + pci:v00001002d00009589* + ID_MODEL_FROM_DATABASE=RV630 PRO [Radeon HD 2600 PRO] + + pci:v00001002d00009589sv00001787sd00003000* +- ID_MODEL_FROM_DATABASE=Radeon HD 3610 ++ ID_MODEL_FROM_DATABASE=RV630 PRO [Radeon HD 2600 PRO] (Radeon HD 3610) + + pci:v00001002d0000958A* + ID_MODEL_FROM_DATABASE=RV630 [Radeon HD 2600 X2] +@@ -8682,7 +8682,7 @@ pci:v00001002d00009591* + ID_MODEL_FROM_DATABASE=RV635/M86 [Mobility Radeon HD 3650] + + pci:v00001002d00009591sv00001002sd00009591* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 3650 ++ ID_MODEL_FROM_DATABASE=RV635/M86 [Mobility Radeon HD 3650] (Mobility Radeon HD 3650) + + pci:v00001002d00009593* + ID_MODEL_FROM_DATABASE=RV635/M86 [Mobility Radeon HD 3670] +@@ -8694,7 +8694,7 @@ pci:v00001002d00009596* + ID_MODEL_FROM_DATABASE=RV635 PRO [Radeon HD 3650 AGP] + + pci:v00001002d00009596sv00001043sd00000028* +- ID_MODEL_FROM_DATABASE=EAH3650 SILENT/HTDI/512M/A ++ ID_MODEL_FROM_DATABASE=RV635 PRO [Radeon HD 3650 AGP] (EAH3650 SILENT/HTDI/512M/A) + + pci:v00001002d00009597* + ID_MODEL_FROM_DATABASE=RV635 PRO [Radeon HD 3650 AGP] +@@ -8703,19 +8703,19 @@ pci:v00001002d00009598* + ID_MODEL_FROM_DATABASE=RV635 [Radeon HD 3650/3750/4570/4580] + + pci:v00001002d00009598sv00001002sd00009598* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 3600 ++ ID_MODEL_FROM_DATABASE=RV635 [Radeon HD 3650/3750/4570/4580] (Mobility Radeon HD 3600) + + pci:v00001002d00009598sv00001043sd000001D6* +- ID_MODEL_FROM_DATABASE=EAH3650 Silent ++ ID_MODEL_FROM_DATABASE=RV635 [Radeon HD 3650/3750/4570/4580] (EAH3650 Silent) + + pci:v00001002d00009598sv00001043sd00003001* +- ID_MODEL_FROM_DATABASE=Radeon HD 4570 ++ ID_MODEL_FROM_DATABASE=RV635 [Radeon HD 3650/3750/4570/4580] (Radeon HD 4570) + + pci:v00001002d00009598sv0000174Bsd00003001* +- ID_MODEL_FROM_DATABASE=Radeon HD 3750 ++ ID_MODEL_FROM_DATABASE=RV635 [Radeon HD 3650/3750/4570/4580] (Radeon HD 3750) + + pci:v00001002d00009598sv0000174Bsd00004580* +- ID_MODEL_FROM_DATABASE=RV635 PRO [Radeon HD 4580] ++ ID_MODEL_FROM_DATABASE=RV635 [Radeon HD 3650/3750/4570/4580] (RV635 PRO [Radeon HD 4580]) + + pci:v00001002d00009599* + ID_MODEL_FROM_DATABASE=RV635 PRO [Radeon HD 3650 AGP] +@@ -8724,7 +8724,7 @@ pci:v00001002d000095C0* + ID_MODEL_FROM_DATABASE=RV620 PRO [Radeon HD 3470] + + pci:v00001002d000095C0sv00001002sd000095C0* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 3470 ++ ID_MODEL_FROM_DATABASE=RV620 PRO [Radeon HD 3470] (Mobility Radeon HD 3470) + + pci:v00001002d000095C2* + ID_MODEL_FROM_DATABASE=RV620/M82 [Mobility Radeon HD 3410/3430] +@@ -8733,13 +8733,13 @@ pci:v00001002d000095C4* + ID_MODEL_FROM_DATABASE=RV620/M82 [Mobility Radeon HD 3450/3470] + + pci:v00001002d000095C4sv00001002sd000095C4* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 3400 ++ ID_MODEL_FROM_DATABASE=RV620/M82 [Mobility Radeon HD 3450/3470] (Mobility Radeon HD 3400) + + pci:v00001002d000095C5* + ID_MODEL_FROM_DATABASE=RV620 LE [Radeon HD 3450] + + pci:v00001002d000095C5sv00001028sd00000342* +- ID_MODEL_FROM_DATABASE=OptiPlex 980 ++ ID_MODEL_FROM_DATABASE=RV620 LE [Radeon HD 3450] (OptiPlex 980) + + pci:v00001002d000095C6* + ID_MODEL_FROM_DATABASE=RV620 LE [Radeon HD 3450 AGP] +@@ -8760,7 +8760,7 @@ pci:v00001002d00009610* + ID_MODEL_FROM_DATABASE=RS780 [Radeon HD 3200] + + pci:v00001002d00009610sv00001458sd0000D000* +- ID_MODEL_FROM_DATABASE=GA-MA78GM-S2H Motherboard ++ ID_MODEL_FROM_DATABASE=RS780 [Radeon HD 3200] (GA-MA78GM-S2H Motherboard) + + pci:v00001002d00009611* + ID_MODEL_FROM_DATABASE=RS780C [Radeon 3100] +@@ -8823,22 +8823,22 @@ pci:v00001002d0000970F* + ID_MODEL_FROM_DATABASE=RS880 HDMI Audio [Radeon HD 4200 Series] + + pci:v00001002d0000970Fsv00001019sd00002120* +- ID_MODEL_FROM_DATABASE=A785GM-M ++ ID_MODEL_FROM_DATABASE=RS880 HDMI Audio [Radeon HD 4200 Series] (A785GM-M) + + pci:v00001002d0000970Fsv00001043sd000083A2* +- ID_MODEL_FROM_DATABASE=M4A785TD Motherboard ++ ID_MODEL_FROM_DATABASE=RS880 HDMI Audio [Radeon HD 4200 Series] (M4A785TD Motherboard) + + pci:v00001002d0000970Fsv00001043sd0000843E* +- ID_MODEL_FROM_DATABASE=M5A88-V EVO ++ ID_MODEL_FROM_DATABASE=RS880 HDMI Audio [Radeon HD 4200 Series] (M5A88-V EVO) + + pci:v00001002d00009710* + ID_MODEL_FROM_DATABASE=RS880 [Radeon HD 4200] + + pci:v00001002d00009710sv00001019sd00002120* +- ID_MODEL_FROM_DATABASE=A785GM-M ++ ID_MODEL_FROM_DATABASE=RS880 [Radeon HD 4200] (A785GM-M) + + pci:v00001002d00009710sv00001043sd000083A2* +- ID_MODEL_FROM_DATABASE=M4A785TD Motherboard ++ ID_MODEL_FROM_DATABASE=RS880 [Radeon HD 4200] (M4A785TD Motherboard) + + pci:v00001002d00009712* + ID_MODEL_FROM_DATABASE=RS880M [Mobility Radeon HD 4225/4250] +@@ -8853,13 +8853,13 @@ pci:v00001002d00009715* + ID_MODEL_FROM_DATABASE=RS880 [Radeon HD 4250] + + pci:v00001002d00009715sv00001043sd0000843E* +- ID_MODEL_FROM_DATABASE=M5A88-V EVO ++ ID_MODEL_FROM_DATABASE=RS880 [Radeon HD 4250] (M5A88-V EVO) + + pci:v00001002d00009802* + ID_MODEL_FROM_DATABASE=Wrestler [Radeon HD 6310] + + pci:v00001002d00009802sv0000174Bsd00001001* +- ID_MODEL_FROM_DATABASE=PURE Fusion Mini ++ ID_MODEL_FROM_DATABASE=Wrestler [Radeon HD 6310] (PURE Fusion Mini) + + pci:v00001002d00009803* + ID_MODEL_FROM_DATABASE=Wrestler [Radeon HD 6310] +@@ -8991,16 +8991,16 @@ pci:v00001002d00009902* + ID_MODEL_FROM_DATABASE=Trinity HDMI Audio Controller + + pci:v00001002d00009902sv0000103Csd0000194E* +- ID_MODEL_FROM_DATABASE=ProBook 455 G1 Notebook ++ ID_MODEL_FROM_DATABASE=Trinity HDMI Audio Controller (ProBook 455 G1 Notebook) + + pci:v00001002d00009903* + ID_MODEL_FROM_DATABASE=Trinity [Radeon HD 7640G] + + pci:v00001002d00009903sv0000103Csd0000194E* +- ID_MODEL_FROM_DATABASE=ProBook 455 G1 Notebook ++ ID_MODEL_FROM_DATABASE=Trinity [Radeon HD 7640G] (ProBook 455 G1 Notebook) + + pci:v00001002d00009903sv0000103Csd00001952* +- ID_MODEL_FROM_DATABASE=ProBook 455 G1 Notebook ++ ID_MODEL_FROM_DATABASE=Trinity [Radeon HD 7640G] (ProBook 455 G1 Notebook) + + pci:v00001002d00009904* + ID_MODEL_FROM_DATABASE=Trinity [Radeon HD 7560D] +@@ -9114,10 +9114,10 @@ pci:v00001002d0000AA10* + ID_MODEL_FROM_DATABASE=RV610 HDMI Audio [Radeon HD 2350/2400 Series] + + pci:v00001002d0000AA10sv0000174Bsd0000AA10* +- ID_MODEL_FROM_DATABASE=Radeon HD 2400 PRO ++ ID_MODEL_FROM_DATABASE=RV610 HDMI Audio [Radeon HD 2350/2400 Series] (Radeon HD 2400 PRO) + + pci:v00001002d0000AA10sv000018BCsd0000AA10* +- ID_MODEL_FROM_DATABASE=Radeon HD 2400 PRO ++ ID_MODEL_FROM_DATABASE=RV610 HDMI Audio [Radeon HD 2350/2400 Series] (Radeon HD 2400 PRO) + + pci:v00001002d0000AA18* + ID_MODEL_FROM_DATABASE=RV670/680 HDMI Audio [Radeon HD 3690/3800 Series] +@@ -9132,13 +9132,13 @@ pci:v00001002d0000AA30* + ID_MODEL_FROM_DATABASE=RV770 HDMI Audio [Radeon HD 4850/4870] + + pci:v00001002d0000AA30sv0000174Bsd0000AA30* +- ID_MODEL_FROM_DATABASE=Radeon HD 4850 512MB GDDR3 PCI-E Dual Slot Fansink ++ ID_MODEL_FROM_DATABASE=RV770 HDMI Audio [Radeon HD 4850/4870] (Radeon HD 4850 512MB GDDR3 PCI-E Dual Slot Fansink) + + pci:v00001002d0000AA38* + ID_MODEL_FROM_DATABASE=RV710/730 HDMI Audio [Radeon HD 4000 series] + + pci:v00001002d0000AA38sv0000103Csd00003628* +- ID_MODEL_FROM_DATABASE=dv6-1190en ++ ID_MODEL_FROM_DATABASE=RV710/730 HDMI Audio [Radeon HD 4000 series] (dv6-1190en) + + pci:v00001002d0000AA50* + ID_MODEL_FROM_DATABASE=Cypress HDMI Audio [Radeon HD 5800 Series] +@@ -9150,16 +9150,16 @@ pci:v00001002d0000AA60* + ID_MODEL_FROM_DATABASE=Redwood HDMI Audio [Radeon HD 5000 Series] + + pci:v00001002d0000AA60sv00001025sd0000033D* +- ID_MODEL_FROM_DATABASE=Mobility Radeon HD 5650 ++ ID_MODEL_FROM_DATABASE=Redwood HDMI Audio [Radeon HD 5000 Series] (Mobility Radeon HD 5650) + + pci:v00001002d0000AA60sv00001025sd00000347* +- ID_MODEL_FROM_DATABASE=Aspire 7740G ++ ID_MODEL_FROM_DATABASE=Redwood HDMI Audio [Radeon HD 5000 Series] (Aspire 7740G) + + pci:v00001002d0000AA68* + ID_MODEL_FROM_DATABASE=Cedar HDMI Audio [Radeon HD 5400/6300 Series] + + pci:v00001002d0000AA68sv00001028sd0000AA68* +- ID_MODEL_FROM_DATABASE=XPS 8300 ++ ID_MODEL_FROM_DATABASE=Cedar HDMI Audio [Radeon HD 5400/6300 Series] (XPS 8300) + + pci:v00001002d0000AA80* + ID_MODEL_FROM_DATABASE=Cayman/Antilles HDMI Audio [Radeon HD 6900 Series] +@@ -9171,13 +9171,13 @@ pci:v00001002d0000AA90* + ID_MODEL_FROM_DATABASE=Turks/Whistler HDMI Audio [Radeon HD 6000 Series] + + pci:v00001002d0000AA90sv00001028sd000004A3* +- ID_MODEL_FROM_DATABASE=Precision M4600 ++ ID_MODEL_FROM_DATABASE=Turks/Whistler HDMI Audio [Radeon HD 6000 Series] (Precision M4600) + + pci:v00001002d0000AA98* + ID_MODEL_FROM_DATABASE=Caicos HDMI Audio [Radeon HD 6400 Series] + + pci:v00001002d0000AA98sv0000174Bsd0000AA98* +- ID_MODEL_FROM_DATABASE=Radeon HD 6450 1GB DDR3 ++ ID_MODEL_FROM_DATABASE=Caicos HDMI Audio [Radeon HD 6400 Series] (Radeon HD 6450 1GB DDR3) + + pci:v00001002d0000AAA0* + ID_MODEL_FROM_DATABASE=Tahiti XT HDMI Audio [Radeon HD 7970 Series] +@@ -9264,10 +9264,10 @@ pci:v00001004d00000304sv00001004sd00000304* + ID_MODEL_FROM_DATABASE=QSound ThunderBird PCI Audio + + pci:v00001004d00000304sv0000122Dsd00001206* +- ID_MODEL_FROM_DATABASE=DSP368 Audio ++ ID_MODEL_FROM_DATABASE=QSound ThunderBird PCI Audio (DSP368 Audio) + + pci:v00001004d00000304sv00001483sd00005020* +- ID_MODEL_FROM_DATABASE=XWave Thunder 3D Audio ++ ID_MODEL_FROM_DATABASE=QSound ThunderBird PCI Audio (XWave Thunder 3D Audio) + + pci:v00001004d00000305* + ID_MODEL_FROM_DATABASE=QSound ThunderBird PCI Audio Gameport +@@ -9276,10 +9276,10 @@ pci:v00001004d00000305sv00001004sd00000305* + ID_MODEL_FROM_DATABASE=QSound ThunderBird PCI Audio Gameport + + pci:v00001004d00000305sv0000122Dsd00001207* +- ID_MODEL_FROM_DATABASE=DSP368 Audio Gameport ++ ID_MODEL_FROM_DATABASE=QSound ThunderBird PCI Audio Gameport (DSP368 Audio Gameport) + + pci:v00001004d00000305sv00001483sd00005021* +- ID_MODEL_FROM_DATABASE=XWave Thunder 3D Audio Gameport ++ ID_MODEL_FROM_DATABASE=QSound ThunderBird PCI Audio Gameport (XWave Thunder 3D Audio Gameport) + + pci:v00001004d00000306* + ID_MODEL_FROM_DATABASE=QSound ThunderBird PCI Audio Support Registers +@@ -9288,22 +9288,22 @@ pci:v00001004d00000306sv00001004sd00000306* + ID_MODEL_FROM_DATABASE=QSound ThunderBird PCI Audio Support Registers + + pci:v00001004d00000306sv0000122Dsd00001208* +- ID_MODEL_FROM_DATABASE=DSP368 Audio Support Registers ++ ID_MODEL_FROM_DATABASE=QSound ThunderBird PCI Audio Support Registers (DSP368 Audio Support Registers) + + pci:v00001004d00000306sv00001483sd00005022* +- ID_MODEL_FROM_DATABASE=XWave Thunder 3D Audio Support Registers ++ ID_MODEL_FROM_DATABASE=QSound ThunderBird PCI Audio Support Registers (XWave Thunder 3D Audio Support Registers) + + pci:v00001004d00000307* + ID_MODEL_FROM_DATABASE=SAA7785 ThunderBird PCI Audio + + pci:v00001004d00000307sv00001004sd00000703* +- ID_MODEL_FROM_DATABASE=Philips Rhythmic Edge PSC703 ++ ID_MODEL_FROM_DATABASE=SAA7785 ThunderBird PCI Audio (Philips Rhythmic Edge PSC703) + + pci:v00001004d00000307sv00001004sd00000705* +- ID_MODEL_FROM_DATABASE=Philips Seismic Edge PSC705 ++ ID_MODEL_FROM_DATABASE=SAA7785 ThunderBird PCI Audio (Philips Seismic Edge PSC705) + + pci:v00001004d00000307sv00001004sd00000706* +- ID_MODEL_FROM_DATABASE=Philips Acoustic Edge PSC706 ++ ID_MODEL_FROM_DATABASE=SAA7785 ThunderBird PCI Audio (Philips Acoustic Edge PSC706) + + pci:v00001004d00000308* + ID_MODEL_FROM_DATABASE=SAA7785 ThunderBird PCI Audio Gameport +@@ -9375,16 +9375,16 @@ pci:v0000100Bd00000020* + ID_MODEL_FROM_DATABASE=DP83815 (MacPhyter) Ethernet Controller + + pci:v0000100Bd00000020sv0000103Csd00000024* +- ID_MODEL_FROM_DATABASE=Pavilion ze4400 builtin Network ++ ID_MODEL_FROM_DATABASE=DP83815 (MacPhyter) Ethernet Controller (Pavilion ze4400 builtin Network) + + pci:v0000100Bd00000020sv000012D9sd0000000C* +- ID_MODEL_FROM_DATABASE=Aculab E1/T1 PMXc cPCI carrier card ++ ID_MODEL_FROM_DATABASE=DP83815 (MacPhyter) Ethernet Controller (Aculab E1/T1 PMXc cPCI carrier card) + + pci:v0000100Bd00000020sv00001385sd0000F311* +- ID_MODEL_FROM_DATABASE=FA311 / FA312 (FA311 with WoL HW) ++ ID_MODEL_FROM_DATABASE=DP83815 (MacPhyter) Ethernet Controller (FA311 / FA312 (FA311 with WoL HW)) + + pci:v0000100Bd00000020sv00001385sd0000F312* +- ID_MODEL_FROM_DATABASE=FA312 (rev. A1) Fast Ethernet PCI Adapter ++ ID_MODEL_FROM_DATABASE=DP83815 (MacPhyter) Ethernet Controller (FA312 (rev. A1) Fast Ethernet PCI Adapter) + + pci:v0000100Bd00000021* + ID_MODEL_FROM_DATABASE=PC87200 PCI to ISA Bridge +@@ -9393,13 +9393,13 @@ pci:v0000100Bd00000022* + ID_MODEL_FROM_DATABASE=DP83820 10/100/1000 Ethernet Controller + + pci:v0000100Bd00000022sv00001186sd00004900* +- ID_MODEL_FROM_DATABASE=DGE-500T ++ ID_MODEL_FROM_DATABASE=DP83820 10/100/1000 Ethernet Controller (DGE-500T) + + pci:v0000100Bd00000022sv00001385sd0000621A* +- ID_MODEL_FROM_DATABASE=GA621 ++ ID_MODEL_FROM_DATABASE=DP83820 10/100/1000 Ethernet Controller (GA621) + + pci:v0000100Bd00000022sv00001385sd0000622A* +- ID_MODEL_FROM_DATABASE=GA622T ++ ID_MODEL_FROM_DATABASE=DP83820 10/100/1000 Ethernet Controller (GA622T) + + pci:v0000100Bd00000028* + ID_MODEL_FROM_DATABASE=Geode GX2 Host Bridge +@@ -9435,13 +9435,13 @@ pci:v0000100Bd00000502* + ID_MODEL_FROM_DATABASE=SCx200, SC1100 IDE controller + + pci:v0000100Bd00000502sv0000100Bsd00000502* +- ID_MODEL_FROM_DATABASE=IDE Controller ++ ID_MODEL_FROM_DATABASE=SCx200, SC1100 IDE controller (IDE Controller) + + pci:v0000100Bd00000503* + ID_MODEL_FROM_DATABASE=SCx200, SC1100 Audio Controller + + pci:v0000100Bd00000503sv0000100Bsd00000503* +- ID_MODEL_FROM_DATABASE=XpressAudio controller ++ ID_MODEL_FROM_DATABASE=SCx200, SC1100 Audio Controller (XpressAudio controller) + + pci:v0000100Bd00000504* + ID_MODEL_FROM_DATABASE=SCx200 Video +@@ -9453,19 +9453,19 @@ pci:v0000100Bd00000510* + ID_MODEL_FROM_DATABASE=SC1100 Bridge + + pci:v0000100Bd00000510sv0000100Bsd00000500* +- ID_MODEL_FROM_DATABASE=GPIO and LPC support bridge ++ ID_MODEL_FROM_DATABASE=SC1100 Bridge (GPIO and LPC support bridge) + + pci:v0000100Bd00000511* + ID_MODEL_FROM_DATABASE=SC1100 SMI & ACPI + + pci:v0000100Bd00000511sv0000100Bsd00000501* +- ID_MODEL_FROM_DATABASE=SC1100 SMI & ACPI bridge ++ ID_MODEL_FROM_DATABASE=SC1100 SMI & ACPI (bridge) + + pci:v0000100Bd00000515* + ID_MODEL_FROM_DATABASE=SC1100 XBus + + pci:v0000100Bd00000515sv0000100Bsd00000505* +- ID_MODEL_FROM_DATABASE=SC1100 PCI to XBus bridge ++ ID_MODEL_FROM_DATABASE=SC1100 XBus (SC1100 PCI to XBus bridge) + + pci:v0000100Bd0000D001* + ID_MODEL_FROM_DATABASE=87410 IDE +@@ -9534,55 +9534,55 @@ pci:v00001011d00000009* + ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] + + pci:v00001011d00000009sv00001025sd00000310* +- ID_MODEL_FROM_DATABASE=21140 Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (21140 Fast Ethernet) + + pci:v00001011d00000009sv000010B8sd00002001* +- ID_MODEL_FROM_DATABASE=SMC9332BDT EtherPower 10/100 ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (SMC9332BDT EtherPower 10/100) + + pci:v00001011d00000009sv000010B8sd00002002* +- ID_MODEL_FROM_DATABASE=SMC9332BVT EtherPower T4 10/100 ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (SMC9332BVT EtherPower T4 10/100) + + pci:v00001011d00000009sv000010B8sd00002003* +- ID_MODEL_FROM_DATABASE=SMC9334BDT EtherPower 10/100 (1-port) ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (SMC9334BDT EtherPower 10/100 (1-port)) + + pci:v00001011d00000009sv00001109sd00002400* +- ID_MODEL_FROM_DATABASE=ANA-6944A/TX Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (ANA-6944A/TX Fast Ethernet) + + pci:v00001011d00000009sv00001112sd00002300* +- ID_MODEL_FROM_DATABASE=RNS2300 Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (RNS2300 Fast Ethernet) + + pci:v00001011d00000009sv00001112sd00002320* +- ID_MODEL_FROM_DATABASE=RNS2320 Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (RNS2320 Fast Ethernet) + + pci:v00001011d00000009sv00001112sd00002340* +- ID_MODEL_FROM_DATABASE=RNS2340 Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (RNS2340 Fast Ethernet) + + pci:v00001011d00000009sv00001113sd00001207* +- ID_MODEL_FROM_DATABASE=EN-1207-TX Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (EN-1207-TX Fast Ethernet) + + pci:v00001011d00000009sv00001186sd00001100* +- ID_MODEL_FROM_DATABASE=DFE-500TX Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (DFE-500TX Fast Ethernet) + + pci:v00001011d00000009sv00001186sd00001112* +- ID_MODEL_FROM_DATABASE=DFE-570TX Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (DFE-570TX Fast Ethernet) + + pci:v00001011d00000009sv00001186sd00001140* +- ID_MODEL_FROM_DATABASE=DFE-660 Cardbus Ethernet 10/100 ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (DFE-660 Cardbus Ethernet 10/100) + + pci:v00001011d00000009sv00001186sd00001142* +- ID_MODEL_FROM_DATABASE=DFE-660 Cardbus Ethernet 10/100 ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (DFE-660 Cardbus Ethernet 10/100) + + pci:v00001011d00000009sv000011F6sd00000503* +- ID_MODEL_FROM_DATABASE=Freedomline Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (Freedomline Fast Ethernet) + + pci:v00001011d00000009sv00001282sd00009100* +- ID_MODEL_FROM_DATABASE=AEF-380TXD Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (AEF-380TXD Fast Ethernet) + + pci:v00001011d00000009sv00001385sd00001100* +- ID_MODEL_FROM_DATABASE=FA310TX Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (FA310TX Fast Ethernet) + + pci:v00001011d00000009sv00002646sd00000001* +- ID_MODEL_FROM_DATABASE=KNE100TX Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21140 [FasterNet] (KNE100TX Fast Ethernet) + + pci:v00001011d0000000A* + ID_MODEL_FROM_DATABASE=21230 Video Codec +@@ -9594,16 +9594,16 @@ pci:v00001011d0000000F* + ID_MODEL_FROM_DATABASE=DEFPA FDDI PCI-to-PDQ Interface Chip [PFI] + + pci:v00001011d0000000Fsv00001011sd0000DEF1* +- ID_MODEL_FROM_DATABASE=FDDI controller (DEFPA) ++ ID_MODEL_FROM_DATABASE=DEFPA FDDI PCI-to-PDQ Interface Chip [PFI] (FDDI controller (DEFPA)) + + pci:v00001011d0000000Fsv0000103Csd0000DEF1* +- ID_MODEL_FROM_DATABASE=FDDI controller (3X-DEFPA) ++ ID_MODEL_FROM_DATABASE=DEFPA FDDI PCI-to-PDQ Interface Chip [PFI] (FDDI controller (3X-DEFPA)) + + pci:v00001011d00000014* + ID_MODEL_FROM_DATABASE=DECchip 21041 [Tulip Pass 3] + + pci:v00001011d00000014sv00001186sd00000100* +- ID_MODEL_FROM_DATABASE=DE-530+ ++ ID_MODEL_FROM_DATABASE=DECchip 21041 [Tulip Pass 3] (DE-530+) + + pci:v00001011d00000016* + ID_MODEL_FROM_DATABASE=DGLPB [OPPO] +@@ -9618,133 +9618,133 @@ pci:v00001011d00000019* + ID_MODEL_FROM_DATABASE=DECchip 21142/43 + + pci:v00001011d00000019sv00001011sd0000500A* +- ID_MODEL_FROM_DATABASE=DE500A Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (DE500A Fast Ethernet) + + pci:v00001011d00000019sv00001011sd0000500B* +- ID_MODEL_FROM_DATABASE=DE500B Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (DE500B Fast Ethernet) + + pci:v00001011d00000019sv00001014sd00000001* +- ID_MODEL_FROM_DATABASE=10/100 EtherJet Cardbus ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (10/100 EtherJet Cardbus) + + pci:v00001011d00000019sv00001025sd00000315* +- ID_MODEL_FROM_DATABASE=ALN315 Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (ALN315 Fast Ethernet) + + pci:v00001011d00000019sv00001033sd0000800C* +- ID_MODEL_FROM_DATABASE=PC-9821-CS01 100BASE-TX Interface Card ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (PC-9821-CS01 100BASE-TX Interface Card) + + pci:v00001011d00000019sv00001033sd0000800D* +- ID_MODEL_FROM_DATABASE=PC-9821NR-B06 100BASE-TX Interface Card ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (PC-9821NR-B06 100BASE-TX Interface Card) + + pci:v00001011d00000019sv0000103Csd0000125A* +- ID_MODEL_FROM_DATABASE=10/100Base-TX (PCI) [A5506B] ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (10/100Base-TX (PCI) [A5506B]) + + pci:v00001011d00000019sv0000108Dsd00000016* +- ID_MODEL_FROM_DATABASE=Rapidfire 2327 10/100 Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (Rapidfire 2327 10/100 Ethernet) + + pci:v00001011d00000019sv0000108Dsd00000017* +- ID_MODEL_FROM_DATABASE=GoCard 2250 Ethernet 10/100 Cardbus ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (GoCard 2250 Ethernet 10/100 Cardbus) + + pci:v00001011d00000019sv000010B8sd00002005* +- ID_MODEL_FROM_DATABASE=SMC8032DT Extreme Ethernet 10/100 ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (SMC8032DT Extreme Ethernet 10/100) + + pci:v00001011d00000019sv000010B8sd00008034* +- ID_MODEL_FROM_DATABASE=SMC8034 Extreme Ethernet 10/100 ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (SMC8034 Extreme Ethernet 10/100) + + pci:v00001011d00000019sv000010EFsd00008169* +- ID_MODEL_FROM_DATABASE=Cardbus Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (Cardbus Fast Ethernet) + + pci:v00001011d00000019sv00001109sd00002A00* +- ID_MODEL_FROM_DATABASE=ANA-6911A/TX Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (ANA-6911A/TX Fast Ethernet) + + pci:v00001011d00000019sv00001109sd00002B00* +- ID_MODEL_FROM_DATABASE=ANA-6911A/TXC Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (ANA-6911A/TXC Fast Ethernet) + + pci:v00001011d00000019sv00001109sd00003000* +- ID_MODEL_FROM_DATABASE=ANA-6922/TX Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (ANA-6922/TX Fast Ethernet) + + pci:v00001011d00000019sv00001113sd00001207* +- ID_MODEL_FROM_DATABASE=Cheetah Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (Cheetah Fast Ethernet) + + pci:v00001011d00000019sv00001113sd00002220* +- ID_MODEL_FROM_DATABASE=Cardbus Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (Cardbus Fast Ethernet) + + pci:v00001011d00000019sv0000115Dsd00000002* +- ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (Cardbus Ethernet 10/100) + + pci:v00001011d00000019sv00001179sd00000203* +- ID_MODEL_FROM_DATABASE=Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (Fast Ethernet) + + pci:v00001011d00000019sv00001179sd00000204* +- ID_MODEL_FROM_DATABASE=Cardbus Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (Cardbus Fast Ethernet) + + pci:v00001011d00000019sv00001186sd00001100* +- ID_MODEL_FROM_DATABASE=DFE-500TX Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (DFE-500TX Fast Ethernet) + + pci:v00001011d00000019sv00001186sd00001101* +- ID_MODEL_FROM_DATABASE=DFE-500TX Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (DFE-500TX Fast Ethernet) + + pci:v00001011d00000019sv00001186sd00001102* +- ID_MODEL_FROM_DATABASE=DFE-500TX Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (DFE-500TX Fast Ethernet) + + pci:v00001011d00000019sv00001186sd00001112* +- ID_MODEL_FROM_DATABASE=DFE-570TX Quad Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (DFE-570TX Quad Fast Ethernet) + + pci:v00001011d00000019sv000011F0sd00004235* +- ID_MODEL_FROM_DATABASE=21143 [FASTLine-II UTP 10/100] ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (21143 [FASTLine-II UTP 10/100]) + + pci:v00001011d00000019sv00001259sd00002800* +- ID_MODEL_FROM_DATABASE=AT-2800Tx Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (AT-2800Tx Fast Ethernet) + + pci:v00001011d00000019sv00001266sd00000004* +- ID_MODEL_FROM_DATABASE=Eagle Fast EtherMAX ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (Eagle Fast EtherMAX) + + pci:v00001011d00000019sv000012AFsd00000019* +- ID_MODEL_FROM_DATABASE=NetFlyer Cardbus Fast Ethernet ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (NetFlyer Cardbus Fast Ethernet) + + pci:v00001011d00000019sv00001374sd00000001* +- ID_MODEL_FROM_DATABASE=Cardbus Ethernet Card 10/100 ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (Cardbus Ethernet Card 10/100) + + pci:v00001011d00000019sv00001374sd00000002* +- ID_MODEL_FROM_DATABASE=Cardbus Ethernet Card 10/100 ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (Cardbus Ethernet Card 10/100) + + pci:v00001011d00000019sv00001374sd00000007* +- ID_MODEL_FROM_DATABASE=Cardbus Ethernet Card 10/100 ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (Cardbus Ethernet Card 10/100) + + pci:v00001011d00000019sv00001374sd00000008* +- ID_MODEL_FROM_DATABASE=Cardbus Ethernet Card 10/100 ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (Cardbus Ethernet Card 10/100) + + pci:v00001011d00000019sv00001385sd00002100* +- ID_MODEL_FROM_DATABASE=FA510 ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (FA510) + + pci:v00001011d00000019sv00001395sd00000001* +- ID_MODEL_FROM_DATABASE=10/100 Ethernet CardBus PC Card ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (10/100 Ethernet CardBus PC Card) + + pci:v00001011d00000019sv000013D1sd0000AB01* +- ID_MODEL_FROM_DATABASE=EtherFast 10/100 Cardbus (PCMPC200) ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (EtherFast 10/100 Cardbus (PCMPC200)) + + pci:v00001011d00000019sv00001498sd0000000A* +- ID_MODEL_FROM_DATABASE=TPMC880-10 10/100Base-T and 10Base2 PMC Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (TPMC880-10 10/100Base-T and 10Base2 PMC Ethernet Adapter) + + pci:v00001011d00000019sv00001498sd0000000B* +- ID_MODEL_FROM_DATABASE=TPMC880-11 Single 10/100Base-T PMC Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (TPMC880-11 Single 10/100Base-T PMC Ethernet Adapter) + + pci:v00001011d00000019sv00001498sd0000000C* +- ID_MODEL_FROM_DATABASE=TPMC880-12 Single 10Base2 PMC Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (TPMC880-12 Single 10Base2 PMC Ethernet Adapter) + + pci:v00001011d00000019sv000014CBsd00000100* +- ID_MODEL_FROM_DATABASE=LNDL-100N 100Base-TX Ethernet PC Card ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (LNDL-100N 100Base-TX Ethernet PC Card) + + pci:v00001011d00000019sv00001668sd00002000* +- ID_MODEL_FROM_DATABASE=FastNet Pro (PE2000) ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (FastNet Pro (PE2000)) + + pci:v00001011d00000019sv00002646sd00000001* +- ID_MODEL_FROM_DATABASE=KNE100TX ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (KNE100TX) + + pci:v00001011d00000019sv00002646sd00000002* +- ID_MODEL_FROM_DATABASE=KNE-CB4TX ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (KNE-CB4TX) + + pci:v00001011d00000019sv00008086sd00000001* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Mobile CardBus 32 ++ ID_MODEL_FROM_DATABASE=DECchip 21142/43 (EtherExpress PRO/100 Mobile CardBus 32) + + pci:v00001011d0000001A* + ID_MODEL_FROM_DATABASE=Farallon PN9000SX Gigabit Ethernet +@@ -9780,46 +9780,46 @@ pci:v00001011d00000046* + ID_MODEL_FROM_DATABASE=DECchip 21554 + + pci:v00001011d00000046sv00000E11sd00004050* +- ID_MODEL_FROM_DATABASE=Smart Array 4200 Controller ++ ID_MODEL_FROM_DATABASE=DECchip 21554 (Smart Array 4200 Controller) + + pci:v00001011d00000046sv00000E11sd00004051* +- ID_MODEL_FROM_DATABASE=Smart Array 4250ES Controller ++ ID_MODEL_FROM_DATABASE=DECchip 21554 (Smart Array 4250ES Controller) + + pci:v00001011d00000046sv00000E11sd00004058* +- ID_MODEL_FROM_DATABASE=Smart Array 431 Controller ++ ID_MODEL_FROM_DATABASE=DECchip 21554 (Smart Array 431 Controller) + + pci:v00001011d00000046sv0000103Csd000010C2* +- ID_MODEL_FROM_DATABASE=NetRAID-4M ++ ID_MODEL_FROM_DATABASE=DECchip 21554 (NetRAID-4M) + + pci:v00001011d00000046sv000012D9sd0000000A* +- ID_MODEL_FROM_DATABASE=IP Telephony card ++ ID_MODEL_FROM_DATABASE=DECchip 21554 (IP Telephony card) + + pci:v00001011d00000046sv00004C53sd00001050* +- ID_MODEL_FROM_DATABASE=CT7 mainboard ++ ID_MODEL_FROM_DATABASE=DECchip 21554 (CT7 mainboard) + + pci:v00001011d00000046sv00004C53sd00001051* +- ID_MODEL_FROM_DATABASE=CE7 mainboard ++ ID_MODEL_FROM_DATABASE=DECchip 21554 (CE7 mainboard) + + pci:v00001011d00000046sv00009005sd00000364* +- ID_MODEL_FROM_DATABASE=5400S (Mustang) ++ ID_MODEL_FROM_DATABASE=DECchip 21554 (5400S (Mustang)) + + pci:v00001011d00000046sv00009005sd00000365* +- ID_MODEL_FROM_DATABASE=5400S (Mustang) ++ ID_MODEL_FROM_DATABASE=DECchip 21554 (5400S (Mustang)) + + pci:v00001011d00000046sv00009005sd00001364* +- ID_MODEL_FROM_DATABASE=Dell PowerEdge RAID Controller 2 ++ ID_MODEL_FROM_DATABASE=DECchip 21554 (Dell PowerEdge RAID Controller 2) + + pci:v00001011d00000046sv00009005sd00001365* +- ID_MODEL_FROM_DATABASE=Dell PowerEdge RAID Controller 2 ++ ID_MODEL_FROM_DATABASE=DECchip 21554 (Dell PowerEdge RAID Controller 2) + + pci:v00001011d00000046sv0000E4BFsd00001000* +- ID_MODEL_FROM_DATABASE=CC8-1-BLUES ++ ID_MODEL_FROM_DATABASE=DECchip 21554 (CC8-1-BLUES) + + pci:v00001011d00001065* + ID_MODEL_FROM_DATABASE=StrongARM DC21285 + + pci:v00001011d00001065sv00001069sd00000020* +- ID_MODEL_FROM_DATABASE=DAC960P / DAC1164P ++ ID_MODEL_FROM_DATABASE=StrongARM DC21285 (DAC960P / DAC1164P) + + pci:v00001012* + ID_VENDOR_FROM_DATABASE=Micronics Computers Inc +@@ -9858,13 +9858,13 @@ pci:v00001013d000000B8* + ID_MODEL_FROM_DATABASE=GD 5446 + + pci:v00001013d000000B8sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=GD 5446 (QEMU Virtual Machine) + + pci:v00001013d000000BC* + ID_MODEL_FROM_DATABASE=GD 5480 + + pci:v00001013d000000BCsv00001013sd000000BC* +- ID_MODEL_FROM_DATABASE=CL-GD5480 ++ ID_MODEL_FROM_DATABASE=GD 5480 (CL-GD5480) + + pci:v00001013d000000D0* + ID_MODEL_FROM_DATABASE=GD 5462 +@@ -9882,10 +9882,10 @@ pci:v00001013d000000D6* + ID_MODEL_FROM_DATABASE=GD 5465 [Laguna] + + pci:v00001013d000000D6sv000013CEsd00008031* +- ID_MODEL_FROM_DATABASE=Barco Metheus 2 Megapixel, Dual Head ++ ID_MODEL_FROM_DATABASE=GD 5465 [Laguna] (Barco Metheus 2 Megapixel, Dual Head) + + pci:v00001013d000000D6sv000013CFsd00008031* +- ID_MODEL_FROM_DATABASE=Barco Metheus 2 Megapixel, Dual Head ++ ID_MODEL_FROM_DATABASE=GD 5465 [Laguna] (Barco Metheus 2 Megapixel, Dual Head) + + pci:v00001013d000000E8* + ID_MODEL_FROM_DATABASE=GD 5436U +@@ -9921,34 +9921,34 @@ pci:v00001013d00006001* + ID_MODEL_FROM_DATABASE=CS 4610/11 [CrystalClear SoundFusion Audio Accelerator] + + pci:v00001013d00006001sv00001014sd00001010* +- ID_MODEL_FROM_DATABASE=CS4610 SoundFusion Audio Accelerator ++ ID_MODEL_FROM_DATABASE=CS 4610/11 [CrystalClear SoundFusion Audio Accelerator] (CS4610 SoundFusion Audio Accelerator) + + pci:v00001013d00006003* + ID_MODEL_FROM_DATABASE=CS 4614/22/24/30 [CrystalClear SoundFusion Audio Accelerator] + + pci:v00001013d00006003sv00001013sd00004280* +- ID_MODEL_FROM_DATABASE=Crystal SoundFusion PCI Audio Accelerator ++ ID_MODEL_FROM_DATABASE=CS 4614/22/24/30 [CrystalClear SoundFusion Audio Accelerator] (Crystal SoundFusion PCI Audio Accelerator) + + pci:v00001013d00006003sv00001014sd00000153* +- ID_MODEL_FROM_DATABASE=ThinkPad 600X/A20m ++ ID_MODEL_FROM_DATABASE=CS 4614/22/24/30 [CrystalClear SoundFusion Audio Accelerator] (ThinkPad 600X/A20m) + + pci:v00001013d00006003sv0000153Bsd0000112E* +- ID_MODEL_FROM_DATABASE=DMX XFire 1024 ++ ID_MODEL_FROM_DATABASE=CS 4614/22/24/30 [CrystalClear SoundFusion Audio Accelerator] (DMX XFire 1024) + + pci:v00001013d00006003sv0000153Bsd00001136* +- ID_MODEL_FROM_DATABASE=SiXPack 5.1+ ++ ID_MODEL_FROM_DATABASE=CS 4614/22/24/30 [CrystalClear SoundFusion Audio Accelerator] (SiXPack 5.1+) + + pci:v00001013d00006003sv00001681sd00000050* +- ID_MODEL_FROM_DATABASE=Game Theater XP ++ ID_MODEL_FROM_DATABASE=CS 4614/22/24/30 [CrystalClear SoundFusion Audio Accelerator] (Game Theater XP) + + pci:v00001013d00006003sv00001681sd0000A010* +- ID_MODEL_FROM_DATABASE=Gamesurround Fortissimo II ++ ID_MODEL_FROM_DATABASE=CS 4614/22/24/30 [CrystalClear SoundFusion Audio Accelerator] (Gamesurround Fortissimo II) + + pci:v00001013d00006003sv00001681sd0000A011* +- ID_MODEL_FROM_DATABASE=Gamesurround Fortissimo III 7.1 ++ ID_MODEL_FROM_DATABASE=CS 4614/22/24/30 [CrystalClear SoundFusion Audio Accelerator] (Gamesurround Fortissimo III 7.1) + + pci:v00001013d00006003sv00005053sd00003357* +- ID_MODEL_FROM_DATABASE=Santa Cruz ++ ID_MODEL_FROM_DATABASE=CS 4614/22/24/30 [CrystalClear SoundFusion Audio Accelerator] (Santa Cruz) + + pci:v00001013d00006004* + ID_MODEL_FROM_DATABASE=CS 4614/22/24 [CrystalClear SoundFusion Audio Accelerator] +@@ -10029,16 +10029,16 @@ pci:v00001014d0000002E* + ID_MODEL_FROM_DATABASE=SCSI RAID Adapter [ServeRAID] + + pci:v00001014d0000002Esv00001014sd0000002E* +- ID_MODEL_FROM_DATABASE=ServeRAID-3x ++ ID_MODEL_FROM_DATABASE=SCSI RAID Adapter [ServeRAID] (ServeRAID-3x) + + pci:v00001014d0000002Esv00001014sd0000022E* +- ID_MODEL_FROM_DATABASE=ServeRAID-4H ++ ID_MODEL_FROM_DATABASE=SCSI RAID Adapter [ServeRAID] (ServeRAID-4H) + + pci:v00001014d00000031* + ID_MODEL_FROM_DATABASE=2 Port Serial Adapter + + pci:v00001014d00000031sv00001014sd00000031* +- ID_MODEL_FROM_DATABASE=2721 WAN IOA - 2 Port Sync Serial Adapter ++ ID_MODEL_FROM_DATABASE=2 Port Serial Adapter (2721 WAN IOA - 2 Port Sync Serial Adapter) + + pci:v00001014d00000036* + ID_MODEL_FROM_DATABASE=PCI to 32-bit LocalBus Bridge [Miami] +@@ -10056,25 +10056,25 @@ pci:v00001014d0000003E* + ID_MODEL_FROM_DATABASE=16/4 Token ring UTP/STP controller + + pci:v00001014d0000003Esv00001014sd0000003E* +- ID_MODEL_FROM_DATABASE=Token-Ring Adapter ++ ID_MODEL_FROM_DATABASE=16/4 Token ring UTP/STP controller (Token-Ring Adapter) + + pci:v00001014d0000003Esv00001014sd000000CD* +- ID_MODEL_FROM_DATABASE=Token-Ring Adapter + Wake-On-LAN ++ ID_MODEL_FROM_DATABASE=16/4 Token ring UTP/STP controller (Token-Ring Adapter + Wake-On-LAN) + + pci:v00001014d0000003Esv00001014sd000000CE* +- ID_MODEL_FROM_DATABASE=16/4 Token-Ring Adapter 2 ++ ID_MODEL_FROM_DATABASE=16/4 Token ring UTP/STP controller (16/4 Token-Ring Adapter 2) + + pci:v00001014d0000003Esv00001014sd000000CF* +- ID_MODEL_FROM_DATABASE=16/4 Token-Ring Adapter Special ++ ID_MODEL_FROM_DATABASE=16/4 Token ring UTP/STP controller (16/4 Token-Ring Adapter Special) + + pci:v00001014d0000003Esv00001014sd000000E4* +- ID_MODEL_FROM_DATABASE=High-Speed 100/16/4 Token-Ring Adapter ++ ID_MODEL_FROM_DATABASE=16/4 Token ring UTP/STP controller (High-Speed 100/16/4 Token-Ring Adapter) + + pci:v00001014d0000003Esv00001014sd000000E5* +- ID_MODEL_FROM_DATABASE=16/4 Token-Ring Adapter 2 + Wake-On-LAN ++ ID_MODEL_FROM_DATABASE=16/4 Token ring UTP/STP controller (16/4 Token-Ring Adapter 2 + Wake-On-LAN) + + pci:v00001014d0000003Esv00001014sd0000016D* +- ID_MODEL_FROM_DATABASE=iSeries 2744 Card ++ ID_MODEL_FROM_DATABASE=16/4 Token ring UTP/STP controller (iSeries 2744 Card) + + pci:v00001014d00000045* + ID_MODEL_FROM_DATABASE=SSA Adapter +@@ -10131,7 +10131,7 @@ pci:v00001014d00000090* + ID_MODEL_FROM_DATABASE=GXT 3000P + + pci:v00001014d00000090sv00001014sd0000008E* +- ID_MODEL_FROM_DATABASE=GXT-3000P ++ ID_MODEL_FROM_DATABASE=GXT 3000P (GXT-3000P) + + pci:v00001014d00000091* + ID_MODEL_FROM_DATABASE=SSA Adapter +@@ -10143,13 +10143,13 @@ pci:v00001014d00000096* + ID_MODEL_FROM_DATABASE=Chukar chipset SCSI controller + + pci:v00001014d00000096sv00001014sd00000097* +- ID_MODEL_FROM_DATABASE=iSeries 2778 DASD IOA ++ ID_MODEL_FROM_DATABASE=Chukar chipset SCSI controller (iSeries 2778 DASD IOA) + + pci:v00001014d00000096sv00001014sd00000098* +- ID_MODEL_FROM_DATABASE=iSeries 2763 DASD IOA ++ ID_MODEL_FROM_DATABASE=Chukar chipset SCSI controller (iSeries 2763 DASD IOA) + + pci:v00001014d00000096sv00001014sd00000099* +- ID_MODEL_FROM_DATABASE=iSeries 2748 DASD IOA ++ ID_MODEL_FROM_DATABASE=Chukar chipset SCSI controller (iSeries 2748 DASD IOA) + + pci:v00001014d0000009F* + ID_MODEL_FROM_DATABASE=PCI 4758 Cryptographic Accelerator +@@ -10164,7 +10164,7 @@ pci:v00001014d000000B7* + ID_MODEL_FROM_DATABASE=256-bit Graphics Rasterizer [FireGL1] + + pci:v00001014d000000B7sv00001092sd000000B8* +- ID_MODEL_FROM_DATABASE=FireGL1 AGP 32Mb ++ ID_MODEL_FROM_DATABASE=256-bit Graphics Rasterizer [FireGL1] (FireGL1 AGP 32Mb) + + pci:v00001014d000000B8* + ID_MODEL_FROM_DATABASE=GXT2000P Graphics Adapter +@@ -10188,13 +10188,13 @@ pci:v00001014d00000142* + ID_MODEL_FROM_DATABASE=Yotta Video Compositor Input + + pci:v00001014d00000142sv00001014sd00000143* +- ID_MODEL_FROM_DATABASE=Yotta Input Controller (ytin) ++ ID_MODEL_FROM_DATABASE=Yotta Video Compositor Input (Yotta Input Controller (ytin)) + + pci:v00001014d00000144* + ID_MODEL_FROM_DATABASE=Yotta Video Compositor Output + + pci:v00001014d00000144sv00001014sd00000145* +- ID_MODEL_FROM_DATABASE=Yotta Output Controller (ytout) ++ ID_MODEL_FROM_DATABASE=Yotta Video Compositor Output (Yotta Output Controller (ytout)) + + pci:v00001014d00000156* + ID_MODEL_FROM_DATABASE=405GP PLB to PCI Bridge +@@ -10218,10 +10218,10 @@ pci:v00001014d00000180* + ID_MODEL_FROM_DATABASE=Snipe chipset SCSI controller + + pci:v00001014d00000180sv00001014sd00000241* +- ID_MODEL_FROM_DATABASE=iSeries 2757 DASD IOA ++ ID_MODEL_FROM_DATABASE=Snipe chipset SCSI controller (iSeries 2757 DASD IOA) + + pci:v00001014d00000180sv00001014sd00000264* +- ID_MODEL_FROM_DATABASE=Quad Channel PCI-X U320 SCSI RAID Adapter (2780) ++ ID_MODEL_FROM_DATABASE=Snipe chipset SCSI controller (Quad Channel PCI-X U320 SCSI RAID Adapter (2780)) + + pci:v00001014d00000188* + ID_MODEL_FROM_DATABASE=EADS-X PCI-X to PCI-X Bridge +@@ -10233,28 +10233,28 @@ pci:v00001014d000001BD* + ID_MODEL_FROM_DATABASE=ServeRAID Controller + + pci:v00001014d000001BDsv00001014sd000001BD* +- ID_MODEL_FROM_DATABASE=ServeRAID 4Lx ++ ID_MODEL_FROM_DATABASE=ServeRAID Controller (ServeRAID 4Lx) + + pci:v00001014d000001BDsv00001014sd000001BE* +- ID_MODEL_FROM_DATABASE=ServeRAID-4M ++ ID_MODEL_FROM_DATABASE=ServeRAID Controller (ServeRAID-4M) + + pci:v00001014d000001BDsv00001014sd000001BF* +- ID_MODEL_FROM_DATABASE=ServeRAID-4L ++ ID_MODEL_FROM_DATABASE=ServeRAID Controller (ServeRAID-4L) + + pci:v00001014d000001BDsv00001014sd00000208* +- ID_MODEL_FROM_DATABASE=ServeRAID-4Mx ++ ID_MODEL_FROM_DATABASE=ServeRAID Controller (ServeRAID-4Mx) + + pci:v00001014d000001BDsv00001014sd0000020E* +- ID_MODEL_FROM_DATABASE=ServeRAID-4Lx ++ ID_MODEL_FROM_DATABASE=ServeRAID Controller (ServeRAID-4Lx) + + pci:v00001014d000001BDsv00001014sd0000022E* +- ID_MODEL_FROM_DATABASE=ServeRAID-4H ++ ID_MODEL_FROM_DATABASE=ServeRAID Controller (ServeRAID-4H) + + pci:v00001014d000001BDsv00001014sd00000258* +- ID_MODEL_FROM_DATABASE=ServeRAID-5i ++ ID_MODEL_FROM_DATABASE=ServeRAID Controller (ServeRAID-5i) + + pci:v00001014d000001BDsv00001014sd00000259* +- ID_MODEL_FROM_DATABASE=ServeRAID-5i ++ ID_MODEL_FROM_DATABASE=ServeRAID Controller (ServeRAID-5i) + + pci:v00001014d000001C1* + ID_MODEL_FROM_DATABASE=64bit/66MHz PCI ATM 155 UTP +@@ -10266,10 +10266,10 @@ pci:v00001014d000001EF* + ID_MODEL_FROM_DATABASE=PowerPC 440GP PCI Bridge + + pci:v00001014d000001EFsv00001734sd0000102B* +- ID_MODEL_FROM_DATABASE=PCEAS PCI-X Dual Port ESCON Adapter ++ ID_MODEL_FROM_DATABASE=PowerPC 440GP PCI Bridge (PCEAS PCI-X Dual Port ESCON Adapter) + + pci:v00001014d000001EFsv00001734sd000010F8* +- ID_MODEL_FROM_DATABASE=PCEAT PCI-Express Dual Port ESCON Adapter ++ ID_MODEL_FROM_DATABASE=PowerPC 440GP PCI Bridge (PCEAT PCI-Express Dual Port ESCON Adapter) + + pci:v00001014d000001FF* + ID_MODEL_FROM_DATABASE=10/100 Mbps Ethernet +@@ -10278,13 +10278,13 @@ pci:v00001014d00000219* + ID_MODEL_FROM_DATABASE=Multiport Serial Adapter + + pci:v00001014d00000219sv00001014sd0000021A* +- ID_MODEL_FROM_DATABASE=Dual RVX ++ ID_MODEL_FROM_DATABASE=Multiport Serial Adapter (Dual RVX) + + pci:v00001014d00000219sv00001014sd00000251* +- ID_MODEL_FROM_DATABASE=Internal Modem/RVX ++ ID_MODEL_FROM_DATABASE=Multiport Serial Adapter (Internal Modem/RVX) + + pci:v00001014d00000219sv00001014sd00000252* +- ID_MODEL_FROM_DATABASE=Quad Internal Modem ++ ID_MODEL_FROM_DATABASE=Multiport Serial Adapter (Quad Internal Modem) + + pci:v00001014d0000021B* + ID_MODEL_FROM_DATABASE=GXT6500P Graphics Adapter +@@ -10299,16 +10299,16 @@ pci:v00001014d0000028C* + ID_MODEL_FROM_DATABASE=Citrine chipset SCSI controller + + pci:v00001014d0000028Csv00001014sd0000028D* +- ID_MODEL_FROM_DATABASE=Dual Channel PCI-X DDR SAS RAID Adapter (572E) ++ ID_MODEL_FROM_DATABASE=Citrine chipset SCSI controller (Dual Channel PCI-X DDR SAS RAID Adapter (572E)) + + pci:v00001014d0000028Csv00001014sd000002BE* +- ID_MODEL_FROM_DATABASE=Dual Channel PCI-X DDR U320 SCSI RAID Adapter (571B) ++ ID_MODEL_FROM_DATABASE=Citrine chipset SCSI controller (Dual Channel PCI-X DDR U320 SCSI RAID Adapter (571B)) + + pci:v00001014d0000028Csv00001014sd000002C0* +- ID_MODEL_FROM_DATABASE=Dual Channel PCI-X DDR U320 SCSI Adapter (571A) ++ ID_MODEL_FROM_DATABASE=Citrine chipset SCSI controller (Dual Channel PCI-X DDR U320 SCSI Adapter (571A)) + + pci:v00001014d0000028Csv00001014sd0000030D* +- ID_MODEL_FROM_DATABASE=PCI-X DDR Auxiliary Cache Adapter (575B) ++ ID_MODEL_FROM_DATABASE=Citrine chipset SCSI controller (PCI-X DDR Auxiliary Cache Adapter (575B)) + + pci:v00001014d000002A1* + ID_MODEL_FROM_DATABASE=Calgary PCI-X Host Bridge +@@ -10317,13 +10317,13 @@ pci:v00001014d000002BD* + ID_MODEL_FROM_DATABASE=Obsidian chipset SCSI controller + + pci:v00001014d000002BDsv00001014sd000002C1* +- ID_MODEL_FROM_DATABASE=PCI-X DDR 3Gb SAS Adapter (572A/572C) ++ ID_MODEL_FROM_DATABASE=Obsidian chipset SCSI controller (PCI-X DDR 3Gb SAS Adapter (572A/572C)) + + pci:v00001014d000002BDsv00001014sd000002C2* +- ID_MODEL_FROM_DATABASE=PCI-X DDR 3Gb SAS RAID Adapter (572B/571D) ++ ID_MODEL_FROM_DATABASE=Obsidian chipset SCSI controller (PCI-X DDR 3Gb SAS RAID Adapter (572B/571D)) + + pci:v00001014d000002BDsv00001014sd00000338* +- ID_MODEL_FROM_DATABASE=PCI-X DDR Auxiliary Cache Adapter (575C) ++ ID_MODEL_FROM_DATABASE=Obsidian chipset SCSI controller (PCI-X DDR Auxiliary Cache Adapter (575C)) + + pci:v00001014d00000302* + ID_MODEL_FROM_DATABASE=Winnipeg PCI-X Host Bridge +@@ -10338,88 +10338,88 @@ pci:v00001014d0000032D* + ID_MODEL_FROM_DATABASE=Axon - Cell Companion Chip + + pci:v00001014d0000032Dsv00001014sd000003A1* +- ID_MODEL_FROM_DATABASE=PCIe PowerXCell 8i Cell Accelerator Board ++ ID_MODEL_FROM_DATABASE=Axon - Cell Companion Chip (PCIe PowerXCell 8i Cell Accelerator Board) + + pci:v00001014d00000339* + ID_MODEL_FROM_DATABASE=Obsidian-E PCI-E SCSI controller + + pci:v00001014d00000339sv00001014sd0000030A* +- ID_MODEL_FROM_DATABASE=PCIe 3Gb SAS RAID Adapter (574E) ++ ID_MODEL_FROM_DATABASE=Obsidian-E PCI-E SCSI controller (PCIe 3Gb SAS RAID Adapter (574E)) + + pci:v00001014d00000339sv00001014sd0000033A* +- ID_MODEL_FROM_DATABASE=PCIe 3Gb SAS Adapter (57B3) ++ ID_MODEL_FROM_DATABASE=Obsidian-E PCI-E SCSI controller (PCIe 3Gb SAS Adapter (57B3)) + + pci:v00001014d00000339sv00001014sd0000035C* +- ID_MODEL_FROM_DATABASE=PCIe x8 Internal 3Gb SAS adapter (57CC) ++ ID_MODEL_FROM_DATABASE=Obsidian-E PCI-E SCSI controller (PCIe x8 Internal 3Gb SAS adapter (57CC)) + + pci:v00001014d00000339sv00001014sd00000360* +- ID_MODEL_FROM_DATABASE=PCI-E Auxiliary Cache Adapter (57B7) ++ ID_MODEL_FROM_DATABASE=Obsidian-E PCI-E SCSI controller (PCI-E Auxiliary Cache Adapter (57B7)) + + pci:v00001014d0000033D* + ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (FPGA) + + pci:v00001014d0000033Dsv00001014sd0000033C* +- ID_MODEL_FROM_DATABASE=PCIe2 1.8GB Cache 6Gb SAS RAID Adapter Tri-port (57B5) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (FPGA) (PCIe2 1.8GB Cache 6Gb SAS RAID Adapter Tri-port (57B5)) + + pci:v00001014d0000033Dsv00001014sd00000353* +- ID_MODEL_FROM_DATABASE=PCIe2 3.1GB Cache 6Gb SAS RAID Enclosure (57C3) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (FPGA) (PCIe2 3.1GB Cache 6Gb SAS RAID Enclosure (57C3)) + + pci:v00001014d0000033Dsv00001014sd00000354* +- ID_MODEL_FROM_DATABASE=PCIe2 6Gb SAS Adapter Dual-port (57C4) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (FPGA) (PCIe2 6Gb SAS Adapter Dual-port (57C4)) + + pci:v00001014d0000033Dsv00001014sd00000356* +- ID_MODEL_FROM_DATABASE=PCIe2 1.8GB Cache 6Gb SAS RAID & SSD Adapter (574D) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (FPGA) (PCIe2 1.8GB Cache 6Gb SAS RAID & SSD Adapter (574D)) + + pci:v00001014d0000033Dsv00001014sd0000035F* +- ID_MODEL_FROM_DATABASE=PCIe2 6Gb SAS Adapter Quad-port (57B2) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (FPGA) (PCIe2 6Gb SAS Adapter Quad-port (57B2)) + + pci:v00001014d0000034A* + ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) + + pci:v00001014d0000034Asv00001014sd0000033B* +- ID_MODEL_FROM_DATABASE=PCIe2 6Gb SAS RAID Adapter Quad-port (57B4) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe2 6Gb SAS RAID Adapter Quad-port (57B4)) + + pci:v00001014d0000034Asv00001014sd00000355* +- ID_MODEL_FROM_DATABASE=PCIe2 3.6GB Cache 6Gb SAS RAID Adapter Quad-port (57B1) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe2 3.6GB Cache 6Gb SAS RAID Adapter Quad-port (57B1)) + + pci:v00001014d0000034Asv00001014sd00000357* +- ID_MODEL_FROM_DATABASE=PCIe2 6Gb SAS Adapter Quad-port (57C6) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe2 6Gb SAS Adapter Quad-port (57C6)) + + pci:v00001014d0000034Asv00001014sd0000035D* +- ID_MODEL_FROM_DATABASE=PCIe3 1.8GB Cache RAID SAS Adapter Quad-port 6GB (57C8) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe3 1.8GB Cache RAID SAS Adapter Quad-port 6GB (57C8)) + + pci:v00001014d0000034Asv00001014sd0000035E* +- ID_MODEL_FROM_DATABASE=PCIe2 3.6GB Cache 6Gb SAS RAID Adapter Quad-port (57CE) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe2 3.6GB Cache 6Gb SAS RAID Adapter Quad-port (57CE)) + + pci:v00001014d0000034Asv00001014sd000003FB* +- ID_MODEL_FROM_DATABASE=PCIe3 28GB Cache RAID SAS Enclosure 6Gb x 16 (57D5) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe3 28GB Cache RAID SAS Enclosure 6Gb x 16 (57D5)) + + pci:v00001014d0000034Asv00001014sd000003FE* +- ID_MODEL_FROM_DATABASE=PCIe3 x8 Cache SAS RAID Internal Adapter 6Gb (57D8) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe3 x8 Cache SAS RAID Internal Adapter 6Gb (57D8)) + + pci:v00001014d0000034Asv00001014sd000003FF* +- ID_MODEL_FROM_DATABASE=PCIe3 x8 SAS RAID Internal Adapter 6Gb (57D7) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe3 x8 SAS RAID Internal Adapter 6Gb (57D7)) + + pci:v00001014d0000034Asv00001014sd00000474* +- ID_MODEL_FROM_DATABASE=PCIe3 x16 Cache SAS RAID Internal Adapter 6Gb (57EB) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe3 x16 Cache SAS RAID Internal Adapter 6Gb (57EB)) + + pci:v00001014d0000034Asv00001014sd00000475* +- ID_MODEL_FROM_DATABASE=PCIe3 x16 SAS RAID Internal Adapter 6Gb (57EC) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe3 x16 SAS RAID Internal Adapter 6Gb (57EC)) + + pci:v00001014d0000034Asv00001014sd00000499* +- ID_MODEL_FROM_DATABASE=PCIe3 x16 Cache SAS RAID Internal Adapter 6Gb (57ED) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe3 x16 Cache SAS RAID Internal Adapter 6Gb (57ED)) + + pci:v00001014d0000034Asv00001014sd0000049A* +- ID_MODEL_FROM_DATABASE=PCIe3 x16 SAS RAID Internal Adapter 6Gb (57EE) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe3 x16 SAS RAID Internal Adapter 6Gb (57EE)) + + pci:v00001014d0000034Asv00001014sd000004C7* +- ID_MODEL_FROM_DATABASE=PCIe3 x 8 Cache SAS RAID Internal Adapter 6GB(2CCA) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe3 x 8 Cache SAS RAID Internal Adapter 6GB(2CCA)) + + pci:v00001014d0000034Asv00001014sd000004C8* +- ID_MODEL_FROM_DATABASE=PCIe3 x 8 Cache SAS RAID Internal Adapter 6GB(2CD2) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe3 x 8 Cache SAS RAID Internal Adapter 6GB(2CD2)) + + pci:v00001014d0000034Asv00001014sd00000C49* +- ID_MODEL_FROM_DATABASE=PCIe3 x 8 Cache SAS RAID Internal Adapter 6GB(2CCD) ++ ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe3 x 8 Cache SAS RAID Internal Adapter 6GB(2CCD)) + + pci:v00001014d000004AA* + ID_MODEL_FROM_DATABASE=Flash Adapter 90 (PCIe2 0.9TB) +@@ -10461,13 +10461,13 @@ pci:v0000101Ad00000007* + ID_MODEL_FROM_DATABASE=BYNET BIC4G/2C/2G + + pci:v0000101Ad00000007sv0000101Asd00000019* +- ID_MODEL_FROM_DATABASE=BYNET BIC2C ++ ID_MODEL_FROM_DATABASE=BYNET BIC4G/2C/2G (BYNET BIC2C) + + pci:v0000101Ad00000007sv0000101Asd0000001C* +- ID_MODEL_FROM_DATABASE=BYNET BIC2G ++ ID_MODEL_FROM_DATABASE=BYNET BIC4G/2C/2G (BYNET BIC2G) + + pci:v0000101Ad00000007sv0000101Asd0000001F* +- ID_MODEL_FROM_DATABASE=BYNET BIC4G ++ ID_MODEL_FROM_DATABASE=BYNET BIC4G/2C/2G (BYNET BIC4G) + + pci:v0000101Ad00000009* + ID_MODEL_FROM_DATABASE=PQS Memory Controller +@@ -10488,19 +10488,19 @@ pci:v0000101Ad00001DC1* + ID_MODEL_FROM_DATABASE=BYNET BIC2M/BIC4M/BYA4M + + pci:v0000101Ad00001DC1sv0000101Asd00000019* +- ID_MODEL_FROM_DATABASE=BIC2M ++ ID_MODEL_FROM_DATABASE=BYNET BIC2M/BIC4M/BYA4M (BIC2M) + + pci:v0000101Ad00001DC1sv0000101Asd0000001F* +- ID_MODEL_FROM_DATABASE=BIC4M ++ ID_MODEL_FROM_DATABASE=BYNET BIC2M/BIC4M/BYA4M (BIC4M) + + pci:v0000101Ad00001DC1sv0000101Asd00000ECE* +- ID_MODEL_FROM_DATABASE=BYA4M ++ ID_MODEL_FROM_DATABASE=BYNET BIC2M/BIC4M/BYA4M (BYA4M) + + pci:v0000101Ad00001FA8* + ID_MODEL_FROM_DATABASE=BYNET Multi-port BIC Adapter (XBIC Based) + + pci:v0000101Ad00001FA8sv0000101Asd000000C3* +- ID_MODEL_FROM_DATABASE=BYNET BIC2SE ++ ID_MODEL_FROM_DATABASE=BYNET Multi-port BIC Adapter (XBIC Based) (BYNET BIC2SE) + + pci:v0000101B* + ID_VENDOR_FROM_DATABASE=Vitesse Semiconductor +@@ -10557,46 +10557,46 @@ pci:v0000101Ed00001960* + ID_MODEL_FROM_DATABASE=MegaRAID + + pci:v0000101Ed00001960sv0000101Esd00000471* +- ID_MODEL_FROM_DATABASE=MegaRAID 471 Enterprise 1600 RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (471 Enterprise 1600 RAID Controller) + + pci:v0000101Ed00001960sv0000101Esd00000475* +- ID_MODEL_FROM_DATABASE=MegaRAID 475 Express 500/500LC RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (475 Express 500/500LC RAID Controller) + + pci:v0000101Ed00001960sv0000101Esd00000477* +- ID_MODEL_FROM_DATABASE=MegaRAID 477 Elite 3100 RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (477 Elite 3100 RAID Controller) + + pci:v0000101Ed00001960sv0000101Esd00000493* +- ID_MODEL_FROM_DATABASE=MegaRAID 493 Elite 1600 RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (493 Elite 1600 RAID Controller) + + pci:v0000101Ed00001960sv0000101Esd00000494* +- ID_MODEL_FROM_DATABASE=MegaRAID 494 Elite 1650 RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (494 Elite 1650 RAID Controller) + + pci:v0000101Ed00001960sv0000101Esd00000503* +- ID_MODEL_FROM_DATABASE=MegaRAID 503 Enterprise 1650 RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (503 Enterprise 1650 RAID Controller) + + pci:v0000101Ed00001960sv0000101Esd00000511* +- ID_MODEL_FROM_DATABASE=MegaRAID 511 i4 IDE RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (511 i4 IDE RAID Controller) + + pci:v0000101Ed00001960sv0000101Esd00000522* +- ID_MODEL_FROM_DATABASE=MegaRAID 522 i4133 RAID Controller ++ ID_MODEL_FROM_DATABASE=MegaRAID (522 i4133 RAID Controller) + + pci:v0000101Ed00001960sv00001028sd00000471* +- ID_MODEL_FROM_DATABASE=PowerEdge RAID Controller 3/QC ++ ID_MODEL_FROM_DATABASE=MegaRAID (PowerEdge RAID Controller 3/QC) + + pci:v0000101Ed00001960sv00001028sd00000475* +- ID_MODEL_FROM_DATABASE=PowerEdge RAID Controller 3/SC ++ ID_MODEL_FROM_DATABASE=MegaRAID (PowerEdge RAID Controller 3/SC) + + pci:v0000101Ed00001960sv00001028sd00000493* +- ID_MODEL_FROM_DATABASE=PowerEdge RAID Controller 3/DC ++ ID_MODEL_FROM_DATABASE=MegaRAID (PowerEdge RAID Controller 3/DC) + + pci:v0000101Ed00001960sv00001028sd00000511* +- ID_MODEL_FROM_DATABASE=PowerEdge Cost Effective RAID Controller ATA100/4Ch ++ ID_MODEL_FROM_DATABASE=MegaRAID (PowerEdge Cost Effective RAID Controller ATA100/4Ch) + + pci:v0000101Ed00001960sv0000103Csd000060E7* +- ID_MODEL_FROM_DATABASE=NetRAID-1M ++ ID_MODEL_FROM_DATABASE=MegaRAID (NetRAID-1M) + + pci:v0000101Ed00001960sv0000103Csd000060E8* +- ID_MODEL_FROM_DATABASE=NetRaid 2M [AMI MegaRaid 493] ++ ID_MODEL_FROM_DATABASE=MegaRAID (NetRaid 2M [AMI MegaRaid 493]) + + pci:v0000101Ed00009010* + ID_MODEL_FROM_DATABASE=MegaRAID 428 Ultra RAID Controller +@@ -10623,7 +10623,7 @@ pci:v0000101Ed00009063* + ID_MODEL_FROM_DATABASE=MegaRAC + + pci:v0000101Ed00009063sv0000101Esd00000767* +- ID_MODEL_FROM_DATABASE=Dell Remote Assistant Card 2 ++ ID_MODEL_FROM_DATABASE=MegaRAC (Dell Remote Assistant Card 2) + + pci:v0000101F* + ID_VENDOR_FROM_DATABASE=PictureTel +@@ -10731,7 +10731,7 @@ pci:v00001022d00001510* + ID_MODEL_FROM_DATABASE=Family 14h Processor Root Complex + + pci:v00001022d00001510sv0000174Bsd00001001* +- ID_MODEL_FROM_DATABASE=PURE Fusion Mini ++ ID_MODEL_FROM_DATABASE=Family 14h Processor Root Complex (PURE Fusion Mini) + + pci:v00001022d00001512* + ID_MODEL_FROM_DATABASE=Family 14h Processor Root Port +@@ -10842,79 +10842,79 @@ pci:v00001022d00002000* + ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] + + pci:v00001022d00002000sv00001014sd00002000* +- ID_MODEL_FROM_DATABASE=NetFinity 10/100 Fast Ethernet ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (NetFinity 10/100 Fast Ethernet) + + pci:v00001022d00002000sv00001022sd00002000* +- ID_MODEL_FROM_DATABASE=PCnet - Fast 79C971 ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (PCnet - Fast 79C971) + + pci:v00001022d00002000sv0000103Csd0000104C* +- ID_MODEL_FROM_DATABASE=Ethernet with LAN remote power Adapter ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (Ethernet with LAN remote power Adapter) + + pci:v00001022d00002000sv0000103Csd00001064* +- ID_MODEL_FROM_DATABASE=Ethernet with LAN remote power Adapter ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (Ethernet with LAN remote power Adapter) + + pci:v00001022d00002000sv0000103Csd00001065* +- ID_MODEL_FROM_DATABASE=Ethernet with LAN remote power Adapter ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (Ethernet with LAN remote power Adapter) + + pci:v00001022d00002000sv0000103Csd0000106C* +- ID_MODEL_FROM_DATABASE=Ethernet with LAN remote power Adapter ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (Ethernet with LAN remote power Adapter) + + pci:v00001022d00002000sv0000103Csd0000106E* +- ID_MODEL_FROM_DATABASE=Ethernet with LAN remote power Adapter ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (Ethernet with LAN remote power Adapter) + + pci:v00001022d00002000sv0000103Csd000010EA* +- ID_MODEL_FROM_DATABASE=Ethernet with LAN remote power Adapter ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (Ethernet with LAN remote power Adapter) + + pci:v00001022d00002000sv00001113sd00001220* +- ID_MODEL_FROM_DATABASE=EN1220 10/100 Fast Ethernet ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (EN1220 10/100 Fast Ethernet) + + pci:v00001022d00002000sv00001259sd00002450* +- ID_MODEL_FROM_DATABASE=AT-2450 10/100 Fast Ethernet ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (AT-2450 10/100 Fast Ethernet) + + pci:v00001022d00002000sv00001259sd00002454* +- ID_MODEL_FROM_DATABASE=AT-2450v4 10Mb Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (AT-2450v4 10Mb Ethernet Adapter) + + pci:v00001022d00002000sv00001259sd00002700* +- ID_MODEL_FROM_DATABASE=AT-2700TX 10/100 Fast Ethernet ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (AT-2700TX 10/100 Fast Ethernet) + + pci:v00001022d00002000sv00001259sd00002701* +- ID_MODEL_FROM_DATABASE=AT-2700FX 100Mb Ethernet ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (AT-2700FX 100Mb Ethernet) + + pci:v00001022d00002000sv00001259sd00002702* +- ID_MODEL_FROM_DATABASE=AT-2700FTX 10/100 Mb Fiber/Copper Fast Ethernet ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (AT-2700FTX 10/100 Mb Fiber/Copper Fast Ethernet) + + pci:v00001022d00002000sv00001259sd00002703* +- ID_MODEL_FROM_DATABASE=AT-2701FX ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (AT-2701FX) + + pci:v00001022d00002000sv00001259sd00002704* +- ID_MODEL_FROM_DATABASE=AT-2701FTX 10/100 Mb Fiber/Copper Fast Ethernet ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (AT-2701FTX 10/100 Mb Fiber/Copper Fast Ethernet) + + pci:v00001022d00002000sv00004C53sd00001000* +- ID_MODEL_FROM_DATABASE=CC7/CR7/CP7/VC7/VP7/VR7 mainboard ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (CC7/CR7/CP7/VC7/VP7/VR7 mainboard) + + pci:v00001022d00002000sv00004C53sd00001010* +- ID_MODEL_FROM_DATABASE=CP5/CR6 mainboard ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (CP5/CR6 mainboard) + + pci:v00001022d00002000sv00004C53sd00001020* +- ID_MODEL_FROM_DATABASE=VR6 mainboard ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (VR6 mainboard) + + pci:v00001022d00002000sv00004C53sd00001030* +- ID_MODEL_FROM_DATABASE=PC5 mainboard ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (PC5 mainboard) + + pci:v00001022d00002000sv00004C53sd00001040* +- ID_MODEL_FROM_DATABASE=CL7 mainboard ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (CL7 mainboard) + + pci:v00001022d00002000sv00004C53sd00001060* +- ID_MODEL_FROM_DATABASE=PC7 mainboard ++ ID_MODEL_FROM_DATABASE=79c970 [PCnet32 LANCE] (PC7 mainboard) + + pci:v00001022d00002001* + ID_MODEL_FROM_DATABASE=79c978 [HomePNA] + + pci:v00001022d00002001sv00001092sd00000A78* +- ID_MODEL_FROM_DATABASE=Multimedia Home Network Adapter ++ ID_MODEL_FROM_DATABASE=79c978 [HomePNA] (Multimedia Home Network Adapter) + + pci:v00001022d00002001sv00001668sd00000299* +- ID_MODEL_FROM_DATABASE=ActionLink Home Network Adapter ++ ID_MODEL_FROM_DATABASE=79c978 [HomePNA] (ActionLink Home Network Adapter) + + pci:v00001022d00002003* + ID_MODEL_FROM_DATABASE=Am 1771 MBW [Alchemy] +@@ -10923,7 +10923,7 @@ pci:v00001022d00002020* + ID_MODEL_FROM_DATABASE=53c974 [PCscsi] + + pci:v00001022d00002020sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=53c974 [PCscsi] (QEMU Virtual Machine) + + pci:v00001022d00002040* + ID_MODEL_FROM_DATABASE=79c974 +@@ -11043,7 +11043,7 @@ pci:v00001022d00007440* + ID_MODEL_FROM_DATABASE=AMD-768 [Opus] ISA + + pci:v00001022d00007440sv00001043sd00008044* +- ID_MODEL_FROM_DATABASE=A7M-D Mainboard ++ ID_MODEL_FROM_DATABASE=AMD-768 [Opus] ISA (A7M-D Mainboard) + + pci:v00001022d00007441* + ID_MODEL_FROM_DATABASE=AMD-768 [Opus] IDE +@@ -11052,7 +11052,7 @@ pci:v00001022d00007443* + ID_MODEL_FROM_DATABASE=AMD-768 [Opus] ACPI + + pci:v00001022d00007443sv00001043sd00008044* +- ID_MODEL_FROM_DATABASE=A7M-D Mainboard ++ ID_MODEL_FROM_DATABASE=AMD-768 [Opus] ACPI (A7M-D Mainboard) + + pci:v00001022d00007445* + ID_MODEL_FROM_DATABASE=AMD-768 [Opus] Audio +@@ -11088,7 +11088,7 @@ pci:v00001022d00007460* + ID_MODEL_FROM_DATABASE=AMD-8111 PCI + + pci:v00001022d00007460sv0000161Fsd00003017* +- ID_MODEL_FROM_DATABASE=HDAMB ++ ID_MODEL_FROM_DATABASE=AMD-8111 PCI (HDAMB) + + pci:v00001022d00007461* + ID_MODEL_FROM_DATABASE=AMD-8111 USB +@@ -11103,22 +11103,22 @@ pci:v00001022d00007464* + ID_MODEL_FROM_DATABASE=AMD-8111 USB OHCI + + pci:v00001022d00007464sv0000161Fsd00003017* +- ID_MODEL_FROM_DATABASE=HDAMB ++ ID_MODEL_FROM_DATABASE=AMD-8111 USB OHCI (HDAMB) + + pci:v00001022d00007468* + ID_MODEL_FROM_DATABASE=AMD-8111 LPC + + pci:v00001022d00007468sv0000161Fsd00003017* +- ID_MODEL_FROM_DATABASE=HDAMB ++ ID_MODEL_FROM_DATABASE=AMD-8111 LPC (HDAMB) + + pci:v00001022d00007469* + ID_MODEL_FROM_DATABASE=AMD-8111 IDE + + pci:v00001022d00007469sv00001022sd00002B80* +- ID_MODEL_FROM_DATABASE=AMD-8111 IDE [Quartet] ++ ID_MODEL_FROM_DATABASE=AMD-8111 IDE ([Quartet]) + + pci:v00001022d00007469sv0000161Fsd00003017* +- ID_MODEL_FROM_DATABASE=HDAMB ++ ID_MODEL_FROM_DATABASE=AMD-8111 IDE (HDAMB) + + pci:v00001022d0000746A* + ID_MODEL_FROM_DATABASE=AMD-8111 SMBus 2.0 +@@ -11127,13 +11127,13 @@ pci:v00001022d0000746B* + ID_MODEL_FROM_DATABASE=AMD-8111 ACPI + + pci:v00001022d0000746Bsv0000161Fsd00003017* +- ID_MODEL_FROM_DATABASE=HDAMB ++ ID_MODEL_FROM_DATABASE=AMD-8111 ACPI (HDAMB) + + pci:v00001022d0000746D* + ID_MODEL_FROM_DATABASE=AMD-8111 AC97 Audio + + pci:v00001022d0000746Dsv0000161Fsd00003017* +- ID_MODEL_FROM_DATABASE=HDAMB ++ ID_MODEL_FROM_DATABASE=AMD-8111 AC97 Audio (HDAMB) + + pci:v00001022d0000746E* + ID_MODEL_FROM_DATABASE=AMD-8111 MC97 Modem +@@ -11148,10 +11148,10 @@ pci:v00001022d00007801* + ID_MODEL_FROM_DATABASE=FCH SATA Controller [AHCI mode] + + pci:v00001022d00007801sv0000103Csd0000168B* +- ID_MODEL_FROM_DATABASE=ProBook 4535s Notebook ++ ID_MODEL_FROM_DATABASE=FCH SATA Controller [AHCI mode] (ProBook 4535s Notebook) + + pci:v00001022d00007801sv0000103Csd0000194E* +- ID_MODEL_FROM_DATABASE=ProBook 455 G1 Notebook ++ ID_MODEL_FROM_DATABASE=FCH SATA Controller [AHCI mode] (ProBook 455 G1 Notebook) + + pci:v00001022d00007802* + ID_MODEL_FROM_DATABASE=FCH SATA Controller [RAID mode] +@@ -11172,25 +11172,25 @@ pci:v00001022d00007807* + ID_MODEL_FROM_DATABASE=FCH USB OHCI Controller + + pci:v00001022d00007807sv0000103Csd0000194E* +- ID_MODEL_FROM_DATABASE=ProBook 455 G1 Notebook ++ ID_MODEL_FROM_DATABASE=FCH USB OHCI Controller (ProBook 455 G1 Notebook) + + pci:v00001022d00007808* + ID_MODEL_FROM_DATABASE=FCH USB EHCI Controller + + pci:v00001022d00007808sv0000103Csd0000194E* +- ID_MODEL_FROM_DATABASE=ProBook 455 G1 Notebook ++ ID_MODEL_FROM_DATABASE=FCH USB EHCI Controller (ProBook 455 G1 Notebook) + + pci:v00001022d00007809* + ID_MODEL_FROM_DATABASE=FCH USB OHCI Controller + + pci:v00001022d00007809sv0000103Csd0000194E* +- ID_MODEL_FROM_DATABASE=ProBook 455 G1 Notebook ++ ID_MODEL_FROM_DATABASE=FCH USB OHCI Controller (ProBook 455 G1 Notebook) + + pci:v00001022d0000780B* + ID_MODEL_FROM_DATABASE=FCH SMBus Controller + + pci:v00001022d0000780Bsv0000103Csd0000194E* +- ID_MODEL_FROM_DATABASE=ProBook 455 G1 Notebook ++ ID_MODEL_FROM_DATABASE=FCH SMBus Controller (ProBook 455 G1 Notebook) + + pci:v00001022d0000780C* + ID_MODEL_FROM_DATABASE=FCH IDE Controller +@@ -11199,16 +11199,16 @@ pci:v00001022d0000780D* + ID_MODEL_FROM_DATABASE=FCH Azalia Controller + + pci:v00001022d0000780Dsv0000103Csd0000194E* +- ID_MODEL_FROM_DATABASE=ProBook 455 G1 Notebook ++ ID_MODEL_FROM_DATABASE=FCH Azalia Controller (ProBook 455 G1 Notebook) + + pci:v00001022d0000780Dsv00001043sd00008444* +- ID_MODEL_FROM_DATABASE=F2A85-M Series ++ ID_MODEL_FROM_DATABASE=FCH Azalia Controller (F2A85-M Series) + + pci:v00001022d0000780E* + ID_MODEL_FROM_DATABASE=FCH LPC Bridge + + pci:v00001022d0000780Esv0000103Csd0000194E* +- ID_MODEL_FROM_DATABASE=ProBook 455 G1 Notebook ++ ID_MODEL_FROM_DATABASE=FCH LPC Bridge (ProBook 455 G1 Notebook) + + pci:v00001022d0000780F* + ID_MODEL_FROM_DATABASE=FCH PCI Bridge +@@ -11223,7 +11223,7 @@ pci:v00001022d00007814* + ID_MODEL_FROM_DATABASE=FCH USB XHCI Controller + + pci:v00001022d00007814sv0000103Csd0000194E* +- ID_MODEL_FROM_DATABASE=ProBook 455 G1 Notebook ++ ID_MODEL_FROM_DATABASE=FCH USB XHCI Controller (ProBook 455 G1 Notebook) + + pci:v00001022d00007900* + ID_MODEL_FROM_DATABASE=FCH SATA Controller [IDE mode] +@@ -11262,16 +11262,16 @@ pci:v00001022d00009600* + ID_MODEL_FROM_DATABASE=RS780 Host Bridge + + pci:v00001022d00009600sv00001043sd000082F1* +- ID_MODEL_FROM_DATABASE=M3A78-EH Motherboard ++ ID_MODEL_FROM_DATABASE=RS780 Host Bridge (M3A78-EH Motherboard) + + pci:v00001022d00009601* + ID_MODEL_FROM_DATABASE=RS880 Host Bridge + + pci:v00001022d00009601sv00001019sd00002120* +- ID_MODEL_FROM_DATABASE=A785GM-M ++ ID_MODEL_FROM_DATABASE=RS880 Host Bridge (A785GM-M) + + pci:v00001022d00009601sv00001043sd0000843E* +- ID_MODEL_FROM_DATABASE=M5A88-V EVO ++ ID_MODEL_FROM_DATABASE=RS880 Host Bridge (M5A88-V EVO) + + pci:v00001022d00009602* + ID_MODEL_FROM_DATABASE=RS780/RS880 PCI to PCI bridge (int gfx) +@@ -11316,7 +11316,7 @@ pci:v00001023d00002001* + ID_MODEL_FROM_DATABASE=4DWave NX + + pci:v00001023d00002001sv0000122Dsd00001400* +- ID_MODEL_FROM_DATABASE=Trident PCI288-Q3DII (NX) ++ ID_MODEL_FROM_DATABASE=4DWave NX (Trident PCI288-Q3DII (NX)) + + pci:v00001023d00002100* + ID_MODEL_FROM_DATABASE=CyberBlade XP4m32 +@@ -11328,13 +11328,13 @@ pci:v00001023d00008400* + ID_MODEL_FROM_DATABASE=CyberBlade/i7 + + pci:v00001023d00008400sv00001023sd00008400* +- ID_MODEL_FROM_DATABASE=CyberBlade i7 AGP ++ ID_MODEL_FROM_DATABASE=CyberBlade/i7 (CyberBlade i7 AGP) + + pci:v00001023d00008420* + ID_MODEL_FROM_DATABASE=CyberBlade/i7d + + pci:v00001023d00008420sv00000E11sd0000B15A* +- ID_MODEL_FROM_DATABASE=CyberBlade i7 AGP ++ ID_MODEL_FROM_DATABASE=CyberBlade/i7d (CyberBlade i7 AGP) + + pci:v00001023d00008500* + ID_MODEL_FROM_DATABASE=CyberBlade/i1 +@@ -11343,19 +11343,19 @@ pci:v00001023d00008520* + ID_MODEL_FROM_DATABASE=CyberBlade i1 + + pci:v00001023d00008520sv00000E11sd0000B16E* +- ID_MODEL_FROM_DATABASE=CyberBlade i1 AGP ++ ID_MODEL_FROM_DATABASE=CyberBlade i1 (AGP) + + pci:v00001023d00008520sv00001023sd00008520* +- ID_MODEL_FROM_DATABASE=CyberBlade i1 AGP ++ ID_MODEL_FROM_DATABASE=CyberBlade i1 (AGP) + + pci:v00001023d00008620* + ID_MODEL_FROM_DATABASE=CyberBlade/i1 + + pci:v00001023d00008620sv00001014sd00000502* +- ID_MODEL_FROM_DATABASE=ThinkPad R30/T30 ++ ID_MODEL_FROM_DATABASE=CyberBlade/i1 (ThinkPad R30/T30) + + pci:v00001023d00008620sv00001014sd00001025* +- ID_MODEL_FROM_DATABASE=Travelmate 352TE ++ ID_MODEL_FROM_DATABASE=CyberBlade/i1 (Travelmate 352TE) + + pci:v00001023d00008820* + ID_MODEL_FROM_DATABASE=CyberBlade XPAi1 +@@ -11460,7 +11460,7 @@ pci:v00001023d00009880* + ID_MODEL_FROM_DATABASE=Blade 3D PCI/AGP + + pci:v00001023d00009880sv00001023sd00009880* +- ID_MODEL_FROM_DATABASE=Blade 3D ++ ID_MODEL_FROM_DATABASE=Blade 3D PCI/AGP (Blade 3D) + + pci:v00001023d00009910* + ID_MODEL_FROM_DATABASE=CyberBlade/XP +@@ -11523,7 +11523,7 @@ pci:v00001025d00001533* + ID_MODEL_FROM_DATABASE=M1533 PCI-to-ISA Bridge + + pci:v00001025d00001533sv000010B9sd00001533* +- ID_MODEL_FROM_DATABASE=ALI M1533 Aladdin IV/V ISA South Bridge ++ ID_MODEL_FROM_DATABASE=M1533 PCI-to-ISA Bridge (ALI M1533 Aladdin IV/V ISA South Bridge) + + pci:v00001025d00001535* + ID_MODEL_FROM_DATABASE=M1535 PCI Bridge + Super I/O + FIR +@@ -11532,7 +11532,7 @@ pci:v00001025d00001541* + ID_MODEL_FROM_DATABASE=M1541 Northbridge [Aladdin V] + + pci:v00001025d00001541sv000010B9sd00001541* +- ID_MODEL_FROM_DATABASE=ALI M1541 Aladdin V/V+ AGP+PCI North Bridge ++ ID_MODEL_FROM_DATABASE=M1541 Northbridge [Aladdin V] (ALI M1541 Aladdin V/V+ AGP+PCI North Bridge) + + pci:v00001025d00001542* + ID_MODEL_FROM_DATABASE=M1542 Northbridge [Aladdin V] +@@ -11658,31 +11658,31 @@ pci:v00001028d00000001* + ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 2/Si + + pci:v00001028d00000001sv00001028sd00000001* +- ID_MODEL_FROM_DATABASE=PowerEdge 2400 ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 2/Si (PowerEdge 2400) + + pci:v00001028d00000002* + ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 3/Di + + pci:v00001028d00000002sv00001028sd00000002* +- ID_MODEL_FROM_DATABASE=PowerEdge 4400 ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 3/Di (PowerEdge 4400) + + pci:v00001028d00000002sv00001028sd000000D1* +- ID_MODEL_FROM_DATABASE=PERC 3/DiV [Viper] ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 3/Di (PERC 3/DiV [Viper]) + + pci:v00001028d00000002sv00001028sd000000D9* +- ID_MODEL_FROM_DATABASE=PERC 3/DiL [Lexus] ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 3/Di (PERC 3/DiL [Lexus]) + + pci:v00001028d00000003* + ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 3/Si + + pci:v00001028d00000003sv00001028sd00000003* +- ID_MODEL_FROM_DATABASE=PowerEdge 2450 ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 3/Si (PowerEdge 2450) + + pci:v00001028d00000004* + ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 3/Di [Iguana] + + pci:v00001028d00000004sv00001028sd00000004* +- ID_MODEL_FROM_DATABASE=PERC 3/DiF [Iguana] ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 3/Di [Iguana] (PERC 3/DiF [Iguana]) + + pci:v00001028d00000006* + ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 3/Di +@@ -11700,13 +11700,13 @@ pci:v00001028d0000000A* + ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 3/Di + + pci:v00001028d0000000Asv00001028sd00000106* +- ID_MODEL_FROM_DATABASE=PERC 3/DiJ [Jaguar] ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 3/Di (PERC 3/DiJ [Jaguar]) + + pci:v00001028d0000000Asv00001028sd0000011B* +- ID_MODEL_FROM_DATABASE=PERC 3/DiD [Dagger] ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 3/Di (PERC 3/DiD [Dagger]) + + pci:v00001028d0000000Asv00001028sd00000121* +- ID_MODEL_FROM_DATABASE=PERC 3/DiB [Boxster] ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 3/Di (PERC 3/DiB [Boxster]) + + pci:v00001028d0000000C* + ID_MODEL_FROM_DATABASE=Embedded Remote Access or ERA/O +@@ -11721,7 +11721,7 @@ pci:v00001028d0000000F* + ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID controller 4/Di + + pci:v00001028d0000000Fsv00001028sd0000014A* +- ID_MODEL_FROM_DATABASE=PowerEdge 1750 ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID controller 4/Di (PowerEdge 1750) + + pci:v00001028d00000010* + ID_MODEL_FROM_DATABASE=Remote Access Card 4 +@@ -11736,19 +11736,19 @@ pci:v00001028d00000013* + ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID controller 4 + + pci:v00001028d00000013sv00001028sd0000016C* +- ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 4e/Si ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID controller 4 (PowerEdge Expandable RAID Controller 4e/Si) + + pci:v00001028d00000013sv00001028sd0000016D* +- ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 4e/Di ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID controller 4 (PowerEdge Expandable RAID Controller 4e/Di) + + pci:v00001028d00000013sv00001028sd0000016E* +- ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 4e/Di ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID controller 4 (PowerEdge Expandable RAID Controller 4e/Di) + + pci:v00001028d00000013sv00001028sd0000016F* +- ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 4e/Di ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID controller 4 (PowerEdge Expandable RAID Controller 4e/Di) + + pci:v00001028d00000013sv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 4e/Di ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID controller 4 (PowerEdge Expandable RAID Controller 4e/Di) + + pci:v00001028d00000014* + ID_MODEL_FROM_DATABASE=Remote Access Card 4 Daughter Card SMIC interface +@@ -11757,19 +11757,19 @@ pci:v00001028d00000015* + ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID controller 5 + + pci:v00001028d00000015sv00001028sd00001F01* +- ID_MODEL_FROM_DATABASE=PERC 5/E Adapter RAID Controller ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID controller 5 (PERC 5/E Adapter RAID Controller) + + pci:v00001028d00000015sv00001028sd00001F02* +- ID_MODEL_FROM_DATABASE=PERC 5/i Adapter RAID Controller ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID controller 5 (PERC 5/i Adapter RAID Controller) + + pci:v00001028d00000015sv00001028sd00001F03* +- ID_MODEL_FROM_DATABASE=PERC 5/i Integrated RAID Controller ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID controller 5 (PERC 5/i Integrated RAID Controller) + + pci:v00001028d00000016* + ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID controller S300 + + pci:v00001028d00000016sv00001028sd00001F24* +- ID_MODEL_FROM_DATABASE=PERC S300 Controller ++ ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID controller S300 (PERC S300 Controller) + + pci:v00001029* + ID_VENDOR_FROM_DATABASE=Siemens Nixdorf IS +@@ -11787,28 +11787,28 @@ pci:v0000102Ad0000001F* + ID_MODEL_FROM_DATABASE=AHA-2940U2/U2W /7890/7891 SCSI Controllers + + pci:v0000102Ad0000001Fsv00009005sd0000000F* +- ID_MODEL_FROM_DATABASE=2940U2W SCSI Controller ++ ID_MODEL_FROM_DATABASE=AHA-2940U2/U2W /7890/7891 SCSI Controllers (2940U2W SCSI Controller) + + pci:v0000102Ad0000001Fsv00009005sd00000106* +- ID_MODEL_FROM_DATABASE=2940U2W SCSI Controller ++ ID_MODEL_FROM_DATABASE=AHA-2940U2/U2W /7890/7891 SCSI Controllers (2940U2W SCSI Controller) + + pci:v0000102Ad0000001Fsv00009005sd0000A180* +- ID_MODEL_FROM_DATABASE=2940U2W SCSI Controller ++ ID_MODEL_FROM_DATABASE=AHA-2940U2/U2W /7890/7891 SCSI Controllers (2940U2W SCSI Controller) + + pci:v0000102Ad000000C5* + ID_MODEL_FROM_DATABASE=AIC-7899 U160/m SCSI Controller + + pci:v0000102Ad000000C5sv00001028sd000000C5* +- ID_MODEL_FROM_DATABASE=PowerEdge 2550/2650/4600 ++ ID_MODEL_FROM_DATABASE=AIC-7899 U160/m SCSI Controller (PowerEdge 2550/2650/4600) + + pci:v0000102Ad000000CF* + ID_MODEL_FROM_DATABASE=AIC-7899P U160/m + + pci:v0000102Ad000000CFsv00001028sd00000106* +- ID_MODEL_FROM_DATABASE=PowerEdge 4600 ++ ID_MODEL_FROM_DATABASE=AIC-7899P U160/m (PowerEdge 4600) + + pci:v0000102Ad000000CFsv00001028sd00000121* +- ID_MODEL_FROM_DATABASE=PowerEdge 2650 ++ ID_MODEL_FROM_DATABASE=AIC-7899P U160/m (PowerEdge 2650) + + pci:v0000102B* + ID_VENDOR_FROM_DATABASE=Matrox Electronics Systems Ltd. +@@ -11829,34 +11829,34 @@ pci:v0000102Bd0000051A* + ID_MODEL_FROM_DATABASE=MGA 1064SG [Mystique] + + pci:v0000102Bd0000051Asv0000102Bsd00000100* +- ID_MODEL_FROM_DATABASE=MGA-1064SG Mystique ++ ID_MODEL_FROM_DATABASE=MGA 1064SG [Mystique] (MGA-1064SG Mystique) + + pci:v0000102Bd0000051Asv0000102Bsd00001100* +- ID_MODEL_FROM_DATABASE=MGA-1084SG Mystique ++ ID_MODEL_FROM_DATABASE=MGA 1064SG [Mystique] (MGA-1084SG Mystique) + + pci:v0000102Bd0000051Asv0000102Bsd00001200* +- ID_MODEL_FROM_DATABASE=MGA-1084SG Mystique ++ ID_MODEL_FROM_DATABASE=MGA 1064SG [Mystique] (MGA-1084SG Mystique) + + pci:v0000102Bd0000051Asv00001100sd0000102B* +- ID_MODEL_FROM_DATABASE=MGA-1084SG Mystique ++ ID_MODEL_FROM_DATABASE=MGA 1064SG [Mystique] (MGA-1084SG Mystique) + + pci:v0000102Bd0000051Asv0000110Asd00000018* +- ID_MODEL_FROM_DATABASE=Scenic Pro C5 (D1025) ++ ID_MODEL_FROM_DATABASE=MGA 1064SG [Mystique] (Scenic Pro C5 (D1025)) + + pci:v0000102Bd0000051B* + ID_MODEL_FROM_DATABASE=MGA 2164W [Millennium II] + + pci:v0000102Bd0000051Bsv0000102Bsd0000051B* +- ID_MODEL_FROM_DATABASE=MGA-2164W Millennium II ++ ID_MODEL_FROM_DATABASE=MGA 2164W [Millennium II] (MGA-2164W Millennium II) + + pci:v0000102Bd0000051Bsv0000102Bsd00001100* +- ID_MODEL_FROM_DATABASE=MGA-2164W Millennium II ++ ID_MODEL_FROM_DATABASE=MGA 2164W [Millennium II] (MGA-2164W Millennium II) + + pci:v0000102Bd0000051Bsv0000102Bsd00001200* +- ID_MODEL_FROM_DATABASE=MGA-2164W Millennium II ++ ID_MODEL_FROM_DATABASE=MGA 2164W [Millennium II] (MGA-2164W Millennium II) + + pci:v0000102Bd0000051Bsv0000102Bsd00002100* +- ID_MODEL_FROM_DATABASE=MGA-2164W Millennium II ++ ID_MODEL_FROM_DATABASE=MGA 2164W [Millennium II] (MGA-2164W Millennium II) + + pci:v0000102Bd0000051E* + ID_MODEL_FROM_DATABASE=MGA 1064SG [Mystique] AGP +@@ -11868,391 +11868,391 @@ pci:v0000102Bd00000520* + ID_MODEL_FROM_DATABASE=MGA G200 + + pci:v0000102Bd00000520sv0000102Bsd0000DBC2* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 (G200 Multi-Monitor) + + pci:v0000102Bd00000520sv0000102Bsd0000DBC8* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 (G200 Multi-Monitor) + + pci:v0000102Bd00000520sv0000102Bsd0000DBE2* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 (G200 Multi-Monitor) + + pci:v0000102Bd00000520sv0000102Bsd0000DBE8* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 (G200 Multi-Monitor) + + pci:v0000102Bd00000520sv0000102Bsd0000FF03* +- ID_MODEL_FROM_DATABASE=Millennium G200 SD ++ ID_MODEL_FROM_DATABASE=MGA G200 (Millennium G200 SD) + + pci:v0000102Bd00000520sv0000102Bsd0000FF04* +- ID_MODEL_FROM_DATABASE=Marvel G200 ++ ID_MODEL_FROM_DATABASE=MGA G200 (Marvel G200) + + pci:v0000102Bd00000521* + ID_MODEL_FROM_DATABASE=MGA G200 AGP + + pci:v0000102Bd00000521sv00001014sd0000FF03* +- ID_MODEL_FROM_DATABASE=Millennium G200 AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Millennium G200 AGP) + + pci:v0000102Bd00000521sv0000102Bsd000048E9* +- ID_MODEL_FROM_DATABASE=Mystique G200 AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Mystique G200 AGP) + + pci:v0000102Bd00000521sv0000102Bsd000048F8* +- ID_MODEL_FROM_DATABASE=Millennium G200 SD AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Millennium G200 SD AGP) + + pci:v0000102Bd00000521sv0000102Bsd00004A60* +- ID_MODEL_FROM_DATABASE=Millennium G200 LE AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Millennium G200 LE AGP) + + pci:v0000102Bd00000521sv0000102Bsd00004A64* +- ID_MODEL_FROM_DATABASE=Millennium G200 AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Millennium G200 AGP) + + pci:v0000102Bd00000521sv0000102Bsd0000C93C* +- ID_MODEL_FROM_DATABASE=Millennium G200 AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Millennium G200 AGP) + + pci:v0000102Bd00000521sv0000102Bsd0000C9B0* +- ID_MODEL_FROM_DATABASE=Millennium G200 AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Millennium G200 AGP) + + pci:v0000102Bd00000521sv0000102Bsd0000C9BC* +- ID_MODEL_FROM_DATABASE=Millennium G200 AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Millennium G200 AGP) + + pci:v0000102Bd00000521sv0000102Bsd0000CA60* +- ID_MODEL_FROM_DATABASE=Millennium G250 LE AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Millennium G250 LE AGP) + + pci:v0000102Bd00000521sv0000102Bsd0000CA6C* +- ID_MODEL_FROM_DATABASE=Millennium G250 AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Millennium G250 AGP) + + pci:v0000102Bd00000521sv0000102Bsd0000DBBC* +- ID_MODEL_FROM_DATABASE=Millennium G200 AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Millennium G200 AGP) + + pci:v0000102Bd00000521sv0000102Bsd0000DBC2* +- ID_MODEL_FROM_DATABASE=Millennium G200 MMS (Dual G200) ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Millennium G200 MMS (Dual G200)) + + pci:v0000102Bd00000521sv0000102Bsd0000DBC3* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (G200 Multi-Monitor) + + pci:v0000102Bd00000521sv0000102Bsd0000DBC8* +- ID_MODEL_FROM_DATABASE=Millennium G200 MMS (Dual G200) ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Millennium G200 MMS (Dual G200)) + + pci:v0000102Bd00000521sv0000102Bsd0000DBD2* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (G200 Multi-Monitor) + + pci:v0000102Bd00000521sv0000102Bsd0000DBD3* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (G200 Multi-Monitor) + + pci:v0000102Bd00000521sv0000102Bsd0000DBD4* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (G200 Multi-Monitor) + + pci:v0000102Bd00000521sv0000102Bsd0000DBD5* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (G200 Multi-Monitor) + + pci:v0000102Bd00000521sv0000102Bsd0000DBD8* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (G200 Multi-Monitor) + + pci:v0000102Bd00000521sv0000102Bsd0000DBD9* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (G200 Multi-Monitor) + + pci:v0000102Bd00000521sv0000102Bsd0000DBE2* +- ID_MODEL_FROM_DATABASE=Millennium G200 MMS (Quad G200) ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Millennium G200 MMS (Quad G200)) + + pci:v0000102Bd00000521sv0000102Bsd0000DBE3* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (G200 Multi-Monitor) + + pci:v0000102Bd00000521sv0000102Bsd0000DBE8* +- ID_MODEL_FROM_DATABASE=Millennium G200 MMS (Quad G200) ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Millennium G200 MMS (Quad G200)) + + pci:v0000102Bd00000521sv0000102Bsd0000DBF2* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (G200 Multi-Monitor) + + pci:v0000102Bd00000521sv0000102Bsd0000DBF3* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (G200 Multi-Monitor) + + pci:v0000102Bd00000521sv0000102Bsd0000DBF4* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (G200 Multi-Monitor) + + pci:v0000102Bd00000521sv0000102Bsd0000DBF5* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (G200 Multi-Monitor) + + pci:v0000102Bd00000521sv0000102Bsd0000DBF8* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (G200 Multi-Monitor) + + pci:v0000102Bd00000521sv0000102Bsd0000DBF9* +- ID_MODEL_FROM_DATABASE=G200 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (G200 Multi-Monitor) + + pci:v0000102Bd00000521sv0000102Bsd0000F806* +- ID_MODEL_FROM_DATABASE=Mystique G200 Video AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Mystique G200 Video AGP) + + pci:v0000102Bd00000521sv0000102Bsd0000FF00* +- ID_MODEL_FROM_DATABASE=MGA-G200 AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (MGA-G200 AGP) + + pci:v0000102Bd00000521sv0000102Bsd0000FF02* +- ID_MODEL_FROM_DATABASE=Mystique G200 AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Mystique G200 AGP) + + pci:v0000102Bd00000521sv0000102Bsd0000FF03* +- ID_MODEL_FROM_DATABASE=Millennium G200 AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Millennium G200 AGP) + + pci:v0000102Bd00000521sv0000102Bsd0000FF04* +- ID_MODEL_FROM_DATABASE=Marvel G200 AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (Marvel G200 AGP) + + pci:v0000102Bd00000521sv0000110Asd00000032* +- ID_MODEL_FROM_DATABASE=MGA-G200 AGP ++ ID_MODEL_FROM_DATABASE=MGA G200 AGP (MGA-G200 AGP) + + pci:v0000102Bd00000522* + ID_MODEL_FROM_DATABASE=MGA G200e [Pilot] ServerEngines (SEP1) + + pci:v0000102Bd00000522sv0000103Csd000031FA* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=MGA G200e [Pilot] ServerEngines (SEP1) (ProLiant DL140 G3) + + pci:v0000102Bd00000525* + ID_MODEL_FROM_DATABASE=MGA G400/G450 + + pci:v0000102Bd00000525sv00000E11sd0000B16F* +- ID_MODEL_FROM_DATABASE=MGA-G400 AGP ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (MGA-G400 AGP) + + pci:v0000102Bd00000525sv0000102Bsd00000328* +- ID_MODEL_FROM_DATABASE=Millennium G400 16Mb SDRAM ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G400 16Mb SDRAM) + + pci:v0000102Bd00000525sv0000102Bsd00000338* +- ID_MODEL_FROM_DATABASE=Millennium G400 16Mb SDRAM ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G400 16Mb SDRAM) + + pci:v0000102Bd00000525sv0000102Bsd00000378* +- ID_MODEL_FROM_DATABASE=Millennium G400 32Mb SDRAM ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G400 32Mb SDRAM) + + pci:v0000102Bd00000525sv0000102Bsd00000541* +- ID_MODEL_FROM_DATABASE=Millennium G450 Dual Head ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 Dual Head) + + pci:v0000102Bd00000525sv0000102Bsd00000542* +- ID_MODEL_FROM_DATABASE=Millennium G450 Dual Head LX ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 Dual Head LX) + + pci:v0000102Bd00000525sv0000102Bsd00000543* +- ID_MODEL_FROM_DATABASE=Millennium G450 Single Head LX ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 Single Head LX) + + pci:v0000102Bd00000525sv0000102Bsd00000641* +- ID_MODEL_FROM_DATABASE=Millennium G450 32Mb SDRAM Dual Head ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 32Mb SDRAM Dual Head) + + pci:v0000102Bd00000525sv0000102Bsd00000642* +- ID_MODEL_FROM_DATABASE=Millennium G450 32Mb SDRAM Dual Head LX ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 32Mb SDRAM Dual Head LX) + + pci:v0000102Bd00000525sv0000102Bsd00000643* +- ID_MODEL_FROM_DATABASE=Millennium G450 32Mb SDRAM Single Head LX ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 32Mb SDRAM Single Head LX) + + pci:v0000102Bd00000525sv0000102Bsd000007C0* +- ID_MODEL_FROM_DATABASE=Millennium G450 Dual Head LE ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 Dual Head LE) + + pci:v0000102Bd00000525sv0000102Bsd000007C1* +- ID_MODEL_FROM_DATABASE=Millennium G450 SDR Dual Head LE ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 SDR Dual Head LE) + + pci:v0000102Bd00000525sv0000102Bsd00000D41* +- ID_MODEL_FROM_DATABASE=Millennium G450 Dual Head PCI ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 Dual Head PCI) + + pci:v0000102Bd00000525sv0000102Bsd00000D42* +- ID_MODEL_FROM_DATABASE=Millennium G450 Dual Head LX PCI ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 Dual Head LX PCI) + + pci:v0000102Bd00000525sv0000102Bsd00000D43* +- ID_MODEL_FROM_DATABASE=Millennium G450 32Mb Dual Head PCI ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 32Mb Dual Head PCI) + + pci:v0000102Bd00000525sv0000102Bsd00000E00* +- ID_MODEL_FROM_DATABASE=Marvel G450 eTV ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Marvel G450 eTV) + + pci:v0000102Bd00000525sv0000102Bsd00000E01* +- ID_MODEL_FROM_DATABASE=Marvel G450 eTV ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Marvel G450 eTV) + + pci:v0000102Bd00000525sv0000102Bsd00000E02* +- ID_MODEL_FROM_DATABASE=Marvel G450 eTV ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Marvel G450 eTV) + + pci:v0000102Bd00000525sv0000102Bsd00000E03* +- ID_MODEL_FROM_DATABASE=Marvel G450 eTV ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Marvel G450 eTV) + + pci:v0000102Bd00000525sv0000102Bsd00000F80* +- ID_MODEL_FROM_DATABASE=Millennium G450 Low Profile ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 Low Profile) + + pci:v0000102Bd00000525sv0000102Bsd00000F81* +- ID_MODEL_FROM_DATABASE=Millennium G450 Low Profile ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 Low Profile) + + pci:v0000102Bd00000525sv0000102Bsd00000F82* +- ID_MODEL_FROM_DATABASE=Millennium G450 Low Profile DVI ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 Low Profile DVI) + + pci:v0000102Bd00000525sv0000102Bsd00000F83* +- ID_MODEL_FROM_DATABASE=Millennium G450 Low Profile DVI ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 Low Profile DVI) + + pci:v0000102Bd00000525sv0000102Bsd000019D8* +- ID_MODEL_FROM_DATABASE=Millennium G400 16Mb SGRAM ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G400 16Mb SGRAM) + + pci:v0000102Bd00000525sv0000102Bsd000019F8* +- ID_MODEL_FROM_DATABASE=Millennium G400 32Mb SGRAM ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G400 32Mb SGRAM) + + pci:v0000102Bd00000525sv0000102Bsd00002159* +- ID_MODEL_FROM_DATABASE=Millennium G400 Dual Head 16Mb ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G400 Dual Head 16Mb) + + pci:v0000102Bd00000525sv0000102Bsd00002179* +- ID_MODEL_FROM_DATABASE=Millennium G400 MAX/Dual Head 32Mb ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G400 MAX/Dual Head 32Mb) + + pci:v0000102Bd00000525sv0000102Bsd0000217D* +- ID_MODEL_FROM_DATABASE=Millennium G400 Dual Head Max ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G400 Dual Head Max) + + pci:v0000102Bd00000525sv0000102Bsd000023C0* +- ID_MODEL_FROM_DATABASE=Millennium G450 ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450) + + pci:v0000102Bd00000525sv0000102Bsd000023C1* +- ID_MODEL_FROM_DATABASE=Millennium G450 ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450) + + pci:v0000102Bd00000525sv0000102Bsd000023C2* +- ID_MODEL_FROM_DATABASE=Millennium G450 DVI ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 DVI) + + pci:v0000102Bd00000525sv0000102Bsd000023C3* +- ID_MODEL_FROM_DATABASE=Millennium G450 DVI ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 DVI) + + pci:v0000102Bd00000525sv0000102Bsd00002F58* +- ID_MODEL_FROM_DATABASE=Millennium G400 ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G400) + + pci:v0000102Bd00000525sv0000102Bsd00002F78* +- ID_MODEL_FROM_DATABASE=Millennium G400 ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G400) + + pci:v0000102Bd00000525sv0000102Bsd00003693* +- ID_MODEL_FROM_DATABASE=Marvel G400 AGP ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Marvel G400 AGP) + + pci:v0000102Bd00000525sv0000102Bsd00005DD0* +- ID_MODEL_FROM_DATABASE=4Sight II ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (4Sight II) + + pci:v0000102Bd00000525sv0000102Bsd00005F50* +- ID_MODEL_FROM_DATABASE=4Sight II ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (4Sight II) + + pci:v0000102Bd00000525sv0000102Bsd00005F51* +- ID_MODEL_FROM_DATABASE=4Sight II ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (4Sight II) + + pci:v0000102Bd00000525sv0000102Bsd00005F52* +- ID_MODEL_FROM_DATABASE=4Sight II ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (4Sight II) + + pci:v0000102Bd00000525sv0000102Bsd00009010* +- ID_MODEL_FROM_DATABASE=Millennium G400 Dual Head ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G400 Dual Head) + + pci:v0000102Bd00000525sv00001458sd00000400* +- ID_MODEL_FROM_DATABASE=GA-G400 ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (GA-G400) + + pci:v0000102Bd00000525sv00001705sd00000001* +- ID_MODEL_FROM_DATABASE=Millennium G450 32MB SGRAM ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 32MB SGRAM) + + pci:v0000102Bd00000525sv00001705sd00000002* +- ID_MODEL_FROM_DATABASE=Millennium G450 16MB SGRAM ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 16MB SGRAM) + + pci:v0000102Bd00000525sv00001705sd00000003* +- ID_MODEL_FROM_DATABASE=Millennium G450 32MB ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 32MB) + + pci:v0000102Bd00000525sv00001705sd00000004* +- ID_MODEL_FROM_DATABASE=Millennium G450 16MB ++ ID_MODEL_FROM_DATABASE=MGA G400/G450 (Millennium G450 16MB) + + pci:v0000102Bd00000527* + ID_MODEL_FROM_DATABASE=Parhelia + + pci:v0000102Bd00000527sv0000102Bsd00000840* +- ID_MODEL_FROM_DATABASE=Parhelia 128Mb ++ ID_MODEL_FROM_DATABASE=Parhelia (128Mb) + + pci:v0000102Bd00000527sv0000102Bsd00000850* +- ID_MODEL_FROM_DATABASE=Parhelia 256MB ++ ID_MODEL_FROM_DATABASE=Parhelia (256MB) + + pci:v0000102Bd00000527sv0000102Bsd00000870* +- ID_MODEL_FROM_DATABASE=MED2mp-DVI ++ ID_MODEL_FROM_DATABASE=Parhelia (MED2mp-DVI) + + pci:v0000102Bd00000527sv0000102Bsd00000880* +- ID_MODEL_FROM_DATABASE=P-256 Edge Overlap Controller ++ ID_MODEL_FROM_DATABASE=Parhelia (P-256 Edge Overlap Controller) + + pci:v0000102Bd00000528* + ID_MODEL_FROM_DATABASE=Parhelia + + pci:v0000102Bd00000528sv0000102Bsd00001020* +- ID_MODEL_FROM_DATABASE=Parhelia 128MB ++ ID_MODEL_FROM_DATABASE=Parhelia (128MB) + + pci:v0000102Bd00000528sv0000102Bsd00001030* +- ID_MODEL_FROM_DATABASE=Parhelia 256 MB Dual DVI ++ ID_MODEL_FROM_DATABASE=Parhelia (256 MB Dual DVI) + + pci:v0000102Bd00000528sv0000102Bsd00001040* +- ID_MODEL_FROM_DATABASE=MED2mp-DVI ++ ID_MODEL_FROM_DATABASE=Parhelia (MED2mp-DVI) + + pci:v0000102Bd00000528sv0000102Bsd00001050* +- ID_MODEL_FROM_DATABASE=Sono S20 ++ ID_MODEL_FROM_DATABASE=Parhelia (Sono S20) + + pci:v0000102Bd00000528sv0000102Bsd00001060* +- ID_MODEL_FROM_DATABASE=PJ-30L ++ ID_MODEL_FROM_DATABASE=Parhelia (PJ-30L) + + pci:v0000102Bd00000528sv0000102Bsd00001070* +- ID_MODEL_FROM_DATABASE=PJ-40L ++ ID_MODEL_FROM_DATABASE=Parhelia (PJ-40L) + + pci:v0000102Bd00000528sv0000102Bsd00001421* +- ID_MODEL_FROM_DATABASE=MED5mp ++ ID_MODEL_FROM_DATABASE=Parhelia (MED5mp) + + pci:v0000102Bd00000528sv0000102Bsd00001431* +- ID_MODEL_FROM_DATABASE=MED3mp-DVI ++ ID_MODEL_FROM_DATABASE=Parhelia (MED3mp-DVI) + + pci:v0000102Bd00000528sv0000102Bsd00001451* +- ID_MODEL_FROM_DATABASE=MED5mp-DVI ++ ID_MODEL_FROM_DATABASE=Parhelia (MED5mp-DVI) + + pci:v0000102Bd00000528sv0000102Bsd00001491* +- ID_MODEL_FROM_DATABASE=MED2mp-DVI ++ ID_MODEL_FROM_DATABASE=Parhelia (MED2mp-DVI) + + pci:v0000102Bd00000528sv0000102Bsd000014B1* +- ID_MODEL_FROM_DATABASE=MED3mp-DVI ++ ID_MODEL_FROM_DATABASE=Parhelia (MED3mp-DVI) + + pci:v0000102Bd00000528sv0000102Bsd000014C1* +- ID_MODEL_FROM_DATABASE=MED5mp-DVI ++ ID_MODEL_FROM_DATABASE=Parhelia (MED5mp-DVI) + + pci:v0000102Bd00000528sv0000102Bsd000014E1* +- ID_MODEL_FROM_DATABASE=Parhelia PCI 256MB ++ ID_MODEL_FROM_DATABASE=Parhelia (PCI 256MB) + + pci:v0000102Bd00000528sv0000102Bsd000014F1* +- ID_MODEL_FROM_DATABASE=Parhelia Precision SGT ++ ID_MODEL_FROM_DATABASE=Parhelia (Precision SGT) + + pci:v0000102Bd00000528sv0000102Bsd00001501* +- ID_MODEL_FROM_DATABASE=ATC-4MP ++ ID_MODEL_FROM_DATABASE=Parhelia (ATC-4MP) + + pci:v0000102Bd00000528sv0000102Bsd00001511* +- ID_MODEL_FROM_DATABASE=ATC-4MP ++ ID_MODEL_FROM_DATABASE=Parhelia (ATC-4MP) + + pci:v0000102Bd00000528sv0000102Bsd00001521* +- ID_MODEL_FROM_DATABASE=TheatreVUE T30 ++ ID_MODEL_FROM_DATABASE=Parhelia (TheatreVUE T30) + + pci:v0000102Bd00000528sv0000102Bsd00001531* +- ID_MODEL_FROM_DATABASE=TheatreVUE T20 ++ ID_MODEL_FROM_DATABASE=Parhelia (TheatreVUE T20) + + pci:v0000102Bd00000528sv0000102Bsd00001541* +- ID_MODEL_FROM_DATABASE=MED2mp-DVI ++ ID_MODEL_FROM_DATABASE=Parhelia (MED2mp-DVI) + + pci:v0000102Bd00000528sv0000102Bsd00001551* +- ID_MODEL_FROM_DATABASE=MED3mp-DVI ++ ID_MODEL_FROM_DATABASE=Parhelia (MED3mp-DVI) + + pci:v0000102Bd00000528sv0000102Bsd00001561* +- ID_MODEL_FROM_DATABASE=MED5mp-DVI ++ ID_MODEL_FROM_DATABASE=Parhelia (MED5mp-DVI) + + pci:v0000102Bd00000528sv0000102Bsd00001571* +- ID_MODEL_FROM_DATABASE=Parhelia DL256 PCI ++ ID_MODEL_FROM_DATABASE=Parhelia (DL256 PCI) + + pci:v0000102Bd00000528sv0000102Bsd00001591* +- ID_MODEL_FROM_DATABASE=Parhelia Precision SDT ++ ID_MODEL_FROM_DATABASE=Parhelia (Precision SDT) + + pci:v0000102Bd00000528sv0000102Bsd000015A1* +- ID_MODEL_FROM_DATABASE=MED4mp-DVI ++ ID_MODEL_FROM_DATABASE=Parhelia (MED4mp-DVI) + + pci:v0000102Bd00000528sv0000102Bsd00002011* +- ID_MODEL_FROM_DATABASE=Parhelia HR256 ++ ID_MODEL_FROM_DATABASE=Parhelia (HR256) + + pci:v0000102Bd00000528sv0000102Bsd00002021* +- ID_MODEL_FROM_DATABASE=QID Pro ++ ID_MODEL_FROM_DATABASE=Parhelia (QID Pro) + + pci:v0000102Bd00000528sv0000102Bsd00002061* +- ID_MODEL_FROM_DATABASE=PJ-40LP ++ ID_MODEL_FROM_DATABASE=Parhelia (PJ-40LP) + + pci:v0000102Bd00000528sv0000102Bsd00002081* +- ID_MODEL_FROM_DATABASE=EWS Quad ++ ID_MODEL_FROM_DATABASE=Parhelia (EWS Quad) + + pci:v0000102Bd00000528sv0000102Bsd00002411* +- ID_MODEL_FROM_DATABASE=PPX-OUT8 ++ ID_MODEL_FROM_DATABASE=Parhelia (PPX-OUT8) + + pci:v0000102Bd00000528sv0000102Bsd00002421* +- ID_MODEL_FROM_DATABASE=VPX-OUT8 ++ ID_MODEL_FROM_DATABASE=Parhelia (VPX-OUT8) + + pci:v0000102Bd00000528sv0000102Bsd00002441* +- ID_MODEL_FROM_DATABASE=PPX-OUT4 ++ ID_MODEL_FROM_DATABASE=Parhelia (PPX-OUT4) + + pci:v0000102Bd00000528sv0000102Bsd00002451* +- ID_MODEL_FROM_DATABASE=VPX-OUT4 ++ ID_MODEL_FROM_DATABASE=Parhelia (VPX-OUT4) + + pci:v0000102Bd00000528sv0000102Bsd00002491* +- ID_MODEL_FROM_DATABASE=LPX-OUT4 ++ ID_MODEL_FROM_DATABASE=Parhelia (LPX-OUT4) + + pci:v0000102Bd00000530* + ID_MODEL_FROM_DATABASE=MGA G200EV +@@ -12261,37 +12261,37 @@ pci:v0000102Bd00000532* + ID_MODEL_FROM_DATABASE=MGA G200eW WPCM450 + + pci:v0000102Bd00000532sv00001028sd00000235* +- ID_MODEL_FROM_DATABASE=PowerEdge R710 MGA G200eW WPCM450 ++ ID_MODEL_FROM_DATABASE=MGA G200eW WPCM450 (PowerEdge R710 MGA G200eW WPCM450) + + pci:v0000102Bd00000532sv00001028sd00000236* +- ID_MODEL_FROM_DATABASE=PowerEdge R610 MGA G200eW WPCM450 ++ ID_MODEL_FROM_DATABASE=MGA G200eW WPCM450 (PowerEdge R610 MGA G200eW WPCM450) + + pci:v0000102Bd00000532sv00001028sd00000237* +- ID_MODEL_FROM_DATABASE=PowerEdge T610 MGA G200eW WPCM450 ++ ID_MODEL_FROM_DATABASE=MGA G200eW WPCM450 (PowerEdge T610 MGA G200eW WPCM450) + + pci:v0000102Bd00000532sv00001028sd00000287* +- ID_MODEL_FROM_DATABASE=PowerEdge M610 MGA G200eW WPCM450 ++ ID_MODEL_FROM_DATABASE=MGA G200eW WPCM450 (PowerEdge M610 MGA G200eW WPCM450) + + pci:v0000102Bd00000532sv00001028sd0000028C* +- ID_MODEL_FROM_DATABASE=PowerEdge R410 MGA G200eW WPCM450 ++ ID_MODEL_FROM_DATABASE=MGA G200eW WPCM450 (PowerEdge R410 MGA G200eW WPCM450) + + pci:v0000102Bd00000532sv00001028sd0000028D* +- ID_MODEL_FROM_DATABASE=PowerEdge T410 MGA G200eW WPCM450 ++ ID_MODEL_FROM_DATABASE=MGA G200eW WPCM450 (PowerEdge T410 MGA G200eW WPCM450) + + pci:v0000102Bd00000532sv00001028sd0000029C* +- ID_MODEL_FROM_DATABASE=PowerEdge M710 MGA G200eW WPCM450 ++ ID_MODEL_FROM_DATABASE=MGA G200eW WPCM450 (PowerEdge M710 MGA G200eW WPCM450) + + pci:v0000102Bd00000532sv00001028sd000002A4* +- ID_MODEL_FROM_DATABASE=PowerEdge T310 MGA G200eW WPCM450 ++ ID_MODEL_FROM_DATABASE=MGA G200eW WPCM450 (PowerEdge T310 MGA G200eW WPCM450) + + pci:v0000102Bd00000532sv000015D9sd0000A811* +- ID_MODEL_FROM_DATABASE=H8DGU ++ ID_MODEL_FROM_DATABASE=MGA G200eW WPCM450 (H8DGU) + + pci:v0000102Bd00000533* + ID_MODEL_FROM_DATABASE=MGA G200EH + + pci:v0000102Bd00000533sv0000103Csd00003381* +- ID_MODEL_FROM_DATABASE=iLO4 ++ ID_MODEL_FROM_DATABASE=MGA G200EH (iLO4) + + pci:v0000102Bd00000534* + ID_MODEL_FROM_DATABASE=G200eR2 +@@ -12300,40 +12300,40 @@ pci:v0000102Bd00000540* + ID_MODEL_FROM_DATABASE=M91XX + + pci:v0000102Bd00000540sv0000102Bsd00002080* +- ID_MODEL_FROM_DATABASE=M9140 LP PCIe x16 ++ ID_MODEL_FROM_DATABASE=M91XX (M9140 LP PCIe x16) + + pci:v0000102Bd00000540sv0000102Bsd000020C0* +- ID_MODEL_FROM_DATABASE=Xenia ++ ID_MODEL_FROM_DATABASE=M91XX (Xenia) + + pci:v0000102Bd00000540sv0000102Bsd000020C1* +- ID_MODEL_FROM_DATABASE=Xenia Pro ++ ID_MODEL_FROM_DATABASE=M91XX (Xenia Pro) + + pci:v0000102Bd00000540sv0000102Bsd00002100* +- ID_MODEL_FROM_DATABASE=M9120 PCIe x16 ++ ID_MODEL_FROM_DATABASE=M91XX (M9120 PCIe x16) + + pci:v0000102Bd00000540sv0000102Bsd00002140* +- ID_MODEL_FROM_DATABASE=M9125 PCIe x16 ++ ID_MODEL_FROM_DATABASE=M91XX (M9125 PCIe x16) + + pci:v0000102Bd00000540sv0000102Bsd00002180* +- ID_MODEL_FROM_DATABASE=M9120 Plus LP PCIe x16 ++ ID_MODEL_FROM_DATABASE=M91XX (M9120 Plus LP PCIe x16) + + pci:v0000102Bd00000540sv0000102Bsd000021C0* +- ID_MODEL_FROM_DATABASE=M9120 Plus LP PCIe x1 ++ ID_MODEL_FROM_DATABASE=M91XX (M9120 Plus LP PCIe x1) + + pci:v0000102Bd00000540sv0000102Bsd00002200* +- ID_MODEL_FROM_DATABASE=VDA1164 Output Board ++ ID_MODEL_FROM_DATABASE=M91XX (VDA1164 Output Board) + + pci:v0000102Bd00000540sv0000102Bsd00002240* +- ID_MODEL_FROM_DATABASE=M9148 LP PCIe x16 ++ ID_MODEL_FROM_DATABASE=M91XX (M9148 LP PCIe x16) + + pci:v0000102Bd00000540sv0000102Bsd00002241* +- ID_MODEL_FROM_DATABASE=M9138 LP PCIe x16 ++ ID_MODEL_FROM_DATABASE=M91XX (M9138 LP PCIe x16) + + pci:v0000102Bd00000540sv0000102Bsd00002280* +- ID_MODEL_FROM_DATABASE=M9188 ATX PCIe x16 ++ ID_MODEL_FROM_DATABASE=M91XX (M9188 ATX PCIe x16) + + pci:v0000102Bd00000540sv0000102Bsd000022C0* +- ID_MODEL_FROM_DATABASE=M9128 LP PCIe x16 ++ ID_MODEL_FROM_DATABASE=M91XX (M9128 LP PCIe x16) + + pci:v0000102Bd00000D10* + ID_MODEL_FROM_DATABASE=MGA Ultima/Impression +@@ -12342,34 +12342,34 @@ pci:v0000102Bd00001000* + ID_MODEL_FROM_DATABASE=MGA G100 [Productiva] + + pci:v0000102Bd00001000sv0000102Bsd0000FF01* +- ID_MODEL_FROM_DATABASE=Productiva G100 ++ ID_MODEL_FROM_DATABASE=MGA G100 [Productiva] (Productiva G100) + + pci:v0000102Bd00001000sv0000102Bsd0000FF05* +- ID_MODEL_FROM_DATABASE=Productiva G100 Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G100 [Productiva] (Productiva G100 Multi-Monitor) + + pci:v0000102Bd00001001* + ID_MODEL_FROM_DATABASE=MGA G100 [Productiva] AGP + + pci:v0000102Bd00001001sv0000102Bsd00001001* +- ID_MODEL_FROM_DATABASE=MGA-G100 AGP ++ ID_MODEL_FROM_DATABASE=MGA G100 [Productiva] AGP (MGA-G100 AGP) + + pci:v0000102Bd00001001sv0000102Bsd0000FF00* +- ID_MODEL_FROM_DATABASE=MGA-G100 AGP ++ ID_MODEL_FROM_DATABASE=MGA G100 [Productiva] AGP (MGA-G100 AGP) + + pci:v0000102Bd00001001sv0000102Bsd0000FF01* +- ID_MODEL_FROM_DATABASE=MGA-G100 Productiva AGP ++ ID_MODEL_FROM_DATABASE=MGA G100 [Productiva] AGP (MGA-G100 Productiva AGP) + + pci:v0000102Bd00001001sv0000102Bsd0000FF03* +- ID_MODEL_FROM_DATABASE=Millennium G100 AGP ++ ID_MODEL_FROM_DATABASE=MGA G100 [Productiva] AGP (Millennium G100 AGP) + + pci:v0000102Bd00001001sv0000102Bsd0000FF04* +- ID_MODEL_FROM_DATABASE=MGA-G100 AGP ++ ID_MODEL_FROM_DATABASE=MGA G100 [Productiva] AGP (MGA-G100 AGP) + + pci:v0000102Bd00001001sv0000102Bsd0000FF05* +- ID_MODEL_FROM_DATABASE=MGA-G100 Productiva AGP Multi-Monitor ++ ID_MODEL_FROM_DATABASE=MGA G100 [Productiva] AGP (MGA-G100 Productiva AGP Multi-Monitor) + + pci:v0000102Bd00001001sv0000110Asd0000001E* +- ID_MODEL_FROM_DATABASE=MGA-G100 AGP ++ ID_MODEL_FROM_DATABASE=MGA G100 [Productiva] AGP (MGA-G100 AGP) + + pci:v0000102Bd00002007* + ID_MODEL_FROM_DATABASE=MGA Mistral +@@ -12378,163 +12378,163 @@ pci:v0000102Bd00002527* + ID_MODEL_FROM_DATABASE=Millennium G550 + + pci:v0000102Bd00002527sv0000102Bsd00000F42* +- ID_MODEL_FROM_DATABASE=Matrox G550 Low Profile PCI ++ ID_MODEL_FROM_DATABASE=Millennium G550 (Matrox G550 Low Profile PCI) + + pci:v0000102Bd00002527sv0000102Bsd00000F83* + ID_MODEL_FROM_DATABASE=Millennium G550 + + pci:v0000102Bd00002527sv0000102Bsd00000F84* +- ID_MODEL_FROM_DATABASE=Millennium G550 Dual Head DDR 32Mb ++ ID_MODEL_FROM_DATABASE=Millennium G550 (Dual Head DDR 32Mb) + + pci:v0000102Bd00002527sv0000102Bsd00001E41* + ID_MODEL_FROM_DATABASE=Millennium G550 + + pci:v0000102Bd00002527sv0000102Bsd00002300* +- ID_MODEL_FROM_DATABASE=Millennium G550 LP PCIE ++ ID_MODEL_FROM_DATABASE=Millennium G550 (LP PCIE) + + pci:v0000102Bd00002537* + ID_MODEL_FROM_DATABASE=Millenium P650/P750 + + pci:v0000102Bd00002537sv0000102Bsd00001820* +- ID_MODEL_FROM_DATABASE=Millennium P750 64MB ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (Millennium P750 64MB) + + pci:v0000102Bd00002537sv0000102Bsd00001830* +- ID_MODEL_FROM_DATABASE=Millennium P650 64MB ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (Millennium P650 64MB) + + pci:v0000102Bd00002537sv0000102Bsd00001850* +- ID_MODEL_FROM_DATABASE=RAD2mp ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (RAD2mp) + + pci:v0000102Bd00002537sv0000102Bsd00001860* +- ID_MODEL_FROM_DATABASE=RAD3mp ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (RAD3mp) + + pci:v0000102Bd00002537sv0000102Bsd00001880* +- ID_MODEL_FROM_DATABASE=Sono S10 ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (Sono S10) + + pci:v0000102Bd00002537sv0000102Bsd00001C10* +- ID_MODEL_FROM_DATABASE=QID 128MB ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (QID 128MB) + + pci:v0000102Bd00002537sv0000102Bsd00002811* +- ID_MODEL_FROM_DATABASE=Millennium P650 Low-profile PCI 64MB ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (Millennium P650 Low-profile PCI 64MB) + + pci:v0000102Bd00002537sv0000102Bsd00002821* +- ID_MODEL_FROM_DATABASE=Millenium P650 Low-profile PCI ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (Millenium P650 Low-profile PCI) + + pci:v0000102Bd00002537sv0000102Bsd00002841* +- ID_MODEL_FROM_DATABASE=RAD PCI ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (RAD PCI) + + pci:v0000102Bd00002537sv0000102Bsd00002851* +- ID_MODEL_FROM_DATABASE=Spectrum PCI ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (Spectrum PCI) + + pci:v0000102Bd00002537sv0000102Bsd00002871* +- ID_MODEL_FROM_DATABASE=EpicA TC2 ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (EpicA TC2) + + pci:v0000102Bd00002537sv0000102Bsd00002C11* +- ID_MODEL_FROM_DATABASE=QID Low-profile PCI ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (QID Low-profile PCI) + + pci:v0000102Bd00002537sv0000102Bsd00002C21* +- ID_MODEL_FROM_DATABASE=QID LP PCI LW ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (QID LP PCI LW) + + pci:v0000102Bd00002537sv0000102Bsd00002C31* +- ID_MODEL_FROM_DATABASE=QID LP PCI ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (QID LP PCI) + + pci:v0000102Bd00002537sv0000102Bsd00002C41* +- ID_MODEL_FROM_DATABASE=EpicA TC4 ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (EpicA TC4) + + pci:v0000102Bd00002537sv0000102Bsd00003001* +- ID_MODEL_FROM_DATABASE=Extio F1400 ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (Extio F1400) + + pci:v0000102Bd00002537sv0000102Bsd00003011* +- ID_MODEL_FROM_DATABASE=Extio F1220 ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (Extio F1220) + + pci:v0000102Bd00002537sv0000102Bsd00003041* +- ID_MODEL_FROM_DATABASE=RG-200DL ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (RG-200DL) + + pci:v0000102Bd00002537sv0000102Bsd00003051* +- ID_MODEL_FROM_DATABASE=RG-400SL ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (RG-400SL) + + pci:v0000102Bd00002537sv0000102Bsd00003061* +- ID_MODEL_FROM_DATABASE=Extio F1420 ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (Extio F1420) + + pci:v0000102Bd00002537sv0000102Bsd00003081* +- ID_MODEL_FROM_DATABASE=Extio F1240 ++ ID_MODEL_FROM_DATABASE=Millenium P650/P750 (Extio F1240) + + pci:v0000102Bd00002538* + ID_MODEL_FROM_DATABASE=Millenium P650 PCIe + + pci:v0000102Bd00002538sv0000102Bsd00000847* +- ID_MODEL_FROM_DATABASE=RAD PCIe ++ ID_MODEL_FROM_DATABASE=Millenium P650 PCIe (RAD PCIe) + + pci:v0000102Bd00002538sv0000102Bsd000008C7* +- ID_MODEL_FROM_DATABASE=Millennium P650 PCIe 128MB ++ ID_MODEL_FROM_DATABASE=Millenium P650 PCIe (Millennium P650 PCIe 128MB) + + pci:v0000102Bd00002538sv0000102Bsd00000907* +- ID_MODEL_FROM_DATABASE=Millennium P650 PCIe 64MB ++ ID_MODEL_FROM_DATABASE=Millenium P650 PCIe (Millennium P650 PCIe 64MB) + + pci:v0000102Bd00002538sv0000102Bsd00000947* +- ID_MODEL_FROM_DATABASE=Parhelia APVe ++ ID_MODEL_FROM_DATABASE=Millenium P650 PCIe (Parhelia APVe) + + pci:v0000102Bd00002538sv0000102Bsd00000987* +- ID_MODEL_FROM_DATABASE=ATC PCIe 4MP ++ ID_MODEL_FROM_DATABASE=Millenium P650 PCIe (ATC PCIe 4MP) + + pci:v0000102Bd00002538sv0000102Bsd00001047* +- ID_MODEL_FROM_DATABASE=Millennium P650 LP PCIe 128MB ++ ID_MODEL_FROM_DATABASE=Millenium P650 PCIe (Millennium P650 LP PCIe 128MB) + + pci:v0000102Bd00002538sv0000102Bsd00001087* +- ID_MODEL_FROM_DATABASE=Millennium P650 LP PCIe 64MB ++ ID_MODEL_FROM_DATABASE=Millenium P650 PCIe (Millennium P650 LP PCIe 64MB) + + pci:v0000102Bd00002538sv0000102Bsd00001801* +- ID_MODEL_FROM_DATABASE=Millenium P650 PCIe x1 ++ ID_MODEL_FROM_DATABASE=Millenium P650 PCIe (x1) + + pci:v0000102Bd00002538sv0000102Bsd00002538* +- ID_MODEL_FROM_DATABASE=Parhelia APVe ++ ID_MODEL_FROM_DATABASE=Millenium P650 PCIe (Parhelia APVe) + + pci:v0000102Bd00002538sv0000102Bsd00003007* +- ID_MODEL_FROM_DATABASE=QID Low-profile PCIe ++ ID_MODEL_FROM_DATABASE=Millenium P650 PCIe (QID Low-profile PCIe) + + pci:v0000102Bd00002538sv0000102Bsd00003087* +- ID_MODEL_FROM_DATABASE=Aurora VX3mp ++ ID_MODEL_FROM_DATABASE=Millenium P650 PCIe (Aurora VX3mp) + + pci:v0000102Bd00002538sv0000102Bsd000030C7* +- ID_MODEL_FROM_DATABASE=QID LP PCIe ++ ID_MODEL_FROM_DATABASE=Millenium P650 PCIe (QID LP PCIe) + + pci:v0000102Bd00002539* + ID_MODEL_FROM_DATABASE=Millennium P690 + + pci:v0000102Bd00002539sv0000102Bsd00000040* +- ID_MODEL_FROM_DATABASE=Millenium P690 PCIe x16 ++ ID_MODEL_FROM_DATABASE=Millennium P690 (Millenium P690 PCIe x16) + + pci:v0000102Bd00002539sv0000102Bsd00000042* +- ID_MODEL_FROM_DATABASE=ONYX ++ ID_MODEL_FROM_DATABASE=Millennium P690 (ONYX) + + pci:v0000102Bd00002539sv0000102Bsd00000043* +- ID_MODEL_FROM_DATABASE=SPECTRA ++ ID_MODEL_FROM_DATABASE=Millennium P690 (SPECTRA) + + pci:v0000102Bd00002539sv0000102Bsd00000080* +- ID_MODEL_FROM_DATABASE=Millenium P690 Plus LP PCIe x16 ++ ID_MODEL_FROM_DATABASE=Millennium P690 (Millenium P690 Plus LP PCIe x16) + + pci:v0000102Bd00002539sv0000102Bsd00000081* +- ID_MODEL_FROM_DATABASE=Millenium P690 LP PCIe x16 ++ ID_MODEL_FROM_DATABASE=Millennium P690 (Millenium P690 LP PCIe x16) + + pci:v0000102Bd00002539sv0000102Bsd00000082* +- ID_MODEL_FROM_DATABASE=RAD LPX PCIe x16 ++ ID_MODEL_FROM_DATABASE=Millennium P690 (RAD LPX PCIe x16) + + pci:v0000102Bd00002539sv0000102Bsd000000C0* +- ID_MODEL_FROM_DATABASE=Millenium P690 Plus LP PCI ++ ID_MODEL_FROM_DATABASE=Millennium P690 (Millenium P690 Plus LP PCI) + + pci:v0000102Bd00002539sv0000102Bsd000000C2* +- ID_MODEL_FROM_DATABASE=Millenium P690 LP PCI ++ ID_MODEL_FROM_DATABASE=Millennium P690 (Millenium P690 LP PCI) + + pci:v0000102Bd00002539sv0000102Bsd000000C3* +- ID_MODEL_FROM_DATABASE=RAD LPX PCI ++ ID_MODEL_FROM_DATABASE=Millennium P690 (RAD LPX PCI) + + pci:v0000102Bd00002539sv0000102Bsd00000101* +- ID_MODEL_FROM_DATABASE=Millenium P690 PCI ++ ID_MODEL_FROM_DATABASE=Millennium P690 (Millenium P690 PCI) + + pci:v0000102Bd00002539sv0000102Bsd00000140* +- ID_MODEL_FROM_DATABASE=Millenium P690 LP PCIe x1 ++ ID_MODEL_FROM_DATABASE=Millennium P690 (Millenium P690 LP PCIe x1) + + pci:v0000102Bd00002539sv0000102Bsd00000180* +- ID_MODEL_FROM_DATABASE=Display Wall IP Decode 128 MB ++ ID_MODEL_FROM_DATABASE=Millennium P690 (Display Wall IP Decode 128 MB) + + pci:v0000102Bd00004164* + ID_MODEL_FROM_DATABASE=Morphis QxT frame grabber +@@ -12558,43 +12558,43 @@ pci:v0000102Bd0000475D* + ID_MODEL_FROM_DATABASE=Vio frame grabber family + + pci:v0000102Bd0000475Dsv0000102Bsd00004B90* +- ID_MODEL_FROM_DATABASE=Vio Duo frame grabber (single channel) ++ ID_MODEL_FROM_DATABASE=Vio frame grabber family (Vio Duo frame grabber (single channel)) + + pci:v0000102Bd0000475Dsv0000102Bsd00004B91* +- ID_MODEL_FROM_DATABASE=Vio Duo frame grabber ++ ID_MODEL_FROM_DATABASE=Vio frame grabber family (Vio Duo frame grabber) + + pci:v0000102Bd0000475Dsv0000102Bsd00004B92* +- ID_MODEL_FROM_DATABASE=Vio Analog frame grabber ++ ID_MODEL_FROM_DATABASE=Vio frame grabber family (Vio Analog frame grabber) + + pci:v0000102Bd0000475Dsv0000102Bsd00004B93* +- ID_MODEL_FROM_DATABASE=Vio SDI Frame Grabber ++ ID_MODEL_FROM_DATABASE=Vio frame grabber family (Vio SDI Frame Grabber) + + pci:v0000102Bd0000475Dsv0000102Bsd00004B94* +- ID_MODEL_FROM_DATABASE=Vio DVI-A frame grabber ++ ID_MODEL_FROM_DATABASE=Vio frame grabber family (Vio DVI-A frame grabber) + + pci:v0000102Bd0000475F* + ID_MODEL_FROM_DATABASE=Solios (single-Full) CL frame grabber + + pci:v0000102Bd0000475Fsv0000102Bsd0000475F* +- ID_MODEL_FROM_DATABASE=Solios eCL/XCL-F frame grabber ++ ID_MODEL_FROM_DATABASE=Solios (single-Full) CL frame grabber (Solios eCL/XCL-F frame grabber) + + pci:v0000102Bd0000475Fsv0000102Bsd00004D5F* +- ID_MODEL_FROM_DATABASE=Solios eV-CL (single-Full) frame grabber ++ ID_MODEL_FROM_DATABASE=Solios (single-Full) CL frame grabber (Solios eV-CL (single-Full) frame grabber) + + pci:v0000102Bd0000475Fsv0000102Bsd00004E5F* +- ID_MODEL_FROM_DATABASE=Solios eM-CL (single-Full) frame grabber ++ ID_MODEL_FROM_DATABASE=Solios (single-Full) CL frame grabber (Solios eM-CL (single-Full) frame grabber) + + pci:v0000102Bd000047A1* + ID_MODEL_FROM_DATABASE=Solios eA/XA frame grabber + + pci:v0000102Bd000047A1sv0000102Bsd00004BE0* +- ID_MODEL_FROM_DATABASE=Solios eA/XA (single) frame grabber ++ ID_MODEL_FROM_DATABASE=Solios eA/XA frame grabber (Solios eA/XA (single) frame grabber) + + pci:v0000102Bd000047A1sv0000102Bsd00004BE1* +- ID_MODEL_FROM_DATABASE=Solios eA/XA (dual) frame grabber ++ ID_MODEL_FROM_DATABASE=Solios eA/XA frame grabber (Solios eA/XA (dual) frame grabber) + + pci:v0000102Bd000047A1sv0000102Bsd00004BE2* +- ID_MODEL_FROM_DATABASE=Solios eA/XA (quad) frame grabber ++ ID_MODEL_FROM_DATABASE=Solios eA/XA frame grabber (Solios eA/XA (quad) frame grabber) + + pci:v0000102Bd000047A2* + ID_MODEL_FROM_DATABASE=Solios COM port +@@ -12603,25 +12603,25 @@ pci:v0000102Bd000047C1* + ID_MODEL_FROM_DATABASE=Solios (dual-Base/single-Medium) CL frame grabber + + pci:v0000102Bd000047C1sv0000102Bsd00000000* +- ID_MODEL_FROM_DATABASE=Solios frame grabber ++ ID_MODEL_FROM_DATABASE=Solios (dual-Base/single-Medium) CL frame grabber (Solios frame grabber) + + pci:v0000102Bd000047C1sv0000102Bsd00004B80* +- ID_MODEL_FROM_DATABASE=Solios eCL/XCL (single-Medium) frame grabber ++ ID_MODEL_FROM_DATABASE=Solios (dual-Base/single-Medium) CL frame grabber (Solios eCL/XCL (single-Medium) frame grabber) + + pci:v0000102Bd000047C1sv0000102Bsd00004B81* +- ID_MODEL_FROM_DATABASE=Solios eCL/XCL (dual-Base) frame grabber ++ ID_MODEL_FROM_DATABASE=Solios (dual-Base/single-Medium) CL frame grabber (Solios eCL/XCL (dual-Base) frame grabber) + + pci:v0000102Bd000047C1sv0000102Bsd00004D80* +- ID_MODEL_FROM_DATABASE=Solios eV-CL (single-Medium) frame grabber ++ ID_MODEL_FROM_DATABASE=Solios (dual-Base/single-Medium) CL frame grabber (Solios eV-CL (single-Medium) frame grabber) + + pci:v0000102Bd000047C1sv0000102Bsd00004D81* +- ID_MODEL_FROM_DATABASE=Solios eV-CL (dual-Base) frame grabber ++ ID_MODEL_FROM_DATABASE=Solios (dual-Base/single-Medium) CL frame grabber (Solios eV-CL (dual-Base) frame grabber) + + pci:v0000102Bd000047C1sv0000102Bsd00004E80* +- ID_MODEL_FROM_DATABASE=Solios eM-CL (single-Medium) frame grabber ++ ID_MODEL_FROM_DATABASE=Solios (dual-Base/single-Medium) CL frame grabber (Solios eM-CL (single-Medium) frame grabber) + + pci:v0000102Bd000047C1sv0000102Bsd00004E81* +- ID_MODEL_FROM_DATABASE=Solios eM-CL (dual-Base) frame grabber ++ ID_MODEL_FROM_DATABASE=Solios (dual-Base/single-Medium) CL frame grabber (Solios eM-CL (dual-Base) frame grabber) + + pci:v0000102Bd000047C2* + ID_MODEL_FROM_DATABASE=Solios COM port +@@ -12630,34 +12630,34 @@ pci:v0000102Bd00004949* + ID_MODEL_FROM_DATABASE=Radient frame grabber family + + pci:v0000102Bd00004949sv0000102Bsd00000010* +- ID_MODEL_FROM_DATABASE=Radient eCL (Single-full) frame grabber ++ ID_MODEL_FROM_DATABASE=Radient frame grabber family (Radient eCL (Single-full) frame grabber) + + pci:v0000102Bd00004949sv0000102Bsd00000011* +- ID_MODEL_FROM_DATABASE=Radient eCLV (Single-full) frame grabber ++ ID_MODEL_FROM_DATABASE=Radient frame grabber family (Radient eCLV (Single-full) frame grabber) + + pci:v0000102Bd00004949sv0000102Bsd00000020* +- ID_MODEL_FROM_DATABASE=Radient eCL (Dual-base) frame grabber ++ ID_MODEL_FROM_DATABASE=Radient frame grabber family (Radient eCL (Dual-base) frame grabber) + + pci:v0000102Bd00004949sv0000102Bsd00000030* +- ID_MODEL_FROM_DATABASE=Radient eCL (Dual-full) frame grabber ++ ID_MODEL_FROM_DATABASE=Radient frame grabber family (Radient eCL (Dual-full) frame grabber) + + pci:v0000102Bd00004949sv0000102Bsd00000040* +- ID_MODEL_FROM_DATABASE=Radient eCL (Quad-base) frame grabber ++ ID_MODEL_FROM_DATABASE=Radient frame grabber family (Radient eCL (Quad-base) frame grabber) + + pci:v0000102Bd00004949sv0000102Bsd00000050* +- ID_MODEL_FROM_DATABASE=Radient eCL (Golden) frame grabber ++ ID_MODEL_FROM_DATABASE=Radient frame grabber family (Radient eCL (Golden) frame grabber) + + pci:v0000102Bd00004949sv0000102Bsd00001010* +- ID_MODEL_FROM_DATABASE=Radient eV-CXP (quad CXP-6) frame grabber ++ ID_MODEL_FROM_DATABASE=Radient frame grabber family (Radient eV-CXP (quad CXP-6) frame grabber) + + pci:v0000102Bd00004949sv0000102Bsd00001015* +- ID_MODEL_FROM_DATABASE=Radient eV-CXP (dual CXP-6) frame grabber ++ ID_MODEL_FROM_DATABASE=Radient frame grabber family (Radient eV-CXP (dual CXP-6) frame grabber) + + pci:v0000102Bd00004949sv0000102Bsd00001020* +- ID_MODEL_FROM_DATABASE=Radient eV-CXP (quad CXP-3) frame grabber ++ ID_MODEL_FROM_DATABASE=Radient frame grabber family (Radient eV-CXP (quad CXP-3) frame grabber) + + pci:v0000102Bd00004949sv0000102Bsd00001050* +- ID_MODEL_FROM_DATABASE=Radient eV-CXP (Golden) frame grabber ++ ID_MODEL_FROM_DATABASE=Radient frame grabber family (Radient eV-CXP (Golden) frame grabber) + + pci:v0000102Bd00004CDC* + ID_MODEL_FROM_DATABASE=Morphis JPEG2000 accelerator +@@ -12687,22 +12687,22 @@ pci:v0000102Cd000000C0sv0000102Csd000000C0* + ID_MODEL_FROM_DATABASE=F69000 HiQVideo + + pci:v0000102Cd000000C0sv00004C53sd00001000* +- ID_MODEL_FROM_DATABASE=CC7/CR7/CP7/VC7/VP7/VR7 mainboard ++ ID_MODEL_FROM_DATABASE=F69000 HiQVideo (CC7/CR7/CP7/VC7/VP7/VR7 mainboard) + + pci:v0000102Cd000000C0sv00004C53sd00001010* +- ID_MODEL_FROM_DATABASE=CP5/CR6 mainboard ++ ID_MODEL_FROM_DATABASE=F69000 HiQVideo (CP5/CR6 mainboard) + + pci:v0000102Cd000000C0sv00004C53sd00001020* +- ID_MODEL_FROM_DATABASE=VR6 mainboard ++ ID_MODEL_FROM_DATABASE=F69000 HiQVideo (VR6 mainboard) + + pci:v0000102Cd000000C0sv00004C53sd00001030* +- ID_MODEL_FROM_DATABASE=PC5 mainboard ++ ID_MODEL_FROM_DATABASE=F69000 HiQVideo (PC5 mainboard) + + pci:v0000102Cd000000C0sv00004C53sd00001050* +- ID_MODEL_FROM_DATABASE=CT7 mainboard ++ ID_MODEL_FROM_DATABASE=F69000 HiQVideo (CT7 mainboard) + + pci:v0000102Cd000000C0sv00004C53sd00001051* +- ID_MODEL_FROM_DATABASE=CE7 mainboard ++ ID_MODEL_FROM_DATABASE=F69000 HiQVideo (CE7 mainboard) + + pci:v0000102Cd000000D0* + ID_MODEL_FROM_DATABASE=F65545 +@@ -12723,10 +12723,10 @@ pci:v0000102Cd000000E5* + ID_MODEL_FROM_DATABASE=F65555 HiQVPro + + pci:v0000102Cd000000E5sv00000E11sd0000B049* +- ID_MODEL_FROM_DATABASE=Armada 1700 Laptop Display Controller ++ ID_MODEL_FROM_DATABASE=F65555 HiQVPro (Armada 1700 Laptop Display Controller) + + pci:v0000102Cd000000E5sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Satellite Pro/Satellite ++ ID_MODEL_FROM_DATABASE=F65555 HiQVPro (Satellite Pro/Satellite) + + pci:v0000102Cd000000F0* + ID_MODEL_FROM_DATABASE=F68554 +@@ -12741,16 +12741,16 @@ pci:v0000102Cd00000C30* + ID_MODEL_FROM_DATABASE=F69030 + + pci:v0000102Cd00000C30sv00004C53sd00001000* +- ID_MODEL_FROM_DATABASE=CC7/CR7/CP7/VC7/VP7/VR7 mainboard ++ ID_MODEL_FROM_DATABASE=F69030 (CC7/CR7/CP7/VC7/VP7/VR7 mainboard) + + pci:v0000102Cd00000C30sv00004C53sd00001050* +- ID_MODEL_FROM_DATABASE=CT7 mainboard ++ ID_MODEL_FROM_DATABASE=F69030 (CT7 mainboard) + + pci:v0000102Cd00000C30sv00004C53sd00001051* +- ID_MODEL_FROM_DATABASE=CE7 mainboard ++ ID_MODEL_FROM_DATABASE=F69030 (CE7 mainboard) + + pci:v0000102Cd00000C30sv00004C53sd00001080* +- ID_MODEL_FROM_DATABASE=CT8 mainboard ++ ID_MODEL_FROM_DATABASE=F69030 (CT8 mainboard) + + pci:v0000102D* + ID_VENDOR_FROM_DATABASE=Wyse Technology Inc. +@@ -12894,34 +12894,34 @@ pci:v00001033d00000035* + ID_MODEL_FROM_DATABASE=OHCI USB Controller + + pci:v00001033d00000035sv00001033sd00000035* +- ID_MODEL_FROM_DATABASE=USB Controller ++ ID_MODEL_FROM_DATABASE=OHCI USB Controller (USB Controller) + + pci:v00001033d00000035sv0000103Csd00001293* +- ID_MODEL_FROM_DATABASE=USB add-in card ++ ID_MODEL_FROM_DATABASE=OHCI USB Controller (USB add-in card) + + pci:v00001033d00000035sv0000103Csd00001294* +- ID_MODEL_FROM_DATABASE=USB 2.0 add-in card ++ ID_MODEL_FROM_DATABASE=OHCI USB Controller (USB 2.0 add-in card) + + pci:v00001033d00000035sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=USB ++ ID_MODEL_FROM_DATABASE=OHCI USB Controller (USB) + + pci:v00001033d00000035sv000012EEsd00007000* +- ID_MODEL_FROM_DATABASE=Root Hub ++ ID_MODEL_FROM_DATABASE=OHCI USB Controller (Root Hub) + + pci:v00001033d00000035sv000014C2sd00000105* +- ID_MODEL_FROM_DATABASE=PTI-205N USB 2.0 Host Controller ++ ID_MODEL_FROM_DATABASE=OHCI USB Controller (PTI-205N USB 2.0 Host Controller) + + pci:v00001033d00000035sv00001799sd00000001* +- ID_MODEL_FROM_DATABASE=Root Hub ++ ID_MODEL_FROM_DATABASE=OHCI USB Controller (Root Hub) + + pci:v00001033d00000035sv00001931sd0000000A* +- ID_MODEL_FROM_DATABASE=GlobeTrotter Fusion Quad Lite (PPP data) ++ ID_MODEL_FROM_DATABASE=OHCI USB Controller (GlobeTrotter Fusion Quad Lite (PPP data)) + + pci:v00001033d00000035sv00001931sd0000000B* +- ID_MODEL_FROM_DATABASE=GlobeTrotter Fusion Quad Lite (GSM data) ++ ID_MODEL_FROM_DATABASE=OHCI USB Controller (GlobeTrotter Fusion Quad Lite (GSM data)) + + pci:v00001033d00000035sv0000807Dsd00000035* +- ID_MODEL_FROM_DATABASE=PCI-USB2 (OHCI subsystem) ++ ID_MODEL_FROM_DATABASE=OHCI USB Controller (PCI-USB2 (OHCI subsystem)) + + pci:v00001033d0000003B* + ID_MODEL_FROM_DATABASE=PCI to C-bus Bridge +@@ -12942,28 +12942,28 @@ pci:v00001033d00000067* + ID_MODEL_FROM_DATABASE=PowerVR Neon 250 Chipset + + pci:v00001033d00000067sv00001010sd00000020* +- ID_MODEL_FROM_DATABASE=PowerVR Neon 250 AGP 32Mb ++ ID_MODEL_FROM_DATABASE=PowerVR Neon 250 Chipset (PowerVR Neon 250 AGP 32Mb) + + pci:v00001033d00000067sv00001010sd00000080* +- ID_MODEL_FROM_DATABASE=PowerVR Neon 250 AGP 16Mb ++ ID_MODEL_FROM_DATABASE=PowerVR Neon 250 Chipset (PowerVR Neon 250 AGP 16Mb) + + pci:v00001033d00000067sv00001010sd00000088* +- ID_MODEL_FROM_DATABASE=PowerVR Neon 250 16Mb ++ ID_MODEL_FROM_DATABASE=PowerVR Neon 250 Chipset (PowerVR Neon 250 16Mb) + + pci:v00001033d00000067sv00001010sd00000090* +- ID_MODEL_FROM_DATABASE=PowerVR Neon 250 AGP 16Mb ++ ID_MODEL_FROM_DATABASE=PowerVR Neon 250 Chipset (PowerVR Neon 250 AGP 16Mb) + + pci:v00001033d00000067sv00001010sd00000098* +- ID_MODEL_FROM_DATABASE=PowerVR Neon 250 16Mb ++ ID_MODEL_FROM_DATABASE=PowerVR Neon 250 Chipset (PowerVR Neon 250 16Mb) + + pci:v00001033d00000067sv00001010sd000000A0* +- ID_MODEL_FROM_DATABASE=PowerVR Neon 250 AGP 32Mb ++ ID_MODEL_FROM_DATABASE=PowerVR Neon 250 Chipset (PowerVR Neon 250 AGP 32Mb) + + pci:v00001033d00000067sv00001010sd000000A8* +- ID_MODEL_FROM_DATABASE=PowerVR Neon 250 32Mb ++ ID_MODEL_FROM_DATABASE=PowerVR Neon 250 Chipset (PowerVR Neon 250 32Mb) + + pci:v00001033d00000067sv00001010sd00000120* +- ID_MODEL_FROM_DATABASE=PowerVR Neon 250 AGP 32Mb ++ ID_MODEL_FROM_DATABASE=PowerVR Neon 250 Chipset (PowerVR Neon 250 AGP 32Mb) + + pci:v00001033d00000072* + ID_MODEL_FROM_DATABASE=uPD72874 IEEE1394 OHCI 1.1 3-port PHY-Link Ctrlr +@@ -12972,7 +12972,7 @@ pci:v00001033d00000074* + ID_MODEL_FROM_DATABASE=56k Voice Modem + + pci:v00001033d00000074sv00001033sd00008014* +- ID_MODEL_FROM_DATABASE=RCV56ACF 56k Voice Modem ++ ID_MODEL_FROM_DATABASE=56k Voice Modem (RCV56ACF 56k Voice Modem) + + pci:v00001033d0000009B* + ID_MODEL_FROM_DATABASE=Vrc5476 +@@ -12987,7 +12987,7 @@ pci:v00001033d000000CD* + ID_MODEL_FROM_DATABASE=uPD72870 [Firewarden] IEEE1394a OHCI 1.0 Link/3-port PHY Controller + + pci:v00001033d000000CDsv000012EEsd00008011* +- ID_MODEL_FROM_DATABASE=Root hub ++ ID_MODEL_FROM_DATABASE=uPD72870 [Firewarden] IEEE1394a OHCI 1.0 Link/3-port PHY Controller (Root hub) + + pci:v00001033d000000CE* + ID_MODEL_FROM_DATABASE=uPD72871 [Firewarden] IEEE1394a OHCI 1.0 Link/1-port PHY Controller +@@ -12999,16 +12999,16 @@ pci:v00001033d000000E0* + ID_MODEL_FROM_DATABASE=uPD72010x USB 2.0 Controller + + pci:v00001033d000000E0sv000012EEsd00007001* +- ID_MODEL_FROM_DATABASE=Root hub ++ ID_MODEL_FROM_DATABASE=uPD72010x USB 2.0 Controller (Root hub) + + pci:v00001033d000000E0sv000014C2sd00000205* +- ID_MODEL_FROM_DATABASE=PTI-205N USB 2.0 Host Controller ++ ID_MODEL_FROM_DATABASE=uPD72010x USB 2.0 Controller (PTI-205N USB 2.0 Host Controller) + + pci:v00001033d000000E0sv00001799sd00000002* +- ID_MODEL_FROM_DATABASE=Root Hub ++ ID_MODEL_FROM_DATABASE=uPD72010x USB 2.0 Controller (Root Hub) + + pci:v00001033d000000E0sv0000807Dsd00001043* +- ID_MODEL_FROM_DATABASE=PCI-USB2 (EHCI subsystem) ++ ID_MODEL_FROM_DATABASE=uPD72010x USB 2.0 Controller (PCI-USB2 (EHCI subsystem)) + + pci:v00001033d000000E7* + ID_MODEL_FROM_DATABASE=uPD72873 [Firewarden] IEEE1394a OHCI 1.1 Link/2-port PHY Controller +@@ -13032,22 +13032,22 @@ pci:v00001033d00000194* + ID_MODEL_FROM_DATABASE=uPD720200 USB 3.0 Host Controller + + pci:v00001033d00000194sv00001028sd000004A3* +- ID_MODEL_FROM_DATABASE=Precision M4600 ++ ID_MODEL_FROM_DATABASE=uPD720200 USB 3.0 Host Controller (Precision M4600) + + pci:v00001033d00000194sv00001028sd000004B2* +- ID_MODEL_FROM_DATABASE=Vostro 3350 ++ ID_MODEL_FROM_DATABASE=uPD720200 USB 3.0 Host Controller (Vostro 3350) + + pci:v00001033d00000194sv00001028sd000004DA* +- ID_MODEL_FROM_DATABASE=Vostro 3750 ++ ID_MODEL_FROM_DATABASE=uPD720200 USB 3.0 Host Controller (Vostro 3750) + + pci:v00001033d00000194sv00001043sd00008413* +- ID_MODEL_FROM_DATABASE=P8P67 Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=uPD720200 USB 3.0 Host Controller (P8P67 Deluxe Motherboard) + + pci:v00001033d00000194sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=uPD720200 USB 3.0 Host Controller (QEMU Virtual Machine) + + pci:v00001033d00000194sv00001B96sd00000001* +- ID_MODEL_FROM_DATABASE=USB 3.0 PCIe Card ++ ID_MODEL_FROM_DATABASE=uPD720200 USB 3.0 Host Controller (USB 3.0 PCIe Card) + + pci:v00001033d000001E7* + ID_MODEL_FROM_DATABASE=uPD72873 [Firewarden] IEEE1394a OHCI 1.1 Link/2-port PHY Controller +@@ -13116,7 +13116,7 @@ pci:v00001039d00000182* + ID_MODEL_FROM_DATABASE=182 SATA/RAID Controller + + pci:v00001039d00000182sv00001734sd00001095* +- ID_MODEL_FROM_DATABASE=D2030-A1 ++ ID_MODEL_FROM_DATABASE=182 SATA/RAID Controller (D2030-A1) + + pci:v00001039d00000186* + ID_MODEL_FROM_DATABASE=AHCI Controller (0106) +@@ -13131,7 +13131,7 @@ pci:v00001039d00000200* + ID_MODEL_FROM_DATABASE=5597/5598/6326 VGA + + pci:v00001039d00000200sv00001039sd00000000* +- ID_MODEL_FROM_DATABASE=SiS5597 SVGA (Shared RAM) ++ ID_MODEL_FROM_DATABASE=5597/5598/6326 VGA (SiS5597 SVGA (Shared RAM)) + + pci:v00001039d00000204* + ID_MODEL_FROM_DATABASE=82C204 +@@ -13143,7 +13143,7 @@ pci:v00001039d00000300* + ID_MODEL_FROM_DATABASE=300/305 PCI/AGP VGA Display Adapter + + pci:v00001039d00000300sv0000107Dsd00002720* +- ID_MODEL_FROM_DATABASE=Leadtek WinFast VR300 ++ ID_MODEL_FROM_DATABASE=300/305 PCI/AGP VGA Display Adapter (Leadtek WinFast VR300) + + pci:v00001039d00000310* + ID_MODEL_FROM_DATABASE=315H PCI/AGP VGA Display Adapter +@@ -13239,7 +13239,7 @@ pci:v00001039d00000741* + ID_MODEL_FROM_DATABASE=741/741GX/M741 Host + + pci:v00001039d00000741sv00001849sd00000741* +- ID_MODEL_FROM_DATABASE=K7S41/K7S41GX motherboard ++ ID_MODEL_FROM_DATABASE=741/741GX/M741 Host (K7S41/K7S41GX motherboard) + + pci:v00001039d00000745* + ID_MODEL_FROM_DATABASE=745 Host +@@ -13257,25 +13257,25 @@ pci:v00001039d00000761* + ID_MODEL_FROM_DATABASE=761/M761 Host + + pci:v00001039d00000761sv00001734sd00001099* +- ID_MODEL_FROM_DATABASE=D2030-A1 Motherboard ++ ID_MODEL_FROM_DATABASE=761/M761 Host (D2030-A1 Motherboard) + + pci:v00001039d00000900* + ID_MODEL_FROM_DATABASE=SiS900 PCI Fast Ethernet + + pci:v00001039d00000900sv00001019sd00000A14* +- ID_MODEL_FROM_DATABASE=K7S5A motherboard ++ ID_MODEL_FROM_DATABASE=SiS900 PCI Fast Ethernet (K7S5A motherboard) + + pci:v00001039d00000900sv00001039sd00000900* +- ID_MODEL_FROM_DATABASE=SiS900 10/100 Ethernet Adapter onboard [Asus P4SC-EA] ++ ID_MODEL_FROM_DATABASE=SiS900 PCI Fast Ethernet (SiS900 10/100 Ethernet Adapter onboard [Asus P4SC-EA]) + + pci:v00001039d00000900sv00001043sd00008035* +- ID_MODEL_FROM_DATABASE=CUSI-FX motherboard ++ ID_MODEL_FROM_DATABASE=SiS900 PCI Fast Ethernet (CUSI-FX motherboard) + + pci:v00001039d00000900sv00001043sd000080A7* +- ID_MODEL_FROM_DATABASE=Motherboard P4S800D-X ++ ID_MODEL_FROM_DATABASE=SiS900 PCI Fast Ethernet (Motherboard P4S800D-X) + + pci:v00001039d00000900sv00001462sd00000900* +- ID_MODEL_FROM_DATABASE=MS-6701 motherboard ++ ID_MODEL_FROM_DATABASE=SiS900 PCI Fast Ethernet (MS-6701 motherboard) + + pci:v00001039d00000961* + ID_MODEL_FROM_DATABASE=SiS961 [MuTIOL Media IO] +@@ -13335,22 +13335,22 @@ pci:v00001039d00005513* + ID_MODEL_FROM_DATABASE=5513 IDE Controller + + pci:v00001039d00005513sv00001019sd00000970* +- ID_MODEL_FROM_DATABASE=P6STP-FL motherboard ++ ID_MODEL_FROM_DATABASE=5513 IDE Controller (P6STP-FL motherboard) + + pci:v00001039d00005513sv00001039sd00005513* +- ID_MODEL_FROM_DATABASE=SiS5513 EIDE Controller (A,B step) ++ ID_MODEL_FROM_DATABASE=5513 IDE Controller (SiS5513 EIDE Controller (A,B step)) + + pci:v00001039d00005513sv00001043sd00008035* +- ID_MODEL_FROM_DATABASE=CUSI-FX motherboard ++ ID_MODEL_FROM_DATABASE=5513 IDE Controller (CUSI-FX motherboard) + + pci:v00001039d00005513sv00001462sd00007010* +- ID_MODEL_FROM_DATABASE=MS-6701 motherboard ++ ID_MODEL_FROM_DATABASE=5513 IDE Controller (MS-6701 motherboard) + + pci:v00001039d00005513sv00001631sd00005513* +- ID_MODEL_FROM_DATABASE=GA-8SIML Rev1.0 Motherboard ++ ID_MODEL_FROM_DATABASE=5513 IDE Controller (GA-8SIML Rev1.0 Motherboard) + + pci:v00001039d00005513sv00001734sd00001095* +- ID_MODEL_FROM_DATABASE=D2030-A1 Motherboard ++ ID_MODEL_FROM_DATABASE=5513 IDE Controller (D2030-A1 Motherboard) + + pci:v00001039d00005517* + ID_MODEL_FROM_DATABASE=5517 +@@ -13389,13 +13389,13 @@ pci:v00001039d00006300* + ID_MODEL_FROM_DATABASE=630/730 PCI/AGP VGA Display Adapter + + pci:v00001039d00006300sv00001019sd00000970* +- ID_MODEL_FROM_DATABASE=P6STP-FL motherboard ++ ID_MODEL_FROM_DATABASE=630/730 PCI/AGP VGA Display Adapter (P6STP-FL motherboard) + + pci:v00001039d00006300sv00001043sd00008035* +- ID_MODEL_FROM_DATABASE=CUSI-FX motherboard ++ ID_MODEL_FROM_DATABASE=630/730 PCI/AGP VGA Display Adapter (CUSI-FX motherboard) + + pci:v00001039d00006300sv0000104Dsd000080E2* +- ID_MODEL_FROM_DATABASE=VAIO PCV-J200 ++ ID_MODEL_FROM_DATABASE=630/730 PCI/AGP VGA Display Adapter (VAIO PCV-J200) + + pci:v00001039d00006306* + ID_MODEL_FROM_DATABASE=530/620 PCI/AGP VGA Display Adapter +@@ -13404,49 +13404,49 @@ pci:v00001039d00006325* + ID_MODEL_FROM_DATABASE=65x/M650/740 PCI/AGP VGA Display Adapter + + pci:v00001039d00006325sv00001039sd00006325* +- ID_MODEL_FROM_DATABASE=SiS 651 onboard [Asus P4SC-EA] ++ ID_MODEL_FROM_DATABASE=65x/M650/740 PCI/AGP VGA Display Adapter (SiS 651 onboard [Asus P4SC-EA]) + + pci:v00001039d00006325sv00001631sd00001004* +- ID_MODEL_FROM_DATABASE=SiS 651C onboard [Gigabyte GA-8SIML Rev1.0] ++ ID_MODEL_FROM_DATABASE=65x/M650/740 PCI/AGP VGA Display Adapter (SiS 651C onboard [Gigabyte GA-8SIML Rev1.0]) + + pci:v00001039d00006326* + ID_MODEL_FROM_DATABASE=86C326 5598/6326 + + pci:v00001039d00006326sv00001039sd00006326* +- ID_MODEL_FROM_DATABASE=SiS6326 GUI Accelerator ++ ID_MODEL_FROM_DATABASE=86C326 5598/6326 (SiS6326 GUI Accelerator) + + pci:v00001039d00006326sv00001092sd00000A50* +- ID_MODEL_FROM_DATABASE=SpeedStar A50 ++ ID_MODEL_FROM_DATABASE=86C326 5598/6326 (SpeedStar A50) + + pci:v00001039d00006326sv00001092sd00000A70* +- ID_MODEL_FROM_DATABASE=SpeedStar A70 ++ ID_MODEL_FROM_DATABASE=86C326 5598/6326 (SpeedStar A70) + + pci:v00001039d00006326sv00001092sd00004910* +- ID_MODEL_FROM_DATABASE=SpeedStar A70 ++ ID_MODEL_FROM_DATABASE=86C326 5598/6326 (SpeedStar A70) + + pci:v00001039d00006326sv00001092sd00004920* +- ID_MODEL_FROM_DATABASE=SpeedStar A70 ++ ID_MODEL_FROM_DATABASE=86C326 5598/6326 (SpeedStar A70) + + pci:v00001039d00006326sv000010B0sd00006326* +- ID_MODEL_FROM_DATABASE=S6110-B (AGP) ++ ID_MODEL_FROM_DATABASE=86C326 5598/6326 (S6110-B (AGP)) + + pci:v00001039d00006326sv00001569sd00006326* +- ID_MODEL_FROM_DATABASE=SiS6326 GUI Accelerator ++ ID_MODEL_FROM_DATABASE=86C326 5598/6326 (SiS6326 GUI Accelerator) + + pci:v00001039d00006330* + ID_MODEL_FROM_DATABASE=661/741/760 PCI/AGP or 662/761Gx PCIE VGA Display Adapter + + pci:v00001039d00006330sv00001039sd00006330* +- ID_MODEL_FROM_DATABASE=[M]661xX/[M]741[GX]/[M]760 PCI/AGP VGA Adapter ++ ID_MODEL_FROM_DATABASE=661/741/760 PCI/AGP or 662/761Gx PCIE VGA Display Adapter ([M]661xX/[M]741[GX]/[M]760 PCI/AGP VGA Adapter) + + pci:v00001039d00006330sv00001043sd00008113* +- ID_MODEL_FROM_DATABASE=SiS Real 256E (ASUS P5S800-VM motherboard) ++ ID_MODEL_FROM_DATABASE=661/741/760 PCI/AGP or 662/761Gx PCIE VGA Display Adapter (SiS Real 256E (ASUS P5S800-VM motherboard)) + + pci:v00001039d00006330sv00001458sd0000D000* +- ID_MODEL_FROM_DATABASE=SiS661FX GUI 2D/3D Accelerator ++ ID_MODEL_FROM_DATABASE=661/741/760 PCI/AGP or 662/761Gx PCIE VGA Display Adapter (SiS661FX GUI 2D/3D Accelerator) + + pci:v00001039d00006330sv00001734sd00001099* +- ID_MODEL_FROM_DATABASE=D2030-A1 ++ ID_MODEL_FROM_DATABASE=661/741/760 PCI/AGP or 662/761Gx PCIE VGA Display Adapter (D2030-A1) + + pci:v00001039d00006350* + ID_MODEL_FROM_DATABASE=770/670 PCIE VGA Display Adapter +@@ -13458,70 +13458,70 @@ pci:v00001039d00007001* + ID_MODEL_FROM_DATABASE=USB 1.1 Controller + + pci:v00001039d00007001sv00001019sd00000A14* +- ID_MODEL_FROM_DATABASE=K7S5A motherboard ++ ID_MODEL_FROM_DATABASE=USB 1.1 Controller (K7S5A motherboard) + + pci:v00001039d00007001sv00001039sd00007000* +- ID_MODEL_FROM_DATABASE=Onboard USB Controller ++ ID_MODEL_FROM_DATABASE=USB 1.1 Controller (Onboard USB Controller) + + pci:v00001039d00007001sv00001462sd00005470* +- ID_MODEL_FROM_DATABASE=ECS K7SOM+ motherboard ++ ID_MODEL_FROM_DATABASE=USB 1.1 Controller (ECS K7SOM+ motherboard) + + pci:v00001039d00007001sv00001462sd00007010* +- ID_MODEL_FROM_DATABASE=MS-6701 motherboard ++ ID_MODEL_FROM_DATABASE=USB 1.1 Controller (MS-6701 motherboard) + + pci:v00001039d00007001sv00001734sd00001095* +- ID_MODEL_FROM_DATABASE=D2030-A1 Motherboard ++ ID_MODEL_FROM_DATABASE=USB 1.1 Controller (D2030-A1 Motherboard) + + pci:v00001039d00007002* + ID_MODEL_FROM_DATABASE=USB 2.0 Controller + + pci:v00001039d00007002sv00001462sd00005470* +- ID_MODEL_FROM_DATABASE=K7SOM+ 5.2C Motherboard ++ ID_MODEL_FROM_DATABASE=USB 2.0 Controller (K7SOM+ 5.2C Motherboard) + + pci:v00001039d00007002sv00001462sd00007010* +- ID_MODEL_FROM_DATABASE=MS-6701 motherboard ++ ID_MODEL_FROM_DATABASE=USB 2.0 Controller (MS-6701 motherboard) + + pci:v00001039d00007002sv00001509sd00007002* +- ID_MODEL_FROM_DATABASE=Onboard USB Controller ++ ID_MODEL_FROM_DATABASE=USB 2.0 Controller (Onboard USB Controller) + + pci:v00001039d00007002sv00001734sd00001095* +- ID_MODEL_FROM_DATABASE=D2030-A1 ++ ID_MODEL_FROM_DATABASE=USB 2.0 Controller (D2030-A1) + + pci:v00001039d00007007* + ID_MODEL_FROM_DATABASE=FireWire Controller + + pci:v00001039d00007007sv00001462sd0000701D* +- ID_MODEL_FROM_DATABASE=MS-6701 ++ ID_MODEL_FROM_DATABASE=FireWire Controller (MS-6701) + + pci:v00001039d00007012* + ID_MODEL_FROM_DATABASE=SiS7012 AC'97 Sound Controller + + pci:v00001039d00007012sv00001019sd00000F05* +- ID_MODEL_FROM_DATABASE=A928 (i-Buddie) ++ ID_MODEL_FROM_DATABASE=SiS7012 AC'97 Sound Controller (A928 (i-Buddie)) + + pci:v00001039d00007012sv00001039sd00007012* +- ID_MODEL_FROM_DATABASE=SiS 7012 onboard [Asus P4SC-EA] AC'97 Sound Controller ++ ID_MODEL_FROM_DATABASE=SiS7012 AC'97 Sound Controller (SiS 7012 onboard [Asus P4SC-EA] AC'97 Sound Controller) + + pci:v00001039d00007012sv00001043sd0000818F* +- ID_MODEL_FROM_DATABASE=A8S-X Motherboard ++ ID_MODEL_FROM_DATABASE=SiS7012 AC'97 Sound Controller (A8S-X Motherboard) + + pci:v00001039d00007012sv000013F6sd00000300* +- ID_MODEL_FROM_DATABASE=CMI9739(A) on ECS K7SOM+ motherboard ++ ID_MODEL_FROM_DATABASE=SiS7012 AC'97 Sound Controller (CMI9739(A) on ECS K7SOM+ motherboard) + + pci:v00001039d00007012sv00001462sd00005850* +- ID_MODEL_FROM_DATABASE=MSI 648 Max (MS-6585) ++ ID_MODEL_FROM_DATABASE=SiS7012 AC'97 Sound Controller (MSI 648 Max (MS-6585)) + + pci:v00001039d00007012sv00001462sd00007010* +- ID_MODEL_FROM_DATABASE=MS-6701 motherboard ++ ID_MODEL_FROM_DATABASE=SiS7012 AC'97 Sound Controller (MS-6701 motherboard) + + pci:v00001039d00007012sv000015BDsd00001001* +- ID_MODEL_FROM_DATABASE=DFI 661FX motherboard ++ ID_MODEL_FROM_DATABASE=SiS7012 AC'97 Sound Controller (DFI 661FX motherboard) + + pci:v00001039d00007012sv00001734sd0000109F* +- ID_MODEL_FROM_DATABASE=D2030-A1 Motherboard ++ ID_MODEL_FROM_DATABASE=SiS7012 AC'97 Sound Controller (D2030-A1 Motherboard) + + pci:v00001039d00007012sv00001849sd00007012* +- ID_MODEL_FROM_DATABASE=K7S41GX motherboard ++ ID_MODEL_FROM_DATABASE=SiS7012 AC'97 Sound Controller (K7S41GX motherboard) + + pci:v00001039d00007013* + ID_MODEL_FROM_DATABASE=AC'97 Modem Controller +@@ -13530,7 +13530,7 @@ pci:v00001039d00007016* + ID_MODEL_FROM_DATABASE=SiS7016 PCI Fast Ethernet Adapter + + pci:v00001039d00007016sv00001039sd00007016* +- ID_MODEL_FROM_DATABASE=SiS7016 10/100 Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=SiS7016 PCI Fast Ethernet Adapter (SiS7016 10/100 Ethernet Adapter) + + pci:v00001039d00007018* + ID_MODEL_FROM_DATABASE=SiS PCI Audio Accelerator +@@ -13560,7 +13560,7 @@ pci:v00001039d00007018sv00001043sd0000800B* + ID_MODEL_FROM_DATABASE=SiS PCI Audio Accelerator + + pci:v00001039d00007018sv0000104Dsd000080E2* +- ID_MODEL_FROM_DATABASE=VAIO PCV-J200 ++ ID_MODEL_FROM_DATABASE=SiS PCI Audio Accelerator (VAIO PCV-J200) + + pci:v00001039d00007018sv00001054sd00007018* + ID_MODEL_FROM_DATABASE=SiS PCI Audio Accelerator +@@ -13635,25 +13635,25 @@ pci:v0000103Cd00001029* + ID_MODEL_FROM_DATABASE=Tach XL2 Fibre Channel Host Adapter + + pci:v0000103Cd00001029sv0000107Esd0000000F* +- ID_MODEL_FROM_DATABASE=Interphase 5560 Fibre Channel Adapter ++ ID_MODEL_FROM_DATABASE=Tach XL2 Fibre Channel Host Adapter (Interphase 5560 Fibre Channel Adapter) + + pci:v0000103Cd00001029sv00009004sd00009210* +- ID_MODEL_FROM_DATABASE=1Gb/2Gb Family Fibre Channel Controller ++ ID_MODEL_FROM_DATABASE=Tach XL2 Fibre Channel Host Adapter (1Gb/2Gb Family Fibre Channel Controller) + + pci:v0000103Cd00001029sv00009004sd00009211* +- ID_MODEL_FROM_DATABASE=1Gb/2Gb Family Fibre Channel Controller ++ ID_MODEL_FROM_DATABASE=Tach XL2 Fibre Channel Host Adapter (1Gb/2Gb Family Fibre Channel Controller) + + pci:v0000103Cd0000102A* + ID_MODEL_FROM_DATABASE=Tach TS Fibre Channel Host Adapter + + pci:v0000103Cd0000102Asv0000107Esd0000000E* +- ID_MODEL_FROM_DATABASE=Interphase 5540/5541 Fibre Channel Adapter ++ ID_MODEL_FROM_DATABASE=Tach TS Fibre Channel Host Adapter (Interphase 5540/5541 Fibre Channel Adapter) + + pci:v0000103Cd0000102Asv00009004sd00009110* +- ID_MODEL_FROM_DATABASE=1Gb/2Gb Family Fibre Channel Controller ++ ID_MODEL_FROM_DATABASE=Tach TS Fibre Channel Host Adapter (1Gb/2Gb Family Fibre Channel Controller) + + pci:v0000103Cd0000102Asv00009004sd00009111* +- ID_MODEL_FROM_DATABASE=1Gb/2Gb Family Fibre Channel Controller ++ ID_MODEL_FROM_DATABASE=Tach TS Fibre Channel Host Adapter (1Gb/2Gb Family Fibre Channel Controller) + + pci:v0000103Cd00001030* + ID_MODEL_FROM_DATABASE=J2585A DeskDirect 10/100VG NIC +@@ -13662,13 +13662,13 @@ pci:v0000103Cd00001031* + ID_MODEL_FROM_DATABASE=J2585B HP 10/100VG PCI LAN Adapter + + pci:v0000103Cd00001031sv0000103Csd00001040* +- ID_MODEL_FROM_DATABASE=J2973A DeskDirect 10BaseT NIC ++ ID_MODEL_FROM_DATABASE=J2585B HP 10/100VG PCI LAN Adapter (J2973A DeskDirect 10BaseT NIC) + + pci:v0000103Cd00001031sv0000103Csd00001041* +- ID_MODEL_FROM_DATABASE=J2585B DeskDirect 10/100VG NIC ++ ID_MODEL_FROM_DATABASE=J2585B HP 10/100VG PCI LAN Adapter (J2585B DeskDirect 10/100VG NIC) + + pci:v0000103Cd00001031sv0000103Csd00001042* +- ID_MODEL_FROM_DATABASE=J2970A DeskDirect 10BaseT/2 NIC ++ ID_MODEL_FROM_DATABASE=J2585B HP 10/100VG PCI LAN Adapter (J2970A DeskDirect 10BaseT/2 NIC) + + pci:v0000103Cd00001040* + ID_MODEL_FROM_DATABASE=J2973A DeskDirect 10BaseT NIC +@@ -13683,28 +13683,28 @@ pci:v0000103Cd00001048* + ID_MODEL_FROM_DATABASE=Diva Serial [GSP] Multiport UART + + pci:v0000103Cd00001048sv0000103Csd00001049* +- ID_MODEL_FROM_DATABASE=Tosca Console ++ ID_MODEL_FROM_DATABASE=Diva Serial [GSP] Multiport UART (Tosca Console) + + pci:v0000103Cd00001048sv0000103Csd0000104A* +- ID_MODEL_FROM_DATABASE=Tosca Secondary ++ ID_MODEL_FROM_DATABASE=Diva Serial [GSP] Multiport UART (Tosca Secondary) + + pci:v0000103Cd00001048sv0000103Csd0000104B* +- ID_MODEL_FROM_DATABASE=Maestro SP2 ++ ID_MODEL_FROM_DATABASE=Diva Serial [GSP] Multiport UART (Maestro SP2) + + pci:v0000103Cd00001048sv0000103Csd00001223* +- ID_MODEL_FROM_DATABASE=Superdome Console ++ ID_MODEL_FROM_DATABASE=Diva Serial [GSP] Multiport UART (Superdome Console) + + pci:v0000103Cd00001048sv0000103Csd00001226* +- ID_MODEL_FROM_DATABASE=Keystone SP2 ++ ID_MODEL_FROM_DATABASE=Diva Serial [GSP] Multiport UART (Keystone SP2) + + pci:v0000103Cd00001048sv0000103Csd00001227* +- ID_MODEL_FROM_DATABASE=Powerbar SP2 ++ ID_MODEL_FROM_DATABASE=Diva Serial [GSP] Multiport UART (Powerbar SP2) + + pci:v0000103Cd00001048sv0000103Csd00001282* +- ID_MODEL_FROM_DATABASE=Everest SP2 ++ ID_MODEL_FROM_DATABASE=Diva Serial [GSP] Multiport UART (Everest SP2) + + pci:v0000103Cd00001048sv0000103Csd00001301* +- ID_MODEL_FROM_DATABASE=Diva RMP3 ++ ID_MODEL_FROM_DATABASE=Diva Serial [GSP] Multiport UART (Diva RMP3) + + pci:v0000103Cd00001054* + ID_MODEL_FROM_DATABASE=PCI Local Bus Adapter +@@ -13758,7 +13758,7 @@ pci:v0000103Cd00001290* + ID_MODEL_FROM_DATABASE=Auxiliary Diva Serial Port + + pci:v0000103Cd00001290sv0000103Csd00001291* +- ID_MODEL_FROM_DATABASE=Diva SP2 ++ ID_MODEL_FROM_DATABASE=Auxiliary Diva Serial Port (Diva SP2) + + pci:v0000103Cd00001291* + ID_MODEL_FROM_DATABASE=Auxiliary Diva Serial Port +@@ -13794,208 +13794,208 @@ pci:v0000103Cd00003220* + ID_MODEL_FROM_DATABASE=Smart Array P600 + + pci:v0000103Cd00003220sv0000103Csd00003225* +- ID_MODEL_FROM_DATABASE=3 Gb/s SAS RAID ++ ID_MODEL_FROM_DATABASE=Smart Array P600 (3 Gb/s SAS RAID) + + pci:v0000103Cd00003230* + ID_MODEL_FROM_DATABASE=Smart Array Controller + + pci:v0000103Cd00003230sv0000103Csd00003223* +- ID_MODEL_FROM_DATABASE=Smart Array P800 ++ ID_MODEL_FROM_DATABASE=Smart Array Controller (Smart Array P800) + + pci:v0000103Cd00003230sv0000103Csd00003234* +- ID_MODEL_FROM_DATABASE=P400 SAS Controller ++ ID_MODEL_FROM_DATABASE=Smart Array Controller (P400 SAS Controller) + + pci:v0000103Cd00003230sv0000103Csd00003235* +- ID_MODEL_FROM_DATABASE=P400i SAS Controller ++ ID_MODEL_FROM_DATABASE=Smart Array Controller (P400i SAS Controller) + + pci:v0000103Cd00003230sv0000103Csd00003237* +- ID_MODEL_FROM_DATABASE=E500 SAS Controller ++ ID_MODEL_FROM_DATABASE=Smart Array Controller (E500 SAS Controller) + + pci:v0000103Cd00003230sv0000103Csd0000323D* +- ID_MODEL_FROM_DATABASE=P700m SAS Controller ++ ID_MODEL_FROM_DATABASE=Smart Array Controller (P700m SAS Controller) + + pci:v0000103Cd00003238* + ID_MODEL_FROM_DATABASE=Smart Array E200i (SAS Controller) + + pci:v0000103Cd00003238sv0000103Csd00003211* +- ID_MODEL_FROM_DATABASE=Smart Array E200i ++ ID_MODEL_FROM_DATABASE=Smart Array E200i (SAS Controller) (Smart Array E200i) + + pci:v0000103Cd00003238sv0000103Csd00003212* +- ID_MODEL_FROM_DATABASE=Smart Array E200 ++ ID_MODEL_FROM_DATABASE=Smart Array E200i (SAS Controller) (Smart Array E200) + + pci:v0000103Cd00003239* + ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers + + pci:v0000103Cd00003239sv0000103Csd000021BD* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021BE* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021BF* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021C0* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021C1* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021C2* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021C3* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021C4* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021C5* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021C6* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021C7* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021C8* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021C9* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021CA* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021CB* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021CC* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021CD* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd00003239sv0000103Csd000021CE* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen9 Controllers (Smart Array) + + pci:v0000103Cd0000323A* + ID_MODEL_FROM_DATABASE=Smart Array G6 controllers + + pci:v0000103Cd0000323Asv0000103Csd00003241* +- ID_MODEL_FROM_DATABASE=Smart Array P212 ++ ID_MODEL_FROM_DATABASE=Smart Array G6 controllers (Smart Array P212) + + pci:v0000103Cd0000323Asv0000103Csd00003243* +- ID_MODEL_FROM_DATABASE=Smart Array P410 ++ ID_MODEL_FROM_DATABASE=Smart Array G6 controllers (Smart Array P410) + + pci:v0000103Cd0000323Asv0000103Csd00003245* +- ID_MODEL_FROM_DATABASE=Smart Array P410i ++ ID_MODEL_FROM_DATABASE=Smart Array G6 controllers (Smart Array P410i) + + pci:v0000103Cd0000323Asv0000103Csd00003247* +- ID_MODEL_FROM_DATABASE=Smart Array P411 ++ ID_MODEL_FROM_DATABASE=Smart Array G6 controllers (Smart Array P411) + + pci:v0000103Cd0000323Asv0000103Csd00003249* +- ID_MODEL_FROM_DATABASE=Smart Array P812 ++ ID_MODEL_FROM_DATABASE=Smart Array G6 controllers (Smart Array P812) + + pci:v0000103Cd0000323Asv0000103Csd0000324A* +- ID_MODEL_FROM_DATABASE=HP Smart Array 712m (Mezzanine RAID controller) ++ ID_MODEL_FROM_DATABASE=Smart Array G6 controllers (HP Smart Array 712m (Mezzanine RAID controller)) + + pci:v0000103Cd0000323Asv0000103Csd0000324B* +- ID_MODEL_FROM_DATABASE=Smart Array P711m (Mezzanine RAID controller) ++ ID_MODEL_FROM_DATABASE=Smart Array G6 controllers (Smart Array P711m (Mezzanine RAID controller)) + + pci:v0000103Cd0000323B* + ID_MODEL_FROM_DATABASE=Smart Array Gen8 Controllers + + pci:v0000103Cd0000323Bsv0000103Csd00003350* +- ID_MODEL_FROM_DATABASE=P222 ++ ID_MODEL_FROM_DATABASE=Smart Array Gen8 Controllers (P222) + + pci:v0000103Cd0000323Bsv0000103Csd00003351* +- ID_MODEL_FROM_DATABASE=P420 ++ ID_MODEL_FROM_DATABASE=Smart Array Gen8 Controllers (P420) + + pci:v0000103Cd0000323Bsv0000103Csd00003352* +- ID_MODEL_FROM_DATABASE=P421 ++ ID_MODEL_FROM_DATABASE=Smart Array Gen8 Controllers (P421) + + pci:v0000103Cd0000323Bsv0000103Csd00003354* +- ID_MODEL_FROM_DATABASE=P420i ++ ID_MODEL_FROM_DATABASE=Smart Array Gen8 Controllers (P420i) + + pci:v0000103Cd0000323Bsv0000103Csd00003355* +- ID_MODEL_FROM_DATABASE=P220i ++ ID_MODEL_FROM_DATABASE=Smart Array Gen8 Controllers (P220i) + + pci:v0000103Cd0000323C* + ID_MODEL_FROM_DATABASE=Smart Array Gen8+ Controllers + + pci:v0000103Cd0000323Csv0000103Csd00001920* +- ID_MODEL_FROM_DATABASE=P430i ++ ID_MODEL_FROM_DATABASE=Smart Array Gen8+ Controllers (P430i) + + pci:v0000103Cd0000323Csv0000103Csd00001921* +- ID_MODEL_FROM_DATABASE=P830i ++ ID_MODEL_FROM_DATABASE=Smart Array Gen8+ Controllers (P830i) + + pci:v0000103Cd0000323Csv0000103Csd00001922* +- ID_MODEL_FROM_DATABASE=P430 ++ ID_MODEL_FROM_DATABASE=Smart Array Gen8+ Controllers (P430) + + pci:v0000103Cd0000323Csv0000103Csd00001923* +- ID_MODEL_FROM_DATABASE=P431 ++ ID_MODEL_FROM_DATABASE=Smart Array Gen8+ Controllers (P431) + + pci:v0000103Cd0000323Csv0000103Csd00001924* +- ID_MODEL_FROM_DATABASE=P830 ++ ID_MODEL_FROM_DATABASE=Smart Array Gen8+ Controllers (P830) + + pci:v0000103Cd0000323Csv0000103Csd00001925* +- ID_MODEL_FROM_DATABASE=Smart Array ++ ID_MODEL_FROM_DATABASE=Smart Array Gen8+ Controllers (Smart Array) + + pci:v0000103Cd0000323Csv0000103Csd00001926* +- ID_MODEL_FROM_DATABASE=P731m ++ ID_MODEL_FROM_DATABASE=Smart Array Gen8+ Controllers (P731m) + + pci:v0000103Cd0000323Csv0000103Csd00001928* +- ID_MODEL_FROM_DATABASE=P230i ++ ID_MODEL_FROM_DATABASE=Smart Array Gen8+ Controllers (P230i) + + pci:v0000103Cd00003300* + ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Virtual USB Controller + + pci:v0000103Cd00003300sv0000103Csd00003304* +- ID_MODEL_FROM_DATABASE=iLO2 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Virtual USB Controller (iLO2) + + pci:v0000103Cd00003300sv0000103Csd00003305* +- ID_MODEL_FROM_DATABASE=iLO2 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Virtual USB Controller (iLO2) + + pci:v0000103Cd00003300sv0000103Csd00003309* +- ID_MODEL_FROM_DATABASE=iLO2 GXL/iLO3 GXE ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Virtual USB Controller (iLO2 GXL/iLO3 GXE) + + pci:v0000103Cd00003300sv0000103Csd0000330E* +- ID_MODEL_FROM_DATABASE=iLO3 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Virtual USB Controller (iLO3) + + pci:v0000103Cd00003300sv0000103Csd00003381* +- ID_MODEL_FROM_DATABASE=iLO4 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Virtual USB Controller (iLO4) + + pci:v0000103Cd00003301* + ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Serial Port + + pci:v0000103Cd00003301sv0000103Csd00003304* +- ID_MODEL_FROM_DATABASE=iLO2 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Serial Port (iLO2) + + pci:v0000103Cd00003301sv0000103Csd00003305* +- ID_MODEL_FROM_DATABASE=iLO2 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Serial Port (iLO2) + + pci:v0000103Cd00003301sv0000103Csd0000330E* +- ID_MODEL_FROM_DATABASE=iLO3 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Serial Port (iLO3) + + pci:v0000103Cd00003301sv0000103Csd00003381* +- ID_MODEL_FROM_DATABASE=iLO4 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Serial Port (iLO4) + + pci:v0000103Cd00003302* + ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard KCS Interface + + pci:v0000103Cd00003302sv0000103Csd00003304* +- ID_MODEL_FROM_DATABASE=iLO2 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard KCS Interface (iLO2) + + pci:v0000103Cd00003302sv0000103Csd00003305* +- ID_MODEL_FROM_DATABASE=iLO2 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard KCS Interface (iLO2) + + pci:v0000103Cd00003302sv0000103Csd0000330E* +- ID_MODEL_FROM_DATABASE=iLO3 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard KCS Interface (iLO3) + + pci:v0000103Cd00003302sv0000103Csd00003381* +- ID_MODEL_FROM_DATABASE=iLO4 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard KCS Interface (iLO4) + + pci:v0000103Cd00003305* + ID_MODEL_FROM_DATABASE=Integrated Lights-Out (iLO2) Controller +@@ -14004,31 +14004,31 @@ pci:v0000103Cd00003306* + ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Slave Instrumentation & System Support + + pci:v0000103Cd00003306sv0000103Csd0000330E* +- ID_MODEL_FROM_DATABASE=iLO3 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Slave Instrumentation & System Support (iLO3) + + pci:v0000103Cd00003306sv0000103Csd00003381* +- ID_MODEL_FROM_DATABASE=iLO4 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Slave Instrumentation & System Support (iLO4) + + pci:v0000103Cd00003307* + ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Management Processor Support and Messaging + + pci:v0000103Cd00003307sv0000103Csd00003309* +- ID_MODEL_FROM_DATABASE=iLO 2 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Management Processor Support and Messaging (iLO 2) + + pci:v0000103Cd00003307sv0000103Csd0000330E* +- ID_MODEL_FROM_DATABASE=iLO3 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Management Processor Support and Messaging (iLO3) + + pci:v0000103Cd00003307sv0000103Csd00003381* +- ID_MODEL_FROM_DATABASE=iLO4 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard Management Processor Support and Messaging (iLO4) + + pci:v0000103Cd00003308* + ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard MS Watchdog Timer + + pci:v0000103Cd00003308sv0000103Csd0000330E* +- ID_MODEL_FROM_DATABASE=iLO3 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard MS Watchdog Timer (iLO3) + + pci:v0000103Cd00003308sv0000103Csd00003381* +- ID_MODEL_FROM_DATABASE=iLO4 ++ ID_MODEL_FROM_DATABASE=Integrated Lights-Out Standard MS Watchdog Timer (iLO4) + + pci:v0000103Cd0000402F* + ID_MODEL_FROM_DATABASE=PCIe Root Port +@@ -14082,19 +14082,19 @@ pci:v00001043d00000675* + ID_MODEL_FROM_DATABASE=ISDNLink P-IN100-ST-D + + pci:v00001043d00000675sv00000675sd00001704* +- ID_MODEL_FROM_DATABASE=ISDN Adapter (PCI Bus, D, C) ++ ID_MODEL_FROM_DATABASE=ISDNLink P-IN100-ST-D (ISDN Adapter (PCI Bus, D, C)) + + pci:v00001043d00000675sv00000675sd00001707* +- ID_MODEL_FROM_DATABASE=ISDN Adapter (PCI Bus, DV, W) ++ ID_MODEL_FROM_DATABASE=ISDNLink P-IN100-ST-D (ISDN Adapter (PCI Bus, DV, W)) + + pci:v00001043d00000675sv000010CFsd0000105E* +- ID_MODEL_FROM_DATABASE=ISDN Adapter (PCI Bus, DV, W) ++ ID_MODEL_FROM_DATABASE=ISDNLink P-IN100-ST-D (ISDN Adapter (PCI Bus, DV, W)) + + pci:v00001043d00009602* + ID_MODEL_FROM_DATABASE=AMD RS780/RS880 PCI to PCI bridge (int gfx) + + pci:v00001043d00009602sv00001043sd000083A2* +- ID_MODEL_FROM_DATABASE=M4A785TD Motherboard ++ ID_MODEL_FROM_DATABASE=AMD RS780/RS880 PCI to PCI bridge (int gfx) (M4A785TD Motherboard) + + pci:v00001044* + ID_VENDOR_FROM_DATABASE=Adaptec (formerly DPT) +@@ -14112,118 +14112,118 @@ pci:v00001044d0000A501* + ID_MODEL_FROM_DATABASE=SmartRAID V Controller + + pci:v00001044d0000A501sv00001044sd0000C001* +- ID_MODEL_FROM_DATABASE=PM1554U2 Ultra2 Single Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM1554U2 Ultra2 Single Channel) + + pci:v00001044d0000A501sv00001044sd0000C002* +- ID_MODEL_FROM_DATABASE=PM1654U2 Ultra2 Single Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM1654U2 Ultra2 Single Channel) + + pci:v00001044d0000A501sv00001044sd0000C003* +- ID_MODEL_FROM_DATABASE=PM1564U3 Ultra3 Single Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM1564U3 Ultra3 Single Channel) + + pci:v00001044d0000A501sv00001044sd0000C004* +- ID_MODEL_FROM_DATABASE=PM1564U3 Ultra3 Dual Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM1564U3 Ultra3 Dual Channel) + + pci:v00001044d0000A501sv00001044sd0000C005* +- ID_MODEL_FROM_DATABASE=PM1554U2 Ultra2 Single Channel (NON ACPI) ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM1554U2 Ultra2 Single Channel (NON ACPI)) + + pci:v00001044d0000A501sv00001044sd0000C00A* +- ID_MODEL_FROM_DATABASE=PM2554U2 Ultra2 Single Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM2554U2 Ultra2 Single Channel) + + pci:v00001044d0000A501sv00001044sd0000C00B* +- ID_MODEL_FROM_DATABASE=PM2654U2 Ultra2 Single Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM2654U2 Ultra2 Single Channel) + + pci:v00001044d0000A501sv00001044sd0000C00C* +- ID_MODEL_FROM_DATABASE=PM2664U3 Ultra3 Single Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM2664U3 Ultra3 Single Channel) + + pci:v00001044d0000A501sv00001044sd0000C00D* +- ID_MODEL_FROM_DATABASE=PM2664U3 Ultra3 Dual Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM2664U3 Ultra3 Dual Channel) + + pci:v00001044d0000A501sv00001044sd0000C00E* +- ID_MODEL_FROM_DATABASE=PM2554U2 Ultra2 Single Channel (NON ACPI) ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM2554U2 Ultra2 Single Channel (NON ACPI)) + + pci:v00001044d0000A501sv00001044sd0000C00F* +- ID_MODEL_FROM_DATABASE=PM2654U2 Ultra2 Single Channel (NON ACPI) ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM2654U2 Ultra2 Single Channel (NON ACPI)) + + pci:v00001044d0000A501sv00001044sd0000C014* +- ID_MODEL_FROM_DATABASE=PM3754U2 Ultra2 Single Channel (NON ACPI) ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM3754U2 Ultra2 Single Channel (NON ACPI)) + + pci:v00001044d0000A501sv00001044sd0000C015* +- ID_MODEL_FROM_DATABASE=PM3755U2B Ultra2 Single Channel (NON ACPI) ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM3755U2B Ultra2 Single Channel (NON ACPI)) + + pci:v00001044d0000A501sv00001044sd0000C016* +- ID_MODEL_FROM_DATABASE=PM3755F Fibre Channel (NON ACPI) ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM3755F Fibre Channel (NON ACPI)) + + pci:v00001044d0000A501sv00001044sd0000C01E* +- ID_MODEL_FROM_DATABASE=PM3757U2 Ultra2 Single Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM3757U2 Ultra2 Single Channel) + + pci:v00001044d0000A501sv00001044sd0000C01F* +- ID_MODEL_FROM_DATABASE=PM3757U2 Ultra2 Dual Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM3757U2 Ultra2 Dual Channel) + + pci:v00001044d0000A501sv00001044sd0000C020* +- ID_MODEL_FROM_DATABASE=PM3767U3 Ultra3 Dual Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM3767U3 Ultra3 Dual Channel) + + pci:v00001044d0000A501sv00001044sd0000C021* +- ID_MODEL_FROM_DATABASE=PM3767U3 Ultra3 Quad Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM3767U3 Ultra3 Quad Channel) + + pci:v00001044d0000A501sv00001044sd0000C028* +- ID_MODEL_FROM_DATABASE=PM2865U3 Ultra3 Single Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM2865U3 Ultra3 Single Channel) + + pci:v00001044d0000A501sv00001044sd0000C029* +- ID_MODEL_FROM_DATABASE=PM2865U3 Ultra3 Dual Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM2865U3 Ultra3 Dual Channel) + + pci:v00001044d0000A501sv00001044sd0000C02A* +- ID_MODEL_FROM_DATABASE=PM2865F Fibre Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (PM2865F Fibre Channel) + + pci:v00001044d0000A501sv00001044sd0000C03C* +- ID_MODEL_FROM_DATABASE=2000S Ultra3 Single Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (2000S Ultra3 Single Channel) + + pci:v00001044d0000A501sv00001044sd0000C03D* +- ID_MODEL_FROM_DATABASE=2000S Ultra3 Dual Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (2000S Ultra3 Dual Channel) + + pci:v00001044d0000A501sv00001044sd0000C03E* +- ID_MODEL_FROM_DATABASE=2000F Fibre Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (2000F Fibre Channel) + + pci:v00001044d0000A501sv00001044sd0000C046* +- ID_MODEL_FROM_DATABASE=3000S Ultra3 Single Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (3000S Ultra3 Single Channel) + + pci:v00001044d0000A501sv00001044sd0000C047* +- ID_MODEL_FROM_DATABASE=3000S Ultra3 Dual Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (3000S Ultra3 Dual Channel) + + pci:v00001044d0000A501sv00001044sd0000C048* +- ID_MODEL_FROM_DATABASE=3000F Fibre Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (3000F Fibre Channel) + + pci:v00001044d0000A501sv00001044sd0000C050* +- ID_MODEL_FROM_DATABASE=5000S Ultra3 Single Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (5000S Ultra3 Single Channel) + + pci:v00001044d0000A501sv00001044sd0000C051* +- ID_MODEL_FROM_DATABASE=5000S Ultra3 Dual Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (5000S Ultra3 Dual Channel) + + pci:v00001044d0000A501sv00001044sd0000C052* +- ID_MODEL_FROM_DATABASE=5000F Fibre Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (5000F Fibre Channel) + + pci:v00001044d0000A501sv00001044sd0000C05A* +- ID_MODEL_FROM_DATABASE=2400A UDMA Four Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (2400A UDMA Four Channel) + + pci:v00001044d0000A501sv00001044sd0000C05B* +- ID_MODEL_FROM_DATABASE=2400A UDMA Four Channel DAC ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (2400A UDMA Four Channel DAC) + + pci:v00001044d0000A501sv00001044sd0000C064* +- ID_MODEL_FROM_DATABASE=3010S Ultra3 Dual Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (3010S Ultra3 Dual Channel) + + pci:v00001044d0000A501sv00001044sd0000C065* +- ID_MODEL_FROM_DATABASE=3410S Ultra160 Four Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (3410S Ultra160 Four Channel) + + pci:v00001044d0000A501sv00001044sd0000C066* +- ID_MODEL_FROM_DATABASE=3010S Fibre Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (3010S Fibre Channel) + + pci:v00001044d0000A511* + ID_MODEL_FROM_DATABASE=SmartRAID V Controller + + pci:v00001044d0000A511sv00001044sd0000C032* +- ID_MODEL_FROM_DATABASE=ASR-2005S I2O Zero Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (ASR-2005S I2O Zero Channel) + + pci:v00001044d0000A511sv00001044sd0000C035* +- ID_MODEL_FROM_DATABASE=ASR-2010S I2O Zero Channel ++ ID_MODEL_FROM_DATABASE=SmartRAID V Controller (ASR-2010S I2O Zero Channel) + + pci:v00001044d0000C066* + ID_MODEL_FROM_DATABASE=3010S Ultra3 Dual Channel +@@ -14325,7 +14325,7 @@ pci:v00001048d00008901* + ID_MODEL_FROM_DATABASE=Gloria XL + + pci:v00001048d00008901sv00001048sd00000935* +- ID_MODEL_FROM_DATABASE=GLoria XL (Virge) ++ ID_MODEL_FROM_DATABASE=Gloria XL (GLoria XL (Virge)) + + pci:v00001049* + ID_VENDOR_FROM_DATABASE=Fountain Technologies, Inc. +@@ -14346,19 +14346,19 @@ pci:v0000104Ad00000010* + ID_MODEL_FROM_DATABASE=STG4000 [3D Prophet Kyro Series] + + pci:v0000104Ad00000010sv0000104Asd00004018* +- ID_MODEL_FROM_DATABASE=ST PowerVR Kyro (64MB AGP TVO) ++ ID_MODEL_FROM_DATABASE=STG4000 [3D Prophet Kyro Series] (ST PowerVR Kyro (64MB AGP TVO)) + + pci:v0000104Ad00000010sv00001681sd00000010* +- ID_MODEL_FROM_DATABASE=PowerVR Kyro II [3D Prophet 4500] ++ ID_MODEL_FROM_DATABASE=STG4000 [3D Prophet Kyro Series] (PowerVR Kyro II [3D Prophet 4500]) + + pci:v0000104Ad00000010sv00001681sd00000028* +- ID_MODEL_FROM_DATABASE=3D Prophet 4000XT ++ ID_MODEL_FROM_DATABASE=STG4000 [3D Prophet Kyro Series] (3D Prophet 4000XT) + + pci:v0000104Ad00000010sv00001681sd0000C010* +- ID_MODEL_FROM_DATABASE=3D Prophet 4500 TV-Out ++ ID_MODEL_FROM_DATABASE=STG4000 [3D Prophet Kyro Series] (3D Prophet 4500 TV-Out) + + pci:v0000104Ad00000010sv00001681sd0000C069* +- ID_MODEL_FROM_DATABASE=3D Prophet 4000XT ++ ID_MODEL_FROM_DATABASE=STG4000 [3D Prophet Kyro Series] (3D Prophet 4000XT) + + pci:v0000104Ad00000201* + ID_MODEL_FROM_DATABASE=STPC Vega Northbridge +@@ -14400,7 +14400,7 @@ pci:v0000104Ad00000500* + ID_MODEL_FROM_DATABASE=ST70137 [Unicorn] ADSL DMT Transceiver + + pci:v0000104Ad00000500sv0000104Asd00000500* +- ID_MODEL_FROM_DATABASE=BeWAN ADSL PCI st ++ ID_MODEL_FROM_DATABASE=ST70137 [Unicorn] ADSL DMT Transceiver (BeWAN ADSL PCI st) + + pci:v0000104Ad00000564* + ID_MODEL_FROM_DATABASE=STPC Client Northbridge +@@ -14454,115 +14454,115 @@ pci:v0000104Cd00003D07* + ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] + + pci:v0000104Cd00003D07sv00001011sd00004D10* +- ID_MODEL_FROM_DATABASE=Comet ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (Comet) + + pci:v0000104Cd00003D07sv00001040sd0000000F* +- ID_MODEL_FROM_DATABASE=AccelStar II ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (AccelStar II) + + pci:v0000104Cd00003D07sv00001040sd00000011* +- ID_MODEL_FROM_DATABASE=AccelStar II ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (AccelStar II) + + pci:v0000104Cd00003D07sv00001048sd00000A31* +- ID_MODEL_FROM_DATABASE=WINNER 2000 ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (WINNER 2000) + + pci:v0000104Cd00003D07sv00001048sd00000A32* +- ID_MODEL_FROM_DATABASE=GLoria Synergy ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (GLoria Synergy) + + pci:v0000104Cd00003D07sv00001048sd00000A34* +- ID_MODEL_FROM_DATABASE=GLoria Synergy ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (GLoria Synergy) + + pci:v0000104Cd00003D07sv00001048sd00000A35* +- ID_MODEL_FROM_DATABASE=GLoria Synergy ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (GLoria Synergy) + + pci:v0000104Cd00003D07sv00001048sd00000A36* +- ID_MODEL_FROM_DATABASE=GLoria Synergy ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (GLoria Synergy) + + pci:v0000104Cd00003D07sv00001048sd00000A43* +- ID_MODEL_FROM_DATABASE=GLoria Synergy ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (GLoria Synergy) + + pci:v0000104Cd00003D07sv00001048sd00000A44* +- ID_MODEL_FROM_DATABASE=GLoria Synergy ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (GLoria Synergy) + + pci:v0000104Cd00003D07sv0000107Dsd00002633* +- ID_MODEL_FROM_DATABASE=WinFast 3D L2300 ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (WinFast 3D L2300) + + pci:v0000104Cd00003D07sv00001092sd00000126* +- ID_MODEL_FROM_DATABASE=FIRE GL 1000 PRO ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (FIRE GL 1000 PRO) + + pci:v0000104Cd00003D07sv00001092sd00000127* +- ID_MODEL_FROM_DATABASE=FIRE GL 1000 PRO ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (FIRE GL 1000 PRO) + + pci:v0000104Cd00003D07sv00001092sd00000136* +- ID_MODEL_FROM_DATABASE=FIRE GL 1000 PRO ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (FIRE GL 1000 PRO) + + pci:v0000104Cd00003D07sv00001092sd00000141* +- ID_MODEL_FROM_DATABASE=FIRE GL 1000 PRO ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (FIRE GL 1000 PRO) + + pci:v0000104Cd00003D07sv00001092sd00000146* +- ID_MODEL_FROM_DATABASE=FIRE GL 1000 PRO ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (FIRE GL 1000 PRO) + + pci:v0000104Cd00003D07sv00001092sd00000148* +- ID_MODEL_FROM_DATABASE=FIRE GL 1000 PRO ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (FIRE GL 1000 PRO) + + pci:v0000104Cd00003D07sv00001092sd00000149* +- ID_MODEL_FROM_DATABASE=FIRE GL 1000 PRO ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (FIRE GL 1000 PRO) + + pci:v0000104Cd00003D07sv00001092sd00000152* +- ID_MODEL_FROM_DATABASE=FIRE GL 1000 PRO ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (FIRE GL 1000 PRO) + + pci:v0000104Cd00003D07sv00001092sd00000154* +- ID_MODEL_FROM_DATABASE=FIRE GL 1000 PRO ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (FIRE GL 1000 PRO) + + pci:v0000104Cd00003D07sv00001092sd00000155* +- ID_MODEL_FROM_DATABASE=FIRE GL 1000 PRO ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (FIRE GL 1000 PRO) + + pci:v0000104Cd00003D07sv00001092sd00000156* +- ID_MODEL_FROM_DATABASE=FIRE GL 1000 PRO ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (FIRE GL 1000 PRO) + + pci:v0000104Cd00003D07sv00001092sd00000157* +- ID_MODEL_FROM_DATABASE=FIRE GL 1000 PRO ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (FIRE GL 1000 PRO) + + pci:v0000104Cd00003D07sv00001097sd00003D01* +- ID_MODEL_FROM_DATABASE=Jeronimo Pro ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (Jeronimo Pro) + + pci:v0000104Cd00003D07sv00001102sd0000100F* +- ID_MODEL_FROM_DATABASE=Graphics Blaster Extreme ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (Graphics Blaster Extreme) + + pci:v0000104Cd00003D07sv00003D3Dsd00000100* +- ID_MODEL_FROM_DATABASE=Reference Permedia 2 3D ++ ID_MODEL_FROM_DATABASE=TVP4020 [Permedia 2] (Reference Permedia 2 3D) + + pci:v0000104Cd00008000* + ID_MODEL_FROM_DATABASE=PCILynx/PCILynx2 IEEE 1394 Link Layer Controller + + pci:v0000104Cd00008000sv0000105Esd00008003* +- ID_MODEL_FROM_DATABASE=FireBoard200 ++ ID_MODEL_FROM_DATABASE=PCILynx/PCILynx2 IEEE 1394 Link Layer Controller (FireBoard200) + + pci:v0000104Cd00008000sv00001443sd00008003* +- ID_MODEL_FROM_DATABASE=FireBoard200 ++ ID_MODEL_FROM_DATABASE=PCILynx/PCILynx2 IEEE 1394 Link Layer Controller (FireBoard200) + + pci:v0000104Cd00008000sv00001443sd00008005* +- ID_MODEL_FROM_DATABASE=FireBoard400 ++ ID_MODEL_FROM_DATABASE=PCILynx/PCILynx2 IEEE 1394 Link Layer Controller (FireBoard400) + + pci:v0000104Cd00008000sv00001443sd00008006* +- ID_MODEL_FROM_DATABASE=FireBoard400 ++ ID_MODEL_FROM_DATABASE=PCILynx/PCILynx2 IEEE 1394 Link Layer Controller (FireBoard400) + + pci:v0000104Cd00008000sv0000E4BFsd00001010* +- ID_MODEL_FROM_DATABASE=CF1-1-SNARE ++ ID_MODEL_FROM_DATABASE=PCILynx/PCILynx2 IEEE 1394 Link Layer Controller (CF1-1-SNARE) + + pci:v0000104Cd00008000sv0000E4BFsd00001020* +- ID_MODEL_FROM_DATABASE=CF1-2-SNARE ++ ID_MODEL_FROM_DATABASE=PCILynx/PCILynx2 IEEE 1394 Link Layer Controller (CF1-2-SNARE) + + pci:v0000104Cd00008000sv0000E4BFsd00001040* +- ID_MODEL_FROM_DATABASE=FireCompact400 ++ ID_MODEL_FROM_DATABASE=PCILynx/PCILynx2 IEEE 1394 Link Layer Controller (FireCompact400) + + pci:v0000104Cd00008009* + ID_MODEL_FROM_DATABASE=TSB12LV22 IEEE-1394 Controller + + pci:v0000104Cd00008009sv0000104Dsd00008032* +- ID_MODEL_FROM_DATABASE=8032 OHCI i.LINK (IEEE 1394) Controller ++ ID_MODEL_FROM_DATABASE=TSB12LV22 IEEE-1394 Controller (8032 OHCI i.LINK (IEEE 1394) Controller) + + pci:v0000104Cd00008009sv00001443sd00008010* +- ID_MODEL_FROM_DATABASE=FireBoard400-OHCI ++ ID_MODEL_FROM_DATABASE=TSB12LV22 IEEE-1394 Controller (FireBoard400-OHCI) + + pci:v0000104Cd00008017* + ID_MODEL_FROM_DATABASE=PCI4410 FireWire Controller +@@ -14571,223 +14571,223 @@ pci:v0000104Cd00008019* + ID_MODEL_FROM_DATABASE=TSB12LV23 IEEE-1394 Controller + + pci:v0000104Cd00008019sv000011BDsd0000000A* +- ID_MODEL_FROM_DATABASE=Studio DV500-1394 ++ ID_MODEL_FROM_DATABASE=TSB12LV23 IEEE-1394 Controller (Studio DV500-1394) + + pci:v0000104Cd00008019sv000011BDsd0000000E* +- ID_MODEL_FROM_DATABASE=Studio DV ++ ID_MODEL_FROM_DATABASE=TSB12LV23 IEEE-1394 Controller (Studio DV) + + pci:v0000104Cd00008019sv00001443sd00008010* +- ID_MODEL_FROM_DATABASE=FireBoard400-OHCI ++ ID_MODEL_FROM_DATABASE=TSB12LV23 IEEE-1394 Controller (FireBoard400-OHCI) + + pci:v0000104Cd00008019sv0000E4BFsd00001010* +- ID_MODEL_FROM_DATABASE=CF2-1-CYMBAL ++ ID_MODEL_FROM_DATABASE=TSB12LV23 IEEE-1394 Controller (CF2-1-CYMBAL) + + pci:v0000104Cd00008020* + ID_MODEL_FROM_DATABASE=TSB12LV26 IEEE-1394 Controller (Link) + + pci:v0000104Cd00008020sv00001028sd000000D8* +- ID_MODEL_FROM_DATABASE=Precision 530 ++ ID_MODEL_FROM_DATABASE=TSB12LV26 IEEE-1394 Controller (Link) (Precision 530) + + pci:v0000104Cd00008020sv0000104Dsd000080E2* +- ID_MODEL_FROM_DATABASE=VAIO PCV-J200 ++ ID_MODEL_FROM_DATABASE=TSB12LV26 IEEE-1394 Controller (Link) (VAIO PCV-J200) + + pci:v0000104Cd00008020sv000011BDsd0000000F* +- ID_MODEL_FROM_DATABASE=Studio DV500-1394 ++ ID_MODEL_FROM_DATABASE=TSB12LV26 IEEE-1394 Controller (Link) (Studio DV500-1394) + + pci:v0000104Cd00008020sv000011BDsd0000001C* +- ID_MODEL_FROM_DATABASE=Excalibur 4.1 ++ ID_MODEL_FROM_DATABASE=TSB12LV26 IEEE-1394 Controller (Link) (Excalibur 4.1) + + pci:v0000104Cd00008020sv00001443sd00008010* +- ID_MODEL_FROM_DATABASE=FireBoard400-OHCI ++ ID_MODEL_FROM_DATABASE=TSB12LV26 IEEE-1394 Controller (Link) (FireBoard400-OHCI) + + pci:v0000104Cd00008021* + ID_MODEL_FROM_DATABASE=TSB43AA22 IEEE-1394 Controller (PHY/Link Integrated) + + pci:v0000104Cd00008021sv0000104Dsd000080DF* +- ID_MODEL_FROM_DATABASE=Vaio PCG-FX403 ++ ID_MODEL_FROM_DATABASE=TSB43AA22 IEEE-1394 Controller (PHY/Link Integrated) (Vaio PCG-FX403) + + pci:v0000104Cd00008021sv0000104Dsd000080E7* +- ID_MODEL_FROM_DATABASE=VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ++ ID_MODEL_FROM_DATABASE=TSB43AA22 IEEE-1394 Controller (PHY/Link Integrated) (VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP) + + pci:v0000104Cd00008022* + ID_MODEL_FROM_DATABASE=TSB43AB22 IEEE-1394a-2000 Controller (PHY/Link) [iOHCI-Lynx] + + pci:v0000104Cd00008022sv0000104Csd00008023* +- ID_MODEL_FROM_DATABASE=TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link) ++ ID_MODEL_FROM_DATABASE=TSB43AB22 IEEE-1394a-2000 Controller (PHY/Link) [iOHCI-Lynx] (TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link)) + + pci:v0000104Cd00008023* + ID_MODEL_FROM_DATABASE=TSB43AB22A IEEE-1394a-2000 Controller (PHY/Link) [iOHCI-Lynx] + + pci:v0000104Cd00008023sv00001028sd00000168* +- ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ ID_MODEL_FROM_DATABASE=TSB43AB22A IEEE-1394a-2000 Controller (PHY/Link) [iOHCI-Lynx] (Precision Workstation 670 Mainboard) + + pci:v0000104Cd00008023sv0000103Csd0000088C* +- ID_MODEL_FROM_DATABASE=NC8000 laptop ++ ID_MODEL_FROM_DATABASE=TSB43AB22A IEEE-1394a-2000 Controller (PHY/Link) [iOHCI-Lynx] (NC8000 laptop) + + pci:v0000104Cd00008023sv00001043sd0000808B* +- ID_MODEL_FROM_DATABASE=K8N4/A8N Series Mainboard ++ ID_MODEL_FROM_DATABASE=TSB43AB22A IEEE-1394a-2000 Controller (PHY/Link) [iOHCI-Lynx] (K8N4/A8N Series Mainboard) + + pci:v0000104Cd00008023sv00001043sd0000815B* +- ID_MODEL_FROM_DATABASE=P5W DH Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=TSB43AB22A IEEE-1394a-2000 Controller (PHY/Link) [iOHCI-Lynx] (P5W DH Deluxe Motherboard) + + pci:v0000104Cd00008023sv00001443sd00008023* +- ID_MODEL_FROM_DATABASE=FireCard400 ++ ID_MODEL_FROM_DATABASE=TSB43AB22A IEEE-1394a-2000 Controller (PHY/Link) [iOHCI-Lynx] (FireCard400) + + pci:v0000104Cd00008023sv00008086sd00005044* +- ID_MODEL_FROM_DATABASE=Desktop Board DP35DP ++ ID_MODEL_FROM_DATABASE=TSB43AB22A IEEE-1394a-2000 Controller (PHY/Link) [iOHCI-Lynx] (Desktop Board DP35DP) + + pci:v0000104Cd00008024* + ID_MODEL_FROM_DATABASE=TSB43AB23 IEEE-1394a-2000 Controller (PHY/Link) + + pci:v0000104Cd00008024sv0000107Dsd00006620* +- ID_MODEL_FROM_DATABASE=Winfast DV2000 FireWire Controller ++ ID_MODEL_FROM_DATABASE=TSB43AB23 IEEE-1394a-2000 Controller (PHY/Link) (Winfast DV2000 FireWire Controller) + + pci:v0000104Cd00008024sv00001443sd00008024* +- ID_MODEL_FROM_DATABASE=FireBoard Blue ++ ID_MODEL_FROM_DATABASE=TSB43AB23 IEEE-1394a-2000 Controller (PHY/Link) (FireBoard Blue) + + pci:v0000104Cd00008024sv00001458sd00001000* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=TSB43AB23 IEEE-1394a-2000 Controller (PHY/Link) (Motherboard) + + pci:v0000104Cd00008025* + ID_MODEL_FROM_DATABASE=TSB82AA2 IEEE-1394b Link Layer Controller + + pci:v0000104Cd00008025sv00001043sd0000813C* +- ID_MODEL_FROM_DATABASE=P5P series mainboard ++ ID_MODEL_FROM_DATABASE=TSB82AA2 IEEE-1394b Link Layer Controller (P5P series mainboard) + + pci:v0000104Cd00008025sv00001443sd00008025* +- ID_MODEL_FROM_DATABASE=FireBoard800 ++ ID_MODEL_FROM_DATABASE=TSB82AA2 IEEE-1394b Link Layer Controller (FireBoard800) + + pci:v0000104Cd00008025sv00001458sd00001000* +- ID_MODEL_FROM_DATABASE=GA-K8N Ultra-9 Mainboard ++ ID_MODEL_FROM_DATABASE=TSB82AA2 IEEE-1394b Link Layer Controller (GA-K8N Ultra-9 Mainboard) + + pci:v0000104Cd00008025sv00001546sd00008025* +- ID_MODEL_FROM_DATABASE=FWB-PCI01 ++ ID_MODEL_FROM_DATABASE=TSB82AA2 IEEE-1394b Link Layer Controller (FWB-PCI01) + + pci:v0000104Cd00008025sv000017FCsd00008025* +- ID_MODEL_FROM_DATABASE=GIC3800 ++ ID_MODEL_FROM_DATABASE=TSB82AA2 IEEE-1394b Link Layer Controller (GIC3800) + + pci:v0000104Cd00008026* + ID_MODEL_FROM_DATABASE=TSB43AB21 IEEE-1394a-2000 Controller (PHY/Link) + + pci:v0000104Cd00008026sv00001025sd00000035* +- ID_MODEL_FROM_DATABASE=TravelMate 660 ++ ID_MODEL_FROM_DATABASE=TSB43AB21 IEEE-1394a-2000 Controller (PHY/Link) (TravelMate 660) + + pci:v0000104Cd00008026sv00001025sd0000003C* +- ID_MODEL_FROM_DATABASE=Aspire 2001WLCi (Compaq CL50 motherboard) ++ ID_MODEL_FROM_DATABASE=TSB43AB21 IEEE-1394a-2000 Controller (PHY/Link) (Aspire 2001WLCi (Compaq CL50 motherboard)) + + pci:v0000104Cd00008026sv0000103Csd00000025* +- ID_MODEL_FROM_DATABASE=XE4500 Notebook ++ ID_MODEL_FROM_DATABASE=TSB43AB21 IEEE-1394a-2000 Controller (PHY/Link) (XE4500 Notebook) + + pci:v0000104Cd00008026sv0000103Csd0000006A* +- ID_MODEL_FROM_DATABASE=NX9500 ++ ID_MODEL_FROM_DATABASE=TSB43AB21 IEEE-1394a-2000 Controller (PHY/Link) (NX9500) + + pci:v0000104Cd00008026sv00001043sd0000808D* +- ID_MODEL_FROM_DATABASE=A7V333 mainboard. ++ ID_MODEL_FROM_DATABASE=TSB43AB21 IEEE-1394a-2000 Controller (PHY/Link) (A7V333 mainboard.) + + pci:v0000104Cd00008027* + ID_MODEL_FROM_DATABASE=PCI4451 IEEE-1394 Controller + + pci:v0000104Cd00008027sv00001028sd000000E5* +- ID_MODEL_FROM_DATABASE=Latitude C810 ++ ID_MODEL_FROM_DATABASE=PCI4451 IEEE-1394 Controller (Latitude C810) + + pci:v0000104Cd00008027sv00001028sd000000E6* +- ID_MODEL_FROM_DATABASE=PCI4451 IEEE-1394 Controller (Dell Inspiron 8100) ++ ID_MODEL_FROM_DATABASE=PCI4451 IEEE-1394 Controller ((Dell Inspiron 8100)) + + pci:v0000104Cd00008029* + ID_MODEL_FROM_DATABASE=PCI4510 IEEE-1394 Controller + + pci:v0000104Cd00008029sv00001028sd00000163* +- ID_MODEL_FROM_DATABASE=Latitude D505 ++ ID_MODEL_FROM_DATABASE=PCI4510 IEEE-1394 Controller (Latitude D505) + + pci:v0000104Cd00008029sv00001028sd00000196* +- ID_MODEL_FROM_DATABASE=Inspiron 5160 ++ ID_MODEL_FROM_DATABASE=PCI4510 IEEE-1394 Controller (Inspiron 5160) + + pci:v0000104Cd00008029sv00001071sd00008160* +- ID_MODEL_FROM_DATABASE=MIM2900 ++ ID_MODEL_FROM_DATABASE=PCI4510 IEEE-1394 Controller (MIM2900) + + pci:v0000104Cd0000802B* + ID_MODEL_FROM_DATABASE=PCI7410,7510,7610 OHCI-Lynx Controller + + pci:v0000104Cd0000802Bsv00001028sd00000139* +- ID_MODEL_FROM_DATABASE=Latitude D400 ++ ID_MODEL_FROM_DATABASE=PCI7410,7510,7610 OHCI-Lynx Controller (Latitude D400) + + pci:v0000104Cd0000802Bsv00001028sd0000014E* +- ID_MODEL_FROM_DATABASE=PCI7410,7510,7610 OHCI-Lynx Controller (Latitude D800) ++ ID_MODEL_FROM_DATABASE=PCI7410,7510,7610 OHCI-Lynx Controller ((Latitude D800)) + + pci:v0000104Cd0000802E* + ID_MODEL_FROM_DATABASE=PCI7x20 1394a-2000 OHCI Two-Port PHY/Link-Layer Controller + + pci:v0000104Cd0000802Esv00001028sd0000018D* +- ID_MODEL_FROM_DATABASE=Inspiron 700m/710m ++ ID_MODEL_FROM_DATABASE=PCI7x20 1394a-2000 OHCI Two-Port PHY/Link-Layer Controller (Inspiron 700m/710m) + + pci:v0000104Cd00008031* + ID_MODEL_FROM_DATABASE=PCIxx21/x515 Cardbus Controller + + pci:v0000104Cd00008031sv00001025sd00000080* +- ID_MODEL_FROM_DATABASE=Aspire 5024WLMi ++ ID_MODEL_FROM_DATABASE=PCIxx21/x515 Cardbus Controller (Aspire 5024WLMi) + + pci:v0000104Cd00008031sv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=Compaq nw8240/nx8220 ++ ID_MODEL_FROM_DATABASE=PCIxx21/x515 Cardbus Controller (Compaq nw8240/nx8220) + + pci:v0000104Cd00008031sv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=PCIxx21/x515 Cardbus Controller (NX6110/NC6120) + + pci:v0000104Cd00008031sv0000103Csd0000308B* +- ID_MODEL_FROM_DATABASE=MX6125 ++ ID_MODEL_FROM_DATABASE=PCIxx21/x515 Cardbus Controller (MX6125) + + pci:v0000104Cd00008032* + ID_MODEL_FROM_DATABASE=OHCI Compliant IEEE 1394 Host Controller + + pci:v0000104Cd00008032sv00001025sd00000080* +- ID_MODEL_FROM_DATABASE=Aspire 5024WLMi ++ ID_MODEL_FROM_DATABASE=OHCI Compliant IEEE 1394 Host Controller (Aspire 5024WLMi) + + pci:v0000104Cd00008032sv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=Compaq nw8240/nx8220 ++ ID_MODEL_FROM_DATABASE=OHCI Compliant IEEE 1394 Host Controller (Compaq nw8240/nx8220) + + pci:v0000104Cd00008032sv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=OHCI Compliant IEEE 1394 Host Controller (NX6110/NC6120) + + pci:v0000104Cd00008032sv0000103Csd0000308B* +- ID_MODEL_FROM_DATABASE=MX6125 ++ ID_MODEL_FROM_DATABASE=OHCI Compliant IEEE 1394 Host Controller (MX6125) + + pci:v0000104Cd00008033* + ID_MODEL_FROM_DATABASE=PCIxx21 Integrated FlashMedia Controller + + pci:v0000104Cd00008033sv00001025sd00000080* +- ID_MODEL_FROM_DATABASE=Aspire 5024WLMi ++ ID_MODEL_FROM_DATABASE=PCIxx21 Integrated FlashMedia Controller (Aspire 5024WLMi) + + pci:v0000104Cd00008033sv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=Compaq nw8240/nx8220 ++ ID_MODEL_FROM_DATABASE=PCIxx21 Integrated FlashMedia Controller (Compaq nw8240/nx8220) + + pci:v0000104Cd00008033sv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=PCIxx21 Integrated FlashMedia Controller (NX6110/NC6120) + + pci:v0000104Cd00008033sv0000103Csd0000308B* +- ID_MODEL_FROM_DATABASE=MX6125 ++ ID_MODEL_FROM_DATABASE=PCIxx21 Integrated FlashMedia Controller (MX6125) + + pci:v0000104Cd00008034* + ID_MODEL_FROM_DATABASE=PCI6411/6421/6611/6621/7411/7421/7611/7621 Secure Digital Controller + + pci:v0000104Cd00008034sv00001025sd00000080* +- ID_MODEL_FROM_DATABASE=Aspire 5024WLMi ++ ID_MODEL_FROM_DATABASE=PCI6411/6421/6611/6621/7411/7421/7611/7621 Secure Digital Controller (Aspire 5024WLMi) + + pci:v0000104Cd00008034sv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=Compaq nw8240/nx8220 ++ ID_MODEL_FROM_DATABASE=PCI6411/6421/6611/6621/7411/7421/7611/7621 Secure Digital Controller (Compaq nw8240/nx8220) + + pci:v0000104Cd00008034sv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=PCI6411/6421/6611/6621/7411/7421/7611/7621 Secure Digital Controller (NX6110/NC6120) + + pci:v0000104Cd00008034sv0000103Csd0000308B* +- ID_MODEL_FROM_DATABASE=MX6125 ++ ID_MODEL_FROM_DATABASE=PCI6411/6421/6611/6621/7411/7421/7611/7621 Secure Digital Controller (MX6125) + + pci:v0000104Cd00008035* + ID_MODEL_FROM_DATABASE=PCI6411/6421/6611/6621/7411/7421/7611/7621 Smart Card Controller + + pci:v0000104Cd00008035sv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=Compaq nw8240/nx8220 ++ ID_MODEL_FROM_DATABASE=PCI6411/6421/6611/6621/7411/7421/7611/7621 Smart Card Controller (Compaq nw8240/nx8220) + + pci:v0000104Cd00008035sv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=PCI6411/6421/6611/6621/7411/7421/7611/7621 Smart Card Controller (NX6110/NC6120) + + pci:v0000104Cd00008036* + ID_MODEL_FROM_DATABASE=PCI6515 Cardbus Controller +@@ -14799,67 +14799,67 @@ pci:v0000104Cd00008039* + ID_MODEL_FROM_DATABASE=PCIxx12 Cardbus Controller + + pci:v0000104Cd00008039sv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=PCIxx12 Cardbus Controller (Compaq nx9420 Notebook) + + pci:v0000104Cd00008039sv0000103Csd000030A1* +- ID_MODEL_FROM_DATABASE=NC2400 ++ ID_MODEL_FROM_DATABASE=PCIxx12 Cardbus Controller (NC2400) + + pci:v0000104Cd00008039sv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=PCIxx12 Cardbus Controller (Compaq nw8440) + + pci:v0000104Cd00008039sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=PCIxx12 Cardbus Controller (VAIO VGN-NR120E) + + pci:v0000104Cd0000803A* + ID_MODEL_FROM_DATABASE=PCIxx12 OHCI Compliant IEEE 1394 Host Controller + + pci:v0000104Cd0000803Asv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=nx9420 ++ ID_MODEL_FROM_DATABASE=PCIxx12 OHCI Compliant IEEE 1394 Host Controller (nx9420) + + pci:v0000104Cd0000803Asv0000103Csd000030A1* +- ID_MODEL_FROM_DATABASE=NC2400 ++ ID_MODEL_FROM_DATABASE=PCIxx12 OHCI Compliant IEEE 1394 Host Controller (NC2400) + + pci:v0000104Cd0000803Asv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=PCIxx12 OHCI Compliant IEEE 1394 Host Controller (Compaq nw8440) + + pci:v0000104Cd0000803Asv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=PCIxx12 OHCI Compliant IEEE 1394 Host Controller (VAIO VGN-NR120E) + + pci:v0000104Cd0000803B* + ID_MODEL_FROM_DATABASE=5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD) + + pci:v0000104Cd0000803Bsv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=nx9420 ++ ID_MODEL_FROM_DATABASE=5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD) (nx9420) + + pci:v0000104Cd0000803Bsv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD) (Compaq nw8440) + + pci:v0000104Cd0000803Bsv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD) (VAIO VGN-NR120E) + + pci:v0000104Cd0000803C* + ID_MODEL_FROM_DATABASE=PCIxx12 SDA Standard Compliant SD Host Controller + + pci:v0000104Cd0000803Csv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=nx9420 ++ ID_MODEL_FROM_DATABASE=PCIxx12 SDA Standard Compliant SD Host Controller (nx9420) + + pci:v0000104Cd0000803Csv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=PCIxx12 SDA Standard Compliant SD Host Controller (Compaq nw8440) + + pci:v0000104Cd0000803D* + ID_MODEL_FROM_DATABASE=PCIxx12 GemCore based SmartCard controller + + pci:v0000104Cd0000803Dsv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=PCIxx12 GemCore based SmartCard controller (Compaq nx9420 Notebook) + + pci:v0000104Cd0000803Dsv0000103Csd000030A1* +- ID_MODEL_FROM_DATABASE=NC2400 ++ ID_MODEL_FROM_DATABASE=PCIxx12 GemCore based SmartCard controller (NC2400) + + pci:v0000104Cd0000803Dsv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=nc8430 ++ ID_MODEL_FROM_DATABASE=PCIxx12 GemCore based SmartCard controller (nc8430) + + pci:v0000104Cd0000803Dsv0000103Csd000030AA* +- ID_MODEL_FROM_DATABASE=nc6310 ++ ID_MODEL_FROM_DATABASE=PCIxx12 GemCore based SmartCard controller (nc6310) + + pci:v0000104Cd00008101* + ID_MODEL_FROM_DATABASE=TSB43DB42 IEEE-1394a-2000 Controller (PHY/Link) +@@ -14871,16 +14871,16 @@ pci:v0000104Cd00008204* + ID_MODEL_FROM_DATABASE=PCI7410/7510/7610 PCI Firmware Loading Function + + pci:v0000104Cd00008204sv00001028sd00000139* +- ID_MODEL_FROM_DATABASE=Latitude D400 ++ ID_MODEL_FROM_DATABASE=PCI7410/7510/7610 PCI Firmware Loading Function (Latitude D400) + + pci:v0000104Cd00008204sv00001028sd0000014E* +- ID_MODEL_FROM_DATABASE=Latitude D800 ++ ID_MODEL_FROM_DATABASE=PCI7410/7510/7610 PCI Firmware Loading Function (Latitude D800) + + pci:v0000104Cd00008231* + ID_MODEL_FROM_DATABASE=XIO2000(A)/XIO2200A PCI Express-to-PCI Bridge + + pci:v0000104Cd00008231sv00005678sd00001234* +- ID_MODEL_FROM_DATABASE=DC-1394 PCIe ++ ID_MODEL_FROM_DATABASE=XIO2000(A)/XIO2200A PCI Express-to-PCI Bridge (DC-1394 PCIe) + + pci:v0000104Cd00008232* + ID_MODEL_FROM_DATABASE=XIO3130 PCI Express Switch (Upstream) +@@ -14892,7 +14892,7 @@ pci:v0000104Cd00008235* + ID_MODEL_FROM_DATABASE=XIO2200A IEEE-1394a-2000 Controller (PHY/Link) + + pci:v0000104Cd00008235sv00005678sd00001234* +- ID_MODEL_FROM_DATABASE=DC-1394 PCIe ++ ID_MODEL_FROM_DATABASE=XIO2200A IEEE-1394a-2000 Controller (PHY/Link) (DC-1394 PCIe) + + pci:v0000104Cd0000823E* + ID_MODEL_FROM_DATABASE=XIO2213A/B/XIO2221 PCI Express to PCI Bridge [Cheetah Express] +@@ -14901,7 +14901,7 @@ pci:v0000104Cd0000823F* + ID_MODEL_FROM_DATABASE=XIO2213A/B/XIO2221 IEEE-1394b OHCI Controller [Cheetah Express] + + pci:v0000104Cd0000823Fsv00001546sd0000803C* +- ID_MODEL_FROM_DATABASE=FWB-PCIE1X11B ++ ID_MODEL_FROM_DATABASE=XIO2213A/B/XIO2221 IEEE-1394b OHCI Controller [Cheetah Express] (FWB-PCIE1X11B) + + pci:v0000104Cd00008240* + ID_MODEL_FROM_DATABASE=XIO2001 PCI Express-to-PCI Bridge +@@ -14913,16 +14913,16 @@ pci:v0000104Cd00008400* + ID_MODEL_FROM_DATABASE=ACX 100 22Mbps Wireless Interface + + pci:v0000104Cd00008400sv00001186sd00003B00* +- ID_MODEL_FROM_DATABASE=DWL-650+ PC Card cardbus 22Mbs Wireless Adapter [AirPlus] ++ ID_MODEL_FROM_DATABASE=ACX 100 22Mbps Wireless Interface (DWL-650+ PC Card cardbus 22Mbs Wireless Adapter [AirPlus]) + + pci:v0000104Cd00008400sv00001186sd00003B01* +- ID_MODEL_FROM_DATABASE=DWL-520+ 22Mbps PCI Wireless Adapter ++ ID_MODEL_FROM_DATABASE=ACX 100 22Mbps Wireless Interface (DWL-520+ 22Mbps PCI Wireless Adapter) + + pci:v0000104Cd00008400sv00001395sd00002201* +- ID_MODEL_FROM_DATABASE=WL22-PC ++ ID_MODEL_FROM_DATABASE=ACX 100 22Mbps Wireless Interface (WL22-PC) + + pci:v0000104Cd00008400sv000016ABsd00008501* +- ID_MODEL_FROM_DATABASE=WL-8305 IEEE802.11b+ Wireless LAN PCI Adapter ++ ID_MODEL_FROM_DATABASE=ACX 100 22Mbps Wireless Interface (WL-8305 IEEE802.11b+ Wireless LAN PCI Adapter) + + pci:v0000104Cd00008401* + ID_MODEL_FROM_DATABASE=ACX 100 22Mbps Wireless Interface +@@ -14937,58 +14937,58 @@ pci:v0000104Cd00009066* + ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface + + pci:v0000104Cd00009066sv00000308sd00003404* +- ID_MODEL_FROM_DATABASE=G-102 v1 802.11g Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (G-102 v1 802.11g Wireless Cardbus Adapter) + + pci:v0000104Cd00009066sv00000308sd00003406* +- ID_MODEL_FROM_DATABASE=G-162 v2 802.11g Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (G-162 v2 802.11g Wireless Cardbus Adapter) + + pci:v0000104Cd00009066sv0000104Csd00009066* +- ID_MODEL_FROM_DATABASE=WL212 Sitecom Wireless Network PCI-Card 100M (Version 1) ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (WL212 Sitecom Wireless Network PCI-Card 100M (Version 1)) + + pci:v0000104Cd00009066sv0000104Csd00009067* +- ID_MODEL_FROM_DATABASE=TNETW1130GVF ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (TNETW1130GVF) + + pci:v0000104Cd00009066sv0000104Csd00009096* +- ID_MODEL_FROM_DATABASE=Trendnet TEW-412PC Wireless PCI Adapter (Version A) ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (Trendnet TEW-412PC Wireless PCI Adapter (Version A)) + + pci:v0000104Cd00009066sv00001186sd00003B04* +- ID_MODEL_FROM_DATABASE=DWL-G520+ Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (DWL-G520+ Wireless PCI Adapter) + + pci:v0000104Cd00009066sv00001186sd00003B05* +- ID_MODEL_FROM_DATABASE=DWL-G650+ AirPlusG+ CardBus Wireless LAN ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (DWL-G650+ AirPlusG+ CardBus Wireless LAN) + + pci:v0000104Cd00009066sv00001186sd00003B08* +- ID_MODEL_FROM_DATABASE=AirPlus G DWL-G630 Wireless Cardbus Adapter (rev.B1) ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (AirPlus G DWL-G630 Wireless Cardbus Adapter (rev.B1)) + + pci:v0000104Cd00009066sv00001385sd00004C00* +- ID_MODEL_FROM_DATABASE=WG311v2 802.11g Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (WG311v2 802.11g Wireless PCI Adapter) + + pci:v0000104Cd00009066sv000013D1sd0000ABA0* +- ID_MODEL_FROM_DATABASE=SWLMP-54108 108Mbps Wireless mini PCI card 802.11g+ ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (SWLMP-54108 108Mbps Wireless mini PCI card 802.11g+) + + pci:v0000104Cd00009066sv000014EAsd0000AB07* +- ID_MODEL_FROM_DATABASE=GW-NS54GM Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (GW-NS54GM Wireless Cardbus Adapter) + + pci:v0000104Cd00009066sv000016ECsd0000010D* +- ID_MODEL_FROM_DATABASE=USR5416 802.11g Wireless Turbo PCI Adapter ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (USR5416 802.11g Wireless Turbo PCI Adapter) + + pci:v0000104Cd00009066sv000016ECsd0000010E* +- ID_MODEL_FROM_DATABASE=USR5410 802.11g Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (USR5410 802.11g Wireless Cardbus Adapter) + + pci:v0000104Cd00009066sv00001737sd00000033* +- ID_MODEL_FROM_DATABASE=WPC54G v2 802.11g Wireless-G Notebook Adapter ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (WPC54G v2 802.11g Wireless-G Notebook Adapter) + + pci:v0000104Cd00009066sv000017CFsd00000032* +- ID_MODEL_FROM_DATABASE=G-162 v1 802.11g Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (G-162 v1 802.11g Wireless Cardbus Adapter) + + pci:v0000104Cd00009066sv000017CFsd00000033* +- ID_MODEL_FROM_DATABASE=Z-Com XG650 Wireless miniPCI 802.11b/g ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (Z-Com XG650 Wireless miniPCI 802.11b/g) + + pci:v0000104Cd00009066sv0000187Esd0000340B* +- ID_MODEL_FROM_DATABASE=G-302 v2 802.11g Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (G-302 v2 802.11g Wireless PCI Adapter) + + pci:v0000104Cd00009066sv0000187Esd0000340C* +- ID_MODEL_FROM_DATABASE=G-360 v2 802.11g Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=ACX 111 54Mbps Wireless Interface (G-360 v2 802.11g Wireless PCI Adapter) + + pci:v0000104Cd0000A001* + ID_MODEL_FROM_DATABASE=TDC1570 +@@ -15003,13 +15003,13 @@ pci:v0000104Cd0000A106* + ID_MODEL_FROM_DATABASE=TMS320C6414 TMS320C6415 TMS320C6416 + + pci:v0000104Cd0000A106sv0000175Csd00005000* +- ID_MODEL_FROM_DATABASE=ASI50xx Audio Adapter ++ ID_MODEL_FROM_DATABASE=TMS320C6414 TMS320C6415 TMS320C6416 (ASI50xx Audio Adapter) + + pci:v0000104Cd0000A106sv0000175Csd00006400* +- ID_MODEL_FROM_DATABASE=ASI6400 Cobranet series ++ ID_MODEL_FROM_DATABASE=TMS320C6414 TMS320C6415 TMS320C6416 (ASI6400 Cobranet series) + + pci:v0000104Cd0000A106sv0000175Csd00008700* +- ID_MODEL_FROM_DATABASE=ASI87xx Radio Tuner card ++ ID_MODEL_FROM_DATABASE=TMS320C6414 TMS320C6415 TMS320C6416 (ASI87xx Radio Tuner card) + + pci:v0000104Cd0000AC10* + ID_MODEL_FROM_DATABASE=PCI1050 +@@ -15030,7 +15030,7 @@ pci:v0000104Cd0000AC16* + ID_MODEL_FROM_DATABASE=PCI1250 + + pci:v0000104Cd0000AC16sv00001014sd00000092* +- ID_MODEL_FROM_DATABASE=ThinkPad 600 ++ ID_MODEL_FROM_DATABASE=PCI1250 (ThinkPad 600) + + pci:v0000104Cd0000AC17* + ID_MODEL_FROM_DATABASE=PCI1220 +@@ -15048,19 +15048,19 @@ pci:v0000104Cd0000AC1B* + ID_MODEL_FROM_DATABASE=PCI1450 + + pci:v0000104Cd0000AC1Bsv00000E11sd0000B113* +- ID_MODEL_FROM_DATABASE=Armada M700 ++ ID_MODEL_FROM_DATABASE=PCI1450 (Armada M700) + + pci:v0000104Cd0000AC1Bsv00001014sd00000130* +- ID_MODEL_FROM_DATABASE=ThinkPad 600X/A21m/T20/T22 ++ ID_MODEL_FROM_DATABASE=PCI1450 (ThinkPad 600X/A21m/T20/T22) + + pci:v0000104Cd0000AC1C* + ID_MODEL_FROM_DATABASE=PCI1225 + + pci:v0000104Cd0000AC1Csv00000E11sd0000B121* +- ID_MODEL_FROM_DATABASE=Armada E500 ++ ID_MODEL_FROM_DATABASE=PCI1225 (Armada E500) + + pci:v0000104Cd0000AC1Csv00001028sd00000088* +- ID_MODEL_FROM_DATABASE=Latitude CPi A400XT ++ ID_MODEL_FROM_DATABASE=PCI1225 (Latitude CPi A400XT) + + pci:v0000104Cd0000AC1D* + ID_MODEL_FROM_DATABASE=PCI1251A +@@ -15102,40 +15102,40 @@ pci:v0000104Cd0000AC42* + ID_MODEL_FROM_DATABASE=PCI4451 PC card Cardbus Controller + + pci:v0000104Cd0000AC42sv00001028sd000000E6* +- ID_MODEL_FROM_DATABASE=PCI4451 PC card CardBus Controller (Inspiron 8100) ++ ID_MODEL_FROM_DATABASE=PCI4451 PC card Cardbus Controller (PCI4451 PC card CardBus Controller (Inspiron 8100)) + + pci:v0000104Cd0000AC44* + ID_MODEL_FROM_DATABASE=PCI4510 PC card Cardbus Controller + + pci:v0000104Cd0000AC44sv00001028sd00000149* +- ID_MODEL_FROM_DATABASE=Inspiron 5100 ++ ID_MODEL_FROM_DATABASE=PCI4510 PC card Cardbus Controller (Inspiron 5100) + + pci:v0000104Cd0000AC44sv00001028sd00000163* +- ID_MODEL_FROM_DATABASE=Latitude D505 ++ ID_MODEL_FROM_DATABASE=PCI4510 PC card Cardbus Controller (Latitude D505) + + pci:v0000104Cd0000AC44sv00001028sd00000196* +- ID_MODEL_FROM_DATABASE=Inspiron 5160 ++ ID_MODEL_FROM_DATABASE=PCI4510 PC card Cardbus Controller (Inspiron 5160) + + pci:v0000104Cd0000AC44sv00001071sd00008160* +- ID_MODEL_FROM_DATABASE=MIM2000 ++ ID_MODEL_FROM_DATABASE=PCI4510 PC card Cardbus Controller (MIM2000) + + pci:v0000104Cd0000AC46* + ID_MODEL_FROM_DATABASE=PCI4520 PC card Cardbus Controller + + pci:v0000104Cd0000AC46sv00001014sd00000552* +- ID_MODEL_FROM_DATABASE=ThinkPad ++ ID_MODEL_FROM_DATABASE=PCI4520 PC card Cardbus Controller (ThinkPad) + + pci:v0000104Cd0000AC47* + ID_MODEL_FROM_DATABASE=PCI7510 PC card Cardbus Controller + + pci:v0000104Cd0000AC47sv00001028sd00000139* +- ID_MODEL_FROM_DATABASE=Latitude D400 ++ ID_MODEL_FROM_DATABASE=PCI7510 PC card Cardbus Controller (Latitude D400) + + pci:v0000104Cd0000AC47sv00001028sd0000013F* +- ID_MODEL_FROM_DATABASE=Precision M60 ++ ID_MODEL_FROM_DATABASE=PCI7510 PC card Cardbus Controller (Precision M60) + + pci:v0000104Cd0000AC47sv00001028sd0000014E* +- ID_MODEL_FROM_DATABASE=Latitude D800 ++ ID_MODEL_FROM_DATABASE=PCI7510 PC card Cardbus Controller (Latitude D800) + + pci:v0000104Cd0000AC48* + ID_MODEL_FROM_DATABASE=PCI7610 PC Card Cardbus Controller +@@ -15147,10 +15147,10 @@ pci:v0000104Cd0000AC4A* + ID_MODEL_FROM_DATABASE=PCI7510/7610 CardBus Bridge + + pci:v0000104Cd0000AC4Asv00001028sd00000139* +- ID_MODEL_FROM_DATABASE=Latitude D400 ++ ID_MODEL_FROM_DATABASE=PCI7510/7610 CardBus Bridge (Latitude D400) + + pci:v0000104Cd0000AC4Asv00001028sd0000014E* +- ID_MODEL_FROM_DATABASE=Latitude D800 ++ ID_MODEL_FROM_DATABASE=PCI7510/7610 CardBus Bridge (Latitude D800) + + pci:v0000104Cd0000AC4B* + ID_MODEL_FROM_DATABASE=PCI7610 SD/MMC controller +@@ -15165,28 +15165,28 @@ pci:v0000104Cd0000AC51* + ID_MODEL_FROM_DATABASE=PCI1420 PC card Cardbus Controller + + pci:v0000104Cd0000AC51sv00000E11sd0000004E* +- ID_MODEL_FROM_DATABASE=Evo N600c ++ ID_MODEL_FROM_DATABASE=PCI1420 PC card Cardbus Controller (Evo N600c) + + pci:v0000104Cd0000AC51sv00001014sd00000148* +- ID_MODEL_FROM_DATABASE=ThinkPad A20m ++ ID_MODEL_FROM_DATABASE=PCI1420 PC card Cardbus Controller (ThinkPad A20m) + + pci:v0000104Cd0000AC51sv00001014sd0000023B* +- ID_MODEL_FROM_DATABASE=ThinkPad T23 ++ ID_MODEL_FROM_DATABASE=PCI1420 PC card Cardbus Controller (ThinkPad T23) + + pci:v0000104Cd0000AC51sv00001028sd000000B1* +- ID_MODEL_FROM_DATABASE=Latitude C600 ++ ID_MODEL_FROM_DATABASE=PCI1420 PC card Cardbus Controller (Latitude C600) + + pci:v0000104Cd0000AC51sv00001028sd0000012A* +- ID_MODEL_FROM_DATABASE=Latitude C640 ++ ID_MODEL_FROM_DATABASE=PCI1420 PC card Cardbus Controller (Latitude C640) + + pci:v0000104Cd0000AC51sv00001033sd000080CD* +- ID_MODEL_FROM_DATABASE=Versa Note VXi ++ ID_MODEL_FROM_DATABASE=PCI1420 PC card Cardbus Controller (Versa Note VXi) + + pci:v0000104Cd0000AC51sv000010CFsd00001095* +- ID_MODEL_FROM_DATABASE=Lifebook S-4510/C6155 ++ ID_MODEL_FROM_DATABASE=PCI1420 PC card Cardbus Controller (Lifebook S-4510/C6155) + + pci:v0000104Cd0000AC51sv0000E4BFsd00001000* +- ID_MODEL_FROM_DATABASE=CP2-2-HIPHOP ++ ID_MODEL_FROM_DATABASE=PCI1420 PC card Cardbus Controller (CP2-2-HIPHOP) + + pci:v0000104Cd0000AC52* + ID_MODEL_FROM_DATABASE=PCI1451 PC card Cardbus Controller +@@ -15198,55 +15198,55 @@ pci:v0000104Cd0000AC54* + ID_MODEL_FROM_DATABASE=PCI1620 PC Card Controller + + pci:v0000104Cd0000AC54sv0000103Csd000008B0* +- ID_MODEL_FROM_DATABASE=tc1100 tablet ++ ID_MODEL_FROM_DATABASE=PCI1620 PC Card Controller (tc1100 tablet) + + pci:v0000104Cd0000AC55* + ID_MODEL_FROM_DATABASE=PCI1520 PC card Cardbus Controller + + pci:v0000104Cd0000AC55sv00001014sd00000512* +- ID_MODEL_FROM_DATABASE=ThinkPad T30/T40 ++ ID_MODEL_FROM_DATABASE=PCI1520 PC card Cardbus Controller (ThinkPad T30/T40) + + pci:v0000104Cd0000AC55sv0000103Csd00000025* +- ID_MODEL_FROM_DATABASE=XE4500 Notebook ++ ID_MODEL_FROM_DATABASE=PCI1520 PC card Cardbus Controller (XE4500 Notebook) + + pci:v0000104Cd0000AC56* + ID_MODEL_FROM_DATABASE=PCI1510 PC card Cardbus Controller + + pci:v0000104Cd0000AC56sv00001014sd00000512* +- ID_MODEL_FROM_DATABASE=ThinkPad R50e ++ ID_MODEL_FROM_DATABASE=PCI1510 PC card Cardbus Controller (ThinkPad R50e) + + pci:v0000104Cd0000AC56sv00001014sd00000528* +- ID_MODEL_FROM_DATABASE=ThinkPad R40e ++ ID_MODEL_FROM_DATABASE=PCI1510 PC card Cardbus Controller (ThinkPad R40e) + + pci:v0000104Cd0000AC56sv000017AAsd00002012* +- ID_MODEL_FROM_DATABASE=ThinkPad T60/R60 series ++ ID_MODEL_FROM_DATABASE=PCI1510 PC card Cardbus Controller (ThinkPad T60/R60 series) + + pci:v0000104Cd0000AC60* + ID_MODEL_FROM_DATABASE=PCI2040 PCI to DSP Bridge Controller + + pci:v0000104Cd0000AC60sv0000175Csd00005100* +- ID_MODEL_FROM_DATABASE=ASI51xx Audio Adapter ++ ID_MODEL_FROM_DATABASE=PCI2040 PCI to DSP Bridge Controller (ASI51xx Audio Adapter) + + pci:v0000104Cd0000AC60sv0000175Csd00006100* +- ID_MODEL_FROM_DATABASE=ASI61xx Audio Adapter ++ ID_MODEL_FROM_DATABASE=PCI2040 PCI to DSP Bridge Controller (ASI61xx Audio Adapter) + + pci:v0000104Cd0000AC60sv0000175Csd00006200* +- ID_MODEL_FROM_DATABASE=ASI62xx Audio Adapter ++ ID_MODEL_FROM_DATABASE=PCI2040 PCI to DSP Bridge Controller (ASI62xx Audio Adapter) + + pci:v0000104Cd0000AC60sv0000175Csd00008800* +- ID_MODEL_FROM_DATABASE=ASI88xx Audio Adapter ++ ID_MODEL_FROM_DATABASE=PCI2040 PCI to DSP Bridge Controller (ASI88xx Audio Adapter) + + pci:v0000104Cd0000AC60sv0000186Fsd00003001* +- ID_MODEL_FROM_DATABASE=WR-G303 PCI radio receiver ++ ID_MODEL_FROM_DATABASE=PCI2040 PCI to DSP Bridge Controller (WR-G303 PCI radio receiver) + + pci:v0000104Cd0000AC60sv0000186Fsd00003005* +- ID_MODEL_FROM_DATABASE=WR-G305 PCI radio receiver ++ ID_MODEL_FROM_DATABASE=PCI2040 PCI to DSP Bridge Controller (WR-G305 PCI radio receiver) + + pci:v0000104Cd0000AC60sv0000186Fsd00003101* +- ID_MODEL_FROM_DATABASE=WR-G313 PCI radio receiver ++ ID_MODEL_FROM_DATABASE=PCI2040 PCI to DSP Bridge Controller (WR-G313 PCI radio receiver) + + pci:v0000104Cd0000AC60sv0000186Fsd00003105* +- ID_MODEL_FROM_DATABASE=WR-G315 PCI radio receiver ++ ID_MODEL_FROM_DATABASE=PCI2040 PCI to DSP Bridge Controller (WR-G315 PCI radio receiver) + + pci:v0000104Cd0000AC8D* + ID_MODEL_FROM_DATABASE=PCI 7620 +@@ -15255,13 +15255,13 @@ pci:v0000104Cd0000AC8E* + ID_MODEL_FROM_DATABASE=PCI7420 CardBus Controller + + pci:v0000104Cd0000AC8Esv00001028sd0000018D* +- ID_MODEL_FROM_DATABASE=Inspiron 700m/710m ++ ID_MODEL_FROM_DATABASE=PCI7420 CardBus Controller (Inspiron 700m/710m) + + pci:v0000104Cd0000AC8F* + ID_MODEL_FROM_DATABASE=PCI7420/7620 SD/MS-Pro Controller + + pci:v0000104Cd0000AC8Fsv00001028sd0000018D* +- ID_MODEL_FROM_DATABASE=Inspiron 700m/710m ++ ID_MODEL_FROM_DATABASE=PCI7420/7620 SD/MS-Pro Controller (Inspiron 700m/710m) + + pci:v0000104Cd0000B001* + ID_MODEL_FROM_DATABASE=TMS320C6424 +@@ -15336,10 +15336,10 @@ pci:v00001050d00000840* + ID_MODEL_FROM_DATABASE=W89C840 + + pci:v00001050d00000840sv00001050sd00000001* +- ID_MODEL_FROM_DATABASE=W89C840 Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=W89C840 (Ethernet Adapter) + + pci:v00001050d00000840sv00001050sd00000840* +- ID_MODEL_FROM_DATABASE=W89C840 Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=W89C840 (Ethernet Adapter) + + pci:v00001050d00000940* + ID_MODEL_FROM_DATABASE=W89C940 +@@ -15351,22 +15351,22 @@ pci:v00001050d00006692* + ID_MODEL_FROM_DATABASE=W6692 + + pci:v00001050d00006692sv00001043sd00001702* +- ID_MODEL_FROM_DATABASE=ISDN Adapter (PCI Bus, D, W) ++ ID_MODEL_FROM_DATABASE=W6692 (ISDN Adapter (PCI Bus, D, W)) + + pci:v00001050d00006692sv00001043sd00001703* +- ID_MODEL_FROM_DATABASE=ISDN Adapter (PCI Bus, DV, W) ++ ID_MODEL_FROM_DATABASE=W6692 (ISDN Adapter (PCI Bus, DV, W)) + + pci:v00001050d00006692sv00001043sd00001707* +- ID_MODEL_FROM_DATABASE=ISDN Adapter (PCI Bus, DV, W) ++ ID_MODEL_FROM_DATABASE=W6692 (ISDN Adapter (PCI Bus, DV, W)) + + pci:v00001050d00006692sv0000144Fsd00001702* +- ID_MODEL_FROM_DATABASE=ISDN Adapter (PCI Bus, D, W) ++ ID_MODEL_FROM_DATABASE=W6692 (ISDN Adapter (PCI Bus, D, W)) + + pci:v00001050d00006692sv0000144Fsd00001703* +- ID_MODEL_FROM_DATABASE=ISDN Adapter (PCI Bus, DV, W) ++ ID_MODEL_FROM_DATABASE=W6692 (ISDN Adapter (PCI Bus, DV, W)) + + pci:v00001050d00006692sv0000144Fsd00001707* +- ID_MODEL_FROM_DATABASE=ISDN Adapter (PCI Bus, DV, W) ++ ID_MODEL_FROM_DATABASE=W6692 (ISDN Adapter (PCI Bus, DV, W)) + + pci:v00001050d00009921* + ID_MODEL_FROM_DATABASE=W99200F MPEG-1 Video Encoder +@@ -15501,76 +15501,76 @@ pci:v00001057d00001801* + ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor + + pci:v00001057d00001801sv000014FBsd00000101* +- ID_MODEL_FROM_DATABASE=Transas Radar Imitator Board [RIM] ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (Transas Radar Imitator Board [RIM]) + + pci:v00001057d00001801sv000014FBsd00000102* +- ID_MODEL_FROM_DATABASE=Transas Radar Imitator Board [RIM-2] ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (Transas Radar Imitator Board [RIM-2]) + + pci:v00001057d00001801sv000014FBsd00000202* +- ID_MODEL_FROM_DATABASE=Transas Radar Integrator Board [RIB-2] ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (Transas Radar Integrator Board [RIB-2]) + + pci:v00001057d00001801sv000014FBsd00000611* +- ID_MODEL_FROM_DATABASE=1 channel CAN bus Controller [CanPci-1] ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (1 channel CAN bus Controller [CanPci-1]) + + pci:v00001057d00001801sv000014FBsd00000612* +- ID_MODEL_FROM_DATABASE=2 channels CAN bus Controller [CanPci-2] ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (2 channels CAN bus Controller [CanPci-2]) + + pci:v00001057d00001801sv000014FBsd00000613* +- ID_MODEL_FROM_DATABASE=3 channels CAN bus Controller [CanPci-3] ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (3 channels CAN bus Controller [CanPci-3]) + + pci:v00001057d00001801sv000014FBsd00000614* +- ID_MODEL_FROM_DATABASE=4 channels CAN bus Controller [CanPci-4] ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (4 channels CAN bus Controller [CanPci-4]) + + pci:v00001057d00001801sv000014FBsd00000621* +- ID_MODEL_FROM_DATABASE=1 channel CAN bus Controller [CanPci2-1] ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (1 channel CAN bus Controller [CanPci2-1]) + + pci:v00001057d00001801sv000014FBsd00000622* +- ID_MODEL_FROM_DATABASE=2 channels CAN bus Controller [CanPci2-2] ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (2 channels CAN bus Controller [CanPci2-2]) + + pci:v00001057d00001801sv000014FBsd00000810* +- ID_MODEL_FROM_DATABASE=Transas VTS Radar Integrator Board [RIB-4] ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (Transas VTS Radar Integrator Board [RIB-4]) + + pci:v00001057d00001801sv0000175Csd00004200* +- ID_MODEL_FROM_DATABASE=ASI4215 Audio Adapter ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (ASI4215 Audio Adapter) + + pci:v00001057d00001801sv0000175Csd00004300* +- ID_MODEL_FROM_DATABASE=ASI43xx Audio Adapter ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (ASI43xx Audio Adapter) + + pci:v00001057d00001801sv0000175Csd00004400* +- ID_MODEL_FROM_DATABASE=ASI4401 Audio Adapter ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (ASI4401 Audio Adapter) + + pci:v00001057d00001801sv0000ECC0sd00000010* +- ID_MODEL_FROM_DATABASE=Darla ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (Darla) + + pci:v00001057d00001801sv0000ECC0sd00000020* +- ID_MODEL_FROM_DATABASE=Gina ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (Gina) + + pci:v00001057d00001801sv0000ECC0sd00000030* +- ID_MODEL_FROM_DATABASE=Layla rev.0 ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (Layla rev.0) + + pci:v00001057d00001801sv0000ECC0sd00000031* +- ID_MODEL_FROM_DATABASE=Layla rev.1 ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (Layla rev.1) + + pci:v00001057d00001801sv0000ECC0sd00000040* +- ID_MODEL_FROM_DATABASE=Darla24 rev.0 ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (Darla24 rev.0) + + pci:v00001057d00001801sv0000ECC0sd00000041* +- ID_MODEL_FROM_DATABASE=Darla24 rev.1 ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (Darla24 rev.1) + + pci:v00001057d00001801sv0000ECC0sd00000050* +- ID_MODEL_FROM_DATABASE=Gina24 rev.0 ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (Gina24 rev.0) + + pci:v00001057d00001801sv0000ECC0sd00000051* +- ID_MODEL_FROM_DATABASE=Gina24 rev.1 ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (Gina24 rev.1) + + pci:v00001057d00001801sv0000ECC0sd00000070* +- ID_MODEL_FROM_DATABASE=Mona rev.0 ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (Mona rev.0) + + pci:v00001057d00001801sv0000ECC0sd00000071* +- ID_MODEL_FROM_DATABASE=Mona rev.1 ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (Mona rev.1) + + pci:v00001057d00001801sv0000ECC0sd00000072* +- ID_MODEL_FROM_DATABASE=Mona rev.2 ++ ID_MODEL_FROM_DATABASE=DSP56301 Digital Signal Processor (Mona rev.2) + + pci:v00001057d000018C0* + ID_MODEL_FROM_DATABASE=MPC8265A/8266/8272 +@@ -15585,40 +15585,40 @@ pci:v00001057d00003410* + ID_MODEL_FROM_DATABASE=DSP56361 Digital Signal Processor + + pci:v00001057d00003410sv0000ECC0sd00000050* +- ID_MODEL_FROM_DATABASE=Gina24 rev.0 ++ ID_MODEL_FROM_DATABASE=DSP56361 Digital Signal Processor (Gina24 rev.0) + + pci:v00001057d00003410sv0000ECC0sd00000051* +- ID_MODEL_FROM_DATABASE=Gina24 rev.1 ++ ID_MODEL_FROM_DATABASE=DSP56361 Digital Signal Processor (Gina24 rev.1) + + pci:v00001057d00003410sv0000ECC0sd00000060* +- ID_MODEL_FROM_DATABASE=Layla24 ++ ID_MODEL_FROM_DATABASE=DSP56361 Digital Signal Processor (Layla24) + + pci:v00001057d00003410sv0000ECC0sd00000070* +- ID_MODEL_FROM_DATABASE=Mona rev.0 ++ ID_MODEL_FROM_DATABASE=DSP56361 Digital Signal Processor (Mona rev.0) + + pci:v00001057d00003410sv0000ECC0sd00000071* +- ID_MODEL_FROM_DATABASE=Mona rev.1 ++ ID_MODEL_FROM_DATABASE=DSP56361 Digital Signal Processor (Mona rev.1) + + pci:v00001057d00003410sv0000ECC0sd00000072* +- ID_MODEL_FROM_DATABASE=Mona rev.2 ++ ID_MODEL_FROM_DATABASE=DSP56361 Digital Signal Processor (Mona rev.2) + + pci:v00001057d00003410sv0000ECC0sd00000080* +- ID_MODEL_FROM_DATABASE=Mia rev.0 ++ ID_MODEL_FROM_DATABASE=DSP56361 Digital Signal Processor (Mia rev.0) + + pci:v00001057d00003410sv0000ECC0sd00000081* +- ID_MODEL_FROM_DATABASE=Mia rev.1 ++ ID_MODEL_FROM_DATABASE=DSP56361 Digital Signal Processor (Mia rev.1) + + pci:v00001057d00003410sv0000ECC0sd00000090* +- ID_MODEL_FROM_DATABASE=Indigo ++ ID_MODEL_FROM_DATABASE=DSP56361 Digital Signal Processor (Indigo) + + pci:v00001057d00003410sv0000ECC0sd000000A0* +- ID_MODEL_FROM_DATABASE=Indigo IO ++ ID_MODEL_FROM_DATABASE=DSP56361 Digital Signal Processor (Indigo IO) + + pci:v00001057d00003410sv0000ECC0sd000000B0* +- ID_MODEL_FROM_DATABASE=Indigo DJ ++ ID_MODEL_FROM_DATABASE=DSP56361 Digital Signal Processor (Indigo DJ) + + pci:v00001057d00003410sv0000ECC0sd00000100* +- ID_MODEL_FROM_DATABASE=3G ++ ID_MODEL_FROM_DATABASE=DSP56361 Digital Signal Processor (3G) + + pci:v00001057d00004801* + ID_MODEL_FROM_DATABASE=Raven +@@ -15639,55 +15639,55 @@ pci:v00001057d00005600* + ID_MODEL_FROM_DATABASE=SM56 PCI Modem + + pci:v00001057d00005600sv00001057sd00000300* +- ID_MODEL_FROM_DATABASE=SM56 PCI Speakerphone Modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Speakerphone Modem) + + pci:v00001057d00005600sv00001057sd00000301* +- ID_MODEL_FROM_DATABASE=SM56 PCI Voice Modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Voice Modem) + + pci:v00001057d00005600sv00001057sd00000302* +- ID_MODEL_FROM_DATABASE=SM56 PCI Fax Modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Fax Modem) + + pci:v00001057d00005600sv00001057sd00005600* +- ID_MODEL_FROM_DATABASE=SM56 PCI Voice modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Voice modem) + + pci:v00001057d00005600sv000013D2sd00000300* +- ID_MODEL_FROM_DATABASE=SM56 PCI Speakerphone Modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Speakerphone Modem) + + pci:v00001057d00005600sv000013D2sd00000301* +- ID_MODEL_FROM_DATABASE=SM56 PCI Voice modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Voice modem) + + pci:v00001057d00005600sv000013D2sd00000302* +- ID_MODEL_FROM_DATABASE=SM56 PCI Fax Modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Fax Modem) + + pci:v00001057d00005600sv00001436sd00000300* +- ID_MODEL_FROM_DATABASE=SM56 PCI Speakerphone Modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Speakerphone Modem) + + pci:v00001057d00005600sv00001436sd00000301* +- ID_MODEL_FROM_DATABASE=SM56 PCI Voice modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Voice modem) + + pci:v00001057d00005600sv00001436sd00000302* +- ID_MODEL_FROM_DATABASE=SM56 PCI Fax Modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Fax Modem) + + pci:v00001057d00005600sv0000144Fsd0000100C* +- ID_MODEL_FROM_DATABASE=SM56 PCI Fax Modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Fax Modem) + + pci:v00001057d00005600sv00001494sd00000300* +- ID_MODEL_FROM_DATABASE=SM56 PCI Speakerphone Modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Speakerphone Modem) + + pci:v00001057d00005600sv00001494sd00000301* +- ID_MODEL_FROM_DATABASE=SM56 PCI Voice modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Voice modem) + + pci:v00001057d00005600sv000014C8sd00000300* +- ID_MODEL_FROM_DATABASE=SM56 PCI Speakerphone Modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Speakerphone Modem) + + pci:v00001057d00005600sv000014C8sd00000302* +- ID_MODEL_FROM_DATABASE=SM56 PCI Fax Modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Fax Modem) + + pci:v00001057d00005600sv00001668sd00000300* +- ID_MODEL_FROM_DATABASE=SM56 PCI Speakerphone Modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Speakerphone Modem) + + pci:v00001057d00005600sv00001668sd00000302* +- ID_MODEL_FROM_DATABASE=SM56 PCI Fax Modem ++ ID_MODEL_FROM_DATABASE=SM56 PCI Modem (SM56 PCI Fax Modem) + + pci:v00001057d00005608* + ID_MODEL_FROM_DATABASE=Wildcard X100P +@@ -15723,16 +15723,16 @@ pci:v0000105Ad00000D30* + ID_MODEL_FROM_DATABASE=PDC20265 (FastTrak100 Lite/Ultra100) + + pci:v0000105Ad00000D30sv00001043sd00008042* +- ID_MODEL_FROM_DATABASE=AV7266-E South Bridge Promise RAID ++ ID_MODEL_FROM_DATABASE=PDC20265 (FastTrak100 Lite/Ultra100) (AV7266-E South Bridge Promise RAID) + + pci:v0000105Ad00000D30sv0000105Asd00004D33* +- ID_MODEL_FROM_DATABASE=Ultra100 ++ ID_MODEL_FROM_DATABASE=PDC20265 (FastTrak100 Lite/Ultra100) (Ultra100) + + pci:v0000105Ad00000D38* + ID_MODEL_FROM_DATABASE=20263 + + pci:v0000105Ad00000D38sv0000105Asd00004D39* +- ID_MODEL_FROM_DATABASE=Fasttrak66 ++ ID_MODEL_FROM_DATABASE=20263 (Fasttrak66) + + pci:v0000105Ad00001275* + ID_MODEL_FROM_DATABASE=20275 +@@ -15744,10 +15744,10 @@ pci:v0000105Ad00003319* + ID_MODEL_FROM_DATABASE=PDC20319 (FastTrak S150 TX4) + + pci:v0000105Ad00003319sv0000105Asd00003319* +- ID_MODEL_FROM_DATABASE=FastTrak S150 TX4 4 port SATA PCI board ++ ID_MODEL_FROM_DATABASE=PDC20319 (FastTrak S150 TX4) (FastTrak S150 TX4 4 port SATA PCI board) + + pci:v0000105Ad00003319sv00008086sd00003427* +- ID_MODEL_FROM_DATABASE=S875WP1-E mainboard ++ ID_MODEL_FROM_DATABASE=PDC20319 (FastTrak S150 TX4) (S875WP1-E mainboard) + + pci:v0000105Ad00003371* + ID_MODEL_FROM_DATABASE=PDC20371 (FastTrak S150 TX2plus) +@@ -15756,13 +15756,13 @@ pci:v0000105Ad00003373* + ID_MODEL_FROM_DATABASE=PDC20378 (FastTrak 378/SATA 378) + + pci:v0000105Ad00003373sv00001043sd000080F5* +- ID_MODEL_FROM_DATABASE=K8V Deluxe/PC-DL Deluxe motherboard ++ ID_MODEL_FROM_DATABASE=PDC20378 (FastTrak 378/SATA 378) (K8V Deluxe/PC-DL Deluxe motherboard) + + pci:v0000105Ad00003373sv00001462sd0000590D* +- ID_MODEL_FROM_DATABASE=KT6 Delta-FIS2R (MS-6590) ++ ID_MODEL_FROM_DATABASE=PDC20378 (FastTrak 378/SATA 378) (KT6 Delta-FIS2R (MS-6590)) + + pci:v0000105Ad00003373sv00001462sd0000702E* +- ID_MODEL_FROM_DATABASE=K8T NEO FIS2R motherboard ++ ID_MODEL_FROM_DATABASE=PDC20378 (FastTrak 378/SATA 378) (K8T NEO FIS2R motherboard) + + pci:v0000105Ad00003375* + ID_MODEL_FROM_DATABASE=PDC20375 (SATA150 TX2plus) +@@ -15771,7 +15771,7 @@ pci:v0000105Ad00003376* + ID_MODEL_FROM_DATABASE=PDC20376 (FastTrak 376) + + pci:v0000105Ad00003376sv00001043sd0000809E* +- ID_MODEL_FROM_DATABASE=A7V8X motherboard ++ ID_MODEL_FROM_DATABASE=PDC20376 (FastTrak 376) (A7V8X motherboard) + + pci:v0000105Ad00003515* + ID_MODEL_FROM_DATABASE=PDC40719 [FastTrak TX4300/TX4310] +@@ -15813,58 +15813,58 @@ pci:v0000105Ad00004D30* + ID_MODEL_FROM_DATABASE=PDC20267 (FastTrak100/Ultra100) + + pci:v0000105Ad00004D30sv0000105Asd00004D33* +- ID_MODEL_FROM_DATABASE=Ultra100 ++ ID_MODEL_FROM_DATABASE=PDC20267 (FastTrak100/Ultra100) (Ultra100) + + pci:v0000105Ad00004D30sv0000105Asd00004D39* +- ID_MODEL_FROM_DATABASE=FastTrak100 ++ ID_MODEL_FROM_DATABASE=PDC20267 (FastTrak100/Ultra100) (FastTrak100) + + pci:v0000105Ad00004D30sv00008086sd00005744* +- ID_MODEL_FROM_DATABASE=S845WD1-E mainboard ++ ID_MODEL_FROM_DATABASE=PDC20267 (FastTrak100/Ultra100) (S845WD1-E mainboard) + + pci:v0000105Ad00004D33* + ID_MODEL_FROM_DATABASE=20246 + + pci:v0000105Ad00004D33sv0000105Asd00004D33* +- ID_MODEL_FROM_DATABASE=20246 IDE Controller ++ ID_MODEL_FROM_DATABASE=20246 (IDE Controller) + + pci:v0000105Ad00004D38* + ID_MODEL_FROM_DATABASE=PDC20262 (FastTrak66/Ultra66) + + pci:v0000105Ad00004D38sv0000105Asd00004D30* +- ID_MODEL_FROM_DATABASE=Ultra Device on SuperTrak ++ ID_MODEL_FROM_DATABASE=PDC20262 (FastTrak66/Ultra66) (Ultra Device on SuperTrak) + + pci:v0000105Ad00004D38sv0000105Asd00004D33* +- ID_MODEL_FROM_DATABASE=Ultra66 ++ ID_MODEL_FROM_DATABASE=PDC20262 (FastTrak66/Ultra66) (Ultra66) + + pci:v0000105Ad00004D38sv0000105Asd00004D39* +- ID_MODEL_FROM_DATABASE=FastTrak66 ++ ID_MODEL_FROM_DATABASE=PDC20262 (FastTrak66/Ultra66) (FastTrak66) + + pci:v0000105Ad00004D68* + ID_MODEL_FROM_DATABASE=PDC20268 [Ultra100 TX2] + + pci:v0000105Ad00004D68sv0000105Asd00004D68* +- ID_MODEL_FROM_DATABASE=Ultra100 TX2 ++ ID_MODEL_FROM_DATABASE=PDC20268 [Ultra100 TX2] (Ultra100 TX2) + + pci:v0000105Ad00004D69* + ID_MODEL_FROM_DATABASE=20269 + + pci:v0000105Ad00004D69sv0000105Asd00004D68* +- ID_MODEL_FROM_DATABASE=Ultra133TX2 ++ ID_MODEL_FROM_DATABASE=20269 (Ultra133TX2) + + pci:v0000105Ad00005275* + ID_MODEL_FROM_DATABASE=PDC20276 (MBFastTrak133 Lite) + + pci:v0000105Ad00005275sv00001043sd0000807E* +- ID_MODEL_FROM_DATABASE=A7V333 motherboard. ++ ID_MODEL_FROM_DATABASE=PDC20276 (MBFastTrak133 Lite) (A7V333 motherboard.) + + pci:v0000105Ad00005275sv0000105Asd00000275* +- ID_MODEL_FROM_DATABASE=SuperTrak SX6000 IDE ++ ID_MODEL_FROM_DATABASE=PDC20276 (MBFastTrak133 Lite) (SuperTrak SX6000 IDE) + + pci:v0000105Ad00005275sv0000105Asd00001275* +- ID_MODEL_FROM_DATABASE=MBFastTrak133 Lite (tm) Controller (RAID mode) ++ ID_MODEL_FROM_DATABASE=PDC20276 (MBFastTrak133 Lite) (MBFastTrak133 Lite (tm) Controller (RAID mode)) + + pci:v0000105Ad00005275sv00001458sd0000B001* +- ID_MODEL_FROM_DATABASE=MBUltra 133 ++ ID_MODEL_FROM_DATABASE=PDC20276 (MBFastTrak133 Lite) (MBUltra 133) + + pci:v0000105Ad00005300* + ID_MODEL_FROM_DATABASE=DC5300 +@@ -15873,13 +15873,13 @@ pci:v0000105Ad00006268* + ID_MODEL_FROM_DATABASE=PDC20270 (FastTrak100 LP/TX2/TX4) + + pci:v0000105Ad00006268sv0000105Asd00004D68* +- ID_MODEL_FROM_DATABASE=FastTrak100 TX2 ++ ID_MODEL_FROM_DATABASE=PDC20270 (FastTrak100 LP/TX2/TX4) (FastTrak100 TX2) + + pci:v0000105Ad00006269* + ID_MODEL_FROM_DATABASE=PDC20271 (FastTrak TX2000) + + pci:v0000105Ad00006269sv0000105Asd00006269* +- ID_MODEL_FROM_DATABASE=FastTrak TX2/TX2000 ++ ID_MODEL_FROM_DATABASE=PDC20271 (FastTrak TX2000) (FastTrak TX2/TX2000) + + pci:v0000105Ad00006300* + ID_MODEL_FROM_DATABASE=PDC81731 [FastTrak SX8300] +@@ -15912,43 +15912,43 @@ pci:v0000105Ad00008650* + ID_MODEL_FROM_DATABASE=81384 [SuperTrak EX SAS and SATA RAID Controller] + + pci:v0000105Ad00008650sv0000105Asd00004600* +- ID_MODEL_FROM_DATABASE=SuperTrak EX4650A ++ ID_MODEL_FROM_DATABASE=81384 [SuperTrak EX SAS and SATA RAID Controller] (SuperTrak EX4650A) + + pci:v0000105Ad00008650sv0000105Asd00004601* +- ID_MODEL_FROM_DATABASE=SuperTrak EX4650 ++ ID_MODEL_FROM_DATABASE=81384 [SuperTrak EX SAS and SATA RAID Controller] (SuperTrak EX4650) + + pci:v0000105Ad00008650sv0000105Asd00004610* +- ID_MODEL_FROM_DATABASE=SuperTrak EX4650EL ++ ID_MODEL_FROM_DATABASE=81384 [SuperTrak EX SAS and SATA RAID Controller] (SuperTrak EX4650EL) + + pci:v0000105Ad00008650sv0000105Asd00008600* +- ID_MODEL_FROM_DATABASE=SuperTrak EX8650EL ++ ID_MODEL_FROM_DATABASE=81384 [SuperTrak EX SAS and SATA RAID Controller] (SuperTrak EX8650EL) + + pci:v0000105Ad00008650sv0000105Asd00008601* +- ID_MODEL_FROM_DATABASE=SuperTrak EX8650A ++ ID_MODEL_FROM_DATABASE=81384 [SuperTrak EX SAS and SATA RAID Controller] (SuperTrak EX8650A) + + pci:v0000105Ad00008650sv0000105Asd00008602* +- ID_MODEL_FROM_DATABASE=SuperTrak EX8654 ++ ID_MODEL_FROM_DATABASE=81384 [SuperTrak EX SAS and SATA RAID Controller] (SuperTrak EX8654) + + pci:v0000105Ad00008650sv0000105Asd00008603* +- ID_MODEL_FROM_DATABASE=SuperTrak EX8658 ++ ID_MODEL_FROM_DATABASE=81384 [SuperTrak EX SAS and SATA RAID Controller] (SuperTrak EX8658) + + pci:v0000105Ad00008650sv0000105Asd00008604* +- ID_MODEL_FROM_DATABASE=SuperTrak EX8650 ++ ID_MODEL_FROM_DATABASE=81384 [SuperTrak EX SAS and SATA RAID Controller] (SuperTrak EX8650) + + pci:v0000105Ad00008650sv0000105Asd00008610* +- ID_MODEL_FROM_DATABASE=SuperTrak EX8650M ++ ID_MODEL_FROM_DATABASE=81384 [SuperTrak EX SAS and SATA RAID Controller] (SuperTrak EX8650M) + + pci:v0000105Ad00008650sv0000105Asd0000A600* +- ID_MODEL_FROM_DATABASE=SuperTrak EX12650 ++ ID_MODEL_FROM_DATABASE=81384 [SuperTrak EX SAS and SATA RAID Controller] (SuperTrak EX12650) + + pci:v0000105Ad00008650sv0000105Asd0000B600* +- ID_MODEL_FROM_DATABASE=SuperTrak EX16650 ++ ID_MODEL_FROM_DATABASE=81384 [SuperTrak EX SAS and SATA RAID Controller] (SuperTrak EX16650) + + pci:v0000105Ad00008650sv0000105Asd0000B601* +- ID_MODEL_FROM_DATABASE=SuperTrak EX16654 ++ ID_MODEL_FROM_DATABASE=81384 [SuperTrak EX SAS and SATA RAID Controller] (SuperTrak EX16654) + + pci:v0000105Ad00008650sv0000105Asd0000B602* +- ID_MODEL_FROM_DATABASE=SuperTrak EX16658 ++ ID_MODEL_FROM_DATABASE=81384 [SuperTrak EX SAS and SATA RAID Controller] (SuperTrak EX16658) + + pci:v0000105Ad00008760* + ID_MODEL_FROM_DATABASE=PM8010 [SuperTrak EX SAS and SATA 6G RAID Controller] +@@ -15975,106 +15975,106 @@ pci:v0000105Dd00002339* + ID_MODEL_FROM_DATABASE=Imagine 128-II + + pci:v0000105Dd00002339sv0000105Dsd00000000* +- ID_MODEL_FROM_DATABASE=Imagine 128 series 2 4Mb VRAM ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Imagine 128 series 2 4Mb VRAM) + + pci:v0000105Dd00002339sv0000105Dsd00000001* +- ID_MODEL_FROM_DATABASE=Imagine 128 series 2 4Mb VRAM ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Imagine 128 series 2 4Mb VRAM) + + pci:v0000105Dd00002339sv0000105Dsd00000002* +- ID_MODEL_FROM_DATABASE=Imagine 128 series 2 4Mb VRAM ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Imagine 128 series 2 4Mb VRAM) + + pci:v0000105Dd00002339sv0000105Dsd00000003* +- ID_MODEL_FROM_DATABASE=Imagine 128 series 2 4Mb VRAM ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Imagine 128 series 2 4Mb VRAM) + + pci:v0000105Dd00002339sv0000105Dsd00000004* +- ID_MODEL_FROM_DATABASE=Imagine 128 series 2 4Mb VRAM ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Imagine 128 series 2 4Mb VRAM) + + pci:v0000105Dd00002339sv0000105Dsd00000005* +- ID_MODEL_FROM_DATABASE=Imagine 128 series 2 4Mb VRAM ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Imagine 128 series 2 4Mb VRAM) + + pci:v0000105Dd00002339sv0000105Dsd00000006* +- ID_MODEL_FROM_DATABASE=Imagine 128 series 2 4Mb VRAM ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Imagine 128 series 2 4Mb VRAM) + + pci:v0000105Dd00002339sv0000105Dsd00000007* +- ID_MODEL_FROM_DATABASE=Imagine 128 series 2 4Mb VRAM ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Imagine 128 series 2 4Mb VRAM) + + pci:v0000105Dd00002339sv0000105Dsd00000008* +- ID_MODEL_FROM_DATABASE=Imagine 128 series 2e 4Mb DRAM ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Imagine 128 series 2e 4Mb DRAM) + + pci:v0000105Dd00002339sv0000105Dsd00000009* +- ID_MODEL_FROM_DATABASE=Imagine 128 series 2e 4Mb DRAM ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Imagine 128 series 2e 4Mb DRAM) + + pci:v0000105Dd00002339sv0000105Dsd0000000A* +- ID_MODEL_FROM_DATABASE=Imagine 128 series 2 8Mb VRAM ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Imagine 128 series 2 8Mb VRAM) + + pci:v0000105Dd00002339sv0000105Dsd0000000B* +- ID_MODEL_FROM_DATABASE=Imagine 128 series 2 8Mb H-VRAM ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Imagine 128 series 2 8Mb H-VRAM) + + pci:v0000105Dd00002339sv000011A4sd0000000A* +- ID_MODEL_FROM_DATABASE=Barco Metheus 5 Megapixel ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Barco Metheus 5 Megapixel) + + pci:v0000105Dd00002339sv000013CCsd00000000* +- ID_MODEL_FROM_DATABASE=Barco Metheus 5 Megapixel ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Barco Metheus 5 Megapixel) + + pci:v0000105Dd00002339sv000013CCsd00000004* +- ID_MODEL_FROM_DATABASE=Barco Metheus 5 Megapixel ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Barco Metheus 5 Megapixel) + + pci:v0000105Dd00002339sv000013CCsd00000005* +- ID_MODEL_FROM_DATABASE=Barco Metheus 5 Megapixel ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Barco Metheus 5 Megapixel) + + pci:v0000105Dd00002339sv000013CCsd00000006* +- ID_MODEL_FROM_DATABASE=Barco Metheus 5 Megapixel ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Barco Metheus 5 Megapixel) + + pci:v0000105Dd00002339sv000013CCsd00000008* +- ID_MODEL_FROM_DATABASE=Barco Metheus 5 Megapixel ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Barco Metheus 5 Megapixel) + + pci:v0000105Dd00002339sv000013CCsd00000009* +- ID_MODEL_FROM_DATABASE=Barco Metheus 5 Megapixel ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Barco Metheus 5 Megapixel) + + pci:v0000105Dd00002339sv000013CCsd0000000A* +- ID_MODEL_FROM_DATABASE=Barco Metheus 5 Megapixel ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Barco Metheus 5 Megapixel) + + pci:v0000105Dd00002339sv000013CCsd0000000C* +- ID_MODEL_FROM_DATABASE=Barco Metheus 5 Megapixel ++ ID_MODEL_FROM_DATABASE=Imagine 128-II (Barco Metheus 5 Megapixel) + + pci:v0000105Dd0000493D* + ID_MODEL_FROM_DATABASE=Imagine 128 T2R [Ticket to Ride] + + pci:v0000105Dd0000493Dsv000011A4sd0000000A* +- ID_MODEL_FROM_DATABASE=Barco Metheus 5 Megapixel, Dual Head ++ ID_MODEL_FROM_DATABASE=Imagine 128 T2R [Ticket to Ride] (Barco Metheus 5 Megapixel, Dual Head) + + pci:v0000105Dd0000493Dsv000011A4sd0000000B* +- ID_MODEL_FROM_DATABASE=Barco Metheus 5 Megapixel, Dual Head ++ ID_MODEL_FROM_DATABASE=Imagine 128 T2R [Ticket to Ride] (Barco Metheus 5 Megapixel, Dual Head) + + pci:v0000105Dd0000493Dsv000013CCsd00000002* +- ID_MODEL_FROM_DATABASE=Barco Metheus 4 Megapixel, Dual Head ++ ID_MODEL_FROM_DATABASE=Imagine 128 T2R [Ticket to Ride] (Barco Metheus 4 Megapixel, Dual Head) + + pci:v0000105Dd0000493Dsv000013CCsd00000003* +- ID_MODEL_FROM_DATABASE=Barco Metheus 5 Megapixel, Dual Head ++ ID_MODEL_FROM_DATABASE=Imagine 128 T2R [Ticket to Ride] (Barco Metheus 5 Megapixel, Dual Head) + + pci:v0000105Dd0000493Dsv000013CCsd00000007* +- ID_MODEL_FROM_DATABASE=Barco Metheus 5 Megapixel, Dual Head ++ ID_MODEL_FROM_DATABASE=Imagine 128 T2R [Ticket to Ride] (Barco Metheus 5 Megapixel, Dual Head) + + pci:v0000105Dd0000493Dsv000013CCsd00000008* +- ID_MODEL_FROM_DATABASE=Barco Metheus 5 Megapixel, Dual Head ++ ID_MODEL_FROM_DATABASE=Imagine 128 T2R [Ticket to Ride] (Barco Metheus 5 Megapixel, Dual Head) + + pci:v0000105Dd0000493Dsv000013CCsd00000009* +- ID_MODEL_FROM_DATABASE=Barco Metheus 5 Megapixel, Dual Head ++ ID_MODEL_FROM_DATABASE=Imagine 128 T2R [Ticket to Ride] (Barco Metheus 5 Megapixel, Dual Head) + + pci:v0000105Dd0000493Dsv000013CCsd0000000A* +- ID_MODEL_FROM_DATABASE=Barco Metheus 5 Megapixel, Dual Head ++ ID_MODEL_FROM_DATABASE=Imagine 128 T2R [Ticket to Ride] (Barco Metheus 5 Megapixel, Dual Head) + + pci:v0000105Dd00005348* + ID_MODEL_FROM_DATABASE=Revolution 4 + + pci:v0000105Dd00005348sv0000105Dsd00000037* +- ID_MODEL_FROM_DATABASE=Revolution IV-FP AGP (For SGI 1600SW) ++ ID_MODEL_FROM_DATABASE=Revolution 4 (Revolution IV-FP AGP (For SGI 1600SW)) + + pci:v0000105Dd00005348sv000011A4sd00000028* +- ID_MODEL_FROM_DATABASE=PVS5600M ++ ID_MODEL_FROM_DATABASE=Revolution 4 (PVS5600M) + + pci:v0000105Dd00005348sv000011A4sd00000038* +- ID_MODEL_FROM_DATABASE=PVS5600D ++ ID_MODEL_FROM_DATABASE=Revolution 4 (PVS5600D) + + pci:v0000105E* + ID_VENDOR_FROM_DATABASE=Vtech Computers Ltd +@@ -16236,43 +16236,43 @@ pci:v00001069d00000050* + ID_MODEL_FROM_DATABASE=AcceleRAID 352/170/160 support Device + + pci:v00001069d00000050sv00001069sd00000050* +- ID_MODEL_FROM_DATABASE=AcceleRAID 352 support Device ++ ID_MODEL_FROM_DATABASE=AcceleRAID 352/170/160 support Device (AcceleRAID 352 support Device) + + pci:v00001069d00000050sv00001069sd00000052* +- ID_MODEL_FROM_DATABASE=AcceleRAID 170 support Device ++ ID_MODEL_FROM_DATABASE=AcceleRAID 352/170/160 support Device (AcceleRAID 170 support Device) + + pci:v00001069d00000050sv00001069sd00000054* +- ID_MODEL_FROM_DATABASE=AcceleRAID 160 support Device ++ ID_MODEL_FROM_DATABASE=AcceleRAID 352/170/160 support Device (AcceleRAID 160 support Device) + + pci:v00001069d0000B166* + ID_MODEL_FROM_DATABASE=AcceleRAID 600/500/400/Sapphire support Device + + pci:v00001069d0000B166sv00001014sd00000242* +- ID_MODEL_FROM_DATABASE=iSeries 2872 DASD IOA ++ ID_MODEL_FROM_DATABASE=AcceleRAID 600/500/400/Sapphire support Device (iSeries 2872 DASD IOA) + + pci:v00001069d0000B166sv00001014sd00000266* +- ID_MODEL_FROM_DATABASE=Dual Channel PCI-X U320 SCSI Adapter ++ ID_MODEL_FROM_DATABASE=AcceleRAID 600/500/400/Sapphire support Device (Dual Channel PCI-X U320 SCSI Adapter) + + pci:v00001069d0000B166sv00001014sd00000278* +- ID_MODEL_FROM_DATABASE=Dual Channel PCI-X U320 SCSI RAID Adapter ++ ID_MODEL_FROM_DATABASE=AcceleRAID 600/500/400/Sapphire support Device (Dual Channel PCI-X U320 SCSI RAID Adapter) + + pci:v00001069d0000B166sv00001014sd000002D3* +- ID_MODEL_FROM_DATABASE=Dual Channel PCI-X U320 SCSI Adapter ++ ID_MODEL_FROM_DATABASE=AcceleRAID 600/500/400/Sapphire support Device (Dual Channel PCI-X U320 SCSI Adapter) + + pci:v00001069d0000B166sv00001014sd000002D4* +- ID_MODEL_FROM_DATABASE=Dual Channel PCI-X U320 SCSI RAID Adapter ++ ID_MODEL_FROM_DATABASE=AcceleRAID 600/500/400/Sapphire support Device (Dual Channel PCI-X U320 SCSI RAID Adapter) + + pci:v00001069d0000B166sv00001069sd00000200* +- ID_MODEL_FROM_DATABASE=AcceleRAID 400, Single Channel, PCI-X, U320, SCSI RAID ++ ID_MODEL_FROM_DATABASE=AcceleRAID 600/500/400/Sapphire support Device (AcceleRAID 400, Single Channel, PCI-X, U320, SCSI RAID) + + pci:v00001069d0000B166sv00001069sd00000202* +- ID_MODEL_FROM_DATABASE=AcceleRAID Sapphire, Dual Channel, PCI-X, U320, SCSI RAID ++ ID_MODEL_FROM_DATABASE=AcceleRAID 600/500/400/Sapphire support Device (AcceleRAID Sapphire, Dual Channel, PCI-X, U320, SCSI RAID) + + pci:v00001069d0000B166sv00001069sd00000204* +- ID_MODEL_FROM_DATABASE=AcceleRAID 500, Dual Channel, Low-Profile, PCI-X, U320, SCSI RAID ++ ID_MODEL_FROM_DATABASE=AcceleRAID 600/500/400/Sapphire support Device (AcceleRAID 500, Dual Channel, Low-Profile, PCI-X, U320, SCSI RAID) + + pci:v00001069d0000B166sv00001069sd00000206* +- ID_MODEL_FROM_DATABASE=AcceleRAID 600, Dual Channel, PCI-X, U320, SCSI RAID ++ ID_MODEL_FROM_DATABASE=AcceleRAID 600/500/400/Sapphire support Device (AcceleRAID 600, Dual Channel, PCI-X, U320, SCSI RAID) + + pci:v00001069d0000BA55* + ID_MODEL_FROM_DATABASE=eXtremeRAID 1100 support Device +@@ -16281,16 +16281,16 @@ pci:v00001069d0000BA56* + ID_MODEL_FROM_DATABASE=eXtremeRAID 2000/3000 support Device + + pci:v00001069d0000BA56sv00001069sd00000030* +- ID_MODEL_FROM_DATABASE=eXtremeRAID 3000 support Device ++ ID_MODEL_FROM_DATABASE=eXtremeRAID 2000/3000 support Device (eXtremeRAID 3000 support Device) + + pci:v00001069d0000BA56sv00001069sd00000040* +- ID_MODEL_FROM_DATABASE=eXtremeRAID 2000 support Device ++ ID_MODEL_FROM_DATABASE=eXtremeRAID 2000/3000 support Device (eXtremeRAID 2000 support Device) + + pci:v00001069d0000BA57* + ID_MODEL_FROM_DATABASE=eXtremeRAID 4000/5000 support Device + + pci:v00001069d0000BA57sv00001069sd00000072* +- ID_MODEL_FROM_DATABASE=eXtremeRAID 5000 support Device ++ ID_MODEL_FROM_DATABASE=eXtremeRAID 4000/5000 support Device (eXtremeRAID 5000 support Device) + + pci:v0000106A* + ID_VENDOR_FROM_DATABASE=Aten Research Inc +@@ -16380,7 +16380,7 @@ pci:v0000106Bd00000031* + ID_MODEL_FROM_DATABASE=UniNorth 2 FireWire + + pci:v0000106Bd00000031sv0000106Bsd00005811* +- ID_MODEL_FROM_DATABASE=iBook G4 2004 ++ ID_MODEL_FROM_DATABASE=UniNorth 2 FireWire (iBook G4 2004) + + pci:v0000106Bd00000032* + ID_MODEL_FROM_DATABASE=UniNorth 2 GMAC (Sun GEM) +@@ -16407,7 +16407,7 @@ pci:v0000106Bd0000003F* + ID_MODEL_FROM_DATABASE=KeyLargo/Intrepid USB + + pci:v0000106Bd0000003Fsv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=KeyLargo/Intrepid USB (QEMU Virtual Machine) + + pci:v0000106Bd00000040* + ID_MODEL_FROM_DATABASE=K2 KeyLargo USB +@@ -16563,13 +16563,13 @@ pci:v00001073d00000004* + ID_MODEL_FROM_DATABASE=YMF-724 + + pci:v00001073d00000004sv00001073sd00000004* +- ID_MODEL_FROM_DATABASE=YMF724-Based PCI Audio Adapter ++ ID_MODEL_FROM_DATABASE=YMF-724 (YMF724-Based PCI Audio Adapter) + + pci:v00001073d00000005* + ID_MODEL_FROM_DATABASE=DS1 Audio + + pci:v00001073d00000005sv00001073sd00000005* +- ID_MODEL_FROM_DATABASE=DS-XG PCI Audio CODEC ++ ID_MODEL_FROM_DATABASE=DS1 Audio (DS-XG PCI Audio CODEC) + + pci:v00001073d00000006* + ID_MODEL_FROM_DATABASE=DS1 Audio +@@ -16578,46 +16578,46 @@ pci:v00001073d00000008* + ID_MODEL_FROM_DATABASE=DS1 Audio + + pci:v00001073d00000008sv00001073sd00000008* +- ID_MODEL_FROM_DATABASE=DS-XG PCI Audio CODEC ++ ID_MODEL_FROM_DATABASE=DS1 Audio (DS-XG PCI Audio CODEC) + + pci:v00001073d0000000A* + ID_MODEL_FROM_DATABASE=DS1L Audio + + pci:v00001073d0000000Asv00001073sd00000004* +- ID_MODEL_FROM_DATABASE=DS-XG PCI Audio CODEC ++ ID_MODEL_FROM_DATABASE=DS1L Audio (DS-XG PCI Audio CODEC) + + pci:v00001073d0000000Asv00001073sd0000000A* +- ID_MODEL_FROM_DATABASE=DS-XG PCI Audio CODEC ++ ID_MODEL_FROM_DATABASE=DS1L Audio (DS-XG PCI Audio CODEC) + + pci:v00001073d0000000Asv00008086sd00004D55* +- ID_MODEL_FROM_DATABASE=DS-XG PCI Audio CODEC [Intel MU440EX] ++ ID_MODEL_FROM_DATABASE=DS1L Audio (DS-XG PCI Audio CODEC [Intel MU440EX]) + + pci:v00001073d0000000C* + ID_MODEL_FROM_DATABASE=YMF-740C [DS-1L Audio Controller] + + pci:v00001073d0000000Csv0000107Asd0000000C* +- ID_MODEL_FROM_DATABASE=DS-XG PCI Audio CODEC ++ ID_MODEL_FROM_DATABASE=YMF-740C [DS-1L Audio Controller] (DS-XG PCI Audio CODEC) + + pci:v00001073d0000000D* + ID_MODEL_FROM_DATABASE=YMF-724F [DS-1 Audio Controller] + + pci:v00001073d0000000Dsv00001073sd0000000D* +- ID_MODEL_FROM_DATABASE=DS-XG PCI Audio CODEC ++ ID_MODEL_FROM_DATABASE=YMF-724F [DS-1 Audio Controller] (DS-XG PCI Audio CODEC) + + pci:v00001073d00000010* + ID_MODEL_FROM_DATABASE=YMF-744B [DS-1S Audio Controller] + + pci:v00001073d00000010sv00001073sd00000006* +- ID_MODEL_FROM_DATABASE=DS-XG PCI Audio CODEC ++ ID_MODEL_FROM_DATABASE=YMF-744B [DS-1S Audio Controller] (DS-XG PCI Audio CODEC) + + pci:v00001073d00000010sv00001073sd00000010* +- ID_MODEL_FROM_DATABASE=DS-XG PCI Audio CODEC ++ ID_MODEL_FROM_DATABASE=YMF-744B [DS-1S Audio Controller] (DS-XG PCI Audio CODEC) + + pci:v00001073d00000012* + ID_MODEL_FROM_DATABASE=YMF-754 [DS-1E Audio Controller] + + pci:v00001073d00000012sv00001073sd00000012* +- ID_MODEL_FROM_DATABASE=DS-XG PCI Audio Codec ++ ID_MODEL_FROM_DATABASE=YMF-754 [DS-1E Audio Controller] (DS-XG PCI Audio Codec) + + pci:v00001073d00000020* + ID_MODEL_FROM_DATABASE=DS-1 Audio +@@ -16662,10 +16662,10 @@ pci:v00001077d00001216* + ID_MODEL_FROM_DATABASE=ISP12160 Dual Channel Ultra3 SCSI Processor + + pci:v00001077d00001216sv0000101Esd00008471* +- ID_MODEL_FROM_DATABASE=QLA12160 on AMI MegaRAID ++ ID_MODEL_FROM_DATABASE=ISP12160 Dual Channel Ultra3 SCSI Processor (QLA12160 on AMI MegaRAID) + + pci:v00001077d00001216sv0000101Esd00008493* +- ID_MODEL_FROM_DATABASE=QLA12160 on AMI MegaRAID ++ ID_MODEL_FROM_DATABASE=ISP12160 Dual Channel Ultra3 SCSI Processor (QLA12160 on AMI MegaRAID) + + pci:v00001077d00001240* + ID_MODEL_FROM_DATABASE=ISP1240 SCSI Host Adapter +@@ -16689,7 +16689,7 @@ pci:v00001077d00002200* + ID_MODEL_FROM_DATABASE=QLA2200 64-bit Fibre Channel Adapter + + pci:v00001077d00002200sv00001077sd00000002* +- ID_MODEL_FROM_DATABASE=QLA2200 ++ ID_MODEL_FROM_DATABASE=QLA2200 64-bit Fibre Channel Adapter (QLA2200) + + pci:v00001077d00002300* + ID_MODEL_FROM_DATABASE=QLA2300 64-bit Fibre Channel Adapter +@@ -16698,10 +16698,10 @@ pci:v00001077d00002312* + ID_MODEL_FROM_DATABASE=ISP2312-based 2Gb Fibre Channel to PCI-X HBA + + pci:v00001077d00002312sv0000103Csd00000131* +- ID_MODEL_FROM_DATABASE=2Gb Fibre Channel - Single port [A7538A] ++ ID_MODEL_FROM_DATABASE=ISP2312-based 2Gb Fibre Channel to PCI-X HBA (2Gb Fibre Channel - Single port [A7538A]) + + pci:v00001077d00002312sv0000103Csd000012BA* +- ID_MODEL_FROM_DATABASE=2Gb Fibre Channel - Dual port [A6826A] ++ ID_MODEL_FROM_DATABASE=ISP2312-based 2Gb Fibre Channel to PCI-X HBA (2Gb Fibre Channel - Dual port [A6826A]) + + pci:v00001077d00002322* + ID_MODEL_FROM_DATABASE=ISP2322-based 2Gb Fibre Channel to PCI-X HBA +@@ -16710,25 +16710,25 @@ pci:v00001077d00002422* + ID_MODEL_FROM_DATABASE=ISP2422-based 4Gb Fibre Channel to PCI-X HBA + + pci:v00001077d00002422sv0000103Csd000012D7* +- ID_MODEL_FROM_DATABASE=4Gb Fibre Channel [AB379A] ++ ID_MODEL_FROM_DATABASE=ISP2422-based 4Gb Fibre Channel to PCI-X HBA (4Gb Fibre Channel [AB379A]) + + pci:v00001077d00002422sv0000103Csd000012DD* +- ID_MODEL_FROM_DATABASE=4Gb Fibre Channel [AB429A] ++ ID_MODEL_FROM_DATABASE=ISP2422-based 4Gb Fibre Channel to PCI-X HBA (4Gb Fibre Channel [AB429A]) + + pci:v00001077d00002432* + ID_MODEL_FROM_DATABASE=ISP2432-based 4Gb Fibre Channel to PCI Express HBA + + pci:v00001077d00002432sv0000103Csd00007040* +- ID_MODEL_FROM_DATABASE=FC1142SR 4Gb 1-port PCIe Fibre Channel Host Bus Adapter [HPAE311A] ++ ID_MODEL_FROM_DATABASE=ISP2432-based 4Gb Fibre Channel to PCI Express HBA (FC1142SR 4Gb 1-port PCIe Fibre Channel Host Bus Adapter [HPAE311A]) + + pci:v00001077d00002532* + ID_MODEL_FROM_DATABASE=ISP2532-based 8Gb Fibre Channel to PCI Express HBA + + pci:v00001077d00002532sv0000103Csd00003262* +- ID_MODEL_FROM_DATABASE=StorageWorks 81Q ++ ID_MODEL_FROM_DATABASE=ISP2532-based 8Gb Fibre Channel to PCI Express HBA (StorageWorks 81Q) + + pci:v00001077d00002532sv00001077sd00000167* +- ID_MODEL_FROM_DATABASE=QME2572 Dual Port FC8 HBA Mezzanine ++ ID_MODEL_FROM_DATABASE=ISP2532-based 8Gb Fibre Channel to PCI Express HBA (QME2572 Dual Port FC8 HBA Mezzanine) + + pci:v00001077d00003022* + ID_MODEL_FROM_DATABASE=ISP4022-based Ethernet NIC +@@ -16770,55 +16770,55 @@ pci:v00001077d00008020* + ID_MODEL_FROM_DATABASE=cLOM8214 1/10GbE Controller + + pci:v00001077d00008020sv0000103Csd00003346* +- ID_MODEL_FROM_DATABASE=CN1000Q Dual Port Converged Network Adapter ++ ID_MODEL_FROM_DATABASE=cLOM8214 1/10GbE Controller (CN1000Q Dual Port Converged Network Adapter) + + pci:v00001077d00008020sv0000103Csd00003733* +- ID_MODEL_FROM_DATABASE=NC523SFP 10Gb 2-port Server Adapter ++ ID_MODEL_FROM_DATABASE=cLOM8214 1/10GbE Controller (NC523SFP 10Gb 2-port Server Adapter) + + pci:v00001077d00008020sv00001077sd00000203* +- ID_MODEL_FROM_DATABASE=8200 Series Single Port 10GbE Converged Network Adapter (TCP/IP Networking) ++ ID_MODEL_FROM_DATABASE=cLOM8214 1/10GbE Controller (8200 Series Single Port 10GbE Converged Network Adapter (TCP/IP Networking)) + + pci:v00001077d00008020sv00001077sd00000207* +- ID_MODEL_FROM_DATABASE=8200 Series Dual Port 10GbE Converged Network Adapter (TCP/IP Networking) ++ ID_MODEL_FROM_DATABASE=cLOM8214 1/10GbE Controller (8200 Series Dual Port 10GbE Converged Network Adapter (TCP/IP Networking)) + + pci:v00001077d00008020sv00001077sd0000020B* +- ID_MODEL_FROM_DATABASE=3200 Series Dual Port 10Gb Intelligent Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=cLOM8214 1/10GbE Controller (3200 Series Dual Port 10Gb Intelligent Ethernet Adapter) + + pci:v00001077d00008020sv00001077sd0000020C* +- ID_MODEL_FROM_DATABASE=3200 Series Quad Port 1Gb Intelligent Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=cLOM8214 1/10GbE Controller (3200 Series Quad Port 1Gb Intelligent Ethernet Adapter) + + pci:v00001077d00008020sv00001077sd0000020F* +- ID_MODEL_FROM_DATABASE=3200 Series Single Port 10Gb Intelligent Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=cLOM8214 1/10GbE Controller (3200 Series Single Port 10Gb Intelligent Ethernet Adapter) + + pci:v00001077d00008020sv00001077sd00000210* +- ID_MODEL_FROM_DATABASE=QME8242-k 10GbE Dual Port Mezzanine Card ++ ID_MODEL_FROM_DATABASE=cLOM8214 1/10GbE Controller (QME8242-k 10GbE Dual Port Mezzanine Card) + + pci:v00001077d00008021* + ID_MODEL_FROM_DATABASE=8200 Series 10GbE Converged Network Adapter (FCoE) + + pci:v00001077d00008021sv0000103Csd00003348* +- ID_MODEL_FROM_DATABASE=CN1000Q Dual Port Converged Network Adapter ++ ID_MODEL_FROM_DATABASE=8200 Series 10GbE Converged Network Adapter (FCoE) (CN1000Q Dual Port Converged Network Adapter) + + pci:v00001077d00008021sv00001077sd00000211* +- ID_MODEL_FROM_DATABASE=QME8242-k 10GbE Dual Port Mezzanine Card, FCoE ++ ID_MODEL_FROM_DATABASE=8200 Series 10GbE Converged Network Adapter (FCoE) (QME8242-k 10GbE Dual Port Mezzanine Card, FCoE) + + pci:v00001077d00008022* + ID_MODEL_FROM_DATABASE=8200 Series 10GbE Converged Network Adapter (iSCSI) + + pci:v00001077d00008022sv0000103Csd00003347* +- ID_MODEL_FROM_DATABASE=CN1000Q Dual Port Converged Network Adapter ++ ID_MODEL_FROM_DATABASE=8200 Series 10GbE Converged Network Adapter (iSCSI) (CN1000Q Dual Port Converged Network Adapter) + + pci:v00001077d00008022sv00001077sd00000212* +- ID_MODEL_FROM_DATABASE=QME8242-k 10GbE Dual Port Mezzanine Card, iSCSI ++ ID_MODEL_FROM_DATABASE=8200 Series 10GbE Converged Network Adapter (iSCSI) (QME8242-k 10GbE Dual Port Mezzanine Card, iSCSI) + + pci:v00001077d00008030* + ID_MODEL_FROM_DATABASE=ISP8324 1/10GbE Converged Network Controller + + pci:v00001077d00008030sv00001077sd00000243* +- ID_MODEL_FROM_DATABASE=8300 Series Single Port 10GbE Converged Network Adapter (TCP/IP Networking) ++ ID_MODEL_FROM_DATABASE=ISP8324 1/10GbE Converged Network Controller (8300 Series Single Port 10GbE Converged Network Adapter (TCP/IP Networking)) + + pci:v00001077d00008030sv00001077sd00000246* +- ID_MODEL_FROM_DATABASE=8300 Series Dual Port 10GbE Converged Network Adapter (TCP/IP Networking) ++ ID_MODEL_FROM_DATABASE=ISP8324 1/10GbE Converged Network Controller (8300 Series Dual Port 10GbE Converged Network Adapter (TCP/IP Networking)) + + pci:v00001077d00008031* + ID_MODEL_FROM_DATABASE=8300 Series 10GbE Converged Network Adapter (FCoE) +@@ -17022,7 +17022,7 @@ pci:v0000108Dd00000004* + ID_MODEL_FROM_DATABASE=RapidFire OC-3139/3140 Token-Ring 16/4 PCI Adapter + + pci:v0000108Dd00000004sv0000108Dsd00000004* +- ID_MODEL_FROM_DATABASE=OC-3139/3140 RapidFire Token-Ring 16/4 Adapter ++ ID_MODEL_FROM_DATABASE=RapidFire OC-3139/3140 Token-Ring 16/4 PCI Adapter (OC-3139/3140 RapidFire Token-Ring 16/4 Adapter) + + pci:v0000108Dd00000005* + ID_MODEL_FROM_DATABASE=GoCard 3250 Token-Ring 16/4 CardBus PC Card +@@ -17034,13 +17034,13 @@ pci:v0000108Dd00000007* + ID_MODEL_FROM_DATABASE=RapidFire 3141 Token-Ring 16/4 PCI Fiber Adapter + + pci:v0000108Dd00000007sv0000108Dsd00000007* +- ID_MODEL_FROM_DATABASE=OC-3141 RapidFire Token-Ring 16/4 Adapter ++ ID_MODEL_FROM_DATABASE=RapidFire 3141 Token-Ring 16/4 PCI Fiber Adapter (OC-3141 RapidFire Token-Ring 16/4 Adapter) + + pci:v0000108Dd00000008* + ID_MODEL_FROM_DATABASE=RapidFire 3540 HSTR 100/16/4 PCI Adapter + + pci:v0000108Dd00000008sv0000108Dsd00000008* +- ID_MODEL_FROM_DATABASE=OC-3540 RapidFire HSTR 100/16/4 Adapter ++ ID_MODEL_FROM_DATABASE=RapidFire 3540 HSTR 100/16/4 PCI Adapter (OC-3540 RapidFire HSTR 100/16/4 Adapter) + + pci:v0000108Dd00000011* + ID_MODEL_FROM_DATABASE=OC-2315 +@@ -17058,10 +17058,10 @@ pci:v0000108Dd00000019* + ID_MODEL_FROM_DATABASE=OC-2327/2250 10/100 Ethernet Adapter + + pci:v0000108Dd00000019sv0000108Dsd00000016* +- ID_MODEL_FROM_DATABASE=OC-2327 Rapidfire 10/100 Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=OC-2327/2250 10/100 Ethernet Adapter (OC-2327 Rapidfire 10/100 Ethernet Adapter) + + pci:v0000108Dd00000019sv0000108Dsd00000017* +- ID_MODEL_FROM_DATABASE=OC-2250 GoCard 10/100 Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=OC-2327/2250 10/100 Ethernet Adapter (OC-2250 GoCard 10/100 Ethernet Adapter) + + pci:v0000108Dd00000021* + ID_MODEL_FROM_DATABASE=OC-6151/6152 [RapidFire ATM 155] +@@ -17085,25 +17085,25 @@ pci:v0000108Ed00001100* + ID_MODEL_FROM_DATABASE=RIO EBUS + + pci:v0000108Ed00001100sv0000108Esd00001100* +- ID_MODEL_FROM_DATABASE=RIO EBUS on Blade 100 motherboard ++ ID_MODEL_FROM_DATABASE=RIO EBUS (on Blade 100 motherboard) + + pci:v0000108Ed00001101* + ID_MODEL_FROM_DATABASE=RIO 10/100 Ethernet [eri] + + pci:v0000108Ed00001101sv0000108Esd00001101* +- ID_MODEL_FROM_DATABASE=RIO GEM on Blade 100 motherboard ++ ID_MODEL_FROM_DATABASE=RIO 10/100 Ethernet [eri] (RIO GEM on Blade 100 motherboard) + + pci:v0000108Ed00001102* + ID_MODEL_FROM_DATABASE=RIO 1394 + + pci:v0000108Ed00001102sv0000108Esd00001102* +- ID_MODEL_FROM_DATABASE=RIO 1394 on Blade 100 motherboard ++ ID_MODEL_FROM_DATABASE=RIO 1394 (on Blade 100 motherboard) + + pci:v0000108Ed00001103* + ID_MODEL_FROM_DATABASE=RIO USB + + pci:v0000108Ed00001103sv0000108Esd00001103* +- ID_MODEL_FROM_DATABASE=RIO USB on Blade 100 motherboard ++ ID_MODEL_FROM_DATABASE=RIO USB (on Blade 100 motherboard) + + pci:v0000108Ed00001647* + ID_MODEL_FROM_DATABASE=Broadcom 570x 10/100/1000 Ethernet [bge] +@@ -17124,7 +17124,7 @@ pci:v0000108Ed00005000* + ID_MODEL_FROM_DATABASE=Simba Advanced PCI Bridge + + pci:v0000108Ed00005000sv0000108Esd00005000* +- ID_MODEL_FROM_DATABASE=Netra AX1105-500 ++ ID_MODEL_FROM_DATABASE=Simba Advanced PCI Bridge (Netra AX1105-500) + + pci:v0000108Ed00005043* + ID_MODEL_FROM_DATABASE=SunPCI Co-processor +@@ -17226,7 +17226,7 @@ pci:v0000108Ed0000A001* + ID_MODEL_FROM_DATABASE=Psycho UPA-PCI Bus Module [pcipsy] + + pci:v0000108Ed0000A001sv0000108Esd0000A001* +- ID_MODEL_FROM_DATABASE=Ultra IIe on Blade 100 motherboard ++ ID_MODEL_FROM_DATABASE=Psycho UPA-PCI Bus Module [pcipsy] (Ultra IIe on Blade 100 motherboard) + + pci:v0000108Ed0000A801* + ID_MODEL_FROM_DATABASE=Schizo Fireplane-PCI bus bridge module [pcisch] +@@ -17295,7 +17295,7 @@ pci:v00001092d00000028* + ID_MODEL_FROM_DATABASE=Viper V770 + + pci:v00001092d00000028sv00001092sd00004A00* +- ID_MODEL_FROM_DATABASE=Viper V770 32MB ++ ID_MODEL_FROM_DATABASE=Viper V770 (32MB) + + pci:v00001092d000000A0* + ID_MODEL_FROM_DATABASE=Speedstar Pro SE +@@ -17766,28 +17766,28 @@ pci:v00001093d0000C4C4* + ID_MODEL_FROM_DATABASE=PXIe/PCIe Device + + pci:v00001093d0000C4C4sv00001093sd000074B2* +- ID_MODEL_FROM_DATABASE=PXIe-4353 ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4353) + + pci:v00001093d0000C4C4sv00001093sd000074D0* +- ID_MODEL_FROM_DATABASE=PXIe-7961R ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-7961R) + + pci:v00001093d0000C4C4sv00001093sd000074E2* +- ID_MODEL_FROM_DATABASE=PXIe-7962R ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-7962R) + + pci:v00001093d0000C4C4sv00001093sd000074E3* +- ID_MODEL_FROM_DATABASE=PXIe-7965R ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-7965R) + + pci:v00001093d0000C4C4sv00001093sd00007553* +- ID_MODEL_FROM_DATABASE=PCIe-1473R ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-1473R) + + pci:v00001093d0000C4C4sv00001093sd000075CE* +- ID_MODEL_FROM_DATABASE=PXIe-7966R ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-7966R) + + pci:v00001093d0000C4C4sv00001093sd000076B7* +- ID_MODEL_FROM_DATABASE=PXIe-7975R ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-7975R) + + pci:v00001093d0000C4C4sv00001093sd000076D0* +- ID_MODEL_FROM_DATABASE=PXIe-5160 ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5160) + + pci:v00001093d0000C801* + ID_MODEL_FROM_DATABASE=PCI-GPIB +@@ -17820,19 +17820,19 @@ pci:v00001095d00000648* + ID_MODEL_FROM_DATABASE=PCI0648 + + pci:v00001095d00000648sv00001043sd00008025* +- ID_MODEL_FROM_DATABASE=CUBX motherboard ++ ID_MODEL_FROM_DATABASE=PCI0648 (CUBX motherboard) + + pci:v00001095d00000649* + ID_MODEL_FROM_DATABASE=SiI 0649 Ultra ATA/100 PCI to ATA Host Controller + + pci:v00001095d00000649sv00000E11sd0000005D* +- ID_MODEL_FROM_DATABASE=Integrated Ultra ATA-100 Dual Channel Controller ++ ID_MODEL_FROM_DATABASE=SiI 0649 Ultra ATA/100 PCI to ATA Host Controller (Integrated Ultra ATA-100 Dual Channel Controller) + + pci:v00001095d00000649sv00000E11sd0000007E* +- ID_MODEL_FROM_DATABASE=Integrated Ultra ATA-100 IDE RAID Controller ++ ID_MODEL_FROM_DATABASE=SiI 0649 Ultra ATA/100 PCI to ATA Host Controller (Integrated Ultra ATA-100 IDE RAID Controller) + + pci:v00001095d00000649sv0000101Esd00000649* +- ID_MODEL_FROM_DATABASE=AMI MegaRAID IDE 100 Controller ++ ID_MODEL_FROM_DATABASE=SiI 0649 Ultra ATA/100 PCI to ATA Host Controller (AMI MegaRAID IDE 100 Controller) + + pci:v00001095d00000650* + ID_MODEL_FROM_DATABASE=PBC0650A +@@ -17850,34 +17850,34 @@ pci:v00001095d00000680* + ID_MODEL_FROM_DATABASE=PCI0680 Ultra ATA-133 Host Controller + + pci:v00001095d00000680sv00001095sd00000680* +- ID_MODEL_FROM_DATABASE=SiI 0680 ATA/133 Controller ++ ID_MODEL_FROM_DATABASE=PCI0680 Ultra ATA-133 Host Controller (SiI 0680 ATA/133 Controller) + + pci:v00001095d00000680sv00001095sd00003680* +- ID_MODEL_FROM_DATABASE=Winic W-680 (Silicon Image 680 based) ++ ID_MODEL_FROM_DATABASE=PCI0680 Ultra ATA-133 Host Controller (Winic W-680 (Silicon Image 680 based)) + + pci:v00001095d00003112* + ID_MODEL_FROM_DATABASE=SiI 3112 [SATALink/SATARaid] Serial ATA Controller + + pci:v00001095d00003112sv00001095sd00003112* +- ID_MODEL_FROM_DATABASE=SiI 3112 SATALink Controller ++ ID_MODEL_FROM_DATABASE=SiI 3112 [SATALink/SATARaid] Serial ATA Controller (SiI 3112 SATALink Controller) + + pci:v00001095d00003112sv00001095sd00006112* +- ID_MODEL_FROM_DATABASE=SiI 3112 SATARaid Controller ++ ID_MODEL_FROM_DATABASE=SiI 3112 [SATALink/SATARaid] Serial ATA Controller (SiI 3112 SATARaid Controller) + + pci:v00001095d00003112sv00009005sd00000250* +- ID_MODEL_FROM_DATABASE=SATAConnect 1205SA Host Controller ++ ID_MODEL_FROM_DATABASE=SiI 3112 [SATALink/SATARaid] Serial ATA Controller (SATAConnect 1205SA Host Controller) + + pci:v00001095d00003114* + ID_MODEL_FROM_DATABASE=SiI 3114 [SATALink/SATARaid] Serial ATA Controller + + pci:v00001095d00003114sv00001043sd00008167* +- ID_MODEL_FROM_DATABASE=A8N-SLI Deluxe/Premium Mainboard ++ ID_MODEL_FROM_DATABASE=SiI 3114 [SATALink/SATARaid] Serial ATA Controller (A8N-SLI Deluxe/Premium Mainboard) + + pci:v00001095d00003114sv00001095sd00003114* +- ID_MODEL_FROM_DATABASE=SiI 3114 SATALink Controller ++ ID_MODEL_FROM_DATABASE=SiI 3114 [SATALink/SATARaid] Serial ATA Controller (SiI 3114 SATALink Controller) + + pci:v00001095d00003114sv00001095sd00006114* +- ID_MODEL_FROM_DATABASE=SiI 3114 SATARaid Controller ++ ID_MODEL_FROM_DATABASE=SiI 3114 [SATALink/SATARaid] Serial ATA Controller (SiI 3114 SATARaid Controller) + + pci:v00001095d00003124* + ID_MODEL_FROM_DATABASE=SiI 3124 PCI-X Serial ATA Controller +@@ -17892,10 +17892,10 @@ pci:v00001095d00003512* + ID_MODEL_FROM_DATABASE=SiI 3512 [SATALink/SATARaid] Serial ATA Controller + + pci:v00001095d00003512sv00001095sd00003512* +- ID_MODEL_FROM_DATABASE=SiI 3512 SATALink Controller ++ ID_MODEL_FROM_DATABASE=SiI 3512 [SATALink/SATARaid] Serial ATA Controller (SiI 3512 SATALink Controller) + + pci:v00001095d00003512sv00001095sd00006512* +- ID_MODEL_FROM_DATABASE=SiI 3512 SATARaid Controller ++ ID_MODEL_FROM_DATABASE=SiI 3512 [SATALink/SATARaid] Serial ATA Controller (SiI 3512 SATARaid Controller) + + pci:v00001095d00003531* + ID_MODEL_FROM_DATABASE=SiI 3531 [SATALink/SATARaid] Serial ATA Controller +@@ -17949,412 +17949,412 @@ pci:v0000109Ed00000369* + ID_MODEL_FROM_DATABASE=Bt878 Video Capture + + pci:v0000109Ed00000369sv00001002sd00000001* +- ID_MODEL_FROM_DATABASE=TV-Wonder ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (TV-Wonder) + + pci:v0000109Ed00000369sv00001002sd00000003* +- ID_MODEL_FROM_DATABASE=TV-Wonder/VE ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (TV-Wonder/VE) + + pci:v0000109Ed0000036C* + ID_MODEL_FROM_DATABASE=Bt879(??) Video Capture + + pci:v0000109Ed0000036Csv000013E9sd00000070* +- ID_MODEL_FROM_DATABASE=Win/TV (Video Section) ++ ID_MODEL_FROM_DATABASE=Bt879(??) Video Capture (Win/TV (Video Section)) + + pci:v0000109Ed0000036E* + ID_MODEL_FROM_DATABASE=Bt878 Video Capture + + pci:v0000109Ed0000036Esv00000070sd000013EB* +- ID_MODEL_FROM_DATABASE=WinTV Series ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (WinTV Series) + + pci:v0000109Ed0000036Esv00000070sd0000FF01* +- ID_MODEL_FROM_DATABASE=Viewcast Osprey 200 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Viewcast Osprey 200) + + pci:v0000109Ed0000036Esv00000071sd00000101* +- ID_MODEL_FROM_DATABASE=DigiTV PCI ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (DigiTV PCI) + + pci:v0000109Ed0000036Esv0000107Dsd00006606* +- ID_MODEL_FROM_DATABASE=WinFast TV 2000 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (WinFast TV 2000) + + pci:v0000109Ed0000036Esv000011BDsd00000012* +- ID_MODEL_FROM_DATABASE=PCTV pro (TV + FM stereo receiver) ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (PCTV pro (TV + FM stereo receiver)) + + pci:v0000109Ed0000036Esv000011BDsd0000001C* +- ID_MODEL_FROM_DATABASE=PCTV Sat (DBC receiver) ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (PCTV Sat (DBC receiver)) + + pci:v0000109Ed0000036Esv0000127Asd00000001* +- ID_MODEL_FROM_DATABASE=Bt878 Mediastream Controller NTSC ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Bt878 Mediastream Controller NTSC) + + pci:v0000109Ed0000036Esv0000127Asd00000002* +- ID_MODEL_FROM_DATABASE=Bt878 Mediastream Controller PAL BG ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Bt878 Mediastream Controller PAL BG) + + pci:v0000109Ed0000036Esv0000127Asd00000003* +- ID_MODEL_FROM_DATABASE=Bt878a Mediastream Controller PAL BG ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Bt878a Mediastream Controller PAL BG) + + pci:v0000109Ed0000036Esv0000127Asd00000048* +- ID_MODEL_FROM_DATABASE=Bt878/832 Mediastream Controller ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Bt878/832 Mediastream Controller) + + pci:v0000109Ed0000036Esv0000144Fsd00003000* +- ID_MODEL_FROM_DATABASE=MagicTView CPH060 - Video ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (MagicTView CPH060 - Video) + + pci:v0000109Ed0000036Esv00001461sd00000002* +- ID_MODEL_FROM_DATABASE=TV98 Series (TV/No FM/Remote) ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (TV98 Series (TV/No FM/Remote)) + + pci:v0000109Ed0000036Esv00001461sd00000003* +- ID_MODEL_FROM_DATABASE=AverMedia UltraTV PCI 350 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (AverMedia UltraTV PCI 350) + + pci:v0000109Ed0000036Esv00001461sd00000004* +- ID_MODEL_FROM_DATABASE=AVerTV WDM Video Capture ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (AVerTV WDM Video Capture) + + pci:v0000109Ed0000036Esv00001461sd00000761* +- ID_MODEL_FROM_DATABASE=AverTV DVB-T ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (AverTV DVB-T) + + pci:v0000109Ed0000036Esv00001461sd00000771* +- ID_MODEL_FROM_DATABASE=AverMedia AVerTV DVB-T 771 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (AverMedia AVerTV DVB-T 771) + + pci:v0000109Ed0000036Esv000014F1sd00000001* +- ID_MODEL_FROM_DATABASE=Bt878 Mediastream Controller NTSC ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Bt878 Mediastream Controller NTSC) + + pci:v0000109Ed0000036Esv000014F1sd00000002* +- ID_MODEL_FROM_DATABASE=Bt878 Mediastream Controller PAL BG ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Bt878 Mediastream Controller PAL BG) + + pci:v0000109Ed0000036Esv000014F1sd00000003* +- ID_MODEL_FROM_DATABASE=Bt878a Mediastream Controller PAL BG ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Bt878a Mediastream Controller PAL BG) + + pci:v0000109Ed0000036Esv000014F1sd00000048* +- ID_MODEL_FROM_DATABASE=Bt878/832 Mediastream Controller ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Bt878/832 Mediastream Controller) + + pci:v0000109Ed0000036Esv00001822sd00000001* +- ID_MODEL_FROM_DATABASE=VisionPlus DVB card ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (VisionPlus DVB card) + + pci:v0000109Ed0000036Esv00001851sd00001850* +- ID_MODEL_FROM_DATABASE=FlyVideo'98 - Video ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (FlyVideo'98 - Video) + + pci:v0000109Ed0000036Esv00001851sd00001851* +- ID_MODEL_FROM_DATABASE=FlyVideo II ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (FlyVideo II) + + pci:v0000109Ed0000036Esv00001852sd00001852* +- ID_MODEL_FROM_DATABASE=FlyVideo'98 - Video (with FM Tuner) ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (FlyVideo'98 - Video (with FM Tuner)) + + pci:v0000109Ed0000036Esv000018ACsd0000D500* +- ID_MODEL_FROM_DATABASE=DViCO FusionHDTV5 Lite ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (DViCO FusionHDTV5 Lite) + + pci:v0000109Ed0000036Esv0000270Fsd0000FC00* +- ID_MODEL_FROM_DATABASE=Digitop DTT-1000 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Digitop DTT-1000) + + pci:v0000109Ed0000036Esv0000AA00sd00001460* +- ID_MODEL_FROM_DATABASE=Spectra8 CardA Input0 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Spectra8 CardA Input0) + + pci:v0000109Ed0000036Esv0000AA01sd00001461* +- ID_MODEL_FROM_DATABASE=Spectra8 CardA Input1 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Spectra8 CardA Input1) + + pci:v0000109Ed0000036Esv0000AA02sd00001462* +- ID_MODEL_FROM_DATABASE=Spectra8 CardA Input2 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Spectra8 CardA Input2) + + pci:v0000109Ed0000036Esv0000AA03sd00001463* +- ID_MODEL_FROM_DATABASE=Spectra8 CardA Input3 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Spectra8 CardA Input3) + + pci:v0000109Ed0000036Esv0000AA04sd00001464* +- ID_MODEL_FROM_DATABASE=Spectra8 CardB Input0 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Spectra8 CardB Input0) + + pci:v0000109Ed0000036Esv0000AA05sd00001465* +- ID_MODEL_FROM_DATABASE=Spectra8 CardB Input1 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Spectra8 CardB Input1) + + pci:v0000109Ed0000036Esv0000AA06sd00001466* +- ID_MODEL_FROM_DATABASE=Spectra8 CardB Input2 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Spectra8 CardB Input2) + + pci:v0000109Ed0000036Esv0000AA07sd00001467* +- ID_MODEL_FROM_DATABASE=Spectra8 CardB Input3 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Spectra8 CardB Input3) + + pci:v0000109Ed0000036Esv0000AA08sd00001468* +- ID_MODEL_FROM_DATABASE=Spectra8 CardC Input0 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Spectra8 CardC Input0) + + pci:v0000109Ed0000036Esv0000AA09sd00001469* +- ID_MODEL_FROM_DATABASE=Spectra8 CardC Input1 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Spectra8 CardC Input1) + + pci:v0000109Ed0000036Esv0000AA0Asd0000146A* +- ID_MODEL_FROM_DATABASE=Spectra8 CardC Input2 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Spectra8 CardC Input2) + + pci:v0000109Ed0000036Esv0000AA0Bsd0000146B* +- ID_MODEL_FROM_DATABASE=Spectra8 CardC Input3 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Spectra8 CardC Input3) + + pci:v0000109Ed0000036Esv0000AA0Csd0000146C* +- ID_MODEL_FROM_DATABASE=Spectra8 CardD Input0 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Spectra8 CardD Input0) + + pci:v0000109Ed0000036Esv0000AA0Dsd0000146D* +- ID_MODEL_FROM_DATABASE=Spectra8 CardD Input1 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Spectra8 CardD Input1) + + pci:v0000109Ed0000036Esv0000AA0Esd0000146E* +- ID_MODEL_FROM_DATABASE=Spectra8 CardD Input2 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Spectra8 CardD Input2) + + pci:v0000109Ed0000036Esv0000AA0Fsd0000146F* +- ID_MODEL_FROM_DATABASE=Spectra8 CardD Input3 ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Spectra8 CardD Input3) + + pci:v0000109Ed0000036Esv0000BD11sd00001200* +- ID_MODEL_FROM_DATABASE=PCTV pro (TV + FM stereo receiver) ++ ID_MODEL_FROM_DATABASE=Bt878 Video Capture (PCTV pro (TV + FM stereo receiver)) + + pci:v0000109Ed0000036F* + ID_MODEL_FROM_DATABASE=Bt879 Video Capture + + pci:v0000109Ed0000036Fsv0000127Asd00000044* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture NTSC ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (NTSC) + + pci:v0000109Ed0000036Fsv0000127Asd00000122* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture PAL I ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (PAL I) + + pci:v0000109Ed0000036Fsv0000127Asd00000144* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture NTSC ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (NTSC) + + pci:v0000109Ed0000036Fsv0000127Asd00000222* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture PAL BG ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (PAL BG) + + pci:v0000109Ed0000036Fsv0000127Asd00000244* +- ID_MODEL_FROM_DATABASE=Bt879a Video Capture NTSC ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Bt879a Video Capture NTSC) + + pci:v0000109Ed0000036Fsv0000127Asd00000322* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture NTSC ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (NTSC) + + pci:v0000109Ed0000036Fsv0000127Asd00000422* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture NTSC ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (NTSC) + + pci:v0000109Ed0000036Fsv0000127Asd00001122* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture PAL I ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (PAL I) + + pci:v0000109Ed0000036Fsv0000127Asd00001222* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture PAL BG ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (PAL BG) + + pci:v0000109Ed0000036Fsv0000127Asd00001322* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture NTSC ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (NTSC) + + pci:v0000109Ed0000036Fsv0000127Asd00001522* +- ID_MODEL_FROM_DATABASE=Bt879a Video Capture PAL I ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Bt879a Video Capture PAL I) + + pci:v0000109Ed0000036Fsv0000127Asd00001622* +- ID_MODEL_FROM_DATABASE=Bt879a Video Capture PAL BG ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Bt879a Video Capture PAL BG) + + pci:v0000109Ed0000036Fsv0000127Asd00001722* +- ID_MODEL_FROM_DATABASE=Bt879a Video Capture NTSC ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Bt879a Video Capture NTSC) + + pci:v0000109Ed0000036Fsv000014F1sd00000044* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture NTSC ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (NTSC) + + pci:v0000109Ed0000036Fsv000014F1sd00000122* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture PAL I ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (PAL I) + + pci:v0000109Ed0000036Fsv000014F1sd00000144* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture NTSC ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (NTSC) + + pci:v0000109Ed0000036Fsv000014F1sd00000222* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture PAL BG ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (PAL BG) + + pci:v0000109Ed0000036Fsv000014F1sd00000244* +- ID_MODEL_FROM_DATABASE=Bt879a Video Capture NTSC ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Bt879a Video Capture NTSC) + + pci:v0000109Ed0000036Fsv000014F1sd00000322* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture NTSC ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (NTSC) + + pci:v0000109Ed0000036Fsv000014F1sd00000422* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture NTSC ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (NTSC) + + pci:v0000109Ed0000036Fsv000014F1sd00001122* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture PAL I ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (PAL I) + + pci:v0000109Ed0000036Fsv000014F1sd00001222* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture PAL BG ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (PAL BG) + + pci:v0000109Ed0000036Fsv000014F1sd00001322* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture NTSC ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (NTSC) + + pci:v0000109Ed0000036Fsv000014F1sd00001522* +- ID_MODEL_FROM_DATABASE=Bt879a Video Capture PAL I ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Bt879a Video Capture PAL I) + + pci:v0000109Ed0000036Fsv000014F1sd00001622* +- ID_MODEL_FROM_DATABASE=Bt879a Video Capture PAL BG ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Bt879a Video Capture PAL BG) + + pci:v0000109Ed0000036Fsv000014F1sd00001722* +- ID_MODEL_FROM_DATABASE=Bt879a Video Capture NTSC ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Bt879a Video Capture NTSC) + + pci:v0000109Ed0000036Fsv00001851sd00001850* +- ID_MODEL_FROM_DATABASE=FlyVideo'98 - Video ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (FlyVideo'98 - Video) + + pci:v0000109Ed0000036Fsv00001851sd00001851* +- ID_MODEL_FROM_DATABASE=FlyVideo II ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (FlyVideo II) + + pci:v0000109Ed0000036Fsv00001852sd00001852* +- ID_MODEL_FROM_DATABASE=FlyVideo'98 - Video (with FM Tuner) ++ ID_MODEL_FROM_DATABASE=Bt879 Video Capture (FlyVideo'98 - Video (with FM Tuner)) + + pci:v0000109Ed00000370* + ID_MODEL_FROM_DATABASE=Bt880 Video Capture + + pci:v0000109Ed00000370sv00001851sd00001850* +- ID_MODEL_FROM_DATABASE=FlyVideo'98 ++ ID_MODEL_FROM_DATABASE=Bt880 Video Capture (FlyVideo'98) + + pci:v0000109Ed00000370sv00001851sd00001851* +- ID_MODEL_FROM_DATABASE=FlyVideo'98 EZ - video ++ ID_MODEL_FROM_DATABASE=Bt880 Video Capture (FlyVideo'98 EZ - video) + + pci:v0000109Ed00000370sv00001852sd00001852* +- ID_MODEL_FROM_DATABASE=FlyVideo'98 (with FM Tuner) ++ ID_MODEL_FROM_DATABASE=Bt880 Video Capture (FlyVideo'98 (with FM Tuner)) + + pci:v0000109Ed00000878* + ID_MODEL_FROM_DATABASE=Bt878 Audio Capture + + pci:v0000109Ed00000878sv00000070sd000013EB* +- ID_MODEL_FROM_DATABASE=WinTV Series ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (WinTV Series) + + pci:v0000109Ed00000878sv00000070sd0000FF01* +- ID_MODEL_FROM_DATABASE=Viewcast Osprey 200 ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (Viewcast Osprey 200) + + pci:v0000109Ed00000878sv00000071sd00000101* +- ID_MODEL_FROM_DATABASE=DigiTV PCI ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (DigiTV PCI) + + pci:v0000109Ed00000878sv00001002sd00000001* +- ID_MODEL_FROM_DATABASE=TV-Wonder ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (TV-Wonder) + + pci:v0000109Ed00000878sv00001002sd00000003* +- ID_MODEL_FROM_DATABASE=TV-Wonder/VE ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (TV-Wonder/VE) + + pci:v0000109Ed00000878sv000011BDsd00000012* +- ID_MODEL_FROM_DATABASE=PCTV pro (TV + FM stereo receiver, audio section) ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (PCTV pro (TV + FM stereo receiver, audio section)) + + pci:v0000109Ed00000878sv000011BDsd0000001C* +- ID_MODEL_FROM_DATABASE=PCTV Sat (DBC receiver) ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (PCTV Sat (DBC receiver)) + + pci:v0000109Ed00000878sv0000127Asd00000001* +- ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (Bt878 Video Capture (Audio Section)) + + pci:v0000109Ed00000878sv0000127Asd00000002* +- ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (Bt878 Video Capture (Audio Section)) + + pci:v0000109Ed00000878sv0000127Asd00000003* +- ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (Bt878 Video Capture (Audio Section)) + + pci:v0000109Ed00000878sv0000127Asd00000048* +- ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (Bt878 Video Capture (Audio Section)) + + pci:v0000109Ed00000878sv000013E9sd00000070* +- ID_MODEL_FROM_DATABASE=Win/TV (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (Win/TV (Audio Section)) + + pci:v0000109Ed00000878sv0000144Fsd00003000* +- ID_MODEL_FROM_DATABASE=MagicTView CPH060 - Audio ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (MagicTView CPH060 - Audio) + + pci:v0000109Ed00000878sv00001461sd00000002* +- ID_MODEL_FROM_DATABASE=Avermedia PCTV98 Audio Capture ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (Avermedia PCTV98 Audio Capture) + + pci:v0000109Ed00000878sv00001461sd00000003* +- ID_MODEL_FROM_DATABASE=UltraTV PCI 350 ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (UltraTV PCI 350) + + pci:v0000109Ed00000878sv00001461sd00000004* +- ID_MODEL_FROM_DATABASE=AVerTV WDM Audio Capture ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (AVerTV WDM Audio Capture) + + pci:v0000109Ed00000878sv00001461sd00000761* +- ID_MODEL_FROM_DATABASE=AVerTV DVB-T ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (AVerTV DVB-T) + + pci:v0000109Ed00000878sv00001461sd00000771* +- ID_MODEL_FROM_DATABASE=AverMedia AVerTV DVB-T 771 ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (AverMedia AVerTV DVB-T 771) + + pci:v0000109Ed00000878sv000014F1sd00000001* +- ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (Bt878 Video Capture (Audio Section)) + + pci:v0000109Ed00000878sv000014F1sd00000002* +- ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (Bt878 Video Capture (Audio Section)) + + pci:v0000109Ed00000878sv000014F1sd00000003* +- ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (Bt878 Video Capture (Audio Section)) + + pci:v0000109Ed00000878sv000014F1sd00000048* +- ID_MODEL_FROM_DATABASE=Bt878 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (Bt878 Video Capture (Audio Section)) + + pci:v0000109Ed00000878sv00001822sd00000001* +- ID_MODEL_FROM_DATABASE=VisionPlus DVB Card ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (VisionPlus DVB Card) + + pci:v0000109Ed00000878sv000018ACsd0000D500* +- ID_MODEL_FROM_DATABASE=DViCO FusionHDTV5 Lite ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (DViCO FusionHDTV5 Lite) + + pci:v0000109Ed00000878sv0000270Fsd0000FC00* +- ID_MODEL_FROM_DATABASE=Digitop DTT-1000 ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (Digitop DTT-1000) + + pci:v0000109Ed00000878sv0000BD11sd00001200* +- ID_MODEL_FROM_DATABASE=PCTV pro (TV + FM stereo receiver, audio section) ++ ID_MODEL_FROM_DATABASE=Bt878 Audio Capture (PCTV pro (TV + FM stereo receiver, audio section)) + + pci:v0000109Ed00000879* + ID_MODEL_FROM_DATABASE=Bt879 Audio Capture + + pci:v0000109Ed00000879sv0000127Asd00000044* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv0000127Asd00000122* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv0000127Asd00000144* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv0000127Asd00000222* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv0000127Asd00000244* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv0000127Asd00000322* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv0000127Asd00000422* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv0000127Asd00001122* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv0000127Asd00001222* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv0000127Asd00001322* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv0000127Asd00001522* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv0000127Asd00001622* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv0000127Asd00001722* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv000014F1sd00000044* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv000014F1sd00000122* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv000014F1sd00000144* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv000014F1sd00000222* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv000014F1sd00000244* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv000014F1sd00000322* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv000014F1sd00000422* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv000014F1sd00001122* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv000014F1sd00001222* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv000014F1sd00001322* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv000014F1sd00001522* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv000014F1sd00001622* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000879sv000014F1sd00001722* +- ID_MODEL_FROM_DATABASE=Bt879 Video Capture (Audio Section) ++ ID_MODEL_FROM_DATABASE=Bt879 Audio Capture (Bt879 Video Capture (Audio Section)) + + pci:v0000109Ed00000880* + ID_MODEL_FROM_DATABASE=Bt880 Audio Capture +@@ -18585,7 +18585,7 @@ pci:v000010B4d00001B1D* + ID_MODEL_FROM_DATABASE=Velocity 128 3D + + pci:v000010B4d00001B1Dsv000010B4sd0000237E* +- ID_MODEL_FROM_DATABASE=Velocity 4400 ++ ID_MODEL_FROM_DATABASE=Velocity 128 3D (Velocity 4400) + + pci:v000010B5* + ID_VENDOR_FROM_DATABASE=PLX Technology, Inc. +@@ -18597,13 +18597,13 @@ pci:v000010B5d00000557* + ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge + + pci:v000010B5d00000557sv000010B5sd00009030* +- ID_MODEL_FROM_DATABASE=Digium Tormenta 2 T400P-SS7 or E400P-SS7 Quad T1 or E1 PCI card ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (Digium Tormenta 2 T400P-SS7 or E400P-SS7 Quad T1 or E1 PCI card) + + pci:v000010B5d00001000* + ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge + + pci:v000010B5d00001000sv000010B5sd00009030* +- ID_MODEL_FROM_DATABASE=ATCOM AT400P Quad T1 PCI card ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (ATCOM AT400P Quad T1 PCI card) + + pci:v000010B5d00001024* + ID_MODEL_FROM_DATABASE=Acromag, Inc. IndustryPack Carrier Card +@@ -18636,7 +18636,7 @@ pci:v000010B5d00002000* + ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge + + pci:v000010B5d00002000sv000010B5sd00009030* +- ID_MODEL_FROM_DATABASE=ATCOM AE400P Quad E1 PCI card ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (ATCOM AE400P Quad E1 PCI card) + + pci:v000010B5d00002540* + ID_MODEL_FROM_DATABASE=IXXAT CAN-Interface PC-I 04/PCI +@@ -18651,19 +18651,19 @@ pci:v000010B5d00004000* + ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge + + pci:v000010B5d00004000sv000010B5sd00009030* +- ID_MODEL_FROM_DATABASE=Tormenta 3 Varion V400P/ATCOM TE400P Quad E1/T1/J1 PCI card ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (Tormenta 3 Varion V400P/ATCOM TE400P Quad E1/T1/J1 PCI card) + + pci:v000010B5d00004001* + ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge + + pci:v000010B5d00004001sv000010B5sd00009030* +- ID_MODEL_FROM_DATABASE=ATCOM A400PE Quad E1 PCI card ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (ATCOM A400PE Quad E1 PCI card) + + pci:v000010B5d00004002* + ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge + + pci:v000010B5d00004002sv000010B5sd00009030* +- ID_MODEL_FROM_DATABASE=ATCOM A400PT Quad T1 PCI card ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (ATCOM A400PT Quad T1 PCI card) + + pci:v000010B5d00006140* + ID_MODEL_FROM_DATABASE=PCI6140 32-bit 33MHz PCI-to-PCI Bridge +@@ -18690,28 +18690,28 @@ pci:v000010B5d00006540* + ID_MODEL_FROM_DATABASE=PCI6540 64-bit 133MHz PCI-X-to-PCI-X Bridge + + pci:v000010B5d00006540sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=PCI6540 64-bit 133MHz PCI-X-to-PCI-X Bridge (CR11 Single Board Computer) + + pci:v000010B5d00006540sv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=PCI6540 64-bit 133MHz PCI-X-to-PCI-X Bridge (PSL09 PrPMC) + + pci:v000010B5d00006541* + ID_MODEL_FROM_DATABASE=PCI6540/6466 PCI-PCI bridge (non-transparent mode, primary side) + + pci:v000010B5d00006541sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=PCI6540/6466 PCI-PCI bridge (non-transparent mode, primary side) (CR11 Single Board Computer) + + pci:v000010B5d00006541sv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=PCI6540/6466 PCI-PCI bridge (non-transparent mode, primary side) (PSL09 PrPMC) + + pci:v000010B5d00006542* + ID_MODEL_FROM_DATABASE=PCI6540/6466 PCI-PCI bridge (non-transparent mode, secondary side) + + pci:v000010B5d00006542sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=PCI6540/6466 PCI-PCI bridge (non-transparent mode, secondary side) (CR11 Single Board Computer) + + pci:v000010B5d00006542sv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=PCI6540/6466 PCI-PCI bridge (non-transparent mode, secondary side) (PSL09 PrPMC) + + pci:v000010B5d00008111* + ID_MODEL_FROM_DATABASE=PEX 8111 PCI Express-to-PCI Bridge +@@ -18807,7 +18807,7 @@ pci:v000010B5d00008624* + ID_MODEL_FROM_DATABASE=PEX 8624 24-lane, 6-Port PCI Express Gen 2 (5.0 GT/s) Switch [ExpressLane] + + pci:v000010B5d00008624sv000013A3sd00001845* +- ID_MODEL_FROM_DATABASE=DX1845 Acceleration Card ++ ID_MODEL_FROM_DATABASE=PEX 8624 24-lane, 6-Port PCI Express Gen 2 (5.0 GT/s) Switch [ExpressLane] (DX1845 Acceleration Card) + + pci:v000010B5d00008625* + ID_MODEL_FROM_DATABASE=PEX 8625 24-lane, 24-Port PCI Express Gen 2 (5.0 GT/s) Switch +@@ -18861,85 +18861,85 @@ pci:v000010B5d00009030* + ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge + + pci:v000010B5d00009030sv000010B5sd00002695* +- ID_MODEL_FROM_DATABASE=Hilscher CIF50-PB/DPS Profibus ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (Hilscher CIF50-PB/DPS Profibus) + + pci:v000010B5d00009030sv000010B5sd00002862* +- ID_MODEL_FROM_DATABASE=Alpermann+Velte PCL PCI LV (3V/5V): Timecode Reader Board ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (Alpermann+Velte PCL PCI LV (3V/5V): Timecode Reader Board) + + pci:v000010B5d00009030sv000010B5sd00002906* +- ID_MODEL_FROM_DATABASE=Alpermann+Velte PCI TS (3V/5V): Time Synchronisation Board ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (Alpermann+Velte PCI TS (3V/5V): Time Synchronisation Board) + + pci:v000010B5d00009030sv000010B5sd00002940* +- ID_MODEL_FROM_DATABASE=Alpermann+Velte PCL PCI D (3V/5V): Timecode Reader Board ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (Alpermann+Velte PCL PCI D (3V/5V): Timecode Reader Board) + + pci:v000010B5d00009030sv000010B5sd00002977* +- ID_MODEL_FROM_DATABASE=IXXAT iPC-I XC16/PCI CAN Board ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (IXXAT iPC-I XC16/PCI CAN Board) + + pci:v000010B5d00009030sv000010B5sd00002978* +- ID_MODEL_FROM_DATABASE=SH ARC-PCIu/SH ARC-PCI104/SH ARC-PCIe SOHARD ARCNET card ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (SH ARC-PCIu/SH ARC-PCI104/SH ARC-PCIe SOHARD ARCNET card) + + pci:v000010B5d00009030sv000010B5sd00003025* +- ID_MODEL_FROM_DATABASE=Alpermann+Velte PCL PCI L (3V/5V): Timecode Reader Board ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (Alpermann+Velte PCL PCI L (3V/5V): Timecode Reader Board) + + pci:v000010B5d00009030sv000010B5sd00003068* +- ID_MODEL_FROM_DATABASE=Alpermann+Velte PCL PCI HD (3V/5V): Timecode Reader Board ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (Alpermann+Velte PCL PCI HD (3V/5V): Timecode Reader Board) + + pci:v000010B5d00009030sv000010B5sd00003463* +- ID_MODEL_FROM_DATABASE=Alpermann+Velte PCL PCI D (v2) (3V/5V): Timecode Reader Board ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (Alpermann+Velte PCL PCI D (v2) (3V/5V): Timecode Reader Board) + + pci:v000010B5d00009030sv000012FEsd00000111* +- ID_MODEL_FROM_DATABASE=CPCI-ASIO4 (ESD 4-port Serial Interface Board) ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (CPCI-ASIO4 (ESD 4-port Serial Interface Board)) + + pci:v000010B5d00009030sv00001369sd00009C01* +- ID_MODEL_FROM_DATABASE=VX222v2 ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (VX222v2) + + pci:v000010B5d00009030sv00001369sd00009D01* +- ID_MODEL_FROM_DATABASE=VX222-Mic ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (VX222-Mic) + + pci:v000010B5d00009030sv00001369sd00009D02* +- ID_MODEL_FROM_DATABASE=VX222-Mic ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (VX222-Mic) + + pci:v000010B5d00009030sv00001369sd00009E01* +- ID_MODEL_FROM_DATABASE=PCX924v2 ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (PCX924v2) + + pci:v000010B5d00009030sv00001369sd00009F01* +- ID_MODEL_FROM_DATABASE=PCX924-Mic ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (PCX924-Mic) + + pci:v000010B5d00009030sv00001369sd00009F02* +- ID_MODEL_FROM_DATABASE=PCX924-Mic ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (PCX924-Mic) + + pci:v000010B5d00009030sv00001369sd0000A001* +- ID_MODEL_FROM_DATABASE=PCX22v2 ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (PCX22v2) + + pci:v000010B5d00009030sv00001369sd0000A701* +- ID_MODEL_FROM_DATABASE=LCM220v2 ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (LCM220v2) + + pci:v000010B5d00009030sv00001369sd0000A801* +- ID_MODEL_FROM_DATABASE=LCM200 ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (LCM200) + + pci:v000010B5d00009030sv00001397sd00003136* +- ID_MODEL_FROM_DATABASE=4xS0-ISDN PCI Adapter ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (4xS0-ISDN PCI Adapter) + + pci:v000010B5d00009030sv00001397sd00003137* +- ID_MODEL_FROM_DATABASE=S2M-E1-ISDN PCI Adapter ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (S2M-E1-ISDN PCI Adapter) + + pci:v000010B5d00009030sv00001518sd00000200* +- ID_MODEL_FROM_DATABASE=Kontron ThinkIO-C ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (Kontron ThinkIO-C) + + pci:v000010B5d00009030sv000015EDsd00001002* +- ID_MODEL_FROM_DATABASE=MCCS 8-port Serial Hot Swap ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (MCCS 8-port Serial Hot Swap) + + pci:v000010B5d00009030sv000015EDsd00001003* +- ID_MODEL_FROM_DATABASE=MCCS 16-port Serial Hot Swap ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (MCCS 16-port Serial Hot Swap) + + pci:v000010B5d00009030sv0000E1C5sd00000001* +- ID_MODEL_FROM_DATABASE=TE1-PCI ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (TE1-PCI) + + pci:v000010B5d00009030sv0000E1C5sd00000005* +- ID_MODEL_FROM_DATABASE=TA1-PCI ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (TA1-PCI) + + pci:v000010B5d00009030sv0000E1C5sd00000006* +- ID_MODEL_FROM_DATABASE=TA1-PCI4 ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (TA1-PCI4) + + pci:v000010B5d00009036* + ID_MODEL_FROM_DATABASE=9036 +@@ -18948,145 +18948,145 @@ pci:v000010B5d00009050* + ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge + + pci:v000010B5d00009050sv000010B5sd00001067* +- ID_MODEL_FROM_DATABASE=IXXAT CAN i165 ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (IXXAT CAN i165) + + pci:v000010B5d00009050sv000010B5sd0000114E* +- ID_MODEL_FROM_DATABASE=Wasco WITIO PCI168extended ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (Wasco WITIO PCI168extended) + + pci:v000010B5d00009050sv000010B5sd00001169* +- ID_MODEL_FROM_DATABASE=Wasco OPTOIO32standard 32 digital in, 32 digital out ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (Wasco OPTOIO32standard 32 digital in, 32 digital out) + + pci:v000010B5d00009050sv000010B5sd00001172* +- ID_MODEL_FROM_DATABASE=IK220 (Heidenhain) ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (IK220 (Heidenhain)) + + pci:v000010B5d00009050sv000010B5sd00002036* +- ID_MODEL_FROM_DATABASE=SatPak GPS ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (SatPak GPS) + + pci:v000010B5d00009050sv000010B5sd00002221* +- ID_MODEL_FROM_DATABASE=Alpermann+Velte PCL PCI LV: Timecode Reader Board ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (Alpermann+Velte PCL PCI LV: Timecode Reader Board) + + pci:v000010B5d00009050sv000010B5sd00002273* +- ID_MODEL_FROM_DATABASE=SH ARC-PCI SOHARD ARCNET card ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (SH ARC-PCI SOHARD ARCNET card) + + pci:v000010B5d00009050sv000010B5sd00002431* +- ID_MODEL_FROM_DATABASE=Alpermann+Velte PCL PCI D: Timecode Reader Board ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (Alpermann+Velte PCL PCI D: Timecode Reader Board) + + pci:v000010B5d00009050sv000010B5sd00002905* +- ID_MODEL_FROM_DATABASE=Alpermann+Velte PCI TS: Time Synchronisation Board ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (Alpermann+Velte PCI TS: Time Synchronisation Board) + + pci:v000010B5d00009050sv000010B5sd00003196* +- ID_MODEL_FROM_DATABASE=Goramo PLX200SYN sync serial card ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (Goramo PLX200SYN sync serial card) + + pci:v000010B5d00009050sv000010B5sd00009050* +- ID_MODEL_FROM_DATABASE=PCI-I04 PCI Passive PC/CAN Interface ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (PCI-I04 PCI Passive PC/CAN Interface) + + pci:v000010B5d00009050sv00001369sd00008901* +- ID_MODEL_FROM_DATABASE=PCX11+ PCI ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (PCX11+ PCI) + + pci:v000010B5d00009050sv00001369sd00008F01* +- ID_MODEL_FROM_DATABASE=VX222 ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (VX222) + + pci:v000010B5d00009050sv00001369sd00009401* +- ID_MODEL_FROM_DATABASE=PCX924 ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (PCX924) + + pci:v000010B5d00009050sv00001369sd00009501* +- ID_MODEL_FROM_DATABASE=PCX22 ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (PCX22) + + pci:v000010B5d00009050sv00001498sd00000362* +- ID_MODEL_FROM_DATABASE=TPMC866 8 Channel Serial Card ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (TPMC866 8 Channel Serial Card) + + pci:v000010B5d00009050sv00001522sd00000001* +- ID_MODEL_FROM_DATABASE=RockForce 4 Port V.90 Data/Fax/Voice Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForce 4 Port V.90 Data/Fax/Voice Modem) + + pci:v000010B5d00009050sv00001522sd00000002* +- ID_MODEL_FROM_DATABASE=RockForce 2 Port V.90 Data/Fax/Voice Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForce 2 Port V.90 Data/Fax/Voice Modem) + + pci:v000010B5d00009050sv00001522sd00000003* +- ID_MODEL_FROM_DATABASE=RockForce 6 Port V.90 Data/Fax/Voice Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForce 6 Port V.90 Data/Fax/Voice Modem) + + pci:v000010B5d00009050sv00001522sd00000004* +- ID_MODEL_FROM_DATABASE=RockForce 8 Port V.90 Data/Fax/Voice Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForce 8 Port V.90 Data/Fax/Voice Modem) + + pci:v000010B5d00009050sv00001522sd00000010* +- ID_MODEL_FROM_DATABASE=RockForce2000 4 Port V.90 Data/Fax/Voice Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForce2000 4 Port V.90 Data/Fax/Voice Modem) + + pci:v000010B5d00009050sv00001522sd00000020* +- ID_MODEL_FROM_DATABASE=RockForce2000 2 Port V.90 Data/Fax/Voice Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForce2000 2 Port V.90 Data/Fax/Voice Modem) + + pci:v000010B5d00009050sv000015EDsd00001000* +- ID_MODEL_FROM_DATABASE=Macrolink MCCS 8-port Serial ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (Macrolink MCCS 8-port Serial) + + pci:v000010B5d00009050sv000015EDsd00001001* +- ID_MODEL_FROM_DATABASE=Macrolink MCCS 16-port Serial ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (Macrolink MCCS 16-port Serial) + + pci:v000010B5d00009050sv000015EDsd00001002* +- ID_MODEL_FROM_DATABASE=Macrolink MCCS 8-port Serial Hot Swap ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (Macrolink MCCS 8-port Serial Hot Swap) + + pci:v000010B5d00009050sv000015EDsd00001003* +- ID_MODEL_FROM_DATABASE=Macrolink MCCS 16-port Serial Hot Swap ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (Macrolink MCCS 16-port Serial Hot Swap) + + pci:v000010B5d00009050sv00005654sd00002036* +- ID_MODEL_FROM_DATABASE=OpenSwitch 6 Telephony card ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (OpenSwitch 6 Telephony card) + + pci:v000010B5d00009050sv00005654sd00003132* +- ID_MODEL_FROM_DATABASE=OpenSwitch 12 Telephony card ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (OpenSwitch 12 Telephony card) + + pci:v000010B5d00009050sv00005654sd00005634* +- ID_MODEL_FROM_DATABASE=OpenLine4 Telephony Card ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (OpenLine4 Telephony Card) + + pci:v000010B5d00009050sv0000D531sd0000C002* +- ID_MODEL_FROM_DATABASE=PCIntelliCAN 2xSJA1000 CAN bus ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (PCIntelliCAN 2xSJA1000 CAN bus) + + pci:v000010B5d00009050sv0000D84Dsd00004006* +- ID_MODEL_FROM_DATABASE=EX-4006 1P ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4006 1P) + + pci:v000010B5d00009050sv0000D84Dsd00004008* +- ID_MODEL_FROM_DATABASE=EX-4008 1P EPP/ECP ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4008 1P EPP/ECP) + + pci:v000010B5d00009050sv0000D84Dsd00004014* +- ID_MODEL_FROM_DATABASE=EX-4014 2P ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4014 2P) + + pci:v000010B5d00009050sv0000D84Dsd00004018* +- ID_MODEL_FROM_DATABASE=EX-4018 3P EPP/ECP ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4018 3P EPP/ECP) + + pci:v000010B5d00009050sv0000D84Dsd00004025* +- ID_MODEL_FROM_DATABASE=EX-4025 1S(16C550) RS-232 ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4025 1S(16C550) RS-232) + + pci:v000010B5d00009050sv0000D84Dsd00004027* +- ID_MODEL_FROM_DATABASE=EX-4027 1S(16C650) RS-232 ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4027 1S(16C650) RS-232) + + pci:v000010B5d00009050sv0000D84Dsd00004028* +- ID_MODEL_FROM_DATABASE=EX-4028 1S(16C850) RS-232 ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4028 1S(16C850) RS-232) + + pci:v000010B5d00009050sv0000D84Dsd00004036* +- ID_MODEL_FROM_DATABASE=EX-4036 2S(16C650) RS-232 ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4036 2S(16C650) RS-232) + + pci:v000010B5d00009050sv0000D84Dsd00004037* +- ID_MODEL_FROM_DATABASE=EX-4037 2S(16C650) RS-232 ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4037 2S(16C650) RS-232) + + pci:v000010B5d00009050sv0000D84Dsd00004038* +- ID_MODEL_FROM_DATABASE=EX-4038 2S(16C850) RS-232 ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4038 2S(16C850) RS-232) + + pci:v000010B5d00009050sv0000D84Dsd00004052* +- ID_MODEL_FROM_DATABASE=EX-4052 1S(16C550) RS-422/485 ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4052 1S(16C550) RS-422/485) + + pci:v000010B5d00009050sv0000D84Dsd00004053* +- ID_MODEL_FROM_DATABASE=EX-4053 2S(16C550) RS-422/485 ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4053 2S(16C550) RS-422/485) + + pci:v000010B5d00009050sv0000D84Dsd00004055* +- ID_MODEL_FROM_DATABASE=EX-4055 4S(16C550) RS-232 ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4055 4S(16C550) RS-232) + + pci:v000010B5d00009050sv0000D84Dsd00004058* +- ID_MODEL_FROM_DATABASE=EX-4055 4S(16C650) RS-232 ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4055 4S(16C650) RS-232) + + pci:v000010B5d00009050sv0000D84Dsd00004065* +- ID_MODEL_FROM_DATABASE=EX-4065 8S(16C550) RS-232 ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4065 8S(16C550) RS-232) + + pci:v000010B5d00009050sv0000D84Dsd00004068* +- ID_MODEL_FROM_DATABASE=EX-4068 8S(16C650) RS-232 ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4068 8S(16C650) RS-232) + + pci:v000010B5d00009050sv0000D84Dsd00004078* +- ID_MODEL_FROM_DATABASE=EX-4078 2S(16C552) RS-232+1P ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (EX-4078 2S(16C552) RS-232+1P) + + pci:v000010B5d00009052* + ID_MODEL_FROM_DATABASE=PCI9052 PCI <-> IOBus Bridge +@@ -19095,88 +19095,88 @@ pci:v000010B5d00009054* + ID_MODEL_FROM_DATABASE=PCI9054 32-bit 33MHz PCI <-> IOBus Bridge + + pci:v000010B5d00009054sv000010B5sd00002455* +- ID_MODEL_FROM_DATABASE=Wessex Techology PHIL-PCI ++ ID_MODEL_FROM_DATABASE=PCI9054 32-bit 33MHz PCI <-> IOBus Bridge (Wessex Techology PHIL-PCI) + + pci:v000010B5d00009054sv000010B5sd00002696* +- ID_MODEL_FROM_DATABASE=Innes Corp AM Radcap card ++ ID_MODEL_FROM_DATABASE=PCI9054 32-bit 33MHz PCI <-> IOBus Bridge (Innes Corp AM Radcap card) + + pci:v000010B5d00009054sv000010B5sd00002717* +- ID_MODEL_FROM_DATABASE=Innes Corp Auricon card ++ ID_MODEL_FROM_DATABASE=PCI9054 32-bit 33MHz PCI <-> IOBus Bridge (Innes Corp Auricon card) + + pci:v000010B5d00009054sv000010B5sd00002844* +- ID_MODEL_FROM_DATABASE=Innes Corp TVS Encoder card ++ ID_MODEL_FROM_DATABASE=PCI9054 32-bit 33MHz PCI <-> IOBus Bridge (Innes Corp TVS Encoder card) + + pci:v000010B5d00009054sv000012C7sd00004001* +- ID_MODEL_FROM_DATABASE=Intel Dialogic DM/V960-4T1 PCI ++ ID_MODEL_FROM_DATABASE=PCI9054 32-bit 33MHz PCI <-> IOBus Bridge (Intel Dialogic DM/V960-4T1 PCI) + + pci:v000010B5d00009054sv000012D9sd00000002* +- ID_MODEL_FROM_DATABASE=PCI Prosody Card rev 1.5 ++ ID_MODEL_FROM_DATABASE=PCI9054 32-bit 33MHz PCI <-> IOBus Bridge (PCI Prosody Card rev 1.5) + + pci:v000010B5d00009054sv000014B4sd0000D100* +- ID_MODEL_FROM_DATABASE=Dektec DTA-100 ++ ID_MODEL_FROM_DATABASE=PCI9054 32-bit 33MHz PCI <-> IOBus Bridge (Dektec DTA-100) + + pci:v000010B5d00009054sv000014B4sd0000D114* +- ID_MODEL_FROM_DATABASE=Dektec DTA-120 ++ ID_MODEL_FROM_DATABASE=PCI9054 32-bit 33MHz PCI <-> IOBus Bridge (Dektec DTA-120) + + pci:v000010B5d00009054sv000016DFsd00000011* +- ID_MODEL_FROM_DATABASE=PIKA PrimeNet MM PCI ++ ID_MODEL_FROM_DATABASE=PCI9054 32-bit 33MHz PCI <-> IOBus Bridge (PIKA PrimeNet MM PCI) + + pci:v000010B5d00009054sv000016DFsd00000012* +- ID_MODEL_FROM_DATABASE=PIKA PrimeNet MM cPCI 8 ++ ID_MODEL_FROM_DATABASE=PCI9054 32-bit 33MHz PCI <-> IOBus Bridge (PIKA PrimeNet MM cPCI 8) + + pci:v000010B5d00009054sv000016DFsd00000013* +- ID_MODEL_FROM_DATABASE=PIKA PrimeNet MM cPCI 8 (without CAS Signaling) ++ ID_MODEL_FROM_DATABASE=PCI9054 32-bit 33MHz PCI <-> IOBus Bridge (PIKA PrimeNet MM cPCI 8 (without CAS Signaling)) + + pci:v000010B5d00009054sv000016DFsd00000014* +- ID_MODEL_FROM_DATABASE=PIKA PrimeNet MM cPCI 4 ++ ID_MODEL_FROM_DATABASE=PCI9054 32-bit 33MHz PCI <-> IOBus Bridge (PIKA PrimeNet MM cPCI 4) + + pci:v000010B5d00009054sv000016DFsd00000015* +- ID_MODEL_FROM_DATABASE=PIKA Daytona MM ++ ID_MODEL_FROM_DATABASE=PCI9054 32-bit 33MHz PCI <-> IOBus Bridge (PIKA Daytona MM) + + pci:v000010B5d00009054sv000016DFsd00000016* +- ID_MODEL_FROM_DATABASE=PIKA InLine MM ++ ID_MODEL_FROM_DATABASE=PCI9054 32-bit 33MHz PCI <-> IOBus Bridge (PIKA InLine MM) + + pci:v000010B5d00009056* + ID_MODEL_FROM_DATABASE=PCI9056 32-bit 66MHz PCI <-> IOBus Bridge + + pci:v000010B5d00009056sv000010B5sd00002979* +- ID_MODEL_FROM_DATABASE=CellinkBlade 11 - CPCI board VoATM AAL1 ++ ID_MODEL_FROM_DATABASE=PCI9056 32-bit 66MHz PCI <-> IOBus Bridge (CellinkBlade 11 - CPCI board VoATM AAL1) + + pci:v000010B5d00009056sv000010B5sd00003268* +- ID_MODEL_FROM_DATABASE=IXXAT iPC-I XC16/PCIe CAN Board ++ ID_MODEL_FROM_DATABASE=PCI9056 32-bit 66MHz PCI <-> IOBus Bridge (IXXAT iPC-I XC16/PCIe CAN Board) + + pci:v000010B5d00009056sv000010B5sd00003352* +- ID_MODEL_FROM_DATABASE=Alpermann+Velte PCL PCIe HD: Timecode Reader Board ++ ID_MODEL_FROM_DATABASE=PCI9056 32-bit 66MHz PCI <-> IOBus Bridge (Alpermann+Velte PCL PCIe HD: Timecode Reader Board) + + pci:v000010B5d00009056sv000010B5sd00003353* +- ID_MODEL_FROM_DATABASE=Alpermann+Velte PCL PCIe D: Timecode Reader Board ++ ID_MODEL_FROM_DATABASE=PCI9056 32-bit 66MHz PCI <-> IOBus Bridge (Alpermann+Velte PCL PCIe D: Timecode Reader Board) + + pci:v000010B5d00009056sv000010B5sd00003354* +- ID_MODEL_FROM_DATABASE=Alpermann+Velte PCL PCIe LV: Timecode Reader Board ++ ID_MODEL_FROM_DATABASE=PCI9056 32-bit 66MHz PCI <-> IOBus Bridge (Alpermann+Velte PCL PCIe LV: Timecode Reader Board) + + pci:v000010B5d00009056sv000010B5sd00003355* +- ID_MODEL_FROM_DATABASE=Alpermann+Velte PCL PCIe L: Timecode Reader Board ++ ID_MODEL_FROM_DATABASE=PCI9056 32-bit 66MHz PCI <-> IOBus Bridge (Alpermann+Velte PCL PCIe L: Timecode Reader Board) + + pci:v000010B5d00009056sv000010B5sd00003415* +- ID_MODEL_FROM_DATABASE=Alpermann+Velte PCIe TS: Time Synchronisation Board ++ ID_MODEL_FROM_DATABASE=PCI9056 32-bit 66MHz PCI <-> IOBus Bridge (Alpermann+Velte PCIe TS: Time Synchronisation Board) + + pci:v000010B5d00009056sv000010B5sd00003493* +- ID_MODEL_FROM_DATABASE=Alpermann+Velte PCL PCIe 3G: Timecode Reader Board ++ ID_MODEL_FROM_DATABASE=PCI9056 32-bit 66MHz PCI <-> IOBus Bridge (Alpermann+Velte PCL PCIe 3G: Timecode Reader Board) + + pci:v000010B5d00009056sv00001369sd0000C001* +- ID_MODEL_FROM_DATABASE=LX6464ES ++ ID_MODEL_FROM_DATABASE=PCI9056 32-bit 66MHz PCI <-> IOBus Bridge (LX6464ES) + + pci:v000010B5d00009056sv00001369sd0000C201* +- ID_MODEL_FROM_DATABASE=LX1616ES ++ ID_MODEL_FROM_DATABASE=PCI9056 32-bit 66MHz PCI <-> IOBus Bridge (LX1616ES) + + pci:v000010B5d00009056sv000014B4sd0000D10A* +- ID_MODEL_FROM_DATABASE=DekTec DTA-110T ++ ID_MODEL_FROM_DATABASE=PCI9056 32-bit 66MHz PCI <-> IOBus Bridge (DekTec DTA-110T) + + pci:v000010B5d00009056sv000014B4sd0000D140* +- ID_MODEL_FROM_DATABASE=Dektec DTA-140 ++ ID_MODEL_FROM_DATABASE=PCI9056 32-bit 66MHz PCI <-> IOBus Bridge (Dektec DTA-140) + + pci:v000010B5d00009056sv00001A0Esd0000006F* +- ID_MODEL_FROM_DATABASE=Dektec DTA-111 ++ ID_MODEL_FROM_DATABASE=PCI9056 32-bit 66MHz PCI <-> IOBus Bridge (Dektec DTA-111) + + pci:v000010B5d00009060* + ID_MODEL_FROM_DATABASE=PCI9060 32-bit 33MHz PCI <-> IOBus Bridge +@@ -19185,7 +19185,7 @@ pci:v000010B5d0000906D* + ID_MODEL_FROM_DATABASE=9060SD + + pci:v000010B5d0000906Dsv0000125Csd00000640* +- ID_MODEL_FROM_DATABASE=Aries 16000P ++ ID_MODEL_FROM_DATABASE=9060SD (Aries 16000P) + + pci:v000010B5d0000906E* + ID_MODEL_FROM_DATABASE=9060ES +@@ -19194,61 +19194,61 @@ pci:v000010B5d00009080* + ID_MODEL_FROM_DATABASE=PCI9080 32-bit; 33MHz PCI <-> IOBus Bridge + + pci:v000010B5d00009080sv0000103Csd000010EB* +- ID_MODEL_FROM_DATABASE=(Agilent) E2777B 83K Series Optical Communication Interface ++ ID_MODEL_FROM_DATABASE=PCI9080 32-bit; 33MHz PCI <-> IOBus Bridge ((Agilent) E2777B 83K Series Optical Communication Interface) + + pci:v000010B5d00009080sv0000103Csd000010EC* +- ID_MODEL_FROM_DATABASE=(Agilent) E6978-66442 PCI CIC ++ ID_MODEL_FROM_DATABASE=PCI9080 32-bit; 33MHz PCI <-> IOBus Bridge ((Agilent) E6978-66442 PCI CIC) + + pci:v000010B5d00009080sv000010B5sd00001123* +- ID_MODEL_FROM_DATABASE=Sectra KK631 encryption board ++ ID_MODEL_FROM_DATABASE=PCI9080 32-bit; 33MHz PCI <-> IOBus Bridge (Sectra KK631 encryption board) + + pci:v000010B5d00009080sv000010B5sd00009080* +- ID_MODEL_FROM_DATABASE=9080 [real subsystem ID not set] ++ ID_MODEL_FROM_DATABASE=PCI9080 32-bit; 33MHz PCI <-> IOBus Bridge (9080 [real subsystem ID not set]) + + pci:v000010B5d00009080sv000012D9sd00000002* +- ID_MODEL_FROM_DATABASE=PCI Prosody Card ++ ID_MODEL_FROM_DATABASE=PCI9080 32-bit; 33MHz PCI <-> IOBus Bridge (PCI Prosody Card) + + pci:v000010B5d00009080sv000012DFsd00004422* +- ID_MODEL_FROM_DATABASE=4422PCI ["Do-All" Telemetry Data Aquisition System] ++ ID_MODEL_FROM_DATABASE=PCI9080 32-bit; 33MHz PCI <-> IOBus Bridge (4422PCI ["Do-All" Telemetry Data Aquisition System]) + + pci:v000010B5d00009080sv00001369sd00009601* +- ID_MODEL_FROM_DATABASE=PCX822np ++ ID_MODEL_FROM_DATABASE=PCI9080 32-bit; 33MHz PCI <-> IOBus Bridge (PCX822np) + + pci:v000010B5d00009080sv00001369sd0000A102* +- ID_MODEL_FROM_DATABASE=PCX822v2 ++ ID_MODEL_FROM_DATABASE=PCI9080 32-bit; 33MHz PCI <-> IOBus Bridge (PCX822v2) + + pci:v000010B5d00009080sv00001369sd0000A201* +- ID_MODEL_FROM_DATABASE=PCX442 ++ ID_MODEL_FROM_DATABASE=PCI9080 32-bit; 33MHz PCI <-> IOBus Bridge (PCX442) + + pci:v000010B5d00009080sv00001369sd0000A301* +- ID_MODEL_FROM_DATABASE=LCM440v2 ++ ID_MODEL_FROM_DATABASE=PCI9080 32-bit; 33MHz PCI <-> IOBus Bridge (LCM440v2) + + pci:v000010B5d00009080sv00001369sd0000A401* +- ID_MODEL_FROM_DATABASE=VX822 ++ ID_MODEL_FROM_DATABASE=PCI9080 32-bit; 33MHz PCI <-> IOBus Bridge (VX822) + + pci:v000010B5d00009080sv00001369sd0000A402* +- ID_MODEL_FROM_DATABASE=VX822v2 ++ ID_MODEL_FROM_DATABASE=PCI9080 32-bit; 33MHz PCI <-> IOBus Bridge (VX822v2) + + pci:v000010B5d00009080sv00001369sd0000A901* +- ID_MODEL_FROM_DATABASE=LCM420 ++ ID_MODEL_FROM_DATABASE=PCI9080 32-bit; 33MHz PCI <-> IOBus Bridge (LCM420) + + pci:v000010B5d00009080sv00001369sd0000AA01* +- ID_MODEL_FROM_DATABASE=VX820v2 ++ ID_MODEL_FROM_DATABASE=PCI9080 32-bit; 33MHz PCI <-> IOBus Bridge (VX820v2) + + pci:v000010B5d00009080sv00001517sd0000000B* +- ID_MODEL_FROM_DATABASE=ECSG-1R3ADC-PMC Clock synthesizer ++ ID_MODEL_FROM_DATABASE=PCI9080 32-bit; 33MHz PCI <-> IOBus Bridge (ECSG-1R3ADC-PMC Clock synthesizer) + + pci:v000010B5d00009656* + ID_MODEL_FROM_DATABASE=PCI9656 PCI <-> IOBus Bridge + + pci:v000010B5d00009656sv00001517sd0000000F* +- ID_MODEL_FROM_DATABASE=ECDR-GC314-PMC Receiver ++ ID_MODEL_FROM_DATABASE=PCI9656 PCI <-> IOBus Bridge (ECDR-GC314-PMC Receiver) + + pci:v000010B5d00009656sv00001885sd00000700* +- ID_MODEL_FROM_DATABASE=Tsunami FPGA PMC with Altera Stratix S40 ++ ID_MODEL_FROM_DATABASE=PCI9656 PCI <-> IOBus Bridge (Tsunami FPGA PMC with Altera Stratix S40) + + pci:v000010B5d00009656sv00001885sd00000701* +- ID_MODEL_FROM_DATABASE=Tsunami FPGA PMC with Altera Stratix S30 ++ ID_MODEL_FROM_DATABASE=PCI9656 PCI <-> IOBus Bridge (Tsunami FPGA PMC with Altera Stratix S30) + + pci:v000010B5d0000A100* + ID_MODEL_FROM_DATABASE=Blackmagic Design DeckLink +@@ -19263,28 +19263,28 @@ pci:v000010B5d0000D00D* + ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge + + pci:v000010B5d0000D00Dsv000010B5sd00009030* +- ID_MODEL_FROM_DATABASE=Digium Tormenta 2 T400P or E400P Quad T1 or E1 PCI card ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (Digium Tormenta 2 T400P or E400P Quad T1 or E1 PCI card) + + pci:v000010B5d0000D33D* + ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge + + pci:v000010B5d0000D33Dsv000010B5sd00009030* +- ID_MODEL_FROM_DATABASE=Tormenta 3 Varion V401PT Quad T1/J1 PCI card ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (Tormenta 3 Varion V401PT Quad T1/J1 PCI card) + + pci:v000010B5d0000D44D* + ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge + + pci:v000010B5d0000D44Dsv000010B5sd000017F6* +- ID_MODEL_FROM_DATABASE=Allo CP100P/E 1-port E1/T1/J1 PCI/PCIe card ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (Allo CP100P/E 1-port E1/T1/J1 PCI/PCIe card) + + pci:v000010B5d0000D44Dsv000010B5sd000017F7* +- ID_MODEL_FROM_DATABASE=Allo CP400P/E 4-port E1/T1/J1 PCI/PCIe card ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (Allo CP400P/E 4-port E1/T1/J1 PCI/PCIe card) + + pci:v000010B5d0000D44Dsv000010B5sd000017F8* +- ID_MODEL_FROM_DATABASE=Allo CP200P/E 2-port E1/T1/J1 PCI/PCIe card ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (Allo CP200P/E 2-port E1/T1/J1 PCI/PCIe card) + + pci:v000010B5d0000D44Dsv000010B5sd00009030* +- ID_MODEL_FROM_DATABASE=Tormenta 3 Varion V401PE Quad E1 PCI card ++ ID_MODEL_FROM_DATABASE=PCI9030 32-bit 33MHz PCI <-> IOBus Bridge (Tormenta 3 Varion V401PE Quad E1 PCI card) + + pci:v000010B6* + ID_VENDOR_FROM_DATABASE=Madge Networks +@@ -19299,19 +19299,19 @@ pci:v000010B6d00000002sv000010B6sd00000002* + ID_MODEL_FROM_DATABASE=Smart 16/4 PCI Ringnode Mk2 + + pci:v000010B6d00000002sv000010B6sd00000006* +- ID_MODEL_FROM_DATABASE=16/4 CardBus Adapter ++ ID_MODEL_FROM_DATABASE=Smart 16/4 PCI Ringnode Mk2 (16/4 CardBus Adapter) + + pci:v000010B6d00000003* + ID_MODEL_FROM_DATABASE=Smart 16/4 PCI Ringnode Mk3 + + pci:v000010B6d00000003sv00000E11sd0000B0FD* +- ID_MODEL_FROM_DATABASE=Compaq NC4621 PCI, 4/16, WOL ++ ID_MODEL_FROM_DATABASE=Smart 16/4 PCI Ringnode Mk3 (Compaq NC4621 PCI, 4/16, WOL) + + pci:v000010B6d00000003sv000010B6sd00000003* + ID_MODEL_FROM_DATABASE=Smart 16/4 PCI Ringnode Mk3 + + pci:v000010B6d00000003sv000010B6sd00000007* +- ID_MODEL_FROM_DATABASE=Presto PCI Plus Adapter ++ ID_MODEL_FROM_DATABASE=Smart 16/4 PCI Ringnode Mk3 (Presto PCI Plus Adapter) + + pci:v000010B6d00000004* + ID_MODEL_FROM_DATABASE=Smart 16/4 PCI Ringnode Mk1 +@@ -19320,13 +19320,13 @@ pci:v000010B6d00000006* + ID_MODEL_FROM_DATABASE=16/4 Cardbus Adapter + + pci:v000010B6d00000006sv000010B6sd00000006* +- ID_MODEL_FROM_DATABASE=16/4 CardBus Adapter ++ ID_MODEL_FROM_DATABASE=16/4 Cardbus Adapter (16/4 CardBus Adapter) + + pci:v000010B6d00000007* + ID_MODEL_FROM_DATABASE=Presto PCI Adapter + + pci:v000010B6d00000007sv000010B6sd00000007* +- ID_MODEL_FROM_DATABASE=Presto PCI ++ ID_MODEL_FROM_DATABASE=Presto PCI Adapter (Presto PCI) + + pci:v000010B6d00000009* + ID_MODEL_FROM_DATABASE=Smart 100/16/4 PCI-HS Ringnode +@@ -19347,7 +19347,7 @@ pci:v000010B6d0000000Bsv000010B6sd00000008* + ID_MODEL_FROM_DATABASE=16/4 CardBus Adapter Mk2 + + pci:v000010B6d0000000Bsv000010B6sd0000000B* +- ID_MODEL_FROM_DATABASE=16/4 Cardbus Adapter Mk2 ++ ID_MODEL_FROM_DATABASE=16/4 CardBus Adapter Mk2 (16/4 Cardbus Adapter Mk2) + + pci:v000010B6d0000000C* + ID_MODEL_FROM_DATABASE=RapidFire 3140V2 16/4 TR Adapter +@@ -19368,13 +19368,13 @@ pci:v000010B7d00000001* + ID_MODEL_FROM_DATABASE=3c985 1000BaseSX (SX/TX) + + pci:v000010B7d00000001sv00009850sd00000001* +- ID_MODEL_FROM_DATABASE=3c985B-SX ++ ID_MODEL_FROM_DATABASE=3c985 1000BaseSX (SX/TX) (3c985B-SX) + + pci:v000010B7d00000013* + ID_MODEL_FROM_DATABASE=AR5212 802.11abg NIC (3CRDAG675) + + pci:v000010B7d00000013sv000010B7sd00002031* +- ID_MODEL_FROM_DATABASE=3CRDAG675 11a/b/g Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5212 802.11abg NIC (3CRDAG675) (3CRDAG675 11a/b/g Wireless PCI Adapter) + + pci:v000010B7d00000910* + ID_MODEL_FROM_DATABASE=3C910-A01 +@@ -19386,10 +19386,10 @@ pci:v000010B7d00001007* + ID_MODEL_FROM_DATABASE=Mini PCI 56k Winmodem + + pci:v000010B7d00001007sv000010B7sd0000615B* +- ID_MODEL_FROM_DATABASE=Mini PCI 56K Modem ++ ID_MODEL_FROM_DATABASE=Mini PCI 56k Winmodem (Mini PCI 56K Modem) + + pci:v000010B7d00001007sv000010B7sd0000615C* +- ID_MODEL_FROM_DATABASE=Mini PCI 56K Modem ++ ID_MODEL_FROM_DATABASE=Mini PCI 56k Winmodem (Mini PCI 56K Modem) + + pci:v000010B7d00001201* + ID_MODEL_FROM_DATABASE=3c982-TXM 10/100baseTX Dual Port A [Hydra] +@@ -19401,16 +19401,16 @@ pci:v000010B7d00001700* + ID_MODEL_FROM_DATABASE=3c940 10/100/1000Base-T [Marvell] + + pci:v000010B7d00001700sv00001043sd000080EB* +- ID_MODEL_FROM_DATABASE=A7V600/P4P800/K8V motherboard ++ ID_MODEL_FROM_DATABASE=3c940 10/100/1000Base-T [Marvell] (A7V600/P4P800/K8V motherboard) + + pci:v000010B7d00001700sv000010B7sd00000010* +- ID_MODEL_FROM_DATABASE=3C940 Gigabit LOM Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=3c940 10/100/1000Base-T [Marvell] (3C940 Gigabit LOM Ethernet Adapter) + + pci:v000010B7d00001700sv000010B7sd00000020* +- ID_MODEL_FROM_DATABASE=3C941 Gigabit LOM Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=3c940 10/100/1000Base-T [Marvell] (3C941 Gigabit LOM Ethernet Adapter) + + pci:v000010B7d00001700sv0000147Bsd00001407* +- ID_MODEL_FROM_DATABASE=KV8-MAX3 motherboard ++ ID_MODEL_FROM_DATABASE=3c940 10/100/1000Base-T [Marvell] (KV8-MAX3 motherboard) + + pci:v000010B7d00003390* + ID_MODEL_FROM_DATABASE=3c339 TokenLink Velocity +@@ -19419,7 +19419,7 @@ pci:v000010B7d00003590* + ID_MODEL_FROM_DATABASE=3c359 TokenLink Velocity XL + + pci:v000010B7d00003590sv000010B7sd00003590* +- ID_MODEL_FROM_DATABASE=TokenLink Velocity XL Adapter (3C359/359B) ++ ID_MODEL_FROM_DATABASE=3c359 TokenLink Velocity XL (TokenLink Velocity XL Adapter (3C359/359B)) + + pci:v000010B7d00004500* + ID_MODEL_FROM_DATABASE=3c450 HomePNA [Tornado] +@@ -19431,19 +19431,19 @@ pci:v000010B7d00005057* + ID_MODEL_FROM_DATABASE=3c575 Megahertz 10/100 LAN CardBus [Boomerang] + + pci:v000010B7d00005057sv000010B7sd00005A57* +- ID_MODEL_FROM_DATABASE=3C575 Megahertz 10/100 LAN Cardbus PC Card ++ ID_MODEL_FROM_DATABASE=3c575 Megahertz 10/100 LAN CardBus [Boomerang] (3C575 Megahertz 10/100 LAN Cardbus PC Card) + + pci:v000010B7d00005157* + ID_MODEL_FROM_DATABASE=3cCFE575BT Megahertz 10/100 LAN CardBus [Cyclone] + + pci:v000010B7d00005157sv000010B7sd00005B57* +- ID_MODEL_FROM_DATABASE=3C575 Megahertz 10/100 LAN Cardbus PC Card ++ ID_MODEL_FROM_DATABASE=3cCFE575BT Megahertz 10/100 LAN CardBus [Cyclone] (3C575 Megahertz 10/100 LAN Cardbus PC Card) + + pci:v000010B7d00005257* + ID_MODEL_FROM_DATABASE=3cCFE575CT CardBus [Cyclone] + + pci:v000010B7d00005257sv000010B7sd00005C57* +- ID_MODEL_FROM_DATABASE=FE575C-3Com 10/100 LAN CardBus-Fast Ethernet ++ ID_MODEL_FROM_DATABASE=3cCFE575CT CardBus [Cyclone] (FE575C-3Com 10/100 LAN CardBus-Fast Ethernet) + + pci:v000010B7d00005900* + ID_MODEL_FROM_DATABASE=3c590 10BaseT [Vortex] +@@ -19467,7 +19467,7 @@ pci:v000010B7d00005B57* + ID_MODEL_FROM_DATABASE=3c595 Megahertz 10/100 LAN CardBus [Boomerang] + + pci:v000010B7d00005B57sv000010B7sd00005B57* +- ID_MODEL_FROM_DATABASE=3C575 Megahertz 10/100 LAN Cardbus PC Card ++ ID_MODEL_FROM_DATABASE=3c595 Megahertz 10/100 LAN CardBus [Boomerang] (3C575 Megahertz 10/100 LAN Cardbus PC Card) + + pci:v000010B7d00006000* + ID_MODEL_FROM_DATABASE=3CRSHPW796 [OfficeConnect Wireless CardBus] +@@ -19482,31 +19482,31 @@ pci:v000010B7d00006056* + ID_MODEL_FROM_DATABASE=3c556B CardBus [Tornado] + + pci:v000010B7d00006056sv000010B7sd00006556* +- ID_MODEL_FROM_DATABASE=10/100 Mini PCI Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=3c556B CardBus [Tornado] (10/100 Mini PCI Ethernet Adapter) + + pci:v000010B7d00006560* + ID_MODEL_FROM_DATABASE=3cCFE656 CardBus [Cyclone] + + pci:v000010B7d00006560sv000010B7sd0000656A* +- ID_MODEL_FROM_DATABASE=3CCFEM656 10/100 LAN+56K Modem CardBus ++ ID_MODEL_FROM_DATABASE=3cCFE656 CardBus [Cyclone] (3CCFEM656 10/100 LAN+56K Modem CardBus) + + pci:v000010B7d00006561* + ID_MODEL_FROM_DATABASE=3cCFEM656 10/100 LAN+56K Modem CardBus + + pci:v000010B7d00006561sv000010B7sd0000656B* +- ID_MODEL_FROM_DATABASE=3CCFEM656 10/100 LAN+56K Modem CardBus ++ ID_MODEL_FROM_DATABASE=3cCFEM656 10/100 LAN+56K Modem CardBus (3CCFEM656 10/100 LAN+56K Modem CardBus) + + pci:v000010B7d00006562* + ID_MODEL_FROM_DATABASE=3cCFEM656B 10/100 LAN+Winmodem CardBus [Cyclone] + + pci:v000010B7d00006562sv000010B7sd0000656B* +- ID_MODEL_FROM_DATABASE=3CCFEM656B 10/100 LAN+56K Modem CardBus ++ ID_MODEL_FROM_DATABASE=3cCFEM656B 10/100 LAN+Winmodem CardBus [Cyclone] (3CCFEM656B 10/100 LAN+56K Modem CardBus) + + pci:v000010B7d00006563* + ID_MODEL_FROM_DATABASE=3cCFEM656B 10/100 LAN+56K Modem CardBus + + pci:v000010B7d00006563sv000010B7sd0000656B* +- ID_MODEL_FROM_DATABASE=3CCFEM656 10/100 LAN+56K Modem CardBus ++ ID_MODEL_FROM_DATABASE=3cCFEM656B 10/100 LAN+56K Modem CardBus (3CCFEM656 10/100 LAN+56K Modem CardBus) + + pci:v000010B7d00006564* + ID_MODEL_FROM_DATABASE=3cXFEM656C 10/100 LAN+Winmodem CardBus [Tornado] +@@ -19542,13 +19542,13 @@ pci:v000010B7d00009004* + ID_MODEL_FROM_DATABASE=3c900B-TPO Etherlink XL [Cyclone] + + pci:v000010B7d00009004sv000010B7sd00009004* +- ID_MODEL_FROM_DATABASE=3C900B-TPO Etherlink XL TPO 10Mb ++ ID_MODEL_FROM_DATABASE=3c900B-TPO Etherlink XL [Cyclone] (3C900B-TPO Etherlink XL TPO 10Mb) + + pci:v000010B7d00009005* + ID_MODEL_FROM_DATABASE=3c900B-Combo Etherlink XL [Cyclone] + + pci:v000010B7d00009005sv000010B7sd00009005* +- ID_MODEL_FROM_DATABASE=3C900B-Combo Etherlink XL Combo ++ ID_MODEL_FROM_DATABASE=3c900B-Combo Etherlink XL [Cyclone] (3C900B-Combo Etherlink XL Combo) + + pci:v000010B7d00009006* + ID_MODEL_FROM_DATABASE=3c900B-TPC Etherlink XL [Cyclone] +@@ -19572,67 +19572,67 @@ pci:v000010B7d00009055* + ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] + + pci:v000010B7d00009055sv00001028sd00000080* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000081* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000082* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000083* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000084* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000085* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000086* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000087* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000088* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000089* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000090* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000091* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000092* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000093* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000094* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000095* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000096* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000097* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000098* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv00001028sd00000099* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009055sv000010B7sd00009055* +- ID_MODEL_FROM_DATABASE=3C905B Fast Etherlink XL 10/100 ++ ID_MODEL_FROM_DATABASE=3c905B 100BaseTX [Cyclone] (3C905B Fast Etherlink XL 10/100) + + pci:v000010B7d00009056* + ID_MODEL_FROM_DATABASE=3c905B-T4 Fast EtherLink XL [Cyclone] +@@ -19647,40 +19647,40 @@ pci:v000010B7d00009200* + ID_MODEL_FROM_DATABASE=3c905C-TX/TX-M [Tornado] + + pci:v000010B7d00009200sv00001028sd00000095* +- ID_MODEL_FROM_DATABASE=3C920 Integrated Fast Ethernet Controller ++ ID_MODEL_FROM_DATABASE=3c905C-TX/TX-M [Tornado] (3C920 Integrated Fast Ethernet Controller) + + pci:v000010B7d00009200sv00001028sd00000097* +- ID_MODEL_FROM_DATABASE=3C920 Integrated Fast Ethernet Controller ++ ID_MODEL_FROM_DATABASE=3c905C-TX/TX-M [Tornado] (3C920 Integrated Fast Ethernet Controller) + + pci:v000010B7d00009200sv00001028sd000000B4* +- ID_MODEL_FROM_DATABASE=OptiPlex GX110 ++ ID_MODEL_FROM_DATABASE=3c905C-TX/TX-M [Tornado] (OptiPlex GX110) + + pci:v000010B7d00009200sv00001028sd000000D8* +- ID_MODEL_FROM_DATABASE=Precision 530 ++ ID_MODEL_FROM_DATABASE=3c905C-TX/TX-M [Tornado] (Precision 530) + + pci:v000010B7d00009200sv00001028sd000000FE* +- ID_MODEL_FROM_DATABASE=Optiplex GX240 ++ ID_MODEL_FROM_DATABASE=3c905C-TX/TX-M [Tornado] (Optiplex GX240) + + pci:v000010B7d00009200sv00001028sd0000012A* +- ID_MODEL_FROM_DATABASE=3C920 Integrated Fast Ethernet Controller [Latitude C640] ++ ID_MODEL_FROM_DATABASE=3c905C-TX/TX-M [Tornado] (3C920 Integrated Fast Ethernet Controller [Latitude C640]) + + pci:v000010B7d00009200sv000010B7sd00001000* +- ID_MODEL_FROM_DATABASE=3C905CX-TX/TX-M Fast Etherlink for PC Management NIC ++ ID_MODEL_FROM_DATABASE=3c905C-TX/TX-M [Tornado] (3C905CX-TX/TX-M Fast Etherlink for PC Management NIC) + + pci:v000010B7d00009200sv000010B7sd00007000* +- ID_MODEL_FROM_DATABASE=10/100 Mini PCI Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=3c905C-TX/TX-M [Tornado] (10/100 Mini PCI Ethernet Adapter) + + pci:v000010B7d00009200sv000010F1sd00002466* +- ID_MODEL_FROM_DATABASE=Tiger MPX S2466 (3C920 Integrated Fast Ethernet Controller) ++ ID_MODEL_FROM_DATABASE=3c905C-TX/TX-M [Tornado] (Tiger MPX S2466 (3C920 Integrated Fast Ethernet Controller)) + + pci:v000010B7d00009200sv0000144Dsd0000C005* +- ID_MODEL_FROM_DATABASE=X10 Laptop ++ ID_MODEL_FROM_DATABASE=3c905C-TX/TX-M [Tornado] (X10 Laptop) + + pci:v000010B7d00009201* + ID_MODEL_FROM_DATABASE=3C920B-EMB Integrated Fast Ethernet Controller [Tornado] + + pci:v000010B7d00009201sv00001043sd000080AB* +- ID_MODEL_FROM_DATABASE=A7N8X Deluxe onboard 3C920B-EMB Integrated Fast Ethernet Controller ++ ID_MODEL_FROM_DATABASE=3C920B-EMB Integrated Fast Ethernet Controller [Tornado] (A7N8X Deluxe onboard 3C920B-EMB Integrated Fast Ethernet Controller) + + pci:v000010B7d00009202* + ID_MODEL_FROM_DATABASE=3Com 3C920B-EMB-WNM Integrated Fast Ethernet Controller +@@ -19695,22 +19695,22 @@ pci:v000010B7d00009800* + ID_MODEL_FROM_DATABASE=3c980-TX Fast Etherlink XL Server Adapter [Cyclone] + + pci:v000010B7d00009800sv000010B7sd00009800* +- ID_MODEL_FROM_DATABASE=3c980-TX Fast Etherlink XL Server Adapter ++ ID_MODEL_FROM_DATABASE=3c980-TX Fast Etherlink XL Server Adapter [Cyclone] (3c980-TX Fast Etherlink XL Server Adapter) + + pci:v000010B7d00009805* + ID_MODEL_FROM_DATABASE=3c980-C 10/100baseTX NIC [Python-T] + + pci:v000010B7d00009805sv000010B7sd00001201* +- ID_MODEL_FROM_DATABASE=EtherLink Server 10/100 Dual Port A ++ ID_MODEL_FROM_DATABASE=3c980-C 10/100baseTX NIC [Python-T] (EtherLink Server 10/100 Dual Port A) + + pci:v000010B7d00009805sv000010B7sd00001202* +- ID_MODEL_FROM_DATABASE=EtherLink Server 10/100 Dual Port B ++ ID_MODEL_FROM_DATABASE=3c980-C 10/100baseTX NIC [Python-T] (EtherLink Server 10/100 Dual Port B) + + pci:v000010B7d00009805sv000010B7sd00009805* +- ID_MODEL_FROM_DATABASE=3c980 10/100baseTX NIC [Python-T] ++ ID_MODEL_FROM_DATABASE=3c980-C 10/100baseTX NIC [Python-T] (3c980 10/100baseTX NIC [Python-T]) + + pci:v000010B7d00009805sv000010F1sd00002462* +- ID_MODEL_FROM_DATABASE=Thunder K7 S2462 ++ ID_MODEL_FROM_DATABASE=3c980-C 10/100baseTX NIC [Python-T] (Thunder K7 S2462) + + pci:v000010B7d00009900* + ID_MODEL_FROM_DATABASE=3C990-TX [Typhoon] +@@ -19725,25 +19725,25 @@ pci:v000010B7d00009904* + ID_MODEL_FROM_DATABASE=3C990B-TX-M/3C990BSVR [Typhoon2] + + pci:v000010B7d00009904sv000010B7sd00001000* +- ID_MODEL_FROM_DATABASE=3CR990B-TX-M [Typhoon2] ++ ID_MODEL_FROM_DATABASE=3C990B-TX-M/3C990BSVR [Typhoon2] (3CR990B-TX-M [Typhoon2]) + + pci:v000010B7d00009904sv000010B7sd00002000* +- ID_MODEL_FROM_DATABASE=3CR990BSVR [Typhoon2 Server] ++ ID_MODEL_FROM_DATABASE=3C990B-TX-M/3C990BSVR [Typhoon2] (3CR990BSVR [Typhoon2 Server]) + + pci:v000010B7d00009905* + ID_MODEL_FROM_DATABASE=3CR990-FX-95/97/95 [Typhon Fiber] + + pci:v000010B7d00009905sv000010B7sd00001101* +- ID_MODEL_FROM_DATABASE=3CR990-FX-95 [Typhoon Fiber 56-bit] ++ ID_MODEL_FROM_DATABASE=3CR990-FX-95/97/95 [Typhon Fiber] (3CR990-FX-95 [Typhoon Fiber 56-bit]) + + pci:v000010B7d00009905sv000010B7sd00001102* +- ID_MODEL_FROM_DATABASE=3CR990-FX-97 [Typhoon Fiber 168-bit] ++ ID_MODEL_FROM_DATABASE=3CR990-FX-95/97/95 [Typhon Fiber] (3CR990-FX-97 [Typhoon Fiber 168-bit]) + + pci:v000010B7d00009905sv000010B7sd00002101* +- ID_MODEL_FROM_DATABASE=3CR990-FX-95 Server [Typhoon Fiber 56-bit] ++ ID_MODEL_FROM_DATABASE=3CR990-FX-95/97/95 [Typhon Fiber] (3CR990-FX-95 Server [Typhoon Fiber 56-bit]) + + pci:v000010B7d00009905sv000010B7sd00002102* +- ID_MODEL_FROM_DATABASE=3CR990-FX-97 Server [Typhoon Fiber 168-bit] ++ ID_MODEL_FROM_DATABASE=3CR990-FX-95/97/95 [Typhon Fiber] (3CR990-FX-97 Server [Typhoon Fiber 168-bit]) + + pci:v000010B7d00009908* + ID_MODEL_FROM_DATABASE=3CR990SVR95 [Typhoon Server 56-bit] +@@ -19764,49 +19764,49 @@ pci:v000010B8d00000005* + ID_MODEL_FROM_DATABASE=83c170 EPIC/100 Fast Ethernet Adapter + + pci:v000010B8d00000005sv00001055sd0000E000* +- ID_MODEL_FROM_DATABASE=LANEPIC 10/100 [EVB171Q-PCI] ++ ID_MODEL_FROM_DATABASE=83c170 EPIC/100 Fast Ethernet Adapter (LANEPIC 10/100 [EVB171Q-PCI]) + + pci:v000010B8d00000005sv00001055sd0000E002* +- ID_MODEL_FROM_DATABASE=LANEPIC 10/100 [EVB171G-PCI] ++ ID_MODEL_FROM_DATABASE=83c170 EPIC/100 Fast Ethernet Adapter (LANEPIC 10/100 [EVB171G-PCI]) + + pci:v000010B8d00000005sv000010B8sd0000A011* +- ID_MODEL_FROM_DATABASE=EtherPower II 10/100 ++ ID_MODEL_FROM_DATABASE=83c170 EPIC/100 Fast Ethernet Adapter (EtherPower II 10/100) + + pci:v000010B8d00000005sv000010B8sd0000A014* +- ID_MODEL_FROM_DATABASE=EtherPower II 10/100 ++ ID_MODEL_FROM_DATABASE=83c170 EPIC/100 Fast Ethernet Adapter (EtherPower II 10/100) + + pci:v000010B8d00000005sv000010B8sd0000A015* +- ID_MODEL_FROM_DATABASE=EtherPower II 10/100 ++ ID_MODEL_FROM_DATABASE=83c170 EPIC/100 Fast Ethernet Adapter (EtherPower II 10/100) + + pci:v000010B8d00000005sv000010B8sd0000A016* +- ID_MODEL_FROM_DATABASE=EtherPower II 10/100 ++ ID_MODEL_FROM_DATABASE=83c170 EPIC/100 Fast Ethernet Adapter (EtherPower II 10/100) + + pci:v000010B8d00000005sv000010B8sd0000A017* +- ID_MODEL_FROM_DATABASE=EtherPower II 10/100 ++ ID_MODEL_FROM_DATABASE=83c170 EPIC/100 Fast Ethernet Adapter (EtherPower II 10/100) + + pci:v000010B8d00000006* + ID_MODEL_FROM_DATABASE=83c175 EPIC/100 Fast Ethernet Adapter + + pci:v000010B8d00000006sv00001055sd0000E100* +- ID_MODEL_FROM_DATABASE=LANEPIC Cardbus Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=83c175 EPIC/100 Fast Ethernet Adapter (LANEPIC Cardbus Fast Ethernet Adapter) + + pci:v000010B8d00000006sv00001055sd0000E102* +- ID_MODEL_FROM_DATABASE=LANEPIC Cardbus Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=83c175 EPIC/100 Fast Ethernet Adapter (LANEPIC Cardbus Fast Ethernet Adapter) + + pci:v000010B8d00000006sv00001055sd0000E300* +- ID_MODEL_FROM_DATABASE=LANEPIC Cardbus Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=83c175 EPIC/100 Fast Ethernet Adapter (LANEPIC Cardbus Fast Ethernet Adapter) + + pci:v000010B8d00000006sv00001055sd0000E302* +- ID_MODEL_FROM_DATABASE=LANEPIC Cardbus Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=83c175 EPIC/100 Fast Ethernet Adapter (LANEPIC Cardbus Fast Ethernet Adapter) + + pci:v000010B8d00000006sv000010B8sd0000A012* +- ID_MODEL_FROM_DATABASE=LANEPIC Cardbus Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=83c175 EPIC/100 Fast Ethernet Adapter (LANEPIC Cardbus Fast Ethernet Adapter) + + pci:v000010B8d00000006sv000013A2sd00008002* +- ID_MODEL_FROM_DATABASE=LANEPIC Cardbus Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=83c175 EPIC/100 Fast Ethernet Adapter (LANEPIC Cardbus Fast Ethernet Adapter) + + pci:v000010B8d00000006sv000013A2sd00008006* +- ID_MODEL_FROM_DATABASE=LANEPIC Cardbus Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=83c175 EPIC/100 Fast Ethernet Adapter (LANEPIC Cardbus Fast Ethernet Adapter) + + pci:v000010B8d00001000* + ID_MODEL_FROM_DATABASE=FDC 37c665 +@@ -19869,13 +19869,13 @@ pci:v000010B9d00001521* + ID_MODEL_FROM_DATABASE=M1521 [Aladdin III] + + pci:v000010B9d00001521sv000010B9sd00001521* +- ID_MODEL_FROM_DATABASE=ALI M1521 Aladdin III CPU Bridge ++ ID_MODEL_FROM_DATABASE=M1521 [Aladdin III] (ALI M1521 Aladdin III CPU Bridge) + + pci:v000010B9d00001523* + ID_MODEL_FROM_DATABASE=M1523 + + pci:v000010B9d00001523sv000010B9sd00001523* +- ID_MODEL_FROM_DATABASE=ALI M1523 ISA Bridge ++ ID_MODEL_FROM_DATABASE=M1523 (ALI M1523 ISA Bridge) + + pci:v000010B9d00001531* + ID_MODEL_FROM_DATABASE=M1531 [Aladdin IV] +@@ -19884,16 +19884,16 @@ pci:v000010B9d00001533* + ID_MODEL_FROM_DATABASE=M1533/M1535/M1543 PCI to ISA Bridge [Aladdin IV/V/V+] + + pci:v000010B9d00001533sv00001014sd0000053B* +- ID_MODEL_FROM_DATABASE=ThinkPad R40e ++ ID_MODEL_FROM_DATABASE=M1533/M1535/M1543 PCI to ISA Bridge [Aladdin IV/V/V+] (ThinkPad R40e) + + pci:v000010B9d00001533sv000010B9sd00001533* +- ID_MODEL_FROM_DATABASE=ALi M1533 Aladdin IV/V ISA Bridge ++ ID_MODEL_FROM_DATABASE=M1533/M1535/M1543 PCI to ISA Bridge [Aladdin IV/V/V+] (ALi M1533 Aladdin IV/V ISA Bridge) + + pci:v000010B9d00001541* + ID_MODEL_FROM_DATABASE=M1541 + + pci:v000010B9d00001541sv000010B9sd00001541* +- ID_MODEL_FROM_DATABASE=ALI M1541 Aladdin V/V+ AGP System Controller ++ ID_MODEL_FROM_DATABASE=M1541 (ALI M1541 Aladdin V/V+ AGP System Controller) + + pci:v000010B9d00001543* + ID_MODEL_FROM_DATABASE=M1543 +@@ -19902,10 +19902,10 @@ pci:v000010B9d00001563* + ID_MODEL_FROM_DATABASE=M1563 HyperTransport South Bridge + + pci:v000010B9d00001563sv000010B9sd00001563* +- ID_MODEL_FROM_DATABASE=ASRock 939Dual-SATA2 Motherboard ++ ID_MODEL_FROM_DATABASE=M1563 HyperTransport South Bridge (ASRock 939Dual-SATA2 Motherboard) + + pci:v000010B9d00001563sv00001849sd00001563* +- ID_MODEL_FROM_DATABASE=ASRock 939Dual-SATA2 Motherboard ++ ID_MODEL_FROM_DATABASE=M1563 HyperTransport South Bridge (ASRock 939Dual-SATA2 Motherboard) + + pci:v000010B9d00001573* + ID_MODEL_FROM_DATABASE=PCI to LPC Controller +@@ -20007,22 +20007,22 @@ pci:v000010B9d00005229* + ID_MODEL_FROM_DATABASE=M5229 IDE + + pci:v000010B9d00005229sv00001014sd0000050F* +- ID_MODEL_FROM_DATABASE=ThinkPad R30 ++ ID_MODEL_FROM_DATABASE=M5229 IDE (ThinkPad R30) + + pci:v000010B9d00005229sv00001014sd0000053D* +- ID_MODEL_FROM_DATABASE=ThinkPad R40e ++ ID_MODEL_FROM_DATABASE=M5229 IDE (ThinkPad R40e) + + pci:v000010B9d00005229sv0000103Csd00000024* +- ID_MODEL_FROM_DATABASE=Pavilion ze4400 builtin IDE ++ ID_MODEL_FROM_DATABASE=M5229 IDE (Pavilion ze4400 builtin IDE) + + pci:v000010B9d00005229sv0000103Csd00000025* +- ID_MODEL_FROM_DATABASE=XE4500 Notebook ++ ID_MODEL_FROM_DATABASE=M5229 IDE (XE4500 Notebook) + + pci:v000010B9d00005229sv00001043sd00008053* +- ID_MODEL_FROM_DATABASE=A7A266 Motherboard IDE ++ ID_MODEL_FROM_DATABASE=M5229 IDE (A7A266 Motherboard IDE) + + pci:v000010B9d00005229sv00001849sd00005229* +- ID_MODEL_FROM_DATABASE=ASRock 939Dual-SATA2 Motherboard IDE (PATA) ++ ID_MODEL_FROM_DATABASE=M5229 IDE (ASRock 939Dual-SATA2 Motherboard IDE (PATA)) + + pci:v000010B9d00005235* + ID_MODEL_FROM_DATABASE=M5225 +@@ -20031,31 +20031,31 @@ pci:v000010B9d00005237* + ID_MODEL_FROM_DATABASE=USB 1.1 Controller + + pci:v000010B9d00005237sv00001014sd00000540* +- ID_MODEL_FROM_DATABASE=ThinkPad R40e ++ ID_MODEL_FROM_DATABASE=USB 1.1 Controller (ThinkPad R40e) + + pci:v000010B9d00005237sv0000103Csd00000024* +- ID_MODEL_FROM_DATABASE=Pavilion ze4400 builtin USB ++ ID_MODEL_FROM_DATABASE=USB 1.1 Controller (Pavilion ze4400 builtin USB) + + pci:v000010B9d00005237sv0000103Csd00000025* +- ID_MODEL_FROM_DATABASE=XE4500 Notebook ++ ID_MODEL_FROM_DATABASE=USB 1.1 Controller (XE4500 Notebook) + + pci:v000010B9d00005237sv0000104Dsd0000810F* +- ID_MODEL_FROM_DATABASE=VAIO PCG-U1 USB/OHCI Revision 1.0 ++ ID_MODEL_FROM_DATABASE=USB 1.1 Controller (VAIO PCG-U1 USB/OHCI Revision 1.0) + + pci:v000010B9d00005237sv000010B9sd00005237* +- ID_MODEL_FROM_DATABASE=ASRock 939Dual-SATA2 Motherboard ++ ID_MODEL_FROM_DATABASE=USB 1.1 Controller (ASRock 939Dual-SATA2 Motherboard) + + pci:v000010B9d00005237sv00001849sd00005237* +- ID_MODEL_FROM_DATABASE=ASRock 939Dual-SATA2 Motherboard ++ ID_MODEL_FROM_DATABASE=USB 1.1 Controller (ASRock 939Dual-SATA2 Motherboard) + + pci:v000010B9d00005239* + ID_MODEL_FROM_DATABASE=USB 2.0 Controller + + pci:v000010B9d00005239sv000010B9sd00005239* +- ID_MODEL_FROM_DATABASE=ASRock 939Dual-SATA2 Motherboard ++ ID_MODEL_FROM_DATABASE=USB 2.0 Controller (ASRock 939Dual-SATA2 Motherboard) + + pci:v000010B9d00005239sv00001849sd00005239* +- ID_MODEL_FROM_DATABASE=ASRock 939Dual-SATA2 Motherboard ++ ID_MODEL_FROM_DATABASE=USB 2.0 Controller (ASRock 939Dual-SATA2 Motherboard) + + pci:v000010B9d00005243* + ID_MODEL_FROM_DATABASE=M1541 PCI to AGP Controller +@@ -20103,7 +20103,7 @@ pci:v000010B9d00005288* + ID_MODEL_FROM_DATABASE=ULi M5288 SATA + + pci:v000010B9d00005288sv00001043sd00008056* +- ID_MODEL_FROM_DATABASE=A8R-MVP Mainboard ++ ID_MODEL_FROM_DATABASE=ULi M5288 SATA (A8R-MVP Mainboard) + + pci:v000010B9d00005289* + ID_MODEL_FROM_DATABASE=ULi 5289 SATA +@@ -20115,16 +20115,16 @@ pci:v000010B9d00005451* + ID_MODEL_FROM_DATABASE=M5451 PCI AC-Link Controller Audio Device + + pci:v000010B9d00005451sv00001014sd00000506* +- ID_MODEL_FROM_DATABASE=ThinkPad R30 ++ ID_MODEL_FROM_DATABASE=M5451 PCI AC-Link Controller Audio Device (ThinkPad R30) + + pci:v000010B9d00005451sv00001014sd0000053E* +- ID_MODEL_FROM_DATABASE=ThinkPad R40e ++ ID_MODEL_FROM_DATABASE=M5451 PCI AC-Link Controller Audio Device (ThinkPad R40e) + + pci:v000010B9d00005451sv0000103Csd00000024* +- ID_MODEL_FROM_DATABASE=Pavilion ze4400 builtin Audio ++ ID_MODEL_FROM_DATABASE=M5451 PCI AC-Link Controller Audio Device (Pavilion ze4400 builtin Audio) + + pci:v000010B9d00005451sv0000103Csd00000025* +- ID_MODEL_FROM_DATABASE=XE4500 Notebook ++ ID_MODEL_FROM_DATABASE=M5451 PCI AC-Link Controller Audio Device (XE4500 Notebook) + + pci:v000010B9d00005453* + ID_MODEL_FROM_DATABASE=M5453 PCI AC-Link Controller Modem Device +@@ -20133,22 +20133,22 @@ pci:v000010B9d00005455* + ID_MODEL_FROM_DATABASE=M5455 PCI AC-Link Controller Audio Device + + pci:v000010B9d00005455sv000010B9sd00005455* +- ID_MODEL_FROM_DATABASE=ASRock 939Dual-SATA2 Motherboard ++ ID_MODEL_FROM_DATABASE=M5455 PCI AC-Link Controller Audio Device (ASRock 939Dual-SATA2 Motherboard) + + pci:v000010B9d00005455sv00001849sd00000850* +- ID_MODEL_FROM_DATABASE=ASRock 939Dual-SATA2 Motherboard ++ ID_MODEL_FROM_DATABASE=M5455 PCI AC-Link Controller Audio Device (ASRock 939Dual-SATA2 Motherboard) + + pci:v000010B9d00005457* + ID_MODEL_FROM_DATABASE=M5457 AC'97 Modem Controller + + pci:v000010B9d00005457sv00001014sd00000535* +- ID_MODEL_FROM_DATABASE=ThinkPad R40e ++ ID_MODEL_FROM_DATABASE=M5457 AC'97 Modem Controller (ThinkPad R40e) + + pci:v000010B9d00005457sv0000103Csd00000024* +- ID_MODEL_FROM_DATABASE=Pavilion ze4400 builtin Modem Device ++ ID_MODEL_FROM_DATABASE=M5457 AC'97 Modem Controller (Pavilion ze4400 builtin Modem Device) + + pci:v000010B9d00005457sv0000103Csd00000025* +- ID_MODEL_FROM_DATABASE=XE4500 Notebook ++ ID_MODEL_FROM_DATABASE=M5457 AC'97 Modem Controller (XE4500 Notebook) + + pci:v000010B9d00005459* + ID_MODEL_FROM_DATABASE=SmartLink SmartPCI561 56K Modem +@@ -20169,19 +20169,19 @@ pci:v000010B9d00007101* + ID_MODEL_FROM_DATABASE=M7101 Power Management Controller [PMU] + + pci:v000010B9d00007101sv00001014sd00000510* +- ID_MODEL_FROM_DATABASE=ThinkPad R30 ++ ID_MODEL_FROM_DATABASE=M7101 Power Management Controller [PMU] (ThinkPad R30) + + pci:v000010B9d00007101sv00001014sd0000053C* +- ID_MODEL_FROM_DATABASE=ThinkPad R40e ++ ID_MODEL_FROM_DATABASE=M7101 Power Management Controller [PMU] (ThinkPad R40e) + + pci:v000010B9d00007101sv0000103Csd00000024* +- ID_MODEL_FROM_DATABASE=Pavilion ze4400 ++ ID_MODEL_FROM_DATABASE=M7101 Power Management Controller [PMU] (Pavilion ze4400) + + pci:v000010B9d00007101sv0000103Csd00000025* +- ID_MODEL_FROM_DATABASE=XE4500 Notebook ++ ID_MODEL_FROM_DATABASE=M7101 Power Management Controller [PMU] (XE4500 Notebook) + + pci:v000010B9d00007101sv00001849sd00007101* +- ID_MODEL_FROM_DATABASE=ASRock 939Dual-SATA2 Motherboard ++ ID_MODEL_FROM_DATABASE=M7101 Power Management Controller [PMU] (ASRock 939Dual-SATA2 Motherboard) + + pci:v000010BA* + ID_VENDOR_FROM_DATABASE=Mitsubishi Electric Corp. +@@ -20196,7 +20196,7 @@ pci:v000010BAd00000308* + ID_MODEL_FROM_DATABASE=Tornado 3000 [OEM Evans & Sutherland] + + pci:v000010BAd00000308sv000010DDsd00000024* +- ID_MODEL_FROM_DATABASE=Tornado 3000 ++ ID_MODEL_FROM_DATABASE=Tornado 3000 [OEM Evans & Sutherland] (Tornado 3000) + + pci:v000010BAd00001002* + ID_MODEL_FROM_DATABASE=VG500 [VolumePro Volume Rendering Accelerator] +@@ -20259,79 +20259,79 @@ pci:v000010C8d00000004* + ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] + + pci:v000010C8d00000004sv00001014sd000000BA* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv00001025sd00001007* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv00001028sd00000074* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv00001028sd00000075* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv00001028sd0000007D* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv00001028sd0000007E* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv00001033sd0000802F* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv0000104Dsd0000801B* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv0000104Dsd0000802F* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv0000104Dsd0000830B* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv000010BAsd00000E00* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv000010C8sd00000004* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv000010CFsd00001029* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv000010F7sd00008308* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv000010F7sd00008309* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv000010F7sd0000830B* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv000010F7sd0000830D* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000004sv000010F7sd00008312* +- ID_MODEL_FROM_DATABASE=MagicGraph 128XD ++ ID_MODEL_FROM_DATABASE=NM2160 [MagicGraph 128XD] (MagicGraph 128XD) + + pci:v000010C8d00000005* + ID_MODEL_FROM_DATABASE=NM2200 [MagicGraph 256AV] + + pci:v000010C8d00000005sv00001014sd000000DD* +- ID_MODEL_FROM_DATABASE=ThinkPad 570 ++ ID_MODEL_FROM_DATABASE=NM2200 [MagicGraph 256AV] (ThinkPad 570) + + pci:v000010C8d00000005sv00001028sd00000088* +- ID_MODEL_FROM_DATABASE=Latitude CPi A ++ ID_MODEL_FROM_DATABASE=NM2200 [MagicGraph 256AV] (Latitude CPi A) + + pci:v000010C8d00000006* + ID_MODEL_FROM_DATABASE=NM2360 [MagicMedia 256ZX] + + pci:v000010C8d00000006sv00001014sd00000152* +- ID_MODEL_FROM_DATABASE=ThinkPad 600X ++ ID_MODEL_FROM_DATABASE=NM2360 [MagicMedia 256ZX] (ThinkPad 600X) + + pci:v000010C8d00000016* + ID_MODEL_FROM_DATABASE=NM2380 [MagicMedia 256XL+] + + pci:v000010C8d00000016sv000010C8sd00000016* +- ID_MODEL_FROM_DATABASE=MagicMedia 256XL+ ++ ID_MODEL_FROM_DATABASE=NM2380 [MagicMedia 256XL+] (MagicMedia 256XL+) + + pci:v000010C8d00000025* + ID_MODEL_FROM_DATABASE=NM2230 [MagicGraph 256AV+] +@@ -20343,40 +20343,40 @@ pci:v000010C8d00008005* + ID_MODEL_FROM_DATABASE=NM2200 [MagicMedia 256AV Audio] + + pci:v000010C8d00008005sv00000E11sd0000B0D1* +- ID_MODEL_FROM_DATABASE=MagicMedia 256AV Audio Device on Discovery ++ ID_MODEL_FROM_DATABASE=NM2200 [MagicMedia 256AV Audio] (MagicMedia 256AV Audio Device on Discovery) + + pci:v000010C8d00008005sv00000E11sd0000B126* +- ID_MODEL_FROM_DATABASE=MagicMedia 256AV Audio Device on Durango ++ ID_MODEL_FROM_DATABASE=NM2200 [MagicMedia 256AV Audio] (MagicMedia 256AV Audio Device on Durango) + + pci:v000010C8d00008005sv00001014sd000000DD* +- ID_MODEL_FROM_DATABASE=ThinkPad 390/i1720/i1721 ++ ID_MODEL_FROM_DATABASE=NM2200 [MagicMedia 256AV Audio] (ThinkPad 390/i1720/i1721) + + pci:v000010C8d00008005sv00001025sd00001003* +- ID_MODEL_FROM_DATABASE=MagicMedia 256AV Audio Device on TravelMate 720 ++ ID_MODEL_FROM_DATABASE=NM2200 [MagicMedia 256AV Audio] (MagicMedia 256AV Audio Device on TravelMate 720) + + pci:v000010C8d00008005sv00001028sd00000088* +- ID_MODEL_FROM_DATABASE=Latitude CPi A ++ ID_MODEL_FROM_DATABASE=NM2200 [MagicMedia 256AV Audio] (Latitude CPi A) + + pci:v000010C8d00008005sv00001028sd0000008F* +- ID_MODEL_FROM_DATABASE=MagicMedia 256AV Audio Device on Colorado Inspiron ++ ID_MODEL_FROM_DATABASE=NM2200 [MagicMedia 256AV Audio] (MagicMedia 256AV Audio Device on Colorado Inspiron) + + pci:v000010C8d00008005sv0000103Csd00000007* +- ID_MODEL_FROM_DATABASE=MagicMedia 256AV Audio Device on Voyager II ++ ID_MODEL_FROM_DATABASE=NM2200 [MagicMedia 256AV Audio] (MagicMedia 256AV Audio Device on Voyager II) + + pci:v000010C8d00008005sv0000103Csd00000008* +- ID_MODEL_FROM_DATABASE=MagicMedia 256AV Audio Device on Voyager III ++ ID_MODEL_FROM_DATABASE=NM2200 [MagicMedia 256AV Audio] (MagicMedia 256AV Audio Device on Voyager III) + + pci:v000010C8d00008005sv0000103Csd0000000D* +- ID_MODEL_FROM_DATABASE=MagicMedia 256AV Audio Device on Omnibook 900 ++ ID_MODEL_FROM_DATABASE=NM2200 [MagicMedia 256AV Audio] (MagicMedia 256AV Audio Device on Omnibook 900) + + pci:v000010C8d00008005sv000010C8sd00008005* +- ID_MODEL_FROM_DATABASE=MagicMedia 256AV Audio Device on FireAnt ++ ID_MODEL_FROM_DATABASE=NM2200 [MagicMedia 256AV Audio] (MagicMedia 256AV Audio Device on FireAnt) + + pci:v000010C8d00008005sv0000110Asd00008005* +- ID_MODEL_FROM_DATABASE=MagicMedia 256AV Audio Device ++ ID_MODEL_FROM_DATABASE=NM2200 [MagicMedia 256AV Audio] (MagicMedia 256AV Audio Device) + + pci:v000010C8d00008005sv000014C0sd00000004* +- ID_MODEL_FROM_DATABASE=MagicMedia 256AV Audio Device ++ ID_MODEL_FROM_DATABASE=NM2200 [MagicMedia 256AV Audio] (MagicMedia 256AV Audio Device) + + pci:v000010C8d00008006* + ID_MODEL_FROM_DATABASE=NM2360 [MagicMedia 256ZX Audio] +@@ -20415,10 +20415,10 @@ pci:v000010CDd00001300* + ID_MODEL_FROM_DATABASE=ABP940-U / ABP960-U + + pci:v000010CDd00001300sv000010CDsd00001310* +- ID_MODEL_FROM_DATABASE=ASC1300 SCSI Adapter ++ ID_MODEL_FROM_DATABASE=ABP940-U / ABP960-U (ASC1300 SCSI Adapter) + + pci:v000010CDd00001300sv00001195sd00001320* +- ID_MODEL_FROM_DATABASE=Ultra-SCSI CardBus PC Card REX CB31 ++ ID_MODEL_FROM_DATABASE=ABP940-U / ABP960-U (Ultra-SCSI CardBus PC Card REX CB31) + + pci:v000010CDd00002300* + ID_MODEL_FROM_DATABASE=ABP940-UW +@@ -20511,7 +20511,7 @@ pci:v000010D9d00000531* + ID_MODEL_FROM_DATABASE=MX987x5 + + pci:v000010D9d00000531sv00001186sd00001200* +- ID_MODEL_FROM_DATABASE=DFE-540TX ProFAST 10/100 Adapter ++ ID_MODEL_FROM_DATABASE=MX987x5 (DFE-540TX ProFAST 10/100 Adapter) + + pci:v000010D9d00008625* + ID_MODEL_FROM_DATABASE=MX86250 +@@ -20559,7 +20559,7 @@ pci:v000010DDd00000100* + ID_MODEL_FROM_DATABASE=Lightning 1200 + + pci:v000010DDd00000100sv000010DDsd00000023* +- ID_MODEL_FROM_DATABASE=Lightning 1200 15+16M ++ ID_MODEL_FROM_DATABASE=Lightning 1200 (15+16M) + + pci:v000010DE* + ID_VENDOR_FROM_DATABASE=NVIDIA Corporation +@@ -20574,193 +20574,193 @@ pci:v000010DEd00000020* + ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] + + pci:v000010DEd00000020sv00001043sd00000200* +- ID_MODEL_FROM_DATABASE=V3400 TNT ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (V3400 TNT) + + pci:v000010DEd00000020sv00001048sd00000C18* +- ID_MODEL_FROM_DATABASE=Erazor II SGRAM ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Erazor II SGRAM) + + pci:v000010DEd00000020sv00001048sd00000C19* +- ID_MODEL_FROM_DATABASE=Erazor II ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Erazor II) + + pci:v000010DEd00000020sv00001048sd00000C1B* +- ID_MODEL_FROM_DATABASE=Erazor II ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Erazor II) + + pci:v000010DEd00000020sv00001048sd00000C1C* +- ID_MODEL_FROM_DATABASE=Erazor II ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Erazor II) + + pci:v000010DEd00000020sv00001092sd00000550* +- ID_MODEL_FROM_DATABASE=Viper V550 ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Viper V550) + + pci:v000010DEd00000020sv00001092sd00000552* +- ID_MODEL_FROM_DATABASE=Viper V550 ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Viper V550) + + pci:v000010DEd00000020sv00001092sd00004804* +- ID_MODEL_FROM_DATABASE=Viper V550 ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Viper V550) + + pci:v000010DEd00000020sv00001092sd00004808* +- ID_MODEL_FROM_DATABASE=Viper V550 ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Viper V550) + + pci:v000010DEd00000020sv00001092sd00004810* +- ID_MODEL_FROM_DATABASE=Viper V550 ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Viper V550) + + pci:v000010DEd00000020sv00001092sd00004812* +- ID_MODEL_FROM_DATABASE=Viper V550 ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Viper V550) + + pci:v000010DEd00000020sv00001092sd00004815* +- ID_MODEL_FROM_DATABASE=Viper V550 ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Viper V550) + + pci:v000010DEd00000020sv00001092sd00004820* +- ID_MODEL_FROM_DATABASE=Viper V550 with TV out ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Viper V550 with TV out) + + pci:v000010DEd00000020sv00001092sd00004822* +- ID_MODEL_FROM_DATABASE=Viper V550 ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Viper V550) + + pci:v000010DEd00000020sv00001092sd00004904* +- ID_MODEL_FROM_DATABASE=Viper V550 ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Viper V550) + + pci:v000010DEd00000020sv00001092sd00004914* +- ID_MODEL_FROM_DATABASE=Viper V550 ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Viper V550) + + pci:v000010DEd00000020sv00001092sd00008225* +- ID_MODEL_FROM_DATABASE=Viper V550 ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Viper V550) + + pci:v000010DEd00000020sv000010B4sd0000273D* +- ID_MODEL_FROM_DATABASE=Velocity 4400 ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Velocity 4400) + + pci:v000010DEd00000020sv000010B4sd0000273E* +- ID_MODEL_FROM_DATABASE=Velocity 4400 ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Velocity 4400) + + pci:v000010DEd00000020sv000010B4sd00002740* +- ID_MODEL_FROM_DATABASE=Velocity 4400 ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Velocity 4400) + + pci:v000010DEd00000020sv000010DEsd00000020* +- ID_MODEL_FROM_DATABASE=Riva TNT ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Riva TNT) + + pci:v000010DEd00000020sv00001102sd00001015* +- ID_MODEL_FROM_DATABASE=Graphics Blaster CT6710 ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Graphics Blaster CT6710) + + pci:v000010DEd00000020sv00001102sd00001016* +- ID_MODEL_FROM_DATABASE=Graphics Blaster RIVA TNT ++ ID_MODEL_FROM_DATABASE=NV4 [Riva TNT] (Graphics Blaster RIVA TNT) + + pci:v000010DEd00000028* + ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] + + pci:v000010DEd00000028sv00001043sd00000200* +- ID_MODEL_FROM_DATABASE=AGP-V3800 SGRAM ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (AGP-V3800 SGRAM) + + pci:v000010DEd00000028sv00001043sd00000201* +- ID_MODEL_FROM_DATABASE=AGP-V3800 SDRAM ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (AGP-V3800 SDRAM) + + pci:v000010DEd00000028sv00001043sd00000205* +- ID_MODEL_FROM_DATABASE=PCI-V3800 ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (PCI-V3800) + + pci:v000010DEd00000028sv00001043sd00004000* +- ID_MODEL_FROM_DATABASE=AGP-V3800PRO ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (AGP-V3800PRO) + + pci:v000010DEd00000028sv00001048sd00000C21* +- ID_MODEL_FROM_DATABASE=Synergy II ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Synergy II) + + pci:v000010DEd00000028sv00001048sd00000C28* +- ID_MODEL_FROM_DATABASE=Erazor III ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Erazor III) + + pci:v000010DEd00000028sv00001048sd00000C29* +- ID_MODEL_FROM_DATABASE=Erazor III ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Erazor III) + + pci:v000010DEd00000028sv00001048sd00000C2A* +- ID_MODEL_FROM_DATABASE=Erazor III ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Erazor III) + + pci:v000010DEd00000028sv00001048sd00000C2B* +- ID_MODEL_FROM_DATABASE=Erazor III ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Erazor III) + + pci:v000010DEd00000028sv00001048sd00000C31* +- ID_MODEL_FROM_DATABASE=Erazor III Pro ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Erazor III Pro) + + pci:v000010DEd00000028sv00001048sd00000C32* +- ID_MODEL_FROM_DATABASE=Erazor III Pro ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Erazor III Pro) + + pci:v000010DEd00000028sv00001048sd00000C33* +- ID_MODEL_FROM_DATABASE=Erazor III Pro ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Erazor III Pro) + + pci:v000010DEd00000028sv00001048sd00000C34* +- ID_MODEL_FROM_DATABASE=Erazor III Pro ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Erazor III Pro) + + pci:v000010DEd00000028sv0000107Dsd00002134* +- ID_MODEL_FROM_DATABASE=WinFast 3D S320 II + TV-Out ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (WinFast 3D S320 II + TV-Out) + + pci:v000010DEd00000028sv00001092sd00004804* +- ID_MODEL_FROM_DATABASE=Viper V770 ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Viper V770) + + pci:v000010DEd00000028sv00001092sd00004A00* +- ID_MODEL_FROM_DATABASE=Viper V770 ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Viper V770) + + pci:v000010DEd00000028sv00001092sd00004A02* +- ID_MODEL_FROM_DATABASE=Viper V770 Ultra ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Viper V770 Ultra) + + pci:v000010DEd00000028sv00001092sd00005A00* +- ID_MODEL_FROM_DATABASE=RIVA TNT2/TNT2 Pro ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (RIVA TNT2/TNT2 Pro) + + pci:v000010DEd00000028sv00001092sd00005A40* +- ID_MODEL_FROM_DATABASE=Viper V770D AGP ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Viper V770D AGP) + + pci:v000010DEd00000028sv00001092sd00006A02* +- ID_MODEL_FROM_DATABASE=Viper V770 Ultra ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Viper V770 Ultra) + + pci:v000010DEd00000028sv00001092sd00007A02* +- ID_MODEL_FROM_DATABASE=Viper V770 Ultra ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Viper V770 Ultra) + + pci:v000010DEd00000028sv000010DEsd00000005* +- ID_MODEL_FROM_DATABASE=RIVA TNT2 Pro ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (RIVA TNT2 Pro) + + pci:v000010DEd00000028sv000010DEsd0000000F* +- ID_MODEL_FROM_DATABASE=Compaq NVIDIA TNT2 Pro ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Compaq NVIDIA TNT2 Pro) + + pci:v000010DEd00000028sv00001102sd00001020* +- ID_MODEL_FROM_DATABASE=3D Blaster RIVA TNT2 ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (3D Blaster RIVA TNT2) + + pci:v000010DEd00000028sv00001102sd00001026* +- ID_MODEL_FROM_DATABASE=3D Blaster RIVA TNT2 Digital ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (3D Blaster RIVA TNT2 Digital) + + pci:v000010DEd00000028sv00001462sd00008806* +- ID_MODEL_FROM_DATABASE=MS-8806 AGPhantom Graphics Card ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (MS-8806 AGPhantom Graphics Card) + + pci:v000010DEd00000028sv000014AFsd00005810* +- ID_MODEL_FROM_DATABASE=Maxi Gamer Xentor ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 / TNT2 Pro] (Maxi Gamer Xentor) + + pci:v000010DEd00000029* + ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Ultra] + + pci:v000010DEd00000029sv00001043sd00000200* +- ID_MODEL_FROM_DATABASE=AGP-V3800 Deluxe ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Ultra] (AGP-V3800 Deluxe) + + pci:v000010DEd00000029sv00001043sd00000201* +- ID_MODEL_FROM_DATABASE=AGP-V3800 Ultra SDRAM ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Ultra] (AGP-V3800 Ultra SDRAM) + + pci:v000010DEd00000029sv00001043sd00000205* +- ID_MODEL_FROM_DATABASE=PCI-V3800 Ultra ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Ultra] (PCI-V3800 Ultra) + + pci:v000010DEd00000029sv00001048sd00000C2E* +- ID_MODEL_FROM_DATABASE=Erazor III Ultra ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Ultra] (Erazor III Ultra) + + pci:v000010DEd00000029sv00001048sd00000C2F* +- ID_MODEL_FROM_DATABASE=Erazor III Ultra ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Ultra] (Erazor III Ultra) + + pci:v000010DEd00000029sv00001048sd00000C30* +- ID_MODEL_FROM_DATABASE=Erazor III Ultra ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Ultra] (Erazor III Ultra) + + pci:v000010DEd00000029sv00001102sd00001021* +- ID_MODEL_FROM_DATABASE=3D Blaster RIVA TNT2 Ultra ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Ultra] (3D Blaster RIVA TNT2 Ultra) + + pci:v000010DEd00000029sv00001102sd00001029* +- ID_MODEL_FROM_DATABASE=3D Blaster RIVA TNT2 Ultra ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Ultra] (3D Blaster RIVA TNT2 Ultra) + + pci:v000010DEd00000029sv00001102sd0000102F* +- ID_MODEL_FROM_DATABASE=3D Blaster RIVA TNT2 Ultra ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Ultra] (3D Blaster RIVA TNT2 Ultra) + + pci:v000010DEd00000029sv000014AFsd00005820* +- ID_MODEL_FROM_DATABASE=Maxi Gamer Xentor 32 ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Ultra] (Maxi Gamer Xentor 32) + + pci:v000010DEd00000029sv00004843sd00004F34* +- ID_MODEL_FROM_DATABASE=Dynamite ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Ultra] (Dynamite) + + pci:v000010DEd0000002A* + ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2] +@@ -20772,85 +20772,85 @@ pci:v000010DEd0000002C* + ID_MODEL_FROM_DATABASE=NV5 [Vanta / Vanta LT] + + pci:v000010DEd0000002Csv00001043sd00000200* +- ID_MODEL_FROM_DATABASE=AGP-V3800 Combat SDRAM ++ ID_MODEL_FROM_DATABASE=NV5 [Vanta / Vanta LT] (AGP-V3800 Combat SDRAM) + + pci:v000010DEd0000002Csv00001043sd00000201* +- ID_MODEL_FROM_DATABASE=AGP-V3800 Combat ++ ID_MODEL_FROM_DATABASE=NV5 [Vanta / Vanta LT] (AGP-V3800 Combat) + + pci:v000010DEd0000002Csv00001048sd00000C20* +- ID_MODEL_FROM_DATABASE=TNT2 Vanta ++ ID_MODEL_FROM_DATABASE=NV5 [Vanta / Vanta LT] (TNT2 Vanta) + + pci:v000010DEd0000002Csv00001048sd00000C21* +- ID_MODEL_FROM_DATABASE=TNT2 Vanta ++ ID_MODEL_FROM_DATABASE=NV5 [Vanta / Vanta LT] (TNT2 Vanta) + + pci:v000010DEd0000002Csv00001048sd00000C25* +- ID_MODEL_FROM_DATABASE=TNT2 Vanta 16MB ++ ID_MODEL_FROM_DATABASE=NV5 [Vanta / Vanta LT] (TNT2 Vanta 16MB) + + pci:v000010DEd0000002Csv00001092sd00006820* +- ID_MODEL_FROM_DATABASE=Viper V730 ++ ID_MODEL_FROM_DATABASE=NV5 [Vanta / Vanta LT] (Viper V730) + + pci:v000010DEd0000002Csv00001102sd00001031* +- ID_MODEL_FROM_DATABASE=CT6938 VANTA 8MB ++ ID_MODEL_FROM_DATABASE=NV5 [Vanta / Vanta LT] (CT6938 VANTA 8MB) + + pci:v000010DEd0000002Csv00001102sd00001034* +- ID_MODEL_FROM_DATABASE=CT6894 VANTA 16MB ++ ID_MODEL_FROM_DATABASE=NV5 [Vanta / Vanta LT] (CT6894 VANTA 16MB) + + pci:v000010DEd0000002Csv000014AFsd00005008* +- ID_MODEL_FROM_DATABASE=Maxi Gamer Phoenix 2 ++ ID_MODEL_FROM_DATABASE=NV5 [Vanta / Vanta LT] (Maxi Gamer Phoenix 2) + + pci:v000010DEd0000002D* + ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] + + pci:v000010DEd0000002Dsv00001043sd00000200* +- ID_MODEL_FROM_DATABASE=AGP-V3800M ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (AGP-V3800M) + + pci:v000010DEd0000002Dsv00001043sd00000201* +- ID_MODEL_FROM_DATABASE=AGP-V3800M ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (AGP-V3800M) + + pci:v000010DEd0000002Dsv00001048sd00000C3A* +- ID_MODEL_FROM_DATABASE=Erazor III LT ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (Erazor III LT) + + pci:v000010DEd0000002Dsv00001048sd00000C3B* +- ID_MODEL_FROM_DATABASE=Erazor III LT ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (Erazor III LT) + + pci:v000010DEd0000002Dsv0000107Dsd00002137* +- ID_MODEL_FROM_DATABASE=WinFast 3D S325 ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (WinFast 3D S325) + + pci:v000010DEd0000002Dsv000010DEsd00000006* +- ID_MODEL_FROM_DATABASE=RIVA TNT2 Model 64/Model 64 Pro ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (RIVA TNT2 Model 64/Model 64 Pro) + + pci:v000010DEd0000002Dsv000010DEsd0000001E* +- ID_MODEL_FROM_DATABASE=M64 AGP4x ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (M64 AGP4x) + + pci:v000010DEd0000002Dsv00001102sd00001023* +- ID_MODEL_FROM_DATABASE=CT6892 RIVA TNT2 Value ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (CT6892 RIVA TNT2 Value) + + pci:v000010DEd0000002Dsv00001102sd00001024* +- ID_MODEL_FROM_DATABASE=CT6932 RIVA TNT2 Value 32Mb ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (CT6932 RIVA TNT2 Value 32Mb) + + pci:v000010DEd0000002Dsv00001102sd0000102C* +- ID_MODEL_FROM_DATABASE=CT6931 RIVA TNT2 Value [Jumper] ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (CT6931 RIVA TNT2 Value [Jumper]) + + pci:v000010DEd0000002Dsv00001102sd00001030* +- ID_MODEL_FROM_DATABASE=CT6931 RIVA TNT2 Value ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (CT6931 RIVA TNT2 Value) + + pci:v000010DEd0000002Dsv0000110Asd0000006F* +- ID_MODEL_FROM_DATABASE=GM1000-16 ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (GM1000-16) + + pci:v000010DEd0000002Dsv0000110Asd00000081* +- ID_MODEL_FROM_DATABASE=GM1000-16 ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (GM1000-16) + + pci:v000010DEd0000002Dsv00001462sd00008808* +- ID_MODEL_FROM_DATABASE=MSI-8808 ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (MSI-8808) + + pci:v000010DEd0000002Dsv000014AFsd00005620* +- ID_MODEL_FROM_DATABASE=Gamer Cougar Video Edition ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (Gamer Cougar Video Edition) + + pci:v000010DEd0000002Dsv00001554sd00001041* +- ID_MODEL_FROM_DATABASE=Pixelview RIVA TNT2 M64 ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (Pixelview RIVA TNT2 M64) + + pci:v000010DEd0000002Dsv00001569sd0000002D* +- ID_MODEL_FROM_DATABASE=Palit Microsystems Daytona TNT2 M64 ++ ID_MODEL_FROM_DATABASE=NV5 [Riva TNT2 Model 64 / Model 64 Pro] (Palit Microsystems Daytona TNT2 M64) + + pci:v000010DEd00000034* + ID_MODEL_FROM_DATABASE=MCP04 SMBus +@@ -20889,19 +20889,19 @@ pci:v000010DEd00000041* + ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800] + + pci:v000010DEd00000041sv00001043sd0000817B* +- ID_MODEL_FROM_DATABASE=V9999 Gamer Edition ++ ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800] (V9999 Gamer Edition) + + pci:v000010DEd00000041sv0000107Dsd00002992* +- ID_MODEL_FROM_DATABASE=WinFast A400 ++ ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800] (WinFast A400) + + pci:v000010DEd00000041sv00001458sd0000310F* +- ID_MODEL_FROM_DATABASE=Geforce 6800 GV-N6812 ++ ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800] (Geforce 6800 GV-N6812) + + pci:v000010DEd00000042* + ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800 LE] + + pci:v000010DEd00000042sv0000107Dsd0000299B* +- ID_MODEL_FROM_DATABASE=WinFast A400 LE ++ ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800 LE] (WinFast A400 LE) + + pci:v000010DEd00000043* + ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800 XE] +@@ -20913,16 +20913,16 @@ pci:v000010DEd00000045* + ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800 GT] + + pci:v000010DEd00000045sv00001043sd0000817D* +- ID_MODEL_FROM_DATABASE=V9999GT ++ ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800 GT] (V9999GT) + + pci:v000010DEd00000045sv00001458sd00003140* +- ID_MODEL_FROM_DATABASE=GV-N68T256D ++ ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800 GT] (GV-N68T256D) + + pci:v000010DEd00000047* + ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800 GS] + + pci:v000010DEd00000047sv00001682sd00002109* +- ID_MODEL_FROM_DATABASE=GeForce 6800 GS ++ ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800 GS] (GeForce 6800 GS) + + pci:v000010DEd00000048* + ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800 XT] +@@ -20934,133 +20934,133 @@ pci:v000010DEd00000050* + ID_MODEL_FROM_DATABASE=CK804 ISA Bridge + + pci:v000010DEd00000050sv00001043sd0000815A* +- ID_MODEL_FROM_DATABASE=K8N4/A8N Series Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 ISA Bridge (K8N4/A8N Series Mainboard) + + pci:v000010DEd00000050sv000010F1sd00002865* +- ID_MODEL_FROM_DATABASE=Tomcat K8E (S2865) ++ ID_MODEL_FROM_DATABASE=CK804 ISA Bridge (Tomcat K8E (S2865)) + + pci:v000010DEd00000050sv00001458sd00000C11* +- ID_MODEL_FROM_DATABASE=GA-K8N Ultra-9 Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 ISA Bridge (GA-K8N Ultra-9 Mainboard) + + pci:v000010DEd00000050sv00001462sd00007100* +- ID_MODEL_FROM_DATABASE=MSI K8N Diamond ++ ID_MODEL_FROM_DATABASE=CK804 ISA Bridge (MSI K8N Diamond) + + pci:v000010DEd00000050sv00001462sd00007125* +- ID_MODEL_FROM_DATABASE=K8N Neo4-F mainboard ++ ID_MODEL_FROM_DATABASE=CK804 ISA Bridge (K8N Neo4-F mainboard) + + pci:v000010DEd00000050sv0000147Bsd00001C1A* +- ID_MODEL_FROM_DATABASE=KN8-Ultra Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 ISA Bridge (KN8-Ultra Mainboard) + + pci:v000010DEd00000050sv00001565sd00003402* +- ID_MODEL_FROM_DATABASE=NF4 AM2L Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 ISA Bridge (NF4 AM2L Mainboard) + + pci:v000010DEd00000051* + ID_MODEL_FROM_DATABASE=CK804 ISA Bridge + + pci:v000010DEd00000051sv00001028sd00000225* +- ID_MODEL_FROM_DATABASE=PowerEdge T105 ISA Bridge ++ ID_MODEL_FROM_DATABASE=CK804 ISA Bridge (PowerEdge T105 ISA Bridge) + + pci:v000010DEd00000052* + ID_MODEL_FROM_DATABASE=CK804 SMBus + + pci:v000010DEd00000052sv00001028sd00000225* +- ID_MODEL_FROM_DATABASE=PowerEdge T105 SMBus ++ ID_MODEL_FROM_DATABASE=CK804 SMBus (PowerEdge T105 SMBus) + + pci:v000010DEd00000052sv00001043sd0000815A* +- ID_MODEL_FROM_DATABASE=K8N4/A8N Series Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 SMBus (K8N4/A8N Series Mainboard) + + pci:v000010DEd00000052sv000010F1sd00002865* +- ID_MODEL_FROM_DATABASE=Tomcat K8E (S2865) ++ ID_MODEL_FROM_DATABASE=CK804 SMBus (Tomcat K8E (S2865)) + + pci:v000010DEd00000052sv00001458sd00000C11* +- ID_MODEL_FROM_DATABASE=GA-K8N Ultra-9 Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 SMBus (GA-K8N Ultra-9 Mainboard) + + pci:v000010DEd00000052sv00001462sd00007100* +- ID_MODEL_FROM_DATABASE=MSI K8N Diamond ++ ID_MODEL_FROM_DATABASE=CK804 SMBus (MSI K8N Diamond) + + pci:v000010DEd00000052sv00001462sd00007125* +- ID_MODEL_FROM_DATABASE=K8N Neo4-F mainboard ++ ID_MODEL_FROM_DATABASE=CK804 SMBus (K8N Neo4-F mainboard) + + pci:v000010DEd00000052sv0000147Bsd00001C1A* +- ID_MODEL_FROM_DATABASE=KN8-Ultra Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 SMBus (KN8-Ultra Mainboard) + + pci:v000010DEd00000052sv00001565sd00003402* +- ID_MODEL_FROM_DATABASE=NF4 AM2L Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 SMBus (NF4 AM2L Mainboard) + + pci:v000010DEd00000053* + ID_MODEL_FROM_DATABASE=CK804 IDE + + pci:v000010DEd00000053sv00001043sd0000815A* +- ID_MODEL_FROM_DATABASE=K8N4/A8N Series Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 IDE (K8N4/A8N Series Mainboard) + + pci:v000010DEd00000053sv000010F1sd00002865* +- ID_MODEL_FROM_DATABASE=Tomcat K8E (S2865) ++ ID_MODEL_FROM_DATABASE=CK804 IDE (Tomcat K8E (S2865)) + + pci:v000010DEd00000053sv00001458sd00005002* +- ID_MODEL_FROM_DATABASE=GA-K8N Ultra-9 Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 IDE (GA-K8N Ultra-9 Mainboard) + + pci:v000010DEd00000053sv00001462sd00007100* +- ID_MODEL_FROM_DATABASE=MSI K8N Diamond ++ ID_MODEL_FROM_DATABASE=CK804 IDE (MSI K8N Diamond) + + pci:v000010DEd00000053sv00001462sd00007125* +- ID_MODEL_FROM_DATABASE=K8N Neo4-F mainboard ++ ID_MODEL_FROM_DATABASE=CK804 IDE (K8N Neo4-F mainboard) + + pci:v000010DEd00000053sv0000147Bsd00001C1A* +- ID_MODEL_FROM_DATABASE=KN8-Ultra Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 IDE (KN8-Ultra Mainboard) + + pci:v000010DEd00000053sv00001565sd00003402* +- ID_MODEL_FROM_DATABASE=NF4 AM2L Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 IDE (NF4 AM2L Mainboard) + + pci:v000010DEd00000054* + ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller + + pci:v000010DEd00000054sv00001028sd00000225* +- ID_MODEL_FROM_DATABASE=PowerEdge T105 Serial ATA ++ ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller (PowerEdge T105 Serial ATA) + + pci:v000010DEd00000054sv00001043sd0000815A* +- ID_MODEL_FROM_DATABASE=A8N Series Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller (A8N Series Mainboard) + + pci:v000010DEd00000054sv000010F1sd00002865* +- ID_MODEL_FROM_DATABASE=Tomcat K8E (S2865) ++ ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller (Tomcat K8E (S2865)) + + pci:v000010DEd00000054sv00001458sd0000B003* +- ID_MODEL_FROM_DATABASE=GA-K8N Ultra-9 Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller (GA-K8N Ultra-9 Mainboard) + + pci:v000010DEd00000054sv00001462sd00007100* +- ID_MODEL_FROM_DATABASE=MSI K8N Diamond ++ ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller (MSI K8N Diamond) + + pci:v000010DEd00000054sv00001462sd00007125* +- ID_MODEL_FROM_DATABASE=K8N Neo4-F mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller (K8N Neo4-F mainboard) + + pci:v000010DEd00000054sv0000147Bsd00001C1A* +- ID_MODEL_FROM_DATABASE=KN8-Ultra Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller (KN8-Ultra Mainboard) + + pci:v000010DEd00000054sv00001565sd00005401* +- ID_MODEL_FROM_DATABASE=NF4 AM2L Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller (NF4 AM2L Mainboard) + + pci:v000010DEd00000055* + ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller + + pci:v000010DEd00000055sv00001028sd00000225* +- ID_MODEL_FROM_DATABASE=PowerEdge T105 Serial ATA ++ ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller (PowerEdge T105 Serial ATA) + + pci:v000010DEd00000055sv00001043sd0000815A* +- ID_MODEL_FROM_DATABASE=K8N4/A8N Series Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller (K8N4/A8N Series Mainboard) + + pci:v000010DEd00000055sv000010F1sd00002865* +- ID_MODEL_FROM_DATABASE=Tomcat K8E (S2865) ++ ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller (Tomcat K8E (S2865)) + + pci:v000010DEd00000055sv00001458sd0000B003* +- ID_MODEL_FROM_DATABASE=GA-K8N Ultra-9 Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller (GA-K8N Ultra-9 Mainboard) + + pci:v000010DEd00000055sv00001462sd00007125* +- ID_MODEL_FROM_DATABASE=K8N Neo4-F mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller (K8N Neo4-F mainboard) + + pci:v000010DEd00000055sv0000147Bsd00001C1A* +- ID_MODEL_FROM_DATABASE=KN8-Ultra Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller (KN8-Ultra Mainboard) + + pci:v000010DEd00000055sv00001565sd00005401* +- ID_MODEL_FROM_DATABASE=NF4 AM2L Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Serial ATA Controller (NF4 AM2L Mainboard) + + pci:v000010DEd00000056* + ID_MODEL_FROM_DATABASE=CK804 Ethernet Controller +@@ -21069,28 +21069,28 @@ pci:v000010DEd00000057* + ID_MODEL_FROM_DATABASE=CK804 Ethernet Controller + + pci:v000010DEd00000057sv00001043sd00008141* +- ID_MODEL_FROM_DATABASE=K8N4/A8N Series Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Ethernet Controller (K8N4/A8N Series Mainboard) + + pci:v000010DEd00000057sv000010DEsd0000CB84* +- ID_MODEL_FROM_DATABASE=NF4 Lanparty ++ ID_MODEL_FROM_DATABASE=CK804 Ethernet Controller (NF4 Lanparty) + + pci:v000010DEd00000057sv000010F1sd00002865* +- ID_MODEL_FROM_DATABASE=Tomcat K8E (S2865) ++ ID_MODEL_FROM_DATABASE=CK804 Ethernet Controller (Tomcat K8E (S2865)) + + pci:v000010DEd00000057sv00001458sd0000E000* +- ID_MODEL_FROM_DATABASE=GA-K8N Ultra-9 Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Ethernet Controller (GA-K8N Ultra-9 Mainboard) + + pci:v000010DEd00000057sv00001462sd00007100* +- ID_MODEL_FROM_DATABASE=MSI K8N Diamond ++ ID_MODEL_FROM_DATABASE=CK804 Ethernet Controller (MSI K8N Diamond) + + pci:v000010DEd00000057sv00001462sd00007125* +- ID_MODEL_FROM_DATABASE=K8N Neo4-F mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Ethernet Controller (K8N Neo4-F mainboard) + + pci:v000010DEd00000057sv0000147Bsd00001C1A* +- ID_MODEL_FROM_DATABASE=KN8-Ultra Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Ethernet Controller (KN8-Ultra Mainboard) + + pci:v000010DEd00000057sv00001565sd00002501* +- ID_MODEL_FROM_DATABASE=NF4 AM2L Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Ethernet Controller (NF4 AM2L Mainboard) + + pci:v000010DEd00000058* + ID_MODEL_FROM_DATABASE=CK804 AC'97 Modem +@@ -21099,73 +21099,73 @@ pci:v000010DEd00000059* + ID_MODEL_FROM_DATABASE=CK804 AC'97 Audio Controller + + pci:v000010DEd00000059sv00001043sd0000812A* +- ID_MODEL_FROM_DATABASE=K8N4/A8N Series Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 AC'97 Audio Controller (K8N4/A8N Series Mainboard) + + pci:v000010DEd00000059sv000010F1sd00002865* +- ID_MODEL_FROM_DATABASE=Tomcat K8E (S2865) ++ ID_MODEL_FROM_DATABASE=CK804 AC'97 Audio Controller (Tomcat K8E (S2865)) + + pci:v000010DEd00000059sv00001462sd00007585* +- ID_MODEL_FROM_DATABASE=K8N Neo4-F mainboard ++ ID_MODEL_FROM_DATABASE=CK804 AC'97 Audio Controller (K8N Neo4-F mainboard) + + pci:v000010DEd00000059sv0000147Bsd00001C1A* +- ID_MODEL_FROM_DATABASE=KN8-Ultra Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 AC'97 Audio Controller (KN8-Ultra Mainboard) + + pci:v000010DEd00000059sv00001565sd00008211* +- ID_MODEL_FROM_DATABASE=NF4 AM2L Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 AC'97 Audio Controller (NF4 AM2L Mainboard) + + pci:v000010DEd0000005A* + ID_MODEL_FROM_DATABASE=CK804 USB Controller + + pci:v000010DEd0000005Asv00001028sd00000225* +- ID_MODEL_FROM_DATABASE=PowerEdge T105 onboard USB ++ ID_MODEL_FROM_DATABASE=CK804 USB Controller (PowerEdge T105 onboard USB) + + pci:v000010DEd0000005Asv00001043sd0000815A* +- ID_MODEL_FROM_DATABASE=K8N4/A8N Series Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 USB Controller (K8N4/A8N Series Mainboard) + + pci:v000010DEd0000005Asv000010F1sd00002865* +- ID_MODEL_FROM_DATABASE=Tomcat K8E (S2865) ++ ID_MODEL_FROM_DATABASE=CK804 USB Controller (Tomcat K8E (S2865)) + + pci:v000010DEd0000005Asv00001458sd00005004* +- ID_MODEL_FROM_DATABASE=GA-K8N Ultra-9 Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 USB Controller (GA-K8N Ultra-9 Mainboard) + + pci:v000010DEd0000005Asv00001462sd00007100* +- ID_MODEL_FROM_DATABASE=MSI K8N Diamond ++ ID_MODEL_FROM_DATABASE=CK804 USB Controller (MSI K8N Diamond) + + pci:v000010DEd0000005Asv00001462sd00007125* +- ID_MODEL_FROM_DATABASE=K8N Neo4-F mainboard ++ ID_MODEL_FROM_DATABASE=CK804 USB Controller (K8N Neo4-F mainboard) + + pci:v000010DEd0000005Asv0000147Bsd00001C1A* +- ID_MODEL_FROM_DATABASE=KN8-Ultra Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 USB Controller (KN8-Ultra Mainboard) + + pci:v000010DEd0000005Asv00001565sd00003402* +- ID_MODEL_FROM_DATABASE=NF4 AM2L Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 USB Controller (NF4 AM2L Mainboard) + + pci:v000010DEd0000005B* + ID_MODEL_FROM_DATABASE=CK804 USB Controller + + pci:v000010DEd0000005Bsv00001028sd00000225* +- ID_MODEL_FROM_DATABASE=PowerEdge T105 onboard USB ++ ID_MODEL_FROM_DATABASE=CK804 USB Controller (PowerEdge T105 onboard USB) + + pci:v000010DEd0000005Bsv00001043sd0000815A* +- ID_MODEL_FROM_DATABASE=K8N4/A8N Series Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 USB Controller (K8N4/A8N Series Mainboard) + + pci:v000010DEd0000005Bsv000010F1sd00002865* +- ID_MODEL_FROM_DATABASE=Tomcat K8E (S2865) ++ ID_MODEL_FROM_DATABASE=CK804 USB Controller (Tomcat K8E (S2865)) + + pci:v000010DEd0000005Bsv00001458sd00005004* +- ID_MODEL_FROM_DATABASE=GA-K8N Ultra-9 Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 USB Controller (GA-K8N Ultra-9 Mainboard) + + pci:v000010DEd0000005Bsv00001462sd00007100* +- ID_MODEL_FROM_DATABASE=MSI K8N Diamond ++ ID_MODEL_FROM_DATABASE=CK804 USB Controller (MSI K8N Diamond) + + pci:v000010DEd0000005Bsv00001462sd00007125* +- ID_MODEL_FROM_DATABASE=K8N Neo4-F mainboard ++ ID_MODEL_FROM_DATABASE=CK804 USB Controller (K8N Neo4-F mainboard) + + pci:v000010DEd0000005Bsv0000147Bsd00001C1A* +- ID_MODEL_FROM_DATABASE=KN8-Ultra Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 USB Controller (KN8-Ultra Mainboard) + + pci:v000010DEd0000005Bsv00001565sd00003402* +- ID_MODEL_FROM_DATABASE=NF4 AM2L Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 USB Controller (NF4 AM2L Mainboard) + + pci:v000010DEd0000005C* + ID_MODEL_FROM_DATABASE=CK804 PCI Bridge +@@ -21177,34 +21177,34 @@ pci:v000010DEd0000005E* + ID_MODEL_FROM_DATABASE=CK804 Memory Controller + + pci:v000010DEd0000005Esv00001028sd00000225* +- ID_MODEL_FROM_DATABASE=PowerEdge T105 Memory Controller ++ ID_MODEL_FROM_DATABASE=CK804 Memory Controller (PowerEdge T105 Memory Controller) + + pci:v000010DEd0000005Esv00001043sd0000815A* +- ID_MODEL_FROM_DATABASE=A8N Series Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Memory Controller (A8N Series Mainboard) + + pci:v000010DEd0000005Esv000010DEsd0000005E* +- ID_MODEL_FROM_DATABASE=ECS Elitegroup NFORCE3-A939 motherboard. ++ ID_MODEL_FROM_DATABASE=CK804 Memory Controller (ECS Elitegroup NFORCE3-A939 motherboard.) + + pci:v000010DEd0000005Esv000010F1sd00002865* +- ID_MODEL_FROM_DATABASE=Tomcat K8E (S2865) ++ ID_MODEL_FROM_DATABASE=CK804 Memory Controller (Tomcat K8E (S2865)) + + pci:v000010DEd0000005Esv000010F1sd00002891* +- ID_MODEL_FROM_DATABASE=Thunder K8SRE Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Memory Controller (Thunder K8SRE Mainboard) + + pci:v000010DEd0000005Esv00001458sd00005000* +- ID_MODEL_FROM_DATABASE=GA-K8N Ultra-9 Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Memory Controller (GA-K8N Ultra-9 Mainboard) + + pci:v000010DEd0000005Esv00001462sd00007100* +- ID_MODEL_FROM_DATABASE=K8N Diamond Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Memory Controller (K8N Diamond Mainboard) + + pci:v000010DEd0000005Esv00001462sd00007125* +- ID_MODEL_FROM_DATABASE=K8N Neo4-F Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Memory Controller (K8N Neo4-F Mainboard) + + pci:v000010DEd0000005Esv0000147Bsd00001C1A* +- ID_MODEL_FROM_DATABASE=KN8-Ultra Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Memory Controller (KN8-Ultra Mainboard) + + pci:v000010DEd0000005Esv00001565sd00003402* +- ID_MODEL_FROM_DATABASE=NF4 AM2L Mainboard ++ ID_MODEL_FROM_DATABASE=CK804 Memory Controller (NF4 AM2L Mainboard) + + pci:v000010DEd0000005F* + ID_MODEL_FROM_DATABASE=CK804 Memory Controller +@@ -21213,61 +21213,61 @@ pci:v000010DEd00000060* + ID_MODEL_FROM_DATABASE=nForce2 ISA Bridge + + pci:v000010DEd00000060sv00001043sd000080AD* +- ID_MODEL_FROM_DATABASE=A7N8X Mainboard ++ ID_MODEL_FROM_DATABASE=nForce2 ISA Bridge (A7N8X Mainboard) + + pci:v000010DEd00000060sv0000147Bsd00001C02* +- ID_MODEL_FROM_DATABASE=NF7-S/NF7 (nVidia-nForce2) 2.X ++ ID_MODEL_FROM_DATABASE=nForce2 ISA Bridge (NF7-S/NF7 (nVidia-nForce2) 2.X) + + pci:v000010DEd00000060sv0000A0A0sd000003BA* +- ID_MODEL_FROM_DATABASE=UK79G-1394 motherboard ++ ID_MODEL_FROM_DATABASE=nForce2 ISA Bridge (UK79G-1394 motherboard) + + pci:v000010DEd00000064* + ID_MODEL_FROM_DATABASE=nForce2 SMBus (MCP) + + pci:v000010DEd00000064sv0000147Bsd00001C02* +- ID_MODEL_FROM_DATABASE=NF7-S/NF7 (nVidia-nForce2) 2.X ++ ID_MODEL_FROM_DATABASE=nForce2 SMBus (MCP) (NF7-S/NF7 (nVidia-nForce2) 2.X) + + pci:v000010DEd00000064sv0000A0A0sd000003BB* +- ID_MODEL_FROM_DATABASE=UK79G-1394 motherboard ++ ID_MODEL_FROM_DATABASE=nForce2 SMBus (MCP) (UK79G-1394 motherboard) + + pci:v000010DEd00000065* + ID_MODEL_FROM_DATABASE=nForce2 IDE + + pci:v000010DEd00000065sv000010DEsd00000C11* +- ID_MODEL_FROM_DATABASE=nForce 2 EIDE Controller ++ ID_MODEL_FROM_DATABASE=nForce2 IDE (nForce 2 EIDE Controller) + + pci:v000010DEd00000065sv0000A0A0sd000003B2* +- ID_MODEL_FROM_DATABASE=UK79G-1394 motherboard ++ ID_MODEL_FROM_DATABASE=nForce2 IDE (UK79G-1394 motherboard) + + pci:v000010DEd00000066* + ID_MODEL_FROM_DATABASE=nForce2 Ethernet Controller + + pci:v000010DEd00000066sv00001043sd000080A7* +- ID_MODEL_FROM_DATABASE=A7N8X Mainboard onboard nForce2 Ethernet ++ ID_MODEL_FROM_DATABASE=nForce2 Ethernet Controller (A7N8X Mainboard onboard nForce2 Ethernet) + + pci:v000010DEd00000066sv000010DEsd00000C11* +- ID_MODEL_FROM_DATABASE=nForce MCP-T Networking Adapter ++ ID_MODEL_FROM_DATABASE=nForce2 Ethernet Controller (nForce MCP-T Networking Adapter) + + pci:v000010DEd00000066sv0000A0A0sd000003B3* +- ID_MODEL_FROM_DATABASE=UK79G-1394 motherboard ++ ID_MODEL_FROM_DATABASE=nForce2 Ethernet Controller (UK79G-1394 motherboard) + + pci:v000010DEd00000067* + ID_MODEL_FROM_DATABASE=nForce2 USB Controller + + pci:v000010DEd00000067sv00001043sd00000C11* +- ID_MODEL_FROM_DATABASE=A7N8X Mainboard ++ ID_MODEL_FROM_DATABASE=nForce2 USB Controller (A7N8X Mainboard) + + pci:v000010DEd00000067sv0000A0A0sd000003B4* +- ID_MODEL_FROM_DATABASE=UK79G-1394 motherboard ++ ID_MODEL_FROM_DATABASE=nForce2 USB Controller (UK79G-1394 motherboard) + + pci:v000010DEd00000068* + ID_MODEL_FROM_DATABASE=nForce2 USB Controller + + pci:v000010DEd00000068sv00001043sd00000C11* +- ID_MODEL_FROM_DATABASE=A7N8X Mainboard ++ ID_MODEL_FROM_DATABASE=nForce2 USB Controller (A7N8X Mainboard) + + pci:v000010DEd00000068sv0000A0A0sd000003B4* +- ID_MODEL_FROM_DATABASE=UK79G-1394 motherboard ++ ID_MODEL_FROM_DATABASE=nForce2 USB Controller (UK79G-1394 motherboard) + + pci:v000010DEd0000006A* + ID_MODEL_FROM_DATABASE=nForce2 AC97 Audio Controler (MCP) +@@ -21276,16 +21276,16 @@ pci:v000010DEd0000006Asv00001043sd00008095* + ID_MODEL_FROM_DATABASE=nForce2 AC97 Audio Controler (MCP) + + pci:v000010DEd0000006Asv0000A0A0sd00000304* +- ID_MODEL_FROM_DATABASE=UK79G-1394 motherboard ++ ID_MODEL_FROM_DATABASE=nForce2 AC97 Audio Controler (MCP) (UK79G-1394 motherboard) + + pci:v000010DEd0000006B* + ID_MODEL_FROM_DATABASE=nForce Audio Processing Unit + + pci:v000010DEd0000006Bsv000010DEsd0000006B* +- ID_MODEL_FROM_DATABASE=nForce2 MCP Audio Processing Unit ++ ID_MODEL_FROM_DATABASE=nForce Audio Processing Unit (nForce2 MCP Audio Processing Unit) + + pci:v000010DEd0000006Bsv0000A0A0sd00000304* +- ID_MODEL_FROM_DATABASE=UK79G-1394 motherboard ++ ID_MODEL_FROM_DATABASE=nForce Audio Processing Unit (UK79G-1394 motherboard) + + pci:v000010DEd0000006C* + ID_MODEL_FROM_DATABASE=nForce2 External PCI Bridge +@@ -21297,25 +21297,25 @@ pci:v000010DEd0000006E* + ID_MODEL_FROM_DATABASE=nForce2 FireWire (IEEE 1394) Controller + + pci:v000010DEd0000006Esv0000A0A0sd00000306* +- ID_MODEL_FROM_DATABASE=UK79G-1394 motherboard ++ ID_MODEL_FROM_DATABASE=nForce2 FireWire (IEEE 1394) Controller (UK79G-1394 motherboard) + + pci:v000010DEd00000080* + ID_MODEL_FROM_DATABASE=MCP2A ISA bridge + + pci:v000010DEd00000080sv0000147Bsd00001C09* +- ID_MODEL_FROM_DATABASE=NV7 Motherboard ++ ID_MODEL_FROM_DATABASE=MCP2A ISA bridge (NV7 Motherboard) + + pci:v000010DEd00000084* + ID_MODEL_FROM_DATABASE=MCP2A SMBus + + pci:v000010DEd00000084sv0000147Bsd00001C09* +- ID_MODEL_FROM_DATABASE=NV7 Motherboard ++ ID_MODEL_FROM_DATABASE=MCP2A SMBus (NV7 Motherboard) + + pci:v000010DEd00000085* + ID_MODEL_FROM_DATABASE=MCP2A IDE + + pci:v000010DEd00000085sv0000147Bsd00001C09* +- ID_MODEL_FROM_DATABASE=NV7 Motherboard ++ ID_MODEL_FROM_DATABASE=MCP2A IDE (NV7 Motherboard) + + pci:v000010DEd00000086* + ID_MODEL_FROM_DATABASE=MCP2A Ethernet Controller +@@ -21324,19 +21324,19 @@ pci:v000010DEd00000087* + ID_MODEL_FROM_DATABASE=MCP2A USB Controller + + pci:v000010DEd00000087sv0000147Bsd00001C09* +- ID_MODEL_FROM_DATABASE=NV7 Motherboard ++ ID_MODEL_FROM_DATABASE=MCP2A USB Controller (NV7 Motherboard) + + pci:v000010DEd00000088* + ID_MODEL_FROM_DATABASE=MCP2A USB Controller + + pci:v000010DEd00000088sv0000147Bsd00001C09* +- ID_MODEL_FROM_DATABASE=NV7 Motherboard ++ ID_MODEL_FROM_DATABASE=MCP2A USB Controller (NV7 Motherboard) + + pci:v000010DEd0000008A* + ID_MODEL_FROM_DATABASE=MCP2S AC'97 Audio Controller + + pci:v000010DEd0000008Asv0000147Bsd00001C09* +- ID_MODEL_FROM_DATABASE=NV7 Motherboard ++ ID_MODEL_FROM_DATABASE=MCP2S AC'97 Audio Controller (NV7 Motherboard) + + pci:v000010DEd0000008B* + ID_MODEL_FROM_DATABASE=MCP2A PCI Bridge +@@ -21378,7 +21378,7 @@ pci:v000010DEd000000A0* + ID_MODEL_FROM_DATABASE=NV5 [Aladdin TNT2] + + pci:v000010DEd000000A0sv000014AFsd00005810* +- ID_MODEL_FROM_DATABASE=Maxi Gamer Xentor ++ ID_MODEL_FROM_DATABASE=NV5 [Aladdin TNT2] (Maxi Gamer Xentor) + + pci:v000010DEd000000C0* + ID_MODEL_FROM_DATABASE=NV41 [GeForce 6800 GS] +@@ -21459,46 +21459,46 @@ pci:v000010DEd000000DF* + ID_MODEL_FROM_DATABASE=CK8S Ethernet Controller + + pci:v000010DEd000000DFsv00001043sd000080A7* +- ID_MODEL_FROM_DATABASE=K8N-E ++ ID_MODEL_FROM_DATABASE=CK8S Ethernet Controller (K8N-E) + + pci:v000010DEd000000DFsv0000105Bsd00000C43* +- ID_MODEL_FROM_DATABASE=Winfast NF3250K8AA ++ ID_MODEL_FROM_DATABASE=CK8S Ethernet Controller (Winfast NF3250K8AA) + + pci:v000010DEd000000DFsv0000147Bsd00001C0B* +- ID_MODEL_FROM_DATABASE=NF8 Mainboard ++ ID_MODEL_FROM_DATABASE=CK8S Ethernet Controller (NF8 Mainboard) + + pci:v000010DEd000000E0* + ID_MODEL_FROM_DATABASE=nForce3 250Gb LPC Bridge + + pci:v000010DEd000000E0sv00001043sd0000813F* +- ID_MODEL_FROM_DATABASE=K8N-E ++ ID_MODEL_FROM_DATABASE=nForce3 250Gb LPC Bridge (K8N-E) + + pci:v000010DEd000000E0sv000010DEsd00000C11* +- ID_MODEL_FROM_DATABASE=Winfast NF3250K8AA ++ ID_MODEL_FROM_DATABASE=nForce3 250Gb LPC Bridge (Winfast NF3250K8AA) + + pci:v000010DEd000000E0sv00001462sd00007030* +- ID_MODEL_FROM_DATABASE=K8N Neo-FSR v2.0 ++ ID_MODEL_FROM_DATABASE=nForce3 250Gb LPC Bridge (K8N Neo-FSR v2.0) + + pci:v000010DEd000000E0sv0000147Bsd00001C0B* +- ID_MODEL_FROM_DATABASE=NF8 Mainboard ++ ID_MODEL_FROM_DATABASE=nForce3 250Gb LPC Bridge (NF8 Mainboard) + + pci:v000010DEd000000E0sv00001849sd000000E0* +- ID_MODEL_FROM_DATABASE=Motherboard (one of many) ++ ID_MODEL_FROM_DATABASE=nForce3 250Gb LPC Bridge (Motherboard (one of many)) + + pci:v000010DEd000000E1* + ID_MODEL_FROM_DATABASE=nForce3 250Gb Host Bridge + + pci:v000010DEd000000E1sv00001043sd0000813F* +- ID_MODEL_FROM_DATABASE=K8N-E ++ ID_MODEL_FROM_DATABASE=nForce3 250Gb Host Bridge (K8N-E) + + pci:v000010DEd000000E1sv00001462sd00007030* +- ID_MODEL_FROM_DATABASE=K8N Neo-FSR v2.0 ++ ID_MODEL_FROM_DATABASE=nForce3 250Gb Host Bridge (K8N Neo-FSR v2.0) + + pci:v000010DEd000000E1sv0000147Bsd00001C0B* +- ID_MODEL_FROM_DATABASE=NF8 Mainboard ++ ID_MODEL_FROM_DATABASE=nForce3 250Gb Host Bridge (NF8 Mainboard) + + pci:v000010DEd000000E1sv00001849sd000000E1* +- ID_MODEL_FROM_DATABASE=Motherboard (one of many) ++ ID_MODEL_FROM_DATABASE=nForce3 250Gb Host Bridge (Motherboard (one of many)) + + pci:v000010DEd000000E2* + ID_MODEL_FROM_DATABASE=nForce3 250Gb AGP Host to PCI Bridge +@@ -21507,55 +21507,55 @@ pci:v000010DEd000000E3* + ID_MODEL_FROM_DATABASE=nForce3 Serial ATA Controller + + pci:v000010DEd000000E3sv00001043sd0000813F* +- ID_MODEL_FROM_DATABASE=K8N-E ++ ID_MODEL_FROM_DATABASE=nForce3 Serial ATA Controller (K8N-E) + + pci:v000010DEd000000E3sv0000105Bsd00000C43* +- ID_MODEL_FROM_DATABASE=Winfast NF3250K8AA ++ ID_MODEL_FROM_DATABASE=nForce3 Serial ATA Controller (Winfast NF3250K8AA) + + pci:v000010DEd000000E3sv0000147Bsd00001C0B* +- ID_MODEL_FROM_DATABASE=NF8 Mainboard ++ ID_MODEL_FROM_DATABASE=nForce3 Serial ATA Controller (NF8 Mainboard) + + pci:v000010DEd000000E3sv00001849sd000000E3* +- ID_MODEL_FROM_DATABASE=Motherboard (one of many) ++ ID_MODEL_FROM_DATABASE=nForce3 Serial ATA Controller (Motherboard (one of many)) + + pci:v000010DEd000000E4* + ID_MODEL_FROM_DATABASE=nForce 250Gb PCI System Management + + pci:v000010DEd000000E4sv00001043sd0000813F* +- ID_MODEL_FROM_DATABASE=K8N-E ++ ID_MODEL_FROM_DATABASE=nForce 250Gb PCI System Management (K8N-E) + + pci:v000010DEd000000E4sv0000105Bsd00000C43* +- ID_MODEL_FROM_DATABASE=Winfast NF3250K8AA ++ ID_MODEL_FROM_DATABASE=nForce 250Gb PCI System Management (Winfast NF3250K8AA) + + pci:v000010DEd000000E4sv00001462sd00007030* +- ID_MODEL_FROM_DATABASE=K8N Neo-FSR v2.0 ++ ID_MODEL_FROM_DATABASE=nForce 250Gb PCI System Management (K8N Neo-FSR v2.0) + + pci:v000010DEd000000E4sv0000147Bsd00001C0B* +- ID_MODEL_FROM_DATABASE=NF8 Mainboard ++ ID_MODEL_FROM_DATABASE=nForce 250Gb PCI System Management (NF8 Mainboard) + + pci:v000010DEd000000E4sv00001849sd000000E4* +- ID_MODEL_FROM_DATABASE=Motherboard (one of many) ++ ID_MODEL_FROM_DATABASE=nForce 250Gb PCI System Management (Motherboard (one of many)) + + pci:v000010DEd000000E5* + ID_MODEL_FROM_DATABASE=CK8S Parallel ATA Controller (v2.5) + + pci:v000010DEd000000E5sv00001043sd0000813F* +- ID_MODEL_FROM_DATABASE=K8N-E ++ ID_MODEL_FROM_DATABASE=CK8S Parallel ATA Controller (v2.5) (K8N-E) + + pci:v000010DEd000000E5sv0000105Bsd00000C43* +- ID_MODEL_FROM_DATABASE=Winfast NF3250K8AA ++ ID_MODEL_FROM_DATABASE=CK8S Parallel ATA Controller (v2.5) (Winfast NF3250K8AA) + + pci:v000010DEd000000E5sv00001462sd00007030* +- ID_MODEL_FROM_DATABASE=K8N Neo-FSR v2.0 ++ ID_MODEL_FROM_DATABASE=CK8S Parallel ATA Controller (v2.5) (K8N Neo-FSR v2.0) + + pci:v000010DEd000000E5sv0000147Bsd00001C0B* +- ID_MODEL_FROM_DATABASE=NF8 Mainboard ++ ID_MODEL_FROM_DATABASE=CK8S Parallel ATA Controller (v2.5) (NF8 Mainboard) + + pci:v000010DEd000000E5sv00001849sd000000E5* +- ID_MODEL_FROM_DATABASE=Motherboard (one of many) ++ ID_MODEL_FROM_DATABASE=CK8S Parallel ATA Controller (v2.5) (Motherboard (one of many)) + + pci:v000010DEd000000E5sv0000F849sd000000E5* +- ID_MODEL_FROM_DATABASE=Motherboard (one of many) ++ ID_MODEL_FROM_DATABASE=CK8S Parallel ATA Controller (v2.5) (Motherboard (one of many)) + + pci:v000010DEd000000E6* + ID_MODEL_FROM_DATABASE=CK8S Ethernet Controller +@@ -21564,52 +21564,52 @@ pci:v000010DEd000000E7* + ID_MODEL_FROM_DATABASE=CK8S USB Controller + + pci:v000010DEd000000E7sv00001043sd0000813F* +- ID_MODEL_FROM_DATABASE=K8N-E ++ ID_MODEL_FROM_DATABASE=CK8S USB Controller (K8N-E) + + pci:v000010DEd000000E7sv0000105Bsd00000C43* +- ID_MODEL_FROM_DATABASE=Winfast NF3250K8AA ++ ID_MODEL_FROM_DATABASE=CK8S USB Controller (Winfast NF3250K8AA) + + pci:v000010DEd000000E7sv00001462sd00007030* +- ID_MODEL_FROM_DATABASE=K8N Neo-FSR v2.0 ++ ID_MODEL_FROM_DATABASE=CK8S USB Controller (K8N Neo-FSR v2.0) + + pci:v000010DEd000000E7sv0000147Bsd00001C0B* +- ID_MODEL_FROM_DATABASE=NF8 Mainboard ++ ID_MODEL_FROM_DATABASE=CK8S USB Controller (NF8 Mainboard) + + pci:v000010DEd000000E7sv00001849sd000000E7* +- ID_MODEL_FROM_DATABASE=Motherboard (one of many) ++ ID_MODEL_FROM_DATABASE=CK8S USB Controller (Motherboard (one of many)) + + pci:v000010DEd000000E8* + ID_MODEL_FROM_DATABASE=nForce3 EHCI USB 2.0 Controller + + pci:v000010DEd000000E8sv00001043sd0000813F* +- ID_MODEL_FROM_DATABASE=K8N-E ++ ID_MODEL_FROM_DATABASE=nForce3 EHCI USB 2.0 Controller (K8N-E) + + pci:v000010DEd000000E8sv0000105Bsd00000C43* +- ID_MODEL_FROM_DATABASE=Winfast NF3250K8AA ++ ID_MODEL_FROM_DATABASE=nForce3 EHCI USB 2.0 Controller (Winfast NF3250K8AA) + + pci:v000010DEd000000E8sv00001462sd00007030* +- ID_MODEL_FROM_DATABASE=K8N Neo-FSR v2.0 ++ ID_MODEL_FROM_DATABASE=nForce3 EHCI USB 2.0 Controller (K8N Neo-FSR v2.0) + + pci:v000010DEd000000E8sv0000147Bsd00001C0B* +- ID_MODEL_FROM_DATABASE=NF8 Mainboard ++ ID_MODEL_FROM_DATABASE=nForce3 EHCI USB 2.0 Controller (NF8 Mainboard) + + pci:v000010DEd000000E8sv00001849sd000000E8* +- ID_MODEL_FROM_DATABASE=Motherboard (one of many) ++ ID_MODEL_FROM_DATABASE=nForce3 EHCI USB 2.0 Controller (Motherboard (one of many)) + + pci:v000010DEd000000EA* + ID_MODEL_FROM_DATABASE=nForce3 250Gb AC'97 Audio Controller + + pci:v000010DEd000000EAsv00001043sd0000819D* +- ID_MODEL_FROM_DATABASE=K8N-E ++ ID_MODEL_FROM_DATABASE=nForce3 250Gb AC'97 Audio Controller (K8N-E) + + pci:v000010DEd000000EAsv0000105Bsd00000C43* +- ID_MODEL_FROM_DATABASE=Winfast NF3250K8AA ++ ID_MODEL_FROM_DATABASE=nForce3 250Gb AC'97 Audio Controller (Winfast NF3250K8AA) + + pci:v000010DEd000000EAsv00001462sd0000B010* +- ID_MODEL_FROM_DATABASE=K8N Neo-FSR v2.0 ++ ID_MODEL_FROM_DATABASE=nForce3 250Gb AC'97 Audio Controller (K8N Neo-FSR v2.0) + + pci:v000010DEd000000EAsv0000147Bsd00001C0B* +- ID_MODEL_FROM_DATABASE=NF8 Mainboard ++ ID_MODEL_FROM_DATABASE=nForce3 250Gb AC'97 Audio Controller (NF8 Mainboard) + + pci:v000010DEd000000ED* + ID_MODEL_FROM_DATABASE=nForce3 250Gb PCI-to-PCI Bridge +@@ -21621,28 +21621,28 @@ pci:v000010DEd000000F1* + ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600 GT] + + pci:v000010DEd000000F1sv00001043sd000081A6* +- ID_MODEL_FROM_DATABASE=N6600GT TD 128M AGP ++ ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600 GT] (N6600GT TD 128M AGP) + + pci:v000010DEd000000F1sv00001043sd000081C6* +- ID_MODEL_FROM_DATABASE=N6600GT TD 128M AGP ++ ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600 GT] (N6600GT TD 128M AGP) + + pci:v000010DEd000000F1sv00001458sd00003150* +- ID_MODEL_FROM_DATABASE=GV-N66T128VP ++ ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600 GT] (GV-N66T128VP) + + pci:v000010DEd000000F1sv00001554sd00001191* +- ID_MODEL_FROM_DATABASE=PixelView PV-N43UA (128KD) ++ ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600 GT] (PixelView PV-N43UA (128KD)) + + pci:v000010DEd000000F1sv00001682sd00002119* +- ID_MODEL_FROM_DATABASE=GeForce 6600 GT AGP ++ ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600 GT] (GeForce 6600 GT AGP) + + pci:v000010DEd000000F2* + ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600] + + pci:v000010DEd000000F2sv00001554sd00001194* +- ID_MODEL_FROM_DATABASE=PixelView PV-N43AT (256KD) ++ ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600] (PixelView PV-N43AT (256KD)) + + pci:v000010DEd000000F2sv00001682sd0000211C* +- ID_MODEL_FROM_DATABASE=GeForce 6600 256MB DDR DUAL DVI TV ++ ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600] (GeForce 6600 256MB DDR DUAL DVI TV) + + pci:v000010DEd000000F3* + ID_MODEL_FROM_DATABASE=NV43 [GeForce 6200] +@@ -21657,7 +21657,7 @@ pci:v000010DEd000000F6* + ID_MODEL_FROM_DATABASE=NV43 [GeForce 6800 GS/XT] + + pci:v000010DEd000000F6sv00001682sd0000217E* +- ID_MODEL_FROM_DATABASE=XFX GeForce 6800 XTreme 256MB DDR3 AGP ++ ID_MODEL_FROM_DATABASE=NV43 [GeForce 6800 GS/XT] (XFX GeForce 6800 XTreme 256MB DDR3 AGP) + + pci:v000010DEd000000F8* + ID_MODEL_FROM_DATABASE=NV40GL [Quadro FX 3400/4400] +@@ -21666,10 +21666,10 @@ pci:v000010DEd000000F9* + ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800 GT/GTO/Ultra] + + pci:v000010DEd000000F9sv000010DEsd000000F9* +- ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800 GT] ++ ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800 GT/GTO/Ultra] (NV40 [GeForce 6800 GT]) + + pci:v000010DEd000000F9sv00001682sd00002120* +- ID_MODEL_FROM_DATABASE=GEFORCE 6800 GT PCI-E ++ ID_MODEL_FROM_DATABASE=NV40 [GeForce 6800 GT/GTO/Ultra] (GEFORCE 6800 GT PCI-E) + + pci:v000010DEd000000FA* + ID_MODEL_FROM_DATABASE=NV36 [GeForce PCX 5750] +@@ -21693,130 +21693,130 @@ pci:v000010DEd00000100* + ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 SDR] + + pci:v000010DEd00000100sv00001043sd00000200* +- ID_MODEL_FROM_DATABASE=AGP-V6600 SGRAM ++ ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 SDR] (AGP-V6600 SGRAM) + + pci:v000010DEd00000100sv00001043sd00000201* +- ID_MODEL_FROM_DATABASE=AGP-V6600 SDRAM ++ ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 SDR] (AGP-V6600 SDRAM) + + pci:v000010DEd00000100sv00001043sd00004008* +- ID_MODEL_FROM_DATABASE=AGP-V6600 SGRAM ++ ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 SDR] (AGP-V6600 SGRAM) + + pci:v000010DEd00000100sv00001043sd00004009* +- ID_MODEL_FROM_DATABASE=AGP-V6600 SDRAM ++ ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 SDR] (AGP-V6600 SDRAM) + + pci:v000010DEd00000100sv00001048sd00000C41* +- ID_MODEL_FROM_DATABASE=Erazor X ++ ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 SDR] (Erazor X) + + pci:v000010DEd00000100sv00001048sd00000C43* +- ID_MODEL_FROM_DATABASE=ERAZOR X PCI ++ ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 SDR] (ERAZOR X PCI) + + pci:v000010DEd00000100sv00001048sd00000C48* +- ID_MODEL_FROM_DATABASE=Synergy Force ++ ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 SDR] (Synergy Force) + + pci:v000010DEd00000100sv00001102sd0000102D* +- ID_MODEL_FROM_DATABASE=CT6941 GeForce 256 ++ ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 SDR] (CT6941 GeForce 256) + + pci:v000010DEd00000100sv000014AFsd00005022* +- ID_MODEL_FROM_DATABASE=3D Prophet SE ++ ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 SDR] (3D Prophet SE) + + pci:v000010DEd00000101* + ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 DDR] + + pci:v000010DEd00000101sv00001043sd00000202* +- ID_MODEL_FROM_DATABASE=AGP-V6800 DDR ++ ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 DDR] (AGP-V6800 DDR) + + pci:v000010DEd00000101sv00001043sd0000400A* +- ID_MODEL_FROM_DATABASE=AGP-V6800 DDR SGRAM ++ ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 DDR] (AGP-V6800 DDR SGRAM) + + pci:v000010DEd00000101sv00001043sd0000400B* +- ID_MODEL_FROM_DATABASE=AGP-V6800 DDR SDRAM ++ ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 DDR] (AGP-V6800 DDR SDRAM) + + pci:v000010DEd00000101sv00001048sd00000C42* +- ID_MODEL_FROM_DATABASE=Erazor X ++ ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 DDR] (Erazor X) + + pci:v000010DEd00000101sv0000107Dsd00002822* +- ID_MODEL_FROM_DATABASE=WinFast GeForce 256 ++ ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 DDR] (WinFast GeForce 256) + + pci:v000010DEd00000101sv00001102sd0000102E* +- ID_MODEL_FROM_DATABASE=CT6970/CT6971 ++ ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 DDR] (CT6970/CT6971) + + pci:v000010DEd00000101sv000014AFsd00005021* +- ID_MODEL_FROM_DATABASE=3D Prophet DDR-DVI ++ ID_MODEL_FROM_DATABASE=NV10 [GeForce 256 DDR] (3D Prophet DDR-DVI) + + pci:v000010DEd00000103* + ID_MODEL_FROM_DATABASE=NV10GL [Quadro] + + pci:v000010DEd00000103sv00001048sd00000C40* +- ID_MODEL_FROM_DATABASE=GLoria II-64 ++ ID_MODEL_FROM_DATABASE=NV10GL [Quadro] (GLoria II-64) + + pci:v000010DEd00000103sv00001048sd00000C44* +- ID_MODEL_FROM_DATABASE=GLoria II ++ ID_MODEL_FROM_DATABASE=NV10GL [Quadro] (GLoria II) + + pci:v000010DEd00000103sv00001048sd00000C45* +- ID_MODEL_FROM_DATABASE=GLoria II ++ ID_MODEL_FROM_DATABASE=NV10GL [Quadro] (GLoria II) + + pci:v000010DEd00000103sv00001048sd00000C4A* +- ID_MODEL_FROM_DATABASE=GLoria II-64 Pro ++ ID_MODEL_FROM_DATABASE=NV10GL [Quadro] (GLoria II-64 Pro) + + pci:v000010DEd00000103sv00001048sd00000C4B* +- ID_MODEL_FROM_DATABASE=GLoria II-64 Pro DVII ++ ID_MODEL_FROM_DATABASE=NV10GL [Quadro] (GLoria II-64 Pro DVII) + + pci:v000010DEd00000110* + ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] + + pci:v000010DEd00000110sv00001043sd00004015* +- ID_MODEL_FROM_DATABASE=AGP-V7100 Pro ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (AGP-V7100 Pro) + + pci:v000010DEd00000110sv00001043sd00004021* +- ID_MODEL_FROM_DATABASE=V7100 Deluxe Combo ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (V7100 Deluxe Combo) + + pci:v000010DEd00000110sv00001043sd00004031* +- ID_MODEL_FROM_DATABASE=V7100 Pro with TV output ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (V7100 Pro with TV output) + + pci:v000010DEd00000110sv00001048sd00000C60* +- ID_MODEL_FROM_DATABASE=Gladiac MX ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (Gladiac MX) + + pci:v000010DEd00000110sv00001048sd00000C61* +- ID_MODEL_FROM_DATABASE=Gladiac 511PCI ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (Gladiac 511PCI) + + pci:v000010DEd00000110sv00001048sd00000C63* +- ID_MODEL_FROM_DATABASE=Gladiac 511TV-OUT 32MB ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (Gladiac 511TV-OUT 32MB) + + pci:v000010DEd00000110sv00001048sd00000C64* +- ID_MODEL_FROM_DATABASE=Gladiac 511TV-OUT 64MB ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (Gladiac 511TV-OUT 64MB) + + pci:v000010DEd00000110sv00001048sd00000C65* +- ID_MODEL_FROM_DATABASE=Gladiac 511TWIN ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (Gladiac 511TWIN) + + pci:v000010DEd00000110sv00001048sd00000C66* +- ID_MODEL_FROM_DATABASE=Gladiac 311 ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (Gladiac 311) + + pci:v000010DEd00000110sv000010B0sd00000001* +- ID_MODEL_FROM_DATABASE=GeForce2 MX Jumbo TV ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (GeForce2 MX Jumbo TV) + + pci:v000010DEd00000110sv000010DEsd00000091* +- ID_MODEL_FROM_DATABASE=Dell OEM GeForce 2 MX 400 ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (Dell OEM GeForce 2 MX 400) + + pci:v000010DEd00000110sv000010DEsd000000A1* +- ID_MODEL_FROM_DATABASE=Apple OEM GeForce2 MX ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (Apple OEM GeForce2 MX) + + pci:v000010DEd00000110sv00001462sd00008523* +- ID_MODEL_FROM_DATABASE=MS-8852 ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (MS-8852) + + pci:v000010DEd00000110sv00001462sd00008817* +- ID_MODEL_FROM_DATABASE=MSI GeForce2 MX400 Pro32S [MS-8817] ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (MSI GeForce2 MX400 Pro32S [MS-8817]) + + pci:v000010DEd00000110sv000014AFsd00007102* +- ID_MODEL_FROM_DATABASE=3D Prophet II MX ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (3D Prophet II MX) + + pci:v000010DEd00000110sv000014AFsd00007103* +- ID_MODEL_FROM_DATABASE=3D Prophet II MX Dual-Display ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (3D Prophet II MX Dual-Display) + + pci:v000010DEd00000110sv00001545sd00000023* +- ID_MODEL_FROM_DATABASE=Xtasy Rev. B2 ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (Xtasy Rev. B2) + + pci:v000010DEd00000110sv00001554sd00001081* +- ID_MODEL_FROM_DATABASE=MVGA-NVG11AM(400) ++ ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX/MX 400] (MVGA-NVG11AM(400)) + + pci:v000010DEd00000111* + ID_MODEL_FROM_DATABASE=NV11 [GeForce2 MX200] +@@ -21831,28 +21831,28 @@ pci:v000010DEd00000140* + ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600 GT] + + pci:v000010DEd00000140sv00001458sd00003125* +- ID_MODEL_FROM_DATABASE=GV-NX66T128D ++ ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600 GT] (GV-NX66T128D) + + pci:v000010DEd00000140sv00001458sd00003126* +- ID_MODEL_FROM_DATABASE=GV-NX66T256DE ++ ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600 GT] (GV-NX66T256DE) + + pci:v000010DEd00000140sv00001462sd00008939* +- ID_MODEL_FROM_DATABASE=MS-8983 ++ ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600 GT] (MS-8983) + + pci:v000010DEd00000141* + ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600] + + pci:v000010DEd00000141sv00001043sd000081B0* +- ID_MODEL_FROM_DATABASE=EN6600 Silencer ++ ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600] (EN6600 Silencer) + + pci:v000010DEd00000141sv0000107Dsd0000593A* +- ID_MODEL_FROM_DATABASE=LR2A22 128MB TV OUT ++ ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600] (LR2A22 128MB TV OUT) + + pci:v000010DEd00000141sv0000107Dsd0000597B* +- ID_MODEL_FROM_DATABASE=WINFAST PX6600 ++ ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600] (WINFAST PX6600) + + pci:v000010DEd00000141sv00001458sd00003124* +- ID_MODEL_FROM_DATABASE=GV-NX66128DP Turbo Force Edition ++ ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600] (GV-NX66128DP Turbo Force Edition) + + pci:v000010DEd00000142* + ID_MODEL_FROM_DATABASE=NV43 [GeForce 6600 LE] +@@ -21897,49 +21897,49 @@ pci:v000010DEd00000150* + ID_MODEL_FROM_DATABASE=NV15 [GeForce2 GTS/Pro] + + pci:v000010DEd00000150sv00001043sd00004016* +- ID_MODEL_FROM_DATABASE=V7700 AGP Video Card ++ ID_MODEL_FROM_DATABASE=NV15 [GeForce2 GTS/Pro] (V7700 AGP Video Card) + + pci:v000010DEd00000150sv00001043sd0000402A* +- ID_MODEL_FROM_DATABASE=AGP-V7700 ++ ID_MODEL_FROM_DATABASE=NV15 [GeForce2 GTS/Pro] (AGP-V7700) + + pci:v000010DEd00000150sv00001048sd00000C50* +- ID_MODEL_FROM_DATABASE=Gladiac ++ ID_MODEL_FROM_DATABASE=NV15 [GeForce2 GTS/Pro] (Gladiac) + + pci:v000010DEd00000150sv00001048sd00000C52* +- ID_MODEL_FROM_DATABASE=Gladiac-64 ++ ID_MODEL_FROM_DATABASE=NV15 [GeForce2 GTS/Pro] (Gladiac-64) + + pci:v000010DEd00000150sv0000107Dsd00002840* +- ID_MODEL_FROM_DATABASE=WinFast GeForce2 GTS with TV output ++ ID_MODEL_FROM_DATABASE=NV15 [GeForce2 GTS/Pro] (WinFast GeForce2 GTS with TV output) + + pci:v000010DEd00000150sv0000107Dsd00002842* +- ID_MODEL_FROM_DATABASE=WinFast GeForce 2 Pro ++ ID_MODEL_FROM_DATABASE=NV15 [GeForce2 GTS/Pro] (WinFast GeForce 2 Pro) + + pci:v000010DEd00000150sv000010DEsd0000002E* +- ID_MODEL_FROM_DATABASE=GeForce2 GTS ++ ID_MODEL_FROM_DATABASE=NV15 [GeForce2 GTS/Pro] (GeForce2 GTS) + + pci:v000010DEd00000150sv00001462sd0000815A* +- ID_MODEL_FROM_DATABASE=MS-8815 ++ ID_MODEL_FROM_DATABASE=NV15 [GeForce2 GTS/Pro] (MS-8815) + + pci:v000010DEd00000150sv00001462sd00008831* +- ID_MODEL_FROM_DATABASE=Creative GeForce2 Pro ++ ID_MODEL_FROM_DATABASE=NV15 [GeForce2 GTS/Pro] (Creative GeForce2 Pro) + + pci:v000010DEd00000151* + ID_MODEL_FROM_DATABASE=NV15 [GeForce2 Ti] + + pci:v000010DEd00000151sv00001043sd0000405F* +- ID_MODEL_FROM_DATABASE=V7700Ti ++ ID_MODEL_FROM_DATABASE=NV15 [GeForce2 Ti] (V7700Ti) + + pci:v000010DEd00000151sv00001462sd00005506* +- ID_MODEL_FROM_DATABASE=Creative 3D Blaster GeForce2 Titanium ++ ID_MODEL_FROM_DATABASE=NV15 [GeForce2 Ti] (Creative 3D Blaster GeForce2 Titanium) + + pci:v000010DEd00000151sv00001462sd00008364* +- ID_MODEL_FROM_DATABASE=MS-8836 ++ ID_MODEL_FROM_DATABASE=NV15 [GeForce2 Ti] (MS-8836) + + pci:v000010DEd00000152* + ID_MODEL_FROM_DATABASE=NV15 [GeForce2 Ultra] + + pci:v000010DEd00000152sv00001048sd00000C56* +- ID_MODEL_FROM_DATABASE=GLADIAC Ultra ++ ID_MODEL_FROM_DATABASE=NV15 [GeForce2 Ultra] (GLADIAC Ultra) + + pci:v000010DEd00000153* + ID_MODEL_FROM_DATABASE=NV15GL [Quadro2 Pro] +@@ -21990,40 +21990,40 @@ pci:v000010DEd00000170* + ID_MODEL_FROM_DATABASE=NV17 [GeForce4 MX 460] + + pci:v000010DEd00000170sv00001462sd00008630* +- ID_MODEL_FROM_DATABASE=MS-8863 ++ ID_MODEL_FROM_DATABASE=NV17 [GeForce4 MX 460] (MS-8863) + + pci:v000010DEd00000171* + ID_MODEL_FROM_DATABASE=NV17 [GeForce4 MX 440] + + pci:v000010DEd00000171sv000010B0sd00000002* +- ID_MODEL_FROM_DATABASE=Gainward Pro/600 TV ++ ID_MODEL_FROM_DATABASE=NV17 [GeForce4 MX 440] (Gainward Pro/600 TV) + + pci:v000010DEd00000171sv000010DEsd00000008* +- ID_MODEL_FROM_DATABASE=Apple OEM GeForce4 MX 440 ++ ID_MODEL_FROM_DATABASE=NV17 [GeForce4 MX 440] (Apple OEM GeForce4 MX 440) + + pci:v000010DEd00000171sv00001462sd00008661* +- ID_MODEL_FROM_DATABASE=G4MX440-VTP ++ ID_MODEL_FROM_DATABASE=NV17 [GeForce4 MX 440] (G4MX440-VTP) + + pci:v000010DEd00000171sv00001462sd00008730* +- ID_MODEL_FROM_DATABASE=MX440SES-T (MS-8873) ++ ID_MODEL_FROM_DATABASE=NV17 [GeForce4 MX 440] (MX440SES-T (MS-8873)) + + pci:v000010DEd00000171sv00001462sd00008743* +- ID_MODEL_FROM_DATABASE=MS-8874 ++ ID_MODEL_FROM_DATABASE=NV17 [GeForce4 MX 440] (MS-8874) + + pci:v000010DEd00000171sv00001462sd00008852* +- ID_MODEL_FROM_DATABASE=GeForce4 MX440 PCI ++ ID_MODEL_FROM_DATABASE=NV17 [GeForce4 MX 440] (GeForce4 MX440 PCI) + + pci:v000010DEd00000171sv0000147Bsd00008F00* +- ID_MODEL_FROM_DATABASE=Abit Siluro GeForce4MX440 ++ ID_MODEL_FROM_DATABASE=NV17 [GeForce4 MX 440] (Abit Siluro GeForce4MX440) + + pci:v000010DEd00000172* + ID_MODEL_FROM_DATABASE=NV17 [GeForce4 MX 420] + + pci:v000010DEd00000172sv00001462sd00008730* +- ID_MODEL_FROM_DATABASE=MS-8873 ++ ID_MODEL_FROM_DATABASE=NV17 [GeForce4 MX 420] (MS-8873) + + pci:v000010DEd00000172sv00001462sd00008784* +- ID_MODEL_FROM_DATABASE=MS-8878 ++ ID_MODEL_FROM_DATABASE=NV17 [GeForce4 MX 420] (MS-8878) + + pci:v000010DEd00000173* + ID_MODEL_FROM_DATABASE=NV17 [GeForce4 MX 440-SE] +@@ -22038,13 +22038,13 @@ pci:v000010DEd00000176* + ID_MODEL_FROM_DATABASE=NV17M [GeForce4 420 Go 32M] + + pci:v000010DEd00000176sv0000103Csd000008B0* +- ID_MODEL_FROM_DATABASE=tc1100 tablet ++ ID_MODEL_FROM_DATABASE=NV17M [GeForce4 420 Go 32M] (tc1100 tablet) + + pci:v000010DEd00000176sv0000144Dsd0000C005* +- ID_MODEL_FROM_DATABASE=X10 Laptop ++ ID_MODEL_FROM_DATABASE=NV17M [GeForce4 420 Go 32M] (X10 Laptop) + + pci:v000010DEd00000176sv00004C53sd00001090* +- ID_MODEL_FROM_DATABASE=Cx9 / Vx9 mainboard ++ ID_MODEL_FROM_DATABASE=NV17M [GeForce4 420 Go 32M] (Cx9 / Vx9 mainboard) + + pci:v000010DEd00000177* + ID_MODEL_FROM_DATABASE=NV17M [GeForce4 460 Go] +@@ -22056,7 +22056,7 @@ pci:v000010DEd00000179* + ID_MODEL_FROM_DATABASE=NV17M [GeForce4 440 Go 64M] + + pci:v000010DEd00000179sv000010DEsd00000179* +- ID_MODEL_FROM_DATABASE=GeForce4 MX (Mac) ++ ID_MODEL_FROM_DATABASE=NV17M [GeForce4 440 Go 64M] (GeForce4 MX (Mac)) + + pci:v000010DEd0000017A* + ID_MODEL_FROM_DATABASE=NV17GL [Quadro NVS] +@@ -22074,25 +22074,25 @@ pci:v000010DEd00000181* + ID_MODEL_FROM_DATABASE=NV18 [GeForce4 MX 440 AGP 8x] + + pci:v000010DEd00000181sv00001043sd00008063* +- ID_MODEL_FROM_DATABASE=GeForce4 MX 440 AGP 8X ++ ID_MODEL_FROM_DATABASE=NV18 [GeForce4 MX 440 AGP 8x] (GeForce4 MX 440 AGP 8X) + + pci:v000010DEd00000181sv00001043sd0000806F* +- ID_MODEL_FROM_DATABASE=V9180 Magic ++ ID_MODEL_FROM_DATABASE=NV18 [GeForce4 MX 440 AGP 8x] (V9180 Magic) + + pci:v000010DEd00000181sv00001462sd00008880* +- ID_MODEL_FROM_DATABASE=MS-StarForce GeForce4 MX 440 with AGP8X ++ ID_MODEL_FROM_DATABASE=NV18 [GeForce4 MX 440 AGP 8x] (MS-StarForce GeForce4 MX 440 with AGP8X) + + pci:v000010DEd00000181sv00001462sd00008900* +- ID_MODEL_FROM_DATABASE=MS-8890 GeForce 4 MX440 AGP8X ++ ID_MODEL_FROM_DATABASE=NV18 [GeForce4 MX 440 AGP 8x] (MS-8890 GeForce 4 MX440 AGP8X) + + pci:v000010DEd00000181sv00001462sd00009350* +- ID_MODEL_FROM_DATABASE=MSI GeForce4 MX T8X with AGP8X ++ ID_MODEL_FROM_DATABASE=NV18 [GeForce4 MX 440 AGP 8x] (MSI GeForce4 MX T8X with AGP8X) + + pci:v000010DEd00000181sv0000147Bsd00008F0D* +- ID_MODEL_FROM_DATABASE=Siluro GF4 MX-8X ++ ID_MODEL_FROM_DATABASE=NV18 [GeForce4 MX 440 AGP 8x] (Siluro GF4 MX-8X) + + pci:v000010DEd00000181sv00001554sd00001111* +- ID_MODEL_FROM_DATABASE=PixelView MVGA-NVG18A ++ ID_MODEL_FROM_DATABASE=NV18 [GeForce4 MX 440 AGP 8x] (PixelView MVGA-NVG18A) + + pci:v000010DEd00000182* + ID_MODEL_FROM_DATABASE=NV18 [GeForce4 MX 440SE AGP 8x] +@@ -22146,7 +22146,7 @@ pci:v000010DEd00000193* + ID_MODEL_FROM_DATABASE=G80 [GeForce 8800 GTS] + + pci:v000010DEd00000193sv0000107Dsd000020BD* +- ID_MODEL_FROM_DATABASE=WinFast PX 8800 GTS TDH ++ ID_MODEL_FROM_DATABASE=G80 [GeForce 8800 GTS] (WinFast PX 8800 GTS TDH) + + pci:v000010DEd00000194* + ID_MODEL_FROM_DATABASE=G80 [GeForce 8800 Ultra] +@@ -22212,13 +22212,13 @@ pci:v000010DEd000001D1* + ID_MODEL_FROM_DATABASE=G72 [GeForce 7300 LE] + + pci:v000010DEd000001D1sv0000107Dsd00005EFA* +- ID_MODEL_FROM_DATABASE=WinFast PX7300LE-TD128 ++ ID_MODEL_FROM_DATABASE=G72 [GeForce 7300 LE] (WinFast PX7300LE-TD128) + + pci:v000010DEd000001D1sv0000107Dsd00005EFB* +- ID_MODEL_FROM_DATABASE=WinFast PX7300LE-TD256 ++ ID_MODEL_FROM_DATABASE=G72 [GeForce 7300 LE] (WinFast PX7300LE-TD256) + + pci:v000010DEd000001D1sv00001462sd00000345* +- ID_MODEL_FROM_DATABASE=7300LE PCI Express Graphics Adapter ++ ID_MODEL_FROM_DATABASE=G72 [GeForce 7300 LE] (7300LE PCI Express Graphics Adapter) + + pci:v000010DEd000001D2* + ID_MODEL_FROM_DATABASE=G72 [GeForce 7550 LE] +@@ -22239,7 +22239,7 @@ pci:v000010DEd000001D8* + ID_MODEL_FROM_DATABASE=G72M [GeForce Go 7400] + + pci:v000010DEd000001D8sv00001028sd000001D7* +- ID_MODEL_FROM_DATABASE=XPS M1210 ++ ID_MODEL_FROM_DATABASE=G72M [GeForce Go 7400] (XPS M1210) + + pci:v000010DEd000001D9* + ID_MODEL_FROM_DATABASE=G72M [GeForce Go 7450] +@@ -22260,7 +22260,7 @@ pci:v000010DEd000001DE* + ID_MODEL_FROM_DATABASE=G72GL [Quadro FX 350] + + pci:v000010DEd000001DEsv000010DEsd000001DC* +- ID_MODEL_FROM_DATABASE=Quadro FX Go350M ++ ID_MODEL_FROM_DATABASE=G72GL [Quadro FX 350] (Quadro FX Go350M) + + pci:v000010DEd000001DF* + ID_MODEL_FROM_DATABASE=G72 [GeForce 7300 GS] +@@ -22269,7 +22269,7 @@ pci:v000010DEd000001E0* + ID_MODEL_FROM_DATABASE=nForce2 IGP2 + + pci:v000010DEd000001E0sv0000147Bsd00001C09* +- ID_MODEL_FROM_DATABASE=NV7 Motherboard ++ ID_MODEL_FROM_DATABASE=nForce2 IGP2 (NV7 Motherboard) + + pci:v000010DEd000001E8* + ID_MODEL_FROM_DATABASE=nForce2 AGP +@@ -22278,55 +22278,55 @@ pci:v000010DEd000001EA* + ID_MODEL_FROM_DATABASE=nForce2 Memory Controller 0 + + pci:v000010DEd000001EAsv0000A0A0sd000003B9* +- ID_MODEL_FROM_DATABASE=UK79G-1394 motherboard ++ ID_MODEL_FROM_DATABASE=nForce2 Memory Controller 0 (UK79G-1394 motherboard) + + pci:v000010DEd000001EB* + ID_MODEL_FROM_DATABASE=nForce2 Memory Controller 1 + + pci:v000010DEd000001EBsv0000A0A0sd000003B9* +- ID_MODEL_FROM_DATABASE=UK79G-1394 motherboard ++ ID_MODEL_FROM_DATABASE=nForce2 Memory Controller 1 (UK79G-1394 motherboard) + + pci:v000010DEd000001EC* + ID_MODEL_FROM_DATABASE=nForce2 Memory Controller 2 + + pci:v000010DEd000001ECsv0000A0A0sd000003B9* +- ID_MODEL_FROM_DATABASE=UK79G-1394 motherboard ++ ID_MODEL_FROM_DATABASE=nForce2 Memory Controller 2 (UK79G-1394 motherboard) + + pci:v000010DEd000001ED* + ID_MODEL_FROM_DATABASE=nForce2 Memory Controller 3 + + pci:v000010DEd000001EDsv0000A0A0sd000003B9* +- ID_MODEL_FROM_DATABASE=UK79G-1394 motherboard ++ ID_MODEL_FROM_DATABASE=nForce2 Memory Controller 3 (UK79G-1394 motherboard) + + pci:v000010DEd000001EE* + ID_MODEL_FROM_DATABASE=nForce2 Memory Controller 4 + + pci:v000010DEd000001EEsv000010DEsd000001EE* +- ID_MODEL_FROM_DATABASE=MSI Delta-L nForce2 memory controller ++ ID_MODEL_FROM_DATABASE=nForce2 Memory Controller 4 (MSI Delta-L nForce2 memory controller) + + pci:v000010DEd000001EEsv0000A0A0sd000003B9* +- ID_MODEL_FROM_DATABASE=UK79G-1394 motherboard ++ ID_MODEL_FROM_DATABASE=nForce2 Memory Controller 4 (UK79G-1394 motherboard) + + pci:v000010DEd000001EF* + ID_MODEL_FROM_DATABASE=nForce2 Memory Controller 5 + + pci:v000010DEd000001EFsv0000A0A0sd000003B9* +- ID_MODEL_FROM_DATABASE=UK79G-1394 motherboard ++ ID_MODEL_FROM_DATABASE=nForce2 Memory Controller 5 (UK79G-1394 motherboard) + + pci:v000010DEd000001F0* + ID_MODEL_FROM_DATABASE=C17 [GeForce4 MX IGP] + + pci:v000010DEd000001F0sv0000A0A0sd000003B5* +- ID_MODEL_FROM_DATABASE=UK79G-1394 motherboard ++ ID_MODEL_FROM_DATABASE=C17 [GeForce4 MX IGP] (UK79G-1394 motherboard) + + pci:v000010DEd00000200* + ID_MODEL_FROM_DATABASE=NV20 [GeForce3] + + pci:v000010DEd00000200sv00001043sd0000402F* +- ID_MODEL_FROM_DATABASE=AGP-V8200 DDR ++ ID_MODEL_FROM_DATABASE=NV20 [GeForce3] (AGP-V8200 DDR) + + pci:v000010DEd00000200sv00001048sd00000C70* +- ID_MODEL_FROM_DATABASE=GLADIAC 920 ++ ID_MODEL_FROM_DATABASE=NV20 [GeForce3] (GLADIAC 920) + + pci:v000010DEd00000201* + ID_MODEL_FROM_DATABASE=NV20 [GeForce3 Ti 200] +@@ -22335,10 +22335,10 @@ pci:v000010DEd00000202* + ID_MODEL_FROM_DATABASE=NV20 [GeForce3 Ti 500] + + pci:v000010DEd00000202sv00001043sd0000405B* +- ID_MODEL_FROM_DATABASE=V8200 T5 ++ ID_MODEL_FROM_DATABASE=NV20 [GeForce3 Ti 500] (V8200 T5) + + pci:v000010DEd00000202sv00001545sd0000002F* +- ID_MODEL_FROM_DATABASE=Xtasy 6964 ++ ID_MODEL_FROM_DATABASE=NV20 [GeForce3 Ti 500] (Xtasy 6964) + + pci:v000010DEd00000203* + ID_MODEL_FROM_DATABASE=NV20GL [Quadro DCC] +@@ -22359,10 +22359,10 @@ pci:v000010DEd00000221* + ID_MODEL_FROM_DATABASE=NV44A [GeForce 6200] + + pci:v000010DEd00000221sv00001043sd000081E1* +- ID_MODEL_FROM_DATABASE=N6200/TD/256M/A ++ ID_MODEL_FROM_DATABASE=NV44A [GeForce 6200] (N6200/TD/256M/A) + + pci:v000010DEd00000221sv00003842sd0000A341* +- ID_MODEL_FROM_DATABASE=256A8N341DX ++ ID_MODEL_FROM_DATABASE=NV44A [GeForce 6200] (256A8N341DX) + + pci:v000010DEd00000222* + ID_MODEL_FROM_DATABASE=NV44 [GeForce 6200 A-LE] +@@ -22374,10 +22374,10 @@ pci:v000010DEd00000240* + ID_MODEL_FROM_DATABASE=C51PV [GeForce 6150] + + pci:v000010DEd00000240sv00001043sd000081CD* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM ++ ID_MODEL_FROM_DATABASE=C51PV [GeForce 6150] (A8N-VM CSM) + + pci:v000010DEd00000240sv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=C51PV [GeForce 6150] (K8NGM2 series) + + pci:v000010DEd00000241* + ID_MODEL_FROM_DATABASE=C51 [GeForce 6150 LE] +@@ -22386,7 +22386,7 @@ pci:v000010DEd00000242* + ID_MODEL_FROM_DATABASE=C51G [GeForce 6100] + + pci:v000010DEd00000242sv0000105Bsd00000CAD* +- ID_MODEL_FROM_DATABASE=Winfast 6100K8MB ++ ID_MODEL_FROM_DATABASE=C51G [GeForce 6100] (Winfast 6100K8MB) + + pci:v000010DEd00000243* + ID_MODEL_FROM_DATABASE=C51 PCI Express Bridge +@@ -22395,13 +22395,13 @@ pci:v000010DEd00000244* + ID_MODEL_FROM_DATABASE=C51 [GeForce Go 6150] + + pci:v000010DEd00000244sv0000103Csd000030B5* +- ID_MODEL_FROM_DATABASE=Presario V3242AU ++ ID_MODEL_FROM_DATABASE=C51 [GeForce Go 6150] (Presario V3242AU) + + pci:v000010DEd00000244sv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=C51 [GeForce Go 6150] (Presario V6133CL) + + pci:v000010DEd00000244sv000010DEsd00000244* +- ID_MODEL_FROM_DATABASE=GeForce Go 6150 ++ ID_MODEL_FROM_DATABASE=C51 [GeForce Go 6150] (GeForce Go 6150) + + pci:v000010DEd00000245* + ID_MODEL_FROM_DATABASE=C51 [Quadro NVS 210S/GeForce 6150LE] +@@ -22413,7 +22413,7 @@ pci:v000010DEd00000247* + ID_MODEL_FROM_DATABASE=C51 [GeForce Go 6100] + + pci:v000010DEd00000247sv00001043sd00001382* +- ID_MODEL_FROM_DATABASE=MCP51 PCI-X GeForce Go 6100 ++ ID_MODEL_FROM_DATABASE=C51 [GeForce Go 6100] (MCP51 PCI-X GeForce Go 6100) + + pci:v000010DEd00000248* + ID_MODEL_FROM_DATABASE=C51 PCI Express Bridge +@@ -22446,13 +22446,13 @@ pci:v000010DEd00000251* + ID_MODEL_FROM_DATABASE=NV25 [GeForce4 Ti 4400] + + pci:v000010DEd00000251sv00001043sd00008023* +- ID_MODEL_FROM_DATABASE=v8440 GeForce 4 Ti4400 ++ ID_MODEL_FROM_DATABASE=NV25 [GeForce4 Ti 4400] (v8440 GeForce 4 Ti4400) + + pci:v000010DEd00000251sv000010DEsd00000251* +- ID_MODEL_FROM_DATABASE=PNY GeForce4 Ti 4400 ++ ID_MODEL_FROM_DATABASE=NV25 [GeForce4 Ti 4400] (PNY GeForce4 Ti 4400) + + pci:v000010DEd00000251sv00001462sd00008710* +- ID_MODEL_FROM_DATABASE=PNY GeForce4 Ti 4400 ++ ID_MODEL_FROM_DATABASE=NV25 [GeForce4 Ti 4400] (PNY GeForce4 Ti 4400) + + pci:v000010DEd00000252* + ID_MODEL_FROM_DATABASE=NV25 [GeForce4 Ti] +@@ -22461,10 +22461,10 @@ pci:v000010DEd00000253* + ID_MODEL_FROM_DATABASE=NV25 [GeForce4 Ti 4200] + + pci:v000010DEd00000253sv0000107Dsd00002896* +- ID_MODEL_FROM_DATABASE=WinFast A250 LE TD (Dual VGA/TV-out/DVI) ++ ID_MODEL_FROM_DATABASE=NV25 [GeForce4 Ti 4200] (WinFast A250 LE TD (Dual VGA/TV-out/DVI)) + + pci:v000010DEd00000253sv0000147Bsd00008F09* +- ID_MODEL_FROM_DATABASE=Siluro (Dual VGA/TV-out/DVI) ++ ID_MODEL_FROM_DATABASE=NV25 [GeForce4 Ti 4200] (Siluro (Dual VGA/TV-out/DVI)) + + pci:v000010DEd00000258* + ID_MODEL_FROM_DATABASE=NV25GL [Quadro4 900 XGL] +@@ -22479,25 +22479,25 @@ pci:v000010DEd00000260* + ID_MODEL_FROM_DATABASE=MCP51 LPC Bridge + + pci:v000010DEd00000260sv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=MCP51 LPC Bridge (Pavilion a1677c) + + pci:v000010DEd00000260sv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=MCP51 LPC Bridge (Presario V6133CL) + + pci:v000010DEd00000260sv00001043sd000081BC* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=MCP51 LPC Bridge (A8N-VM CSM Mainboard) + + pci:v000010DEd00000260sv00001458sd00005001* +- ID_MODEL_FROM_DATABASE=GA-M55plus-S3G ++ ID_MODEL_FROM_DATABASE=MCP51 LPC Bridge (GA-M55plus-S3G) + + pci:v000010DEd00000260sv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=MCP51 LPC Bridge (K8NGM2 series) + + pci:v000010DEd00000261* + ID_MODEL_FROM_DATABASE=MCP51 LPC Bridge + + pci:v000010DEd00000261sv0000105Bsd00000CAD* +- ID_MODEL_FROM_DATABASE=Winfast 6100K8MB ++ ID_MODEL_FROM_DATABASE=MCP51 LPC Bridge (Winfast 6100K8MB) + + pci:v000010DEd00000262* + ID_MODEL_FROM_DATABASE=MCP51 LPC Bridge +@@ -22509,64 +22509,64 @@ pci:v000010DEd00000264* + ID_MODEL_FROM_DATABASE=MCP51 SMBus + + pci:v000010DEd00000264sv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=MCP51 SMBus (Pavilion a1677c) + + pci:v000010DEd00000264sv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=MCP51 SMBus (Presario V6133CL) + + pci:v000010DEd00000264sv00001043sd000081BC* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=MCP51 SMBus (A8N-VM CSM Mainboard) + + pci:v000010DEd00000264sv0000105Bsd00000CAD* +- ID_MODEL_FROM_DATABASE=Winfast 6100K8MB ++ ID_MODEL_FROM_DATABASE=MCP51 SMBus (Winfast 6100K8MB) + + pci:v000010DEd00000264sv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=MCP51 SMBus (K8NGM2 series) + + pci:v000010DEd00000265* + ID_MODEL_FROM_DATABASE=MCP51 IDE + + pci:v000010DEd00000265sv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=MCP51 IDE (Pavilion a1677c) + + pci:v000010DEd00000265sv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=MCP51 IDE (Presario V6133CL) + + pci:v000010DEd00000265sv00001043sd000081BC* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=MCP51 IDE (A8N-VM CSM Mainboard) + + pci:v000010DEd00000265sv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=MCP51 IDE (K8NGM2 series) + + pci:v000010DEd00000265sv0000F05Bsd00000CAD* +- ID_MODEL_FROM_DATABASE=Winfast 6100K8MB ++ ID_MODEL_FROM_DATABASE=MCP51 IDE (Winfast 6100K8MB) + + pci:v000010DEd00000266* + ID_MODEL_FROM_DATABASE=MCP51 Serial ATA Controller + + pci:v000010DEd00000266sv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=MCP51 Serial ATA Controller (Pavilion a1677c) + + pci:v000010DEd00000266sv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=MCP51 Serial ATA Controller (Presario V6133CL) + + pci:v000010DEd00000266sv00001043sd000081BC* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=MCP51 Serial ATA Controller (A8N-VM CSM Mainboard) + + pci:v000010DEd00000266sv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=MCP51 Serial ATA Controller (K8NGM2 series) + + pci:v000010DEd00000267* + ID_MODEL_FROM_DATABASE=MCP51 Serial ATA Controller + + pci:v000010DEd00000267sv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=MCP51 Serial ATA Controller (Pavilion a1677c) + + pci:v000010DEd00000267sv00001043sd000081BC* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=MCP51 Serial ATA Controller (A8N-VM CSM Mainboard) + + pci:v000010DEd00000267sv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=MCP51 Serial ATA Controller (K8NGM2 series) + + pci:v000010DEd00000268* + ID_MODEL_FROM_DATABASE=MCP51 Ethernet Controller +@@ -22575,16 +22575,16 @@ pci:v000010DEd00000269* + ID_MODEL_FROM_DATABASE=MCP51 Ethernet Controller + + pci:v000010DEd00000269sv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=MCP51 Ethernet Controller (Pavilion a1677c) + + pci:v000010DEd00000269sv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=MCP51 Ethernet Controller (Presario V6133CL) + + pci:v000010DEd00000269sv00001043sd00008141* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=MCP51 Ethernet Controller (A8N-VM CSM Mainboard) + + pci:v000010DEd00000269sv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=MCP51 Ethernet Controller (K8NGM2 series) + + pci:v000010DEd0000026A* + ID_MODEL_FROM_DATABASE=MCP51 MCI +@@ -22593,142 +22593,142 @@ pci:v000010DEd0000026B* + ID_MODEL_FROM_DATABASE=MCP51 AC97 Audio Controller + + pci:v000010DEd0000026Bsv0000105Bsd00000CAD* +- ID_MODEL_FROM_DATABASE=Winfast 6100K8MB ++ ID_MODEL_FROM_DATABASE=MCP51 AC97 Audio Controller (Winfast 6100K8MB) + + pci:v000010DEd0000026C* + ID_MODEL_FROM_DATABASE=MCP51 High Definition Audio + + pci:v000010DEd0000026Csv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=MCP51 High Definition Audio (Pavilion a1677c) + + pci:v000010DEd0000026Csv0000103Csd000030B5* +- ID_MODEL_FROM_DATABASE=Presario V3242AU ++ ID_MODEL_FROM_DATABASE=MCP51 High Definition Audio (Presario V3242AU) + + pci:v000010DEd0000026Csv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=MCP51 High Definition Audio (Presario V6133CL) + + pci:v000010DEd0000026Csv000010DEsd0000CB84* +- ID_MODEL_FROM_DATABASE=ASUSTeK Computer Inc. A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=MCP51 High Definition Audio (ASUSTeK Computer Inc. A8N-VM CSM Mainboard) + + pci:v000010DEd0000026Csv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=MCP51 High Definition Audio (K8NGM2 series) + + pci:v000010DEd0000026D* + ID_MODEL_FROM_DATABASE=MCP51 USB Controller + + pci:v000010DEd0000026Dsv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=MCP51 USB Controller (Pavilion a1677c) + + pci:v000010DEd0000026Dsv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=MCP51 USB Controller (Presario V6133CL) + + pci:v000010DEd0000026Dsv00001043sd000081BC* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=MCP51 USB Controller (A8N-VM CSM Mainboard) + + pci:v000010DEd0000026Dsv0000105Bsd00000CAD* +- ID_MODEL_FROM_DATABASE=Winfast 6100K8MB ++ ID_MODEL_FROM_DATABASE=MCP51 USB Controller (Winfast 6100K8MB) + + pci:v000010DEd0000026Dsv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=MCP51 USB Controller (K8NGM2 series) + + pci:v000010DEd0000026E* + ID_MODEL_FROM_DATABASE=MCP51 USB Controller + + pci:v000010DEd0000026Esv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=MCP51 USB Controller (Pavilion a1677c) + + pci:v000010DEd0000026Esv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=MCP51 USB Controller (Presario V6133CL) + + pci:v000010DEd0000026Esv00001043sd000081BC* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=MCP51 USB Controller (A8N-VM CSM Mainboard) + + pci:v000010DEd0000026Esv0000105Bsd00000CAD* +- ID_MODEL_FROM_DATABASE=Winfast 6100K8MB ++ ID_MODEL_FROM_DATABASE=MCP51 USB Controller (Winfast 6100K8MB) + + pci:v000010DEd0000026Esv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=MCP51 USB Controller (K8NGM2 series) + + pci:v000010DEd0000026F* + ID_MODEL_FROM_DATABASE=MCP51 PCI Bridge + + pci:v000010DEd0000026Fsv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=MCP51 PCI Bridge (Presario V6133CL) + + pci:v000010DEd00000270* + ID_MODEL_FROM_DATABASE=MCP51 Host Bridge + + pci:v000010DEd00000270sv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=MCP51 Host Bridge (Pavilion a1677c) + + pci:v000010DEd00000270sv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=MCP51 Host Bridge (Presario V6133CL) + + pci:v000010DEd00000270sv00001043sd000081BC* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=MCP51 Host Bridge (A8N-VM CSM Mainboard) + + pci:v000010DEd00000270sv0000105Bsd00000CAD* +- ID_MODEL_FROM_DATABASE=Winfast 6100K8MB ++ ID_MODEL_FROM_DATABASE=MCP51 Host Bridge (Winfast 6100K8MB) + + pci:v000010DEd00000270sv00001458sd00005001* +- ID_MODEL_FROM_DATABASE=GA-M55plus-S3G ++ ID_MODEL_FROM_DATABASE=MCP51 Host Bridge (GA-M55plus-S3G) + + pci:v000010DEd00000270sv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=MCP51 Host Bridge (K8NGM2 series) + + pci:v000010DEd00000271* + ID_MODEL_FROM_DATABASE=MCP51 PMU + + pci:v000010DEd00000271sv0000103Csd000030B5* +- ID_MODEL_FROM_DATABASE=Presario V3242AU ++ ID_MODEL_FROM_DATABASE=MCP51 PMU (Presario V3242AU) + + pci:v000010DEd00000271sv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=MCP51 PMU (Presario V6133CL) + + pci:v000010DEd00000272* + ID_MODEL_FROM_DATABASE=MCP51 Memory Controller 0 + + pci:v000010DEd00000272sv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=MCP51 Memory Controller 0 (Pavilion a1677c) + + pci:v000010DEd00000272sv0000105Bsd00000CAD* +- ID_MODEL_FROM_DATABASE=Winfast 6100K8MB ++ ID_MODEL_FROM_DATABASE=MCP51 Memory Controller 0 (Winfast 6100K8MB) + + pci:v000010DEd0000027E* + ID_MODEL_FROM_DATABASE=C51 Memory Controller 2 + + pci:v000010DEd0000027Esv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 2 (Pavilion a1677c) + + pci:v000010DEd0000027Esv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 2 (Presario V6133CL) + + pci:v000010DEd0000027Esv00001043sd000081CD* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 2 (A8N-VM CSM Mainboard) + + pci:v000010DEd0000027Esv00001458sd00005000* +- ID_MODEL_FROM_DATABASE=GA-M55plus-S3G ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 2 (GA-M55plus-S3G) + + pci:v000010DEd0000027Esv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 2 (K8NGM2 series) + + pci:v000010DEd0000027F* + ID_MODEL_FROM_DATABASE=C51 Memory Controller 3 + + pci:v000010DEd0000027Fsv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 3 (Pavilion a1677c) + + pci:v000010DEd0000027Fsv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 3 (Presario V6133CL) + + pci:v000010DEd0000027Fsv00001043sd000081CD* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 3 (A8N-VM CSM Mainboard) + + pci:v000010DEd0000027Fsv00001458sd00005000* +- ID_MODEL_FROM_DATABASE=GA-M55plus-S3G ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 3 (GA-M55plus-S3G) + + pci:v000010DEd0000027Fsv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 3 (K8NGM2 series) + + pci:v000010DEd00000280* + ID_MODEL_FROM_DATABASE=NV28 [GeForce4 Ti 4800] +@@ -22758,7 +22758,7 @@ pci:v000010DEd00000291* + ID_MODEL_FROM_DATABASE=G71 [GeForce 7900 GT/GTO] + + pci:v000010DEd00000291sv000010DEsd0000042B* +- ID_MODEL_FROM_DATABASE=NX7900GTO-T2D512E [7900 GTO] ++ ID_MODEL_FROM_DATABASE=G71 [GeForce 7900 GT/GTO] (NX7900GTO-T2D512E [7900 GTO]) + + pci:v000010DEd00000292* + ID_MODEL_FROM_DATABASE=G71 [GeForce 7900 GS] +@@ -22773,13 +22773,13 @@ pci:v000010DEd00000295* + ID_MODEL_FROM_DATABASE=G71 [GeForce 7950 GT] + + pci:v000010DEd00000295sv00001043sd00008225* +- ID_MODEL_FROM_DATABASE=GeForce 7950 GT ++ ID_MODEL_FROM_DATABASE=G71 [GeForce 7950 GT] (GeForce 7950 GT) + + pci:v000010DEd00000295sv0000107Dsd00002A68* +- ID_MODEL_FROM_DATABASE=WinFast PX7950GT TDH ++ ID_MODEL_FROM_DATABASE=G71 [GeForce 7950 GT] (WinFast PX7950GT TDH) + + pci:v000010DEd00000295sv00001462sd00000663* +- ID_MODEL_FROM_DATABASE=NX7950GT-VT2D512EZ-HD ++ ID_MODEL_FROM_DATABASE=G71 [GeForce 7950 GT] (NX7950GT-VT2D512EZ-HD) + + pci:v000010DEd00000297* + ID_MODEL_FROM_DATABASE=G71M [GeForce Go 7950 GTX] +@@ -22803,7 +22803,7 @@ pci:v000010DEd0000029D* + ID_MODEL_FROM_DATABASE=G71GL [Quadro FX 3500] + + pci:v000010DEd0000029Dsv00001028sd0000019B* +- ID_MODEL_FROM_DATABASE=G71GLM [Quadro FX 3500M] ++ ID_MODEL_FROM_DATABASE=G71GL [Quadro FX 3500] (G71GLM [Quadro FX 3500M]) + + pci:v000010DEd0000029E* + ID_MODEL_FROM_DATABASE=G71GL [Quadro FX 1500] +@@ -22824,16 +22824,16 @@ pci:v000010DEd000002E0* + ID_MODEL_FROM_DATABASE=G73 [GeForce 7600 GT] + + pci:v000010DEd000002E0sv000002E0sd00002249* +- ID_MODEL_FROM_DATABASE=GF 7600GT 560M 256MB DDR3 DUAL DVI TV ++ ID_MODEL_FROM_DATABASE=G73 [GeForce 7600 GT] (GF 7600GT 560M 256MB DDR3 DUAL DVI TV) + + pci:v000010DEd000002E1* + ID_MODEL_FROM_DATABASE=G73 [GeForce 7600 GS] + + pci:v000010DEd000002E1sv00001682sd0000222B* +- ID_MODEL_FROM_DATABASE=PV-T73K-UAL3 (256MB) ++ ID_MODEL_FROM_DATABASE=G73 [GeForce 7600 GS] (PV-T73K-UAL3 (256MB)) + + pci:v000010DEd000002E1sv00001682sd00002247* +- ID_MODEL_FROM_DATABASE=GF 7600GS 512MB DDR2 ++ ID_MODEL_FROM_DATABASE=G73 [GeForce 7600 GS] (GF 7600GS 512MB DDR2) + + pci:v000010DEd000002E2* + ID_MODEL_FROM_DATABASE=G73 [GeForce 7300 GT] +@@ -22845,28 +22845,28 @@ pci:v000010DEd000002E4* + ID_MODEL_FROM_DATABASE=G71 [GeForce 7950 GT] + + pci:v000010DEd000002E4sv00001682sd00002271* +- ID_MODEL_FROM_DATABASE=PV-T71A-YDF7 (512MB) ++ ID_MODEL_FROM_DATABASE=G71 [GeForce 7950 GT] (PV-T71A-YDF7 (512MB)) + + pci:v000010DEd000002F0* + ID_MODEL_FROM_DATABASE=C51 Host Bridge + + pci:v000010DEd000002F0sv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=C51 Host Bridge (Pavilion a1677c) + + pci:v000010DEd000002F0sv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=C51 Host Bridge (Presario V6133CL) + + pci:v000010DEd000002F0sv00001043sd000081CD* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=C51 Host Bridge (A8N-VM CSM Mainboard) + + pci:v000010DEd000002F0sv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=C51 Host Bridge (K8NGM2 series) + + pci:v000010DEd000002F1* + ID_MODEL_FROM_DATABASE=C51 Host Bridge + + pci:v000010DEd000002F1sv00001458sd00005000* +- ID_MODEL_FROM_DATABASE=GA-M55plus-S3G ++ ID_MODEL_FROM_DATABASE=C51 Host Bridge (GA-M55plus-S3G) + + pci:v000010DEd000002F2* + ID_MODEL_FROM_DATABASE=C51 Host Bridge +@@ -22890,55 +22890,55 @@ pci:v000010DEd000002F8* + ID_MODEL_FROM_DATABASE=C51 Memory Controller 5 + + pci:v000010DEd000002F8sv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 5 (Pavilion a1677c) + + pci:v000010DEd000002F8sv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 5 (Presario V6133CL) + + pci:v000010DEd000002F8sv00001043sd000081CD* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 5 (A8N-VM CSM Mainboard) + + pci:v000010DEd000002F8sv00001458sd00005000* +- ID_MODEL_FROM_DATABASE=GA-M55plus-S3G ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 5 (GA-M55plus-S3G) + + pci:v000010DEd000002F8sv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 5 (K8NGM2 series) + + pci:v000010DEd000002F9* + ID_MODEL_FROM_DATABASE=C51 Memory Controller 4 + + pci:v000010DEd000002F9sv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 4 (Pavilion a1677c) + + pci:v000010DEd000002F9sv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 4 (Presario V6133CL) + + pci:v000010DEd000002F9sv00001043sd000081CD* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 4 (A8N-VM CSM Mainboard) + + pci:v000010DEd000002F9sv00001458sd00005000* +- ID_MODEL_FROM_DATABASE=GA-M55plus-S3G ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 4 (GA-M55plus-S3G) + + pci:v000010DEd000002F9sv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 4 (K8NGM2 series) + + pci:v000010DEd000002FA* + ID_MODEL_FROM_DATABASE=C51 Memory Controller 0 + + pci:v000010DEd000002FAsv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 0 (Pavilion a1677c) + + pci:v000010DEd000002FAsv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 0 (Presario V6133CL) + + pci:v000010DEd000002FAsv00001043sd000081CD* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 0 (A8N-VM CSM Mainboard) + + pci:v000010DEd000002FAsv00001458sd00005000* +- ID_MODEL_FROM_DATABASE=GA-M55plus-S3G ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 0 (GA-M55plus-S3G) + + pci:v000010DEd000002FAsv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 0 (K8NGM2 series) + + pci:v000010DEd000002FB* + ID_MODEL_FROM_DATABASE=C51 PCI Express Bridge +@@ -22947,49 +22947,49 @@ pci:v000010DEd000002FC* + ID_MODEL_FROM_DATABASE=C51 PCI Express Bridge + + pci:v000010DEd000002FCsv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=C51 PCI Express Bridge (Presario V6133CL) + + pci:v000010DEd000002FD* + ID_MODEL_FROM_DATABASE=C51 PCI Express Bridge + + pci:v000010DEd000002FDsv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=C51 PCI Express Bridge (Presario V6133CL) + + pci:v000010DEd000002FE* + ID_MODEL_FROM_DATABASE=C51 Memory Controller 1 + + pci:v000010DEd000002FEsv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 1 (Pavilion a1677c) + + pci:v000010DEd000002FEsv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 1 (Presario V6133CL) + + pci:v000010DEd000002FEsv00001043sd000081CD* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 1 (A8N-VM CSM Mainboard) + + pci:v000010DEd000002FEsv00001458sd00005000* +- ID_MODEL_FROM_DATABASE=GA-M55plus-S3G ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 1 (GA-M55plus-S3G) + + pci:v000010DEd000002FEsv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=C51 Memory Controller 1 (K8NGM2 series) + + pci:v000010DEd000002FF* + ID_MODEL_FROM_DATABASE=C51 Host Bridge + + pci:v000010DEd000002FFsv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=C51 Host Bridge (Pavilion a1677c) + + pci:v000010DEd000002FFsv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=C51 Host Bridge (Presario V6133CL) + + pci:v000010DEd000002FFsv00001043sd000081CD* +- ID_MODEL_FROM_DATABASE=A8N-VM CSM Mainboard ++ ID_MODEL_FROM_DATABASE=C51 Host Bridge (A8N-VM CSM Mainboard) + + pci:v000010DEd000002FFsv00001458sd00005000* +- ID_MODEL_FROM_DATABASE=GA-M55plus-S3G ++ ID_MODEL_FROM_DATABASE=C51 Host Bridge (GA-M55plus-S3G) + + pci:v000010DEd000002FFsv00001462sd00007207* +- ID_MODEL_FROM_DATABASE=K8NGM2 series ++ ID_MODEL_FROM_DATABASE=C51 Host Bridge (K8NGM2 series) + + pci:v000010DEd00000300* + ID_MODEL_FROM_DATABASE=NV30 [GeForce FX] +@@ -23016,7 +23016,7 @@ pci:v000010DEd00000314* + ID_MODEL_FROM_DATABASE=NV31 [GeForce FX 5600XT] + + pci:v000010DEd00000314sv00001043sd0000814A* +- ID_MODEL_FROM_DATABASE=V9560XT/TD ++ ID_MODEL_FROM_DATABASE=NV31 [GeForce FX 5600XT] (V9560XT/TD) + + pci:v000010DEd00000316* + ID_MODEL_FROM_DATABASE=NV31M +@@ -23043,25 +23043,25 @@ pci:v000010DEd00000322* + ID_MODEL_FROM_DATABASE=NV34 [GeForce FX 5200] + + pci:v000010DEd00000322sv00001043sd000002FB* +- ID_MODEL_FROM_DATABASE=V9250 Magic ++ ID_MODEL_FROM_DATABASE=NV34 [GeForce FX 5200] (V9250 Magic) + + pci:v000010DEd00000322sv00001043sd00008180* +- ID_MODEL_FROM_DATABASE=V9520-X/TD/128M ++ ID_MODEL_FROM_DATABASE=NV34 [GeForce FX 5200] (V9520-X/TD/128M) + + pci:v000010DEd00000322sv0000107Dsd00002967* +- ID_MODEL_FROM_DATABASE=WinFast A340T 128MB ++ ID_MODEL_FROM_DATABASE=NV34 [GeForce FX 5200] (WinFast A340T 128MB) + + pci:v000010DEd00000322sv00001462sd00009110* +- ID_MODEL_FROM_DATABASE=MS-8911 (FX5200-TD128) ++ ID_MODEL_FROM_DATABASE=NV34 [GeForce FX 5200] (MS-8911 (FX5200-TD128)) + + pci:v000010DEd00000322sv00001462sd00009171* +- ID_MODEL_FROM_DATABASE=MS-8917 (FX5200-T128) ++ ID_MODEL_FROM_DATABASE=NV34 [GeForce FX 5200] (MS-8917 (FX5200-T128)) + + pci:v000010DEd00000322sv00001462sd00009360* +- ID_MODEL_FROM_DATABASE=MS-8936 (FX5200-T128) ++ ID_MODEL_FROM_DATABASE=NV34 [GeForce FX 5200] (MS-8936 (FX5200-T128)) + + pci:v000010DEd00000322sv00001682sd00001351* +- ID_MODEL_FROM_DATABASE=GeForce FX 5200 ++ ID_MODEL_FROM_DATABASE=NV34 [GeForce FX 5200] (GeForce FX 5200) + + pci:v000010DEd00000323* + ID_MODEL_FROM_DATABASE=NV34 [GeForce FX 5200LE] +@@ -23070,13 +23070,13 @@ pci:v000010DEd00000324* + ID_MODEL_FROM_DATABASE=NV34M [GeForce FX Go5200 64M] + + pci:v000010DEd00000324sv00001028sd00000196* +- ID_MODEL_FROM_DATABASE=Inspiron 5160 ++ ID_MODEL_FROM_DATABASE=NV34M [GeForce FX Go5200 64M] (Inspiron 5160) + + pci:v000010DEd00000324sv0000103Csd0000006A* +- ID_MODEL_FROM_DATABASE=Pavilion ZD7000 laptop ++ ID_MODEL_FROM_DATABASE=NV34M [GeForce FX Go5200 64M] (Pavilion ZD7000 laptop) + + pci:v000010DEd00000324sv00001071sd00008160* +- ID_MODEL_FROM_DATABASE=MIM2000 ++ ID_MODEL_FROM_DATABASE=NV34M [GeForce FX Go5200 64M] (MIM2000) + + pci:v000010DEd00000325* + ID_MODEL_FROM_DATABASE=NV34M [GeForce FX Go5250] +@@ -23085,10 +23085,10 @@ pci:v000010DEd00000326* + ID_MODEL_FROM_DATABASE=NV34 [GeForce FX 5500] + + pci:v000010DEd00000326sv00001458sd0000310D* +- ID_MODEL_FROM_DATABASE=GeForce FX 5500 128 MB ++ ID_MODEL_FROM_DATABASE=NV34 [GeForce FX 5500] (GeForce FX 5500 128 MB) + + pci:v000010DEd00000326sv00001682sd00002034* +- ID_MODEL_FROM_DATABASE=GeForce 5500 256 MB ++ ID_MODEL_FROM_DATABASE=NV34 [GeForce FX 5500] (GeForce 5500 256 MB) + + pci:v000010DEd00000327* + ID_MODEL_FROM_DATABASE=NV34 [GeForce FX 5100] +@@ -23100,7 +23100,7 @@ pci:v000010DEd00000329* + ID_MODEL_FROM_DATABASE=NV34M [GeForce FX Go5200] + + pci:v000010DEd00000329sv000010DEsd00000010* +- ID_MODEL_FROM_DATABASE=Powerbook G4 ++ ID_MODEL_FROM_DATABASE=NV34M [GeForce FX Go5200] (Powerbook G4) + + pci:v000010DEd0000032A* + ID_MODEL_FROM_DATABASE=NV34GL [Quadro NVS 280 PCI] +@@ -23124,13 +23124,13 @@ pci:v000010DEd00000330* + ID_MODEL_FROM_DATABASE=NV35 [GeForce FX 5900 Ultra] + + pci:v000010DEd00000330sv00001043sd00008137* +- ID_MODEL_FROM_DATABASE=V9950 Ultra / 256 MB ++ ID_MODEL_FROM_DATABASE=NV35 [GeForce FX 5900 Ultra] (V9950 Ultra / 256 MB) + + pci:v000010DEd00000331* + ID_MODEL_FROM_DATABASE=NV35 [GeForce FX 5900] + + pci:v000010DEd00000331sv00001043sd00008145* +- ID_MODEL_FROM_DATABASE=V9950GE ++ ID_MODEL_FROM_DATABASE=NV35 [GeForce FX 5900] (V9950GE) + + pci:v000010DEd00000332* + ID_MODEL_FROM_DATABASE=NV35 [GeForce FX 5900XT] +@@ -23142,7 +23142,7 @@ pci:v000010DEd00000334* + ID_MODEL_FROM_DATABASE=NV35 [GeForce FX 5900ZT] + + pci:v000010DEd00000334sv00001462sd00009373* +- ID_MODEL_FROM_DATABASE=FX5900ZT-VTD128 (MS-8937) ++ ID_MODEL_FROM_DATABASE=NV35 [GeForce FX 5900ZT] (FX5900ZT-VTD128 (MS-8937)) + + pci:v000010DEd00000338* + ID_MODEL_FROM_DATABASE=NV35GL [Quadro FX 3000] +@@ -23154,7 +23154,7 @@ pci:v000010DEd00000341* + ID_MODEL_FROM_DATABASE=NV36 [GeForce FX 5700 Ultra] + + pci:v000010DEd00000341sv00001462sd00009380* +- ID_MODEL_FROM_DATABASE=MS-8938 (FX5700U-TD128) ++ ID_MODEL_FROM_DATABASE=NV36 [GeForce FX 5700 Ultra] (MS-8938 (FX5700U-TD128)) + + pci:v000010DEd00000342* + ID_MODEL_FROM_DATABASE=NV36 [GeForce FX 5700] +@@ -23169,7 +23169,7 @@ pci:v000010DEd00000347* + ID_MODEL_FROM_DATABASE=NV36M [GeForce FX Go5700] + + pci:v000010DEd00000347sv0000103Csd0000006A* +- ID_MODEL_FROM_DATABASE=NX9500 ++ ID_MODEL_FROM_DATABASE=NV36M [GeForce FX Go5700] (NX9500) + + pci:v000010DEd00000348* + ID_MODEL_FROM_DATABASE=NV36M [GeForce FX Go5700] +@@ -23190,13 +23190,13 @@ pci:v000010DEd00000361* + ID_MODEL_FROM_DATABASE=MCP55 LPC Bridge + + pci:v000010DEd00000361sv00001028sd00000221* +- ID_MODEL_FROM_DATABASE=PowerEdge R805 MCP55 LPC Bridge ++ ID_MODEL_FROM_DATABASE=MCP55 LPC Bridge (PowerEdge R805 MCP55 LPC Bridge) + + pci:v000010DEd00000362* + ID_MODEL_FROM_DATABASE=MCP55 LPC Bridge + + pci:v000010DEd00000362sv0000147Bsd00001C24* +- ID_MODEL_FROM_DATABASE=KN9 series mainboard ++ ID_MODEL_FROM_DATABASE=MCP55 LPC Bridge (KN9 series mainboard) + + pci:v000010DEd00000363* + ID_MODEL_FROM_DATABASE=MCP55 LPC Bridge +@@ -23205,7 +23205,7 @@ pci:v000010DEd00000364* + ID_MODEL_FROM_DATABASE=MCP55 LPC Bridge + + pci:v000010DEd00000364sv00001028sd00000221* +- ID_MODEL_FROM_DATABASE=PowerEdge R805 MCP55 LPC Bridge ++ ID_MODEL_FROM_DATABASE=MCP55 LPC Bridge (PowerEdge R805 MCP55 LPC Bridge) + + pci:v000010DEd00000365* + ID_MODEL_FROM_DATABASE=MCP55 LPC Bridge +@@ -23220,19 +23220,19 @@ pci:v000010DEd00000368* + ID_MODEL_FROM_DATABASE=MCP55 SMBus + + pci:v000010DEd00000368sv00001028sd0000020C* +- ID_MODEL_FROM_DATABASE=PowerEdge M605 MCP55 SMBus ++ ID_MODEL_FROM_DATABASE=MCP55 SMBus (PowerEdge M605 MCP55 SMBus) + + pci:v000010DEd00000368sv00001028sd00000221* +- ID_MODEL_FROM_DATABASE=PowerEdge R805 MCP55 SMBus ++ ID_MODEL_FROM_DATABASE=MCP55 SMBus (PowerEdge R805 MCP55 SMBus) + + pci:v000010DEd00000368sv0000147Bsd00001C24* +- ID_MODEL_FROM_DATABASE=KN9 series mainboard ++ ID_MODEL_FROM_DATABASE=MCP55 SMBus (KN9 series mainboard) + + pci:v000010DEd00000369* + ID_MODEL_FROM_DATABASE=MCP55 Memory Controller + + pci:v000010DEd00000369sv0000147Bsd00001C24* +- ID_MODEL_FROM_DATABASE=KN9 series mainboard ++ ID_MODEL_FROM_DATABASE=MCP55 Memory Controller (KN9 series mainboard) + + pci:v000010DEd0000036A* + ID_MODEL_FROM_DATABASE=MCP55 Memory Controller +@@ -23244,31 +23244,31 @@ pci:v000010DEd0000036C* + ID_MODEL_FROM_DATABASE=MCP55 USB Controller + + pci:v000010DEd0000036Csv00001028sd0000020C* +- ID_MODEL_FROM_DATABASE=PowerEdge M605 MCP55 USB Controller ++ ID_MODEL_FROM_DATABASE=MCP55 USB Controller (PowerEdge M605 MCP55 USB Controller) + + pci:v000010DEd0000036Csv00001028sd00000221* +- ID_MODEL_FROM_DATABASE=PowerEdge R805 MCP55 USB Controller ++ ID_MODEL_FROM_DATABASE=MCP55 USB Controller (PowerEdge R805 MCP55 USB Controller) + + pci:v000010DEd0000036Csv0000147Bsd00001C24* +- ID_MODEL_FROM_DATABASE=KN9 series mainboard ++ ID_MODEL_FROM_DATABASE=MCP55 USB Controller (KN9 series mainboard) + + pci:v000010DEd0000036D* + ID_MODEL_FROM_DATABASE=MCP55 USB Controller + + pci:v000010DEd0000036Dsv00001028sd0000020C* +- ID_MODEL_FROM_DATABASE=PowerEdge M605 MCP55 USB Controller ++ ID_MODEL_FROM_DATABASE=MCP55 USB Controller (PowerEdge M605 MCP55 USB Controller) + + pci:v000010DEd0000036Dsv00001028sd00000221* +- ID_MODEL_FROM_DATABASE=PowerEdge R805 MCP55 USB Controller ++ ID_MODEL_FROM_DATABASE=MCP55 USB Controller (PowerEdge R805 MCP55 USB Controller) + + pci:v000010DEd0000036Dsv0000147Bsd00001C24* +- ID_MODEL_FROM_DATABASE=KN9 series mainboard ++ ID_MODEL_FROM_DATABASE=MCP55 USB Controller (KN9 series mainboard) + + pci:v000010DEd0000036E* + ID_MODEL_FROM_DATABASE=MCP55 IDE + + pci:v000010DEd0000036Esv0000147Bsd00001C24* +- ID_MODEL_FROM_DATABASE=KN9 series mainboard ++ ID_MODEL_FROM_DATABASE=MCP55 IDE (KN9 series mainboard) + + pci:v000010DEd00000370* + ID_MODEL_FROM_DATABASE=MCP55 PCI bridge +@@ -23277,7 +23277,7 @@ pci:v000010DEd00000371* + ID_MODEL_FROM_DATABASE=MCP55 High Definition Audio + + pci:v000010DEd00000371sv0000147Bsd00001C24* +- ID_MODEL_FROM_DATABASE=KN9 series mainboard ++ ID_MODEL_FROM_DATABASE=MCP55 High Definition Audio (KN9 series mainboard) + + pci:v000010DEd00000372* + ID_MODEL_FROM_DATABASE=MCP55 Ethernet +@@ -23286,7 +23286,7 @@ pci:v000010DEd00000373* + ID_MODEL_FROM_DATABASE=MCP55 Ethernet + + pci:v000010DEd00000373sv0000147Bsd00001C24* +- ID_MODEL_FROM_DATABASE=KN9 series mainboard ++ ID_MODEL_FROM_DATABASE=MCP55 Ethernet (KN9 series mainboard) + + pci:v000010DEd00000374* + ID_MODEL_FROM_DATABASE=MCP55 PCI Express bridge +@@ -23313,10 +23313,10 @@ pci:v000010DEd0000037F* + ID_MODEL_FROM_DATABASE=MCP55 SATA Controller + + pci:v000010DEd0000037Fsv00001028sd00000221* +- ID_MODEL_FROM_DATABASE=PowerEdge R805 MCP55 SATA Controller ++ ID_MODEL_FROM_DATABASE=MCP55 SATA Controller (PowerEdge R805 MCP55 SATA Controller) + + pci:v000010DEd0000037Fsv0000147Bsd00001C24* +- ID_MODEL_FROM_DATABASE=KN9 series mainboard ++ ID_MODEL_FROM_DATABASE=MCP55 SATA Controller (KN9 series mainboard) + + pci:v000010DEd0000038B* + ID_MODEL_FROM_DATABASE=G73 [GeForce 7650 GS] +@@ -23328,25 +23328,25 @@ pci:v000010DEd00000391* + ID_MODEL_FROM_DATABASE=G73 [GeForce 7600 GT] + + pci:v000010DEd00000391sv00001458sd00003427* +- ID_MODEL_FROM_DATABASE=GV-NX76T128D-RH ++ ID_MODEL_FROM_DATABASE=G73 [GeForce 7600 GT] (GV-NX76T128D-RH) + + pci:v000010DEd00000391sv00001462sd00000452* +- ID_MODEL_FROM_DATABASE=NX7600GT-VT2D256E ++ ID_MODEL_FROM_DATABASE=G73 [GeForce 7600 GT] (NX7600GT-VT2D256E) + + pci:v000010DEd00000392* + ID_MODEL_FROM_DATABASE=G73 [GeForce 7600 GS] + + pci:v000010DEd00000392sv00001462sd00000622* +- ID_MODEL_FROM_DATABASE=NX7600GS-T2D256EH ++ ID_MODEL_FROM_DATABASE=G73 [GeForce 7600 GS] (NX7600GS-T2D256EH) + + pci:v000010DEd00000393* + ID_MODEL_FROM_DATABASE=G73 [GeForce 7300 GT] + + pci:v000010DEd00000393sv000010DEsd00000412* +- ID_MODEL_FROM_DATABASE=NX7300GT-TD256EH ++ ID_MODEL_FROM_DATABASE=G73 [GeForce 7300 GT] (NX7300GT-TD256EH) + + pci:v000010DEd00000393sv00001462sd00000412* +- ID_MODEL_FROM_DATABASE=NX7300GT-TD256EH ++ ID_MODEL_FROM_DATABASE=G73 [GeForce 7300 GT] (NX7300GT-TD256EH) + + pci:v000010DEd00000394* + ID_MODEL_FROM_DATABASE=G73 [GeForce 7600 LE] +@@ -23364,7 +23364,7 @@ pci:v000010DEd00000398* + ID_MODEL_FROM_DATABASE=G73M [GeForce Go 7600] + + pci:v000010DEd00000398sv00001025sd0000006C* +- ID_MODEL_FROM_DATABASE=Acer 9814 WKMI ++ ID_MODEL_FROM_DATABASE=G73M [GeForce Go 7600] (Acer 9814 WKMI) + + pci:v000010DEd00000399* + ID_MODEL_FROM_DATABASE=G73M [GeForce Go 7600 GT] +@@ -23379,7 +23379,7 @@ pci:v000010DEd0000039C* + ID_MODEL_FROM_DATABASE=G73GLM [Quadro FX 550M] + + pci:v000010DEd0000039Csv000010DEsd0000039C* +- ID_MODEL_FROM_DATABASE=Quadro FX 560M ++ ID_MODEL_FROM_DATABASE=G73GLM [Quadro FX 550M] (Quadro FX 560M) + + pci:v000010DEd0000039D* + ID_MODEL_FROM_DATABASE=G73 +@@ -23481,7 +23481,7 @@ pci:v000010DEd000003D0* + ID_MODEL_FROM_DATABASE=C61 [GeForce 6150SE nForce 430] + + pci:v000010DEd000003D0sv00001028sd0000020E* +- ID_MODEL_FROM_DATABASE=Inspiron 531 ++ ID_MODEL_FROM_DATABASE=C61 [GeForce 6150SE nForce 430] (Inspiron 531) + + pci:v000010DEd000003D1* + ID_MODEL_FROM_DATABASE=C61 [GeForce 6100 nForce 405] +@@ -23499,22 +23499,22 @@ pci:v000010DEd000003E0* + ID_MODEL_FROM_DATABASE=MCP61 LPC Bridge + + pci:v000010DEd000003E0sv00001028sd0000020E* +- ID_MODEL_FROM_DATABASE=Inspiron 531 ++ ID_MODEL_FROM_DATABASE=MCP61 LPC Bridge (Inspiron 531) + + pci:v000010DEd000003E0sv00001849sd000003E0* +- ID_MODEL_FROM_DATABASE=939NF6G-VSTA Board ++ ID_MODEL_FROM_DATABASE=MCP61 LPC Bridge (939NF6G-VSTA Board) + + pci:v000010DEd000003E1* + ID_MODEL_FROM_DATABASE=MCP61 LPC Bridge + + pci:v000010DEd000003E1sv00001043sd000083A4* +- ID_MODEL_FROM_DATABASE=M4N68T series motherboard ++ ID_MODEL_FROM_DATABASE=MCP61 LPC Bridge (M4N68T series motherboard) + + pci:v000010DEd000003E2* + ID_MODEL_FROM_DATABASE=MCP61 Host Bridge + + pci:v000010DEd000003E2sv00001043sd000083A4* +- ID_MODEL_FROM_DATABASE=M4N68T series motherboard ++ ID_MODEL_FROM_DATABASE=MCP61 Host Bridge (M4N68T series motherboard) + + pci:v000010DEd000003E3* + ID_MODEL_FROM_DATABASE=MCP61 LPC Bridge +@@ -23535,55 +23535,55 @@ pci:v000010DEd000003E8* + ID_MODEL_FROM_DATABASE=MCP61 PCI Express bridge + + pci:v000010DEd000003E8sv00001028sd0000020E* +- ID_MODEL_FROM_DATABASE=Inspiron 531 ++ ID_MODEL_FROM_DATABASE=MCP61 PCI Express bridge (Inspiron 531) + + pci:v000010DEd000003E8sv00001849sd000003E8* +- ID_MODEL_FROM_DATABASE=939NF6G-VSTA Board ++ ID_MODEL_FROM_DATABASE=MCP61 PCI Express bridge (939NF6G-VSTA Board) + + pci:v000010DEd000003E9* + ID_MODEL_FROM_DATABASE=MCP61 PCI Express bridge + + pci:v000010DEd000003E9sv00001028sd0000020E* +- ID_MODEL_FROM_DATABASE=Inspiron 531 ++ ID_MODEL_FROM_DATABASE=MCP61 PCI Express bridge (Inspiron 531) + + pci:v000010DEd000003E9sv00001849sd000003E9* +- ID_MODEL_FROM_DATABASE=939NF6G-VSTA Board ++ ID_MODEL_FROM_DATABASE=MCP61 PCI Express bridge (939NF6G-VSTA Board) + + pci:v000010DEd000003EA* + ID_MODEL_FROM_DATABASE=MCP61 Memory Controller + + pci:v000010DEd000003EAsv00001028sd0000020E* +- ID_MODEL_FROM_DATABASE=Inspiron 531 ++ ID_MODEL_FROM_DATABASE=MCP61 Memory Controller (Inspiron 531) + + pci:v000010DEd000003EAsv00001849sd000003EA* +- ID_MODEL_FROM_DATABASE=939NF6G-VSTA Board ++ ID_MODEL_FROM_DATABASE=MCP61 Memory Controller (939NF6G-VSTA Board) + + pci:v000010DEd000003EB* + ID_MODEL_FROM_DATABASE=MCP61 SMBus + + pci:v000010DEd000003EBsv00001028sd0000020E* +- ID_MODEL_FROM_DATABASE=Inspiron 531 ++ ID_MODEL_FROM_DATABASE=MCP61 SMBus (Inspiron 531) + + pci:v000010DEd000003EBsv00001043sd000083A4* +- ID_MODEL_FROM_DATABASE=M4N68T series motherboard ++ ID_MODEL_FROM_DATABASE=MCP61 SMBus (M4N68T series motherboard) + + pci:v000010DEd000003EBsv00001849sd000003EB* +- ID_MODEL_FROM_DATABASE=939NF6G-VSTA Board ++ ID_MODEL_FROM_DATABASE=MCP61 SMBus (939NF6G-VSTA Board) + + pci:v000010DEd000003EC* + ID_MODEL_FROM_DATABASE=MCP61 IDE + + pci:v000010DEd000003ECsv00001025sd00000392* +- ID_MODEL_FROM_DATABASE=ET1350 ++ ID_MODEL_FROM_DATABASE=MCP61 IDE (ET1350) + + pci:v000010DEd000003ECsv00001028sd0000020E* +- ID_MODEL_FROM_DATABASE=Inspiron 531 ++ ID_MODEL_FROM_DATABASE=MCP61 IDE (Inspiron 531) + + pci:v000010DEd000003ECsv00001043sd000083A4* +- ID_MODEL_FROM_DATABASE=M4N68T series motherboard ++ ID_MODEL_FROM_DATABASE=MCP61 IDE (M4N68T series motherboard) + + pci:v000010DEd000003ECsv00001849sd000003EC* +- ID_MODEL_FROM_DATABASE=939NF6G-VSTA Board ++ ID_MODEL_FROM_DATABASE=MCP61 IDE (939NF6G-VSTA Board) + + pci:v000010DEd000003EE* + ID_MODEL_FROM_DATABASE=MCP61 Ethernet +@@ -23592,61 +23592,61 @@ pci:v000010DEd000003EF* + ID_MODEL_FROM_DATABASE=MCP61 Ethernet + + pci:v000010DEd000003EFsv00001025sd00008000* +- ID_MODEL_FROM_DATABASE=ET1350 ++ ID_MODEL_FROM_DATABASE=MCP61 Ethernet (ET1350) + + pci:v000010DEd000003EFsv00001028sd0000020E* +- ID_MODEL_FROM_DATABASE=Inspiron 531 ++ ID_MODEL_FROM_DATABASE=MCP61 Ethernet (Inspiron 531) + + pci:v000010DEd000003EFsv00001043sd000083A4* +- ID_MODEL_FROM_DATABASE=M4N68T series motherboard ++ ID_MODEL_FROM_DATABASE=MCP61 Ethernet (M4N68T series motherboard) + + pci:v000010DEd000003EFsv00001849sd000003EF* +- ID_MODEL_FROM_DATABASE=939NF6G-VSTA Board ++ ID_MODEL_FROM_DATABASE=MCP61 Ethernet (939NF6G-VSTA Board) + + pci:v000010DEd000003F0* + ID_MODEL_FROM_DATABASE=MCP61 High Definition Audio + + pci:v000010DEd000003F0sv00001028sd0000020E* +- ID_MODEL_FROM_DATABASE=Inspiron 531 ++ ID_MODEL_FROM_DATABASE=MCP61 High Definition Audio (Inspiron 531) + + pci:v000010DEd000003F0sv00001043sd00008415* +- ID_MODEL_FROM_DATABASE=M4N68T series motherboard ++ ID_MODEL_FROM_DATABASE=MCP61 High Definition Audio (M4N68T series motherboard) + + pci:v000010DEd000003F0sv00001849sd00000888* +- ID_MODEL_FROM_DATABASE=939NF6G-VSTA Board ++ ID_MODEL_FROM_DATABASE=MCP61 High Definition Audio (939NF6G-VSTA Board) + + pci:v000010DEd000003F1* + ID_MODEL_FROM_DATABASE=MCP61 USB 1.1 Controller + + pci:v000010DEd000003F1sv00001028sd0000020E* +- ID_MODEL_FROM_DATABASE=Inspiron 531 ++ ID_MODEL_FROM_DATABASE=MCP61 USB 1.1 Controller (Inspiron 531) + + pci:v000010DEd000003F1sv00001043sd000083A4* +- ID_MODEL_FROM_DATABASE=M4N68T series motherboard ++ ID_MODEL_FROM_DATABASE=MCP61 USB 1.1 Controller (M4N68T series motherboard) + + pci:v000010DEd000003F1sv00001849sd000003F1* +- ID_MODEL_FROM_DATABASE=939NF6G-VSTA Board ++ ID_MODEL_FROM_DATABASE=MCP61 USB 1.1 Controller (939NF6G-VSTA Board) + + pci:v000010DEd000003F2* + ID_MODEL_FROM_DATABASE=MCP61 USB 2.0 Controller + + pci:v000010DEd000003F2sv00001028sd0000020E* +- ID_MODEL_FROM_DATABASE=Inspiron 531 ++ ID_MODEL_FROM_DATABASE=MCP61 USB 2.0 Controller (Inspiron 531) + + pci:v000010DEd000003F2sv00001043sd000083A4* +- ID_MODEL_FROM_DATABASE=M4N68T series motherboard ++ ID_MODEL_FROM_DATABASE=MCP61 USB 2.0 Controller (M4N68T series motherboard) + + pci:v000010DEd000003F2sv00001849sd000003F2* +- ID_MODEL_FROM_DATABASE=939NF6G-VSTA Board ++ ID_MODEL_FROM_DATABASE=MCP61 USB 2.0 Controller (939NF6G-VSTA Board) + + pci:v000010DEd000003F3* + ID_MODEL_FROM_DATABASE=MCP61 PCI bridge + + pci:v000010DEd000003F3sv00001028sd0000020E* +- ID_MODEL_FROM_DATABASE=Inspiron 531 ++ ID_MODEL_FROM_DATABASE=MCP61 PCI bridge (Inspiron 531) + + pci:v000010DEd000003F3sv00001849sd000003F3* +- ID_MODEL_FROM_DATABASE=939NF6G-VSTA Board ++ ID_MODEL_FROM_DATABASE=MCP61 PCI bridge (939NF6G-VSTA Board) + + pci:v000010DEd000003F4* + ID_MODEL_FROM_DATABASE=MCP61 SMU +@@ -23655,25 +23655,25 @@ pci:v000010DEd000003F5* + ID_MODEL_FROM_DATABASE=MCP61 Memory Controller + + pci:v000010DEd000003F5sv00001028sd0000020E* +- ID_MODEL_FROM_DATABASE=Inspiron 531 ++ ID_MODEL_FROM_DATABASE=MCP61 Memory Controller (Inspiron 531) + + pci:v000010DEd000003F5sv00001043sd000083A4* +- ID_MODEL_FROM_DATABASE=M4N68T series motherboard ++ ID_MODEL_FROM_DATABASE=MCP61 Memory Controller (M4N68T series motherboard) + + pci:v000010DEd000003F5sv00001849sd000003EB* +- ID_MODEL_FROM_DATABASE=939NF6G-VSTA Board ++ ID_MODEL_FROM_DATABASE=MCP61 Memory Controller (939NF6G-VSTA Board) + + pci:v000010DEd000003F6* + ID_MODEL_FROM_DATABASE=MCP61 SATA Controller + + pci:v000010DEd000003F6sv00001028sd0000020E* +- ID_MODEL_FROM_DATABASE=Inspiron 531 ++ ID_MODEL_FROM_DATABASE=MCP61 SATA Controller (Inspiron 531) + + pci:v000010DEd000003F6sv00001043sd000083A4* +- ID_MODEL_FROM_DATABASE=M4N68T series motherboard ++ ID_MODEL_FROM_DATABASE=MCP61 SATA Controller (M4N68T series motherboard) + + pci:v000010DEd000003F6sv00001849sd000003F6* +- ID_MODEL_FROM_DATABASE=939NF6G-VSTA Board ++ ID_MODEL_FROM_DATABASE=MCP61 SATA Controller (939NF6G-VSTA Board) + + pci:v000010DEd000003F7* + ID_MODEL_FROM_DATABASE=MCP61 SATA Controller +@@ -23682,7 +23682,7 @@ pci:v000010DEd00000400* + ID_MODEL_FROM_DATABASE=G84 [GeForce 8600 GTS] + + pci:v000010DEd00000400sv00001043sd00008241* +- ID_MODEL_FROM_DATABASE=EN8600GTS ++ ID_MODEL_FROM_DATABASE=G84 [GeForce 8600 GTS] (EN8600GTS) + + pci:v000010DEd00000401* + ID_MODEL_FROM_DATABASE=G84 [GeForce 8600 GT] +@@ -23691,10 +23691,10 @@ pci:v000010DEd00000402* + ID_MODEL_FROM_DATABASE=G84 [GeForce 8600 GT] + + pci:v000010DEd00000402sv00001458sd00003455* +- ID_MODEL_FROM_DATABASE=GV-NX86T512H ++ ID_MODEL_FROM_DATABASE=G84 [GeForce 8600 GT] (GV-NX86T512H) + + pci:v000010DEd00000402sv00001462sd00000910* +- ID_MODEL_FROM_DATABASE=NX8600GT-T2D256EZ ++ ID_MODEL_FROM_DATABASE=G84 [GeForce 8600 GT] (NX8600GT-T2D256EZ) + + pci:v000010DEd00000403* + ID_MODEL_FROM_DATABASE=G84 [GeForce 8600 GS] +@@ -23703,7 +23703,7 @@ pci:v000010DEd00000404* + ID_MODEL_FROM_DATABASE=G84 [GeForce 8400 GS] + + pci:v000010DEd00000404sv00001462sd00001230* +- ID_MODEL_FROM_DATABASE=NX8400GS-TD256E ++ ID_MODEL_FROM_DATABASE=G84 [GeForce 8400 GS] (NX8400GS-TD256E) + + pci:v000010DEd00000405* + ID_MODEL_FROM_DATABASE=G84M [GeForce 9500M GS] +@@ -23730,7 +23730,7 @@ pci:v000010DEd0000040C* + ID_MODEL_FROM_DATABASE=G84GLM [Quadro FX 570M] + + pci:v000010DEd0000040Csv000017AAsd000020D9* +- ID_MODEL_FROM_DATABASE=ThinkPad T61p ++ ID_MODEL_FROM_DATABASE=G84GLM [Quadro FX 570M] (ThinkPad T61p) + + pci:v000010DEd0000040D* + ID_MODEL_FROM_DATABASE=G84GLM [Quadro FX 1600M] +@@ -23754,7 +23754,7 @@ pci:v000010DEd00000421* + ID_MODEL_FROM_DATABASE=G86 [GeForce 8500 GT] + + pci:v000010DEd00000421sv00001462sd00000960* +- ID_MODEL_FROM_DATABASE=NX8500GT-TD512EH/M2 ++ ID_MODEL_FROM_DATABASE=G86 [GeForce 8500 GT] (NX8500GT-TD512EH/M2) + + pci:v000010DEd00000422* + ID_MODEL_FROM_DATABASE=G86 [GeForce 8400 GS] +@@ -23769,7 +23769,7 @@ pci:v000010DEd00000425* + ID_MODEL_FROM_DATABASE=G86M [GeForce 8600M GS] + + pci:v000010DEd00000425sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Aspire 5920G ++ ID_MODEL_FROM_DATABASE=G86M [GeForce 8600M GS] (Aspire 5920G) + + pci:v000010DEd00000426* + ID_MODEL_FROM_DATABASE=G86M [GeForce 8400M GT] +@@ -23778,10 +23778,10 @@ pci:v000010DEd00000427* + ID_MODEL_FROM_DATABASE=G86M [GeForce 8400M GS] + + pci:v000010DEd00000427sv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=G86M [GeForce 8400M GS] (Pavilion dv6700) + + pci:v000010DEd00000427sv0000103Csd000030CF* +- ID_MODEL_FROM_DATABASE=Pavilion dv9668eg Laptop ++ ID_MODEL_FROM_DATABASE=G86M [GeForce 8400M GS] (Pavilion dv9668eg Laptop) + + pci:v000010DEd00000428* + ID_MODEL_FROM_DATABASE=G86M [GeForce 8400M G] +@@ -23790,7 +23790,7 @@ pci:v000010DEd00000429* + ID_MODEL_FROM_DATABASE=G86M [Quadro NVS 140M] + + pci:v000010DEd00000429sv000017AAsd000020D8* +- ID_MODEL_FROM_DATABASE=ThinkPad T61 ++ ID_MODEL_FROM_DATABASE=G86M [Quadro NVS 140M] (ThinkPad T61) + + pci:v000010DEd0000042A* + ID_MODEL_FROM_DATABASE=G86M [Quadro NVS 130M] +@@ -23820,7 +23820,7 @@ pci:v000010DEd00000442* + ID_MODEL_FROM_DATABASE=MCP65 LPC Bridge + + pci:v000010DEd00000442sv0000103Csd000030CF* +- ID_MODEL_FROM_DATABASE=Pavilion dv9668eg Laptop ++ ID_MODEL_FROM_DATABASE=MCP65 LPC Bridge (Pavilion dv9668eg Laptop) + + pci:v000010DEd00000443* + ID_MODEL_FROM_DATABASE=MCP65 LPC Bridge +@@ -23829,7 +23829,7 @@ pci:v000010DEd00000444* + ID_MODEL_FROM_DATABASE=MCP65 Memory Controller + + pci:v000010DEd00000444sv0000103Csd000030CF* +- ID_MODEL_FROM_DATABASE=Pavilion dv9668eg Laptop ++ ID_MODEL_FROM_DATABASE=MCP65 Memory Controller (Pavilion dv9668eg Laptop) + + pci:v000010DEd00000445* + ID_MODEL_FROM_DATABASE=MCP65 Memory Controller +@@ -23838,31 +23838,31 @@ pci:v000010DEd00000446* + ID_MODEL_FROM_DATABASE=MCP65 SMBus + + pci:v000010DEd00000446sv0000103Csd000030CF* +- ID_MODEL_FROM_DATABASE=Pavilion dv9668eg Laptop ++ ID_MODEL_FROM_DATABASE=MCP65 SMBus (Pavilion dv9668eg Laptop) + + pci:v000010DEd00000447* + ID_MODEL_FROM_DATABASE=MCP65 SMU + + pci:v000010DEd00000447sv0000103Csd000030CF* +- ID_MODEL_FROM_DATABASE=Pavilion dv9668eg Laptop ++ ID_MODEL_FROM_DATABASE=MCP65 SMU (Pavilion dv9668eg Laptop) + + pci:v000010DEd00000448* + ID_MODEL_FROM_DATABASE=MCP65 IDE + + pci:v000010DEd00000448sv0000103Csd000030CF* +- ID_MODEL_FROM_DATABASE=Pavilion dv9668eg Laptop ++ ID_MODEL_FROM_DATABASE=MCP65 IDE (Pavilion dv9668eg Laptop) + + pci:v000010DEd00000449* + ID_MODEL_FROM_DATABASE=MCP65 PCI bridge + + pci:v000010DEd00000449sv000010DEsd0000CB84* +- ID_MODEL_FROM_DATABASE=HP Pavilion dv9668eg Laptop ++ ID_MODEL_FROM_DATABASE=MCP65 PCI bridge (HP Pavilion dv9668eg Laptop) + + pci:v000010DEd0000044A* + ID_MODEL_FROM_DATABASE=MCP65 High Definition Audio + + pci:v000010DEd0000044Asv0000103Csd000030CF* +- ID_MODEL_FROM_DATABASE=Pavilion dv9668eg Laptop ++ ID_MODEL_FROM_DATABASE=MCP65 High Definition Audio (Pavilion dv9668eg Laptop) + + pci:v000010DEd0000044B* + ID_MODEL_FROM_DATABASE=MCP65 High Definition Audio +@@ -23883,7 +23883,7 @@ pci:v000010DEd00000450* + ID_MODEL_FROM_DATABASE=MCP65 Ethernet + + pci:v000010DEd00000450sv0000103Csd000030CF* +- ID_MODEL_FROM_DATABASE=Pavilion dv9668eg Laptop ++ ID_MODEL_FROM_DATABASE=MCP65 Ethernet (Pavilion dv9668eg Laptop) + + pci:v000010DEd00000451* + ID_MODEL_FROM_DATABASE=MCP65 Ethernet +@@ -23898,13 +23898,13 @@ pci:v000010DEd00000454* + ID_MODEL_FROM_DATABASE=MCP65 USB 1.1 OHCI Controller + + pci:v000010DEd00000454sv0000103Csd000030CF* +- ID_MODEL_FROM_DATABASE=Pavilion dv9668eg Laptop ++ ID_MODEL_FROM_DATABASE=MCP65 USB 1.1 OHCI Controller (Pavilion dv9668eg Laptop) + + pci:v000010DEd00000455* + ID_MODEL_FROM_DATABASE=MCP65 USB 2.0 EHCI Controller + + pci:v000010DEd00000455sv0000103Csd000030CF* +- ID_MODEL_FROM_DATABASE=Pavilion dv9668eg Laptop ++ ID_MODEL_FROM_DATABASE=MCP65 USB 2.0 EHCI Controller (Pavilion dv9668eg Laptop) + + pci:v000010DEd00000456* + ID_MODEL_FROM_DATABASE=MCP65 USB Controller +@@ -23943,7 +23943,7 @@ pci:v000010DEd0000045D* + ID_MODEL_FROM_DATABASE=MCP65 SATA Controller + + pci:v000010DEd0000045Dsv0000103Csd000030CF* +- ID_MODEL_FROM_DATABASE=Pavilion dv9668eg Laptop ++ ID_MODEL_FROM_DATABASE=MCP65 SATA Controller (Pavilion dv9668eg Laptop) + + pci:v000010DEd0000045E* + ID_MODEL_FROM_DATABASE=MCP65 SATA Controller +@@ -23964,7 +23964,7 @@ pci:v000010DEd0000053B* + ID_MODEL_FROM_DATABASE=C68 [GeForce 7050 PV / nForce 630a] + + pci:v000010DEd0000053Bsv00001043sd00008308* +- ID_MODEL_FROM_DATABASE=M2N68-AM Motherbord ++ ID_MODEL_FROM_DATABASE=C68 [GeForce 7050 PV / nForce 630a] (M2N68-AM Motherbord) + + pci:v000010DEd0000053E* + ID_MODEL_FROM_DATABASE=C68 [GeForce 7025 / nForce 630a] +@@ -23976,7 +23976,7 @@ pci:v000010DEd00000542* + ID_MODEL_FROM_DATABASE=MCP67 SMBus + + pci:v000010DEd00000542sv00001043sd00008308* +- ID_MODEL_FROM_DATABASE=M2N68-AM Motherbord ++ ID_MODEL_FROM_DATABASE=MCP67 SMBus (M2N68-AM Motherbord) + + pci:v000010DEd00000543* + ID_MODEL_FROM_DATABASE=MCP67 Co-processor +@@ -23985,25 +23985,25 @@ pci:v000010DEd00000547* + ID_MODEL_FROM_DATABASE=MCP67 Memory Controller + + pci:v000010DEd00000547sv00001043sd00008308* +- ID_MODEL_FROM_DATABASE=M2N68-AM Motherbord ++ ID_MODEL_FROM_DATABASE=MCP67 Memory Controller (M2N68-AM Motherbord) + + pci:v000010DEd00000547sv00001849sd00000547* +- ID_MODEL_FROM_DATABASE=ALiveNF7G-HDready ++ ID_MODEL_FROM_DATABASE=MCP67 Memory Controller (ALiveNF7G-HDready) + + pci:v000010DEd00000548* + ID_MODEL_FROM_DATABASE=MCP67 ISA Bridge + + pci:v000010DEd00000548sv00001043sd00008308* +- ID_MODEL_FROM_DATABASE=M2N68-AM Motherboard ++ ID_MODEL_FROM_DATABASE=MCP67 ISA Bridge (M2N68-AM Motherboard) + + pci:v000010DEd0000054C* + ID_MODEL_FROM_DATABASE=MCP67 Ethernet + + pci:v000010DEd0000054Csv00001043sd00008308* +- ID_MODEL_FROM_DATABASE=M2N68-AM Motherbord ++ ID_MODEL_FROM_DATABASE=MCP67 Ethernet (M2N68-AM Motherbord) + + pci:v000010DEd0000054Csv00001849sd0000054C* +- ID_MODEL_FROM_DATABASE=ALiveNF7G-HDready, MCP67 Gigabit Ethernet ++ ID_MODEL_FROM_DATABASE=MCP67 Ethernet (ALiveNF7G-HDready, MCP67 Gigabit Ethernet) + + pci:v000010DEd0000054D* + ID_MODEL_FROM_DATABASE=MCP67 Ethernet +@@ -24018,25 +24018,25 @@ pci:v000010DEd00000550* + ID_MODEL_FROM_DATABASE=MCP67 AHCI Controller + + pci:v000010DEd00000550sv00001043sd00008308* +- ID_MODEL_FROM_DATABASE=M2N68-AM Motherboard ++ ID_MODEL_FROM_DATABASE=MCP67 AHCI Controller (M2N68-AM Motherboard) + + pci:v000010DEd00000554* + ID_MODEL_FROM_DATABASE=MCP67 AHCI Controller + + pci:v000010DEd00000554sv00001043sd00008308* +- ID_MODEL_FROM_DATABASE=M2N68-AM Motherboard ++ ID_MODEL_FROM_DATABASE=MCP67 AHCI Controller (M2N68-AM Motherboard) + + pci:v000010DEd00000555* + ID_MODEL_FROM_DATABASE=MCP67 SATA Controller + + pci:v000010DEd00000555sv00001043sd00008308* +- ID_MODEL_FROM_DATABASE=M2N68-AM Motherboard ++ ID_MODEL_FROM_DATABASE=MCP67 SATA Controller (M2N68-AM Motherboard) + + pci:v000010DEd0000055C* + ID_MODEL_FROM_DATABASE=MCP67 High Definition Audio + + pci:v000010DEd0000055Csv00001043sd00008290* +- ID_MODEL_FROM_DATABASE=M2N68-AM Motherboard ++ ID_MODEL_FROM_DATABASE=MCP67 High Definition Audio (M2N68-AM Motherboard) + + pci:v000010DEd0000055D* + ID_MODEL_FROM_DATABASE=MCP67 High Definition Audio +@@ -24045,19 +24045,19 @@ pci:v000010DEd0000055E* + ID_MODEL_FROM_DATABASE=MCP67 OHCI USB 1.1 Controller + + pci:v000010DEd0000055Esv00001043sd00008308* +- ID_MODEL_FROM_DATABASE=M2N68-AM Motherboard ++ ID_MODEL_FROM_DATABASE=MCP67 OHCI USB 1.1 Controller (M2N68-AM Motherboard) + + pci:v000010DEd0000055F* + ID_MODEL_FROM_DATABASE=MCP67 EHCI USB 2.0 Controller + + pci:v000010DEd0000055Fsv00001043sd00008308* +- ID_MODEL_FROM_DATABASE=M2N68-AM Motherboard ++ ID_MODEL_FROM_DATABASE=MCP67 EHCI USB 2.0 Controller (M2N68-AM Motherboard) + + pci:v000010DEd00000560* + ID_MODEL_FROM_DATABASE=MCP67 IDE Controller + + pci:v000010DEd00000560sv0000F043sd00008308* +- ID_MODEL_FROM_DATABASE=M2N68-AM Motherboard ++ ID_MODEL_FROM_DATABASE=MCP67 IDE Controller (M2N68-AM Motherboard) + + pci:v000010DEd00000561* + ID_MODEL_FROM_DATABASE=MCP67 PCI Bridge +@@ -24066,7 +24066,7 @@ pci:v000010DEd00000562* + ID_MODEL_FROM_DATABASE=MCP67 PCI Express Bridge + + pci:v000010DEd00000562sv00001849sd00000562* +- ID_MODEL_FROM_DATABASE=ALiveNF7G-HDready ++ ID_MODEL_FROM_DATABASE=MCP67 PCI Express Bridge (ALiveNF7G-HDready) + + pci:v000010DEd00000563* + ID_MODEL_FROM_DATABASE=MCP67 PCI Express Bridge +@@ -24075,64 +24075,64 @@ pci:v000010DEd00000568* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Memory Controller + + pci:v000010DEd00000568sv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Memory Controller (Pavilion p6310f) + + pci:v000010DEd00000568sv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Memory Controller (M3N72-D) + + pci:v000010DEd00000568sv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Memory Controller (K9N2GM-FIH) + + pci:v000010DEd00000568sv00001849sd00000568* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 Memory Controller ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Memory Controller (K10N78FullHD-hSLI R3.0 Memory Controller) + + pci:v000010DEd00000569* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Express Bridge + + pci:v000010DEd00000569sv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Express Bridge (Pavilion p6310f) + + pci:v000010DEd00000569sv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Express Bridge (M3N72-D) + + pci:v000010DEd00000569sv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Express Bridge (K9N2GM-FIH) + + pci:v000010DEd00000569sv00001849sd00000569* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 PCI Express Bridge ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Express Bridge (K10N78FullHD-hSLI R3.0 PCI Express Bridge) + + pci:v000010DEd0000056A* + ID_MODEL_FROM_DATABASE=MCP73 [nForce 630i] USB 2.0 Controller (EHCI) + + pci:v000010DEd0000056Asv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=MCP73 [nForce 630i] USB 2.0 Controller (EHCI) (MCP73PVT-SM) + + pci:v000010DEd0000056C* + ID_MODEL_FROM_DATABASE=MCP73 IDE + + pci:v000010DEd0000056Csv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=MCP73 IDE (MCP73PVT-SM) + + pci:v000010DEd0000056Csv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=MCP73 IDE (JW-IN7150-HD) + + pci:v000010DEd0000056D* + ID_MODEL_FROM_DATABASE=MCP73 PCI Express bridge + + pci:v000010DEd0000056Dsv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=MCP73 PCI Express bridge (MCP73PVT-SM) + + pci:v000010DEd0000056E* + ID_MODEL_FROM_DATABASE=MCP73 PCI Express bridge + + pci:v000010DEd0000056Esv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=MCP73 PCI Express bridge (MCP73PVT-SM) + + pci:v000010DEd0000056F* + ID_MODEL_FROM_DATABASE=MCP73 PCI Express bridge + + pci:v000010DEd0000056Fsv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=MCP73 PCI Express bridge (MCP73PVT-SM) + + pci:v000010DEd000005B1* + ID_MODEL_FROM_DATABASE=NF200 PCIe 2.0 switch +@@ -24156,7 +24156,7 @@ pci:v000010DEd000005E3* + ID_MODEL_FROM_DATABASE=GT200b [GeForce GTX 285] + + pci:v000010DEd000005E3sv00001682sd00002490* +- ID_MODEL_FROM_DATABASE=GX-285N-ZDF ++ ID_MODEL_FROM_DATABASE=GT200b [GeForce GTX 285] (GX-285N-ZDF) + + pci:v000010DEd000005E6* + ID_MODEL_FROM_DATABASE=GT200b [GeForce GTX 275] +@@ -24165,19 +24165,19 @@ pci:v000010DEd000005E7* + ID_MODEL_FROM_DATABASE=GT200GL [Tesla C1060 / M1060] + + pci:v000010DEd000005E7sv000010DEsd00000595* +- ID_MODEL_FROM_DATABASE=Tesla T10 Processor ++ ID_MODEL_FROM_DATABASE=GT200GL [Tesla C1060 / M1060] (Tesla T10 Processor) + + pci:v000010DEd000005E7sv000010DEsd0000068F* +- ID_MODEL_FROM_DATABASE=Tesla T10 Processor ++ ID_MODEL_FROM_DATABASE=GT200GL [Tesla C1060 / M1060] (Tesla T10 Processor) + + pci:v000010DEd000005E7sv000010DEsd00000697* +- ID_MODEL_FROM_DATABASE=Tesla M1060 ++ ID_MODEL_FROM_DATABASE=GT200GL [Tesla C1060 / M1060] (Tesla M1060) + + pci:v000010DEd000005E7sv000010DEsd00000714* +- ID_MODEL_FROM_DATABASE=Tesla M1060 ++ ID_MODEL_FROM_DATABASE=GT200GL [Tesla C1060 / M1060] (Tesla M1060) + + pci:v000010DEd000005E7sv000010DEsd00000743* +- ID_MODEL_FROM_DATABASE=Tesla M1060 ++ ID_MODEL_FROM_DATABASE=GT200GL [Tesla C1060 / M1060] (Tesla M1060) + + pci:v000010DEd000005EA* + ID_MODEL_FROM_DATABASE=GT200 [GeForce GTX 260] +@@ -24240,7 +24240,7 @@ pci:v000010DEd00000609* + ID_MODEL_FROM_DATABASE=G92M [GeForce 8800M GTS] + + pci:v000010DEd00000609sv0000106Bsd000000A7* +- ID_MODEL_FROM_DATABASE=GeForce 8800 GS ++ ID_MODEL_FROM_DATABASE=G92M [GeForce 8800M GTS] (GeForce 8800 GS) + + pci:v000010DEd0000060A* + ID_MODEL_FROM_DATABASE=G92M [GeForce GTX 280M] +@@ -24261,16 +24261,16 @@ pci:v000010DEd00000610* + ID_MODEL_FROM_DATABASE=G92 [GeForce 9600 GSO] + + pci:v000010DEd00000610sv00001682sd00002385* +- ID_MODEL_FROM_DATABASE=GeForce 9600 GSO 768mb ++ ID_MODEL_FROM_DATABASE=G92 [GeForce 9600 GSO] (GeForce 9600 GSO 768mb) + + pci:v000010DEd00000611* + ID_MODEL_FROM_DATABASE=G92 [GeForce 8800 GT] + + pci:v000010DEd00000611sv0000107Dsd00002AB0* +- ID_MODEL_FROM_DATABASE=Winfast PX8800 GT PCI-E ++ ID_MODEL_FROM_DATABASE=G92 [GeForce 8800 GT] (Winfast PX8800 GT PCI-E) + + pci:v000010DEd00000611sv000019DAsd00001040* +- ID_MODEL_FROM_DATABASE=ZT-88TES2P-FSP ++ ID_MODEL_FROM_DATABASE=G92 [GeForce 8800 GT] (ZT-88TES2P-FSP) + + pci:v000010DEd00000612* + ID_MODEL_FROM_DATABASE=G92 [GeForce 9800 GTX / 9800 GTX+] +@@ -24282,22 +24282,22 @@ pci:v000010DEd00000614* + ID_MODEL_FROM_DATABASE=G92 [GeForce 9800 GT] + + pci:v000010DEd00000614sv0000107Dsd00002AB3* +- ID_MODEL_FROM_DATABASE=WinFast PX9800 GT (S-Fanpipe) ++ ID_MODEL_FROM_DATABASE=G92 [GeForce 9800 GT] (WinFast PX9800 GT (S-Fanpipe)) + + pci:v000010DEd00000615* + ID_MODEL_FROM_DATABASE=G92 [GeForce GTS 250] + + pci:v000010DEd00000615sv00003842sd00001150* +- ID_MODEL_FROM_DATABASE=GeForce GTS 250 P/N 512-P3-1150-TR ++ ID_MODEL_FROM_DATABASE=G92 [GeForce GTS 250] (GeForce GTS 250 P/N 512-P3-1150-TR) + + pci:v000010DEd00000615sv00003842sd00001151* +- ID_MODEL_FROM_DATABASE=GeForce GTS 250 P/N 512-P3-1151-TR ++ ID_MODEL_FROM_DATABASE=G92 [GeForce GTS 250] (GeForce GTS 250 P/N 512-P3-1151-TR) + + pci:v000010DEd00000615sv00003842sd00001155* +- ID_MODEL_FROM_DATABASE=GeForce GTS 250 P/N 01G-P3-1155-TR ++ ID_MODEL_FROM_DATABASE=G92 [GeForce GTS 250] (GeForce GTS 250 P/N 01G-P3-1155-TR) + + pci:v000010DEd00000615sv00003842sd00001156* +- ID_MODEL_FROM_DATABASE=GeForce GTS 250 P/N 01G-P3-1156-TR ++ ID_MODEL_FROM_DATABASE=G92 [GeForce GTS 250] (GeForce GTS 250 P/N 01G-P3-1156-TR) + + pci:v000010DEd00000617* + ID_MODEL_FROM_DATABASE=G92M [GeForce 9800M GTX] +@@ -24336,10 +24336,10 @@ pci:v000010DEd00000622* + ID_MODEL_FROM_DATABASE=G94 [GeForce 9600 GT] + + pci:v000010DEd00000622sv0000107Dsd00002AC1* +- ID_MODEL_FROM_DATABASE=WinFast PX9600GT 1024MB ++ ID_MODEL_FROM_DATABASE=G94 [GeForce 9600 GT] (WinFast PX9600GT 1024MB) + + pci:v000010DEd00000622sv00001458sd00003481* +- ID_MODEL_FROM_DATABASE=GV-NX96T512HP ++ ID_MODEL_FROM_DATABASE=G94 [GeForce 9600 GT] (GV-NX96T512HP) + + pci:v000010DEd00000623* + ID_MODEL_FROM_DATABASE=G94 [GeForce 9600 GS] +@@ -24375,7 +24375,7 @@ pci:v000010DEd0000062E* + ID_MODEL_FROM_DATABASE=G94 [GeForce 9600 GT] + + pci:v000010DEd0000062Esv0000106Bsd00000605* +- ID_MODEL_FROM_DATABASE=GeForce GT 130 ++ ID_MODEL_FROM_DATABASE=G94 [GeForce 9600 GT] (GeForce GT 130) + + pci:v000010DEd0000062F* + ID_MODEL_FROM_DATABASE=G94 [GeForce 9800 S] +@@ -24435,7 +24435,7 @@ pci:v000010DEd00000649* + ID_MODEL_FROM_DATABASE=G96M [GeForce 9600M GT] + + pci:v000010DEd00000649sv00001043sd0000202D* +- ID_MODEL_FROM_DATABASE=GeForce GT 220M ++ ID_MODEL_FROM_DATABASE=G96M [GeForce 9600M GT] (GeForce GT 220M) + + pci:v000010DEd0000064A* + ID_MODEL_FROM_DATABASE=G96M [GeForce 9700M GT] +@@ -24459,7 +24459,7 @@ pci:v000010DEd00000652* + ID_MODEL_FROM_DATABASE=G96M [GeForce GT 130M] + + pci:v000010DEd00000652sv0000152Dsd00000850* +- ID_MODEL_FROM_DATABASE=GeForce GT 240M LE ++ ID_MODEL_FROM_DATABASE=G96M [GeForce GT 130M] (GeForce GT 240M LE) + + pci:v000010DEd00000653* + ID_MODEL_FROM_DATABASE=G96M [GeForce GT 120M] +@@ -24468,10 +24468,10 @@ pci:v000010DEd00000654* + ID_MODEL_FROM_DATABASE=G96M [GeForce GT 220M] + + pci:v000010DEd00000654sv00001043sd000014A2* +- ID_MODEL_FROM_DATABASE=GeForce GT 320M ++ ID_MODEL_FROM_DATABASE=G96M [GeForce GT 220M] (GeForce GT 320M) + + pci:v000010DEd00000654sv00001043sd000014D2* +- ID_MODEL_FROM_DATABASE=GeForce GT 320M ++ ID_MODEL_FROM_DATABASE=G96M [GeForce GT 220M] (GeForce GT 320M) + + pci:v000010DEd00000655* + ID_MODEL_FROM_DATABASE=G96 [GeForce GT 120] +@@ -24519,28 +24519,28 @@ pci:v000010DEd000006D1* + ID_MODEL_FROM_DATABASE=GF100GL [Tesla C2050 / C2070] + + pci:v000010DEd000006D1sv000010DEsd00000771* +- ID_MODEL_FROM_DATABASE=Tesla C2050 ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla C2050 / C2070] (Tesla C2050) + + pci:v000010DEd000006D1sv000010DEsd00000772* +- ID_MODEL_FROM_DATABASE=Tesla C2070 ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla C2050 / C2070] (Tesla C2070) + + pci:v000010DEd000006D2* + ID_MODEL_FROM_DATABASE=GF100GL [Tesla M2070] + + pci:v000010DEd000006D2sv000010DEsd00000774* +- ID_MODEL_FROM_DATABASE=Tesla M2070 ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla M2070] (Tesla M2070) + + pci:v000010DEd000006D2sv000010DEsd00000830* +- ID_MODEL_FROM_DATABASE=Tesla M2070 ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla M2070] (Tesla M2070) + + pci:v000010DEd000006D2sv000010DEsd00000842* +- ID_MODEL_FROM_DATABASE=Tesla M2070 ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla M2070] (Tesla M2070) + + pci:v000010DEd000006D2sv000010DEsd0000088F* +- ID_MODEL_FROM_DATABASE=Tesla X2070 ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla M2070] (Tesla X2070) + + pci:v000010DEd000006D2sv000010DEsd00000908* +- ID_MODEL_FROM_DATABASE=Tesla M2070 ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla M2070] (Tesla M2070) + + pci:v000010DEd000006D8* + ID_MODEL_FROM_DATABASE=GF100GL [Quadro 6000] +@@ -24561,37 +24561,37 @@ pci:v000010DEd000006DE* + ID_MODEL_FROM_DATABASE=GF100GL [Tesla T20 Processor] + + pci:v000010DEd000006DEsv000010DEsd00000773* +- ID_MODEL_FROM_DATABASE=Tesla S2050 ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla T20 Processor] (Tesla S2050) + + pci:v000010DEd000006DEsv000010DEsd0000082F* +- ID_MODEL_FROM_DATABASE=Tesla M2050 ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla T20 Processor] (Tesla M2050) + + pci:v000010DEd000006DEsv000010DEsd00000840* +- ID_MODEL_FROM_DATABASE=Tesla X2070 ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla T20 Processor] (Tesla X2070) + + pci:v000010DEd000006DEsv000010DEsd00000842* +- ID_MODEL_FROM_DATABASE=Tesla M2050 ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla T20 Processor] (Tesla M2050) + + pci:v000010DEd000006DEsv000010DEsd00000846* +- ID_MODEL_FROM_DATABASE=Tesla M2050 ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla T20 Processor] (Tesla M2050) + + pci:v000010DEd000006DEsv000010DEsd00000866* +- ID_MODEL_FROM_DATABASE=Tesla M2050 ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla T20 Processor] (Tesla M2050) + + pci:v000010DEd000006DEsv000010DEsd00000907* +- ID_MODEL_FROM_DATABASE=Tesla M2050 ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla T20 Processor] (Tesla M2050) + + pci:v000010DEd000006DEsv000010DEsd0000091E* +- ID_MODEL_FROM_DATABASE=Tesla M2050 ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla T20 Processor] (Tesla M2050) + + pci:v000010DEd000006DF* + ID_MODEL_FROM_DATABASE=GF100GL [Tesla M2070-Q] + + pci:v000010DEd000006DFsv000010DEsd0000084D* +- ID_MODEL_FROM_DATABASE=Tesla M2070-Q ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla M2070-Q] (Tesla M2070-Q) + + pci:v000010DEd000006DFsv000010DEsd0000087F* +- ID_MODEL_FROM_DATABASE=Tesla M2070-Q ++ ID_MODEL_FROM_DATABASE=GF100GL [Tesla M2070-Q] (Tesla M2070-Q) + + pci:v000010DEd000006E0* + ID_MODEL_FROM_DATABASE=G98 [GeForce 9300 GE] +@@ -24609,7 +24609,7 @@ pci:v000010DEd000006E4* + ID_MODEL_FROM_DATABASE=G98 [GeForce 8400 GS Rev. 2] + + pci:v000010DEd000006E4sv00001458sd00003475* +- ID_MODEL_FROM_DATABASE=GV-NX84S256HE [GeForce 8400 GS] ++ ID_MODEL_FROM_DATABASE=G98 [GeForce 8400 GS Rev. 2] (GV-NX84S256HE [GeForce 8400 GS]) + + pci:v000010DEd000006E5* + ID_MODEL_FROM_DATABASE=G98M [GeForce 9300M GS] +@@ -24624,13 +24624,13 @@ pci:v000010DEd000006E8* + ID_MODEL_FROM_DATABASE=G98M [GeForce 9200M GS] + + pci:v000010DEd000006E8sv0000103Csd0000360B* +- ID_MODEL_FROM_DATABASE=GeForce 9200M GE ++ ID_MODEL_FROM_DATABASE=G98M [GeForce 9200M GS] (GeForce 9200M GE) + + pci:v000010DEd000006E9* + ID_MODEL_FROM_DATABASE=G98M [GeForce 9300M GS] + + pci:v000010DEd000006E9sv00001043sd000019B2* +- ID_MODEL_FROM_DATABASE=U6V laptop ++ ID_MODEL_FROM_DATABASE=G98M [GeForce 9300M GS] (U6V laptop) + + pci:v000010DEd000006EA* + ID_MODEL_FROM_DATABASE=G98M [Quadro NVS 150M] +@@ -24672,139 +24672,139 @@ pci:v000010DEd000006FF* + ID_MODEL_FROM_DATABASE=G98 [HICx16 + Graphics] + + pci:v000010DEd000006FFsv000010DEsd00000711* +- ID_MODEL_FROM_DATABASE=HICx8 + Graphics ++ ID_MODEL_FROM_DATABASE=G98 [HICx16 + Graphics] (HICx8 + Graphics) + + pci:v000010DEd00000751* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Memory Controller + + pci:v000010DEd00000751sv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Memory Controller (Pavilion p6310f) + + pci:v000010DEd00000751sv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Memory Controller (M3N72-D) + + pci:v000010DEd00000751sv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Memory Controller (K9N2GM-FIH) + + pci:v000010DEd00000751sv00001849sd00000751* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 Memory Controller ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Memory Controller (K10N78FullHD-hSLI R3.0 Memory Controller) + + pci:v000010DEd00000752* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] SMBus + + pci:v000010DEd00000752sv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] SMBus (Pavilion p6310f) + + pci:v000010DEd00000752sv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] SMBus (M3N72-D) + + pci:v000010DEd00000752sv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] SMBus (K9N2GM-FIH) + + pci:v000010DEd00000752sv00001849sd00000752* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 SMBus ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] SMBus (K10N78FullHD-hSLI R3.0 SMBus) + + pci:v000010DEd00000753* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Co-Processor + + pci:v000010DEd00000753sv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Co-Processor (Pavilion p6310f) + + pci:v000010DEd00000753sv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Co-Processor (M3N72-D) + + pci:v000010DEd00000753sv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Co-Processor (K9N2GM-FIH) + + pci:v000010DEd00000753sv00001849sd00000753* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 Co-Processor ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Co-Processor (K10N78FullHD-hSLI R3.0 Co-Processor) + + pci:v000010DEd00000754* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Memory Controller + + pci:v000010DEd00000754sv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Memory Controller (Pavilion p6310f) + + pci:v000010DEd00000754sv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Memory Controller (M3N72-D) + + pci:v000010DEd00000754sv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Memory Controller (K9N2GM-FIH) + + pci:v000010DEd00000754sv00001849sd00000754* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 Memory Controller ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] Memory Controller (K10N78FullHD-hSLI R3.0 Memory Controller) + + pci:v000010DEd00000759* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] IDE + + pci:v000010DEd00000759sv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] IDE (M3N72-D) + + pci:v000010DEd00000759sv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] IDE (K9N2GM-FIH) + + pci:v000010DEd00000759sv00001849sd00000759* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 IDE ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] IDE (K10N78FullHD-hSLI R3.0 IDE) + + pci:v000010DEd0000075A* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Bridge + + pci:v000010DEd0000075Asv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Bridge (Pavilion p6310f) + + pci:v000010DEd0000075Asv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Bridge (M3N72-D) + + pci:v000010DEd0000075Asv00001849sd0000075A* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 PCI Bridge ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Bridge (K10N78FullHD-hSLI R3.0 PCI Bridge) + + pci:v000010DEd0000075B* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Express Bridge + + pci:v000010DEd0000075Bsv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Express Bridge (Pavilion p6310f) + + pci:v000010DEd0000075Bsv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Express Bridge (M3N72-D) + + pci:v000010DEd0000075Bsv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Express Bridge (K9N2GM-FIH) + + pci:v000010DEd0000075Bsv00001849sd0000075B* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 PCI Express Bridge ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Express Bridge (K10N78FullHD-hSLI R3.0 PCI Express Bridge) + + pci:v000010DEd0000075C* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] LPC Bridge + + pci:v000010DEd0000075Csv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] LPC Bridge (Pavilion p6310f) + + pci:v000010DEd0000075Csv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] LPC Bridge (K9N2GM-FIH) + + pci:v000010DEd0000075Csv00001849sd0000075C* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 LPC Bridge ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] LPC Bridge (K10N78FullHD-hSLI R3.0 LPC Bridge) + + pci:v000010DEd0000075D* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] LPC Bridge + + pci:v000010DEd0000075Dsv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] LPC Bridge (M3N72-D) + + pci:v000010DEd00000760* + ID_MODEL_FROM_DATABASE=MCP77 Ethernet + + pci:v000010DEd00000760sv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP77 Ethernet (Pavilion p6310f) + + pci:v000010DEd00000760sv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP77 Ethernet (M3N72-D) + + pci:v000010DEd00000760sv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP77 Ethernet (K9N2GM-FIH) + + pci:v000010DEd00000760sv00001849sd00000760* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 Ethernet ++ ID_MODEL_FROM_DATABASE=MCP77 Ethernet (K10N78FullHD-hSLI R3.0 Ethernet) + + pci:v000010DEd00000761* + ID_MODEL_FROM_DATABASE=MCP77 Ethernet +@@ -24819,118 +24819,118 @@ pci:v000010DEd00000774* + ID_MODEL_FROM_DATABASE=MCP72XE/MCP72P/MCP78U/MCP78S High Definition Audio + + pci:v000010DEd00000774sv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP72XE/MCP72P/MCP78U/MCP78S High Definition Audio (Pavilion p6310f) + + pci:v000010DEd00000774sv00001043sd000082FE* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP72XE/MCP72P/MCP78U/MCP78S High Definition Audio (M3N72-D) + + pci:v000010DEd00000774sv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP72XE/MCP72P/MCP78U/MCP78S High Definition Audio (K9N2GM-FIH) + + pci:v000010DEd00000774sv00001849sd00003662* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 High Definition Audio ++ ID_MODEL_FROM_DATABASE=MCP72XE/MCP72P/MCP78U/MCP78S High Definition Audio (K10N78FullHD-hSLI R3.0 High Definition Audio) + + pci:v000010DEd00000778* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Express Bridge + + pci:v000010DEd00000778sv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Express Bridge (Pavilion p6310f) + + pci:v000010DEd00000778sv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Express Bridge (M3N72-D) + + pci:v000010DEd00000778sv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Express Bridge (K9N2GM-FIH) + + pci:v000010DEd00000778sv00001849sd00000778* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 PCI Express Bridge ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Express Bridge (K10N78FullHD-hSLI R3.0 PCI Express Bridge) + + pci:v000010DEd0000077A* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Bridge + + pci:v000010DEd0000077Asv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Bridge (Pavilion p6310f) + + pci:v000010DEd0000077Asv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Bridge (M3N72-D) + + pci:v000010DEd0000077Asv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Bridge (K9N2GM-FIH) + + pci:v000010DEd0000077Asv00001849sd0000077A* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 PCI Bridge ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] PCI Bridge (K10N78FullHD-hSLI R3.0 PCI Bridge) + + pci:v000010DEd0000077B* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] OHCI USB 1.1 Controller + + pci:v000010DEd0000077Bsv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] OHCI USB 1.1 Controller (Pavilion p6310f) + + pci:v000010DEd0000077Bsv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] OHCI USB 1.1 Controller (M3N72-D) + + pci:v000010DEd0000077Bsv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] OHCI USB 1.1 Controller (K9N2GM-FIH) + + pci:v000010DEd0000077Bsv00001849sd0000077B* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 OHCI USB 1.1 Controller ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] OHCI USB 1.1 Controller (K10N78FullHD-hSLI R3.0 OHCI USB 1.1 Controller) + + pci:v000010DEd0000077C* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] EHCI USB 2.0 Controller + + pci:v000010DEd0000077Csv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] EHCI USB 2.0 Controller (Pavilion p6310f) + + pci:v000010DEd0000077Csv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] EHCI USB 2.0 Controller (M3N72-D) + + pci:v000010DEd0000077Csv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] EHCI USB 2.0 Controller (K9N2GM-FIH) + + pci:v000010DEd0000077Csv00001849sd0000077C* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 EHCI USB 2.0 Controller ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] EHCI USB 2.0 Controller (K10N78FullHD-hSLI R3.0 EHCI USB 2.0 Controller) + + pci:v000010DEd0000077D* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] OHCI USB 1.1 Controller + + pci:v000010DEd0000077Dsv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] OHCI USB 1.1 Controller (Pavilion p6310f) + + pci:v000010DEd0000077Dsv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] OHCI USB 1.1 Controller (M3N72-D) + + pci:v000010DEd0000077Dsv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] OHCI USB 1.1 Controller (K9N2GM-FIH) + + pci:v000010DEd0000077Dsv00001849sd0000077D* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 OHCI USB 1.1 Controller ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] OHCI USB 1.1 Controller (K10N78FullHD-hSLI R3.0 OHCI USB 1.1 Controller) + + pci:v000010DEd0000077E* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] EHCI USB 2.0 Controller + + pci:v000010DEd0000077Esv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] EHCI USB 2.0 Controller (Pavilion p6310f) + + pci:v000010DEd0000077Esv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] EHCI USB 2.0 Controller (M3N72-D) + + pci:v000010DEd0000077Esv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] EHCI USB 2.0 Controller (K9N2GM-FIH) + + pci:v000010DEd0000077Esv00001849sd0000077E* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 EHCI USB 2.0 Controller ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] EHCI USB 2.0 Controller (K10N78FullHD-hSLI R3.0 EHCI USB 2.0 Controller) + + pci:v000010DEd000007C0* + ID_MODEL_FROM_DATABASE=MCP73 Host Bridge + + pci:v000010DEd000007C0sv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=MCP73 Host Bridge (JW-IN7150-HD) + + pci:v000010DEd000007C1* + ID_MODEL_FROM_DATABASE=MCP73 Host Bridge + + pci:v000010DEd000007C1sv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=MCP73 Host Bridge (MCP73PVT-SM) + + pci:v000010DEd000007C2* + ID_MODEL_FROM_DATABASE=MCP73 Host Bridge +@@ -24942,124 +24942,124 @@ pci:v000010DEd000007C8* + ID_MODEL_FROM_DATABASE=MCP73 Memory Controller + + pci:v000010DEd000007C8sv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=MCP73 Memory Controller (MCP73PVT-SM) + + pci:v000010DEd000007C8sv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=MCP73 Memory Controller (JW-IN7150-HD) + + pci:v000010DEd000007CB* + ID_MODEL_FROM_DATABASE=nForce 630i memory controller + + pci:v000010DEd000007CBsv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (MCP73PVT-SM) + + pci:v000010DEd000007CBsv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (JW-IN7150-HD) + + pci:v000010DEd000007CD* + ID_MODEL_FROM_DATABASE=nForce 630i memory controller + + pci:v000010DEd000007CDsv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (MCP73PVT-SM) + + pci:v000010DEd000007CDsv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (JW-IN7150-HD) + + pci:v000010DEd000007CE* + ID_MODEL_FROM_DATABASE=nForce 630i memory controller + + pci:v000010DEd000007CEsv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (MCP73PVT-SM) + + pci:v000010DEd000007CEsv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (JW-IN7150-HD) + + pci:v000010DEd000007CF* + ID_MODEL_FROM_DATABASE=nForce 630i memory controller + + pci:v000010DEd000007CFsv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (MCP73PVT-SM) + + pci:v000010DEd000007CFsv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (JW-IN7150-HD) + + pci:v000010DEd000007D0* + ID_MODEL_FROM_DATABASE=nForce 630i memory controller + + pci:v000010DEd000007D0sv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (MCP73PVT-SM) + + pci:v000010DEd000007D0sv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (JW-IN7150-HD) + + pci:v000010DEd000007D1* + ID_MODEL_FROM_DATABASE=nForce 630i memory controller + + pci:v000010DEd000007D1sv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (MCP73PVT-SM) + + pci:v000010DEd000007D1sv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (JW-IN7150-HD) + + pci:v000010DEd000007D2* + ID_MODEL_FROM_DATABASE=nForce 630i memory controller + + pci:v000010DEd000007D2sv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (MCP73PVT-SM) + + pci:v000010DEd000007D2sv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (JW-IN7150-HD) + + pci:v000010DEd000007D3* + ID_MODEL_FROM_DATABASE=nForce 630i memory controller + + pci:v000010DEd000007D3sv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (MCP73PVT-SM) + + pci:v000010DEd000007D3sv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (JW-IN7150-HD) + + pci:v000010DEd000007D6* + ID_MODEL_FROM_DATABASE=nForce 630i memory controller + + pci:v000010DEd000007D6sv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (MCP73PVT-SM) + + pci:v000010DEd000007D6sv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=nForce 630i memory controller (JW-IN7150-HD) + + pci:v000010DEd000007D7* + ID_MODEL_FROM_DATABASE=MCP73 LPC Bridge + + pci:v000010DEd000007D7sv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=MCP73 LPC Bridge (MCP73PVT-SM) + + pci:v000010DEd000007D7sv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=MCP73 LPC Bridge (JW-IN7150-HD) + + pci:v000010DEd000007D8* + ID_MODEL_FROM_DATABASE=MCP73 SMBus + + pci:v000010DEd000007D8sv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=MCP73 SMBus (MCP73PVT-SM) + + pci:v000010DEd000007D8sv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=MCP73 SMBus (JW-IN7150-HD) + + pci:v000010DEd000007D9* + ID_MODEL_FROM_DATABASE=MCP73 Memory Controller + + pci:v000010DEd000007D9sv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=MCP73 Memory Controller (MCP73PVT-SM) + + pci:v000010DEd000007D9sv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=MCP73 Memory Controller (JW-IN7150-HD) + + pci:v000010DEd000007DA* + ID_MODEL_FROM_DATABASE=MCP73 Co-processor + + pci:v000010DEd000007DAsv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=MCP73 Co-processor (JW-IN7150-HD) + + pci:v000010DEd000007DC* + ID_MODEL_FROM_DATABASE=MCP73 Ethernet +@@ -25077,13 +25077,13 @@ pci:v000010DEd000007E0* + ID_MODEL_FROM_DATABASE=C73 [GeForce 7150 / nForce 630i] + + pci:v000010DEd000007E0sv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=C73 [GeForce 7150 / nForce 630i] (JW-IN7150-HD) + + pci:v000010DEd000007E1* + ID_MODEL_FROM_DATABASE=C73 [GeForce 7100 / nForce 630i] + + pci:v000010DEd000007E1sv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=C73 [GeForce 7100 / nForce 630i] (MCP73PVT-SM) + + pci:v000010DEd000007E2* + ID_MODEL_FROM_DATABASE=C73 [GeForce 7050 / nForce 630i] +@@ -25101,7 +25101,7 @@ pci:v000010DEd000007F4* + ID_MODEL_FROM_DATABASE=GeForce 7100/nForce 630i SATA + + pci:v000010DEd000007F4sv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=GeForce 7100/nForce 630i SATA (MCP73PVT-SM) + + pci:v000010DEd000007F8* + ID_MODEL_FROM_DATABASE=MCP73 SATA RAID Controller +@@ -25110,7 +25110,7 @@ pci:v000010DEd000007FC* + ID_MODEL_FROM_DATABASE=MCP73 High Definition Audio + + pci:v000010DEd000007FCsv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=MCP73 High Definition Audio (MCP73PVT-SM) + + pci:v000010DEd000007FCsv000010DEsd000007FC* + ID_MODEL_FROM_DATABASE=MCP73 High Definition Audio +@@ -25119,10 +25119,10 @@ pci:v000010DEd000007FE* + ID_MODEL_FROM_DATABASE=GeForce 7100/nForce 630i USB + + pci:v000010DEd000007FEsv00001019sd0000297A* +- ID_MODEL_FROM_DATABASE=MCP73PVT-SM ++ ID_MODEL_FROM_DATABASE=GeForce 7100/nForce 630i USB (MCP73PVT-SM) + + pci:v000010DEd000007FEsv00001AFAsd00007150* +- ID_MODEL_FROM_DATABASE=JW-IN7150-HD ++ ID_MODEL_FROM_DATABASE=GeForce 7100/nForce 630i USB (JW-IN7150-HD) + + pci:v000010DEd00000840* + ID_MODEL_FROM_DATABASE=C77 [GeForce 8200M] +@@ -25140,7 +25140,7 @@ pci:v000010DEd00000847* + ID_MODEL_FROM_DATABASE=C78 [GeForce 9100] + + pci:v000010DEd00000847sv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=C78 [GeForce 9100] (Pavilion p6310f) + + pci:v000010DEd00000848* + ID_MODEL_FROM_DATABASE=C77 [GeForce 8300] +@@ -25149,10 +25149,10 @@ pci:v000010DEd00000849* + ID_MODEL_FROM_DATABASE=C77 [GeForce 8200] + + pci:v000010DEd00000849sv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=C77 [GeForce 8200] (K9N2GM-FIH) + + pci:v000010DEd00000849sv00001849sd00000849* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 GeForce 8200 ++ ID_MODEL_FROM_DATABASE=C77 [GeForce 8200] (K10N78FullHD-hSLI R3.0 GeForce 8200) + + pci:v000010DEd0000084A* + ID_MODEL_FROM_DATABASE=C77 [nForce 730a] +@@ -25167,7 +25167,7 @@ pci:v000010DEd0000084D* + ID_MODEL_FROM_DATABASE=C77 [nForce 750a SLI] + + pci:v000010DEd0000084Dsv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D mGPU ++ ID_MODEL_FROM_DATABASE=C77 [nForce 750a SLI] (M3N72-D mGPU) + + pci:v000010DEd0000084F* + ID_MODEL_FROM_DATABASE=C77 [GeForce 8100 / nForce 720a] +@@ -25185,7 +25185,7 @@ pci:v000010DEd00000863* + ID_MODEL_FROM_DATABASE=C79 [GeForce 9400M] + + pci:v000010DEd00000863sv0000106Bsd000000AA* +- ID_MODEL_FROM_DATABASE=MacBook5,1 ++ ID_MODEL_FROM_DATABASE=C79 [GeForce 9400M] (MacBook5,1) + + pci:v000010DEd00000864* + ID_MODEL_FROM_DATABASE=C79 [GeForce 9300] +@@ -25197,13 +25197,13 @@ pci:v000010DEd00000866* + ID_MODEL_FROM_DATABASE=C79 [GeForce 9400M G] + + pci:v000010DEd00000866sv0000106Bsd000000B1* +- ID_MODEL_FROM_DATABASE=GeForce 9400M ++ ID_MODEL_FROM_DATABASE=C79 [GeForce 9400M G] (GeForce 9400M) + + pci:v000010DEd00000867* + ID_MODEL_FROM_DATABASE=C79 [GeForce 9400] + + pci:v000010DEd00000867sv0000106Bsd000000AD* +- ID_MODEL_FROM_DATABASE=iMac 9,1 ++ ID_MODEL_FROM_DATABASE=C79 [GeForce 9400] (iMac 9,1) + + pci:v000010DEd00000868* + ID_MODEL_FROM_DATABASE=C79 [nForce 760i SLI] +@@ -25236,28 +25236,28 @@ pci:v000010DEd00000872* + ID_MODEL_FROM_DATABASE=C79 [GeForce G102M] + + pci:v000010DEd00000872sv00001043sd000019B4* +- ID_MODEL_FROM_DATABASE=GeForce G102M ++ ID_MODEL_FROM_DATABASE=C79 [GeForce G102M] (GeForce G102M) + + pci:v000010DEd00000872sv00001043sd00001AA2* +- ID_MODEL_FROM_DATABASE=GeForce G102M ++ ID_MODEL_FROM_DATABASE=C79 [GeForce G102M] (GeForce G102M) + + pci:v000010DEd00000872sv00001043sd00001C02* +- ID_MODEL_FROM_DATABASE=GeForce G102M ++ ID_MODEL_FROM_DATABASE=C79 [GeForce G102M] (GeForce G102M) + + pci:v000010DEd00000872sv00001043sd00001C42* +- ID_MODEL_FROM_DATABASE=GeForce G205M ++ ID_MODEL_FROM_DATABASE=C79 [GeForce G102M] (GeForce G205M) + + pci:v000010DEd00000873* + ID_MODEL_FROM_DATABASE=C79 [GeForce G102M] + + pci:v000010DEd00000873sv00001043sd000019B4* +- ID_MODEL_FROM_DATABASE=GeForce G102M ++ ID_MODEL_FROM_DATABASE=C79 [GeForce G102M] (GeForce G102M) + + pci:v000010DEd00000873sv00001043sd00001C12* +- ID_MODEL_FROM_DATABASE=GeForce G102M ++ ID_MODEL_FROM_DATABASE=C79 [GeForce G102M] (GeForce G102M) + + pci:v000010DEd00000873sv00001043sd00001C52* +- ID_MODEL_FROM_DATABASE=GeForce G205M ++ ID_MODEL_FROM_DATABASE=C79 [GeForce G102M] (GeForce G205M) + + pci:v000010DEd00000874* + ID_MODEL_FROM_DATABASE=C79 [ION] +@@ -25272,7 +25272,7 @@ pci:v000010DEd0000087D* + ID_MODEL_FROM_DATABASE=ION VGA + + pci:v000010DEd0000087Dsv000019DAsd0000A123* +- ID_MODEL_FROM_DATABASE=IONITX-F-E ++ ID_MODEL_FROM_DATABASE=ION VGA (IONITX-F-E) + + pci:v000010DEd0000087E* + ID_MODEL_FROM_DATABASE=ION LE VGA +@@ -25299,7 +25299,7 @@ pci:v000010DEd00000A20* + ID_MODEL_FROM_DATABASE=GT216 [GeForce GT 220] + + pci:v000010DEd00000A20sv00001043sd00008311* +- ID_MODEL_FROM_DATABASE=ENGT220/DI/1GD3(LP)/V2 ++ ID_MODEL_FROM_DATABASE=GT216 [GeForce GT 220] (ENGT220/DI/1GD3(LP)/V2) + + pci:v000010DEd00000A21* + ID_MODEL_FROM_DATABASE=GT216M [GeForce GT 330M] +@@ -25368,7 +25368,7 @@ pci:v000010DEd00000A65* + ID_MODEL_FROM_DATABASE=GT218 [GeForce 210] + + pci:v000010DEd00000A65sv00001043sd00008334* +- ID_MODEL_FROM_DATABASE=EN210 SILENT ++ ID_MODEL_FROM_DATABASE=GT218 [GeForce 210] (EN210 SILENT) + + pci:v000010DEd00000A66* + ID_MODEL_FROM_DATABASE=GT218 [GeForce 310] +@@ -25389,10 +25389,10 @@ pci:v000010DEd00000A6C* + ID_MODEL_FROM_DATABASE=GT218M [NVS 3100M] + + pci:v000010DEd00000A6Csv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=GT218M [NVS 3100M] (Latitude E6510) + + pci:v000010DEd00000A6Csv000017AAsd00002142* +- ID_MODEL_FROM_DATABASE=ThinkPad T410 ++ ID_MODEL_FROM_DATABASE=GT218M [NVS 3100M] (ThinkPad T410) + + pci:v000010DEd00000A6E* + ID_MODEL_FROM_DATABASE=GT218M [GeForce 305M] +@@ -25416,7 +25416,7 @@ pci:v000010DEd00000A74* + ID_MODEL_FROM_DATABASE=GT218M [GeForce G210M] + + pci:v000010DEd00000A74sv00001B0Asd0000903A* +- ID_MODEL_FROM_DATABASE=GeForce G210 ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce G210M] (GeForce G210) + + pci:v000010DEd00000A75* + ID_MODEL_FROM_DATABASE=GT218M [GeForce 310M] +@@ -25431,127 +25431,127 @@ pci:v000010DEd00000A7A* + ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] + + pci:v000010DEd00000A7Asv0000104Dsd0000907E* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FC50* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FC61* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FC71* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FC90* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FCC0* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FCD0* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FCE2* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FCF2* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FD16* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FD40* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FD50* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FD52* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FD61* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FD71* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FD92* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FD96* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FDD0* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FDD2* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001179sd0000FDFE* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv0000144Dsd0000C0A2* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv0000144Dsd0000C0B2* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv0000144Dsd0000C581* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv0000144Dsd0000C587* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv0000144Dsd0000C588* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv0000144Dsd0000C597* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv0000144Dsd0000C606* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001462sd0000AA51* +- ID_MODEL_FROM_DATABASE=GeForce 405 ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 405) + + pci:v000010DEd00000A7Asv00001462sd0000AA58* +- ID_MODEL_FROM_DATABASE=GeForce 405 ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 405) + + pci:v000010DEd00000A7Asv00001462sd0000AC71* +- ID_MODEL_FROM_DATABASE=GeForce 405 ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 405) + + pci:v000010DEd00000A7Asv00001462sd0000AC81* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001462sd0000AC82* +- ID_MODEL_FROM_DATABASE=GeForce 405 ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 405) + + pci:v000010DEd00000A7Asv00001462sd0000AE33* +- ID_MODEL_FROM_DATABASE=GeForce 405 ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 405) + + pci:v000010DEd00000A7Asv00001642sd00003980* +- ID_MODEL_FROM_DATABASE=GeForce 405 ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 405) + + pci:v000010DEd00000A7Asv000017AAsd00003950* +- ID_MODEL_FROM_DATABASE=GeForce 405M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 405M) + + pci:v000010DEd00000A7Asv000017AAsd0000397D* +- ID_MODEL_FROM_DATABASE=GeForce 405M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 405M) + + pci:v000010DEd00000A7Asv00001B0Asd00002091* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7Asv00001B0Asd000090B4* +- ID_MODEL_FROM_DATABASE=GeForce 405 ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 405) + + pci:v000010DEd00000A7Asv00001BFDsd00000003* +- ID_MODEL_FROM_DATABASE=GeForce 405 ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 405) + + pci:v000010DEd00000A7Asv00001BFDsd00008006* +- ID_MODEL_FROM_DATABASE=GeForce 405 ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 405) + + pci:v000010DEd00000A7Asv00001BFDsd00008007* +- ID_MODEL_FROM_DATABASE=GeForce 315M ++ ID_MODEL_FROM_DATABASE=GT218M [GeForce 315M] (GeForce 315M) + + pci:v000010DEd00000A7B* + ID_MODEL_FROM_DATABASE=GT218 [GeForce 505] +@@ -25593,64 +25593,64 @@ pci:v000010DEd00000A98* + ID_MODEL_FROM_DATABASE=MCP79 Memory Controller + + pci:v000010DEd00000A98sv000010DEsd0000CB79* +- ID_MODEL_FROM_DATABASE=iMac 9,1 ++ ID_MODEL_FROM_DATABASE=MCP79 Memory Controller (iMac 9,1) + + pci:v000010DEd00000AA0* + ID_MODEL_FROM_DATABASE=MCP79 PCI Express Bridge + + pci:v000010DEd00000AA0sv000010DEsd0000CB79* +- ID_MODEL_FROM_DATABASE=Apple iMac 9,1 ++ ID_MODEL_FROM_DATABASE=MCP79 PCI Express Bridge (Apple iMac 9,1) + + pci:v000010DEd00000AA2* + ID_MODEL_FROM_DATABASE=MCP79 SMBus + + pci:v000010DEd00000AA2sv000010DEsd0000CB79* +- ID_MODEL_FROM_DATABASE=Apple iMac 9,1 ++ ID_MODEL_FROM_DATABASE=MCP79 SMBus (Apple iMac 9,1) + + pci:v000010DEd00000AA2sv000019DAsd0000A123* +- ID_MODEL_FROM_DATABASE=IONITX-F-E ++ ID_MODEL_FROM_DATABASE=MCP79 SMBus (IONITX-F-E) + + pci:v000010DEd00000AA3* + ID_MODEL_FROM_DATABASE=MCP79 Co-processor + + pci:v000010DEd00000AA3sv000010DEsd0000CB79* +- ID_MODEL_FROM_DATABASE=Apple iMac 9,1 ++ ID_MODEL_FROM_DATABASE=MCP79 Co-processor (Apple iMac 9,1) + + pci:v000010DEd00000AA3sv000019DAsd0000A123* +- ID_MODEL_FROM_DATABASE=IONITX-F-E ++ ID_MODEL_FROM_DATABASE=MCP79 Co-processor (IONITX-F-E) + + pci:v000010DEd00000AA4* + ID_MODEL_FROM_DATABASE=MCP79 Memory Controller + + pci:v000010DEd00000AA4sv000019DAsd0000A123* +- ID_MODEL_FROM_DATABASE=IONITX-F-E ++ ID_MODEL_FROM_DATABASE=MCP79 Memory Controller (IONITX-F-E) + + pci:v000010DEd00000AA5* + ID_MODEL_FROM_DATABASE=MCP79 OHCI USB 1.1 Controller + + pci:v000010DEd00000AA5sv000010DEsd0000CB79* +- ID_MODEL_FROM_DATABASE=Apple iMac 9,1 ++ ID_MODEL_FROM_DATABASE=MCP79 OHCI USB 1.1 Controller (Apple iMac 9,1) + + pci:v000010DEd00000AA5sv000019DAsd0000A123* +- ID_MODEL_FROM_DATABASE=IONITX-F-E ++ ID_MODEL_FROM_DATABASE=MCP79 OHCI USB 1.1 Controller (IONITX-F-E) + + pci:v000010DEd00000AA6* + ID_MODEL_FROM_DATABASE=MCP79 EHCI USB 2.0 Controller + + pci:v000010DEd00000AA6sv000010DEsd0000CB79* +- ID_MODEL_FROM_DATABASE=Apple iMac 9,1 ++ ID_MODEL_FROM_DATABASE=MCP79 EHCI USB 2.0 Controller (Apple iMac 9,1) + + pci:v000010DEd00000AA6sv000019DAsd0000A123* +- ID_MODEL_FROM_DATABASE=IONITX-F-E ++ ID_MODEL_FROM_DATABASE=MCP79 EHCI USB 2.0 Controller (IONITX-F-E) + + pci:v000010DEd00000AA7* + ID_MODEL_FROM_DATABASE=MCP79 OHCI USB 1.1 Controller + + pci:v000010DEd00000AA7sv000010DEsd0000CB79* +- ID_MODEL_FROM_DATABASE=Apple iMac 9,1 ++ ID_MODEL_FROM_DATABASE=MCP79 OHCI USB 1.1 Controller (Apple iMac 9,1) + + pci:v000010DEd00000AA7sv000019DAsd0000A123* +- ID_MODEL_FROM_DATABASE=IONITX-F-E ++ ID_MODEL_FROM_DATABASE=MCP79 OHCI USB 1.1 Controller (IONITX-F-E) + + pci:v000010DEd00000AA8* + ID_MODEL_FROM_DATABASE=MCP79 OHCI USB 1.1 Controller +@@ -25659,10 +25659,10 @@ pci:v000010DEd00000AA9* + ID_MODEL_FROM_DATABASE=MCP79 EHCI USB 2.0 Controller + + pci:v000010DEd00000AA9sv000010DEsd0000CB79* +- ID_MODEL_FROM_DATABASE=Apple iMac 9,1 ++ ID_MODEL_FROM_DATABASE=MCP79 EHCI USB 2.0 Controller (Apple iMac 9,1) + + pci:v000010DEd00000AA9sv000019DAsd0000A123* +- ID_MODEL_FROM_DATABASE=IONITX-F-E ++ ID_MODEL_FROM_DATABASE=MCP79 EHCI USB 2.0 Controller (IONITX-F-E) + + pci:v000010DEd00000AAA* + ID_MODEL_FROM_DATABASE=MCP79 EHCI USB 2.0 Controller +@@ -25671,7 +25671,7 @@ pci:v000010DEd00000AAB* + ID_MODEL_FROM_DATABASE=MCP79 PCI Bridge + + pci:v000010DEd00000AABsv000010DEsd0000CB79* +- ID_MODEL_FROM_DATABASE=Apple iMac 9,1 ++ ID_MODEL_FROM_DATABASE=MCP79 PCI Bridge (Apple iMac 9,1) + + pci:v000010DEd00000AAC* + ID_MODEL_FROM_DATABASE=MCP79 LPC Bridge +@@ -25680,13 +25680,13 @@ pci:v000010DEd00000AAD* + ID_MODEL_FROM_DATABASE=MCP79 LPC Bridge + + pci:v000010DEd00000AADsv000019DAsd0000A123* +- ID_MODEL_FROM_DATABASE=IONITX-F-E ++ ID_MODEL_FROM_DATABASE=MCP79 LPC Bridge (IONITX-F-E) + + pci:v000010DEd00000AAE* + ID_MODEL_FROM_DATABASE=MCP79 LPC Bridge + + pci:v000010DEd00000AAEsv000010DEsd0000CB79* +- ID_MODEL_FROM_DATABASE=Apple iMac 9,1 ++ ID_MODEL_FROM_DATABASE=MCP79 LPC Bridge (Apple iMac 9,1) + + pci:v000010DEd00000AAF* + ID_MODEL_FROM_DATABASE=MCP79 LPC Bridge +@@ -25695,10 +25695,10 @@ pci:v000010DEd00000AB0* + ID_MODEL_FROM_DATABASE=MCP79 Ethernet + + pci:v000010DEd00000AB0sv000010DEsd0000CB79* +- ID_MODEL_FROM_DATABASE=Apple iMac 9,1 ++ ID_MODEL_FROM_DATABASE=MCP79 Ethernet (Apple iMac 9,1) + + pci:v000010DEd00000AB0sv000019DAsd0000A123* +- ID_MODEL_FROM_DATABASE=IONITX-F-E ++ ID_MODEL_FROM_DATABASE=MCP79 Ethernet (IONITX-F-E) + + pci:v000010DEd00000AB1* + ID_MODEL_FROM_DATABASE=MCP79 Ethernet +@@ -25713,7 +25713,7 @@ pci:v000010DEd00000AB4* + ID_MODEL_FROM_DATABASE=MCP79 SATA Controller + + pci:v000010DEd00000AB4sv000019DAsd0000A123* +- ID_MODEL_FROM_DATABASE=IONITX-F-E ++ ID_MODEL_FROM_DATABASE=MCP79 SATA Controller (IONITX-F-E) + + pci:v000010DEd00000AB5* + ID_MODEL_FROM_DATABASE=MCP79 SATA Controller +@@ -25731,7 +25731,7 @@ pci:v000010DEd00000AB9* + ID_MODEL_FROM_DATABASE=MCP79 AHCI Controller + + pci:v000010DEd00000AB9sv000010DEsd0000CB79* +- ID_MODEL_FROM_DATABASE=Apple iMac 9,1 ++ ID_MODEL_FROM_DATABASE=MCP79 AHCI Controller (Apple iMac 9,1) + + pci:v000010DEd00000ABA* + ID_MODEL_FROM_DATABASE=MCP79 AHCI Controller +@@ -25755,7 +25755,7 @@ pci:v000010DEd00000AC0* + ID_MODEL_FROM_DATABASE=MCP79 High Definition Audio + + pci:v000010DEd00000AC0sv000010DEsd0000CB79* +- ID_MODEL_FROM_DATABASE=Apple iMac 9,1 ++ ID_MODEL_FROM_DATABASE=MCP79 High Definition Audio (Apple iMac 9,1) + + pci:v000010DEd00000AC1* + ID_MODEL_FROM_DATABASE=MCP79 High Definition Audio +@@ -25770,7 +25770,7 @@ pci:v000010DEd00000AC4* + ID_MODEL_FROM_DATABASE=MCP79 PCI Express Bridge + + pci:v000010DEd00000AC4sv000010DEsd0000CB79* +- ID_MODEL_FROM_DATABASE=Apple iMac 9,1 ++ ID_MODEL_FROM_DATABASE=MCP79 PCI Express Bridge (Apple iMac 9,1) + + pci:v000010DEd00000AC5* + ID_MODEL_FROM_DATABASE=MCP79 PCI Express Bridge +@@ -25779,13 +25779,13 @@ pci:v000010DEd00000AC6* + ID_MODEL_FROM_DATABASE=MCP79 PCI Express Bridge + + pci:v000010DEd00000AC6sv000010DEsd0000CB79* +- ID_MODEL_FROM_DATABASE=Apple iMac 9,1 ++ ID_MODEL_FROM_DATABASE=MCP79 PCI Express Bridge (Apple iMac 9,1) + + pci:v000010DEd00000AC7* + ID_MODEL_FROM_DATABASE=MCP79 PCI Express Bridge + + pci:v000010DEd00000AC7sv000010DEsd0000CB79* +- ID_MODEL_FROM_DATABASE=Apple iMac 9,1 ++ ID_MODEL_FROM_DATABASE=MCP79 PCI Express Bridge (Apple iMac 9,1) + + pci:v000010DEd00000AC8* + ID_MODEL_FROM_DATABASE=MCP79 PCI Express Bridge +@@ -25794,22 +25794,22 @@ pci:v000010DEd00000AD0* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] SATA Controller (non-AHCI mode) + + pci:v000010DEd00000AD0sv00001462sd00007508* +- ID_MODEL_FROM_DATABASE=K9N2GM-FIH ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] SATA Controller (non-AHCI mode) (K9N2GM-FIH) + + pci:v000010DEd00000AD0sv00001849sd00000AD0* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 IDE ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] SATA Controller (non-AHCI mode) (K10N78FullHD-hSLI R3.0 IDE) + + pci:v000010DEd00000AD4* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] AHCI Controller + + pci:v000010DEd00000AD4sv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] AHCI Controller (Pavilion p6310f) + + pci:v000010DEd00000AD4sv00001043sd000082E8* +- ID_MODEL_FROM_DATABASE=M3N72-D ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] AHCI Controller (M3N72-D) + + pci:v000010DEd00000AD4sv00001849sd00000AD4* +- ID_MODEL_FROM_DATABASE=K10N78FullHD-hSLI R3.0 AHCI Controller ++ ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] AHCI Controller (K10N78FullHD-hSLI R3.0 AHCI Controller) + + pci:v000010DEd00000AD8* + ID_MODEL_FROM_DATABASE=MCP78S [GeForce 8200] SATA Controller (RAID mode) +@@ -25818,16 +25818,16 @@ pci:v000010DEd00000BE2* + ID_MODEL_FROM_DATABASE=GT216 HDMI Audio Controller + + pci:v000010DEd00000BE2sv00001043sd00008311* +- ID_MODEL_FROM_DATABASE=ENGT220/DI/1GD3(LP)/V2 ++ ID_MODEL_FROM_DATABASE=GT216 HDMI Audio Controller (ENGT220/DI/1GD3(LP)/V2) + + pci:v000010DEd00000BE3* + ID_MODEL_FROM_DATABASE=High Definition Audio Controller + + pci:v000010DEd00000BE3sv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=High Definition Audio Controller (Latitude E6510) + + pci:v000010DEd00000BE3sv000010DEsd0000066D* +- ID_MODEL_FROM_DATABASE=G98 [GeForce 8400GS] ++ ID_MODEL_FROM_DATABASE=High Definition Audio Controller (G98 [GeForce 8400GS]) + + pci:v000010DEd00000BE4* + ID_MODEL_FROM_DATABASE=High Definition Audio Controller +@@ -25839,22 +25839,22 @@ pci:v000010DEd00000BE9* + ID_MODEL_FROM_DATABASE=GF106 High Definition Audio Controller + + pci:v000010DEd00000BE9sv00001558sd00008687* +- ID_MODEL_FROM_DATABASE=CLEVO/KAPOK W860CU ++ ID_MODEL_FROM_DATABASE=GF106 High Definition Audio Controller (CLEVO/KAPOK W860CU) + + pci:v000010DEd00000BE9sv00003842sd00001452* +- ID_MODEL_FROM_DATABASE=GeForce GTS 450 ++ ID_MODEL_FROM_DATABASE=GF106 High Definition Audio Controller (GeForce GTS 450) + + pci:v000010DEd00000BEA* + ID_MODEL_FROM_DATABASE=GF108 High Definition Audio Controller + + pci:v000010DEd00000BEAsv00003842sd00001430* +- ID_MODEL_FROM_DATABASE=GeForce GT 430 ++ ID_MODEL_FROM_DATABASE=GF108 High Definition Audio Controller (GeForce GT 430) + + pci:v000010DEd00000BEB* + ID_MODEL_FROM_DATABASE=GF104 High Definition Audio Controller + + pci:v000010DEd00000BEBsv00001462sd00002322* +- ID_MODEL_FROM_DATABASE=N460GTX Cyclone 1GD5/OC ++ ID_MODEL_FROM_DATABASE=GF104 High Definition Audio Controller (N460GTX Cyclone 1GD5/OC) + + pci:v000010DEd00000BEE* + ID_MODEL_FROM_DATABASE=GF116 High Definition Audio Controller +@@ -25968,7 +25968,7 @@ pci:v000010DEd00000DD1* + ID_MODEL_FROM_DATABASE=GF106M [GeForce GTX 460M] + + pci:v000010DEd00000DD1sv00001558sd00008687* +- ID_MODEL_FROM_DATABASE=CLEVO/KAPOK W860CU ++ ID_MODEL_FROM_DATABASE=GF106M [GeForce GTX 460M] (CLEVO/KAPOK W860CU) + + pci:v000010DEd00000DD2* + ID_MODEL_FROM_DATABASE=GF106M [GeForce GT 445M] +@@ -25983,7 +25983,7 @@ pci:v000010DEd00000DD8* + ID_MODEL_FROM_DATABASE=GF106GL [Quadro 2000] + + pci:v000010DEd00000DD8sv000010DEsd00000914* +- ID_MODEL_FROM_DATABASE=Quadro 2000D ++ ID_MODEL_FROM_DATABASE=GF106GL [Quadro 2000] (Quadro 2000D) + + pci:v000010DEd00000DDA* + ID_MODEL_FROM_DATABASE=GF106GLM [Quadro 2000M] +@@ -25995,7 +25995,7 @@ pci:v000010DEd00000DE1* + ID_MODEL_FROM_DATABASE=GF108 [GeForce GT 430] + + pci:v000010DEd00000DE1sv00003842sd00001430* +- ID_MODEL_FROM_DATABASE=GeForce GT 430 ++ ID_MODEL_FROM_DATABASE=GF108 [GeForce GT 430] (GeForce GT 430) + + pci:v000010DEd00000DE2* + ID_MODEL_FROM_DATABASE=GF108 [GeForce GT 420] +@@ -26019,49 +26019,49 @@ pci:v000010DEd00000DE9* + ID_MODEL_FROM_DATABASE=GF108M [GeForce GT 630M] + + pci:v000010DEd00000DE9sv00001025sd00000692* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF108M [GeForce GT 630M] (GeForce GT 620M) + + pci:v000010DEd00000DE9sv00001025sd00000725* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF108M [GeForce GT 630M] (GeForce GT 620M) + + pci:v000010DEd00000DE9sv00001025sd00000728* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF108M [GeForce GT 630M] (GeForce GT 620M) + + pci:v000010DEd00000DE9sv00001025sd0000072B* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF108M [GeForce GT 630M] (GeForce GT 620M) + + pci:v000010DEd00000DE9sv00001025sd0000072E* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF108M [GeForce GT 630M] (GeForce GT 620M) + + pci:v000010DEd00000DE9sv00001025sd00000753* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF108M [GeForce GT 630M] (GeForce GT 620M) + + pci:v000010DEd00000DE9sv00001025sd00000754* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF108M [GeForce GT 630M] (GeForce GT 620M) + + pci:v000010DEd00000DE9sv000017AAsd00003977* +- ID_MODEL_FROM_DATABASE=GeForce GT 640M LE ++ ID_MODEL_FROM_DATABASE=GF108M [GeForce GT 630M] (GeForce GT 640M LE) + + pci:v000010DEd00000DE9sv00001B0Asd00002210* +- ID_MODEL_FROM_DATABASE=GeForce GT 635M ++ ID_MODEL_FROM_DATABASE=GF108M [GeForce GT 630M] (GeForce GT 635M) + + pci:v000010DEd00000DEA* + ID_MODEL_FROM_DATABASE=GF108M [GeForce 610M] + + pci:v000010DEd00000DEAsv000017AAsd0000365A* +- ID_MODEL_FROM_DATABASE=GeForce 615 ++ ID_MODEL_FROM_DATABASE=GF108M [GeForce 610M] (GeForce 615) + + pci:v000010DEd00000DEAsv000017AAsd0000365B* +- ID_MODEL_FROM_DATABASE=GeForce 615 ++ ID_MODEL_FROM_DATABASE=GF108M [GeForce 610M] (GeForce 615) + + pci:v000010DEd00000DEAsv000017AAsd0000365E* +- ID_MODEL_FROM_DATABASE=GeForce 615 ++ ID_MODEL_FROM_DATABASE=GF108M [GeForce 610M] (GeForce 615) + + pci:v000010DEd00000DEAsv000017AAsd00003660* +- ID_MODEL_FROM_DATABASE=GeForce 615 ++ ID_MODEL_FROM_DATABASE=GF108M [GeForce 610M] (GeForce 615) + + pci:v000010DEd00000DEAsv000017AAsd0000366C* +- ID_MODEL_FROM_DATABASE=GeForce 615 ++ ID_MODEL_FROM_DATABASE=GF108M [GeForce 610M] (GeForce 615) + + pci:v000010DEd00000DEB* + ID_MODEL_FROM_DATABASE=GF108M [GeForce GT 555M] +@@ -26094,10 +26094,10 @@ pci:v000010DEd00000DF4* + ID_MODEL_FROM_DATABASE=GF108M [GeForce GT 540M] + + pci:v000010DEd00000DF4sv0000152Dsd00000952* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF108M [GeForce GT 540M] (GeForce GT 630M) + + pci:v000010DEd00000DF4sv0000152Dsd00000953* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF108M [GeForce GT 540M] (GeForce GT 630M) + + pci:v000010DEd00000DF5* + ID_MODEL_FROM_DATABASE=GF108M [GeForce GT 525M] +@@ -26124,7 +26124,7 @@ pci:v000010DEd00000E08* + ID_MODEL_FROM_DATABASE=GF119 HDMI Audio Controller + + pci:v000010DEd00000E08sv000010B0sd0000104A* +- ID_MODEL_FROM_DATABASE=Gainward GeForce GT 610 ++ ID_MODEL_FROM_DATABASE=GF119 HDMI Audio Controller (Gainward GeForce GT 610) + + pci:v000010DEd00000E09* + ID_MODEL_FROM_DATABASE=GF110 High Definition Audio Controller +@@ -26145,16 +26145,16 @@ pci:v000010DEd00000E1B* + ID_MODEL_FROM_DATABASE=GK107 HDMI Audio Controller + + pci:v000010DEd00000E1Bsv0000103Csd0000197B* +- ID_MODEL_FROM_DATABASE=ZBook 15 ++ ID_MODEL_FROM_DATABASE=GK107 HDMI Audio Controller (ZBook 15) + + pci:v000010DEd00000E1Bsv00001043sd00008428* +- ID_MODEL_FROM_DATABASE=GTX650-DC-1GD5 ++ ID_MODEL_FROM_DATABASE=GK107 HDMI Audio Controller (GTX650-DC-1GD5) + + pci:v000010DEd00000E22* + ID_MODEL_FROM_DATABASE=GF104 [GeForce GTX 460] + + pci:v000010DEd00000E22sv00001462sd00002322* +- ID_MODEL_FROM_DATABASE=N460GTX Cyclone 1GD5/OC ++ ID_MODEL_FROM_DATABASE=GF104 [GeForce GTX 460] (N460GTX Cyclone 1GD5/OC) + + pci:v000010DEd00000E23* + ID_MODEL_FROM_DATABASE=GF104 [GeForce GTX 460 SE] +@@ -26193,7 +26193,7 @@ pci:v000010DEd00000FC6* + ID_MODEL_FROM_DATABASE=GK107 [GeForce GTX 650] + + pci:v000010DEd00000FC6sv00001043sd00008428* +- ID_MODEL_FROM_DATABASE=GTX650-DC-1GD5 ++ ID_MODEL_FROM_DATABASE=GK107 [GeForce GTX 650] (GTX650-DC-1GD5) + + pci:v000010DEd00000FCD* + ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 755M] +@@ -26205,34 +26205,34 @@ pci:v000010DEd00000FD1* + ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 650M] + + pci:v000010DEd00000FD1sv00001043sd00001597* +- ID_MODEL_FROM_DATABASE=GeForce GT 650M ++ ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 650M] (GeForce GT 650M) + + pci:v000010DEd00000FD1sv00001043sd000015A7* +- ID_MODEL_FROM_DATABASE=GeForce GT 650M ++ ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 650M] (GeForce GT 650M) + + pci:v000010DEd00000FD1sv00001043sd00002103* +- ID_MODEL_FROM_DATABASE=N56VZ ++ ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 650M] (N56VZ) + + pci:v000010DEd00000FD1sv00001043sd00002105* +- ID_MODEL_FROM_DATABASE=GeForce GT 650M ++ ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 650M] (GeForce GT 650M) + + pci:v000010DEd00000FD1sv00001043sd00002141* +- ID_MODEL_FROM_DATABASE=GeForce GT 650M ++ ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 650M] (GeForce GT 650M) + + pci:v000010DEd00000FD2* + ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 640M] + + pci:v000010DEd00000FD2sv00001028sd0000054F* +- ID_MODEL_FROM_DATABASE=GeForce GT 640M ++ ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 640M] (GeForce GT 640M) + + pci:v000010DEd00000FD2sv00001028sd0000055F* +- ID_MODEL_FROM_DATABASE=GeForce GT 640M ++ ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 640M] (GeForce GT 640M) + + pci:v000010DEd00000FD2sv00001028sd00000595* +- ID_MODEL_FROM_DATABASE=GeForce GT 640M LE ++ ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 640M] (GeForce GT 640M LE) + + pci:v000010DEd00000FD2sv00001028sd000005B2* +- ID_MODEL_FROM_DATABASE=GeForce GT 640M LE ++ ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 640M] (GeForce GT 640M LE) + + pci:v000010DEd00000FD3* + ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 640M LE] +@@ -26265,7 +26265,7 @@ pci:v000010DEd00000FE3* + ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 745M] + + pci:v000010DEd00000FE3sv000017AAsd00003675* +- ID_MODEL_FROM_DATABASE=GeForce GT 745A ++ ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 745M] (GeForce GT 745A) + + pci:v000010DEd00000FE4* + ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 750M] +@@ -26280,7 +26280,7 @@ pci:v000010DEd00000FE7* + ID_MODEL_FROM_DATABASE=GK107GL [GRID K100 vGPU] + + pci:v000010DEd00000FE7sv000010DEsd0000101E* +- ID_MODEL_FROM_DATABASE=GRID K100 ++ ID_MODEL_FROM_DATABASE=GK107GL [GRID K100 vGPU] (GRID K100) + + pci:v000010DEd00000FE9* + ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 750M Mac Edition] +@@ -26304,13 +26304,13 @@ pci:v000010DEd00000FF6* + ID_MODEL_FROM_DATABASE=GK107GLM [Quadro K1100M] + + pci:v000010DEd00000FF6sv0000103Csd0000197B* +- ID_MODEL_FROM_DATABASE=ZBook 15 ++ ID_MODEL_FROM_DATABASE=GK107GLM [Quadro K1100M] (ZBook 15) + + pci:v000010DEd00000FF7* + ID_MODEL_FROM_DATABASE=GK107GL [GRID K140Q vGPU] + + pci:v000010DEd00000FF7sv000010DEsd00001037* +- ID_MODEL_FROM_DATABASE=GRID K140Q ++ ID_MODEL_FROM_DATABASE=GK107GL [GRID K140Q vGPU] (GRID K140Q) + + pci:v000010DEd00000FF8* + ID_MODEL_FROM_DATABASE=GK107GLM [Quadro K500M] +@@ -26343,37 +26343,37 @@ pci:v000010DEd00001004* + ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX 780] + + pci:v000010DEd00001004sv00003842sd00000784* +- ID_MODEL_FROM_DATABASE=GK110B [GeForce GTX 780 SC w/ ACX Cooler] ++ ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX 780] (GK110B [GeForce GTX 780 SC w/ ACX Cooler]) + + pci:v000010DEd00001004sv00003842sd00001784* +- ID_MODEL_FROM_DATABASE=GK110B [GeForce GTX 780 Dual FTW w/ ACX Cooler] ++ ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX 780] (GK110B [GeForce GTX 780 Dual FTW w/ ACX Cooler]) + + pci:v000010DEd00001004sv00003842sd00001788* +- ID_MODEL_FROM_DATABASE=GK110B [GeForce GTX 780 Dual Classified w/ ACX Cooler] ++ ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX 780] (GK110B [GeForce GTX 780 Dual Classified w/ ACX Cooler]) + + pci:v000010DEd00001005* + ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX Titan] + + pci:v000010DEd00001005sv00001043sd00008451* +- ID_MODEL_FROM_DATABASE=GTXTITAN-6GD5 ++ ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX Titan] (GTXTITAN-6GD5) + + pci:v000010DEd00001005sv000010DEsd00001035* +- ID_MODEL_FROM_DATABASE=GeForce GTX Titan ++ ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX Titan] (GeForce GTX Titan) + + pci:v000010DEd00001005sv00003842sd00002790* +- ID_MODEL_FROM_DATABASE=GeForce GTX Titan ++ ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX Titan] (GeForce GTX Titan) + + pci:v000010DEd00001005sv00003842sd00002791* +- ID_MODEL_FROM_DATABASE=GeForce GTX Titan SC ++ ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX Titan] (GeForce GTX Titan SC) + + pci:v000010DEd00001005sv00003842sd00002793* +- ID_MODEL_FROM_DATABASE=GeForce GTX Titan SC Signature ++ ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX Titan] (GeForce GTX Titan SC Signature) + + pci:v000010DEd00001005sv00003842sd00002794* +- ID_MODEL_FROM_DATABASE=GeForce GTX Titan SC Hydro Copper ++ ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX Titan] (GeForce GTX Titan SC Hydro Copper) + + pci:v000010DEd00001005sv00003842sd00002795* +- ID_MODEL_FROM_DATABASE=GeForce GTX Titan SC Hydro Copper Signature ++ ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX Titan] (GeForce GTX Titan SC Hydro Copper Signature) + + pci:v000010DEd00001007* + ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX 780 Rev. 2] +@@ -26436,7 +26436,7 @@ pci:v000010DEd0000104A* + ID_MODEL_FROM_DATABASE=GF119 [GeForce GT 610] + + pci:v000010DEd0000104Asv000010B0sd0000104A* +- ID_MODEL_FROM_DATABASE=Gainward GeForce GT 610 ++ ID_MODEL_FROM_DATABASE=GF119 [GeForce GT 610] (Gainward GeForce GT 610) + + pci:v000010DEd0000104B* + ID_MODEL_FROM_DATABASE=GF119 [GeForce GT 625 OEM] +@@ -26469,37 +26469,37 @@ pci:v000010DEd00001058* + ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] + + pci:v000010DEd00001058sv0000103Csd00002AED* +- ID_MODEL_FROM_DATABASE=GeForce 610 ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] (GeForce 610) + + pci:v000010DEd00001058sv0000103Csd00002AF1* +- ID_MODEL_FROM_DATABASE=GeForce 610 ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] (GeForce 610) + + pci:v000010DEd00001058sv00001043sd000010AC* +- ID_MODEL_FROM_DATABASE=GeForce GT 610M ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] (GeForce GT 610M) + + pci:v000010DEd00001058sv00001043sd000010BC* +- ID_MODEL_FROM_DATABASE=GeForce GT 610M ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] (GeForce GT 610M) + + pci:v000010DEd00001058sv00001043sd00001652* +- ID_MODEL_FROM_DATABASE=GeForce GT 610M ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] (GeForce GT 610M) + + pci:v000010DEd00001058sv000017AAsd0000367A* +- ID_MODEL_FROM_DATABASE=GeForce 610M ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] (GeForce 610M) + + pci:v000010DEd00001058sv000017AAsd00003682* +- ID_MODEL_FROM_DATABASE=GeForce 800A ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] (GeForce 800A) + + pci:v000010DEd00001058sv000017AAsd00003687* +- ID_MODEL_FROM_DATABASE=GeForce 800A ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] (GeForce 800A) + + pci:v000010DEd00001058sv000017AAsd00003692* +- ID_MODEL_FROM_DATABASE=GeForce 705A ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] (GeForce 705A) + + pci:v000010DEd00001058sv000017AAsd00003695* +- ID_MODEL_FROM_DATABASE=GeForce 800A ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] (GeForce 800A) + + pci:v000010DEd00001058sv000017AAsd0000A117* +- ID_MODEL_FROM_DATABASE=GeForce 610M ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] (GeForce 610M) + + pci:v000010DEd00001059* + ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] +@@ -26508,25 +26508,25 @@ pci:v000010DEd0000105A* + ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] + + pci:v000010DEd0000105Asv00001043sd00002111* +- ID_MODEL_FROM_DATABASE=GeForce GT 610M ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] (GeForce GT 610M) + + pci:v000010DEd0000105Asv00001043sd00002112* +- ID_MODEL_FROM_DATABASE=GeForce GT 610M ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 610M] (GeForce GT 610M) + + pci:v000010DEd0000105B* + ID_MODEL_FROM_DATABASE=GF119M [GeForce 705M] + + pci:v000010DEd0000105Bsv0000103Csd00002AFB* +- ID_MODEL_FROM_DATABASE=GeForce 705A ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 705M] (GeForce 705A) + + pci:v000010DEd0000105Bsv000017AAsd0000309D* +- ID_MODEL_FROM_DATABASE=GeForce 705A ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 705M] (GeForce 705A) + + pci:v000010DEd0000105Bsv000017AAsd000030B1* +- ID_MODEL_FROM_DATABASE=GeForce 800A ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 705M] (GeForce 800A) + + pci:v000010DEd0000105Bsv000017AAsd000036A1* +- ID_MODEL_FROM_DATABASE=GeForce 800A ++ ID_MODEL_FROM_DATABASE=GF119M [GeForce 705M] (GeForce 800A) + + pci:v000010DEd0000107C* + ID_MODEL_FROM_DATABASE=GF119 [NVS 315] +@@ -26541,7 +26541,7 @@ pci:v000010DEd00001081* + ID_MODEL_FROM_DATABASE=GF110 [GeForce GTX 570] + + pci:v000010DEd00001081sv000010DEsd0000087E* +- ID_MODEL_FROM_DATABASE=Leadtek WinFast GTX 570 ++ ID_MODEL_FROM_DATABASE=GF110 [GeForce GTX 570] (Leadtek WinFast GTX 570) + + pci:v000010DEd00001082* + ID_MODEL_FROM_DATABASE=GF110 [GeForce GTX 560 Ti OEM] +@@ -26571,31 +26571,31 @@ pci:v000010DEd00001091* + ID_MODEL_FROM_DATABASE=GF110GL [Tesla M2090] + + pci:v000010DEd00001091sv000010DEsd0000088E* +- ID_MODEL_FROM_DATABASE=Tesla X2090 ++ ID_MODEL_FROM_DATABASE=GF110GL [Tesla M2090] (Tesla X2090) + + pci:v000010DEd00001091sv000010DEsd00000891* +- ID_MODEL_FROM_DATABASE=Tesla X2090 ++ ID_MODEL_FROM_DATABASE=GF110GL [Tesla M2090] (Tesla X2090) + + pci:v000010DEd00001091sv000010DEsd00000974* +- ID_MODEL_FROM_DATABASE=Tesla X2090 ++ ID_MODEL_FROM_DATABASE=GF110GL [Tesla M2090] (Tesla X2090) + + pci:v000010DEd00001091sv000010DEsd0000098D* +- ID_MODEL_FROM_DATABASE=Tesla X2090 ++ ID_MODEL_FROM_DATABASE=GF110GL [Tesla M2090] (Tesla X2090) + + pci:v000010DEd00001094* + ID_MODEL_FROM_DATABASE=GF110GL [Tesla M2075] + + pci:v000010DEd00001094sv000010DEsd00000888* +- ID_MODEL_FROM_DATABASE=Tesla M2075 ++ ID_MODEL_FROM_DATABASE=GF110GL [Tesla M2075] (Tesla M2075) + + pci:v000010DEd00001096* + ID_MODEL_FROM_DATABASE=GF110GL [Tesla C2050 / C2075] + + pci:v000010DEd00001096sv000010DEsd00000910* +- ID_MODEL_FROM_DATABASE=Tesla C2075 ++ ID_MODEL_FROM_DATABASE=GF110GL [Tesla C2050 / C2075] (Tesla C2075) + + pci:v000010DEd00001096sv000010DEsd00000911* +- ID_MODEL_FROM_DATABASE=Tesla C2050 ++ ID_MODEL_FROM_DATABASE=GF110GL [Tesla C2050 / C2075] (Tesla C2050) + + pci:v000010DEd0000109A* + ID_MODEL_FROM_DATABASE=GF100GLM [Quadro 5010M] +@@ -26604,7 +26604,7 @@ pci:v000010DEd0000109B* + ID_MODEL_FROM_DATABASE=GF100GL [Quadro 7000] + + pci:v000010DEd0000109Bsv000010DEsd00000918* +- ID_MODEL_FROM_DATABASE=Quadro 7000 ++ ID_MODEL_FROM_DATABASE=GF100GL [Quadro 7000] (Quadro 7000) + + pci:v000010DEd000010C0* + ID_MODEL_FROM_DATABASE=GT218 [GeForce 9300 GS Rev. 2] +@@ -26622,622 +26622,622 @@ pci:v000010DEd00001140* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] + + pci:v000010DEd00001140sv00001025sd00000600* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001025sd00000606* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001025sd0000064A* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001025sd0000064C* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001025sd0000067A* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001025sd00000680* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001025sd00000686* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001025sd00000689* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001025sd0000068B* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001025sd0000068D* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001025sd0000068E* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001025sd00000691* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001025sd00000692* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001025sd00000694* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001025sd00000702* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001025sd00000719* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001025sd00000725* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001025sd00000728* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001025sd0000072B* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001025sd0000072E* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001025sd00000732* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001025sd00000763* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001025sd00000773* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001025sd00000774* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001025sd00000776* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001025sd0000077A* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001025sd0000077B* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001025sd0000077C* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001025sd0000077D* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001025sd0000077E* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001025sd0000077F* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001025sd00000781* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001025sd00000798* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001025sd00000799* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001025sd0000079B* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001025sd0000079C* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001025sd00000807* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001025sd00000821* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001025sd00000823* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001025sd00000830* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001025sd00000837* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001025sd00000841* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001028sd0000054D* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + + pci:v000010DEd00001140sv00001028sd0000054E* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + + pci:v000010DEd00001140sv00001028sd00000554* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001028sd00000557* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001028sd00000562* +- ID_MODEL_FROM_DATABASE=GeForce GT 625M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 625M) + + pci:v000010DEd00001140sv00001028sd00000565* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + + pci:v000010DEd00001140sv00001028sd00000568* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + + pci:v000010DEd00001140sv00001028sd00000590* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + + pci:v000010DEd00001140sv00001028sd00000592* +- ID_MODEL_FROM_DATABASE=GeForce GT 625M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 625M) + + pci:v000010DEd00001140sv00001028sd00000594* +- ID_MODEL_FROM_DATABASE=GeForce GT 625M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 625M) + + pci:v000010DEd00001140sv00001028sd00000595* +- ID_MODEL_FROM_DATABASE=GeForce GT 625M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 625M) + + pci:v000010DEd00001140sv00001028sd000005A2* +- ID_MODEL_FROM_DATABASE=GeForce GT 625M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 625M) + + pci:v000010DEd00001140sv00001028sd000005B1* +- ID_MODEL_FROM_DATABASE=GeForce GT 625M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 625M) + + pci:v000010DEd00001140sv00001028sd000005B3* +- ID_MODEL_FROM_DATABASE=GeForce GT 625M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 625M) + + pci:v000010DEd00001140sv00001028sd000005DA* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + + pci:v000010DEd00001140sv00001028sd000005DE* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001028sd000005E0* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001028sd000005E8* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + + pci:v000010DEd00001140sv00001028sd000005F4* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv0000103Csd000018EF* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + + pci:v000010DEd00001140sv0000103Csd000018F9* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + + pci:v000010DEd00001140sv0000103Csd000018FB* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + + pci:v000010DEd00001140sv0000103Csd000018FD* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + + pci:v000010DEd00001140sv0000103Csd000018FF* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + + pci:v000010DEd00001140sv0000103Csd00002AEF* +- ID_MODEL_FROM_DATABASE=GeForce GT 720A ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720A) + + pci:v000010DEd00001140sv0000103Csd00002AF9* +- ID_MODEL_FROM_DATABASE=GeForce 710A ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710A) + + pci:v000010DEd00001140sv00001043sd000010DD* +- ID_MODEL_FROM_DATABASE=NVS 5200M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (NVS 5200M) + + pci:v000010DEd00001140sv00001043sd000010ED* +- ID_MODEL_FROM_DATABASE=NVS 5200M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (NVS 5200M) + + pci:v000010DEd00001140sv00001043sd000011FD* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001043sd0000124D* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001043sd0000126D* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001043sd0000131D* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001043sd000013FD* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001043sd000014C7* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001043sd00001507* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001043sd000015AD* +- ID_MODEL_FROM_DATABASE=GeForce 820M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + + pci:v000010DEd00001140sv00001043sd000015ED* +- ID_MODEL_FROM_DATABASE=GeForce 820M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + + pci:v000010DEd00001140sv00001043sd0000160D* +- ID_MODEL_FROM_DATABASE=GeForce 820M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + + pci:v000010DEd00001140sv00001043sd0000163D* +- ID_MODEL_FROM_DATABASE=GeForce 820M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + + pci:v000010DEd00001140sv00001043sd0000166D* +- ID_MODEL_FROM_DATABASE=GeForce 820M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + + pci:v000010DEd00001140sv00001043sd000016CD* +- ID_MODEL_FROM_DATABASE=GeForce 820M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + + pci:v000010DEd00001140sv00001043sd000016DD* +- ID_MODEL_FROM_DATABASE=GeForce 820M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + + pci:v000010DEd00001140sv00001043sd0000170D* +- ID_MODEL_FROM_DATABASE=GeForce 820M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + + pci:v000010DEd00001140sv00001043sd00002132* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001043sd00002136* +- ID_MODEL_FROM_DATABASE=NVS 5200M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (NVS 5200M) + + pci:v000010DEd00001140sv00001043sd000021BA* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001043sd000021FA* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001043sd0000220A* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001043sd0000221A* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001043sd0000223A* +- ID_MODEL_FROM_DATABASE=GeForce GT 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 710M) + + pci:v000010DEd00001140sv00001043sd0000224A* +- ID_MODEL_FROM_DATABASE=GeForce GT 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 710M) + + pci:v000010DEd00001140sv00001043sd0000227A* +- ID_MODEL_FROM_DATABASE=GeForce 820M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + + pci:v000010DEd00001140sv00001043sd0000228A* +- ID_MODEL_FROM_DATABASE=GeForce 820M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + + pci:v000010DEd00001140sv00001043sd00008595* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001072sd0000152D* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv000010CFsd000017F5* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001179sd0000FA01* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA02* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA03* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA05* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA11* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA13* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA18* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA19* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA21* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA23* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA2A* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA32* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA33* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA36* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA38* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA42* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA43* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA45* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA47* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA49* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA58* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA59* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA88* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001179sd0000FA89* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv0000144Dsd0000B092* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv0000144Dsd0000C0D5* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + + pci:v000010DEd00001140sv0000144Dsd0000C0D7* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv0000144Dsd0000C0E2* +- ID_MODEL_FROM_DATABASE=NVS 5200M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (NVS 5200M) + + pci:v000010DEd00001140sv0000144Dsd0000C0E3* +- ID_MODEL_FROM_DATABASE=NVS 5200M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (NVS 5200M) + + pci:v000010DEd00001140sv0000144Dsd0000C0E4* +- ID_MODEL_FROM_DATABASE=NVS 5200M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (NVS 5200M) + + pci:v000010DEd00001140sv0000144Dsd0000C652* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv0000144Dsd0000C709* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv0000144Dsd0000C711* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv0000144Dsd0000C736* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001462sd000010B8* +- ID_MODEL_FROM_DATABASE=GeForce GT 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 710M) + + pci:v000010DEd00001140sv00001462sd000010E9* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001462sd00001116* +- ID_MODEL_FROM_DATABASE=GeForce 820M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + + pci:v000010DEd00001140sv00001462sd0000AA33* +- ID_MODEL_FROM_DATABASE=GeForce 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 720M) + + pci:v000010DEd00001140sv00001462sd0000AAA2* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001462sd0000AAA3* +- ID_MODEL_FROM_DATABASE=GeForce 820M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + + pci:v000010DEd00001140sv00001462sd0000AE71* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv0000152Dsd00000926* +- ID_MODEL_FROM_DATABASE=GeForce 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 620M) + + pci:v000010DEd00001140sv0000152Dsd00000982* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + + pci:v000010DEd00001140sv0000152Dsd00000983* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + + pci:v000010DEd00001140sv0000152Dsd00001012* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv0000152Dsd00001030* +- ID_MODEL_FROM_DATABASE=GeForce GT 630M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + + pci:v000010DEd00001140sv0000152Dsd00001055* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv0000152Dsd00001067* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv0000152Dsd00001072* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv000017AAsd00002200* +- ID_MODEL_FROM_DATABASE=NVS 5200M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (NVS 5200M) + + pci:v000010DEd00001140sv000017AAsd00002213* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv000017AAsd00002220* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv000017AAsd0000309C* +- ID_MODEL_FROM_DATABASE=GeForce GT 720A ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720A) + + pci:v000010DEd00001140sv000017AAsd000030B4* +- ID_MODEL_FROM_DATABASE=GeForce 820A ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820A) + + pci:v000010DEd00001140sv000017AAsd00003656* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv000017AAsd0000365A* +- ID_MODEL_FROM_DATABASE=GeForce 705M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 705M) + + pci:v000010DEd00001140sv000017AAsd0000365E* +- ID_MODEL_FROM_DATABASE=GeForce 800M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 800M) + + pci:v000010DEd00001140sv000017AAsd0000366C* +- ID_MODEL_FROM_DATABASE=GeForce 800M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 800M) + + pci:v000010DEd00001140sv000017AAsd00003685* +- ID_MODEL_FROM_DATABASE=GeForce 800M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 800M) + + pci:v000010DEd00001140sv000017AAsd00003686* +- ID_MODEL_FROM_DATABASE=GeForce 800M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 800M) + + pci:v000010DEd00001140sv000017AAsd00003687* +- ID_MODEL_FROM_DATABASE=GeForce 705A ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 705A) + + pci:v000010DEd00001140sv000017AAsd00003696* +- ID_MODEL_FROM_DATABASE=GeForce 820A ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820A) + + pci:v000010DEd00001140sv000017AAsd0000369B* +- ID_MODEL_FROM_DATABASE=GeForce 820A ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820A) + + pci:v000010DEd00001140sv000017AAsd0000369C* +- ID_MODEL_FROM_DATABASE=GeForce 820A ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820A) + + pci:v000010DEd00001140sv000017AAsd0000369D* +- ID_MODEL_FROM_DATABASE=GeForce 820A ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820A) + + pci:v000010DEd00001140sv000017AAsd0000369E* +- ID_MODEL_FROM_DATABASE=GeForce 820A ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820A) + + pci:v000010DEd00001140sv000017AAsd00003800* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv000017AAsd00003801* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv000017AAsd00003802* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv000017AAsd00003803* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv000017AAsd00003804* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv000017AAsd00003901* +- ID_MODEL_FROM_DATABASE=GeForce 610M / GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 610M / GT 620M) + + pci:v000010DEd00001140sv000017AAsd00003902* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv000017AAsd00003903* +- ID_MODEL_FROM_DATABASE=GeForce 610M/710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 610M/710M) + + pci:v000010DEd00001140sv000017AAsd00003904* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M/625M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M/625M) + + pci:v000010DEd00001140sv000017AAsd00003905* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv000017AAsd00003910* +- ID_MODEL_FROM_DATABASE=GeForce 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 720M) + + pci:v000010DEd00001140sv000017AAsd00003912* +- ID_MODEL_FROM_DATABASE=GeForce 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 720M) + + pci:v000010DEd00001140sv000017AAsd00003977* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv000017AAsd00003983* +- ID_MODEL_FROM_DATABASE=GeForce 610M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 610M) + + pci:v000010DEd00001140sv000017AAsd00005001* +- ID_MODEL_FROM_DATABASE=GeForce 610M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 610M) + + pci:v000010DEd00001140sv000017AAsd00005003* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv000017AAsd00005005* +- ID_MODEL_FROM_DATABASE=GeForce 705M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 705M) + + pci:v000010DEd00001140sv000017AAsd0000500D* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv000017AAsd00005014* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv000017AAsd00005017* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv000017AAsd00005019* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv000017AAsd0000501A* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv000017AAsd0000501F* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv000017AAsd00005025* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv000017AAsd00005027* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv000017AAsd0000502A* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv000017AAsd0000502B* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv000017AAsd0000502D* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv000017AAsd0000502E* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv000017AAsd0000502F* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv000017AAsd0000503E* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv000017AAsd0000503F* +- ID_MODEL_FROM_DATABASE=GeForce 820M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + + pci:v000010DEd00001140sv00001854sd00000177* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001854sd00000180* +- ID_MODEL_FROM_DATABASE=GeForce 710M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv00001854sd00000190* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001854sd00000192* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001140sv00001B0Asd000020DD* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001B0Asd000020DF* +- ID_MODEL_FROM_DATABASE=GeForce GT 620M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + + pci:v000010DEd00001140sv00001B0Asd00002202* +- ID_MODEL_FROM_DATABASE=GeForce GT 720M ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + + pci:v000010DEd00001180* + ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 680] + + pci:v000010DEd00001180sv00001043sd000083F1* +- ID_MODEL_FROM_DATABASE=GTX680-DC2-2GD5 ++ ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 680] (GTX680-DC2-2GD5) + + pci:v000010DEd00001180sv00003842sd00003682* +- ID_MODEL_FROM_DATABASE=GeForce GTX 680 Mac Edition ++ ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 680] (GeForce GTX 680 Mac Edition) + + pci:v000010DEd00001182* + ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 760 Ti] +@@ -27252,7 +27252,7 @@ pci:v000010DEd00001185* + ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 660 OEM] + + pci:v000010DEd00001185sv000010DEsd0000106F* +- ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 760 OEM] ++ ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 660 OEM] (GK104 [GeForce GTX 760 OEM]) + + pci:v000010DEd00001187* + ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 760] +@@ -27264,7 +27264,7 @@ pci:v000010DEd00001189* + ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 670] + + pci:v000010DEd00001189sv000010DEsd00001074* +- ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 760 Ti OEM] ++ ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 670] (GK104 [GeForce GTX 760 Ti OEM]) + + pci:v000010DEd0000118A* + ID_MODEL_FROM_DATABASE=GK104GL [GRID K520] +@@ -27279,7 +27279,7 @@ pci:v000010DEd0000118D* + ID_MODEL_FROM_DATABASE=GK104GL [GRID K200 vGPU] + + pci:v000010DEd0000118Dsv000010DEsd0000101D* +- ID_MODEL_FROM_DATABASE=GRID K200 ++ ID_MODEL_FROM_DATABASE=GK104GL [GRID K200 vGPU] (GRID K200) + + pci:v000010DEd0000118E* + ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 760 OEM] +@@ -27324,7 +27324,7 @@ pci:v000010DEd000011A3* + ID_MODEL_FROM_DATABASE=GK104M [GeForce GTX 680MX] + + pci:v000010DEd000011A3sv0000106Bsd0000010D* +- ID_MODEL_FROM_DATABASE=iMac 13,2 ++ ID_MODEL_FROM_DATABASE=GK104M [GeForce GTX 680MX] (iMac 13,2) + + pci:v000010DEd000011A7* + ID_MODEL_FROM_DATABASE=GK104M [GeForce GTX 675MX] +@@ -27333,10 +27333,10 @@ pci:v000010DEd000011B0* + ID_MODEL_FROM_DATABASE=GK104GL [GRID K240Q\K260Q vGPU] + + pci:v000010DEd000011B0sv000010DEsd0000101A* +- ID_MODEL_FROM_DATABASE=GRID K240Q ++ ID_MODEL_FROM_DATABASE=GK104GL [GRID K240Q\K260Q vGPU] (GRID K240Q) + + pci:v000010DEd000011B0sv000010DEsd0000101B* +- ID_MODEL_FROM_DATABASE=GRID K260Q ++ ID_MODEL_FROM_DATABASE=GK104GL [GRID K240Q\K260Q vGPU] (GRID K260Q) + + pci:v000010DEd000011B1* + ID_MODEL_FROM_DATABASE=GK104GL [GRID K2 Tesla USM] +@@ -27375,28 +27375,28 @@ pci:v000010DEd000011C2* + ID_MODEL_FROM_DATABASE=GK106 [GeForce GTX 650 Ti Boost] + + pci:v000010DEd000011C2sv00001043sd0000845B* +- ID_MODEL_FROM_DATABASE=GeForce GTX 650 Ti Boost DirectCU II OC ++ ID_MODEL_FROM_DATABASE=GK106 [GeForce GTX 650 Ti Boost] (GeForce GTX 650 Ti Boost DirectCU II OC) + + pci:v000010DEd000011C2sv00001462sd00002874* +- ID_MODEL_FROM_DATABASE=GeForce GTX 650 Ti Boost TwinFrozr II OC ++ ID_MODEL_FROM_DATABASE=GK106 [GeForce GTX 650 Ti Boost] (GeForce GTX 650 Ti Boost TwinFrozr II OC) + + pci:v000010DEd000011C2sv00001569sd000011C2* +- ID_MODEL_FROM_DATABASE=GeForce GTX 650 Ti Boost OC ++ ID_MODEL_FROM_DATABASE=GK106 [GeForce GTX 650 Ti Boost] (GeForce GTX 650 Ti Boost OC) + + pci:v000010DEd000011C2sv000019DAsd00001281* +- ID_MODEL_FROM_DATABASE=GeForce GTX 650 Ti Boost OC ++ ID_MODEL_FROM_DATABASE=GK106 [GeForce GTX 650 Ti Boost] (GeForce GTX 650 Ti Boost OC) + + pci:v000010DEd000011C2sv00003842sd00003657* +- ID_MODEL_FROM_DATABASE=GeForce GTX 650 Ti Boost ++ ID_MODEL_FROM_DATABASE=GK106 [GeForce GTX 650 Ti Boost] (GeForce GTX 650 Ti Boost) + + pci:v000010DEd000011C2sv00003842sd00003658* +- ID_MODEL_FROM_DATABASE=GeForce GTX 650 Ti Boost Superclocked ++ ID_MODEL_FROM_DATABASE=GK106 [GeForce GTX 650 Ti Boost] (GeForce GTX 650 Ti Boost Superclocked) + + pci:v000010DEd000011C3* + ID_MODEL_FROM_DATABASE=GK106 [GeForce GTX 650 Ti OEM] + + pci:v000010DEd000011C3sv000010DEsd00001030* +- ID_MODEL_FROM_DATABASE=GeForce GTX 650 Ti OEM ++ ID_MODEL_FROM_DATABASE=GK106 [GeForce GTX 650 Ti OEM] (GeForce GTX 650 Ti OEM) + + pci:v000010DEd000011C4* + ID_MODEL_FROM_DATABASE=GK106 [GeForce GTX 645 OEM] +@@ -27423,7 +27423,7 @@ pci:v000010DEd000011E3* + ID_MODEL_FROM_DATABASE=GK106M [GeForce GTX 760M] + + pci:v000010DEd000011E3sv000017AAsd00003683* +- ID_MODEL_FROM_DATABASE=GeForce GTX 760A ++ ID_MODEL_FROM_DATABASE=GK106M [GeForce GTX 760M] (GeForce GTX 760A) + + pci:v000010DEd000011FA* + ID_MODEL_FROM_DATABASE=GK106GL [Quadro K4000] +@@ -27486,55 +27486,55 @@ pci:v000010DEd00001247* + ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] + + pci:v000010DEd00001247sv00001043sd00001752* +- ID_MODEL_FROM_DATABASE=GeForce GT 555M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 555M) + + pci:v000010DEd00001247sv00001043sd00002050* +- ID_MODEL_FROM_DATABASE=GeForce GT 555M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 555M) + + pci:v000010DEd00001247sv00001043sd00002051* +- ID_MODEL_FROM_DATABASE=GeForce GT 555M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 555M) + + pci:v000010DEd00001247sv00001043sd0000212A* +- ID_MODEL_FROM_DATABASE=GeForce GT 635M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 635M) + + pci:v000010DEd00001247sv00001043sd0000212B* +- ID_MODEL_FROM_DATABASE=GeForce GT 635M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 635M) + + pci:v000010DEd00001247sv00001043sd0000212C* +- ID_MODEL_FROM_DATABASE=GeForce GT 635M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 635M) + + pci:v000010DEd00001247sv0000152Dsd00000930* +- ID_MODEL_FROM_DATABASE=GeForce GT 635M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 635M) + + pci:v000010DEd00001248* + ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] + + pci:v000010DEd00001248sv0000152Dsd00000930* +- ID_MODEL_FROM_DATABASE=GeForce GT 635M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 635M) + + pci:v000010DEd00001248sv000017C0sd000010E7* +- ID_MODEL_FROM_DATABASE=GeForce GT 555M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 555M) + + pci:v000010DEd00001248sv000017C0sd000010E8* +- ID_MODEL_FROM_DATABASE=GeForce GT 555M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 555M) + + pci:v000010DEd00001248sv000017C0sd000010EA* +- ID_MODEL_FROM_DATABASE=GeForce GT 555M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 555M) + + pci:v000010DEd00001248sv00001854sd00000890* +- ID_MODEL_FROM_DATABASE=GeForce GT 555M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 555M) + + pci:v000010DEd00001248sv00001854sd00000891* +- ID_MODEL_FROM_DATABASE=GeForce GT 555M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 555M) + + pci:v000010DEd00001248sv00001854sd00001795* +- ID_MODEL_FROM_DATABASE=GeForce GT 555M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 555M) + + pci:v000010DEd00001248sv00001854sd00001796* +- ID_MODEL_FROM_DATABASE=GeForce GT 555M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 555M) + + pci:v000010DEd00001248sv00001854sd00003005* +- ID_MODEL_FROM_DATABASE=GeForce GT 555M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 555M) + + pci:v000010DEd00001249* + ID_MODEL_FROM_DATABASE=GF116 [GeForce GTS 450 Rev. 3] +@@ -27546,19 +27546,19 @@ pci:v000010DEd0000124D* + ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] + + pci:v000010DEd0000124Dsv00001028sd00000491* +- ID_MODEL_FROM_DATABASE=GeForce GT 555M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 555M) + + pci:v000010DEd0000124Dsv00001028sd00000570* +- ID_MODEL_FROM_DATABASE=GeForce GT 555M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 555M) + + pci:v000010DEd0000124Dsv00001028sd00000571* +- ID_MODEL_FROM_DATABASE=GeForce GT 555M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 555M) + + pci:v000010DEd0000124Dsv00001462sd0000108D* +- ID_MODEL_FROM_DATABASE=GeForce GT 555M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 555M) + + pci:v000010DEd0000124Dsv00001462sd000010CC* +- ID_MODEL_FROM_DATABASE=GeForce GT 635M ++ ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 555M/635M] (GeForce GT 635M) + + pci:v000010DEd00001251* + ID_MODEL_FROM_DATABASE=GF116M [GeForce GT 560M] +@@ -27582,16 +27582,16 @@ pci:v000010DEd00001290* + ID_MODEL_FROM_DATABASE=GK208M [GeForce GT 730M] + + pci:v000010DEd00001290sv0000103Csd00002AFA* +- ID_MODEL_FROM_DATABASE=GeForce GT 730A ++ ID_MODEL_FROM_DATABASE=GK208M [GeForce GT 730M] (GeForce GT 730A) + + pci:v000010DEd00001290sv0000103Csd00002B04* +- ID_MODEL_FROM_DATABASE=GeForce GT 730A ++ ID_MODEL_FROM_DATABASE=GK208M [GeForce GT 730M] (GeForce GT 730A) + + pci:v000010DEd00001290sv00001043sd000013AD* +- ID_MODEL_FROM_DATABASE=GeForce GT 730M ++ ID_MODEL_FROM_DATABASE=GK208M [GeForce GT 730M] (GeForce GT 730M) + + pci:v000010DEd00001290sv00001043sd000013CD* +- ID_MODEL_FROM_DATABASE=GeForce GT 730M ++ ID_MODEL_FROM_DATABASE=GK208M [GeForce GT 730M] (GeForce GT 730M) + + pci:v000010DEd00001291* + ID_MODEL_FROM_DATABASE=GK208M [GeForce GT 735M] +@@ -27600,10 +27600,10 @@ pci:v000010DEd00001292* + ID_MODEL_FROM_DATABASE=GK208M [GeForce GT 740M] + + pci:v000010DEd00001292sv000017AAsd00003675* +- ID_MODEL_FROM_DATABASE=GeForce GT 740A ++ ID_MODEL_FROM_DATABASE=GK208M [GeForce GT 740M] (GeForce GT 740A) + + pci:v000010DEd00001292sv000017AAsd00003684* +- ID_MODEL_FROM_DATABASE=GeForce GT 740A ++ ID_MODEL_FROM_DATABASE=GK208M [GeForce GT 740M] (GeForce GT 740A) + + pci:v000010DEd00001293* + ID_MODEL_FROM_DATABASE=GK208M [GeForce GT 730M] +@@ -27636,13 +27636,13 @@ pci:v000010DEd00001341* + ID_MODEL_FROM_DATABASE=GM108M [GeForce 840M] + + pci:v000010DEd00001341sv000017AAsd00003697* +- ID_MODEL_FROM_DATABASE=GeForce 840A ++ ID_MODEL_FROM_DATABASE=GM108M [GeForce 840M] (GeForce 840A) + + pci:v000010DEd00001341sv000017AAsd00003699* +- ID_MODEL_FROM_DATABASE=GeForce 840A ++ ID_MODEL_FROM_DATABASE=GM108M [GeForce 840M] (GeForce 840A) + + pci:v000010DEd00001341sv000017AAsd0000369C* +- ID_MODEL_FROM_DATABASE=GeForce 840A ++ ID_MODEL_FROM_DATABASE=GM108M [GeForce 840M] (GeForce 840A) + + pci:v000010DEd00001380* + ID_MODEL_FROM_DATABASE=GM107 [GeForce GTX 750 Ti] +@@ -27660,10 +27660,10 @@ pci:v000010DEd00001391* + ID_MODEL_FROM_DATABASE=GM107M [GeForce GTX 850M] + + pci:v000010DEd00001391sv000017AAsd00003697* +- ID_MODEL_FROM_DATABASE=GeForce GTX 850A ++ ID_MODEL_FROM_DATABASE=GM107M [GeForce GTX 850M] (GeForce GTX 850A) + + pci:v000010DEd00001391sv000017AAsd0000A125* +- ID_MODEL_FROM_DATABASE=GeForce GTX 850A ++ ID_MODEL_FROM_DATABASE=GM107M [GeForce GTX 850M] (GeForce GTX 850A) + + pci:v000010DEd00001392* + ID_MODEL_FROM_DATABASE=GM107M [GeForce GTX 860M] +@@ -27678,13 +27678,13 @@ pci:v000010DFd00000720* + ID_MODEL_FROM_DATABASE=OneConnect NIC (Skyhawk) + + pci:v000010DFd00000720sv000017AAsd00001056* +- ID_MODEL_FROM_DATABASE=ThinkServer OCm14102-UX-L AnyFabric ++ ID_MODEL_FROM_DATABASE=OneConnect NIC (Skyhawk) (ThinkServer OCm14102-UX-L AnyFabric) + + pci:v000010DFd00000720sv000017AAsd00001057* +- ID_MODEL_FROM_DATABASE=ThinkServer OCm14104-UX-L AnyFabric ++ ID_MODEL_FROM_DATABASE=OneConnect NIC (Skyhawk) (ThinkServer OCm14104-UX-L AnyFabric) + + pci:v000010DFd00000720sv000017AAsd00001059* +- ID_MODEL_FROM_DATABASE=ThinkServer OCm14104-UT-L AnyFabric ++ ID_MODEL_FROM_DATABASE=OneConnect NIC (Skyhawk) (ThinkServer OCm14104-UT-L AnyFabric) + + pci:v000010DFd00000722* + ID_MODEL_FROM_DATABASE=OneConnect iSCSI Initiator (Skyhawk) +@@ -27729,10 +27729,10 @@ pci:v000010DFd0000E220* + ID_MODEL_FROM_DATABASE=OneConnect NIC (Lancer) + + pci:v000010DFd0000E220sv000017AAsd00001054* +- ID_MODEL_FROM_DATABASE=ThinkServer LPm16002B-M6-L AnyFabric ++ ID_MODEL_FROM_DATABASE=OneConnect NIC (Lancer) (ThinkServer LPm16002B-M6-L AnyFabric) + + pci:v000010DFd0000E220sv000017AAsd00001055* +- ID_MODEL_FROM_DATABASE=ThinkServer LPm16004B-M8-L AnyFabric ++ ID_MODEL_FROM_DATABASE=OneConnect NIC (Lancer) (ThinkServer LPm16004B-M8-L AnyFabric) + + pci:v000010DFd0000E240* + ID_MODEL_FROM_DATABASE=OneConnect iSCSI Initiator (Lancer) +@@ -27831,7 +27831,7 @@ pci:v000010DFd0000FC00* + ID_MODEL_FROM_DATABASE=Thor-X LightPulse Fibre Channel Host Adapter + + pci:v000010DFd0000FC00sv000010DFsd0000FC00* +- ID_MODEL_FROM_DATABASE=LP10000 LightPulse Fibre Channel Host Adapter ++ ID_MODEL_FROM_DATABASE=Thor-X LightPulse Fibre Channel Host Adapter (LP10000 LightPulse Fibre Channel Host Adapter) + + pci:v000010DFd0000FC10* + ID_MODEL_FROM_DATABASE=Helios-X LightPulse Fibre Channel Host Adapter +@@ -27897,7 +27897,7 @@ pci:v000010E1d00000391* + ID_MODEL_FROM_DATABASE=TRM-S1040 + + pci:v000010E1d00000391sv000010E1sd00000391* +- ID_MODEL_FROM_DATABASE=DC-315U SCSI-3 Host Adapter ++ ID_MODEL_FROM_DATABASE=TRM-S1040 (DC-315U SCSI-3 Host Adapter) + + pci:v000010E1d0000690C* + ID_MODEL_FROM_DATABASE=DC-690c +@@ -27921,7 +27921,7 @@ pci:v000010E3d00000148* + ID_MODEL_FROM_DATABASE=Tsi148 [Tempe] + + pci:v000010E3d00000148sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=Tsi148 [Tempe] (VR11 Single Board Computer) + + pci:v000010E3d00000860* + ID_MODEL_FROM_DATABASE=CA91C860 [QSpan] +@@ -28107,25 +28107,25 @@ pci:v000010ECd00005227* + ID_MODEL_FROM_DATABASE=RTS5227 PCI Express Card Reader + + pci:v000010ECd00005227sv000017AAsd0000220E* +- ID_MODEL_FROM_DATABASE=ThinkPad T440p ++ ID_MODEL_FROM_DATABASE=RTS5227 PCI Express Card Reader (ThinkPad T440p) + + pci:v000010ECd00005227sv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ ID_MODEL_FROM_DATABASE=RTS5227 PCI Express Card Reader (ThinkPad X240) + + pci:v000010ECd00005229* + ID_MODEL_FROM_DATABASE=RTS5229 PCI Express Card Reader + + pci:v000010ECd00005229sv00001025sd00000813* +- ID_MODEL_FROM_DATABASE=Aspire R7-571 ++ ID_MODEL_FROM_DATABASE=RTS5229 PCI Express Card Reader (Aspire R7-571) + + pci:v000010ECd00005229sv0000103Csd0000194E* +- ID_MODEL_FROM_DATABASE=ProBook 455 G1 Notebook ++ ID_MODEL_FROM_DATABASE=RTS5229 PCI Express Card Reader (ProBook 455 G1 Notebook) + + pci:v000010ECd00005249* + ID_MODEL_FROM_DATABASE=RTS5249 PCI Express Card Reader + + pci:v000010ECd00005249sv0000103Csd00001909* +- ID_MODEL_FROM_DATABASE=ZBook 15 ++ ID_MODEL_FROM_DATABASE=RTS5249 PCI Express Card Reader (ZBook 15) + + pci:v000010ECd00005288* + ID_MODEL_FROM_DATABASE=Barossa PCI Express Card Reader +@@ -28134,334 +28134,334 @@ pci:v000010ECd00008029* + ID_MODEL_FROM_DATABASE=RTL-8029(AS) + + pci:v000010ECd00008029sv000010B8sd00002011* +- ID_MODEL_FROM_DATABASE=EZ-Card (SMC1208) ++ ID_MODEL_FROM_DATABASE=RTL-8029(AS) (EZ-Card (SMC1208)) + + pci:v000010ECd00008029sv000010ECsd00008029* + ID_MODEL_FROM_DATABASE=RTL-8029(AS) + + pci:v000010ECd00008029sv00001113sd00001208* +- ID_MODEL_FROM_DATABASE=EN1208 ++ ID_MODEL_FROM_DATABASE=RTL-8029(AS) (EN1208) + + pci:v000010ECd00008029sv00001186sd00000300* +- ID_MODEL_FROM_DATABASE=DE-528 ++ ID_MODEL_FROM_DATABASE=RTL-8029(AS) (DE-528) + + pci:v000010ECd00008029sv00001259sd00002400* +- ID_MODEL_FROM_DATABASE=AT-2400 ++ ID_MODEL_FROM_DATABASE=RTL-8029(AS) (AT-2400) + + pci:v000010ECd00008029sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=RTL-8029(AS) (QEMU Virtual Machine) + + pci:v000010ECd00008129* + ID_MODEL_FROM_DATABASE=RTL-8129 + + pci:v000010ECd00008129sv000010ECsd00008129* +- ID_MODEL_FROM_DATABASE=RT8129 Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=RTL-8129 (RT8129 Fast Ethernet Adapter) + + pci:v000010ECd00008129sv000011ECsd00008129* +- ID_MODEL_FROM_DATABASE=RTL8111/8168 PCIe Gigabit Ethernet (misconfigured) ++ ID_MODEL_FROM_DATABASE=RTL-8129 (RTL8111/8168 PCIe Gigabit Ethernet (misconfigured)) + + pci:v000010ECd00008136* + ID_MODEL_FROM_DATABASE=RTL8101E/RTL8102E PCI Express Fast Ethernet controller + + pci:v000010ECd00008136sv0000103Csd00002AB1* +- ID_MODEL_FROM_DATABASE=Pavillion p6774 ++ ID_MODEL_FROM_DATABASE=RTL8101E/RTL8102E PCI Express Fast Ethernet controller (Pavillion p6774) + + pci:v000010ECd00008136sv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=RTL8101E/RTL8102E PCI Express Fast Ethernet controller (Pavilion dv6700) + + pci:v000010ECd00008136sv00001179sd0000FF64* +- ID_MODEL_FROM_DATABASE=RTL8102E PCI-E Fast Ethernet NIC ++ ID_MODEL_FROM_DATABASE=RTL8101E/RTL8102E PCI Express Fast Ethernet controller (RTL8102E PCI-E Fast Ethernet NIC) + + pci:v000010ECd00008138* + ID_MODEL_FROM_DATABASE=RT8139 (B/C) Cardbus Fast Ethernet Adapter + + pci:v000010ECd00008138sv000010ECsd00008138* +- ID_MODEL_FROM_DATABASE=RT8139 (B/C) Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=RT8139 (B/C) Cardbus Fast Ethernet Adapter (RT8139 (B/C) Fast Ethernet Adapter) + + pci:v000010ECd00008139* + ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter + + pci:v000010ECd00008139sv00000357sd0000000A* +- ID_MODEL_FROM_DATABASE=TTP-Monitoring Card V2.0 ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (TTP-Monitoring Card V2.0) + + pci:v000010ECd00008139sv00001025sd0000005A* +- ID_MODEL_FROM_DATABASE=TravelMate 290 ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (TravelMate 290) + + pci:v000010ECd00008139sv00001025sd00008920* +- ID_MODEL_FROM_DATABASE=ALN-325 ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (ALN-325) + + pci:v000010ECd00008139sv00001025sd00008921* +- ID_MODEL_FROM_DATABASE=ALN-325 ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (ALN-325) + + pci:v000010ECd00008139sv0000103Csd0000006A* +- ID_MODEL_FROM_DATABASE=NX9500 ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (NX9500) + + pci:v000010ECd00008139sv0000103Csd00002A20* +- ID_MODEL_FROM_DATABASE=Pavilion t3030.de Desktop PC ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (Pavilion t3030.de Desktop PC) + + pci:v000010ECd00008139sv0000103Csd000030D9* +- ID_MODEL_FROM_DATABASE=Presario C700 ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (Presario C700) + + pci:v000010ECd00008139sv00001043sd00001045* +- ID_MODEL_FROM_DATABASE=L8400B or L3C/S notebook ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (L8400B or L3C/S notebook) + + pci:v000010ECd00008139sv00001043sd00008109* +- ID_MODEL_FROM_DATABASE=P5P800-MX Mainboard ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (P5P800-MX Mainboard) + + pci:v000010ECd00008139sv00001071sd00008160* +- ID_MODEL_FROM_DATABASE=MIM2000 ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (MIM2000) + + pci:v000010ECd00008139sv000010BDsd00000320* +- ID_MODEL_FROM_DATABASE=EP-320X-R ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (EP-320X-R) + + pci:v000010ECd00008139sv000010ECsd00008139* + ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter + + pci:v000010ECd00008139sv000010F7sd00008338* +- ID_MODEL_FROM_DATABASE=Panasonic CF-Y5 laptop ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (Panasonic CF-Y5 laptop) + + pci:v000010ECd00008139sv00001113sd0000EC01* +- ID_MODEL_FROM_DATABASE=LevelOne FNC-0107TX/FNC-0109TX ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (LevelOne FNC-0107TX/FNC-0109TX) + + pci:v000010ECd00008139sv00001186sd00001300* +- ID_MODEL_FROM_DATABASE=DFE-538TX ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (DFE-538TX) + + pci:v000010ECd00008139sv00001186sd00001320* +- ID_MODEL_FROM_DATABASE=SN5200 ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (SN5200) + + pci:v000010ECd00008139sv00001186sd00008139* +- ID_MODEL_FROM_DATABASE=DRN-32TX ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (DRN-32TX) + + pci:v000010ECd00008139sv000011F6sd00008139* +- ID_MODEL_FROM_DATABASE=FN22-3(A) LinxPRO Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (FN22-3(A) LinxPRO Ethernet Adapter) + + pci:v000010ECd00008139sv00001259sd00002500* +- ID_MODEL_FROM_DATABASE=AT-2500TX ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (AT-2500TX) + + pci:v000010ECd00008139sv00001259sd00002503* +- ID_MODEL_FROM_DATABASE=AT-2500TX/ACPI ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (AT-2500TX/ACPI) + + pci:v000010ECd00008139sv00001385sd0000F31D* +- ID_MODEL_FROM_DATABASE=FA311 v2 ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (FA311 v2) + + pci:v000010ECd00008139sv00001395sd00002100* +- ID_MODEL_FROM_DATABASE=AMB2100 ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (AMB2100) + + pci:v000010ECd00008139sv00001429sd0000D010* +- ID_MODEL_FROM_DATABASE=ND010/ND012 ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (ND010/ND012) + + pci:v000010ECd00008139sv00001432sd00009130* +- ID_MODEL_FROM_DATABASE=EN-9130TX ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (EN-9130TX) + + pci:v000010ECd00008139sv00001436sd00008139* +- ID_MODEL_FROM_DATABASE=RT8139 ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (RT8139) + + pci:v000010ECd00008139sv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P30/P35 notebook ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (P30/P35 notebook) + + pci:v000010ECd00008139sv00001458sd0000E000* +- ID_MODEL_FROM_DATABASE=GA-7VM400M/7VT600 Motherboard ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (GA-7VM400M/7VT600 Motherboard) + + pci:v000010ECd00008139sv00001462sd00000131* +- ID_MODEL_FROM_DATABASE=MS-1013 Notebook ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (MS-1013 Notebook) + + pci:v000010ECd00008139sv00001462sd0000217C* +- ID_MODEL_FROM_DATABASE=Aspire L250 ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (Aspire L250) + + pci:v000010ECd00008139sv00001462sd0000788C* +- ID_MODEL_FROM_DATABASE=865PE Neo2-V Mainboard ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (865PE Neo2-V Mainboard) + + pci:v000010ECd00008139sv0000146Csd00001439* +- ID_MODEL_FROM_DATABASE=FE-1439TX ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (FE-1439TX) + + pci:v000010ECd00008139sv00001489sd00006001* +- ID_MODEL_FROM_DATABASE=GF100TXRII ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (GF100TXRII) + + pci:v000010ECd00008139sv00001489sd00006002* +- ID_MODEL_FROM_DATABASE=GF100TXRA ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (GF100TXRA) + + pci:v000010ECd00008139sv0000149Csd0000139A* +- ID_MODEL_FROM_DATABASE=LFE-8139ATX ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (LFE-8139ATX) + + pci:v000010ECd00008139sv0000149Csd00008139* +- ID_MODEL_FROM_DATABASE=LFE-8139TX ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (LFE-8139TX) + + pci:v000010ECd00008139sv000014CBsd00000200* +- ID_MODEL_FROM_DATABASE=LNR-100 Family 10/100 Base-TX Ethernet ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (LNR-100 Family 10/100 Base-TX Ethernet) + + pci:v000010ECd00008139sv00001565sd00002300* +- ID_MODEL_FROM_DATABASE=P4TSV Onboard LAN (RTL8100B) ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (P4TSV Onboard LAN (RTL8100B)) + + pci:v000010ECd00008139sv00001631sd00007003* +- ID_MODEL_FROM_DATABASE=Onboard RTL8111 on GA-8SIML Rev1.0 Mainboard ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (Onboard RTL8111 on GA-8SIML Rev1.0 Mainboard) + + pci:v000010ECd00008139sv00001695sd00009001* +- ID_MODEL_FROM_DATABASE=Onboard RTL8101L 10/100 MBit ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (Onboard RTL8101L 10/100 MBit) + + pci:v000010ECd00008139sv000016ECsd000000FF* +- ID_MODEL_FROM_DATABASE=USR997900A ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (USR997900A) + + pci:v000010ECd00008139sv00001799sd00005000* +- ID_MODEL_FROM_DATABASE=F5D5000 PCI Card/Desktop Network PCI Card ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (F5D5000 PCI Card/Desktop Network PCI Card) + + pci:v000010ECd00008139sv00001799sd00005010* +- ID_MODEL_FROM_DATABASE=F5D5010 CardBus Notebook Network Card ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (F5D5010 CardBus Notebook Network Card) + + pci:v000010ECd00008139sv0000187Esd00003303* +- ID_MODEL_FROM_DATABASE=FN312 ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (FN312) + + pci:v000010ECd00008139sv00001904sd00008139* +- ID_MODEL_FROM_DATABASE=RTL8139D Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (RTL8139D Fast Ethernet Adapter) + + pci:v000010ECd00008139sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (QEMU Virtual Machine) + + pci:v000010ECd00008139sv00002646sd00000001* +- ID_MODEL_FROM_DATABASE=KNE120TX ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (KNE120TX) + + pci:v000010ECd00008139sv00008E2Esd00007000* +- ID_MODEL_FROM_DATABASE=KF-230TX ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (KF-230TX) + + pci:v000010ECd00008139sv00008E2Esd00007100* +- ID_MODEL_FROM_DATABASE=KF-230TX/2 ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (KF-230TX/2) + + pci:v000010ECd00008139sv0000A0A0sd00000007* +- ID_MODEL_FROM_DATABASE=ALN-325C ++ ID_MODEL_FROM_DATABASE=RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (ALN-325C) + + pci:v000010ECd00008167* + ID_MODEL_FROM_DATABASE=RTL-8110SC/8169SC Gigabit Ethernet + + pci:v000010ECd00008167sv00001458sd0000E000* +- ID_MODEL_FROM_DATABASE=GA-MA69G-S3H Motherboard ++ ID_MODEL_FROM_DATABASE=RTL-8110SC/8169SC Gigabit Ethernet (GA-MA69G-S3H Motherboard) + + pci:v000010ECd00008167sv00001462sd0000235C* +- ID_MODEL_FROM_DATABASE=P965 Neo MS-7235 mainboard ++ ID_MODEL_FROM_DATABASE=RTL-8110SC/8169SC Gigabit Ethernet (P965 Neo MS-7235 mainboard) + + pci:v000010ECd00008167sv00001462sd0000236C* +- ID_MODEL_FROM_DATABASE=945P Neo3-F motherboard ++ ID_MODEL_FROM_DATABASE=RTL-8110SC/8169SC Gigabit Ethernet (945P Neo3-F motherboard) + + pci:v000010ECd00008168* + ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller + + pci:v000010ECd00008168sv00001019sd00008168* +- ID_MODEL_FROM_DATABASE=RTL8111/8168 PCI Express Gigabit Ethernet controller ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (RTL8111/8168 PCI Express Gigabit Ethernet controller) + + pci:v000010ECd00008168sv00001028sd00000283* +- ID_MODEL_FROM_DATABASE=Vostro 220 ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (Vostro 220) + + pci:v000010ECd00008168sv00001028sd000004B2* +- ID_MODEL_FROM_DATABASE=Vostro 3350 ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (Vostro 3350) + + pci:v000010ECd00008168sv00001028sd000004DA* +- ID_MODEL_FROM_DATABASE=Vostro 3750 ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (Vostro 3750) + + pci:v000010ECd00008168sv0000103Csd00001611* +- ID_MODEL_FROM_DATABASE=Pavilion DM1Z-3000 ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (Pavilion DM1Z-3000) + + pci:v000010ECd00008168sv0000103Csd00001950* +- ID_MODEL_FROM_DATABASE=ProBook 450/455 ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (ProBook 450/455) + + pci:v000010ECd00008168sv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (Asus IPIBL-LB Motherboard) + + pci:v000010ECd00008168sv00001043sd000011F5* +- ID_MODEL_FROM_DATABASE=A6J-Q008 ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (A6J-Q008) + + pci:v000010ECd00008168sv00001043sd000016D5* +- ID_MODEL_FROM_DATABASE=U6V/U31J laptop ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (U6V/U31J laptop) + + pci:v000010ECd00008168sv00001043sd000081AA* +- ID_MODEL_FROM_DATABASE=P5B ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (P5B) + + pci:v000010ECd00008168sv00001043sd000082C6* +- ID_MODEL_FROM_DATABASE=M3A78-EH Motherboard ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (M3A78-EH Motherboard) + + pci:v000010ECd00008168sv00001043sd000083A3* +- ID_MODEL_FROM_DATABASE=M4A785TD Motherboard ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (M4A785TD Motherboard) + + pci:v000010ECd00008168sv00001043sd00008432* +- ID_MODEL_FROM_DATABASE=P8P67 and other motherboards ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (P8P67 and other motherboards) + + pci:v000010ECd00008168sv00001043sd00008505* +- ID_MODEL_FROM_DATABASE=P8H77-I Motherboard ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (P8H77-I Motherboard) + + pci:v000010ECd00008168sv0000105Bsd00000D7C* +- ID_MODEL_FROM_DATABASE=D270S/D250S Motherboard ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (D270S/D250S Motherboard) + + pci:v000010ECd00008168sv000010ECsd00008168* +- ID_MODEL_FROM_DATABASE=RTL8111/8168 PCI Express Gigabit Ethernet controller ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (RTL8111/8168 PCI Express Gigabit Ethernet controller) + + pci:v000010ECd00008168sv00001458sd0000E000* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (Motherboard) + + pci:v000010ECd00008168sv00001462sd0000238C* +- ID_MODEL_FROM_DATABASE=Onboard RTL8111b on MSI P965 Platinum Mainboard ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (Onboard RTL8111b on MSI P965 Platinum Mainboard) + + pci:v000010ECd00008168sv00001462sd0000368C* +- ID_MODEL_FROM_DATABASE=K9AG Neo2 ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (K9AG Neo2) + + pci:v000010ECd00008168sv00001462sd00004180* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (Wind PC MS-7418) + + pci:v000010ECd00008168sv00001462sd00007522* +- ID_MODEL_FROM_DATABASE=X58 Pro-E ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (X58 Pro-E) + + pci:v000010ECd00008168sv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (CC11/CL11) + + pci:v000010ECd00008168sv00001849sd00008168* +- ID_MODEL_FROM_DATABASE=Motherboard (one of many) ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (Motherboard (one of many)) + + pci:v000010ECd00008168sv00008086sd0000D615* +- ID_MODEL_FROM_DATABASE=Desktop Board D510MO/D525MW ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (Desktop Board D510MO/D525MW) + + pci:v000010ECd00008169* + ID_MODEL_FROM_DATABASE=RTL8169 PCI Gigabit Ethernet Controller + + pci:v000010ECd00008169sv00001025sd00000079* +- ID_MODEL_FROM_DATABASE=Aspire 5024WLMi ++ ID_MODEL_FROM_DATABASE=RTL8169 PCI Gigabit Ethernet Controller (Aspire 5024WLMi) + + pci:v000010ECd00008169sv000010BDsd00003202* +- ID_MODEL_FROM_DATABASE=EP-320G-TX1 32-bit PCI Gigabit Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=RTL8169 PCI Gigabit Ethernet Controller (EP-320G-TX1 32-bit PCI Gigabit Ethernet Adapter) + + pci:v000010ECd00008169sv000010ECsd00008169* +- ID_MODEL_FROM_DATABASE=RTL8169/8110 Family PCI Gigabit Ethernet NIC ++ ID_MODEL_FROM_DATABASE=RTL8169 PCI Gigabit Ethernet Controller (RTL8169/8110 Family PCI Gigabit Ethernet NIC) + + pci:v000010ECd00008169sv00001259sd0000C107* +- ID_MODEL_FROM_DATABASE=CG-LAPCIGT ++ ID_MODEL_FROM_DATABASE=RTL8169 PCI Gigabit Ethernet Controller (CG-LAPCIGT) + + pci:v000010ECd00008169sv00001371sd0000434E* +- ID_MODEL_FROM_DATABASE=ProG-2000L ++ ID_MODEL_FROM_DATABASE=RTL8169 PCI Gigabit Ethernet Controller (ProG-2000L) + + pci:v000010ECd00008169sv00001385sd0000311A* +- ID_MODEL_FROM_DATABASE=GA311 ++ ID_MODEL_FROM_DATABASE=RTL8169 PCI Gigabit Ethernet Controller (GA311) + + pci:v000010ECd00008169sv00001385sd00005200* +- ID_MODEL_FROM_DATABASE=GA511 Gigabit PC Card ++ ID_MODEL_FROM_DATABASE=RTL8169 PCI Gigabit Ethernet Controller (GA511 Gigabit PC Card) + + pci:v000010ECd00008169sv00001458sd0000E000* +- ID_MODEL_FROM_DATABASE=GA-8I915ME-G Mainboard ++ ID_MODEL_FROM_DATABASE=RTL8169 PCI Gigabit Ethernet Controller (GA-8I915ME-G Mainboard) + + pci:v000010ECd00008169sv00001462sd0000030C* +- ID_MODEL_FROM_DATABASE=K8N Neo-FSR v2.0 mainboard ++ ID_MODEL_FROM_DATABASE=RTL8169 PCI Gigabit Ethernet Controller (K8N Neo-FSR v2.0 mainboard) + + pci:v000010ECd00008169sv00001462sd0000065C* +- ID_MODEL_FROM_DATABASE=Hetis 865GV-E (MS-7065) ++ ID_MODEL_FROM_DATABASE=RTL8169 PCI Gigabit Ethernet Controller (Hetis 865GV-E (MS-7065)) + + pci:v000010ECd00008169sv00001462sd0000702C* +- ID_MODEL_FROM_DATABASE=K8T NEO 2 motherboard ++ ID_MODEL_FROM_DATABASE=RTL8169 PCI Gigabit Ethernet Controller (K8T NEO 2 motherboard) + + pci:v000010ECd00008169sv00001462sd00007094* +- ID_MODEL_FROM_DATABASE=K8T Neo2-F V2.0 ++ ID_MODEL_FROM_DATABASE=RTL8169 PCI Gigabit Ethernet Controller (K8T Neo2-F V2.0) + + pci:v000010ECd00008169sv000016ECsd0000011F* +- ID_MODEL_FROM_DATABASE=USR997903 ++ ID_MODEL_FROM_DATABASE=RTL8169 PCI Gigabit Ethernet Controller (USR997903) + + pci:v000010ECd00008169sv00001734sd00001091* +- ID_MODEL_FROM_DATABASE=D2030-A1 ++ ID_MODEL_FROM_DATABASE=RTL8169 PCI Gigabit Ethernet Controller (D2030-A1) + + pci:v000010ECd00008169sv0000A0A0sd00000449* +- ID_MODEL_FROM_DATABASE=AK86-L motherboard ++ ID_MODEL_FROM_DATABASE=RTL8169 PCI Gigabit Ethernet Controller (AK86-L motherboard) + + pci:v000010ECd00008171* + ID_MODEL_FROM_DATABASE=RTL8191SEvA Wireless LAN Controller +@@ -28479,7 +28479,7 @@ pci:v000010ECd00008176* + ID_MODEL_FROM_DATABASE=RTL8188CE 802.11b/g/n WiFi Adapter + + pci:v000010ECd00008176sv00001A3Bsd00001139* +- ID_MODEL_FROM_DATABASE=AW-NE139H Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=RTL8188CE 802.11b/g/n WiFi Adapter (AW-NE139H Half-size Mini PCIe Card) + + pci:v000010ECd00008177* + ID_MODEL_FROM_DATABASE=RTL8191CE PCIe Wireless Network Adapter +@@ -28494,10 +28494,10 @@ pci:v000010ECd00008180* + ID_MODEL_FROM_DATABASE=RTL8180L 802.11b MAC + + pci:v000010ECd00008180sv00001385sd00004700* +- ID_MODEL_FROM_DATABASE=MA521 802.11b Wireless PC Card ++ ID_MODEL_FROM_DATABASE=RTL8180L 802.11b MAC (MA521 802.11b Wireless PC Card) + + pci:v000010ECd00008180sv00001737sd00000019* +- ID_MODEL_FROM_DATABASE=WPC11v4 802.11b Wireless-B Notebook Adapter ++ ID_MODEL_FROM_DATABASE=RTL8180L 802.11b MAC (WPC11v4 802.11b Wireless-B Notebook Adapter) + + pci:v000010ECd00008185* + ID_MODEL_FROM_DATABASE=RTL-8185 IEEE 802.11a/b/g Wireless LAN Controller +@@ -28524,7 +28524,7 @@ pci:v000010ECd00008199* + ID_MODEL_FROM_DATABASE=RTL8187SE Wireless LAN Controller + + pci:v000010ECd00008199sv00001462sd00006894* +- ID_MODEL_FROM_DATABASE=MN54G2 / MS-6894 Wireless Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=RTL8187SE Wireless LAN Controller (MN54G2 / MS-6894 Wireless Mini PCIe Card) + + pci:v000010ECd00008723* + ID_MODEL_FROM_DATABASE=RTL8723AE PCIe Wireless Network Adapter +@@ -28734,115 +28734,115 @@ pci:v00001102d00000002* + ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 + + pci:v00001102d00000002sv0000100Asd00001102* +- ID_MODEL_FROM_DATABASE=SB Live! 5.1 Digital OEM SB0220 EMU10K1-JFF ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (SB Live! 5.1 Digital OEM SB0220 EMU10K1-JFF) + + pci:v00001102d00000002sv00001102sd00000020* +- ID_MODEL_FROM_DATABASE=CT4850 SBLive! Value ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (CT4850 SBLive! Value) + + pci:v00001102d00000002sv00001102sd00000021* +- ID_MODEL_FROM_DATABASE=CT4620 SBLive! ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (CT4620 SBLive!) + + pci:v00001102d00000002sv00001102sd0000002F* +- ID_MODEL_FROM_DATABASE=SBLive! mainboard implementation ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (SBLive! mainboard implementation) + + pci:v00001102d00000002sv00001102sd0000100A* +- ID_MODEL_FROM_DATABASE=SB Live! 5.1 Digital OEM [SB0220] ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (SB Live! 5.1 Digital OEM [SB0220]) + + pci:v00001102d00000002sv00001102sd00004001* +- ID_MODEL_FROM_DATABASE=E-mu APS ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (E-mu APS) + + pci:v00001102d00000002sv00001102sd00008022* +- ID_MODEL_FROM_DATABASE=CT4780 SBLive! Value ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (CT4780 SBLive! Value) + + pci:v00001102d00000002sv00001102sd00008023* +- ID_MODEL_FROM_DATABASE=CT4790 SoundBlaster PCI512 ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (CT4790 SoundBlaster PCI512) + + pci:v00001102d00000002sv00001102sd00008024* +- ID_MODEL_FROM_DATABASE=CT4760 SBLive! ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (CT4760 SBLive!) + + pci:v00001102d00000002sv00001102sd00008025* +- ID_MODEL_FROM_DATABASE=SBLive! Mainboard Implementation ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (SBLive! Mainboard Implementation) + + pci:v00001102d00000002sv00001102sd00008026* +- ID_MODEL_FROM_DATABASE=CT4830 SBLive! Value ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (CT4830 SBLive! Value) + + pci:v00001102d00000002sv00001102sd00008027* +- ID_MODEL_FROM_DATABASE=CT4832 SBLive! Value ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (CT4832 SBLive! Value) + + pci:v00001102d00000002sv00001102sd00008028* +- ID_MODEL_FROM_DATABASE=CT4760 SBLive! OEM version ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (CT4760 SBLive! OEM version) + + pci:v00001102d00000002sv00001102sd00008031* +- ID_MODEL_FROM_DATABASE=CT4831 SBLive! Value ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (CT4831 SBLive! Value) + + pci:v00001102d00000002sv00001102sd00008040* +- ID_MODEL_FROM_DATABASE=CT4760 SBLive! ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (CT4760 SBLive!) + + pci:v00001102d00000002sv00001102sd00008051* +- ID_MODEL_FROM_DATABASE=CT4850 SBLive! Value ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (CT4850 SBLive! Value) + + pci:v00001102d00000002sv00001102sd00008061* +- ID_MODEL_FROM_DATABASE=SBLive! Player 5.1 ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (SBLive! Player 5.1) + + pci:v00001102d00000002sv00001102sd00008064* +- ID_MODEL_FROM_DATABASE=SBLive! 5.1 Model SB0100 ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (SBLive! 5.1 Model SB0100) + + pci:v00001102d00000002sv00001102sd00008065* +- ID_MODEL_FROM_DATABASE=SBLive! 5.1 Digital Model SB0220 ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (SBLive! 5.1 Digital Model SB0220) + + pci:v00001102d00000002sv00001102sd00008066* +- ID_MODEL_FROM_DATABASE=Live! 5.1 Digital [SB0228] ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (Live! 5.1 Digital [SB0228]) + + pci:v00001102d00000002sv00001102sd00008067* +- ID_MODEL_FROM_DATABASE=SBLive! 5.1 eMicro 28028 ++ ID_MODEL_FROM_DATABASE=SB Live! EMU10k1 (SBLive! 5.1 eMicro 28028) + + pci:v00001102d00000004* + ID_MODEL_FROM_DATABASE=SB Audigy + + pci:v00001102d00000004sv00001102sd00000051* +- ID_MODEL_FROM_DATABASE=SB0090 Audigy Player ++ ID_MODEL_FROM_DATABASE=SB Audigy (SB0090 Audigy Player) + + pci:v00001102d00000004sv00001102sd00000053* +- ID_MODEL_FROM_DATABASE=SB0090 Audigy Player/OEM ++ ID_MODEL_FROM_DATABASE=SB Audigy (SB0090 Audigy Player/OEM) + + pci:v00001102d00000004sv00001102sd00000058* +- ID_MODEL_FROM_DATABASE=SB0090 Audigy Player/OEM ++ ID_MODEL_FROM_DATABASE=SB Audigy (SB0090 Audigy Player/OEM) + + pci:v00001102d00000004sv00001102sd00001002* +- ID_MODEL_FROM_DATABASE=SB Audigy2 Platinum ++ ID_MODEL_FROM_DATABASE=SB Audigy (2 Platinum) + + pci:v00001102d00000004sv00001102sd00001003* +- ID_MODEL_FROM_DATABASE=SB0350 Audigy 2 ++ ID_MODEL_FROM_DATABASE=SB Audigy (SB0350 Audigy 2) + + pci:v00001102d00000004sv00001102sd00001007* +- ID_MODEL_FROM_DATABASE=SB0240 Audigy 2 Platinum 6.1 ++ ID_MODEL_FROM_DATABASE=SB Audigy (SB0240 Audigy 2 Platinum 6.1) + + pci:v00001102d00000004sv00001102sd00001009* +- ID_MODEL_FROM_DATABASE=SB Audigy2 OEM HP ++ ID_MODEL_FROM_DATABASE=SB Audigy (2 OEM HP) + + pci:v00001102d00000004sv00001102sd00002001* +- ID_MODEL_FROM_DATABASE=SB Audigy 2 ZS Platinum Pro ++ ID_MODEL_FROM_DATABASE=SB Audigy (2 ZS Platinum Pro) + + pci:v00001102d00000004sv00001102sd00002002* +- ID_MODEL_FROM_DATABASE=SB Audigy 2 ZS (SB0350) ++ ID_MODEL_FROM_DATABASE=SB Audigy (2 ZS (SB0350)) + + pci:v00001102d00000004sv00001102sd00004001* +- ID_MODEL_FROM_DATABASE=E-MU 1010 ++ ID_MODEL_FROM_DATABASE=SB Audigy (E-MU 1010) + + pci:v00001102d00000004sv00001102sd00004002* +- ID_MODEL_FROM_DATABASE=E-MU 0404 ++ ID_MODEL_FROM_DATABASE=SB Audigy (E-MU 0404) + + pci:v00001102d00000005* + ID_MODEL_FROM_DATABASE=SB X-Fi + + pci:v00001102d00000005sv00001102sd00000021* +- ID_MODEL_FROM_DATABASE=X-Fi Platinum ++ ID_MODEL_FROM_DATABASE=SB X-Fi (X-Fi Platinum) + + pci:v00001102d00000005sv00001102sd0000002C* +- ID_MODEL_FROM_DATABASE=X-Fi XtremeGamer FATAL1TY PRO ++ ID_MODEL_FROM_DATABASE=SB X-Fi (X-Fi XtremeGamer FATAL1TY PRO) + + pci:v00001102d00000005sv00001102sd00001003* +- ID_MODEL_FROM_DATABASE=X-Fi XtremeMusic ++ ID_MODEL_FROM_DATABASE=SB X-Fi (X-Fi XtremeMusic) + + pci:v00001102d00000006* + ID_MODEL_FROM_DATABASE=[SB Live! Value] EMU10k1X +@@ -28851,37 +28851,37 @@ pci:v00001102d00000007* + ID_MODEL_FROM_DATABASE=CA0106 Soundblaster + + pci:v00001102d00000007sv00001102sd00000007* +- ID_MODEL_FROM_DATABASE=SBLive! 24bit ++ ID_MODEL_FROM_DATABASE=CA0106 Soundblaster (SBLive! 24bit) + + pci:v00001102d00000007sv00001102sd00001001* +- ID_MODEL_FROM_DATABASE=SB0310 Audigy LS ++ ID_MODEL_FROM_DATABASE=CA0106 Soundblaster (SB0310 Audigy LS) + + pci:v00001102d00000007sv00001102sd00001002* +- ID_MODEL_FROM_DATABASE=SB0312 Audigy LS ++ ID_MODEL_FROM_DATABASE=CA0106 Soundblaster (SB0312 Audigy LS) + + pci:v00001102d00000007sv00001102sd00001006* +- ID_MODEL_FROM_DATABASE=SB0410 SBLive! 24-bit ++ ID_MODEL_FROM_DATABASE=CA0106 Soundblaster (SB0410 SBLive! 24-bit) + + pci:v00001102d00000007sv00001102sd0000100A* +- ID_MODEL_FROM_DATABASE=SB0570 [SB Audigy SE] ++ ID_MODEL_FROM_DATABASE=CA0106 Soundblaster (SB0570 [SB Audigy SE]) + + pci:v00001102d00000007sv00001102sd00001012* +- ID_MODEL_FROM_DATABASE=SB0790 X-Fi XA ++ ID_MODEL_FROM_DATABASE=CA0106 Soundblaster (SB0790 X-Fi XA) + + pci:v00001102d00000007sv00001102sd00001013* +- ID_MODEL_FROM_DATABASE=Soundblaster X-Fi Xtreme Audio ++ ID_MODEL_FROM_DATABASE=CA0106 Soundblaster (Soundblaster X-Fi Xtreme Audio) + + pci:v00001102d00000007sv00001462sd00001009* +- ID_MODEL_FROM_DATABASE=K8N Diamond ++ ID_MODEL_FROM_DATABASE=CA0106 Soundblaster (K8N Diamond) + + pci:v00001102d00000008* + ID_MODEL_FROM_DATABASE=SB0400 Audigy2 Value + + pci:v00001102d00000008sv00001102sd00000008* +- ID_MODEL_FROM_DATABASE=EMU0404 Digital Audio System ++ ID_MODEL_FROM_DATABASE=SB0400 Audigy2 Value (EMU0404 Digital Audio System) + + pci:v00001102d00000008sv00001102sd00004004* +- ID_MODEL_FROM_DATABASE=EMU1010 Digital Audio System [MAEM8960] ++ ID_MODEL_FROM_DATABASE=SB0400 Audigy2 Value (EMU1010 Digital Audio System [MAEM8960]) + + pci:v00001102d00000009* + ID_MODEL_FROM_DATABASE=[SB X-Fi Xtreme Audio] CA0110-IBG +@@ -28890,13 +28890,13 @@ pci:v00001102d00000009sv00001102sd00000010* + ID_MODEL_FROM_DATABASE=[SB X-Fi Xtreme Audio] CA0110-IBG + + pci:v00001102d00000009sv00001102sd00000018* +- ID_MODEL_FROM_DATABASE=SB1040 ++ ID_MODEL_FROM_DATABASE=[SB X-Fi Xtreme Audio] CA0110-IBG (SB1040) + + pci:v00001102d0000000B* + ID_MODEL_FROM_DATABASE=EMU20k2 [X-Fi Titanium Series] + + pci:v00001102d0000000Bsv00001102sd00000041* +- ID_MODEL_FROM_DATABASE=SB0880 [SoundBlaster X-Fi Titanium PCI-e] ++ ID_MODEL_FROM_DATABASE=EMU20k2 [X-Fi Titanium Series] (SB0880 [SoundBlaster X-Fi Titanium PCI-e]) + + pci:v00001102d00004001* + ID_MODEL_FROM_DATABASE=SB Audigy FireWire Port +@@ -28908,7 +28908,7 @@ pci:v00001102d00007002* + ID_MODEL_FROM_DATABASE=SB Live! Game Port + + pci:v00001102d00007002sv00001102sd00000020* +- ID_MODEL_FROM_DATABASE=Gameport Joystick ++ ID_MODEL_FROM_DATABASE=SB Live! Game Port (Gameport Joystick) + + pci:v00001102d00007003* + ID_MODEL_FROM_DATABASE=SB Audigy Game Port +@@ -28917,7 +28917,7 @@ pci:v00001102d00007003sv00001102sd00000040* + ID_MODEL_FROM_DATABASE=SB Audigy Game Port + + pci:v00001102d00007003sv00001102sd00000060* +- ID_MODEL_FROM_DATABASE=SB Audigy2 MIDI/Game Port ++ ID_MODEL_FROM_DATABASE=SB Audigy Game Port (SB Audigy2 MIDI/Game Port) + + pci:v00001102d00007004* + ID_MODEL_FROM_DATABASE=[SB Live! Value] Input device controller +@@ -28926,10 +28926,10 @@ pci:v00001102d00007005* + ID_MODEL_FROM_DATABASE=SB Audigy LS Game Port + + pci:v00001102d00007005sv00001102sd00001001* +- ID_MODEL_FROM_DATABASE=SB0310 Audigy LS MIDI/Game port ++ ID_MODEL_FROM_DATABASE=SB Audigy LS Game Port (SB0310 Audigy LS MIDI/Game port) + + pci:v00001102d00007005sv00001102sd00001002* +- ID_MODEL_FROM_DATABASE=SB0312 Audigy LS MIDI/Game port ++ ID_MODEL_FROM_DATABASE=SB Audigy LS Game Port (SB0312 Audigy LS MIDI/Game port) + + pci:v00001102d00007006* + ID_MODEL_FROM_DATABASE=[SB X-Fi Xtreme Audio] CA0110-IBG PCI to PCIe Bridge +@@ -28938,49 +28938,49 @@ pci:v00001102d00008938* + ID_MODEL_FROM_DATABASE=Ectiva EV1938 + + pci:v00001102d00008938sv00001033sd000080E5* +- ID_MODEL_FROM_DATABASE=SlimTower-Jim (NEC) ++ ID_MODEL_FROM_DATABASE=Ectiva EV1938 (SlimTower-Jim (NEC)) + + pci:v00001102d00008938sv00001071sd00007150* +- ID_MODEL_FROM_DATABASE=Mitac 7150 ++ ID_MODEL_FROM_DATABASE=Ectiva EV1938 (Mitac 7150) + + pci:v00001102d00008938sv0000110Asd00005938* +- ID_MODEL_FROM_DATABASE=Siemens Scenic Mobile 510PIII ++ ID_MODEL_FROM_DATABASE=Ectiva EV1938 (Siemens Scenic Mobile 510PIII) + + pci:v00001102d00008938sv000013BDsd0000100C* +- ID_MODEL_FROM_DATABASE=Ceres-C (Sharp, Intel BX) ++ ID_MODEL_FROM_DATABASE=Ectiva EV1938 (Ceres-C (Sharp, Intel BX)) + + pci:v00001102d00008938sv000013BDsd0000100D* +- ID_MODEL_FROM_DATABASE=Sharp, Intel Banister ++ ID_MODEL_FROM_DATABASE=Ectiva EV1938 (Sharp, Intel Banister) + + pci:v00001102d00008938sv000013BDsd0000100E* +- ID_MODEL_FROM_DATABASE=TwinHead P09S/P09S3 (Sharp) ++ ID_MODEL_FROM_DATABASE=Ectiva EV1938 (TwinHead P09S/P09S3 (Sharp)) + + pci:v00001102d00008938sv000013BDsd0000F6F1* +- ID_MODEL_FROM_DATABASE=Marlin (Sharp) ++ ID_MODEL_FROM_DATABASE=Ectiva EV1938 (Marlin (Sharp)) + + pci:v00001102d00008938sv000014FFsd00000E70* +- ID_MODEL_FROM_DATABASE=P88TE (TWINHEAD INTERNATIONAL Corp) ++ ID_MODEL_FROM_DATABASE=Ectiva EV1938 (P88TE (TWINHEAD INTERNATIONAL Corp)) + + pci:v00001102d00008938sv000014FFsd0000C401* +- ID_MODEL_FROM_DATABASE=Notebook 9100/9200/2000 (TWINHEAD INTERNATIONAL Corp) ++ ID_MODEL_FROM_DATABASE=Ectiva EV1938 (Notebook 9100/9200/2000 (TWINHEAD INTERNATIONAL Corp)) + + pci:v00001102d00008938sv0000156Dsd0000B400* +- ID_MODEL_FROM_DATABASE=G400 - Geo (AlphaTop (Taiwan)) ++ ID_MODEL_FROM_DATABASE=Ectiva EV1938 (G400 - Geo (AlphaTop (Taiwan))) + + pci:v00001102d00008938sv0000156Dsd0000B550* +- ID_MODEL_FROM_DATABASE=G560 (AlphaTop (Taiwan)) ++ ID_MODEL_FROM_DATABASE=Ectiva EV1938 (G560 (AlphaTop (Taiwan))) + + pci:v00001102d00008938sv0000156Dsd0000B560* +- ID_MODEL_FROM_DATABASE=G560 (AlphaTop (Taiwan)) ++ ID_MODEL_FROM_DATABASE=Ectiva EV1938 (G560 (AlphaTop (Taiwan))) + + pci:v00001102d00008938sv0000156Dsd0000B700* +- ID_MODEL_FROM_DATABASE=G700/U700 (AlphaTop (Taiwan)) ++ ID_MODEL_FROM_DATABASE=Ectiva EV1938 (G700/U700 (AlphaTop (Taiwan))) + + pci:v00001102d00008938sv0000156Dsd0000B795* +- ID_MODEL_FROM_DATABASE=G795 (AlphaTop (Taiwan)) ++ ID_MODEL_FROM_DATABASE=Ectiva EV1938 (G795 (AlphaTop (Taiwan))) + + pci:v00001102d00008938sv0000156Dsd0000B797* +- ID_MODEL_FROM_DATABASE=G797 (AlphaTop (Taiwan)) ++ ID_MODEL_FROM_DATABASE=Ectiva EV1938 (G797 (AlphaTop (Taiwan))) + + pci:v00001103* + ID_VENDOR_FROM_DATABASE=HighPoint Technologies, Inc. +@@ -28992,16 +28992,16 @@ pci:v00001103d00000004* + ID_MODEL_FROM_DATABASE=HPT366/368/370/370A/372/372N + + pci:v00001103d00000004sv00001103sd00000001* +- ID_MODEL_FROM_DATABASE=HPT370A ++ ID_MODEL_FROM_DATABASE=HPT366/368/370/370A/372/372N (HPT370A) + + pci:v00001103d00000004sv00001103sd00000004* +- ID_MODEL_FROM_DATABASE=HPT366 UDMA66 (r1) / HPT368 UDMA66 (r2) / HPT370 UDMA100 (r3) / HPT370 UDMA100 RAID (r4) ++ ID_MODEL_FROM_DATABASE=HPT366/368/370/370A/372/372N (HPT366 UDMA66 (r1) / HPT368 UDMA66 (r2) / HPT370 UDMA100 (r3) / HPT370 UDMA100 RAID (r4)) + + pci:v00001103d00000004sv00001103sd00000005* +- ID_MODEL_FROM_DATABASE=HPT370 UDMA100 ++ ID_MODEL_FROM_DATABASE=HPT366/368/370/370A/372/372N (HPT370 UDMA100) + + pci:v00001103d00000004sv00001103sd00000006* +- ID_MODEL_FROM_DATABASE=HPT302/302N ++ ID_MODEL_FROM_DATABASE=HPT366/368/370/370A/372/372N (HPT302/302N) + + pci:v00001103d00000005* + ID_MODEL_FROM_DATABASE=HPT372A/372N +@@ -29040,7 +29040,7 @@ pci:v00001103d00002210* + ID_MODEL_FROM_DATABASE=RocketRAID 2210 SATA-II Controller + + pci:v00001103d00002210sv000011ABsd000011AB* +- ID_MODEL_FROM_DATABASE=88SX6042 ++ ID_MODEL_FROM_DATABASE=RocketRAID 2210 SATA-II Controller (88SX6042) + + pci:v00001103d00002300* + ID_MODEL_FROM_DATABASE=RocketRAID 230x 4 Port SATA-II Controller +@@ -29112,13 +29112,13 @@ pci:v00001105d00008475* + ID_MODEL_FROM_DATABASE=EM8475 REALmagic DVD/MPEG-4 A/V Decoder + + pci:v00001105d00008475sv00001105sd00000001* +- ID_MODEL_FROM_DATABASE=REALmagic X-Card ++ ID_MODEL_FROM_DATABASE=EM8475 REALmagic DVD/MPEG-4 A/V Decoder (REALmagic X-Card) + + pci:v00001105d00008476* + ID_MODEL_FROM_DATABASE=EM8476 REALmagic DVD/MPEG-4 A/V Decoder + + pci:v00001105d00008476sv0000127Dsd00000000* +- ID_MODEL_FROM_DATABASE=CineView II ++ ID_MODEL_FROM_DATABASE=EM8476 REALmagic DVD/MPEG-4 A/V Decoder (CineView II) + + pci:v00001105d00008485* + ID_MODEL_FROM_DATABASE=EM8485 REALmagic DVD/MPEG-4 A/V Decoder +@@ -29163,7 +29163,7 @@ pci:v00001106d00000282* + ID_MODEL_FROM_DATABASE=K8T800Pro Host Bridge + + pci:v00001106d00000282sv00001043sd000080A3* +- ID_MODEL_FROM_DATABASE=A8V Deluxe ++ ID_MODEL_FROM_DATABASE=K8T800Pro Host Bridge (A8V Deluxe) + + pci:v00001106d00000290* + ID_MODEL_FROM_DATABASE=K8M890 Host Bridge +@@ -29178,28 +29178,28 @@ pci:v00001106d00000305* + ID_MODEL_FROM_DATABASE=VT8363/8365 [KT133/KM133] + + pci:v00001106d00000305sv00001019sd00000987* +- ID_MODEL_FROM_DATABASE=K7VZA Mainboard ++ ID_MODEL_FROM_DATABASE=VT8363/8365 [KT133/KM133] (K7VZA Mainboard) + + pci:v00001106d00000305sv00001043sd00008033* +- ID_MODEL_FROM_DATABASE=A7V Mainboard ++ ID_MODEL_FROM_DATABASE=VT8363/8365 [KT133/KM133] (A7V Mainboard) + + pci:v00001106d00000305sv00001043sd0000803E* +- ID_MODEL_FROM_DATABASE=A7V-E Mainboard ++ ID_MODEL_FROM_DATABASE=VT8363/8365 [KT133/KM133] (A7V-E Mainboard) + + pci:v00001106d00000305sv00001043sd00008042* +- ID_MODEL_FROM_DATABASE=A7V133/A7V133-C Mainboard ++ ID_MODEL_FROM_DATABASE=VT8363/8365 [KT133/KM133] (A7V133/A7V133-C Mainboard) + + pci:v00001106d00000305sv0000147Bsd0000A401* +- ID_MODEL_FROM_DATABASE=KT7/KT7-RAID/KT7A/KT7A-RAID Mainboard ++ ID_MODEL_FROM_DATABASE=VT8363/8365 [KT133/KM133] (KT7/KT7-RAID/KT7A/KT7A-RAID Mainboard) + + pci:v00001106d00000308* + ID_MODEL_FROM_DATABASE=PT880 Ultra/PT894 Host Bridge + + pci:v00001106d00000308sv00001043sd00008199* +- ID_MODEL_FROM_DATABASE=P4V800D-X Mainboard ++ ID_MODEL_FROM_DATABASE=PT880 Ultra/PT894 Host Bridge (P4V800D-X Mainboard) + + pci:v00001106d00000308sv00001849sd00000308* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=PT880 Ultra/PT894 Host Bridge (Motherboard) + + pci:v00001106d00000314* + ID_MODEL_FROM_DATABASE=CN700/VN800/P4M800CE/Pro Host Bridge +@@ -29226,7 +29226,7 @@ pci:v00001106d00000364* + ID_MODEL_FROM_DATABASE=CN896/VN896/P4M900 Host Bridge + + pci:v00001106d00000364sv00001043sd000081CE* +- ID_MODEL_FROM_DATABASE=P5VD2-VM mothervoard ++ ID_MODEL_FROM_DATABASE=CN896/VN896/P4M900 Host Bridge (P5VD2-VM mothervoard) + + pci:v00001106d00000391* + ID_MODEL_FROM_DATABASE=VT8371 [KX133] +@@ -29241,7 +29241,7 @@ pci:v00001106d00000415* + ID_MODEL_FROM_DATABASE=VT6415 PATA IDE Host Controller + + pci:v00001106d00000415sv00001043sd0000838F* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=VT6415 PATA IDE Host Controller (Motherboard) + + pci:v00001106d00000501* + ID_MODEL_FROM_DATABASE=VT8501 [Apollo MVP4] +@@ -29256,55 +29256,55 @@ pci:v00001106d00000571* + ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE + + pci:v00001106d00000571sv00001019sd00000985* +- ID_MODEL_FROM_DATABASE=P6VXA Motherboard ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (P6VXA Motherboard) + + pci:v00001106d00000571sv00001019sd00000A81* +- ID_MODEL_FROM_DATABASE=L7VTA v1.0 Motherboard (KT400-8235) ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (L7VTA v1.0 Motherboard (KT400-8235)) + + pci:v00001106d00000571sv00001043sd00008052* +- ID_MODEL_FROM_DATABASE=VT8233A Bus Master ATA100/66/33 IDE ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (VT8233A Bus Master ATA100/66/33 IDE) + + pci:v00001106d00000571sv00001043sd0000808C* +- ID_MODEL_FROM_DATABASE=A7V8X / A7V333 motherboard ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (A7V8X / A7V333 motherboard) + + pci:v00001106d00000571sv00001043sd000080A1* +- ID_MODEL_FROM_DATABASE=A7V8X-X motherboard rev. 1.01 ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (A7V8X-X motherboard rev. 1.01) + + pci:v00001106d00000571sv00001043sd000080ED* +- ID_MODEL_FROM_DATABASE=A7V600/K8V-X/A8V Deluxe motherboard ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (A7V600/K8V-X/A8V Deluxe motherboard) + + pci:v00001106d00000571sv00001106sd00000571* +- ID_MODEL_FROM_DATABASE=VT82C586/B/VT82C686/A/B/VT8233/A/C/VT8235 PIPC Bus Master IDE ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (VT82C586/B/VT82C686/A/B/VT8233/A/C/VT8235 PIPC Bus Master IDE) + + pci:v00001106d00000571sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Magnia Z310 ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (Magnia Z310) + + pci:v00001106d00000571sv00001297sd0000F641* +- ID_MODEL_FROM_DATABASE=FX41 motherboard ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (FX41 motherboard) + + pci:v00001106d00000571sv00001458sd00005002* +- ID_MODEL_FROM_DATABASE=GA-7VAX Mainboard ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (GA-7VAX Mainboard) + + pci:v00001106d00000571sv00001462sd00005901* +- ID_MODEL_FROM_DATABASE=KT6 Delta-FIS2R (MS-6590) ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (KT6 Delta-FIS2R (MS-6590)) + + pci:v00001106d00000571sv00001462sd00007020* +- ID_MODEL_FROM_DATABASE=K8T NEO 2 motherboard ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (K8T NEO 2 motherboard) + + pci:v00001106d00000571sv00001462sd00007094* +- ID_MODEL_FROM_DATABASE=K8T Neo2-F V2.0 ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (K8T Neo2-F V2.0) + + pci:v00001106d00000571sv00001462sd00007120* +- ID_MODEL_FROM_DATABASE=KT4AV motherboard ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (KT4AV motherboard) + + pci:v00001106d00000571sv00001462sd00007181* +- ID_MODEL_FROM_DATABASE=K8MM3-V mainboard ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (K8MM3-V mainboard) + + pci:v00001106d00000571sv0000147Bsd00001407* +- ID_MODEL_FROM_DATABASE=KV8-MAX3 motherboard ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (KV8-MAX3 motherboard) + + pci:v00001106d00000571sv00001849sd00000571* +- ID_MODEL_FROM_DATABASE=K7VT series Motherboards ++ ID_MODEL_FROM_DATABASE=VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (K7VT series Motherboards) + + pci:v00001106d00000576* + ID_MODEL_FROM_DATABASE=VT82C576 3V [Apollo Master] +@@ -29313,7 +29313,7 @@ pci:v00001106d00000581* + ID_MODEL_FROM_DATABASE=CX700/VX700 RAID Controller + + pci:v00001106d00000581sv00001106sd00000581* +- ID_MODEL_FROM_DATABASE=Wrong IDE ID ++ ID_MODEL_FROM_DATABASE=CX700/VX700 RAID Controller (Wrong IDE ID) + + pci:v00001106d00000585* + ID_MODEL_FROM_DATABASE=VT82C585VP [Apollo VP1/VPX] +@@ -29322,7 +29322,7 @@ pci:v00001106d00000586* + ID_MODEL_FROM_DATABASE=VT82C586/A/B PCI-to-ISA [Apollo VP] + + pci:v00001106d00000586sv00001106sd00000000* +- ID_MODEL_FROM_DATABASE=MVP3 ISA Bridge ++ ID_MODEL_FROM_DATABASE=VT82C586/A/B PCI-to-ISA [Apollo VP] (MVP3 ISA Bridge) + + pci:v00001106d00000591* + ID_MODEL_FROM_DATABASE=VT8237A SATA 2-Port Controller +@@ -29334,10 +29334,10 @@ pci:v00001106d00000596* + ID_MODEL_FROM_DATABASE=VT82C596 ISA [Mobile South] + + pci:v00001106d00000596sv00001106sd00000000* +- ID_MODEL_FROM_DATABASE=VT82C596/A/B PCI to ISA Bridge ++ ID_MODEL_FROM_DATABASE=VT82C596 ISA [Mobile South] (VT82C596/A/B PCI to ISA Bridge) + + pci:v00001106d00000596sv00001458sd00000596* +- ID_MODEL_FROM_DATABASE=VT82C596/A/B PCI to ISA Bridge ++ ID_MODEL_FROM_DATABASE=VT82C596 ISA [Mobile South] (VT82C596/A/B PCI to ISA Bridge) + + pci:v00001106d00000597* + ID_MODEL_FROM_DATABASE=VT82C597 [Apollo VP3] +@@ -29352,10 +29352,10 @@ pci:v00001106d00000605* + ID_MODEL_FROM_DATABASE=VT8605 [ProSavage PM133] + + pci:v00001106d00000605sv0000103Csd00001254* +- ID_MODEL_FROM_DATABASE=D9840-60001 [Brio BA410 Motherboard] ++ ID_MODEL_FROM_DATABASE=VT8605 [ProSavage PM133] (D9840-60001 [Brio BA410 Motherboard]) + + pci:v00001106d00000605sv00001043sd0000802C* +- ID_MODEL_FROM_DATABASE=CUV4X mainboard ++ ID_MODEL_FROM_DATABASE=VT8605 [ProSavage PM133] (CUV4X mainboard) + + pci:v00001106d00000680* + ID_MODEL_FROM_DATABASE=VT82C680 [Apollo P6] +@@ -29364,49 +29364,49 @@ pci:v00001106d00000686* + ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super South] + + pci:v00001106d00000686sv00001019sd00000985* +- ID_MODEL_FROM_DATABASE=P6VXA Motherboard ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super South] (P6VXA Motherboard) + + pci:v00001106d00000686sv0000103Csd00001256* +- ID_MODEL_FROM_DATABASE=D9840-60001 [Brio BA410 Motherboard] ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super South] (D9840-60001 [Brio BA410 Motherboard]) + + pci:v00001106d00000686sv00001043sd0000802C* +- ID_MODEL_FROM_DATABASE=CUV4X mainboard ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super South] (CUV4X mainboard) + + pci:v00001106d00000686sv00001043sd00008033* +- ID_MODEL_FROM_DATABASE=A7V Mainboard ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super South] (A7V Mainboard) + + pci:v00001106d00000686sv00001043sd0000803E* +- ID_MODEL_FROM_DATABASE=A7V-E Mainboard ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super South] (A7V-E Mainboard) + + pci:v00001106d00000686sv00001043sd00008040* +- ID_MODEL_FROM_DATABASE=A7M266 Mainboard ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super South] (A7M266 Mainboard) + + pci:v00001106d00000686sv00001043sd00008042* +- ID_MODEL_FROM_DATABASE=A7V133/A7V133-C Mainboard ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super South] (A7V133/A7V133-C Mainboard) + + pci:v00001106d00000686sv00001106sd00000000* +- ID_MODEL_FROM_DATABASE=VT82C686/A PCI to ISA Bridge ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super South] (VT82C686/A PCI to ISA Bridge) + + pci:v00001106d00000686sv00001106sd00000686* +- ID_MODEL_FROM_DATABASE=VT82C686/A PCI to ISA Bridge ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super South] (VT82C686/A PCI to ISA Bridge) + + pci:v00001106d00000686sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Magnia Z310 ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super South] (Magnia Z310) + + pci:v00001106d00000686sv0000147Bsd0000A702* +- ID_MODEL_FROM_DATABASE=KG7-Lite Mainboard ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super South] (KG7-Lite Mainboard) + + pci:v00001106d00000691* + ID_MODEL_FROM_DATABASE=VT82C693A/694x [Apollo PRO133x] + + pci:v00001106d00000691sv00001019sd00000985* +- ID_MODEL_FROM_DATABASE=P6VXA Motherboard ++ ID_MODEL_FROM_DATABASE=VT82C693A/694x [Apollo PRO133x] (P6VXA Motherboard) + + pci:v00001106d00000691sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Magnia Z310 ++ ID_MODEL_FROM_DATABASE=VT82C693A/694x [Apollo PRO133x] (Magnia Z310) + + pci:v00001106d00000691sv00001458sd00000691* +- ID_MODEL_FROM_DATABASE=VT82C691 Apollo Pro System Controller ++ ID_MODEL_FROM_DATABASE=VT82C693A/694x [Apollo PRO133x] (VT82C691 Apollo Pro System Controller) + + pci:v00001106d00000693* + ID_MODEL_FROM_DATABASE=VT82C693 [Apollo Pro Plus] +@@ -29586,61 +29586,61 @@ pci:v00001106d00003038* + ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller + + pci:v00001106d00003038sv00000925sd00001234* +- ID_MODEL_FROM_DATABASE=VA-502 Mainboard ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (VA-502 Mainboard) + + pci:v00001106d00003038sv00001019sd00000985* +- ID_MODEL_FROM_DATABASE=P6VXA Motherboard ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (P6VXA Motherboard) + + pci:v00001106d00003038sv00001019sd00000A81* +- ID_MODEL_FROM_DATABASE=L7VTA v1.0 Motherboard (KT400-8235) ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (L7VTA v1.0 Motherboard (KT400-8235)) + + pci:v00001106d00003038sv00001043sd00008080* +- ID_MODEL_FROM_DATABASE=A7V333 motherboard ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (A7V333 motherboard) + + pci:v00001106d00003038sv00001043sd0000808C* +- ID_MODEL_FROM_DATABASE=VT6202 USB2.0 4 port controller ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (VT6202 USB2.0 4 port controller) + + pci:v00001106d00003038sv00001043sd000080A1* +- ID_MODEL_FROM_DATABASE=A7V8X-X motherboard ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (A7V8X-X motherboard) + + pci:v00001106d00003038sv00001043sd000080ED* +- ID_MODEL_FROM_DATABASE=A7V600/K8V-X/A8V Deluxe motherboard ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (A7V600/K8V-X/A8V Deluxe motherboard) + + pci:v00001106d00003038sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Magnia Z310 ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (Magnia Z310) + + pci:v00001106d00003038sv00001458sd00005004* +- ID_MODEL_FROM_DATABASE=GA-7VAX Mainboard ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (GA-7VAX Mainboard) + + pci:v00001106d00003038sv00001462sd00005901* +- ID_MODEL_FROM_DATABASE=KT6 Delta-FIS2R (MS-6590) ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (KT6 Delta-FIS2R (MS-6590)) + + pci:v00001106d00003038sv00001462sd00007020* +- ID_MODEL_FROM_DATABASE=K8T NEO 2 motherboard ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (K8T NEO 2 motherboard) + + pci:v00001106d00003038sv00001462sd00007094* +- ID_MODEL_FROM_DATABASE=K8T Neo2-F V2.0 ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (K8T Neo2-F V2.0) + + pci:v00001106d00003038sv00001462sd00007120* +- ID_MODEL_FROM_DATABASE=KT4AV motherboard ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (KT4AV motherboard) + + pci:v00001106d00003038sv00001462sd00007181* +- ID_MODEL_FROM_DATABASE=K8MM3-V mainboard ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (K8MM3-V mainboard) + + pci:v00001106d00003038sv0000147Bsd00001407* +- ID_MODEL_FROM_DATABASE=KV8-MAX3 motherboard ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (KV8-MAX3 motherboard) + + pci:v00001106d00003038sv0000182Dsd0000201D* +- ID_MODEL_FROM_DATABASE=CN-029 USB2.0 4 port PCI Card ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (CN-029 USB2.0 4 port PCI Card) + + pci:v00001106d00003038sv00001849sd00003038* +- ID_MODEL_FROM_DATABASE=K7VT series Motherboards ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (K7VT series Motherboards) + + pci:v00001106d00003038sv000019DAsd0000A179* +- ID_MODEL_FROM_DATABASE=ZBOX nano VD01 ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (ZBOX nano VD01) + + pci:v00001106d00003038sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=VT82xxxxx UHCI USB 1.1 Controller (QEMU Virtual Machine) + + pci:v00001106d00003040* + ID_MODEL_FROM_DATABASE=VT82C586B ACPI +@@ -29649,52 +29649,52 @@ pci:v00001106d00003043* + ID_MODEL_FROM_DATABASE=VT86C100A [Rhine] + + pci:v00001106d00003043sv000010BDsd00000000* +- ID_MODEL_FROM_DATABASE=VT86C100A Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=VT86C100A [Rhine] (VT86C100A Fast Ethernet Adapter) + + pci:v00001106d00003043sv00001106sd00000100* +- ID_MODEL_FROM_DATABASE=VT86C100A Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=VT86C100A [Rhine] (VT86C100A Fast Ethernet Adapter) + + pci:v00001106d00003043sv00001186sd00001400* +- ID_MODEL_FROM_DATABASE=DFE-530TX rev A ++ ID_MODEL_FROM_DATABASE=VT86C100A [Rhine] (DFE-530TX rev A) + + pci:v00001106d00003044* + ID_MODEL_FROM_DATABASE=VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller + + pci:v00001106d00003044sv00000010sd00000001* +- ID_MODEL_FROM_DATABASE=IEEE 1394 4port DCST 1394-3+1B ++ ID_MODEL_FROM_DATABASE=VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (IEEE 1394 4port DCST 1394-3+1B) + + pci:v00001106d00003044sv00001025sd0000005A* +- ID_MODEL_FROM_DATABASE=TravelMate 290 ++ ID_MODEL_FROM_DATABASE=VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (TravelMate 290) + + pci:v00001106d00003044sv0000103Csd00002A20* +- ID_MODEL_FROM_DATABASE=Pavilion t3030.de Desktop PC ++ ID_MODEL_FROM_DATABASE=VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (Pavilion t3030.de Desktop PC) + + pci:v00001106d00003044sv0000103Csd00002A3B* +- ID_MODEL_FROM_DATABASE=Media Center PC m7590n ++ ID_MODEL_FROM_DATABASE=VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (Media Center PC m7590n) + + pci:v00001106d00003044sv00001043sd0000808A* +- ID_MODEL_FROM_DATABASE=A8V/A8N/P4P800 series motherboard ++ ID_MODEL_FROM_DATABASE=VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (A8V/A8N/P4P800 series motherboard) + + pci:v00001106d00003044sv00001043sd000081FE* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (Motherboard) + + pci:v00001106d00003044sv00001458sd00001000* +- ID_MODEL_FROM_DATABASE=GA-7VT600-1394 Motherboard ++ ID_MODEL_FROM_DATABASE=VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (GA-7VT600-1394 Motherboard) + + pci:v00001106d00003044sv00001462sd0000207D* +- ID_MODEL_FROM_DATABASE=K8NGM2 series motherboard ++ ID_MODEL_FROM_DATABASE=VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (K8NGM2 series motherboard) + + pci:v00001106d00003044sv00001462sd0000217D* +- ID_MODEL_FROM_DATABASE=Aspire L250 ++ ID_MODEL_FROM_DATABASE=VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (Aspire L250) + + pci:v00001106d00003044sv00001462sd0000590D* +- ID_MODEL_FROM_DATABASE=KT6 Delta-FIS2R (MS-6590) ++ ID_MODEL_FROM_DATABASE=VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (KT6 Delta-FIS2R (MS-6590)) + + pci:v00001106d00003044sv00001462sd0000702D* +- ID_MODEL_FROM_DATABASE=K8T NEO 2 motherboard ++ ID_MODEL_FROM_DATABASE=VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (K8T NEO 2 motherboard) + + pci:v00001106d00003044sv00001462sd0000971D* +- ID_MODEL_FROM_DATABASE=MS-6917 ++ ID_MODEL_FROM_DATABASE=VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (MS-6917) + + pci:v00001106d00003050* + ID_MODEL_FROM_DATABASE=VT82C596 Power Management +@@ -29709,205 +29709,205 @@ pci:v00001106d00003057* + ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super ACPI] + + pci:v00001106d00003057sv00001019sd00000985* +- ID_MODEL_FROM_DATABASE=P6VXA Motherboard ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super ACPI] (P6VXA Motherboard) + + pci:v00001106d00003057sv00001019sd00000987* +- ID_MODEL_FROM_DATABASE=K7VZA Motherboard ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super ACPI] (K7VZA Motherboard) + + pci:v00001106d00003057sv00001043sd00008033* +- ID_MODEL_FROM_DATABASE=A7V Mainboard ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super ACPI] (A7V Mainboard) + + pci:v00001106d00003057sv00001043sd0000803E* +- ID_MODEL_FROM_DATABASE=A7V-E Mainboard ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super ACPI] (A7V-E Mainboard) + + pci:v00001106d00003057sv00001043sd00008040* +- ID_MODEL_FROM_DATABASE=A7M266 Mainboard ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super ACPI] (A7M266 Mainboard) + + pci:v00001106d00003057sv00001043sd00008042* +- ID_MODEL_FROM_DATABASE=A7V133/A7V133-C Mainboard ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super ACPI] (A7V133/A7V133-C Mainboard) + + pci:v00001106d00003057sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Magnia Z310 ++ ID_MODEL_FROM_DATABASE=VT82C686 [Apollo Super ACPI] (Magnia Z310) + + pci:v00001106d00003058* + ID_MODEL_FROM_DATABASE=VT82C686 AC97 Audio Controller + + pci:v00001106d00003058sv00000E11sd00000097* +- ID_MODEL_FROM_DATABASE=SoundMax Digital Integrated Audio ++ ID_MODEL_FROM_DATABASE=VT82C686 AC97 Audio Controller (SoundMax Digital Integrated Audio) + + pci:v00001106d00003058sv00000E11sd0000B194* +- ID_MODEL_FROM_DATABASE=Soundmax integrated digital audio ++ ID_MODEL_FROM_DATABASE=VT82C686 AC97 Audio Controller (Soundmax integrated digital audio) + + pci:v00001106d00003058sv00001019sd00000985* +- ID_MODEL_FROM_DATABASE=P6VXA Motherboard ++ ID_MODEL_FROM_DATABASE=VT82C686 AC97 Audio Controller (P6VXA Motherboard) + + pci:v00001106d00003058sv00001019sd00000987* +- ID_MODEL_FROM_DATABASE=K7VZA Motherboard ++ ID_MODEL_FROM_DATABASE=VT82C686 AC97 Audio Controller (K7VZA Motherboard) + + pci:v00001106d00003058sv0000103Csd00001251* +- ID_MODEL_FROM_DATABASE=D9840-60001 [Brio BA410 Motherboard] ++ ID_MODEL_FROM_DATABASE=VT82C686 AC97 Audio Controller (D9840-60001 [Brio BA410 Motherboard]) + + pci:v00001106d00003058sv00001043sd00001106* +- ID_MODEL_FROM_DATABASE=A7V133/A7V133-C Mainboard ++ ID_MODEL_FROM_DATABASE=VT82C686 AC97 Audio Controller (A7V133/A7V133-C Mainboard) + + pci:v00001106d00003058sv00001106sd00004511* +- ID_MODEL_FROM_DATABASE=Onboard Audio on EP7KXA ++ ID_MODEL_FROM_DATABASE=VT82C686 AC97 Audio Controller (Onboard Audio on EP7KXA) + + pci:v00001106d00003058sv00001106sd0000AA03* +- ID_MODEL_FROM_DATABASE=VT1612A AC'97 Audio Controller ++ ID_MODEL_FROM_DATABASE=VT82C686 AC97 Audio Controller (VT1612A AC'97 Audio Controller) + + pci:v00001106d00003058sv000011D4sd00005348* +- ID_MODEL_FROM_DATABASE=AD1881A audio ++ ID_MODEL_FROM_DATABASE=VT82C686 AC97 Audio Controller (AD1881A audio) + + pci:v00001106d00003058sv00001458sd00007600* +- ID_MODEL_FROM_DATABASE=Onboard Audio ++ ID_MODEL_FROM_DATABASE=VT82C686 AC97 Audio Controller (Onboard Audio) + + pci:v00001106d00003058sv00001462sd00003091* +- ID_MODEL_FROM_DATABASE=MS-6309 Onboard Audio ++ ID_MODEL_FROM_DATABASE=VT82C686 AC97 Audio Controller (MS-6309 Onboard Audio) + + pci:v00001106d00003058sv00001462sd00003092* +- ID_MODEL_FROM_DATABASE=MS-6309 v2.x Mainboard (VIA VT1611A codec) ++ ID_MODEL_FROM_DATABASE=VT82C686 AC97 Audio Controller (MS-6309 v2.x Mainboard (VIA VT1611A codec)) + + pci:v00001106d00003058sv00001462sd00003300* +- ID_MODEL_FROM_DATABASE=MS-6330 Onboard Audio ++ ID_MODEL_FROM_DATABASE=VT82C686 AC97 Audio Controller (MS-6330 Onboard Audio) + + pci:v00001106d00003058sv000015DDsd00007609* +- ID_MODEL_FROM_DATABASE=Onboard Audio ++ ID_MODEL_FROM_DATABASE=VT82C686 AC97 Audio Controller (Onboard Audio) + + pci:v00001106d00003059* + ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller + + pci:v00001106d00003059sv00001019sd00000A81* +- ID_MODEL_FROM_DATABASE=L7VTA v1.0 Motherboard (KT400-8235) ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (L7VTA v1.0 Motherboard (KT400-8235)) + + pci:v00001106d00003059sv00001019sd00001877* +- ID_MODEL_FROM_DATABASE=K8M800-M2 (V2.0) onboard audio ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (K8M800-M2 (V2.0) onboard audio) + + pci:v00001106d00003059sv00001043sd00008095* +- ID_MODEL_FROM_DATABASE=A7V8X Motherboard (Realtek ALC650 codec) ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (A7V8X Motherboard (Realtek ALC650 codec)) + + pci:v00001106d00003059sv00001043sd000080A1* +- ID_MODEL_FROM_DATABASE=A7V8X-X Motherboard ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (A7V8X-X Motherboard) + + pci:v00001106d00003059sv00001043sd000080B0* +- ID_MODEL_FROM_DATABASE=A7V600/K8V-X/K8V Deluxe motherboard (ADI AD1980 codec [SoundMAX]) ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (A7V600/K8V-X/K8V Deluxe motherboard (ADI AD1980 codec [SoundMAX])) + + pci:v00001106d00003059sv00001043sd0000810D* +- ID_MODEL_FROM_DATABASE=Asus P5VD1-X (AD1888 codec [SoundMax]) ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (Asus P5VD1-X (AD1888 codec [SoundMax])) + + pci:v00001106d00003059sv00001043sd0000812A* +- ID_MODEL_FROM_DATABASE=A8V Deluxe motherboard (Realtek ALC850 codec) ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (A8V Deluxe motherboard (Realtek ALC850 codec)) + + pci:v00001106d00003059sv000010ECsd00008168* +- ID_MODEL_FROM_DATABASE=High Definition Audio ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (High Definition Audio) + + pci:v00001106d00003059sv00001106sd00003059* +- ID_MODEL_FROM_DATABASE=L7VMM2 Motherboard ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (L7VMM2 Motherboard) + + pci:v00001106d00003059sv00001106sd00004161* +- ID_MODEL_FROM_DATABASE=K7VT2 motherboard ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (K7VT2 motherboard) + + pci:v00001106d00003059sv00001106sd00004170* +- ID_MODEL_FROM_DATABASE=PCPartner P4M800-8237R Motherboard ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (PCPartner P4M800-8237R Motherboard) + + pci:v00001106d00003059sv00001106sd00004552* +- ID_MODEL_FROM_DATABASE=Soyo KT-600 Dragon Plus (Realtek ALC 650) ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (Soyo KT-600 Dragon Plus (Realtek ALC 650)) + + pci:v00001106d00003059sv00001297sd0000C160* +- ID_MODEL_FROM_DATABASE=FX41 motherboard (Realtek ALC650 codec) ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (FX41 motherboard (Realtek ALC650 codec)) + + pci:v00001106d00003059sv00001413sd0000147B* +- ID_MODEL_FROM_DATABASE=KV8 Pro motherboard onboard audio ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (KV8 Pro motherboard onboard audio) + + pci:v00001106d00003059sv00001458sd0000A002* +- ID_MODEL_FROM_DATABASE=GA-7VAX Onboard Audio (Realtek ALC650) ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (GA-7VAX Onboard Audio (Realtek ALC650)) + + pci:v00001106d00003059sv00001462sd00000080* +- ID_MODEL_FROM_DATABASE=K8T NEO 2 motherboard ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (K8T NEO 2 motherboard) + + pci:v00001106d00003059sv00001462sd00003800* +- ID_MODEL_FROM_DATABASE=KT266 onboard audio ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (KT266 onboard audio) + + pci:v00001106d00003059sv00001462sd00005901* +- ID_MODEL_FROM_DATABASE=KT6 Delta-FIS2R (MS-6590) ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (KT6 Delta-FIS2R (MS-6590)) + + pci:v00001106d00003059sv00001462sd00007181* +- ID_MODEL_FROM_DATABASE=K8MM3-V mainboard ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (K8MM3-V mainboard) + + pci:v00001106d00003059sv0000147Bsd00001407* +- ID_MODEL_FROM_DATABASE=KV8-MAX3 motherboard ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (KV8-MAX3 motherboard) + + pci:v00001106d00003059sv00001695sd0000300C* +- ID_MODEL_FROM_DATABASE=EP-8KRA2+ Mainboard ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (EP-8KRA2+ Mainboard) + + pci:v00001106d00003059sv00001849sd00000850* +- ID_MODEL_FROM_DATABASE=ASRock 775Dual-880 Pro onboard audio (Realtek ALC850) ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (ASRock 775Dual-880 Pro onboard audio (Realtek ALC850)) + + pci:v00001106d00003059sv00001849sd00009739* +- ID_MODEL_FROM_DATABASE=P4VT8 Mainboard (C-Media CMI9739A codec) ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (P4VT8 Mainboard (C-Media CMI9739A codec)) + + pci:v00001106d00003059sv00001849sd00009761* +- ID_MODEL_FROM_DATABASE=K7VT series Motherboards ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (K7VT series Motherboards) + + pci:v00001106d00003059sv00004005sd00004710* +- ID_MODEL_FROM_DATABASE=MSI K7T266 Pro2-RU (MSI-6380 v2) onboard audio (Realtek/ALC 200/200P) ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (MSI K7T266 Pro2-RU (MSI-6380 v2) onboard audio (Realtek/ALC 200/200P)) + + pci:v00001106d00003059sv0000A0A0sd000001B6* +- ID_MODEL_FROM_DATABASE=AK77-8XN onboard audio ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (AK77-8XN onboard audio) + + pci:v00001106d00003059sv0000A0A0sd00000342* +- ID_MODEL_FROM_DATABASE=AK86-L motherboard ++ ID_MODEL_FROM_DATABASE=VT8233/A/8235/8237 AC97 Audio Controller (AK86-L motherboard) + + pci:v00001106d00003065* + ID_MODEL_FROM_DATABASE=VT6102 [Rhine-II] + + pci:v00001106d00003065sv00001043sd000080A1* +- ID_MODEL_FROM_DATABASE=A7V8X-X Motherboard ++ ID_MODEL_FROM_DATABASE=VT6102 [Rhine-II] (A7V8X-X Motherboard) + + pci:v00001106d00003065sv00001043sd000080ED* +- ID_MODEL_FROM_DATABASE=A7V600-X Motherboard ++ ID_MODEL_FROM_DATABASE=VT6102 [Rhine-II] (A7V600-X Motherboard) + + pci:v00001106d00003065sv00001106sd00000102* +- ID_MODEL_FROM_DATABASE=VT6102 [Rhine II] Embeded Ethernet Controller on VT8235 ++ ID_MODEL_FROM_DATABASE=VT6102 [Rhine-II] (VT6102 [Rhine II] Embeded Ethernet Controller on VT8235) + + pci:v00001106d00003065sv00001186sd00001400* +- ID_MODEL_FROM_DATABASE=DFE-530TX rev A ++ ID_MODEL_FROM_DATABASE=VT6102 [Rhine-II] (DFE-530TX rev A) + + pci:v00001106d00003065sv00001186sd00001401* +- ID_MODEL_FROM_DATABASE=DFE-530TX rev B ++ ID_MODEL_FROM_DATABASE=VT6102 [Rhine-II] (DFE-530TX rev B) + + pci:v00001106d00003065sv000013B9sd00001421* +- ID_MODEL_FROM_DATABASE=LD-10/100AL PCI Fast Ethernet Adapter (rev.B) ++ ID_MODEL_FROM_DATABASE=VT6102 [Rhine-II] (LD-10/100AL PCI Fast Ethernet Adapter (rev.B)) + + pci:v00001106d00003065sv00001462sd00007061* +- ID_MODEL_FROM_DATABASE=MS-7061 ++ ID_MODEL_FROM_DATABASE=VT6102 [Rhine-II] (MS-7061) + + pci:v00001106d00003065sv00001462sd00007181* +- ID_MODEL_FROM_DATABASE=K8MM3-V mainboard ++ ID_MODEL_FROM_DATABASE=VT6102 [Rhine-II] (K8MM3-V mainboard) + + pci:v00001106d00003065sv0000147Bsd00001C09* +- ID_MODEL_FROM_DATABASE=NV7 Motherboard ++ ID_MODEL_FROM_DATABASE=VT6102 [Rhine-II] (NV7 Motherboard) + + pci:v00001106d00003065sv00001695sd00003005* +- ID_MODEL_FROM_DATABASE=VT6103 ++ ID_MODEL_FROM_DATABASE=VT6102 [Rhine-II] (VT6103) + + pci:v00001106d00003065sv00001695sd0000300C* +- ID_MODEL_FROM_DATABASE=Realtek ALC655 sound chip ++ ID_MODEL_FROM_DATABASE=VT6102 [Rhine-II] (Realtek ALC655 sound chip) + + pci:v00001106d00003065sv00001849sd00003065* +- ID_MODEL_FROM_DATABASE=K7VT series Motherboards ++ ID_MODEL_FROM_DATABASE=VT6102 [Rhine-II] (K7VT series Motherboards) + + pci:v00001106d00003068* + ID_MODEL_FROM_DATABASE=AC'97 Modem Controller + + pci:v00001106d00003068sv00001462sd0000309E* +- ID_MODEL_FROM_DATABASE=MS-6309 Saturn Motherboard ++ ID_MODEL_FROM_DATABASE=AC'97 Modem Controller (MS-6309 Saturn Motherboard) + + pci:v00001106d00003074* + ID_MODEL_FROM_DATABASE=VT8233 PCI to ISA Bridge + + pci:v00001106d00003074sv00001043sd00008052* +- ID_MODEL_FROM_DATABASE=VT8233A ++ ID_MODEL_FROM_DATABASE=VT8233 PCI to ISA Bridge (VT8233A) + + pci:v00001106d00003091* + ID_MODEL_FROM_DATABASE=VT8633 [Apollo Pro266] +@@ -29916,13 +29916,13 @@ pci:v00001106d00003099* + ID_MODEL_FROM_DATABASE=VT8366/A/7 [Apollo KT266/A/333] + + pci:v00001106d00003099sv00001043sd00008064* +- ID_MODEL_FROM_DATABASE=A7V266-E Mainboard ++ ID_MODEL_FROM_DATABASE=VT8366/A/7 [Apollo KT266/A/333] (A7V266-E Mainboard) + + pci:v00001106d00003099sv00001043sd0000807F* +- ID_MODEL_FROM_DATABASE=A7V333 Mainboard ++ ID_MODEL_FROM_DATABASE=VT8366/A/7 [Apollo KT266/A/333] (A7V333 Mainboard) + + pci:v00001106d00003099sv00001849sd00003099* +- ID_MODEL_FROM_DATABASE=K7VT2 motherboard ++ ID_MODEL_FROM_DATABASE=VT8366/A/7 [Apollo KT266/A/333] (K7VT2 motherboard) + + pci:v00001106d00003101* + ID_MODEL_FROM_DATABASE=VT8653 Host Bridge +@@ -29937,70 +29937,70 @@ pci:v00001106d00003104* + ID_MODEL_FROM_DATABASE=USB 2.0 + + pci:v00001106d00003104sv00001019sd00000A81* +- ID_MODEL_FROM_DATABASE=L7VTA v1.0 Motherboard (KT400-8235) ++ ID_MODEL_FROM_DATABASE=USB 2.0 (L7VTA v1.0 Motherboard (KT400-8235)) + + pci:v00001106d00003104sv00001043sd0000808C* +- ID_MODEL_FROM_DATABASE=A7V8X motherboard ++ ID_MODEL_FROM_DATABASE=USB 2.0 (A7V8X motherboard) + + pci:v00001106d00003104sv00001043sd000080A1* +- ID_MODEL_FROM_DATABASE=A7V8X-X motherboard rev 1.01 ++ ID_MODEL_FROM_DATABASE=USB 2.0 (A7V8X-X motherboard rev 1.01) + + pci:v00001106d00003104sv00001043sd000080ED* +- ID_MODEL_FROM_DATABASE=A7V600/K8V-X/A8V Deluxe motherboard ++ ID_MODEL_FROM_DATABASE=USB 2.0 (A7V600/K8V-X/A8V Deluxe motherboard) + + pci:v00001106d00003104sv00001106sd00003104* +- ID_MODEL_FROM_DATABASE=USB 2.0 Controller ++ ID_MODEL_FROM_DATABASE=USB 2.0 (Controller) + + pci:v00001106d00003104sv00001297sd0000F641* +- ID_MODEL_FROM_DATABASE=FX41 motherboard ++ ID_MODEL_FROM_DATABASE=USB 2.0 (FX41 motherboard) + + pci:v00001106d00003104sv00001458sd00005004* +- ID_MODEL_FROM_DATABASE=GA-7VAX Mainboard ++ ID_MODEL_FROM_DATABASE=USB 2.0 (GA-7VAX Mainboard) + + pci:v00001106d00003104sv00001462sd00005901* +- ID_MODEL_FROM_DATABASE=KT6 Delta-FIS2R (MS-6590) ++ ID_MODEL_FROM_DATABASE=USB 2.0 (KT6 Delta-FIS2R (MS-6590)) + + pci:v00001106d00003104sv00001462sd00007020* +- ID_MODEL_FROM_DATABASE=K8T NEO 2 motherboard ++ ID_MODEL_FROM_DATABASE=USB 2.0 (K8T NEO 2 motherboard) + + pci:v00001106d00003104sv00001462sd00007094* +- ID_MODEL_FROM_DATABASE=K8T Neo2-F V2.0 ++ ID_MODEL_FROM_DATABASE=USB 2.0 (K8T Neo2-F V2.0) + + pci:v00001106d00003104sv00001462sd00007120* +- ID_MODEL_FROM_DATABASE=KT4AV motherboard ++ ID_MODEL_FROM_DATABASE=USB 2.0 (KT4AV motherboard) + + pci:v00001106d00003104sv00001462sd00007181* +- ID_MODEL_FROM_DATABASE=K8MM3-V mainboard ++ ID_MODEL_FROM_DATABASE=USB 2.0 (K8MM3-V mainboard) + + pci:v00001106d00003104sv0000147Bsd00001407* +- ID_MODEL_FROM_DATABASE=KV8-MAX3 motherboard ++ ID_MODEL_FROM_DATABASE=USB 2.0 (KV8-MAX3 motherboard) + + pci:v00001106d00003104sv0000182Dsd0000201D* +- ID_MODEL_FROM_DATABASE=CN-029 USB 2.0 4 port PCI Card ++ ID_MODEL_FROM_DATABASE=USB 2.0 (CN-029 USB 2.0 4 port PCI Card) + + pci:v00001106d00003104sv00001849sd00003104* +- ID_MODEL_FROM_DATABASE=K7VT series Motherboards ++ ID_MODEL_FROM_DATABASE=USB 2.0 (K7VT series Motherboards) + + pci:v00001106d00003104sv000019DAsd0000A179* +- ID_MODEL_FROM_DATABASE=ZBOX nano VD01 ++ ID_MODEL_FROM_DATABASE=USB 2.0 (ZBOX nano VD01) + + pci:v00001106d00003106* + ID_MODEL_FROM_DATABASE=VT6105/VT6106S [Rhine-III] + + pci:v00001106d00003106sv00001106sd00000105* +- ID_MODEL_FROM_DATABASE=VT6106S [Rhine-III] ++ ID_MODEL_FROM_DATABASE=VT6105/VT6106S [Rhine-III] (VT6106S [Rhine-III]) + + pci:v00001106d00003106sv00001186sd00001403* +- ID_MODEL_FROM_DATABASE=DFE-530TX rev C ++ ID_MODEL_FROM_DATABASE=VT6105/VT6106S [Rhine-III] (DFE-530TX rev C) + + pci:v00001106d00003106sv00001186sd00001405* +- ID_MODEL_FROM_DATABASE=DFE-520TX Fast Ethernet PCI Adapter ++ ID_MODEL_FROM_DATABASE=VT6105/VT6106S [Rhine-III] (DFE-520TX Fast Ethernet PCI Adapter) + + pci:v00001106d00003106sv00001186sd00001406* +- ID_MODEL_FROM_DATABASE=DFE-530TX+ rev F2 ++ ID_MODEL_FROM_DATABASE=VT6105/VT6106S [Rhine-III] (DFE-530TX+ rev F2) + + pci:v00001106d00003106sv00001186sd00001407* +- ID_MODEL_FROM_DATABASE=DFE-538TX ++ ID_MODEL_FROM_DATABASE=VT6105/VT6106S [Rhine-III] (DFE-538TX) + + pci:v00001106d00003108* + ID_MODEL_FROM_DATABASE=K8M800/K8N800/K8N800A [S3 UniChrome Pro] +@@ -30018,7 +30018,7 @@ pci:v00001106d00003116* + ID_MODEL_FROM_DATABASE=VT8375 [KM266/KL266] Host Bridge + + pci:v00001106d00003116sv00001297sd0000F641* +- ID_MODEL_FROM_DATABASE=FX41 motherboard ++ ID_MODEL_FROM_DATABASE=VT8375 [KM266/KL266] Host Bridge (FX41 motherboard) + + pci:v00001106d00003118* + ID_MODEL_FROM_DATABASE=CN400/PM800/PM880/PN800/PN880 [S3 UniChrome Pro] +@@ -30045,7 +30045,7 @@ pci:v00001106d00003147* + ID_MODEL_FROM_DATABASE=VT8233A ISA Bridge + + pci:v00001106d00003147sv00001043sd0000808C* +- ID_MODEL_FROM_DATABASE=A7V333 motherboard ++ ID_MODEL_FROM_DATABASE=VT8233A ISA Bridge (A7V333 motherboard) + + pci:v00001106d00003148* + ID_MODEL_FROM_DATABASE=P4M266 Host Bridge +@@ -30054,34 +30054,34 @@ pci:v00001106d00003149* + ID_MODEL_FROM_DATABASE=VIA VT6420 SATA RAID Controller + + pci:v00001106d00003149sv00001043sd000080ED* +- ID_MODEL_FROM_DATABASE=A7V600/K8V Deluxe/K8V-X/A8V Deluxe motherboard ++ ID_MODEL_FROM_DATABASE=VIA VT6420 SATA RAID Controller (A7V600/K8V Deluxe/K8V-X/A8V Deluxe motherboard) + + pci:v00001106d00003149sv00001458sd0000B003* +- ID_MODEL_FROM_DATABASE=GA-7VM400AM(F) Motherboard ++ ID_MODEL_FROM_DATABASE=VIA VT6420 SATA RAID Controller (GA-7VM400AM(F) Motherboard) + + pci:v00001106d00003149sv00001462sd00005901* +- ID_MODEL_FROM_DATABASE=KT6 Delta-FIS2R (MS-6590) ++ ID_MODEL_FROM_DATABASE=VIA VT6420 SATA RAID Controller (KT6 Delta-FIS2R (MS-6590)) + + pci:v00001106d00003149sv00001462sd00007020* +- ID_MODEL_FROM_DATABASE=K8T Neo 2 Motherboard ++ ID_MODEL_FROM_DATABASE=VIA VT6420 SATA RAID Controller (K8T Neo 2 Motherboard) + + pci:v00001106d00003149sv00001462sd00007094* +- ID_MODEL_FROM_DATABASE=K8T Neo2-F V2.0 ++ ID_MODEL_FROM_DATABASE=VIA VT6420 SATA RAID Controller (K8T Neo2-F V2.0) + + pci:v00001106d00003149sv00001462sd00007181* +- ID_MODEL_FROM_DATABASE=K8MM3-V mainboard ++ ID_MODEL_FROM_DATABASE=VIA VT6420 SATA RAID Controller (K8MM3-V mainboard) + + pci:v00001106d00003149sv0000147Bsd00001407* +- ID_MODEL_FROM_DATABASE=KV8-MAX3 motherboard ++ ID_MODEL_FROM_DATABASE=VIA VT6420 SATA RAID Controller (KV8-MAX3 motherboard) + + pci:v00001106d00003149sv0000147Bsd00001408* +- ID_MODEL_FROM_DATABASE=KV7 ++ ID_MODEL_FROM_DATABASE=VIA VT6420 SATA RAID Controller (KV7) + + pci:v00001106d00003149sv00001849sd00003149* +- ID_MODEL_FROM_DATABASE=K7VT6 motherboard ++ ID_MODEL_FROM_DATABASE=VIA VT6420 SATA RAID Controller (K7VT6 motherboard) + + pci:v00001106d00003149sv0000A0A0sd000004AD* +- ID_MODEL_FROM_DATABASE=AK86-L motherboard ++ ID_MODEL_FROM_DATABASE=VIA VT6420 SATA RAID Controller (AK86-L motherboard) + + pci:v00001106d00003156* + ID_MODEL_FROM_DATABASE=P/KN266 Host Bridge +@@ -30093,40 +30093,40 @@ pci:v00001106d00003164* + ID_MODEL_FROM_DATABASE=VT6410 ATA133 RAID controller + + pci:v00001106d00003164sv00001043sd000080F4* +- ID_MODEL_FROM_DATABASE=P4P800 Mainboard Deluxe ATX ++ ID_MODEL_FROM_DATABASE=VT6410 ATA133 RAID controller (P4P800 Mainboard Deluxe ATX) + + pci:v00001106d00003164sv00001462sd00007028* +- ID_MODEL_FROM_DATABASE=915P/G Neo2 ++ ID_MODEL_FROM_DATABASE=VT6410 ATA133 RAID controller (915P/G Neo2) + + pci:v00001106d00003168* + ID_MODEL_FROM_DATABASE=P4X333/P4X400/PT800 AGP Bridge + + pci:v00001106d00003168sv00001849sd00003168* +- ID_MODEL_FROM_DATABASE=P4VT8 Mainboard ++ ID_MODEL_FROM_DATABASE=P4X333/P4X400/PT800 AGP Bridge (P4VT8 Mainboard) + + pci:v00001106d00003177* + ID_MODEL_FROM_DATABASE=VT8235 ISA Bridge + + pci:v00001106d00003177sv00001019sd00000A81* +- ID_MODEL_FROM_DATABASE=L7VTA v1.0 Motherboard (KT400-8235) ++ ID_MODEL_FROM_DATABASE=VT8235 ISA Bridge (L7VTA v1.0 Motherboard (KT400-8235)) + + pci:v00001106d00003177sv00001043sd0000808C* +- ID_MODEL_FROM_DATABASE=A7V8X motherboard ++ ID_MODEL_FROM_DATABASE=VT8235 ISA Bridge (A7V8X motherboard) + + pci:v00001106d00003177sv00001043sd000080A1* +- ID_MODEL_FROM_DATABASE=A7V8X-X motherboard ++ ID_MODEL_FROM_DATABASE=VT8235 ISA Bridge (A7V8X-X motherboard) + + pci:v00001106d00003177sv00001106sd00000000* +- ID_MODEL_FROM_DATABASE=KT4AV motherboard ++ ID_MODEL_FROM_DATABASE=VT8235 ISA Bridge (KT4AV motherboard) + + pci:v00001106d00003177sv00001297sd0000F641* +- ID_MODEL_FROM_DATABASE=FX41 motherboard ++ ID_MODEL_FROM_DATABASE=VT8235 ISA Bridge (FX41 motherboard) + + pci:v00001106d00003177sv00001458sd00005001* +- ID_MODEL_FROM_DATABASE=GA-7VAX Mainboard ++ ID_MODEL_FROM_DATABASE=VT8235 ISA Bridge (GA-7VAX Mainboard) + + pci:v00001106d00003177sv00001849sd00003177* +- ID_MODEL_FROM_DATABASE=K7VT series Motherboards ++ ID_MODEL_FROM_DATABASE=VT8235 ISA Bridge (K7VT series Motherboards) + + pci:v00001106d00003178* + ID_MODEL_FROM_DATABASE=ProSavageDDR P4N333 Host Bridge +@@ -30135,25 +30135,25 @@ pci:v00001106d00003188* + ID_MODEL_FROM_DATABASE=VT8385 [K8T800 AGP] Host Bridge + + pci:v00001106d00003188sv00001043sd000080A3* +- ID_MODEL_FROM_DATABASE=K8V Deluxe/K8V-X motherboard ++ ID_MODEL_FROM_DATABASE=VT8385 [K8T800 AGP] Host Bridge (K8V Deluxe/K8V-X motherboard) + + pci:v00001106d00003188sv0000147Bsd00001407* +- ID_MODEL_FROM_DATABASE=KV8-MAX3 motherboard ++ ID_MODEL_FROM_DATABASE=VT8385 [K8T800 AGP] Host Bridge (KV8-MAX3 motherboard) + + pci:v00001106d00003189* + ID_MODEL_FROM_DATABASE=VT8377 [KT400/KT600 AGP] Host Bridge + + pci:v00001106d00003189sv00001043sd0000807F* +- ID_MODEL_FROM_DATABASE=A7V8X motherboard ++ ID_MODEL_FROM_DATABASE=VT8377 [KT400/KT600 AGP] Host Bridge (A7V8X motherboard) + + pci:v00001106d00003189sv00001106sd00000000* +- ID_MODEL_FROM_DATABASE=KT4AV motherboard (KT400A) ++ ID_MODEL_FROM_DATABASE=VT8377 [KT400/KT600 AGP] Host Bridge (KT4AV motherboard (KT400A)) + + pci:v00001106d00003189sv00001458sd00005000* +- ID_MODEL_FROM_DATABASE=GA-7VAX Mainboard ++ ID_MODEL_FROM_DATABASE=VT8377 [KT400/KT600 AGP] Host Bridge (GA-7VAX Mainboard) + + pci:v00001106d00003189sv00001849sd00003189* +- ID_MODEL_FROM_DATABASE=K7VT series Motherboards ++ ID_MODEL_FROM_DATABASE=VT8377 [KT400/KT600 AGP] Host Bridge (K7VT series Motherboards) + + pci:v00001106d00003204* + ID_MODEL_FROM_DATABASE=K8M800 Host Bridge +@@ -30162,7 +30162,7 @@ pci:v00001106d00003205* + ID_MODEL_FROM_DATABASE=VT8378 [KM400/A] Chipset Host Bridge + + pci:v00001106d00003205sv00001458sd00005000* +- ID_MODEL_FROM_DATABASE=GA-7VM400M Motherboard ++ ID_MODEL_FROM_DATABASE=VT8378 [KM400/A] Chipset Host Bridge (GA-7VM400M Motherboard) + + pci:v00001106d00003208* + ID_MODEL_FROM_DATABASE=PT890 Host Bridge +@@ -30177,19 +30177,19 @@ pci:v00001106d00003227* + ID_MODEL_FROM_DATABASE=VT8237 ISA bridge [KT600/K8T800/K8T890 South] + + pci:v00001106d00003227sv00001043sd000080ED* +- ID_MODEL_FROM_DATABASE=A7V600/K8V-X/A8V Deluxe motherboard ++ ID_MODEL_FROM_DATABASE=VT8237 ISA bridge [KT600/K8T800/K8T890 South] (A7V600/K8V-X/A8V Deluxe motherboard) + + pci:v00001106d00003227sv00001106sd00003227* +- ID_MODEL_FROM_DATABASE=DFI KT600-AL / Soltek SL-B9D-FGR Motherboard ++ ID_MODEL_FROM_DATABASE=VT8237 ISA bridge [KT600/K8T800/K8T890 South] (DFI KT600-AL / Soltek SL-B9D-FGR Motherboard) + + pci:v00001106d00003227sv00001458sd00005001* +- ID_MODEL_FROM_DATABASE=GA-7VT600 Motherboard ++ ID_MODEL_FROM_DATABASE=VT8237 ISA bridge [KT600/K8T800/K8T890 South] (GA-7VT600 Motherboard) + + pci:v00001106d00003227sv0000147Bsd00001407* +- ID_MODEL_FROM_DATABASE=KV8-MAX3 motherboard ++ ID_MODEL_FROM_DATABASE=VT8237 ISA bridge [KT600/K8T800/K8T890 South] (KV8-MAX3 motherboard) + + pci:v00001106d00003227sv00001849sd00003227* +- ID_MODEL_FROM_DATABASE=K7VT4 motherboard ++ ID_MODEL_FROM_DATABASE=VT8237 ISA bridge [KT600/K8T800/K8T890 South] (K7VT4 motherboard) + + pci:v00001106d00003230* + ID_MODEL_FROM_DATABASE=K8M890CE/K8N890CE [Chrome 9] +@@ -30237,7 +30237,7 @@ pci:v00001106d00003288* + ID_MODEL_FROM_DATABASE=VT8237A/VT8251 HDA Controller + + pci:v00001106d00003288sv000019DAsd0000A179* +- ID_MODEL_FROM_DATABASE=ZBOX VD01 ++ ID_MODEL_FROM_DATABASE=VT8237A/VT8251 HDA Controller (ZBOX VD01) + + pci:v00001106d00003290* + ID_MODEL_FROM_DATABASE=K8M890 Host Bridge +@@ -30294,10 +30294,10 @@ pci:v00001106d00003403* + ID_MODEL_FROM_DATABASE=VT6315 Series Firewire Controller + + pci:v00001106d00003403sv00001043sd00008374* +- ID_MODEL_FROM_DATABASE=M5A88-V EVO ++ ID_MODEL_FROM_DATABASE=VT6315 Series Firewire Controller (M5A88-V EVO) + + pci:v00001106d00003403sv00001043sd00008384* +- ID_MODEL_FROM_DATABASE=P8P67 Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=VT6315 Series Firewire Controller (P8P67 Deluxe Motherboard) + + pci:v00001106d00003409* + ID_MODEL_FROM_DATABASE=VX855/VX875 DRAM Bus Control +@@ -30306,7 +30306,7 @@ pci:v00001106d00003410* + ID_MODEL_FROM_DATABASE=VX900 DRAM Bus Control + + pci:v00001106d00003410sv000019DAsd0000A179* +- ID_MODEL_FROM_DATABASE=ZBOX nano VD01 ++ ID_MODEL_FROM_DATABASE=VX900 DRAM Bus Control (ZBOX nano VD01) + + pci:v00001106d00003432* + ID_MODEL_FROM_DATABASE=VL80x xHCI USB 3.0 Controller +@@ -30378,7 +30378,7 @@ pci:v00001106d00004410* + ID_MODEL_FROM_DATABASE=VX900 Power Management and Chip Testing Control + + pci:v00001106d00004410sv000019DAsd0000A179* +- ID_MODEL_FROM_DATABASE=ZBOX nano VD01 ++ ID_MODEL_FROM_DATABASE=VX900 Power Management and Chip Testing Control (ZBOX nano VD01) + + pci:v00001106d00005030* + ID_MODEL_FROM_DATABASE=VT82C596 ACPI [Apollo PRO] +@@ -30456,7 +30456,7 @@ pci:v00001106d00006410* + ID_MODEL_FROM_DATABASE=VX900 Scratch Registers + + pci:v00001106d00006410sv000019DAsd0000A179* +- ID_MODEL_FROM_DATABASE=ZBOX nano VD01 ++ ID_MODEL_FROM_DATABASE=VX900 Scratch Registers (ZBOX nano VD01) + + pci:v00001106d00007122* + ID_MODEL_FROM_DATABASE=VX900 Graphics [Chrome9 HD] +@@ -30468,10 +30468,10 @@ pci:v00001106d00007205* + ID_MODEL_FROM_DATABASE=KM400/KN400/P4M800 [S3 UniChrome] + + pci:v00001106d00007205sv00001458sd0000D000* +- ID_MODEL_FROM_DATABASE=Gigabyte GA-7VM400(A)M(F) Motherboard ++ ID_MODEL_FROM_DATABASE=KM400/KN400/P4M800 [S3 UniChrome] (Gigabyte GA-7VM400(A)M(F) Motherboard) + + pci:v00001106d00007205sv00001462sd00007061* +- ID_MODEL_FROM_DATABASE=MS-7061 ++ ID_MODEL_FROM_DATABASE=KM400/KN400/P4M800 [S3 UniChrome] (MS-7061) + + pci:v00001106d00007208* + ID_MODEL_FROM_DATABASE=PT890 Host Bridge +@@ -30534,7 +30534,7 @@ pci:v00001106d00007410* + ID_MODEL_FROM_DATABASE=VX900 North-South Module Interface Control + + pci:v00001106d00007410sv000019DAsd0000A179* +- ID_MODEL_FROM_DATABASE=ZBOX nano VD01 ++ ID_MODEL_FROM_DATABASE=VX900 North-South Module Interface Control (ZBOX nano VD01) + + pci:v00001106d00008231* + ID_MODEL_FROM_DATABASE=VT8231 [PCI-to-ISA Bridge] +@@ -30564,7 +30564,7 @@ pci:v00001106d00008410* + ID_MODEL_FROM_DATABASE=VX900 Bus Control and Power Management + + pci:v00001106d00008410sv000019DAsd0000A179* +- ID_MODEL_FROM_DATABASE=ZBOX VD01 ++ ID_MODEL_FROM_DATABASE=VX900 Bus Control and Power Management (ZBOX VD01) + + pci:v00001106d00008500* + ID_MODEL_FROM_DATABASE=KLE133/PLE133/PLE133T +@@ -30582,7 +30582,7 @@ pci:v00001106d00008598* + ID_MODEL_FROM_DATABASE=VT82C598/694x [Apollo MVP3/Pro133x AGP] + + pci:v00001106d00008598sv00001019sd00000985* +- ID_MODEL_FROM_DATABASE=P6VXA Motherboard ++ ID_MODEL_FROM_DATABASE=VT82C598/694x [Apollo MVP3/Pro133x AGP] (P6VXA Motherboard) + + pci:v00001106d00008601* + ID_MODEL_FROM_DATABASE=VT8601 [Apollo ProMedia AGP] +@@ -30669,7 +30669,7 @@ pci:v00001106d0000B188* + ID_MODEL_FROM_DATABASE=VT8237/8251 PCI bridge [K8M890/K8T800/K8T890 South] + + pci:v00001106d0000B188sv0000147Bsd00001407* +- ID_MODEL_FROM_DATABASE=KV8-MAX3 motherboard ++ ID_MODEL_FROM_DATABASE=VT8237/8251 PCI bridge [K8M890/K8T800/K8T890 South] (KV8-MAX3 motherboard) + + pci:v00001106d0000B198* + ID_MODEL_FROM_DATABASE=VT8237/VX700 PCI Bridge +@@ -30846,7 +30846,7 @@ pci:v0000110Ad00004029sv0000110Asd00004029* + ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5613 A2 + + pci:v0000110Ad00004029sv0000110Asd0000C029* +- ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5614 A2 ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5613 A2 (SIMATIC NET CP 5614 A2) + + pci:v0000110Ad00004035* + ID_MODEL_FROM_DATABASE=SIMATIC NET CP 1613 A2 +@@ -30864,7 +30864,7 @@ pci:v0000110Ad00004069sv0000110Asd00004069* + ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5623 + + pci:v0000110Ad00004069sv0000110Asd0000C069* +- ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5624 ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5623 (SIMATIC NET CP 5624) + + pci:v0000110Ad0000407C* + ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5612 +@@ -30942,25 +30942,25 @@ pci:v00001113d00001211* + ID_MODEL_FROM_DATABASE=SMC2-1211TX + + pci:v00001113d00001211sv0000103Csd00001207* +- ID_MODEL_FROM_DATABASE=EN-1207D Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=SMC2-1211TX (EN-1207D Fast Ethernet Adapter) + + pci:v00001113d00001211sv00001113sd00001211* +- ID_MODEL_FROM_DATABASE=EN-1207D Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=SMC2-1211TX (EN-1207D Fast Ethernet Adapter) + + pci:v00001113d00001216* + ID_MODEL_FROM_DATABASE=EN-1216 Ethernet Adapter + + pci:v00001113d00001216sv00001113sd00001216* +- ID_MODEL_FROM_DATABASE=EN1207F series PCI Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=EN-1216 Ethernet Adapter (EN1207F series PCI Fast Ethernet Adapter) + + pci:v00001113d00001216sv00001113sd00002220* +- ID_MODEL_FROM_DATABASE=EN2220A Cardbus Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=EN-1216 Ethernet Adapter (EN2220A Cardbus Fast Ethernet Adapter) + + pci:v00001113d00001216sv00001113sd00002242* +- ID_MODEL_FROM_DATABASE=EN2242 10/100 Ethernet Mini-PCI Card ++ ID_MODEL_FROM_DATABASE=EN-1216 Ethernet Adapter (EN2242 10/100 Ethernet Mini-PCI Card) + + pci:v00001113d00001216sv0000111Asd00001020* +- ID_MODEL_FROM_DATABASE=SpeedStream 1020 PCI 10/100 Ethernet Adaptor [EN-1207F-TX ?] ++ ID_MODEL_FROM_DATABASE=EN-1216 Ethernet Adapter (SpeedStream 1020 PCI 10/100 Ethernet Adaptor [EN-1207F-TX ?]) + + pci:v00001113d00001217* + ID_MODEL_FROM_DATABASE=EN-1217 Ethernet Adapter +@@ -31272,37 +31272,37 @@ pci:v0000111Ad00000003* + ID_MODEL_FROM_DATABASE=ENI-25P ATM + + pci:v0000111Ad00000003sv0000111Asd00000000* +- ID_MODEL_FROM_DATABASE=ENI-25p Miniport ATM Adapter ++ ID_MODEL_FROM_DATABASE=ENI-25P ATM (ENI-25p Miniport ATM Adapter) + + pci:v0000111Ad00000005* + ID_MODEL_FROM_DATABASE=SpeedStream (LANAI) + + pci:v0000111Ad00000005sv0000111Asd00000001* +- ID_MODEL_FROM_DATABASE=ENI-3010 ATM ++ ID_MODEL_FROM_DATABASE=SpeedStream (LANAI) (ENI-3010 ATM) + + pci:v0000111Ad00000005sv0000111Asd00000009* +- ID_MODEL_FROM_DATABASE=ENI-3060 ADSL (VPI=0) ++ ID_MODEL_FROM_DATABASE=SpeedStream (LANAI) (ENI-3060 ADSL (VPI=0)) + + pci:v0000111Ad00000005sv0000111Asd00000101* +- ID_MODEL_FROM_DATABASE=ENI-3010 ATM ++ ID_MODEL_FROM_DATABASE=SpeedStream (LANAI) (ENI-3010 ATM) + + pci:v0000111Ad00000005sv0000111Asd00000109* +- ID_MODEL_FROM_DATABASE=ENI-3060CO ADSL (VPI=0) ++ ID_MODEL_FROM_DATABASE=SpeedStream (LANAI) (ENI-3060CO ADSL (VPI=0)) + + pci:v0000111Ad00000005sv0000111Asd00000809* +- ID_MODEL_FROM_DATABASE=ENI-3060 ADSL (VPI=0 or 8) ++ ID_MODEL_FROM_DATABASE=SpeedStream (LANAI) (ENI-3060 ADSL (VPI=0 or 8)) + + pci:v0000111Ad00000005sv0000111Asd00000909* +- ID_MODEL_FROM_DATABASE=ENI-3060CO ADSL (VPI=0 or 8) ++ ID_MODEL_FROM_DATABASE=SpeedStream (LANAI) (ENI-3060CO ADSL (VPI=0 or 8)) + + pci:v0000111Ad00000005sv0000111Asd00000A09* +- ID_MODEL_FROM_DATABASE=ENI-3060 ADSL (VPI=<0..15>) ++ ID_MODEL_FROM_DATABASE=SpeedStream (LANAI) (ENI-3060 ADSL (VPI=<0..15>)) + + pci:v0000111Ad00000007* + ID_MODEL_FROM_DATABASE=SpeedStream ADSL + + pci:v0000111Ad00000007sv0000111Asd00001001* +- ID_MODEL_FROM_DATABASE=ENI-3061 ADSL [ASIC] ++ ID_MODEL_FROM_DATABASE=SpeedStream ADSL (ENI-3061 ADSL [ASIC]) + + pci:v0000111Ad00001020* + ID_MODEL_FROM_DATABASE=SpeedStream PCI 10/100 Network Card +@@ -31446,7 +31446,7 @@ pci:v0000111Dd0000806A* + ID_MODEL_FROM_DATABASE=PES24T3G2 PCI Express Gen2 Switch + + pci:v0000111Dd0000806Asv000014C1sd0000000C* +- ID_MODEL_FROM_DATABASE=10G-PCIE2-8B2 ++ ID_MODEL_FROM_DATABASE=PES24T3G2 PCI Express Gen2 Switch (10G-PCIE2-8B2) + + pci:v0000111Dd0000806C* + ID_MODEL_FROM_DATABASE=PES16T4A/4T4G2 PCI Express Gen2 Switch +@@ -31515,7 +31515,7 @@ pci:v00001127d00000400* + ID_MODEL_FROM_DATABASE=ForeRunnerHE ATM Adapter + + pci:v00001127d00000400sv00001127sd00000400* +- ID_MODEL_FROM_DATABASE=ForeRunnerHE ATM ++ ID_MODEL_FROM_DATABASE=ForeRunnerHE ATM Adapter (ForeRunnerHE ATM) + + pci:v00001129* + ID_VENDOR_FROM_DATABASE=Firmworks +@@ -31557,13 +31557,13 @@ pci:v00001131d00001561* + ID_MODEL_FROM_DATABASE=USB 1.1 Host Controller + + pci:v00001131d00001561sv00001775sd0000C200* +- ID_MODEL_FROM_DATABASE=C2K onboard USB 1.1 host controller ++ ID_MODEL_FROM_DATABASE=USB 1.1 Host Controller (C2K onboard USB 1.1 host controller) + + pci:v00001131d00001562* + ID_MODEL_FROM_DATABASE=USB 2.0 Host Controller + + pci:v00001131d00001562sv00001775sd0000C200* +- ID_MODEL_FROM_DATABASE=C2K onboard USB 2.0 host controller ++ ID_MODEL_FROM_DATABASE=USB 2.0 Host Controller (C2K onboard USB 2.0 host controller) + + pci:v00001131d00003400* + ID_MODEL_FROM_DATABASE=SmartPCI56(UCB1500) 56K Modem +@@ -31572,49 +31572,49 @@ pci:v00001131d00005400* + ID_MODEL_FROM_DATABASE=TriMedia TM1000/1100 + + pci:v00001131d00005400sv000012CAsd00000000* +- ID_MODEL_FROM_DATABASE=BlueICE ++ ID_MODEL_FROM_DATABASE=TriMedia TM1000/1100 (BlueICE) + + pci:v00001131d00005402* + ID_MODEL_FROM_DATABASE=TriMedia TM1300 + + pci:v00001131d00005402sv00001244sd00000F00* +- ID_MODEL_FROM_DATABASE=Fritz!Card DSL ++ ID_MODEL_FROM_DATABASE=TriMedia TM1300 (Fritz!Card DSL) + + pci:v00001131d00005402sv000015EBsd00001300* +- ID_MODEL_FROM_DATABASE=DT1300 ++ ID_MODEL_FROM_DATABASE=TriMedia TM1300 (DT1300) + + pci:v00001131d00005402sv000015EBsd00001302* +- ID_MODEL_FROM_DATABASE=DT1302 ++ ID_MODEL_FROM_DATABASE=TriMedia TM1300 (DT1302) + + pci:v00001131d00005402sv000015EBsd00001304* +- ID_MODEL_FROM_DATABASE=DT1304 ++ ID_MODEL_FROM_DATABASE=TriMedia TM1300 (DT1304) + + pci:v00001131d00005402sv000015EBsd00001305* +- ID_MODEL_FROM_DATABASE=DT1305 ++ ID_MODEL_FROM_DATABASE=TriMedia TM1300 (DT1305) + + pci:v00001131d00005402sv000015EBsd00001306* +- ID_MODEL_FROM_DATABASE=PMCDT1306 ++ ID_MODEL_FROM_DATABASE=TriMedia TM1300 (PMCDT1306) + + pci:v00001131d00005402sv000015EBsd00001308* +- ID_MODEL_FROM_DATABASE=DT1308 ++ ID_MODEL_FROM_DATABASE=TriMedia TM1300 (DT1308) + + pci:v00001131d00005402sv000015EBsd00001331* +- ID_MODEL_FROM_DATABASE=DT1301 with SAA7121 ++ ID_MODEL_FROM_DATABASE=TriMedia TM1300 (DT1301 with SAA7121) + + pci:v00001131d00005402sv000015EBsd00001337* +- ID_MODEL_FROM_DATABASE=DT1301 with SAA7127 ++ ID_MODEL_FROM_DATABASE=TriMedia TM1300 (DT1301 with SAA7127) + + pci:v00001131d00005402sv000015EBsd00002D3D* +- ID_MODEL_FROM_DATABASE=X3D ++ ID_MODEL_FROM_DATABASE=TriMedia TM1300 (X3D) + + pci:v00001131d00005402sv000015EBsd00007022* +- ID_MODEL_FROM_DATABASE=PTM1300 ++ ID_MODEL_FROM_DATABASE=TriMedia TM1300 (PTM1300) + + pci:v00001131d00005405* + ID_MODEL_FROM_DATABASE=TriMedia TM1500 + + pci:v00001131d00005405sv00001136sd00000005* +- ID_MODEL_FROM_DATABASE=LCP-1500 ++ ID_MODEL_FROM_DATABASE=TriMedia TM1500 (LCP-1500) + + pci:v00001131d00005406* + ID_MODEL_FROM_DATABASE=TriMedia TM1700 +@@ -31623,409 +31623,409 @@ pci:v00001131d0000540B* + ID_MODEL_FROM_DATABASE=PNX1005 Media Processor + + pci:v00001131d0000540Bsv00001131sd00000020* +- ID_MODEL_FROM_DATABASE=PNXLite PCI Demo Board ++ ID_MODEL_FROM_DATABASE=PNX1005 Media Processor (PNXLite PCI Demo Board) + + pci:v00001131d00007130* + ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder + + pci:v00001131d00007130sv00000000sd00004016* +- ID_MODEL_FROM_DATABASE=Behold TV 401 ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (Behold TV 401) + + pci:v00001131d00007130sv00000000sd00004051* +- ID_MODEL_FROM_DATABASE=Behold TV 405 FM ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (Behold TV 405 FM) + + pci:v00001131d00007130sv00000000sd00005051* +- ID_MODEL_FROM_DATABASE=Behold TV 505 RDS ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (Behold TV 505 RDS) + + pci:v00001131d00007130sv00000000sd0000505B* +- ID_MODEL_FROM_DATABASE=Behold TV 505 RDS ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (Behold TV 505 RDS) + + pci:v00001131d00007130sv0000102Bsd000048D0* +- ID_MODEL_FROM_DATABASE=Matrox CronosPlus ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (Matrox CronosPlus) + + pci:v00001131d00007130sv00001048sd0000226B* +- ID_MODEL_FROM_DATABASE=ELSA EX-VISION 300TV ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (ELSA EX-VISION 300TV) + + pci:v00001131d00007130sv0000107Dsd00006655* +- ID_MODEL_FROM_DATABASE=WinFast DTV1000S ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (WinFast DTV1000S) + + pci:v00001131d00007130sv00001131sd00000000* +- ID_MODEL_FROM_DATABASE=SAA7130-based TV tuner card ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (SAA7130-based TV tuner card) + + pci:v00001131d00007130sv00001131sd00002001* +- ID_MODEL_FROM_DATABASE=10MOONS PCI TV CAPTURE CARD ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (10MOONS PCI TV CAPTURE CARD) + + pci:v00001131d00007130sv00001131sd00002005* +- ID_MODEL_FROM_DATABASE=Techcom (India) TV Tuner Card (SSD-TV-670) ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (Techcom (India) TV Tuner Card (SSD-TV-670)) + + pci:v00001131d00007130sv00001458sd00009006* +- ID_MODEL_FROM_DATABASE=GT-PS700 DVB-S tuner ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (GT-PS700 DVB-S tuner) + + pci:v00001131d00007130sv00001461sd0000050C* +- ID_MODEL_FROM_DATABASE=Nagase Sangyo TransGear 3000TV ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (Nagase Sangyo TransGear 3000TV) + + pci:v00001131d00007130sv00001461sd000010FF* +- ID_MODEL_FROM_DATABASE=AVerMedia DVD EZMaker ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (AVerMedia DVD EZMaker) + + pci:v00001131d00007130sv00001461sd00002108* +- ID_MODEL_FROM_DATABASE=AverMedia AverTV/305 ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (AverMedia AverTV/305) + + pci:v00001131d00007130sv00001461sd00002115* +- ID_MODEL_FROM_DATABASE=AverMedia AverTV Studio 305 ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (AverMedia AverTV Studio 305) + + pci:v00001131d00007130sv0000153Bsd00001152* +- ID_MODEL_FROM_DATABASE=Terratec Cinergy 200 TV ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (Terratec Cinergy 200 TV) + + pci:v00001131d00007130sv0000185Bsd0000C100* +- ID_MODEL_FROM_DATABASE=Compro VideoMate TV PVR/FM ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (Compro VideoMate TV PVR/FM) + + pci:v00001131d00007130sv0000185Bsd0000C901* +- ID_MODEL_FROM_DATABASE=Videomate DVB-T200 ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (Videomate DVB-T200) + + pci:v00001131d00007130sv00005168sd00000138* +- ID_MODEL_FROM_DATABASE=LifeView FlyVIDEO2000 ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (LifeView FlyVIDEO2000) + + pci:v00001131d00007130sv00005ACEsd00005010* +- ID_MODEL_FROM_DATABASE=Behold TV 501 ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (Behold TV 501) + + pci:v00001131d00007130sv00005ACEsd00005050* +- ID_MODEL_FROM_DATABASE=Behold TV 505 FM ++ ID_MODEL_FROM_DATABASE=SAA7130 Video Broadcast Decoder (Behold TV 505 FM) + + pci:v00001131d00007133* + ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder + + pci:v00001131d00007133sv00000000sd00004091* +- ID_MODEL_FROM_DATABASE=Beholder BeholdTV 409 FM ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Beholder BeholdTV 409 FM) + + pci:v00001131d00007133sv00000000sd00005071* +- ID_MODEL_FROM_DATABASE=Behold TV 507 RDS ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV 507 RDS) + + pci:v00001131d00007133sv00000000sd0000507B* +- ID_MODEL_FROM_DATABASE=Behold TV 507 RDS ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV 507 RDS) + + pci:v00001131d00007133sv00000000sd00005201* +- ID_MODEL_FROM_DATABASE=Behold TV Columbus ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV Columbus) + + pci:v00001131d00007133sv00000070sd00006701* +- ID_MODEL_FROM_DATABASE=WinTV HVR-1110 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (WinTV HVR-1110) + + pci:v00001131d00007133sv00001019sd00004CB5* +- ID_MODEL_FROM_DATABASE=Elitegroup ECS TVP3XP FM1236 Tuner Card (NTSC,FM) ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Elitegroup ECS TVP3XP FM1236 Tuner Card (NTSC,FM)) + + pci:v00001131d00007133sv00001043sd00000210* +- ID_MODEL_FROM_DATABASE=FlyTV mini Asus Digimatrix ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (FlyTV mini Asus Digimatrix) + + pci:v00001131d00007133sv00001043sd00004843* +- ID_MODEL_FROM_DATABASE=ASUS TV-FM 7133 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (ASUS TV-FM 7133) + + pci:v00001131d00007133sv00001043sd00004845* +- ID_MODEL_FROM_DATABASE=TV-FM 7135 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (TV-FM 7135) + + pci:v00001131d00007133sv00001043sd00004862* +- ID_MODEL_FROM_DATABASE=P7131 Dual ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (P7131 Dual) + + pci:v00001131d00007133sv00001043sd00004876* +- ID_MODEL_FROM_DATABASE=My Cinema-P7131 Hybrid ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (My Cinema-P7131 Hybrid) + + pci:v00001131d00007133sv00001131sd00000000* +- ID_MODEL_FROM_DATABASE=SAA713x-based TV tuner card ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (SAA713x-based TV tuner card) + + pci:v00001131d00007133sv00001131sd00002001* +- ID_MODEL_FROM_DATABASE=Proteus Pro [philips reference design] ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Proteus Pro [philips reference design]) + + pci:v00001131d00007133sv00001131sd00002018* +- ID_MODEL_FROM_DATABASE=Tiger reference design ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Tiger reference design) + + pci:v00001131d00007133sv00001131sd00004EE9* +- ID_MODEL_FROM_DATABASE=MonsterTV Mobile ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (MonsterTV Mobile) + + pci:v00001131d00007133sv00001131sd00007133* +- ID_MODEL_FROM_DATABASE=Pinnacle PCTV 301i ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Pinnacle PCTV 301i) + + pci:v00001131d00007133sv000011BDsd0000002B* +- ID_MODEL_FROM_DATABASE=PCTV Stereo ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (PCTV Stereo) + + pci:v00001131d00007133sv000011BDsd0000002E* +- ID_MODEL_FROM_DATABASE=PCTV 110i (saa7133) ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (PCTV 110i (saa7133)) + + pci:v00001131d00007133sv000012ABsd00000800* +- ID_MODEL_FROM_DATABASE=PURPLE TV ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (PURPLE TV) + + pci:v00001131d00007133sv000013C2sd00002804* +- ID_MODEL_FROM_DATABASE=Technotrend Budget T-3000 Hybrid ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Technotrend Budget T-3000 Hybrid) + + pci:v00001131d00007133sv00001421sd00000335* +- ID_MODEL_FROM_DATABASE=Instant TV DVB-T Cardbus ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Instant TV DVB-T Cardbus) + + pci:v00001131d00007133sv00001421sd00001370* +- ID_MODEL_FROM_DATABASE=Instant TV (saa7135) ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Instant TV (saa7135)) + + pci:v00001131d00007133sv00001435sd00007330* +- ID_MODEL_FROM_DATABASE=VFG7330 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (VFG7330) + + pci:v00001131d00007133sv00001435sd00007350* +- ID_MODEL_FROM_DATABASE=VFG7350 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (VFG7350) + + pci:v00001131d00007133sv00001458sd00009001* +- ID_MODEL_FROM_DATABASE=GC-PTV-TAF Hybrid TV card ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (GC-PTV-TAF Hybrid TV card) + + pci:v00001131d00007133sv00001458sd00009002* +- ID_MODEL_FROM_DATABASE=GT-PTV-TAF-RH DVB-T/Analog TV/FM tuner ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (GT-PTV-TAF-RH DVB-T/Analog TV/FM tuner) + + pci:v00001131d00007133sv00001458sd00009003* +- ID_MODEL_FROM_DATABASE=GT-PTV-AF-RH Analog TV/FM tuner ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (GT-PTV-AF-RH Analog TV/FM tuner) + + pci:v00001131d00007133sv00001458sd00009004* +- ID_MODEL_FROM_DATABASE=GT-P8000 DVB-T/Analog TV/FM tuner ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (GT-P8000 DVB-T/Analog TV/FM tuner) + + pci:v00001131d00007133sv00001458sd00009005* +- ID_MODEL_FROM_DATABASE=GT-P6000 Analog TV/FM tuner ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (GT-P6000 Analog TV/FM tuner) + + pci:v00001131d00007133sv00001458sd00009008* +- ID_MODEL_FROM_DATABASE=GT-P5100 Analog TV tuner ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (GT-P5100 Analog TV tuner) + + pci:v00001131d00007133sv00001461sd00001044* +- ID_MODEL_FROM_DATABASE=AVerTVHD MCE A180 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (AVerTVHD MCE A180) + + pci:v00001131d00007133sv00001461sd00004836* +- ID_MODEL_FROM_DATABASE=M10D Hybrid DVBT ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (M10D Hybrid DVBT) + + pci:v00001131d00007133sv00001461sd0000861E* +- ID_MODEL_FROM_DATABASE=M105 PAL/SECAM/NTSC/FM Tuner ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (M105 PAL/SECAM/NTSC/FM Tuner) + + pci:v00001131d00007133sv00001461sd0000A14B* +- ID_MODEL_FROM_DATABASE=AVerTV Studio 509 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (AVerTV Studio 509) + + pci:v00001131d00007133sv00001461sd0000A836* +- ID_MODEL_FROM_DATABASE=M115 DVB-T, PAL/SECAM/NTSC Tuner ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (M115 DVB-T, PAL/SECAM/NTSC Tuner) + + pci:v00001131d00007133sv00001461sd0000F01D* +- ID_MODEL_FROM_DATABASE=DVB-T Super 007 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (DVB-T Super 007) + + pci:v00001131d00007133sv00001461sd0000F31F* +- ID_MODEL_FROM_DATABASE=Avermedia AVerTV GO 007 FM ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Avermedia AVerTV GO 007 FM) + + pci:v00001131d00007133sv00001461sd0000F936* +- ID_MODEL_FROM_DATABASE=Hybrid+FM PCI (rev A16D) ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Hybrid+FM PCI (rev A16D)) + + pci:v00001131d00007133sv00001462sd00006231* +- ID_MODEL_FROM_DATABASE=TV@nywhere Plus ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (TV@nywhere Plus) + + pci:v00001131d00007133sv00001489sd00000214* +- ID_MODEL_FROM_DATABASE=LifeView FlyTV Platinum FM ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (LifeView FlyTV Platinum FM) + + pci:v00001131d00007133sv000014C0sd00001212* +- ID_MODEL_FROM_DATABASE=LifeView FlyTV Platinum Mini2 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (LifeView FlyTV Platinum Mini2) + + pci:v00001131d00007133sv0000153Bsd00001160* +- ID_MODEL_FROM_DATABASE=Cinergy 250 PCI TV ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Cinergy 250 PCI TV) + + pci:v00001131d00007133sv0000153Bsd00001162* +- ID_MODEL_FROM_DATABASE=Terratec Cinergy 400 mobile ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Terratec Cinergy 400 mobile) + + pci:v00001131d00007133sv000017DEsd00007256* +- ID_MODEL_FROM_DATABASE=PlusTV All In One PI610 card ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (PlusTV All In One PI610 card) + + pci:v00001131d00007133sv000017DEsd00007350* +- ID_MODEL_FROM_DATABASE=ATSC 110 Digital / Analog HDTV Tuner ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (ATSC 110 Digital / Analog HDTV Tuner) + + pci:v00001131d00007133sv000017DEsd00007352* +- ID_MODEL_FROM_DATABASE=ATSC 115 Digital / Analog HDTV Tuner ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (ATSC 115 Digital / Analog HDTV Tuner) + + pci:v00001131d00007133sv0000185Bsd0000C100* +- ID_MODEL_FROM_DATABASE=VideoMate TV ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (VideoMate TV) + + pci:v00001131d00007133sv0000185Bsd0000C900* +- ID_MODEL_FROM_DATABASE=VideoMate T750 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (VideoMate T750) + + pci:v00001131d00007133sv00005168sd00000306* +- ID_MODEL_FROM_DATABASE=LifeView FlyDVB-T DUO ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (LifeView FlyDVB-T DUO) + + pci:v00001131d00007133sv00005168sd00000319* +- ID_MODEL_FROM_DATABASE=LifeView FlyDVB Trio ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (LifeView FlyDVB Trio) + + pci:v00001131d00007133sv00005168sd00000502* +- ID_MODEL_FROM_DATABASE=LifeView FlyDVB-T Duo CardBus ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (LifeView FlyDVB-T Duo CardBus) + + pci:v00001131d00007133sv00005168sd00000520* +- ID_MODEL_FROM_DATABASE=LifeView FlyDVB Trio CardBus ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (LifeView FlyDVB Trio CardBus) + + pci:v00001131d00007133sv00005168sd00001502* +- ID_MODEL_FROM_DATABASE=LifeView FlyTV CardBus ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (LifeView FlyTV CardBus) + + pci:v00001131d00007133sv00005168sd00002502* +- ID_MODEL_FROM_DATABASE=LifeView FlyDVB-T CardBus ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (LifeView FlyDVB-T CardBus) + + pci:v00001131d00007133sv00005168sd00002520* +- ID_MODEL_FROM_DATABASE=LifeView FlyDVB-S Duo CardBus ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (LifeView FlyDVB-S Duo CardBus) + + pci:v00001131d00007133sv00005168sd00003502* +- ID_MODEL_FROM_DATABASE=LifeView FlyDVB-T Hybrid CardBus ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (LifeView FlyDVB-T Hybrid CardBus) + + pci:v00001131d00007133sv00005168sd00003520* +- ID_MODEL_FROM_DATABASE=LifeView FlyDVB Trio N CardBus ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (LifeView FlyDVB Trio N CardBus) + + pci:v00001131d00007133sv00005ACEsd00005030* +- ID_MODEL_FROM_DATABASE=Behold TV 503 FM ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV 503 FM) + + pci:v00001131d00007133sv00005ACEsd00005090* +- ID_MODEL_FROM_DATABASE=Behold TV 509 FM ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV 509 FM) + + pci:v00001131d00007133sv00005ACEsd00006090* +- ID_MODEL_FROM_DATABASE=Behold TV 609 FM ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV 609 FM) + + pci:v00001131d00007133sv00005ACEsd00006091* +- ID_MODEL_FROM_DATABASE=Behold TV 609 FM ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV 609 FM) + + pci:v00001131d00007133sv00005ACEsd00006092* +- ID_MODEL_FROM_DATABASE=Behold TV 609 RDS ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV 609 RDS) + + pci:v00001131d00007133sv00005ACEsd00006093* +- ID_MODEL_FROM_DATABASE=Behold TV 609 RDS ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV 609 RDS) + + pci:v00001131d00007133sv00005ACEsd00006190* +- ID_MODEL_FROM_DATABASE=Behold TV M6 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV M6) + + pci:v00001131d00007133sv00005ACEsd00006191* +- ID_MODEL_FROM_DATABASE=Behold TV M63 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV M63) + + pci:v00001131d00007133sv00005ACEsd00006193* +- ID_MODEL_FROM_DATABASE=Behold TV M6 Extra ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV M6 Extra) + + pci:v00001131d00007133sv00005ACEsd00006290* +- ID_MODEL_FROM_DATABASE=Behold TV H6 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV H6) + + pci:v00001131d00007133sv00005ACEsd00007090* +- ID_MODEL_FROM_DATABASE=Behold TV A7 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV A7) + + pci:v00001131d00007133sv00005ACEsd00007150* +- ID_MODEL_FROM_DATABASE=Behold TV H75 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV H75) + + pci:v00001131d00007133sv00005ACEsd00007151* +- ID_MODEL_FROM_DATABASE=Behold TV H75 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV H75) + + pci:v00001131d00007133sv00005ACEsd00007190* +- ID_MODEL_FROM_DATABASE=Behold TV H7 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV H7) + + pci:v00001131d00007133sv00005ACEsd00007191* +- ID_MODEL_FROM_DATABASE=Behold TV H7 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV H7) + + pci:v00001131d00007133sv00005ACEsd00007290* +- ID_MODEL_FROM_DATABASE=Behold TV T7 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV T7) + + pci:v00001131d00007133sv00005ACEsd00007591* +- ID_MODEL_FROM_DATABASE=Behold TV X7 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV X7) + + pci:v00001131d00007133sv00005ACEsd00007595* +- ID_MODEL_FROM_DATABASE=Behold TV X7 ++ ID_MODEL_FROM_DATABASE=SAA7131/SAA7133/SAA7135 Video Broadcast Decoder (Behold TV X7) + + pci:v00001131d00007134* + ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder + + pci:v00001131d00007134sv00000000sd00004036* +- ID_MODEL_FROM_DATABASE=Behold TV 403 ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Behold TV 403) + + pci:v00001131d00007134sv00000000sd00004037* +- ID_MODEL_FROM_DATABASE=Behold TV 403 FM ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Behold TV 403 FM) + + pci:v00001131d00007134sv00000000sd00004071* +- ID_MODEL_FROM_DATABASE=Behold TV 407 FM ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Behold TV 407 FM) + + pci:v00001131d00007134sv00001019sd00004CB4* +- ID_MODEL_FROM_DATABASE=Elitegroup ECS TVP3XP FM1216 Tuner Card(PAL-BG,FM) ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Elitegroup ECS TVP3XP FM1216 Tuner Card(PAL-BG,FM)) + + pci:v00001131d00007134sv00001043sd00000210* +- ID_MODEL_FROM_DATABASE=Digimatrix TV ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Digimatrix TV) + + pci:v00001131d00007134sv00001043sd00004840* +- ID_MODEL_FROM_DATABASE=ASUS TV-FM 7134 ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (ASUS TV-FM 7134) + + pci:v00001131d00007134sv00001043sd00004842* +- ID_MODEL_FROM_DATABASE=TV-FM 7134 ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (TV-FM 7134) + + pci:v00001131d00007134sv00001131sd00000000* +- ID_MODEL_FROM_DATABASE=SAA713x-based TV tuner card ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (SAA713x-based TV tuner card) + + pci:v00001131d00007134sv00001131sd00002004* +- ID_MODEL_FROM_DATABASE=EUROPA V3 reference design ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (EUROPA V3 reference design) + + pci:v00001131d00007134sv00001131sd00004E85* +- ID_MODEL_FROM_DATABASE=SKNet Monster TV ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (SKNet Monster TV) + + pci:v00001131d00007134sv00001131sd00006752* +- ID_MODEL_FROM_DATABASE=EMPRESS ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (EMPRESS) + + pci:v00001131d00007134sv000011BDsd0000002B* +- ID_MODEL_FROM_DATABASE=PCTV Stereo ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (PCTV Stereo) + + pci:v00001131d00007134sv000011BDsd0000002D* +- ID_MODEL_FROM_DATABASE=PCTV 300i DVB-T + PAL ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (PCTV 300i DVB-T + PAL) + + pci:v00001131d00007134sv00001461sd00002C00* +- ID_MODEL_FROM_DATABASE=AverTV Hybrid+FM PCI ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (AverTV Hybrid+FM PCI) + + pci:v00001131d00007134sv00001461sd00009715* +- ID_MODEL_FROM_DATABASE=AVerTV Studio 307 ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (AVerTV Studio 307) + + pci:v00001131d00007134sv00001461sd0000A70A* +- ID_MODEL_FROM_DATABASE=Avermedia AVerTV 307 ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Avermedia AVerTV 307) + + pci:v00001131d00007134sv00001461sd0000A70B* +- ID_MODEL_FROM_DATABASE=AverMedia M156 / Medion 2819 ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (AverMedia M156 / Medion 2819) + + pci:v00001131d00007134sv00001461sd0000D6EE* +- ID_MODEL_FROM_DATABASE=Cardbus TV/Radio (E500) ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Cardbus TV/Radio (E500)) + + pci:v00001131d00007134sv00001471sd0000B7E9* +- ID_MODEL_FROM_DATABASE=AVerTV Cardbus plus ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (AVerTV Cardbus plus) + + pci:v00001131d00007134sv0000153Bsd00001142* +- ID_MODEL_FROM_DATABASE=Terratec Cinergy 400 TV ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Terratec Cinergy 400 TV) + + pci:v00001131d00007134sv0000153Bsd00001143* +- ID_MODEL_FROM_DATABASE=Terratec Cinergy 600 TV ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Terratec Cinergy 600 TV) + + pci:v00001131d00007134sv0000153Bsd00001158* +- ID_MODEL_FROM_DATABASE=Terratec Cinergy 600 TV MK3 ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Terratec Cinergy 600 TV MK3) + + pci:v00001131d00007134sv00001540sd00009524* +- ID_MODEL_FROM_DATABASE=ProVideo PV952 ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (ProVideo PV952) + + pci:v00001131d00007134sv000016BEsd00000003* +- ID_MODEL_FROM_DATABASE=Medion 7134 ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Medion 7134) + + pci:v00001131d00007134sv0000185Bsd0000C200* +- ID_MODEL_FROM_DATABASE=Compro VideoMate Gold+ Pal ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Compro VideoMate Gold+ Pal) + + pci:v00001131d00007134sv0000185Bsd0000C900* +- ID_MODEL_FROM_DATABASE=Videomate DVB-T300 ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Videomate DVB-T300) + + pci:v00001131d00007134sv00001894sd0000A006* +- ID_MODEL_FROM_DATABASE=KNC One TV-Station DVR ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (KNC One TV-Station DVR) + + pci:v00001131d00007134sv00001894sd0000FE01* +- ID_MODEL_FROM_DATABASE=KNC One TV-Station RDS / Typhoon TV Tuner RDS ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (KNC One TV-Station RDS / Typhoon TV Tuner RDS) + + pci:v00001131d00007134sv00005168sd00000138* +- ID_MODEL_FROM_DATABASE=FLY TV PRIME 34FM ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (FLY TV PRIME 34FM) + + pci:v00001131d00007134sv00005168sd00000300* +- ID_MODEL_FROM_DATABASE=FlyDVB-S ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (FlyDVB-S) + + pci:v00001131d00007134sv00005ACEsd00005070* +- ID_MODEL_FROM_DATABASE=Behold TV 507 FM ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Behold TV 507 FM) + + pci:v00001131d00007134sv00005ACEsd00006070* +- ID_MODEL_FROM_DATABASE=Behold TV 607 FM ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Behold TV 607 FM) + + pci:v00001131d00007134sv00005ACEsd00006071* +- ID_MODEL_FROM_DATABASE=Behold TV 607 FM ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Behold TV 607 FM) + + pci:v00001131d00007134sv00005ACEsd00006072* +- ID_MODEL_FROM_DATABASE=Behold TV 607 RDS ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Behold TV 607 RDS) + + pci:v00001131d00007134sv00005ACEsd00006073* +- ID_MODEL_FROM_DATABASE=Behold TV 607 RDS ++ ID_MODEL_FROM_DATABASE=SAA7134/SAA7135HL Video Broadcast Decoder (Behold TV 607 RDS) + + pci:v00001131d00007145* + ID_MODEL_FROM_DATABASE=SAA7145 +@@ -32034,223 +32034,223 @@ pci:v00001131d00007146* + ID_MODEL_FROM_DATABASE=SAA7146 + + pci:v00001131d00007146sv0000110Asd00000000* +- ID_MODEL_FROM_DATABASE=Fujitsu/Siemens DVB-C card rev1.5 ++ ID_MODEL_FROM_DATABASE=SAA7146 (Fujitsu/Siemens DVB-C card rev1.5) + + pci:v00001131d00007146sv0000110Asd0000FFFF* +- ID_MODEL_FROM_DATABASE=Fujitsu/Siemens DVB-C card rev1.5 ++ ID_MODEL_FROM_DATABASE=SAA7146 (Fujitsu/Siemens DVB-C card rev1.5) + + pci:v00001131d00007146sv00001124sd00002581* +- ID_MODEL_FROM_DATABASE=Leutron Vision PicPort ++ ID_MODEL_FROM_DATABASE=SAA7146 (Leutron Vision PicPort) + + pci:v00001131d00007146sv00001131sd00004F56* +- ID_MODEL_FROM_DATABASE=KNC1 DVB-S Budget ++ ID_MODEL_FROM_DATABASE=SAA7146 (KNC1 DVB-S Budget) + + pci:v00001131d00007146sv00001131sd00004F60* +- ID_MODEL_FROM_DATABASE=Fujitsu-Siemens Activy DVB-S Budget Rev AL ++ ID_MODEL_FROM_DATABASE=SAA7146 (Fujitsu-Siemens Activy DVB-S Budget Rev AL) + + pci:v00001131d00007146sv00001131sd00004F61* +- ID_MODEL_FROM_DATABASE=Activy DVB-S Budget Rev GR ++ ID_MODEL_FROM_DATABASE=SAA7146 (Activy DVB-S Budget Rev GR) + + pci:v00001131d00007146sv00001131sd00005F61* +- ID_MODEL_FROM_DATABASE=Activy DVB-T Budget ++ ID_MODEL_FROM_DATABASE=SAA7146 (Activy DVB-T Budget) + + pci:v00001131d00007146sv0000114Bsd00002003* +- ID_MODEL_FROM_DATABASE=DVRaptor Video Edit/Capture Card ++ ID_MODEL_FROM_DATABASE=SAA7146 (DVRaptor Video Edit/Capture Card) + + pci:v00001131d00007146sv000011BDsd00000006* +- ID_MODEL_FROM_DATABASE=DV500 Overlay ++ ID_MODEL_FROM_DATABASE=SAA7146 (DV500 Overlay) + + pci:v00001131d00007146sv000011BDsd0000000A* +- ID_MODEL_FROM_DATABASE=DV500 Overlay ++ ID_MODEL_FROM_DATABASE=SAA7146 (DV500 Overlay) + + pci:v00001131d00007146sv000011BDsd0000000F* +- ID_MODEL_FROM_DATABASE=DV500 Overlay ++ ID_MODEL_FROM_DATABASE=SAA7146 (DV500 Overlay) + + pci:v00001131d00007146sv000013C2sd00000000* +- ID_MODEL_FROM_DATABASE=Siemens/Technotrend/Hauppauge DVB card rev1.3 or rev1.5 ++ ID_MODEL_FROM_DATABASE=SAA7146 (Siemens/Technotrend/Hauppauge DVB card rev1.3 or rev1.5) + + pci:v00001131d00007146sv000013C2sd00000001* +- ID_MODEL_FROM_DATABASE=Technotrend/Hauppauge DVB card rev1.3 or rev1.6 ++ ID_MODEL_FROM_DATABASE=SAA7146 (Technotrend/Hauppauge DVB card rev1.3 or rev1.6) + + pci:v00001131d00007146sv000013C2sd00000002* +- ID_MODEL_FROM_DATABASE=Technotrend/Hauppauge DVB card rev2.1 ++ ID_MODEL_FROM_DATABASE=SAA7146 (Technotrend/Hauppauge DVB card rev2.1) + + pci:v00001131d00007146sv000013C2sd00000003* +- ID_MODEL_FROM_DATABASE=Technotrend/Hauppauge DVB card rev2.1 ++ ID_MODEL_FROM_DATABASE=SAA7146 (Technotrend/Hauppauge DVB card rev2.1) + + pci:v00001131d00007146sv000013C2sd00000004* +- ID_MODEL_FROM_DATABASE=Technotrend/Hauppauge DVB card rev2.1 ++ ID_MODEL_FROM_DATABASE=SAA7146 (Technotrend/Hauppauge DVB card rev2.1) + + pci:v00001131d00007146sv000013C2sd00000006* +- ID_MODEL_FROM_DATABASE=Technotrend/Hauppauge DVB card rev1.3 or rev1.6 ++ ID_MODEL_FROM_DATABASE=SAA7146 (Technotrend/Hauppauge DVB card rev1.3 or rev1.6) + + pci:v00001131d00007146sv000013C2sd00000008* +- ID_MODEL_FROM_DATABASE=Technotrend/Hauppauge DVB-T ++ ID_MODEL_FROM_DATABASE=SAA7146 (Technotrend/Hauppauge DVB-T) + + pci:v00001131d00007146sv000013C2sd0000000A* +- ID_MODEL_FROM_DATABASE=Octal/Technotrend DVB-C for iTV ++ ID_MODEL_FROM_DATABASE=SAA7146 (Octal/Technotrend DVB-C for iTV) + + pci:v00001131d00007146sv000013C2sd0000000E* +- ID_MODEL_FROM_DATABASE=Technotrend/Hauppauge DVB card rev2.3 ++ ID_MODEL_FROM_DATABASE=SAA7146 (Technotrend/Hauppauge DVB card rev2.3) + + pci:v00001131d00007146sv000013C2sd00001003* +- ID_MODEL_FROM_DATABASE=Technotrend-Budget/Hauppauge WinTV-NOVA-S DVB card ++ ID_MODEL_FROM_DATABASE=SAA7146 (Technotrend-Budget/Hauppauge WinTV-NOVA-S DVB card) + + pci:v00001131d00007146sv000013C2sd00001004* +- ID_MODEL_FROM_DATABASE=Technotrend-Budget/Hauppauge WinTV-NOVA-C DVB card ++ ID_MODEL_FROM_DATABASE=SAA7146 (Technotrend-Budget/Hauppauge WinTV-NOVA-C DVB card) + + pci:v00001131d00007146sv000013C2sd00001005* +- ID_MODEL_FROM_DATABASE=Technotrend-Budget/Hauppauge WinTV-NOVA-T DVB card ++ ID_MODEL_FROM_DATABASE=SAA7146 (Technotrend-Budget/Hauppauge WinTV-NOVA-T DVB card) + + pci:v00001131d00007146sv000013C2sd0000100C* +- ID_MODEL_FROM_DATABASE=Technotrend-Budget/Hauppauge WinTV-NOVA-CI DVB card ++ ID_MODEL_FROM_DATABASE=SAA7146 (Technotrend-Budget/Hauppauge WinTV-NOVA-CI DVB card) + + pci:v00001131d00007146sv000013C2sd0000100F* +- ID_MODEL_FROM_DATABASE=Technotrend-Budget/Hauppauge WinTV-NOVA-CI DVB card ++ ID_MODEL_FROM_DATABASE=SAA7146 (Technotrend-Budget/Hauppauge WinTV-NOVA-CI DVB card) + + pci:v00001131d00007146sv000013C2sd00001010* +- ID_MODEL_FROM_DATABASE=DVB C-1500 ++ ID_MODEL_FROM_DATABASE=SAA7146 (DVB C-1500) + + pci:v00001131d00007146sv000013C2sd00001011* +- ID_MODEL_FROM_DATABASE=Technotrend-Budget/Hauppauge WinTV-NOVA-T DVB card ++ ID_MODEL_FROM_DATABASE=SAA7146 (Technotrend-Budget/Hauppauge WinTV-NOVA-T DVB card) + + pci:v00001131d00007146sv000013C2sd00001012* +- ID_MODEL_FROM_DATABASE=DVB T-1500 ++ ID_MODEL_FROM_DATABASE=SAA7146 (DVB T-1500) + + pci:v00001131d00007146sv000013C2sd00001013* +- ID_MODEL_FROM_DATABASE=SATELCO Multimedia DVB ++ ID_MODEL_FROM_DATABASE=SAA7146 (SATELCO Multimedia DVB) + + pci:v00001131d00007146sv000013C2sd00001016* +- ID_MODEL_FROM_DATABASE=WinTV-NOVA-SE DVB card ++ ID_MODEL_FROM_DATABASE=SAA7146 (WinTV-NOVA-SE DVB card) + + pci:v00001131d00007146sv000013C2sd00001018* +- ID_MODEL_FROM_DATABASE=DVB S-1401 ++ ID_MODEL_FROM_DATABASE=SAA7146 (DVB S-1401) + + pci:v00001131d00007146sv000013C2sd00001019* +- ID_MODEL_FROM_DATABASE=S2-3200 ++ ID_MODEL_FROM_DATABASE=SAA7146 (S2-3200) + + pci:v00001131d00007146sv000013C2sd00001102* +- ID_MODEL_FROM_DATABASE=Technotrend/Hauppauge DVB card rev2.1 ++ ID_MODEL_FROM_DATABASE=SAA7146 (Technotrend/Hauppauge DVB card rev2.1) + + pci:v00001131d00007146sv0000153Bsd00001155* +- ID_MODEL_FROM_DATABASE=Cinergy 1200 DVB-S ++ ID_MODEL_FROM_DATABASE=SAA7146 (Cinergy 1200 DVB-S) + + pci:v00001131d00007146sv0000153Bsd00001156* +- ID_MODEL_FROM_DATABASE=Terratec Cynergy 1200C ++ ID_MODEL_FROM_DATABASE=SAA7146 (Terratec Cynergy 1200C) + + pci:v00001131d00007146sv0000153Bsd00001157* +- ID_MODEL_FROM_DATABASE=Cinergy 1200 DVB-T ++ ID_MODEL_FROM_DATABASE=SAA7146 (Cinergy 1200 DVB-T) + + pci:v00001131d00007146sv00001894sd00000020* +- ID_MODEL_FROM_DATABASE=KNC One DVB-C V1.0 ++ ID_MODEL_FROM_DATABASE=SAA7146 (KNC One DVB-C V1.0) + + pci:v00001131d00007146sv00001894sd00000023* +- ID_MODEL_FROM_DATABASE=TVStation DVB-C plus ++ ID_MODEL_FROM_DATABASE=SAA7146 (TVStation DVB-C plus) + + pci:v00001131d00007160* + ID_MODEL_FROM_DATABASE=SAA7160 + + pci:v00001131d00007160sv00001458sd00009009* +- ID_MODEL_FROM_DATABASE=E8000 DVB-T/Analog TV/FM tuner ++ ID_MODEL_FROM_DATABASE=SAA7160 (E8000 DVB-T/Analog TV/FM tuner) + + pci:v00001131d00007162* + ID_MODEL_FROM_DATABASE=SAA7162 + + pci:v00001131d00007162sv000011BDsd00000101* +- ID_MODEL_FROM_DATABASE=Pinnacle PCTV 7010iX TV Card ++ ID_MODEL_FROM_DATABASE=SAA7162 (Pinnacle PCTV 7010iX TV Card) + + pci:v00001131d00007164* + ID_MODEL_FROM_DATABASE=SAA7164 + + pci:v00001131d00007164sv00000070sd00008800* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2250 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2250) + + pci:v00001131d00007164sv00000070sd00008810* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2250 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2250) + + pci:v00001131d00007164sv00000070sd00008851* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2250 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2250) + + pci:v00001131d00007164sv00000070sd00008853* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2250 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2250) + + pci:v00001131d00007164sv00000070sd00008880* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2250 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2250) + + pci:v00001131d00007164sv00000070sd00008891* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2250 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2250) + + pci:v00001131d00007164sv00000070sd000088A0* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2250 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2250) + + pci:v00001131d00007164sv00000070sd000088A1* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2250 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2250) + + pci:v00001131d00007164sv00000070sd00008900* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2200 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2200) + + pci:v00001131d00007164sv00000070sd00008901* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2200 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2200) + + pci:v00001131d00007164sv00000070sd00008940* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2200 (submodel 89619) ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2200 (submodel 89619)) + + pci:v00001131d00007164sv00000070sd00008951* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2200 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2200) + + pci:v00001131d00007164sv00000070sd00008953* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2200 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2200) + + pci:v00001131d00007164sv00000070sd00008980* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2200 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2200) + + pci:v00001131d00007164sv00000070sd00008991* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2200 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2200) + + pci:v00001131d00007164sv00000070sd00008993* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2200 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2200) + + pci:v00001131d00007164sv00000070sd000089A0* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2200 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2200) + + pci:v00001131d00007164sv00000070sd000089A1* +- ID_MODEL_FROM_DATABASE=WinTV HVR-2200 ++ ID_MODEL_FROM_DATABASE=SAA7164 (WinTV HVR-2200) + + pci:v00001131d00007231* + ID_MODEL_FROM_DATABASE=SAA7231 + + pci:v00001131d00007231sv00005ACEsd00008000* +- ID_MODEL_FROM_DATABASE=Behold TV H8 ++ ID_MODEL_FROM_DATABASE=SAA7231 (Behold TV H8) + + pci:v00001131d00007231sv00005ACEsd00008001* +- ID_MODEL_FROM_DATABASE=Behold TV H8 ++ ID_MODEL_FROM_DATABASE=SAA7231 (Behold TV H8) + + pci:v00001131d00007231sv00005ACEsd00008050* +- ID_MODEL_FROM_DATABASE=Behold TV H85 ++ ID_MODEL_FROM_DATABASE=SAA7231 (Behold TV H85) + + pci:v00001131d00007231sv00005ACEsd00008051* +- ID_MODEL_FROM_DATABASE=Behold TV H85 ++ ID_MODEL_FROM_DATABASE=SAA7231 (Behold TV H85) + + pci:v00001131d00007231sv00005ACEsd00008100* +- ID_MODEL_FROM_DATABASE=Behold TV A8 ++ ID_MODEL_FROM_DATABASE=SAA7231 (Behold TV A8) + + pci:v00001131d00007231sv00005ACEsd00008101* +- ID_MODEL_FROM_DATABASE=Behold TV A8 ++ ID_MODEL_FROM_DATABASE=SAA7231 (Behold TV A8) + + pci:v00001131d00007231sv00005ACEsd00008150* +- ID_MODEL_FROM_DATABASE=Behold TV A85 ++ ID_MODEL_FROM_DATABASE=SAA7231 (Behold TV A85) + + pci:v00001131d00007231sv00005ACEsd00008151* +- ID_MODEL_FROM_DATABASE=Behold TV A85 ++ ID_MODEL_FROM_DATABASE=SAA7231 (Behold TV A85) + + pci:v00001131d00007231sv00005ACEsd00008201* +- ID_MODEL_FROM_DATABASE=Behold TV T8 ++ ID_MODEL_FROM_DATABASE=SAA7231 (Behold TV T8) + + pci:v00001131d00009730* + ID_MODEL_FROM_DATABASE=SAA9730 Integrated Multimedia and Peripheral Controller + + pci:v00001131d00009730sv00001131sd00000000* +- ID_MODEL_FROM_DATABASE=Integrated Multimedia and Peripheral Controller ++ ID_MODEL_FROM_DATABASE=SAA9730 Integrated Multimedia and Peripheral Controller (Integrated Multimedia and Peripheral Controller) + + pci:v00001132* + ID_VENDOR_FROM_DATABASE=Mitel Corp. +@@ -32364,7 +32364,7 @@ pci:v00001133d0000E010* + ID_MODEL_FROM_DATABASE=Diva Server BRI-2M PCI + + pci:v00001133d0000E010sv0000110Asd00000021* +- ID_MODEL_FROM_DATABASE=Fujitsu Siemens ISDN S0 ++ ID_MODEL_FROM_DATABASE=Diva Server BRI-2M PCI (Fujitsu Siemens ISDN S0) + + pci:v00001133d0000E011* + ID_MODEL_FROM_DATABASE=Diva Server BRI S/T Rev 2 +@@ -32376,10 +32376,10 @@ pci:v00001133d0000E013* + ID_MODEL_FROM_DATABASE=4BRI + + pci:v00001133d0000E013sv00001133sd00001300* +- ID_MODEL_FROM_DATABASE=Diva V-4BRI-8 PCI v2 ++ ID_MODEL_FROM_DATABASE=4BRI (Diva V-4BRI-8 PCI v2) + + pci:v00001133d0000E013sv00001133sd0000E013* +- ID_MODEL_FROM_DATABASE=Diva 4BRI-8 PCI v2 ++ ID_MODEL_FROM_DATABASE=4BRI (Diva 4BRI-8 PCI v2) + + pci:v00001133d0000E014* + ID_MODEL_FROM_DATABASE=Diva Server PRI-30M PCI +@@ -32394,22 +32394,22 @@ pci:v00001133d0000E017* + ID_MODEL_FROM_DATABASE=Diva Server Voice 4BRI Rev 2 + + pci:v00001133d0000E017sv00001133sd0000E017* +- ID_MODEL_FROM_DATABASE=Diva Server Voice 4BRI-8M 2.0 PCI ++ ID_MODEL_FROM_DATABASE=Diva Server Voice 4BRI Rev 2 (Diva Server Voice 4BRI-8M 2.0 PCI) + + pci:v00001133d0000E018* + ID_MODEL_FROM_DATABASE=BRI + + pci:v00001133d0000E018sv00001133sd00001800* +- ID_MODEL_FROM_DATABASE=Diva V-BRI-2 PCI v2 ++ ID_MODEL_FROM_DATABASE=BRI (Diva V-BRI-2 PCI v2) + + pci:v00001133d0000E018sv00001133sd0000E018* +- ID_MODEL_FROM_DATABASE=Diva BRI-2 PCI v2 ++ ID_MODEL_FROM_DATABASE=BRI (Diva BRI-2 PCI v2) + + pci:v00001133d0000E019* + ID_MODEL_FROM_DATABASE=Diva Server Voice PRI Rev 2 + + pci:v00001133d0000E019sv00001133sd0000E019* +- ID_MODEL_FROM_DATABASE=Diva Server Voice PRI 2.0 PCI ++ ID_MODEL_FROM_DATABASE=Diva Server Voice PRI Rev 2 (Diva Server Voice PRI 2.0 PCI) + + pci:v00001133d0000E01A* + ID_MODEL_FROM_DATABASE=Diva BRI-2FX PCI v2 +@@ -32424,85 +32424,85 @@ pci:v00001133d0000E01C* + ID_MODEL_FROM_DATABASE=PRI + + pci:v00001133d0000E01Csv00001133sd00001C01* +- ID_MODEL_FROM_DATABASE=Diva PRI/E1/T1-8 PCI v3 ++ ID_MODEL_FROM_DATABASE=PRI (Diva PRI/E1/T1-8 PCI v3) + + pci:v00001133d0000E01Csv00001133sd00001C02* +- ID_MODEL_FROM_DATABASE=Diva PRI/T1-24 PCI(e) v3 ++ ID_MODEL_FROM_DATABASE=PRI (Diva PRI/T1-24 PCI(e) v3) + + pci:v00001133d0000E01Csv00001133sd00001C03* +- ID_MODEL_FROM_DATABASE=Diva PRI/E1-30 PCI(e) v3 ++ ID_MODEL_FROM_DATABASE=PRI (Diva PRI/E1-30 PCI(e) v3) + + pci:v00001133d0000E01Csv00001133sd00001C04* +- ID_MODEL_FROM_DATABASE=Diva PRI/E1/T1-CTI PCI(e) v3 ++ ID_MODEL_FROM_DATABASE=PRI (Diva PRI/E1/T1-CTI PCI(e) v3) + + pci:v00001133d0000E01Csv00001133sd00001C05* +- ID_MODEL_FROM_DATABASE=Diva V-PRI/T1-24 PCI(e) v3 ++ ID_MODEL_FROM_DATABASE=PRI (Diva V-PRI/T1-24 PCI(e) v3) + + pci:v00001133d0000E01Csv00001133sd00001C06* +- ID_MODEL_FROM_DATABASE=Diva V-PRI/E1-30 PCI(e) v3 ++ ID_MODEL_FROM_DATABASE=PRI (Diva V-PRI/E1-30 PCI(e) v3) + + pci:v00001133d0000E01Csv00001133sd00001C07* +- ID_MODEL_FROM_DATABASE=Diva Server PRI/E1/T1-8 Cornet NQ ++ ID_MODEL_FROM_DATABASE=PRI (Diva Server PRI/E1/T1-8 Cornet NQ) + + pci:v00001133d0000E01Csv00001133sd00001C08* +- ID_MODEL_FROM_DATABASE=Diva Server PRI/T1-24 Cornet NQ ++ ID_MODEL_FROM_DATABASE=PRI (Diva Server PRI/T1-24 Cornet NQ) + + pci:v00001133d0000E01Csv00001133sd00001C09* +- ID_MODEL_FROM_DATABASE=Diva Server PRI/E1-30 Cornet NQ ++ ID_MODEL_FROM_DATABASE=PRI (Diva Server PRI/E1-30 Cornet NQ) + + pci:v00001133d0000E01Csv00001133sd00001C0A* +- ID_MODEL_FROM_DATABASE=Diva Server PRI/E1/T1 Cornet NQ ++ ID_MODEL_FROM_DATABASE=PRI (Diva Server PRI/E1/T1 Cornet NQ) + + pci:v00001133d0000E01Csv00001133sd00001C0B* +- ID_MODEL_FROM_DATABASE=Diva Server V-PRI/T1-24 Cornet NQ ++ ID_MODEL_FROM_DATABASE=PRI (Diva Server V-PRI/T1-24 Cornet NQ) + + pci:v00001133d0000E01Csv00001133sd00001C0C* +- ID_MODEL_FROM_DATABASE=Diva Server V-PRI/E1-30 Cornet NQ ++ ID_MODEL_FROM_DATABASE=PRI (Diva Server V-PRI/E1-30 Cornet NQ) + + pci:v00001133d0000E01E* + ID_MODEL_FROM_DATABASE=2PRI + + pci:v00001133d0000E01Esv00001133sd00001E01* +- ID_MODEL_FROM_DATABASE=Diva 2PRI/E1/T1-60 PCI v1 ++ ID_MODEL_FROM_DATABASE=2PRI (Diva 2PRI/E1/T1-60 PCI v1) + + pci:v00001133d0000E01Esv00001133sd0000E01E* +- ID_MODEL_FROM_DATABASE=Diva V-2PRI/E1/T1-60 PCI v1 ++ ID_MODEL_FROM_DATABASE=2PRI (Diva V-2PRI/E1/T1-60 PCI v1) + + pci:v00001133d0000E020* + ID_MODEL_FROM_DATABASE=4PRI + + pci:v00001133d0000E020sv00001133sd00002001* +- ID_MODEL_FROM_DATABASE=Diva 4PRI/E1/T1-120 PCI v1 ++ ID_MODEL_FROM_DATABASE=4PRI (Diva 4PRI/E1/T1-120 PCI v1) + + pci:v00001133d0000E020sv00001133sd0000E020* +- ID_MODEL_FROM_DATABASE=Diva V-4PRI/E1/T1-120 PCI v1 ++ ID_MODEL_FROM_DATABASE=4PRI (Diva V-4PRI/E1/T1-120 PCI v1) + + pci:v00001133d0000E022* + ID_MODEL_FROM_DATABASE=Analog-2 + + pci:v00001133d0000E022sv00001133sd00002200* +- ID_MODEL_FROM_DATABASE=Diva V-Analog-2 PCI v1 ++ ID_MODEL_FROM_DATABASE=Analog-2 (Diva V-Analog-2 PCI v1) + + pci:v00001133d0000E022sv00001133sd0000E022* +- ID_MODEL_FROM_DATABASE=Diva Analog-2 PCI v1 ++ ID_MODEL_FROM_DATABASE=Analog-2 (Diva Analog-2 PCI v1) + + pci:v00001133d0000E024* + ID_MODEL_FROM_DATABASE=Analog-4 + + pci:v00001133d0000E024sv00001133sd00002400* +- ID_MODEL_FROM_DATABASE=Diva V-Analog-4 PCI v1 ++ ID_MODEL_FROM_DATABASE=Analog-4 (Diva V-Analog-4 PCI v1) + + pci:v00001133d0000E024sv00001133sd0000E024* +- ID_MODEL_FROM_DATABASE=Diva Analog-4 PCI v1 ++ ID_MODEL_FROM_DATABASE=Analog-4 (Diva Analog-4 PCI v1) + + pci:v00001133d0000E028* + ID_MODEL_FROM_DATABASE=Analog-8 + + pci:v00001133d0000E028sv00001133sd00002800* +- ID_MODEL_FROM_DATABASE=Diva V-Analog-8 PCI v1 ++ ID_MODEL_FROM_DATABASE=Analog-8 (Diva V-Analog-8 PCI v1) + + pci:v00001133d0000E028sv00001133sd0000E028* +- ID_MODEL_FROM_DATABASE=Diva Analog-8 PCI v1 ++ ID_MODEL_FROM_DATABASE=Analog-8 (Diva Analog-8 PCI v1) + + pci:v00001133d0000E02A* + ID_MODEL_FROM_DATABASE=Diva IPM-300 PCI v1 +@@ -32514,19 +32514,19 @@ pci:v00001133d0000E02E* + ID_MODEL_FROM_DATABASE=4BRI + + pci:v00001133d0000E02Esv00001133sd00002E01* +- ID_MODEL_FROM_DATABASE=Diva V-4BRI-8 PCIe v2 ++ ID_MODEL_FROM_DATABASE=4BRI (Diva V-4BRI-8 PCIe v2) + + pci:v00001133d0000E02Esv00001133sd0000E02E* +- ID_MODEL_FROM_DATABASE=Diva 4BRI-8 PCIe v2 ++ ID_MODEL_FROM_DATABASE=4BRI (Diva 4BRI-8 PCIe v2) + + pci:v00001133d0000E032* + ID_MODEL_FROM_DATABASE=BRI + + pci:v00001133d0000E032sv00001133sd00003201* +- ID_MODEL_FROM_DATABASE=Diva V-BRI-2 PCIe v2 ++ ID_MODEL_FROM_DATABASE=BRI (Diva V-BRI-2 PCIe v2) + + pci:v00001133d0000E032sv00001133sd0000E032* +- ID_MODEL_FROM_DATABASE=Diva BRI-2 PCIe v2 ++ ID_MODEL_FROM_DATABASE=BRI (Diva BRI-2 PCIe v2) + + pci:v00001133d0000E034* + ID_MODEL_FROM_DATABASE=Diva BRI-CTI PCI v2 +@@ -32574,88 +32574,88 @@ pci:v00001137d00000042* + ID_MODEL_FROM_DATABASE=VIC Management Controller + + pci:v00001137d00000042sv00001137sd00000047* +- ID_MODEL_FROM_DATABASE=VIC P81E PCIe Management Controller ++ ID_MODEL_FROM_DATABASE=VIC Management Controller (VIC P81E PCIe Management Controller) + + pci:v00001137d00000042sv00001137sd00000085* +- ID_MODEL_FROM_DATABASE=VIC 1225 PCIe Management Controller ++ ID_MODEL_FROM_DATABASE=VIC Management Controller (VIC 1225 PCIe Management Controller) + + pci:v00001137d00000042sv00001137sd000000CD* +- ID_MODEL_FROM_DATABASE=VIC 1285 PCIe Management Controller ++ ID_MODEL_FROM_DATABASE=VIC Management Controller (VIC 1285 PCIe Management Controller) + + pci:v00001137d00000042sv00001137sd000000CE* +- ID_MODEL_FROM_DATABASE=VIC 1225T PCIe Management Controller ++ ID_MODEL_FROM_DATABASE=VIC Management Controller (VIC 1225T PCIe Management Controller) + + pci:v00001137d00000043* + ID_MODEL_FROM_DATABASE=VIC Ethernet NIC + + pci:v00001137d00000043sv00001137sd00000047* +- ID_MODEL_FROM_DATABASE=VIC P81E PCIe Ethernet NIC ++ ID_MODEL_FROM_DATABASE=VIC Ethernet NIC (VIC P81E PCIe Ethernet NIC) + + pci:v00001137d00000043sv00001137sd00000048* +- ID_MODEL_FROM_DATABASE=VIC M81KR Mezzanine Ethernet NIC ++ ID_MODEL_FROM_DATABASE=VIC Ethernet NIC (VIC M81KR Mezzanine Ethernet NIC) + + pci:v00001137d00000043sv00001137sd0000004F* +- ID_MODEL_FROM_DATABASE=VIC 1280 Mezzanine Ethernet NIC ++ ID_MODEL_FROM_DATABASE=VIC Ethernet NIC (VIC 1280 Mezzanine Ethernet NIC) + + pci:v00001137d00000043sv00001137sd00000084* +- ID_MODEL_FROM_DATABASE=VIC 1240 MLOM Ethernet NIC ++ ID_MODEL_FROM_DATABASE=VIC Ethernet NIC (VIC 1240 MLOM Ethernet NIC) + + pci:v00001137d00000043sv00001137sd00000085* +- ID_MODEL_FROM_DATABASE=VIC 1225 PCIe Ethernet NIC ++ ID_MODEL_FROM_DATABASE=VIC Ethernet NIC (VIC 1225 PCIe Ethernet NIC) + + pci:v00001137d00000043sv00001137sd000000CD* +- ID_MODEL_FROM_DATABASE=VIC 1285 PCIe Ethernet NIC ++ ID_MODEL_FROM_DATABASE=VIC Ethernet NIC (VIC 1285 PCIe Ethernet NIC) + + pci:v00001137d00000043sv00001137sd000000CE* +- ID_MODEL_FROM_DATABASE=VIC 1225T PCIe Ethernet NIC ++ ID_MODEL_FROM_DATABASE=VIC Ethernet NIC (VIC 1225T PCIe Ethernet NIC) + + pci:v00001137d00000044* + ID_MODEL_FROM_DATABASE=VIC Ethernet NIC Dynamic + + pci:v00001137d00000044sv00001137sd00000047* +- ID_MODEL_FROM_DATABASE=VIC P81E PCIe Ethernet NIC Dynamic ++ ID_MODEL_FROM_DATABASE=VIC Ethernet NIC Dynamic (VIC P81E PCIe Ethernet NIC Dynamic) + + pci:v00001137d00000044sv00001137sd00000048* +- ID_MODEL_FROM_DATABASE=VIC M81KR Mezzanine Ethernet NIC Dynamic ++ ID_MODEL_FROM_DATABASE=VIC Ethernet NIC Dynamic (VIC M81KR Mezzanine Ethernet NIC Dynamic) + + pci:v00001137d00000044sv00001137sd0000004F* +- ID_MODEL_FROM_DATABASE=VIC 1280 Mezzanine Ethernet NIC Dynamic ++ ID_MODEL_FROM_DATABASE=VIC Ethernet NIC Dynamic (VIC 1280 Mezzanine Ethernet NIC Dynamic) + + pci:v00001137d00000044sv00001137sd00000084* +- ID_MODEL_FROM_DATABASE=VIC 1240 MLOM Ethernet NIC Dynamic ++ ID_MODEL_FROM_DATABASE=VIC Ethernet NIC Dynamic (VIC 1240 MLOM Ethernet NIC Dynamic) + + pci:v00001137d00000044sv00001137sd00000085* +- ID_MODEL_FROM_DATABASE=VIC 1225 PCIe Ethernet NIC Dynamic ++ ID_MODEL_FROM_DATABASE=VIC Ethernet NIC Dynamic (VIC 1225 PCIe Ethernet NIC Dynamic) + + pci:v00001137d00000044sv00001137sd000000CD* +- ID_MODEL_FROM_DATABASE=VIC 1285 PCIe Ethernet NIC Dynamic ++ ID_MODEL_FROM_DATABASE=VIC Ethernet NIC Dynamic (VIC 1285 PCIe Ethernet NIC Dynamic) + + pci:v00001137d00000044sv00001137sd000000CE* +- ID_MODEL_FROM_DATABASE=VIC 1225T PCIe Ethernet NIC Dynamic ++ ID_MODEL_FROM_DATABASE=VIC Ethernet NIC Dynamic (VIC 1225T PCIe Ethernet NIC Dynamic) + + pci:v00001137d00000045* + ID_MODEL_FROM_DATABASE=VIC FCoE HBA + + pci:v00001137d00000045sv00001137sd00000047* +- ID_MODEL_FROM_DATABASE=VIC P81E PCIe FCoE HBA ++ ID_MODEL_FROM_DATABASE=VIC FCoE HBA (VIC P81E PCIe FCoE HBA) + + pci:v00001137d00000045sv00001137sd00000048* +- ID_MODEL_FROM_DATABASE=VIC M81KR Mezzanine FCoE HBA ++ ID_MODEL_FROM_DATABASE=VIC FCoE HBA (VIC M81KR Mezzanine FCoE HBA) + + pci:v00001137d00000045sv00001137sd0000004F* +- ID_MODEL_FROM_DATABASE=VIC 1280 Mezzanine FCoE HBA ++ ID_MODEL_FROM_DATABASE=VIC FCoE HBA (VIC 1280 Mezzanine FCoE HBA) + + pci:v00001137d00000045sv00001137sd00000084* +- ID_MODEL_FROM_DATABASE=VIC 1240 MLOM FCoE HBA ++ ID_MODEL_FROM_DATABASE=VIC FCoE HBA (VIC 1240 MLOM FCoE HBA) + + pci:v00001137d00000045sv00001137sd00000085* +- ID_MODEL_FROM_DATABASE=VIC 1225 PCIe FCoE HBA ++ ID_MODEL_FROM_DATABASE=VIC FCoE HBA (VIC 1225 PCIe FCoE HBA) + + pci:v00001137d00000045sv00001137sd000000CD* +- ID_MODEL_FROM_DATABASE=VIC 1285 PCIe FCoE HBA ++ ID_MODEL_FROM_DATABASE=VIC FCoE HBA (VIC 1285 PCIe FCoE HBA) + + pci:v00001137d00000045sv00001137sd000000CE* +- ID_MODEL_FROM_DATABASE=VIC 1225T PCIe FCoE HBA ++ ID_MODEL_FROM_DATABASE=VIC FCoE HBA (VIC 1225T PCIe FCoE HBA) + + pci:v00001137d0000004E* + ID_MODEL_FROM_DATABASE=VIC 82 PCIe Upstream Port +@@ -32814,49 +32814,49 @@ pci:v00001148d00004000* + ID_MODEL_FROM_DATABASE=FDDI Adapter + + pci:v00001148d00004000sv00000E11sd0000B03B* +- ID_MODEL_FROM_DATABASE=Netelligent 100 FDDI DAS Fibre SC ++ ID_MODEL_FROM_DATABASE=FDDI Adapter (Netelligent 100 FDDI DAS Fibre SC) + + pci:v00001148d00004000sv00000E11sd0000B03C* +- ID_MODEL_FROM_DATABASE=Netelligent 100 FDDI SAS Fibre SC ++ ID_MODEL_FROM_DATABASE=FDDI Adapter (Netelligent 100 FDDI SAS Fibre SC) + + pci:v00001148d00004000sv00000E11sd0000B03D* +- ID_MODEL_FROM_DATABASE=Netelligent 100 FDDI DAS UTP ++ ID_MODEL_FROM_DATABASE=FDDI Adapter (Netelligent 100 FDDI DAS UTP) + + pci:v00001148d00004000sv00000E11sd0000B03E* +- ID_MODEL_FROM_DATABASE=Netelligent 100 FDDI SAS UTP ++ ID_MODEL_FROM_DATABASE=FDDI Adapter (Netelligent 100 FDDI SAS UTP) + + pci:v00001148d00004000sv00000E11sd0000B03F* +- ID_MODEL_FROM_DATABASE=Netelligent 100 FDDI SAS Fibre MIC ++ ID_MODEL_FROM_DATABASE=FDDI Adapter (Netelligent 100 FDDI SAS Fibre MIC) + + pci:v00001148d00004000sv00001148sd00005521* +- ID_MODEL_FROM_DATABASE=FDDI SK-5521 (SK-NET FDDI-UP) ++ ID_MODEL_FROM_DATABASE=FDDI Adapter (FDDI SK-5521 (SK-NET FDDI-UP)) + + pci:v00001148d00004000sv00001148sd00005522* +- ID_MODEL_FROM_DATABASE=FDDI SK-5522 (SK-NET FDDI-UP DAS) ++ ID_MODEL_FROM_DATABASE=FDDI Adapter (FDDI SK-5522 (SK-NET FDDI-UP DAS)) + + pci:v00001148d00004000sv00001148sd00005541* +- ID_MODEL_FROM_DATABASE=FDDI SK-5541 (SK-NET FDDI-FP) ++ ID_MODEL_FROM_DATABASE=FDDI Adapter (FDDI SK-5541 (SK-NET FDDI-FP)) + + pci:v00001148d00004000sv00001148sd00005543* +- ID_MODEL_FROM_DATABASE=FDDI SK-5543 (SK-NET FDDI-LP) ++ ID_MODEL_FROM_DATABASE=FDDI Adapter (FDDI SK-5543 (SK-NET FDDI-LP)) + + pci:v00001148d00004000sv00001148sd00005544* +- ID_MODEL_FROM_DATABASE=FDDI SK-5544 (SK-NET FDDI-LP DAS) ++ ID_MODEL_FROM_DATABASE=FDDI Adapter (FDDI SK-5544 (SK-NET FDDI-LP DAS)) + + pci:v00001148d00004000sv00001148sd00005821* +- ID_MODEL_FROM_DATABASE=FDDI SK-5821 (SK-NET FDDI-UP64) ++ ID_MODEL_FROM_DATABASE=FDDI Adapter (FDDI SK-5821 (SK-NET FDDI-UP64)) + + pci:v00001148d00004000sv00001148sd00005822* +- ID_MODEL_FROM_DATABASE=FDDI SK-5822 (SK-NET FDDI-UP64 DAS) ++ ID_MODEL_FROM_DATABASE=FDDI Adapter (FDDI SK-5822 (SK-NET FDDI-UP64 DAS)) + + pci:v00001148d00004000sv00001148sd00005841* +- ID_MODEL_FROM_DATABASE=FDDI SK-5841 (SK-NET FDDI-FP64) ++ ID_MODEL_FROM_DATABASE=FDDI Adapter (FDDI SK-5841 (SK-NET FDDI-FP64)) + + pci:v00001148d00004000sv00001148sd00005843* +- ID_MODEL_FROM_DATABASE=FDDI SK-5843 (SK-NET FDDI-LP64) ++ ID_MODEL_FROM_DATABASE=FDDI Adapter (FDDI SK-5843 (SK-NET FDDI-LP64)) + + pci:v00001148d00004000sv00001148sd00005844* +- ID_MODEL_FROM_DATABASE=FDDI SK-5844 (SK-NET FDDI-LP64 DAS) ++ ID_MODEL_FROM_DATABASE=FDDI Adapter (FDDI SK-5844 (SK-NET FDDI-LP64 DAS)) + + pci:v00001148d00004200* + ID_MODEL_FROM_DATABASE=Token Ring adapter +@@ -32865,115 +32865,115 @@ pci:v00001148d00004300* + ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) + + pci:v00001148d00004300sv00001148sd00009821* +- ID_MODEL_FROM_DATABASE=SK-9821 Gigabit Ethernet Server Adapter (SK-NET GE-T) ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (SK-9821 Gigabit Ethernet Server Adapter (SK-NET GE-T)) + + pci:v00001148d00004300sv00001148sd00009822* +- ID_MODEL_FROM_DATABASE=SK-9822 Gigabit Ethernet Server Adapter (SK-NET GE-T dual link) ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (SK-9822 Gigabit Ethernet Server Adapter (SK-NET GE-T dual link)) + + pci:v00001148d00004300sv00001148sd00009841* +- ID_MODEL_FROM_DATABASE=SK-9841 Gigabit Ethernet Server Adapter (SK-NET GE-LX) ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (SK-9841 Gigabit Ethernet Server Adapter (SK-NET GE-LX)) + + pci:v00001148d00004300sv00001148sd00009842* +- ID_MODEL_FROM_DATABASE=SK-9842 Gigabit Ethernet Server Adapter (SK-NET GE-LX dual link) ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (SK-9842 Gigabit Ethernet Server Adapter (SK-NET GE-LX dual link)) + + pci:v00001148d00004300sv00001148sd00009843* +- ID_MODEL_FROM_DATABASE=SK-9843 Gigabit Ethernet Server Adapter (SK-NET GE-SX) ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (SK-9843 Gigabit Ethernet Server Adapter (SK-NET GE-SX)) + + pci:v00001148d00004300sv00001148sd00009844* +- ID_MODEL_FROM_DATABASE=SK-9844 Gigabit Ethernet Server Adapter (SK-NET GE-SX dual link) ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (SK-9844 Gigabit Ethernet Server Adapter (SK-NET GE-SX dual link)) + + pci:v00001148d00004300sv00001148sd00009861* +- ID_MODEL_FROM_DATABASE=SK-9861 Gigabit Ethernet Server Adapter (SK-NET GE-SX Volition) ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (SK-9861 Gigabit Ethernet Server Adapter (SK-NET GE-SX Volition)) + + pci:v00001148d00004300sv00001148sd00009862* +- ID_MODEL_FROM_DATABASE=SK-9862 Gigabit Ethernet Server Adapter (SK-NET GE-SX Volition dual link) ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (SK-9862 Gigabit Ethernet Server Adapter (SK-NET GE-SX Volition dual link)) + + pci:v00001148d00004300sv00001148sd00009871* +- ID_MODEL_FROM_DATABASE=SK-9871 Gigabit Ethernet Server Adapter (SK-NET GE-ZX) ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (SK-9871 Gigabit Ethernet Server Adapter (SK-NET GE-ZX)) + + pci:v00001148d00004300sv00001148sd00009872* + ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) + + pci:v00001148d00004300sv00001259sd00002970* +- ID_MODEL_FROM_DATABASE=AT-2970SX Gigabit Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (AT-2970SX Gigabit Ethernet Adapter) + + pci:v00001148d00004300sv00001259sd00002971* +- ID_MODEL_FROM_DATABASE=AT-2970LX Gigabit Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (AT-2970LX Gigabit Ethernet Adapter) + + pci:v00001148d00004300sv00001259sd00002972* +- ID_MODEL_FROM_DATABASE=AT-2970TX Gigabit Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (AT-2970TX Gigabit Ethernet Adapter) + + pci:v00001148d00004300sv00001259sd00002973* +- ID_MODEL_FROM_DATABASE=AT-2971SX Gigabit Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (AT-2971SX Gigabit Ethernet Adapter) + + pci:v00001148d00004300sv00001259sd00002974* +- ID_MODEL_FROM_DATABASE=AT-2971T Gigabit Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (AT-2971T Gigabit Ethernet Adapter) + + pci:v00001148d00004300sv00001259sd00002975* +- ID_MODEL_FROM_DATABASE=AT-2970SX/2SC Gigabit Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (AT-2970SX/2SC Gigabit Ethernet Adapter) + + pci:v00001148d00004300sv00001259sd00002976* +- ID_MODEL_FROM_DATABASE=AT-2970LX/2SC Gigabit Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (AT-2970LX/2SC Gigabit Ethernet Adapter) + + pci:v00001148d00004300sv00001259sd00002977* +- ID_MODEL_FROM_DATABASE=AT-2970TX/2TX Gigabit Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link) (AT-2970TX/2TX Gigabit Ethernet Adapter) + + pci:v00001148d00004320* + ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC + + pci:v00001148d00004320sv00001148sd00000121* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8001 Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (Marvell RDK-8001 Adapter) + + pci:v00001148d00004320sv00001148sd00000221* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8002 Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (Marvell RDK-8002 Adapter) + + pci:v00001148d00004320sv00001148sd00000321* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8003 Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (Marvell RDK-8003 Adapter) + + pci:v00001148d00004320sv00001148sd00000421* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8004 Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (Marvell RDK-8004 Adapter) + + pci:v00001148d00004320sv00001148sd00000621* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8006 Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (Marvell RDK-8006 Adapter) + + pci:v00001148d00004320sv00001148sd00000721* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8007 Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (Marvell RDK-8007 Adapter) + + pci:v00001148d00004320sv00001148sd00000821* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8008 Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (Marvell RDK-8008 Adapter) + + pci:v00001148d00004320sv00001148sd00000921* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8009 Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (Marvell RDK-8009 Adapter) + + pci:v00001148d00004320sv00001148sd00001121* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8011 Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (Marvell RDK-8011 Adapter) + + pci:v00001148d00004320sv00001148sd00001221* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8012 Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (Marvell RDK-8012 Adapter) + + pci:v00001148d00004320sv00001148sd00003221* +- ID_MODEL_FROM_DATABASE=SK-9521 V2.0 10/100/1000Base-T Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (SK-9521 V2.0 10/100/1000Base-T Adapter) + + pci:v00001148d00004320sv00001148sd00005021* +- ID_MODEL_FROM_DATABASE=SK-9821 V2.0 Gigabit Ethernet 10/100/1000Base-T Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (SK-9821 V2.0 Gigabit Ethernet 10/100/1000Base-T Adapter) + + pci:v00001148d00004320sv00001148sd00005041* +- ID_MODEL_FROM_DATABASE=SK-9841 V2.0 Gigabit Ethernet 1000Base-LX Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (SK-9841 V2.0 Gigabit Ethernet 1000Base-LX Adapter) + + pci:v00001148d00004320sv00001148sd00005043* +- ID_MODEL_FROM_DATABASE=SK-9843 V2.0 Gigabit Ethernet 1000Base-SX Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (SK-9843 V2.0 Gigabit Ethernet 1000Base-SX Adapter) + + pci:v00001148d00004320sv00001148sd00005051* +- ID_MODEL_FROM_DATABASE=SK-9851 V2.0 Gigabit Ethernet 1000Base-SX Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (SK-9851 V2.0 Gigabit Ethernet 1000Base-SX Adapter) + + pci:v00001148d00004320sv00001148sd00005061* +- ID_MODEL_FROM_DATABASE=SK-9861 V2.0 Gigabit Ethernet 1000Base-SX Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (SK-9861 V2.0 Gigabit Ethernet 1000Base-SX Adapter) + + pci:v00001148d00004320sv00001148sd00005071* +- ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter) + + pci:v00001148d00004320sv00001148sd00009521* +- ID_MODEL_FROM_DATABASE=SK-9521 10/100/1000Base-T Adapter ++ ID_MODEL_FROM_DATABASE=SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter, PCI64, Fiber ZX/SC (SK-9521 10/100/1000Base-T Adapter) + + pci:v00001148d00004400* + ID_MODEL_FROM_DATABASE=SK-9Dxx Gigabit Ethernet Adapter +@@ -32991,25 +32991,25 @@ pci:v00001148d00009E00* + ID_MODEL_FROM_DATABASE=SK-9E21D 10/100/1000Base-T Adapter, Copper RJ-45 + + pci:v00001148d00009E00sv00001148sd00002100* +- ID_MODEL_FROM_DATABASE=SK-9E21 Server Adapter ++ ID_MODEL_FROM_DATABASE=SK-9E21D 10/100/1000Base-T Adapter, Copper RJ-45 (SK-9E21 Server Adapter) + + pci:v00001148d00009E00sv00001148sd000021D0* +- ID_MODEL_FROM_DATABASE=SK-9E21D 10/100/1000Base-T Adapter ++ ID_MODEL_FROM_DATABASE=SK-9E21D 10/100/1000Base-T Adapter, Copper RJ-45 (SK-9E21D 10/100/1000Base-T Adapter) + + pci:v00001148d00009E00sv00001148sd00002200* +- ID_MODEL_FROM_DATABASE=SK-9E22 Server Adapter ++ ID_MODEL_FROM_DATABASE=SK-9E21D 10/100/1000Base-T Adapter, Copper RJ-45 (SK-9E22 Server Adapter) + + pci:v00001148d00009E00sv00001148sd00008100* +- ID_MODEL_FROM_DATABASE=SK-9E81 Server Adapter ++ ID_MODEL_FROM_DATABASE=SK-9E21D 10/100/1000Base-T Adapter, Copper RJ-45 (SK-9E81 Server Adapter) + + pci:v00001148d00009E00sv00001148sd00008200* +- ID_MODEL_FROM_DATABASE=SK-9E82 Server Adapter ++ ID_MODEL_FROM_DATABASE=SK-9E21D 10/100/1000Base-T Adapter, Copper RJ-45 (SK-9E82 Server Adapter) + + pci:v00001148d00009E00sv00001148sd00009100* +- ID_MODEL_FROM_DATABASE=SK-9E91 Server Adapter ++ ID_MODEL_FROM_DATABASE=SK-9E21D 10/100/1000Base-T Adapter, Copper RJ-45 (SK-9E91 Server Adapter) + + pci:v00001148d00009E00sv00001148sd00009200* +- ID_MODEL_FROM_DATABASE=SK-9E92 Server Adapter ++ ID_MODEL_FROM_DATABASE=SK-9E21D 10/100/1000Base-T Adapter, Copper RJ-45 (SK-9E92 Server Adapter) + + pci:v00001148d00009E01* + ID_MODEL_FROM_DATABASE=SK-9E21M 10/100/1000Base-T Adapter +@@ -33111,16 +33111,16 @@ pci:v0000114Fd0000001D* + ID_MODEL_FROM_DATABASE=DataFire RAS T1/E1/PRI + + pci:v0000114Fd0000001Dsv0000114Fsd00000050* +- ID_MODEL_FROM_DATABASE=DataFire RAS E1 Adapter ++ ID_MODEL_FROM_DATABASE=DataFire RAS T1/E1/PRI (DataFire RAS E1 Adapter) + + pci:v0000114Fd0000001Dsv0000114Fsd00000051* +- ID_MODEL_FROM_DATABASE=DataFire RAS Dual E1 Adapter ++ ID_MODEL_FROM_DATABASE=DataFire RAS T1/E1/PRI (DataFire RAS Dual E1 Adapter) + + pci:v0000114Fd0000001Dsv0000114Fsd00000052* +- ID_MODEL_FROM_DATABASE=DataFire RAS T1 Adapter ++ ID_MODEL_FROM_DATABASE=DataFire RAS T1/E1/PRI (DataFire RAS T1 Adapter) + + pci:v0000114Fd0000001Dsv0000114Fsd00000053* +- ID_MODEL_FROM_DATABASE=DataFire RAS Dual T1 Adapter ++ ID_MODEL_FROM_DATABASE=DataFire RAS T1/E1/PRI (DataFire RAS Dual T1 Adapter) + + pci:v0000114Fd00000023* + ID_MODEL_FROM_DATABASE=AccelePort RAS +@@ -33129,10 +33129,10 @@ pci:v0000114Fd00000024* + ID_MODEL_FROM_DATABASE=DataFire RAS B4 ST/U + + pci:v0000114Fd00000024sv0000114Fsd00000030* +- ID_MODEL_FROM_DATABASE=DataFire RAS BRI U Adapter ++ ID_MODEL_FROM_DATABASE=DataFire RAS B4 ST/U (DataFire RAS BRI U Adapter) + + pci:v0000114Fd00000024sv0000114Fsd00000031* +- ID_MODEL_FROM_DATABASE=DataFire RAS BRI S/T Adapter ++ ID_MODEL_FROM_DATABASE=DataFire RAS B4 ST/U (DataFire RAS BRI S/T Adapter) + + pci:v0000114Fd00000026* + ID_MODEL_FROM_DATABASE=AccelePort 4r 920 +@@ -33156,19 +33156,19 @@ pci:v0000114Fd00000040* + ID_MODEL_FROM_DATABASE=AccelePort Xp + + pci:v0000114Fd00000040sv0000114Fsd00000042* +- ID_MODEL_FROM_DATABASE=AccelePort 2p PCI ++ ID_MODEL_FROM_DATABASE=AccelePort Xp (AccelePort 2p PCI) + + pci:v0000114Fd00000040sv0000114Fsd00000043* +- ID_MODEL_FROM_DATABASE=AccelePort 4p PCI ++ ID_MODEL_FROM_DATABASE=AccelePort Xp (AccelePort 4p PCI) + + pci:v0000114Fd00000040sv0000114Fsd00000044* +- ID_MODEL_FROM_DATABASE=AccelePort 8p PCI ++ ID_MODEL_FROM_DATABASE=AccelePort Xp (AccelePort 8p PCI) + + pci:v0000114Fd00000040sv0000114Fsd00000045* +- ID_MODEL_FROM_DATABASE=AccelePort 16p PCI ++ ID_MODEL_FROM_DATABASE=AccelePort Xp (AccelePort 16p PCI) + + pci:v0000114Fd00000040sv0000114Fsd0000004E* +- ID_MODEL_FROM_DATABASE=AccelePort 32p PCI ++ ID_MODEL_FROM_DATABASE=AccelePort Xp (AccelePort 32p PCI) + + pci:v0000114Fd00000042* + ID_MODEL_FROM_DATABASE=AccelePort 2p +@@ -33300,22 +33300,22 @@ pci:v0000115Dd00000003* + ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 + + pci:v0000115Dd00000003sv00001014sd00000181* +- ID_MODEL_FROM_DATABASE=10/100 EtherJet Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 (10/100 EtherJet Cardbus Adapter) + + pci:v0000115Dd00000003sv00001014sd00001181* +- ID_MODEL_FROM_DATABASE=10/100 EtherJet Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 (10/100 EtherJet Cardbus Adapter) + + pci:v0000115Dd00000003sv00001014sd00008181* +- ID_MODEL_FROM_DATABASE=10/100 EtherJet Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 (10/100 EtherJet Cardbus Adapter) + + pci:v0000115Dd00000003sv00001014sd00009181* +- ID_MODEL_FROM_DATABASE=10/100 EtherJet Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 (10/100 EtherJet Cardbus Adapter) + + pci:v0000115Dd00000003sv0000115Dsd00000181* + ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 + + pci:v0000115Dd00000003sv0000115Dsd00000182* +- ID_MODEL_FROM_DATABASE=RealPort2 CardBus Ethernet 10/100 (R2BE-100) ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 (RealPort2 CardBus Ethernet 10/100 (R2BE-100)) + + pci:v0000115Dd00000003sv0000115Dsd00001181* + ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 +@@ -33324,19 +33324,19 @@ pci:v0000115Dd00000003sv00001179sd00000181* + ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 + + pci:v0000115Dd00000003sv00008086sd00008181* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Mobile CardBus 32 Adapter ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 (EtherExpress PRO/100 Mobile CardBus 32 Adapter) + + pci:v0000115Dd00000003sv00008086sd00009181* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Mobile CardBus 32 Adapter ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 (EtherExpress PRO/100 Mobile CardBus 32 Adapter) + + pci:v0000115Dd00000005* + ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 + + pci:v0000115Dd00000005sv00001014sd00000182* +- ID_MODEL_FROM_DATABASE=10/100 EtherJet Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 (10/100 EtherJet Cardbus Adapter) + + pci:v0000115Dd00000005sv00001014sd00001182* +- ID_MODEL_FROM_DATABASE=10/100 EtherJet Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 (10/100 EtherJet Cardbus Adapter) + + pci:v0000115Dd00000005sv0000115Dsd00000182* + ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 +@@ -33348,10 +33348,10 @@ pci:v0000115Dd00000007* + ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 + + pci:v0000115Dd00000007sv00001014sd00000182* +- ID_MODEL_FROM_DATABASE=10/100 EtherJet Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 (10/100 EtherJet Cardbus Adapter) + + pci:v0000115Dd00000007sv00001014sd00001182* +- ID_MODEL_FROM_DATABASE=10/100 EtherJet Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 (10/100 EtherJet Cardbus Adapter) + + pci:v0000115Dd00000007sv0000115Dsd00000182* + ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 +@@ -33363,7 +33363,7 @@ pci:v0000115Dd0000000B* + ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 + + pci:v0000115Dd0000000Bsv00001014sd00000183* +- ID_MODEL_FROM_DATABASE=10/100 EtherJet Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 (10/100 EtherJet Cardbus Adapter) + + pci:v0000115Dd0000000Bsv0000115Dsd00000183* + ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 +@@ -33375,7 +33375,7 @@ pci:v0000115Dd0000000F* + ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 + + pci:v0000115Dd0000000Fsv00001014sd00000183* +- ID_MODEL_FROM_DATABASE=10/100 EtherJet Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 (10/100 EtherJet Cardbus Adapter) + + pci:v0000115Dd0000000Fsv0000115Dsd00000183* + ID_MODEL_FROM_DATABASE=Cardbus Ethernet 10/100 +@@ -33387,22 +33387,22 @@ pci:v0000115Dd00000101* + ID_MODEL_FROM_DATABASE=Cardbus 56k modem + + pci:v0000115Dd00000101sv0000115Dsd00001081* +- ID_MODEL_FROM_DATABASE=Cardbus 56k Modem ++ ID_MODEL_FROM_DATABASE=Cardbus 56k modem (Cardbus 56k Modem) + + pci:v0000115Dd00000103* + ID_MODEL_FROM_DATABASE=Cardbus Ethernet + 56k Modem + + pci:v0000115Dd00000103sv00001014sd00009181* +- ID_MODEL_FROM_DATABASE=Cardbus 56k Modem ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet + 56k Modem (Cardbus 56k Modem) + + pci:v0000115Dd00000103sv00001115sd00001181* +- ID_MODEL_FROM_DATABASE=Cardbus Ethernet 100 + 56k Modem ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet + 56k Modem (Cardbus Ethernet 100 + 56k Modem) + + pci:v0000115Dd00000103sv0000115Dsd00001181* +- ID_MODEL_FROM_DATABASE=CBEM56G-100 Ethernet + 56k Modem ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet + 56k Modem (CBEM56G-100 Ethernet + 56k Modem) + + pci:v0000115Dd00000103sv00008086sd00009181* +- ID_MODEL_FROM_DATABASE=PRO/100 LAN + Modem56 CardBus ++ ID_MODEL_FROM_DATABASE=Cardbus Ethernet + 56k Modem (PRO/100 LAN + Modem56 CardBus) + + pci:v0000115E* + ID_VENDOR_FROM_DATABASE=Peer Protocols Inc +@@ -33429,7 +33429,7 @@ pci:v00001163d00002000* + ID_MODEL_FROM_DATABASE=Verite V2000/V2100/V2200 + + pci:v00001163d00002000sv00001092sd00002000* +- ID_MODEL_FROM_DATABASE=Stealth II S220 ++ ID_MODEL_FROM_DATABASE=Verite V2000/V2100/V2200 (Stealth II S220) + + pci:v00001164* + ID_VENDOR_FROM_DATABASE=Advanced Peripherals Technologies +@@ -33510,7 +33510,7 @@ pci:v00001166d00000132* + ID_MODEL_FROM_DATABASE=BCM5780 [HT2000] PCI-Express Bridge + + pci:v00001166d00000132sv00001166sd00000132* +- ID_MODEL_FROM_DATABASE=HT2000 PCI-Express bridge ++ ID_MODEL_FROM_DATABASE=BCM5780 [HT2000] PCI-Express Bridge (HT2000 PCI-Express bridge) + + pci:v00001166d00000140* + ID_MODEL_FROM_DATABASE=HT2100 PCI-Express Bridge +@@ -33531,13 +33531,13 @@ pci:v00001166d00000201* + ID_MODEL_FROM_DATABASE=CSB5 South Bridge + + pci:v00001166d00000201sv00004C53sd00001080* +- ID_MODEL_FROM_DATABASE=CT8 mainboard ++ ID_MODEL_FROM_DATABASE=CSB5 South Bridge (CT8 mainboard) + + pci:v00001166d00000203* + ID_MODEL_FROM_DATABASE=CSB6 South Bridge + + pci:v00001166d00000203sv00001734sd00001012* +- ID_MODEL_FROM_DATABASE=PRIMERGY RX/TX series ++ ID_MODEL_FROM_DATABASE=CSB6 South Bridge (PRIMERGY RX/TX series) + + pci:v00001166d00000205* + ID_MODEL_FROM_DATABASE=BCM5785 [HT1000] Legacy South Bridge +@@ -33549,37 +33549,37 @@ pci:v00001166d00000212* + ID_MODEL_FROM_DATABASE=CSB5 IDE Controller + + pci:v00001166d00000212sv00001028sd0000014A* +- ID_MODEL_FROM_DATABASE=PowerEdge 1750 ++ ID_MODEL_FROM_DATABASE=CSB5 IDE Controller (PowerEdge 1750) + + pci:v00001166d00000212sv00001028sd0000810B* +- ID_MODEL_FROM_DATABASE=PowerEdge 1650/2550 ++ ID_MODEL_FROM_DATABASE=CSB5 IDE Controller (PowerEdge 1650/2550) + + pci:v00001166d00000212sv00004C53sd00001080* +- ID_MODEL_FROM_DATABASE=CT8 mainboard ++ ID_MODEL_FROM_DATABASE=CSB5 IDE Controller (CT8 mainboard) + + pci:v00001166d00000213* + ID_MODEL_FROM_DATABASE=CSB6 RAID/IDE Controller + + pci:v00001166d00000213sv00001028sd00004134* +- ID_MODEL_FROM_DATABASE=PowerEdge 600SC ++ ID_MODEL_FROM_DATABASE=CSB6 RAID/IDE Controller (PowerEdge 600SC) + + pci:v00001166d00000213sv00001028sd0000C134* +- ID_MODEL_FROM_DATABASE=Poweredge SC600 ++ ID_MODEL_FROM_DATABASE=CSB6 RAID/IDE Controller (Poweredge SC600) + + pci:v00001166d00000213sv00001734sd00001012* +- ID_MODEL_FROM_DATABASE=PRIMERGY RX/TX series onboard IDE ++ ID_MODEL_FROM_DATABASE=CSB6 RAID/IDE Controller (PRIMERGY RX/TX series onboard IDE) + + pci:v00001166d00000214* + ID_MODEL_FROM_DATABASE=BCM5785 [HT1000] IDE + + pci:v00001166d00000214sv00001028sd00000205* +- ID_MODEL_FROM_DATABASE=PowerEdge 2970 HT1000 IDE ++ ID_MODEL_FROM_DATABASE=BCM5785 [HT1000] IDE (PowerEdge 2970 HT1000 IDE) + + pci:v00001166d00000217* + ID_MODEL_FROM_DATABASE=CSB6 IDE Controller + + pci:v00001166d00000217sv00001028sd00004134* +- ID_MODEL_FROM_DATABASE=Poweredge SC600 ++ ID_MODEL_FROM_DATABASE=CSB6 IDE Controller (Poweredge SC600) + + pci:v00001166d0000021B* + ID_MODEL_FROM_DATABASE=HT1100 HD Audio +@@ -33588,22 +33588,22 @@ pci:v00001166d00000220* + ID_MODEL_FROM_DATABASE=OSB4/CSB5 OHCI USB Controller + + pci:v00001166d00000220sv00004C53sd00001080* +- ID_MODEL_FROM_DATABASE=CT8 mainboard ++ ID_MODEL_FROM_DATABASE=OSB4/CSB5 OHCI USB Controller (CT8 mainboard) + + pci:v00001166d00000221* + ID_MODEL_FROM_DATABASE=CSB6 OHCI USB Controller + + pci:v00001166d00000221sv00001734sd00001012* +- ID_MODEL_FROM_DATABASE=PRIMERGY RX/TX series onboard OHCI ++ ID_MODEL_FROM_DATABASE=CSB6 OHCI USB Controller (PRIMERGY RX/TX series onboard OHCI) + + pci:v00001166d00000223* + ID_MODEL_FROM_DATABASE=BCM5785 [HT1000] USB + + pci:v00001166d00000223sv00001028sd00000205* +- ID_MODEL_FROM_DATABASE=PowerEdge 2970 HT1000 USB Controller ++ ID_MODEL_FROM_DATABASE=BCM5785 [HT1000] USB (PowerEdge 2970 HT1000 USB Controller) + + pci:v00001166d00000223sv00001028sd0000020B* +- ID_MODEL_FROM_DATABASE=PowerEdge T605 HT1000 USB Controller ++ ID_MODEL_FROM_DATABASE=BCM5785 [HT1000] USB (PowerEdge T605 HT1000 USB Controller) + + pci:v00001166d00000225* + ID_MODEL_FROM_DATABASE=CSB5 LPC bridge +@@ -33612,22 +33612,22 @@ pci:v00001166d00000227* + ID_MODEL_FROM_DATABASE=GCLE-2 Host Bridge + + pci:v00001166d00000227sv00001734sd00001012* +- ID_MODEL_FROM_DATABASE=PRIMERGY RX/TX series ++ ID_MODEL_FROM_DATABASE=GCLE-2 Host Bridge (PRIMERGY RX/TX series) + + pci:v00001166d00000230* + ID_MODEL_FROM_DATABASE=CSB5 LPC bridge + + pci:v00001166d00000230sv00004C53sd00001080* +- ID_MODEL_FROM_DATABASE=CT8 mainboard ++ ID_MODEL_FROM_DATABASE=CSB5 LPC bridge (CT8 mainboard) + + pci:v00001166d00000234* + ID_MODEL_FROM_DATABASE=BCM5785 [HT1000] LPC + + pci:v00001166d00000234sv00001028sd00000205* +- ID_MODEL_FROM_DATABASE=PowerEdge 2970 HT1000 LPC ++ ID_MODEL_FROM_DATABASE=BCM5785 [HT1000] LPC (PowerEdge 2970 HT1000 LPC) + + pci:v00001166d00000234sv00001028sd0000020B* +- ID_MODEL_FROM_DATABASE=PowerEdge T605 HT1000 LPC ++ ID_MODEL_FROM_DATABASE=BCM5785 [HT1000] LPC (PowerEdge T605 HT1000 LPC) + + pci:v00001166d00000235* + ID_MODEL_FROM_DATABASE=BCM5785 [HT1000] XIOAPIC0-2 +@@ -33648,13 +33648,13 @@ pci:v00001166d0000024A* + ID_MODEL_FROM_DATABASE=BCM5785 [HT1000] SATA (Native SATA Mode) + + pci:v00001166d0000024Asv00001028sd0000020B* +- ID_MODEL_FROM_DATABASE=PowerEdge T605 onboard SATA Controller ++ ID_MODEL_FROM_DATABASE=BCM5785 [HT1000] SATA (Native SATA Mode) (PowerEdge T605 onboard SATA Controller) + + pci:v00001166d0000024B* + ID_MODEL_FROM_DATABASE=BCM5785 [HT1000] SATA (PATA/IDE Mode) + + pci:v00001166d0000024Bsv00001028sd00000205* +- ID_MODEL_FROM_DATABASE=PowerEdge 2970 HT1000 SATA controller ++ ID_MODEL_FROM_DATABASE=BCM5785 [HT1000] SATA (PATA/IDE Mode) (PowerEdge 2970 HT1000 SATA controller) + + pci:v00001166d00000406* + ID_MODEL_FROM_DATABASE=HT1100 PCI-X Bridge +@@ -33666,7 +33666,7 @@ pci:v00001166d0000040A* + ID_MODEL_FROM_DATABASE=HT1100 ISA-LPC Bridge + + pci:v00001166d0000040Asv00001028sd00000223* +- ID_MODEL_FROM_DATABASE=PowerEdge R905 HT1100 ISA-LPC Bridge ++ ID_MODEL_FROM_DATABASE=HT1100 ISA-LPC Bridge (PowerEdge R905 HT1100 ISA-LPC Bridge) + + pci:v00001166d00000410* + ID_MODEL_FROM_DATABASE=HT1100 SATA Controller (Native SATA Mode) +@@ -33783,7 +33783,7 @@ pci:v00001179d00000601* + ID_MODEL_FROM_DATABASE=CPU to PCI bridge + + pci:v00001179d00000601sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Satellite Pro ++ ID_MODEL_FROM_DATABASE=CPU to PCI bridge (Satellite Pro) + + pci:v00001179d00000602* + ID_MODEL_FROM_DATABASE=PCI to ISA bridge +@@ -33798,13 +33798,13 @@ pci:v00001179d0000060A* + ID_MODEL_FROM_DATABASE=ToPIC95 + + pci:v00001179d0000060Asv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Satellite Pro ++ ID_MODEL_FROM_DATABASE=ToPIC95 (Satellite Pro) + + pci:v00001179d0000060F* + ID_MODEL_FROM_DATABASE=ToPIC97 + + pci:v00001179d0000060Fsv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Satellite 4010 ++ ID_MODEL_FROM_DATABASE=ToPIC97 (Satellite 4010) + + pci:v00001179d00000617* + ID_MODEL_FROM_DATABASE=ToPIC100 PCI to Cardbus Bridge with ZV Support +@@ -33846,16 +33846,16 @@ pci:v0000117Cd00000030* + ID_MODEL_FROM_DATABASE=Ultra320 SCSI Host Adapter + + pci:v0000117Cd00000030sv0000117Csd00008013* +- ID_MODEL_FROM_DATABASE=ExpressPCI UL4D ++ ID_MODEL_FROM_DATABASE=Ultra320 SCSI Host Adapter (ExpressPCI UL4D) + + pci:v0000117Cd00000030sv0000117Csd00008014* +- ID_MODEL_FROM_DATABASE=ExpressPCI UL4S ++ ID_MODEL_FROM_DATABASE=Ultra320 SCSI Host Adapter (ExpressPCI UL4S) + + pci:v0000117Cd00000030sv0000117Csd00008027* +- ID_MODEL_FROM_DATABASE=ExpressPCI UL5D ++ ID_MODEL_FROM_DATABASE=Ultra320 SCSI Host Adapter (ExpressPCI UL5D) + + pci:v0000117Cd00000030sv0000117Csd0000802F* +- ID_MODEL_FROM_DATABASE=ExpressPCI UL5D Low Profile ++ ID_MODEL_FROM_DATABASE=Ultra320 SCSI Host Adapter (ExpressPCI UL5D Low Profile) + + pci:v0000117Cd00000033* + ID_MODEL_FROM_DATABASE=SAS Adapter +@@ -33882,67 +33882,67 @@ pci:v00001180d00000475* + ID_MODEL_FROM_DATABASE=RL5c475 + + pci:v00001180d00000475sv0000144Dsd0000C006* +- ID_MODEL_FROM_DATABASE=vpr Matrix 170B4 CardBus bridge ++ ID_MODEL_FROM_DATABASE=RL5c475 (vpr Matrix 170B4 CardBus bridge) + + pci:v00001180d00000476* + ID_MODEL_FROM_DATABASE=RL5c476 II + + pci:v00001180d00000476sv00001014sd00000185* +- ID_MODEL_FROM_DATABASE=ThinkPad A/T/X Series ++ ID_MODEL_FROM_DATABASE=RL5c476 II (ThinkPad A/T/X Series) + + pci:v00001180d00000476sv00001014sd0000056C* +- ID_MODEL_FROM_DATABASE=ThinkPad Z60t ++ ID_MODEL_FROM_DATABASE=RL5c476 II (ThinkPad Z60t) + + pci:v00001180d00000476sv00001028sd0000014F* +- ID_MODEL_FROM_DATABASE=Latitude X300 laptop ++ ID_MODEL_FROM_DATABASE=RL5c476 II (Latitude X300 laptop) + + pci:v00001180d00000476sv00001028sd00000188* +- ID_MODEL_FROM_DATABASE=Inspiron 6000 laptop ++ ID_MODEL_FROM_DATABASE=RL5c476 II (Inspiron 6000 laptop) + + pci:v00001180d00000476sv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=RL5c476 II (Compaq 6710b) + + pci:v00001180d00000476sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=RL5c476 II (Compaq 6910p) + + pci:v00001180d00000476sv00001043sd00001237* +- ID_MODEL_FROM_DATABASE=A6J-Q008 ++ ID_MODEL_FROM_DATABASE=RL5c476 II (A6J-Q008) + + pci:v00001180d00000476sv00001043sd00001967* +- ID_MODEL_FROM_DATABASE=V6800V ++ ID_MODEL_FROM_DATABASE=RL5c476 II (V6800V) + + pci:v00001180d00000476sv00001043sd00001987* +- ID_MODEL_FROM_DATABASE=Asus A4K and Z81K notebooks, possibly others ( mid-2005 machines ) ++ ID_MODEL_FROM_DATABASE=RL5c476 II (Asus A4K and Z81K notebooks, possibly others ( mid-2005 machines )) + + pci:v00001180d00000476sv0000104Dsd000080DF* +- ID_MODEL_FROM_DATABASE=Vaio PCG-FX403 ++ ID_MODEL_FROM_DATABASE=RL5c476 II (Vaio PCG-FX403) + + pci:v00001180d00000476sv0000104Dsd000080E7* +- ID_MODEL_FROM_DATABASE=VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ++ ID_MODEL_FROM_DATABASE=RL5c476 II (VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP) + + pci:v00001180d00000476sv0000104Dsd0000814E* +- ID_MODEL_FROM_DATABASE=VAIO GRZ390Z ++ ID_MODEL_FROM_DATABASE=RL5c476 II (VAIO GRZ390Z) + + pci:v00001180d00000476sv000010F7sd00008338* +- ID_MODEL_FROM_DATABASE=Panasonic CF-Y5 laptop ++ ID_MODEL_FROM_DATABASE=RL5c476 II (Panasonic CF-Y5 laptop) + + pci:v00001180d00000476sv0000144Dsd0000C005* +- ID_MODEL_FROM_DATABASE=X10 Laptop ++ ID_MODEL_FROM_DATABASE=RL5c476 II (X10 Laptop) + + pci:v00001180d00000476sv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P30/P35 notebook ++ ID_MODEL_FROM_DATABASE=RL5c476 II (P30/P35 notebook) + + pci:v00001180d00000476sv000014EFsd00000220* +- ID_MODEL_FROM_DATABASE=PCD-RP-220S ++ ID_MODEL_FROM_DATABASE=RL5c476 II (PCD-RP-220S) + + pci:v00001180d00000476sv000017AAsd0000201C* +- ID_MODEL_FROM_DATABASE=ThinkPad X60/X60s ++ ID_MODEL_FROM_DATABASE=RL5c476 II (ThinkPad X60/X60s) + + pci:v00001180d00000476sv000017AAsd000020C4* +- ID_MODEL_FROM_DATABASE=ThinkPad T61 ++ ID_MODEL_FROM_DATABASE=RL5c476 II (ThinkPad T61) + + pci:v00001180d00000476sv000017AAsd000020C6* +- ID_MODEL_FROM_DATABASE=ThinkPad R61 ++ ID_MODEL_FROM_DATABASE=RL5c476 II (ThinkPad R61) + + pci:v00001180d00000477* + ID_MODEL_FROM_DATABASE=RL5c477 +@@ -33951,7 +33951,7 @@ pci:v00001180d00000478* + ID_MODEL_FROM_DATABASE=RL5c478 + + pci:v00001180d00000478sv00001014sd00000184* +- ID_MODEL_FROM_DATABASE=ThinkPad A30p ++ ID_MODEL_FROM_DATABASE=RL5c478 (ThinkPad A30p) + + pci:v00001180d00000511* + ID_MODEL_FROM_DATABASE=R5C511 +@@ -33960,43 +33960,43 @@ pci:v00001180d00000522* + ID_MODEL_FROM_DATABASE=R5C522 IEEE 1394 Controller + + pci:v00001180d00000522sv00001014sd000001CF* +- ID_MODEL_FROM_DATABASE=ThinkPad A30p ++ ID_MODEL_FROM_DATABASE=R5C522 IEEE 1394 Controller (ThinkPad A30p) + + pci:v00001180d00000522sv00001043sd00001967* +- ID_MODEL_FROM_DATABASE=V6800V ++ ID_MODEL_FROM_DATABASE=R5C522 IEEE 1394 Controller (V6800V) + + pci:v00001180d00000551* + ID_MODEL_FROM_DATABASE=R5C551 IEEE 1394 Controller + + pci:v00001180d00000551sv0000144Dsd0000C006* +- ID_MODEL_FROM_DATABASE=vpr Matrix 170B4 ++ ID_MODEL_FROM_DATABASE=R5C551 IEEE 1394 Controller (vpr Matrix 170B4) + + pci:v00001180d00000552* + ID_MODEL_FROM_DATABASE=R5C552 IEEE 1394 Controller + + pci:v00001180d00000552sv00001014sd00000511* +- ID_MODEL_FROM_DATABASE=ThinkPad A/T/X Series ++ ID_MODEL_FROM_DATABASE=R5C552 IEEE 1394 Controller (ThinkPad A/T/X Series) + + pci:v00001180d00000552sv00001028sd0000014F* +- ID_MODEL_FROM_DATABASE=Latitude X300 laptop ++ ID_MODEL_FROM_DATABASE=R5C552 IEEE 1394 Controller (Latitude X300 laptop) + + pci:v00001180d00000552sv00001028sd00000188* +- ID_MODEL_FROM_DATABASE=Inspiron 6000 laptop ++ ID_MODEL_FROM_DATABASE=R5C552 IEEE 1394 Controller (Inspiron 6000 laptop) + + pci:v00001180d00000552sv00001043sd00001237* +- ID_MODEL_FROM_DATABASE=A6J-Q008 ++ ID_MODEL_FROM_DATABASE=R5C552 IEEE 1394 Controller (A6J-Q008) + + pci:v00001180d00000552sv00001043sd00001757* +- ID_MODEL_FROM_DATABASE=M2400N laptop ++ ID_MODEL_FROM_DATABASE=R5C552 IEEE 1394 Controller (M2400N laptop) + + pci:v00001180d00000552sv0000144Dsd0000C005* +- ID_MODEL_FROM_DATABASE=X10 Laptop ++ ID_MODEL_FROM_DATABASE=R5C552 IEEE 1394 Controller (X10 Laptop) + + pci:v00001180d00000552sv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P30/P35 notebook ++ ID_MODEL_FROM_DATABASE=R5C552 IEEE 1394 Controller (P30/P35 notebook) + + pci:v00001180d00000552sv000017AAsd0000201E* +- ID_MODEL_FROM_DATABASE=ThinkPad X60/X60s ++ ID_MODEL_FROM_DATABASE=R5C552 IEEE 1394 Controller (ThinkPad X60/X60s) + + pci:v00001180d00000554* + ID_MODEL_FROM_DATABASE=R5C554 +@@ -34011,37 +34011,37 @@ pci:v00001180d00000592* + ID_MODEL_FROM_DATABASE=R5C592 Memory Stick Bus Host Adapter + + pci:v00001180d00000592sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Aspire 5920G ++ ID_MODEL_FROM_DATABASE=R5C592 Memory Stick Bus Host Adapter (Aspire 5920G) + + pci:v00001180d00000592sv00001028sd000001D7* +- ID_MODEL_FROM_DATABASE=XPS M1210 ++ ID_MODEL_FROM_DATABASE=R5C592 Memory Stick Bus Host Adapter (XPS M1210) + + pci:v00001180d00000592sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=R5C592 Memory Stick Bus Host Adapter (Inspiron 1420) + + pci:v00001180d00000592sv0000103Csd000030B5* +- ID_MODEL_FROM_DATABASE=Presario V3242AU ++ ID_MODEL_FROM_DATABASE=R5C592 Memory Stick Bus Host Adapter (Presario V3242AU) + + pci:v00001180d00000592sv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=R5C592 Memory Stick Bus Host Adapter (Presario V6133CL) + + pci:v00001180d00000592sv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=R5C592 Memory Stick Bus Host Adapter (Pavilion dv6700) + + pci:v00001180d00000592sv0000103Csd000030CF* +- ID_MODEL_FROM_DATABASE=Pavilion dv9668eg Laptop ++ ID_MODEL_FROM_DATABASE=R5C592 Memory Stick Bus Host Adapter (Pavilion dv9668eg Laptop) + + pci:v00001180d00000592sv00001043sd00001237* +- ID_MODEL_FROM_DATABASE=A6J-Q008 ++ ID_MODEL_FROM_DATABASE=R5C592 Memory Stick Bus Host Adapter (A6J-Q008) + + pci:v00001180d00000592sv00001043sd00001967* +- ID_MODEL_FROM_DATABASE=V6800V ++ ID_MODEL_FROM_DATABASE=R5C592 Memory Stick Bus Host Adapter (V6800V) + + pci:v00001180d00000592sv0000144Dsd0000C018* +- ID_MODEL_FROM_DATABASE=X20 IV ++ ID_MODEL_FROM_DATABASE=R5C592 Memory Stick Bus Host Adapter (X20 IV) + + pci:v00001180d00000592sv000017AAsd000020CA* +- ID_MODEL_FROM_DATABASE=ThinkPad T61 ++ ID_MODEL_FROM_DATABASE=R5C592 Memory Stick Bus Host Adapter (ThinkPad T61) + + pci:v00001180d00000811* + ID_MODEL_FROM_DATABASE=R5C811 +@@ -34050,94 +34050,94 @@ pci:v00001180d00000822* + ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter + + pci:v00001180d00000822sv00001014sd00000556* +- ID_MODEL_FROM_DATABASE=ThinkPad X60s / Z60t ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (ThinkPad X60s / Z60t) + + pci:v00001180d00000822sv00001014sd00000598* +- ID_MODEL_FROM_DATABASE=ThinkPad Z60m ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (ThinkPad Z60m) + + pci:v00001180d00000822sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Aspire 5920G ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (Aspire 5920G) + + pci:v00001180d00000822sv00001028sd00000188* +- ID_MODEL_FROM_DATABASE=Inspiron 6000 laptop ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (Inspiron 6000 laptop) + + pci:v00001180d00000822sv00001028sd000001A2* +- ID_MODEL_FROM_DATABASE=Inspiron 9200 ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (Inspiron 9200) + + pci:v00001180d00000822sv00001028sd000001D7* +- ID_MODEL_FROM_DATABASE=XPS M1210 ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (XPS M1210) + + pci:v00001180d00000822sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (Inspiron 1420) + + pci:v00001180d00000822sv0000103Csd000003B5* +- ID_MODEL_FROM_DATABASE=Presario V3242AU ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (Presario V3242AU) + + pci:v00001180d00000822sv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (Presario V6133CL) + + pci:v00001180d00000822sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (Compaq 6910p) + + pci:v00001180d00000822sv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (Pavilion dv6700) + + pci:v00001180d00000822sv0000103Csd000030CF* +- ID_MODEL_FROM_DATABASE=Pavilion dv9668eg Laptop ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (Pavilion dv9668eg Laptop) + + pci:v00001180d00000822sv00001043sd00001237* +- ID_MODEL_FROM_DATABASE=A6J-Q008 ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (A6J-Q008) + + pci:v00001180d00000822sv00001043sd00001967* +- ID_MODEL_FROM_DATABASE=ASUS V6800V ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (ASUS V6800V) + + pci:v00001180d00000822sv000010F7sd00008338* +- ID_MODEL_FROM_DATABASE=Panasonic CF-Y5 laptop ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (Panasonic CF-Y5 laptop) + + pci:v00001180d00000822sv0000144Dsd0000C018* +- ID_MODEL_FROM_DATABASE=X20 IV ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (X20 IV) + + pci:v00001180d00000822sv000017AAsd0000201D* +- ID_MODEL_FROM_DATABASE=ThinkPad X60/X60s ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (ThinkPad X60/X60s) + + pci:v00001180d00000822sv000017AAsd000020C7* +- ID_MODEL_FROM_DATABASE=ThinkPad T61 ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (ThinkPad T61) + + pci:v00001180d00000822sv000017AAsd000020C8* +- ID_MODEL_FROM_DATABASE=ThinkPad W500 ++ ID_MODEL_FROM_DATABASE=R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (ThinkPad W500) + + pci:v00001180d00000832* + ID_MODEL_FROM_DATABASE=R5C832 IEEE 1394 Controller + + pci:v00001180d00000832sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Aspire 5920G ++ ID_MODEL_FROM_DATABASE=R5C832 IEEE 1394 Controller (Aspire 5920G) + + pci:v00001180d00000832sv00001028sd000001D7* +- ID_MODEL_FROM_DATABASE=XPS M1210 ++ ID_MODEL_FROM_DATABASE=R5C832 IEEE 1394 Controller (XPS M1210) + + pci:v00001180d00000832sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=R5C832 IEEE 1394 Controller (Inspiron 1420) + + pci:v00001180d00000832sv00001028sd0000024D* +- ID_MODEL_FROM_DATABASE=Latitude E4300 ++ ID_MODEL_FROM_DATABASE=R5C832 IEEE 1394 Controller (Latitude E4300) + + pci:v00001180d00000832sv0000103Csd000030B5* +- ID_MODEL_FROM_DATABASE=Presario V3242AU ++ ID_MODEL_FROM_DATABASE=R5C832 IEEE 1394 Controller (Presario V3242AU) + + pci:v00001180d00000832sv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=R5C832 IEEE 1394 Controller (Presario V6133CL) + + pci:v00001180d00000832sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=R5C832 IEEE 1394 Controller (Compaq 6910p) + + pci:v00001180d00000832sv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=R5C832 IEEE 1394 Controller (Pavilion dv6700) + + pci:v00001180d00000832sv0000103Csd000030CF* +- ID_MODEL_FROM_DATABASE=Pavilion dv9668eg Laptop ++ ID_MODEL_FROM_DATABASE=R5C832 IEEE 1394 Controller (Pavilion dv9668eg Laptop) + + pci:v00001180d00000832sv000017AAsd000020C7* +- ID_MODEL_FROM_DATABASE=ThinkPad R61 ++ ID_MODEL_FROM_DATABASE=R5C832 IEEE 1394 Controller (ThinkPad R61) + + pci:v00001180d00000841* + ID_MODEL_FROM_DATABASE=R5C841 CardBus/SD/SDIO/MMC/MS/MSPro/xD/IEEE1394 +@@ -34146,58 +34146,58 @@ pci:v00001180d00000843* + ID_MODEL_FROM_DATABASE=R5C843 MMC Host Controller + + pci:v00001180d00000843sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Aspire 5920G ++ ID_MODEL_FROM_DATABASE=R5C843 MMC Host Controller (Aspire 5920G) + + pci:v00001180d00000843sv00001028sd000001D7* +- ID_MODEL_FROM_DATABASE=XPS M1210 ++ ID_MODEL_FROM_DATABASE=R5C843 MMC Host Controller (XPS M1210) + + pci:v00001180d00000843sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=R5C843 MMC Host Controller (Inspiron 1420) + + pci:v00001180d00000843sv00001028sd000001F5* +- ID_MODEL_FROM_DATABASE=Dell Inspiron 1501 ++ ID_MODEL_FROM_DATABASE=R5C843 MMC Host Controller (Dell Inspiron 1501) + + pci:v00001180d00000843sv00001028sd0000024F* +- ID_MODEL_FROM_DATABASE=Dell Latitude e6500 ++ ID_MODEL_FROM_DATABASE=R5C843 MMC Host Controller (Dell Latitude e6500) + + pci:v00001180d00000843sv0000103Csd000003B5* +- ID_MODEL_FROM_DATABASE=Presario V3242AU ++ ID_MODEL_FROM_DATABASE=R5C843 MMC Host Controller (Presario V3242AU) + + pci:v00001180d00000843sv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=R5C843 MMC Host Controller (Presario V6133CL) + + pci:v00001180d00000843sv00001183sd00000843* +- ID_MODEL_FROM_DATABASE=Alienware Aurora m9700 ++ ID_MODEL_FROM_DATABASE=R5C843 MMC Host Controller (Alienware Aurora m9700) + + pci:v00001180d00000852* + ID_MODEL_FROM_DATABASE=xD-Picture Card Controller + + pci:v00001180d00000852sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Aspire 5920G ++ ID_MODEL_FROM_DATABASE=xD-Picture Card Controller (Aspire 5920G) + + pci:v00001180d00000852sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=xD-Picture Card Controller (Inspiron 1420) + + pci:v00001180d00000852sv0000103Csd000030B5* +- ID_MODEL_FROM_DATABASE=Presario V3242AU ++ ID_MODEL_FROM_DATABASE=xD-Picture Card Controller (Presario V3242AU) + + pci:v00001180d00000852sv0000103Csd000030B7* +- ID_MODEL_FROM_DATABASE=Presario V6133CL ++ ID_MODEL_FROM_DATABASE=xD-Picture Card Controller (Presario V6133CL) + + pci:v00001180d00000852sv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=xD-Picture Card Controller (Pavilion dv6700) + + pci:v00001180d00000852sv0000103Csd000030CF* +- ID_MODEL_FROM_DATABASE=Pavilion dv9668eg Laptop ++ ID_MODEL_FROM_DATABASE=xD-Picture Card Controller (Pavilion dv9668eg Laptop) + + pci:v00001180d00000852sv00001043sd00001967* +- ID_MODEL_FROM_DATABASE=V6800V ++ ID_MODEL_FROM_DATABASE=xD-Picture Card Controller (V6800V) + + pci:v00001180d00000852sv00001180sd00000852* +- ID_MODEL_FROM_DATABASE=Pavilion 2410us ++ ID_MODEL_FROM_DATABASE=xD-Picture Card Controller (Pavilion 2410us) + + pci:v00001180d00000852sv00001324sd000010CF* +- ID_MODEL_FROM_DATABASE=P7120 ++ ID_MODEL_FROM_DATABASE=xD-Picture Card Controller (P7120) + + pci:v00001180d0000E230* + ID_MODEL_FROM_DATABASE=R5U2xx (R5U230 / R5U231 / R5U241) [Memory Stick Host Controller] +@@ -34206,19 +34206,19 @@ pci:v00001180d0000E476* + ID_MODEL_FROM_DATABASE=CardBus bridge + + pci:v00001180d0000E476sv00001028sd0000040A* +- ID_MODEL_FROM_DATABASE=Latitude E6410 ++ ID_MODEL_FROM_DATABASE=CardBus bridge (Latitude E6410) + + pci:v00001180d0000E476sv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=CardBus bridge (Latitude E6510) + + pci:v00001180d0000E822* + ID_MODEL_FROM_DATABASE=MMC/SD Host Controller + + pci:v00001180d0000E822sv00001028sd0000040A* +- ID_MODEL_FROM_DATABASE=Latitude E6410 ++ ID_MODEL_FROM_DATABASE=MMC/SD Host Controller (Latitude E6410) + + pci:v00001180d0000E822sv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=MMC/SD Host Controller (Latitude E6510) + + pci:v00001180d0000E823* + ID_MODEL_FROM_DATABASE=PCIe SDXC/MMC Host Controller +@@ -34227,10 +34227,10 @@ pci:v00001180d0000E832* + ID_MODEL_FROM_DATABASE=R5C832 PCIe IEEE 1394 Controller + + pci:v00001180d0000E832sv00001028sd0000040A* +- ID_MODEL_FROM_DATABASE=Latitude E6410 ++ ID_MODEL_FROM_DATABASE=R5C832 PCIe IEEE 1394 Controller (Latitude E6410) + + pci:v00001180d0000E832sv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=R5C832 PCIe IEEE 1394 Controller (Latitude E6510) + + pci:v00001180d0000E852* + ID_MODEL_FROM_DATABASE=PCIe xD-Picture Card Controller +@@ -34254,10 +34254,10 @@ pci:v00001186d00001002* + ID_MODEL_FROM_DATABASE=DL10050 Sundance Ethernet + + pci:v00001186d00001002sv00001186sd00001002* +- ID_MODEL_FROM_DATABASE=DFE-550TX/FX ++ ID_MODEL_FROM_DATABASE=DL10050 Sundance Ethernet (DFE-550TX/FX) + + pci:v00001186d00001002sv00001186sd00001012* +- ID_MODEL_FROM_DATABASE=DFE-580TX ++ ID_MODEL_FROM_DATABASE=DL10050 Sundance Ethernet (DFE-580TX) + + pci:v00001186d00001025* + ID_MODEL_FROM_DATABASE=AirPlus Xtreme G DWL-G650 Adapter +@@ -34272,13 +34272,13 @@ pci:v00001186d00001300* + ID_MODEL_FROM_DATABASE=RTL8139 Ethernet + + pci:v00001186d00001300sv00001186sd00001300* +- ID_MODEL_FROM_DATABASE=DFE-538TX 10/100 Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=RTL8139 Ethernet (DFE-538TX 10/100 Ethernet Adapter) + + pci:v00001186d00001300sv00001186sd00001301* +- ID_MODEL_FROM_DATABASE=DFE-530TX+ 10/100 Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=RTL8139 Ethernet (DFE-530TX+ 10/100 Ethernet Adapter) + + pci:v00001186d00001300sv00001186sd00001303* +- ID_MODEL_FROM_DATABASE=DFE-528TX 10/100 Fast Ethernet PCI Adapter ++ ID_MODEL_FROM_DATABASE=RTL8139 Ethernet (DFE-528TX 10/100 Fast Ethernet PCI Adapter) + + pci:v00001186d00001340* + ID_MODEL_FROM_DATABASE=DFE-690TXD CardBus PC Card +@@ -34296,10 +34296,10 @@ pci:v00001186d00003300* + ID_MODEL_FROM_DATABASE=DWL-510 / DWL-610 802.11b [Realtek RTL8180L] + + pci:v00001186d00003300sv00001186sd00003300* +- ID_MODEL_FROM_DATABASE=DWL-610 Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=DWL-510 / DWL-610 802.11b [Realtek RTL8180L] (DWL-610 Wireless Cardbus Adapter) + + pci:v00001186d00003300sv00001186sd00003301* +- ID_MODEL_FROM_DATABASE=DWL-510 Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=DWL-510 / DWL-610 802.11b [Realtek RTL8180L] (DWL-510 Wireless PCI Adapter) + + pci:v00001186d00003A10* + ID_MODEL_FROM_DATABASE=AirXpert DWL-AG650 Wireless Cardbus Adapter(rev.B) +@@ -34317,7 +34317,7 @@ pci:v00001186d00004300* + ID_MODEL_FROM_DATABASE=DGE-528T Gigabit Ethernet Adapter + + pci:v00001186d00004300sv00001186sd00004B10* +- ID_MODEL_FROM_DATABASE=DGE-560T PCI Express (x1) Gigabit Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=DGE-528T Gigabit Ethernet Adapter (DGE-560T PCI Express (x1) Gigabit Ethernet Adapter) + + pci:v00001186d00004302* + ID_MODEL_FROM_DATABASE=DGE-530T Gigabit Ethernet Adapter (rev.C1) [Realtek RTL8169] +@@ -34338,7 +34338,7 @@ pci:v00001186d00004C00* + ID_MODEL_FROM_DATABASE=Gigabit Ethernet Adapter + + pci:v00001186d00004C00sv00001186sd00004C00* +- ID_MODEL_FROM_DATABASE=DGE-530T Gigabit Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=Gigabit Ethernet Adapter (DGE-530T Gigabit Ethernet Adapter) + + pci:v00001186d00008400* + ID_MODEL_FROM_DATABASE=D-Link DWL-650+ CardBus PC Card +@@ -34620,7 +34620,7 @@ pci:v000011ABd00001FA6* + ID_MODEL_FROM_DATABASE=Marvell W8300 802.11 Adapter + + pci:v000011ABd00001FA6sv00001186sd00003B08* +- ID_MODEL_FROM_DATABASE=AirPlus G DWL-G630 Wireless Cardbus Adapter (rev.A1) ++ ID_MODEL_FROM_DATABASE=Marvell W8300 802.11 Adapter (AirPlus G DWL-G630 Wireless Cardbus Adapter (rev.A1)) + + pci:v000011ABd00001FA7* + ID_MODEL_FROM_DATABASE=88W8310 and 88W8000G [Libertas] 802.11g client chipset +@@ -34629,13 +34629,13 @@ pci:v000011ABd00001FAA* + ID_MODEL_FROM_DATABASE=88w8335 [Libertas] 802.11b/g Wireless + + pci:v000011ABd00001FAAsv00001385sd00004E00* +- ID_MODEL_FROM_DATABASE=WG511v2 54 Mbps Wireless PC Card ++ ID_MODEL_FROM_DATABASE=88w8335 [Libertas] 802.11b/g Wireless (WG511v2 54 Mbps Wireless PC Card) + + pci:v000011ABd00001FAAsv00001385sd00006B00* +- ID_MODEL_FROM_DATABASE=WG311v3 802.11g Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=88w8335 [Libertas] 802.11b/g Wireless (WG311v3 802.11g Wireless PCI Adapter) + + pci:v000011ABd00001FAAsv00001737sd00000040* +- ID_MODEL_FROM_DATABASE=WPC54G v5 802.11g Wireless-G Notebook Adapter ++ ID_MODEL_FROM_DATABASE=88w8335 [Libertas] 802.11b/g Wireless (WPC54G v5 802.11g Wireless-G Notebook Adapter) + + pci:v000011ABd00002211* + ID_MODEL_FROM_DATABASE=88SB2211 PCI Express to PCI Bridge +@@ -34647,19 +34647,19 @@ pci:v000011ABd00002A02* + ID_MODEL_FROM_DATABASE=88W8361 [TopDog] 802.11n Wireless + + pci:v000011ABd00002A02sv000007D1sd00003B02* +- ID_MODEL_FROM_DATABASE=DIR-615 rev. A1 Mini PCI Wireless Module ++ ID_MODEL_FROM_DATABASE=88W8361 [TopDog] 802.11n Wireless (DIR-615 rev. A1 Mini PCI Wireless Module) + + pci:v000011ABd00002A02sv00001385sd00007C00* +- ID_MODEL_FROM_DATABASE=WN511T RangeMax Next 300 Mbps Wireless PC Card ++ ID_MODEL_FROM_DATABASE=88W8361 [TopDog] 802.11n Wireless (WN511T RangeMax Next 300 Mbps Wireless PC Card) + + pci:v000011ABd00002A02sv00001385sd00007C01* +- ID_MODEL_FROM_DATABASE=WN511T RangeMax Next 300 Mbps Wireless Notebook Adapter ++ ID_MODEL_FROM_DATABASE=88W8361 [TopDog] 802.11n Wireless (WN511T RangeMax Next 300 Mbps Wireless Notebook Adapter) + + pci:v000011ABd00002A02sv00001385sd00007E00* +- ID_MODEL_FROM_DATABASE=WN311T RangeMax Next 300 Mbps Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=88W8361 [TopDog] 802.11n Wireless (WN311T RangeMax Next 300 Mbps Wireless PCI Adapter) + + pci:v000011ABd00002A02sv00001799sd0000801B* +- ID_MODEL_FROM_DATABASE=F5D8011 v2 802.11n N1 Wireless Notebook Card ++ ID_MODEL_FROM_DATABASE=88W8361 [TopDog] 802.11n Wireless (F5D8011 v2 802.11n N1 Wireless Notebook Card) + + pci:v000011ABd00002A08* + ID_MODEL_FROM_DATABASE=88W8362e [TopDog] 802.11a/b/g/n Wireless +@@ -34701,58 +34701,58 @@ pci:v000011ABd00004320* + ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller + + pci:v000011ABd00004320sv00001019sd00000F38* +- ID_MODEL_FROM_DATABASE=Marvell 88E8001 Gigabit Ethernet Controller (ECS) ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell 88E8001 Gigabit Ethernet Controller (ECS)) + + pci:v000011ABd00004320sv00001019sd00008001* +- ID_MODEL_FROM_DATABASE=Marvell 88E8001 Gigabit Ethernet Controller (ECS) ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell 88E8001 Gigabit Ethernet Controller (ECS)) + + pci:v000011ABd00004320sv00001043sd0000173C* +- ID_MODEL_FROM_DATABASE=Marvell 88E8001 Gigabit Ethernet Controller (Asus) ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell 88E8001 Gigabit Ethernet Controller (Asus)) + + pci:v000011ABd00004320sv00001043sd0000811A* +- ID_MODEL_FROM_DATABASE=Marvell 88E8001 Gigabit Ethernet Controller (Asus) ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell 88E8001 Gigabit Ethernet Controller (Asus)) + + pci:v000011ABd00004320sv0000105Bsd00000C19* +- ID_MODEL_FROM_DATABASE=Marvell 88E8001 Gigabit Ethernet Controller (Foxconn) ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell 88E8001 Gigabit Ethernet Controller (Foxconn)) + + pci:v000011ABd00004320sv000010B8sd0000B452* +- ID_MODEL_FROM_DATABASE=EZ Card 1000 (SMC9452TXV.2) ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (EZ Card 1000 (SMC9452TXV.2)) + + pci:v000011ABd00004320sv000011ABsd00000121* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8001 ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell RDK-8001) + + pci:v000011ABd00004320sv000011ABsd00000321* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8003 ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell RDK-8003) + + pci:v000011ABd00004320sv000011ABsd00001021* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8010 ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell RDK-8010) + + pci:v000011ABd00004320sv000011ABsd00004320* +- ID_MODEL_FROM_DATABASE=Marvell Yukon Gigabit Ethernet 10/100/1000Baset-T Constroller (Asus) ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell Yukon Gigabit Ethernet 10/100/1000Baset-T Constroller (Asus)) + + pci:v000011ABd00004320sv000011ABsd00005021* +- ID_MODEL_FROM_DATABASE=Marvell Yukon Gigabit Ethernet 10/100/1000Base-T Controller (64 bit) ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell Yukon Gigabit Ethernet 10/100/1000Base-T Controller (64 bit)) + + pci:v000011ABd00004320sv000011ABsd00009521* +- ID_MODEL_FROM_DATABASE=Marvell Yukon Gigabit Ethernet 10/100/1000Base-T Controller (32 bit) ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell Yukon Gigabit Ethernet 10/100/1000Base-T Controller (32 bit)) + + pci:v000011ABd00004320sv00001458sd0000E000* +- ID_MODEL_FROM_DATABASE=Marvell 88E8001 Gigabit Ethernet Controller (Gigabyte) ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell 88E8001 Gigabit Ethernet Controller (Gigabyte)) + + pci:v000011ABd00004320sv0000147Bsd00001406* +- ID_MODEL_FROM_DATABASE=Marvell 88E8001 Gigabit Ethernet Controller (Abit) ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell 88E8001 Gigabit Ethernet Controller (Abit)) + + pci:v000011ABd00004320sv000015D4sd00000047* +- ID_MODEL_FROM_DATABASE=Marvell 88E8001 Gigabit Ethernet Controller (Iwill) ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell 88E8001 Gigabit Ethernet Controller (Iwill)) + + pci:v000011ABd00004320sv00001695sd00009025* +- ID_MODEL_FROM_DATABASE=Marvell 88E8001 Gigabit Ethernet Controller (Epox) ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell 88E8001 Gigabit Ethernet Controller (Epox)) + + pci:v000011ABd00004320sv000017F2sd00001C03* +- ID_MODEL_FROM_DATABASE=Marvell 88E8001 Gigabit Ethernet Controller (Albatron) ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell 88E8001 Gigabit Ethernet Controller (Albatron)) + + pci:v000011ABd00004320sv0000270Fsd00002803* +- ID_MODEL_FROM_DATABASE=Marvell 88E8001 Gigabit Ethernet Controller (Chaintech) ++ ID_MODEL_FROM_DATABASE=88E8001 Gigabit Ethernet Controller (Marvell 88E8001 Gigabit Ethernet Controller (Chaintech)) + + pci:v000011ABd00004340* + ID_MODEL_FROM_DATABASE=88E8021 PCI-X IPMI Gigabit Ethernet Controller +@@ -34779,115 +34779,115 @@ pci:v000011ABd00004347* + ID_MODEL_FROM_DATABASE=88E8062 PCI-E IPMI Gigabit Ethernet Controller + + pci:v000011ABd00004347sv00004C53sd000010D0* +- ID_MODEL_FROM_DATABASE=Telum ASLP10 PrAMC Gigabit Ethernet ++ ID_MODEL_FROM_DATABASE=88E8062 PCI-E IPMI Gigabit Ethernet Controller (Telum ASLP10 PrAMC Gigabit Ethernet) + + pci:v000011ABd00004350* + ID_MODEL_FROM_DATABASE=88E8035 PCI-E Fast Ethernet Controller + + pci:v000011ABd00004350sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Marvell 88E8035 Fast Ethernet Controller (Toshiba) ++ ID_MODEL_FROM_DATABASE=88E8035 PCI-E Fast Ethernet Controller (Marvell 88E8035 Fast Ethernet Controller (Toshiba)) + + pci:v000011ABd00004350sv000011ABsd00003521* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8035 ++ ID_MODEL_FROM_DATABASE=88E8035 PCI-E Fast Ethernet Controller (Marvell RDK-8035) + + pci:v000011ABd00004350sv00001854sd0000000D* +- ID_MODEL_FROM_DATABASE=Marvell 88E8035 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8035 PCI-E Fast Ethernet Controller (Marvell 88E8035 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004350sv00001854sd0000000E* +- ID_MODEL_FROM_DATABASE=Marvell 88E8035 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8035 PCI-E Fast Ethernet Controller (Marvell 88E8035 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004350sv00001854sd0000000F* +- ID_MODEL_FROM_DATABASE=Marvell 88E8035 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8035 PCI-E Fast Ethernet Controller (Marvell 88E8035 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004350sv00001854sd00000011* +- ID_MODEL_FROM_DATABASE=Marvell 88E8035 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8035 PCI-E Fast Ethernet Controller (Marvell 88E8035 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004350sv00001854sd00000012* +- ID_MODEL_FROM_DATABASE=Marvell 88E8035 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8035 PCI-E Fast Ethernet Controller (Marvell 88E8035 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004350sv00001854sd00000016* +- ID_MODEL_FROM_DATABASE=Marvell 88E8035 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8035 PCI-E Fast Ethernet Controller (Marvell 88E8035 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004350sv00001854sd00000017* +- ID_MODEL_FROM_DATABASE=Marvell 88E8035 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8035 PCI-E Fast Ethernet Controller (Marvell 88E8035 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004350sv00001854sd00000018* +- ID_MODEL_FROM_DATABASE=Marvell 88E8035 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8035 PCI-E Fast Ethernet Controller (Marvell 88E8035 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004350sv00001854sd00000019* +- ID_MODEL_FROM_DATABASE=Marvell 88E8035 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8035 PCI-E Fast Ethernet Controller (Marvell 88E8035 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004350sv00001854sd0000001C* +- ID_MODEL_FROM_DATABASE=Marvell 88E8035 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8035 PCI-E Fast Ethernet Controller (Marvell 88E8035 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004350sv00001854sd0000001E* +- ID_MODEL_FROM_DATABASE=Marvell 88E8035 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8035 PCI-E Fast Ethernet Controller (Marvell 88E8035 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004350sv00001854sd00000020* +- ID_MODEL_FROM_DATABASE=Marvell 88E8035 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8035 PCI-E Fast Ethernet Controller (Marvell 88E8035 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004351* + ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller + + pci:v000011ABd00004351sv0000107Bsd00004009* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (Wistron) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (Wistron)) + + pci:v000011ABd00004351sv000010F7sd00008338* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (Panasonic) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (Panasonic)) + + pci:v000011ABd00004351sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (Toshiba) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (Toshiba)) + + pci:v000011ABd00004351sv00001179sd0000FF00* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (Compal) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (Compal)) + + pci:v000011ABd00004351sv00001179sd0000FF10* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (Inventec) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (Inventec)) + + pci:v000011ABd00004351sv000011ABsd00003621* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8036 ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell RDK-8036) + + pci:v000011ABd00004351sv000013D1sd0000AC12* +- ID_MODEL_FROM_DATABASE=Abocom EFE3K - 10/100 Ethernet Expresscard ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Abocom EFE3K - 10/100 Ethernet Expresscard) + + pci:v000011ABd00004351sv0000161Fsd0000203D* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (Arima) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (Arima)) + + pci:v000011ABd00004351sv00001854sd0000000D* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004351sv00001854sd0000000E* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004351sv00001854sd0000000F* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004351sv00001854sd00000011* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004351sv00001854sd00000012* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004351sv00001854sd00000016* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004351sv00001854sd00000017* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004351sv00001854sd00000018* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004351sv00001854sd00000019* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004351sv00001854sd0000001C* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004351sv00001854sd0000001E* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004351sv00001854sd00000020* +- ID_MODEL_FROM_DATABASE=Marvell 88E8036 Fast Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8036 PCI-E Fast Ethernet Controller (Marvell 88E8036 Fast Ethernet Controller (LGE)) + + pci:v000011ABd00004352* + ID_MODEL_FROM_DATABASE=88E8038 PCI-E Fast Ethernet Controller +@@ -34896,19 +34896,19 @@ pci:v000011ABd00004353* + ID_MODEL_FROM_DATABASE=88E8039 PCI-E Fast Ethernet Controller + + pci:v000011ABd00004353sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=88E8039 PCI-E Fast Ethernet Controller (VAIO VGN-NR120E) + + pci:v000011ABd00004354* + ID_MODEL_FROM_DATABASE=88E8040 PCI-E Fast Ethernet Controller + + pci:v000011ABd00004354sv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=88E8040 PCI-E Fast Ethernet Controller (Notebook N150P) + + pci:v000011ABd00004355* + ID_MODEL_FROM_DATABASE=88E8040T PCI-E Fast Ethernet Controller + + pci:v000011ABd00004355sv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=88E8040T PCI-E Fast Ethernet Controller (Satellite P305D-S8995E) + + pci:v000011ABd00004356* + ID_MODEL_FROM_DATABASE=88EC033 PCI-E Fast Ethernet Controller +@@ -34923,163 +34923,163 @@ pci:v000011ABd00004360* + ID_MODEL_FROM_DATABASE=88E8052 PCI-E ASF Gigabit Ethernet Controller + + pci:v000011ABd00004360sv00001043sd00008134* +- ID_MODEL_FROM_DATABASE=Marvell 88E8052 Gigabit Ethernet Controller (Asus) ++ ID_MODEL_FROM_DATABASE=88E8052 PCI-E ASF Gigabit Ethernet Controller (Marvell 88E8052 Gigabit Ethernet Controller (Asus)) + + pci:v000011ABd00004360sv0000107Bsd00004009* +- ID_MODEL_FROM_DATABASE=Marvell 88E8052 Gigabit Ethernet Controller (Wistron) ++ ID_MODEL_FROM_DATABASE=88E8052 PCI-E ASF Gigabit Ethernet Controller (Marvell 88E8052 Gigabit Ethernet Controller (Wistron)) + + pci:v000011ABd00004360sv000011ABsd00005221* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8052 ++ ID_MODEL_FROM_DATABASE=88E8052 PCI-E ASF Gigabit Ethernet Controller (Marvell RDK-8052) + + pci:v000011ABd00004360sv00001458sd0000E000* +- ID_MODEL_FROM_DATABASE=Marvell 88E8052 Gigabit Ethernet Controller (Gigabyte) ++ ID_MODEL_FROM_DATABASE=88E8052 PCI-E ASF Gigabit Ethernet Controller (Marvell 88E8052 Gigabit Ethernet Controller (Gigabyte)) + + pci:v000011ABd00004360sv00001462sd0000052C* +- ID_MODEL_FROM_DATABASE=Marvell 88E8052 Gigabit Ethernet Controller (MSI) ++ ID_MODEL_FROM_DATABASE=88E8052 PCI-E ASF Gigabit Ethernet Controller (Marvell 88E8052 Gigabit Ethernet Controller (MSI)) + + pci:v000011ABd00004360sv00001849sd00008052* +- ID_MODEL_FROM_DATABASE=Marvell 88E8052 Gigabit Ethernet Controller (ASRock) ++ ID_MODEL_FROM_DATABASE=88E8052 PCI-E ASF Gigabit Ethernet Controller (Marvell 88E8052 Gigabit Ethernet Controller (ASRock)) + + pci:v000011ABd00004360sv0000A0A0sd00000509* +- ID_MODEL_FROM_DATABASE=Marvell 88E8052 Gigabit Ethernet Controller (Aopen) ++ ID_MODEL_FROM_DATABASE=88E8052 PCI-E ASF Gigabit Ethernet Controller (Marvell 88E8052 Gigabit Ethernet Controller (Aopen)) + + pci:v000011ABd00004361* + ID_MODEL_FROM_DATABASE=88E8050 PCI-E ASF Gigabit Ethernet Controller + + pci:v000011ABd00004361sv0000107Bsd00003015* +- ID_MODEL_FROM_DATABASE=Marvell 88E8050 Gigabit Ethernet Controller (Gateway) ++ ID_MODEL_FROM_DATABASE=88E8050 PCI-E ASF Gigabit Ethernet Controller (Marvell 88E8050 Gigabit Ethernet Controller (Gateway)) + + pci:v000011ABd00004361sv000011ABsd00005021* +- ID_MODEL_FROM_DATABASE=Marvell 88E8050 Gigabit Ethernet Controller (Intel) ++ ID_MODEL_FROM_DATABASE=88E8050 PCI-E ASF Gigabit Ethernet Controller (Marvell 88E8050 Gigabit Ethernet Controller (Intel)) + + pci:v000011ABd00004361sv00008086sd00003063* +- ID_MODEL_FROM_DATABASE=D925XCVLK mainboard ++ ID_MODEL_FROM_DATABASE=88E8050 PCI-E ASF Gigabit Ethernet Controller (D925XCVLK mainboard) + + pci:v000011ABd00004361sv00008086sd00003439* +- ID_MODEL_FROM_DATABASE=Marvell 88E8050 Gigabit Ethernet Controller (Intel) ++ ID_MODEL_FROM_DATABASE=88E8050 PCI-E ASF Gigabit Ethernet Controller (Marvell 88E8050 Gigabit Ethernet Controller (Intel)) + + pci:v000011ABd00004362* + ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller + + pci:v000011ABd00004362sv0000103Csd00002A0D* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Asus) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Asus)) + + pci:v000011ABd00004362sv00001043sd00008142* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet controller PCIe (Asus) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet controller PCIe (Asus)) + + pci:v000011ABd00004362sv0000109Fsd00003197* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Trigem) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Trigem)) + + pci:v000011ABd00004362sv000010F7sd00008338* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Panasonic) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Panasonic)) + + pci:v000011ABd00004362sv000010FDsd0000A430* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (SOYO) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (SOYO)) + + pci:v000011ABd00004362sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Toshiba) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Toshiba)) + + pci:v000011ABd00004362sv00001179sd0000FF00* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Compal) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Compal)) + + pci:v000011ABd00004362sv00001179sd0000FF10* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Inventec) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Inventec)) + + pci:v000011ABd00004362sv000011ABsd00005321* +- ID_MODEL_FROM_DATABASE=Marvell RDK-8053 ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell RDK-8053) + + pci:v000011ABd00004362sv00001297sd0000C240* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Shuttle) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Shuttle)) + + pci:v000011ABd00004362sv00001297sd0000C241* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Shuttle) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Shuttle)) + + pci:v000011ABd00004362sv00001297sd0000C242* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Shuttle) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Shuttle)) + + pci:v000011ABd00004362sv00001297sd0000C243* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Shuttle) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Shuttle)) + + pci:v000011ABd00004362sv00001297sd0000C244* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Shuttle) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Shuttle)) + + pci:v000011ABd00004362sv000013D1sd0000AC11* +- ID_MODEL_FROM_DATABASE=EGE5K - Giga Ethernet Expresscard ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (EGE5K - Giga Ethernet Expresscard) + + pci:v000011ABd00004362sv00001458sd0000E000* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Gigabyte) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Gigabyte)) + + pci:v000011ABd00004362sv00001462sd0000058C* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (MSI) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (MSI)) + + pci:v000011ABd00004362sv000014C0sd00000012* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Compal) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Compal)) + + pci:v000011ABd00004362sv00001558sd000004A0* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Clevo) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Clevo)) + + pci:v000011ABd00004362sv000015BDsd00001003* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (DFI) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (DFI)) + + pci:v000011ABd00004362sv0000161Fsd0000203C* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Arima) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Arima)) + + pci:v000011ABd00004362sv0000161Fsd0000203D* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Arima) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Arima)) + + pci:v000011ABd00004362sv00001695sd00009029* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Epox) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Epox)) + + pci:v000011ABd00004362sv000017F2sd00002C08* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Albatron) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Albatron)) + + pci:v000011ABd00004362sv000017FFsd00000585* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Quanta) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Quanta)) + + pci:v000011ABd00004362sv00001849sd00008053* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (ASRock) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (ASRock)) + + pci:v000011ABd00004362sv00001854sd0000000B* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (LGE)) + + pci:v000011ABd00004362sv00001854sd0000000C* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (LGE)) + + pci:v000011ABd00004362sv00001854sd00000010* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (LGE)) + + pci:v000011ABd00004362sv00001854sd00000013* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (LGE)) + + pci:v000011ABd00004362sv00001854sd00000014* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (LGE)) + + pci:v000011ABd00004362sv00001854sd00000015* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (LGE)) + + pci:v000011ABd00004362sv00001854sd0000001A* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (LGE)) + + pci:v000011ABd00004362sv00001854sd0000001B* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (LGE)) + + pci:v000011ABd00004362sv00001854sd0000001D* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (LGE)) + + pci:v000011ABd00004362sv00001854sd0000001F* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (LGE)) + + pci:v000011ABd00004362sv00001854sd00000021* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (LGE)) + + pci:v000011ABd00004362sv00001854sd00000022* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (LGE) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (LGE)) + + pci:v000011ABd00004362sv0000270Fsd00002801* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Chaintech) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Chaintech)) + + pci:v000011ABd00004362sv0000A0A0sd00000506* +- ID_MODEL_FROM_DATABASE=Marvell 88E8053 Gigabit Ethernet Controller (Aopen) ++ ID_MODEL_FROM_DATABASE=88E8053 PCI-E Gigabit Ethernet Controller (Marvell 88E8053 Gigabit Ethernet Controller (Aopen)) + + pci:v000011ABd00004363* + ID_MODEL_FROM_DATABASE=88E8055 PCI-E Gigabit Ethernet Controller +@@ -35088,10 +35088,10 @@ pci:v000011ABd00004364* + ID_MODEL_FROM_DATABASE=88E8056 PCI-E Gigabit Ethernet Controller + + pci:v000011ABd00004364sv00001043sd000081F8* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=88E8056 PCI-E Gigabit Ethernet Controller (Motherboard) + + pci:v000011ABd00004364sv000011BAsd000000BA* +- ID_MODEL_FROM_DATABASE=8056 Gigabit Ethernet Controller ++ ID_MODEL_FROM_DATABASE=88E8056 PCI-E Gigabit Ethernet Controller (8056 Gigabit Ethernet Controller) + + pci:v000011ABd00004365* + ID_MODEL_FROM_DATABASE=88E8070 based Ethernet Controller +@@ -35112,7 +35112,7 @@ pci:v000011ABd0000436A* + ID_MODEL_FROM_DATABASE=88E8058 PCI-E Gigabit Ethernet Controller + + pci:v000011ABd0000436Asv000011ABsd000000BA* +- ID_MODEL_FROM_DATABASE=Imac 8,1 Wired Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=88E8058 PCI-E Gigabit Ethernet Controller (Imac 8,1 Wired Ethernet Adapter) + + pci:v000011ABd0000436B* + ID_MODEL_FROM_DATABASE=88E8071 PCI-E Gigabit Ethernet Controller +@@ -35178,7 +35178,7 @@ pci:v000011ABd00006101* + ID_MODEL_FROM_DATABASE=88SE6101/6102 single-port PATA133 interface + + pci:v000011ABd00006101sv00001043sd000082E0* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=88SE6101/6102 single-port PATA133 interface (P5K PRO Motherboard) + + pci:v000011ABd00006111* + ID_MODEL_FROM_DATABASE=88SE6111 1-port PATA133(IDE) and 1-port SATA II Controllers +@@ -35217,7 +35217,7 @@ pci:v000011ABd00006480* + ID_MODEL_FROM_DATABASE=MV64460/64461/64462 System Controller + + pci:v000011ABd00006480sv00001775sd0000C200* +- ID_MODEL_FROM_DATABASE=C2K CompactPCI single board computer ++ ID_MODEL_FROM_DATABASE=MV64460/64461/64462 System Controller (C2K CompactPCI single board computer) + + pci:v000011ABd00006485* + ID_MODEL_FROM_DATABASE=MV64460/64461/64462 System Controller, Revision B +@@ -35226,7 +35226,7 @@ pci:v000011ABd00007042* + ID_MODEL_FROM_DATABASE=88SX7042 PCI-e 4-port SATA-II + + pci:v000011ABd00007042sv000016B8sd0000434B* +- ID_MODEL_FROM_DATABASE=Tempo SATA E4P ++ ID_MODEL_FROM_DATABASE=88SX7042 PCI-e 4-port SATA-II (Tempo SATA E4P) + + pci:v000011ABd00007810* + ID_MODEL_FROM_DATABASE=MV78100 [Discovery Innovation] ARM SoC +@@ -35259,19 +35259,19 @@ pci:v000011ADd00000002sv000011ADsd0000FFFF* + ID_MODEL_FROM_DATABASE=LNE100TX + + pci:v000011ADd00000002sv00001385sd0000F004* +- ID_MODEL_FROM_DATABASE=FA310TX ++ ID_MODEL_FROM_DATABASE=LNE100TX (FA310TX) + + pci:v000011ADd00000002sv00002646sd0000F002* +- ID_MODEL_FROM_DATABASE=KNE110TX EtheRx Fast Ethernet ++ ID_MODEL_FROM_DATABASE=LNE100TX (KNE110TX EtheRx Fast Ethernet) + + pci:v000011ADd0000C115* + ID_MODEL_FROM_DATABASE=LNE100TX [Linksys EtherFast 10/100] + + pci:v000011ADd0000C115sv000011ADsd0000C001* +- ID_MODEL_FROM_DATABASE=LNE100TX [ver 2.0] ++ ID_MODEL_FROM_DATABASE=LNE100TX [Linksys EtherFast 10/100] (LNE100TX [ver 2.0]) + + pci:v000011ADd0000C115sv00002646sd0000000B* +- ID_MODEL_FROM_DATABASE=KNE111TX ++ ID_MODEL_FROM_DATABASE=LNE100TX [Linksys EtherFast 10/100] (KNE111TX) + + pci:v000011AE* + ID_VENDOR_FROM_DATABASE=Aztech System Ltd +@@ -35355,28 +35355,28 @@ pci:v000011BDd00000040* + ID_MODEL_FROM_DATABASE=Royal TS Function 1 + + pci:v000011BDd00000040sv000011BDsd00000044* +- ID_MODEL_FROM_DATABASE=PCTV 2000i Dual DVB-T Pro PCI Tuner 1 ++ ID_MODEL_FROM_DATABASE=Royal TS Function 1 (PCTV 2000i Dual DVB-T Pro PCI Tuner 1) + + pci:v000011BDd00000040sv000011BDsd00000045* +- ID_MODEL_FROM_DATABASE=PCTV Dual Sat Pro PCI 4000i Tuner 1 ++ ID_MODEL_FROM_DATABASE=Royal TS Function 1 (PCTV Dual Sat Pro PCI 4000i Tuner 1) + + pci:v000011BDd00000041* + ID_MODEL_FROM_DATABASE=RoyalTS Function 2 + + pci:v000011BDd00000041sv000011BDsd00000044* +- ID_MODEL_FROM_DATABASE=PCTV 2000i Dual DVB-T Pro PCI Tuner 2 ++ ID_MODEL_FROM_DATABASE=RoyalTS Function 2 (PCTV 2000i Dual DVB-T Pro PCI Tuner 2) + + pci:v000011BDd00000041sv000011BDsd00000045* +- ID_MODEL_FROM_DATABASE=PCTV Dual Sat Pro PCI 4000i Tuner 2 ++ ID_MODEL_FROM_DATABASE=RoyalTS Function 2 (PCTV Dual Sat Pro PCI 4000i Tuner 2) + + pci:v000011BDd00000042* + ID_MODEL_FROM_DATABASE=Royal TS Function 3 + + pci:v000011BDd00000042sv000011BDsd00000044* +- ID_MODEL_FROM_DATABASE=PCTV 2000i Dual DVB-T Pro PCI Common ++ ID_MODEL_FROM_DATABASE=Royal TS Function 3 (PCTV 2000i Dual DVB-T Pro PCI Common) + + pci:v000011BDd00000042sv000011BDsd00000045* +- ID_MODEL_FROM_DATABASE=PCTV Dual Sat Pro PCI 4000i Common ++ ID_MODEL_FROM_DATABASE=Royal TS Function 3 (PCTV Dual Sat Pro PCI 4000i Common) + + pci:v000011BDd00000051* + ID_MODEL_FROM_DATABASE=PCTV HD 800i +@@ -35400,154 +35400,154 @@ pci:v000011C1d00000440* + ID_MODEL_FROM_DATABASE=56k WinModem + + pci:v000011C1d00000440sv00001033sd00008015* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+Dsvd) + + pci:v000011C1d00000440sv00001033sd00008047* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+Dsvd) + + pci:v000011C1d00000440sv00001033sd0000804F* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+Dsvd) + + pci:v000011C1d00000440sv000010CFsd0000102C* +- ID_MODEL_FROM_DATABASE=LB LT Modem V.90 56k ++ ID_MODEL_FROM_DATABASE=56k WinModem (LB LT Modem V.90 56k) + + pci:v000011C1d00000440sv000010CFsd0000104A* +- ID_MODEL_FROM_DATABASE=BIBLO LT Modem 56k ++ ID_MODEL_FROM_DATABASE=56k WinModem (BIBLO LT Modem 56k) + + pci:v000011C1d00000440sv000010CFsd0000105F* +- ID_MODEL_FROM_DATABASE=LB2 LT Modem V.90 56k ++ ID_MODEL_FROM_DATABASE=56k WinModem (LB2 LT Modem V.90 56k) + + pci:v000011C1d00000440sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Internal V.90 Modem ++ ID_MODEL_FROM_DATABASE=56k WinModem (Internal V.90 Modem) + + pci:v000011C1d00000440sv000011C1sd00000440* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+Dsvd) + + pci:v000011C1d00000440sv0000122Dsd00004101* +- ID_MODEL_FROM_DATABASE=MDP7800-U Modem ++ ID_MODEL_FROM_DATABASE=56k WinModem (MDP7800-U Modem) + + pci:v000011C1d00000440sv0000122Dsd00004102* +- ID_MODEL_FROM_DATABASE=MDP7800SP-U Modem ++ ID_MODEL_FROM_DATABASE=56k WinModem (MDP7800SP-U Modem) + + pci:v000011C1d00000440sv000013E0sd00000040* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+Dsvd) + + pci:v000011C1d00000440sv000013E0sd00000440* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+Dsvd) + + pci:v000011C1d00000440sv000013E0sd00000441* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+Dsvd) + + pci:v000011C1d00000440sv000013E0sd00000450* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+Dsvd) + + pci:v000011C1d00000440sv000013E0sd0000F100* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+Dsvd) + + pci:v000011C1d00000440sv000013E0sd0000F101* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+Dsvd) + + pci:v000011C1d00000440sv0000144Dsd00002101* +- ID_MODEL_FROM_DATABASE=LT56PV Modem ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT56PV Modem) + + pci:v000011C1d00000440sv0000149Fsd00000440* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+Dsvd) + + pci:v000011C1d00000441* + ID_MODEL_FROM_DATABASE=56k WinModem + + pci:v000011C1d00000441sv00001033sd0000804D* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax) + + pci:v000011C1d00000441sv00001033sd00008065* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax) + + pci:v000011C1d00000441sv00001092sd00000440* +- ID_MODEL_FROM_DATABASE=Supra 56i ++ ID_MODEL_FROM_DATABASE=56k WinModem (Supra 56i) + + pci:v000011C1d00000441sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Internal V.90 Modem ++ ID_MODEL_FROM_DATABASE=56k WinModem (Internal V.90 Modem) + + pci:v000011C1d00000441sv000011C1sd00000440* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax) + + pci:v000011C1d00000441sv000011C1sd00000441* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax) + + pci:v000011C1d00000441sv0000122Dsd00004100* +- ID_MODEL_FROM_DATABASE=MDP7800-U Modem ++ ID_MODEL_FROM_DATABASE=56k WinModem (MDP7800-U Modem) + + pci:v000011C1d00000441sv000013E0sd00000040* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax) + + pci:v000011C1d00000441sv000013E0sd00000100* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax) + + pci:v000011C1d00000441sv000013E0sd00000410* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax) + + pci:v000011C1d00000441sv000013E0sd00000420* +- ID_MODEL_FROM_DATABASE=TelePath Internet 56k WinModem ++ ID_MODEL_FROM_DATABASE=56k WinModem (TelePath Internet 56k WinModem) + + pci:v000011C1d00000441sv000013E0sd00000440* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax) + + pci:v000011C1d00000441sv000013E0sd00000443* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax) + + pci:v000011C1d00000441sv000013E0sd0000F102* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax) + + pci:v000011C1d00000441sv00001416sd00009804* +- ID_MODEL_FROM_DATABASE=CommWave 56k Modem ++ ID_MODEL_FROM_DATABASE=56k WinModem (CommWave 56k Modem) + + pci:v000011C1d00000441sv0000141Dsd00000440* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax) + + pci:v000011C1d00000441sv0000144Fsd00000441* +- ID_MODEL_FROM_DATABASE=Lucent 56k V.90 DF Modem ++ ID_MODEL_FROM_DATABASE=56k WinModem (Lucent 56k V.90 DF Modem) + + pci:v000011C1d00000441sv0000144Fsd00000449* +- ID_MODEL_FROM_DATABASE=Lucent 56k V.90 DF Modem ++ ID_MODEL_FROM_DATABASE=56k WinModem (Lucent 56k V.90 DF Modem) + + pci:v000011C1d00000441sv0000144Fsd0000110D* +- ID_MODEL_FROM_DATABASE=Lucent Win Modem ++ ID_MODEL_FROM_DATABASE=56k WinModem (Lucent Win Modem) + + pci:v000011C1d00000441sv00001468sd00000441* +- ID_MODEL_FROM_DATABASE=Presario 56k V.90 DF Modem ++ ID_MODEL_FROM_DATABASE=56k WinModem (Presario 56k V.90 DF Modem) + + pci:v000011C1d00000441sv00001668sd00000440* +- ID_MODEL_FROM_DATABASE=Lucent Win Modem ++ ID_MODEL_FROM_DATABASE=56k WinModem (Lucent Win Modem) + + pci:v000011C1d00000442* + ID_MODEL_FROM_DATABASE=56k WinModem + + pci:v000011C1d00000442sv000011C1sd00000440* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd) + + pci:v000011C1d00000442sv000011C1sd00000442* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd) + + pci:v000011C1d00000442sv000013E0sd00000412* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd) + + pci:v000011C1d00000442sv000013E0sd00000442* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd) + + pci:v000011C1d00000442sv000013FCsd00002471* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd) + + pci:v000011C1d00000442sv0000144Dsd00002104* +- ID_MODEL_FROM_DATABASE=LT56PT Modem ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT56PT Modem) + + pci:v000011C1d00000442sv0000144Fsd00001104* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd) + + pci:v000011C1d00000442sv0000149Fsd00000440* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd) + + pci:v000011C1d00000442sv00001668sd00000440* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd ++ ID_MODEL_FROM_DATABASE=56k WinModem (LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd) + + pci:v000011C1d00000443* + ID_MODEL_FROM_DATABASE=LT WinModem +@@ -35559,10 +35559,10 @@ pci:v000011C1d00000445* + ID_MODEL_FROM_DATABASE=LT WinModem + + pci:v000011C1d00000445sv00008086sd00002203* +- ID_MODEL_FROM_DATABASE=PRO/100+ MiniPCI (probably an Ambit U98.003.C.00 combo card) ++ ID_MODEL_FROM_DATABASE=LT WinModem (PRO/100+ MiniPCI (probably an Ambit U98.003.C.00 combo card)) + + pci:v000011C1d00000445sv00008086sd00002204* +- ID_MODEL_FROM_DATABASE=PRO/100+ MiniPCI on Armada E500 ++ ID_MODEL_FROM_DATABASE=LT WinModem (PRO/100+ MiniPCI on Armada E500) + + pci:v000011C1d00000446* + ID_MODEL_FROM_DATABASE=LT WinModem +@@ -35574,64 +35574,64 @@ pci:v000011C1d00000448* + ID_MODEL_FROM_DATABASE=WinModem 56k + + pci:v000011C1d00000448sv00001014sd00000131* +- ID_MODEL_FROM_DATABASE=Lucent Win Modem ++ ID_MODEL_FROM_DATABASE=WinModem 56k (Lucent Win Modem) + + pci:v000011C1d00000448sv00001033sd00008066* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+Dsvd ++ ID_MODEL_FROM_DATABASE=WinModem 56k (LT WinModem 56k Data+Fax+Voice+Dsvd) + + pci:v000011C1d00000448sv000013E0sd00000030* +- ID_MODEL_FROM_DATABASE=56k Voice Modem ++ ID_MODEL_FROM_DATABASE=WinModem 56k (56k Voice Modem) + + pci:v000011C1d00000448sv000013E0sd00000040* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+Dsvd ++ ID_MODEL_FROM_DATABASE=WinModem 56k (LT WinModem 56k Data+Fax+Voice+Dsvd) + + pci:v000011C1d00000448sv00001668sd00002400* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k (MiniPCI Ethernet+Modem) ++ ID_MODEL_FROM_DATABASE=WinModem 56k (LT WinModem 56k (MiniPCI Ethernet+Modem)) + + pci:v000011C1d00000449* + ID_MODEL_FROM_DATABASE=L56xM+S [Mars-2] WinModem 56k + + pci:v000011C1d00000449sv00000E11sd0000B14D* +- ID_MODEL_FROM_DATABASE=56k V.90 Modem ++ ID_MODEL_FROM_DATABASE=L56xM+S [Mars-2] WinModem 56k (56k V.90 Modem) + + pci:v000011C1d00000449sv00001014sd0000018C* +- ID_MODEL_FROM_DATABASE=ThinkPad 600X ++ ID_MODEL_FROM_DATABASE=L56xM+S [Mars-2] WinModem 56k (ThinkPad 600X) + + pci:v000011C1d00000449sv000013E0sd00000020* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax ++ ID_MODEL_FROM_DATABASE=L56xM+S [Mars-2] WinModem 56k (LT WinModem 56k Data+Fax) + + pci:v000011C1d00000449sv000013E0sd00000041* +- ID_MODEL_FROM_DATABASE=TelePath Internet 56k WinModem ++ ID_MODEL_FROM_DATABASE=L56xM+S [Mars-2] WinModem 56k (TelePath Internet 56k WinModem) + + pci:v000011C1d00000449sv00001436sd00000440* +- ID_MODEL_FROM_DATABASE=Lucent Win Modem ++ ID_MODEL_FROM_DATABASE=L56xM+S [Mars-2] WinModem 56k (Lucent Win Modem) + + pci:v000011C1d00000449sv0000144Fsd00000449* +- ID_MODEL_FROM_DATABASE=Lucent 56k V.90 DFi Modem ++ ID_MODEL_FROM_DATABASE=L56xM+S [Mars-2] WinModem 56k (Lucent 56k V.90 DFi Modem) + + pci:v000011C1d00000449sv00001468sd00000410* +- ID_MODEL_FROM_DATABASE=IBM ThinkPad T23 ++ ID_MODEL_FROM_DATABASE=L56xM+S [Mars-2] WinModem 56k (IBM ThinkPad T23) + + pci:v000011C1d00000449sv00001468sd00000440* +- ID_MODEL_FROM_DATABASE=Lucent Win Modem ++ ID_MODEL_FROM_DATABASE=L56xM+S [Mars-2] WinModem 56k (Lucent Win Modem) + + pci:v000011C1d00000449sv00001468sd00000449* +- ID_MODEL_FROM_DATABASE=Presario 56k V.90 DFi Modem ++ ID_MODEL_FROM_DATABASE=L56xM+S [Mars-2] WinModem 56k (Presario 56k V.90 DFi Modem) + + pci:v000011C1d0000044A* + ID_MODEL_FROM_DATABASE=F-1156IV WinModem (V90, 56KFlex) + + pci:v000011C1d0000044Asv000010CFsd00001072* +- ID_MODEL_FROM_DATABASE=LB Global LT Modem ++ ID_MODEL_FROM_DATABASE=F-1156IV WinModem (V90, 56KFlex) (LB Global LT Modem) + + pci:v000011C1d0000044Asv000013E0sd00000012* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd ++ ID_MODEL_FROM_DATABASE=F-1156IV WinModem (V90, 56KFlex) (LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd) + + pci:v000011C1d0000044Asv000013E0sd00000042* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd ++ ID_MODEL_FROM_DATABASE=F-1156IV WinModem (V90, 56KFlex) (LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd) + + pci:v000011C1d0000044Asv0000144Fsd00001005* +- ID_MODEL_FROM_DATABASE=LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd ++ ID_MODEL_FROM_DATABASE=F-1156IV WinModem (V90, 56KFlex) (LT WinModem 56k Data+Fax+Voice+VoiceView+Dsvd) + + pci:v000011C1d0000044B* + ID_MODEL_FROM_DATABASE=LT WinModem +@@ -35652,13 +35652,13 @@ pci:v000011C1d00000450* + ID_MODEL_FROM_DATABASE=LT WinModem + + pci:v000011C1d00000450sv00001033sd000080A8* +- ID_MODEL_FROM_DATABASE=Versa Note Vxi ++ ID_MODEL_FROM_DATABASE=LT WinModem (Versa Note Vxi) + + pci:v000011C1d00000450sv0000144Fsd00004005* +- ID_MODEL_FROM_DATABASE=Magnia SG20 ++ ID_MODEL_FROM_DATABASE=LT WinModem (Magnia SG20) + + pci:v000011C1d00000450sv00001468sd00000450* +- ID_MODEL_FROM_DATABASE=Evo N600c ++ ID_MODEL_FROM_DATABASE=LT WinModem (Evo N600c) + + pci:v000011C1d00000451* + ID_MODEL_FROM_DATABASE=LT WinModem +@@ -35733,22 +35733,22 @@ pci:v000011C1d00005811* + ID_MODEL_FROM_DATABASE=FW322/323 [TrueFire] 1394a Controller + + pci:v000011C1d00005811sv0000103Csd00002A34* +- ID_MODEL_FROM_DATABASE=Pavilion a1677c ++ ID_MODEL_FROM_DATABASE=FW322/323 [TrueFire] 1394a Controller (Pavilion a1677c) + + pci:v000011C1d00005811sv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=FW322/323 [TrueFire] 1394a Controller (Asus IPIBL-LB Motherboard) + + pci:v000011C1d00005811sv0000103Csd00002A9E* +- ID_MODEL_FROM_DATABASE=Pavilion p6310f ++ ID_MODEL_FROM_DATABASE=FW322/323 [TrueFire] 1394a Controller (Pavilion p6310f) + + pci:v000011C1d00005811sv00001043sd00008294* +- ID_MODEL_FROM_DATABASE=LSI FW322/323 IEEE 1394a FireWire Controller ++ ID_MODEL_FROM_DATABASE=FW322/323 [TrueFire] 1394a Controller (LSI FW322/323 IEEE 1394a FireWire Controller) + + pci:v000011C1d00005811sv00008086sd0000524C* +- ID_MODEL_FROM_DATABASE=D865PERL mainboard ++ ID_MODEL_FROM_DATABASE=FW322/323 [TrueFire] 1394a Controller (D865PERL mainboard) + + pci:v000011C1d00005811sv0000DEADsd00000800* +- ID_MODEL_FROM_DATABASE=FireWire Host Bus Adapter ++ ID_MODEL_FROM_DATABASE=FW322/323 [TrueFire] 1394a Controller (FireWire Host Bus Adapter) + + pci:v000011C1d00005901* + ID_MODEL_FROM_DATABASE=FW643 [TrueFire] PCIe 1394b Controller +@@ -35757,10 +35757,10 @@ pci:v000011C1d00005901sv000011C1sd00005900* + ID_MODEL_FROM_DATABASE=FW643 [TrueFire] PCIe 1394b Controller + + pci:v000011C1d00005901sv00001443sd00000643* +- ID_MODEL_FROM_DATABASE=FireBoard800-e V.2 ++ ID_MODEL_FROM_DATABASE=FW643 [TrueFire] PCIe 1394b Controller (FireBoard800-e V.2) + + pci:v000011C1d00005901sv00001546sd00000643* +- ID_MODEL_FROM_DATABASE=FWB-PCIE1X2x ++ ID_MODEL_FROM_DATABASE=FW643 [TrueFire] PCIe 1394b Controller (FWB-PCIE1X2x) + + pci:v000011C1d00005903* + ID_MODEL_FROM_DATABASE=FW533 [TrueFire] PCIe 1394a Controller +@@ -35769,7 +35769,7 @@ pci:v000011C1d00008110* + ID_MODEL_FROM_DATABASE=T8110 H.100/H.110 TDM switch + + pci:v000011C1d00008110sv000012D9sd0000000C* +- ID_MODEL_FROM_DATABASE=E1/T1 PMXc cPCI carrier card ++ ID_MODEL_FROM_DATABASE=T8110 H.100/H.110 TDM switch (E1/T1 PMXc cPCI carrier card) + + pci:v000011C1d0000AB10* + ID_MODEL_FROM_DATABASE=WL60010 Wireless LAN MAC +@@ -35778,16 +35778,16 @@ pci:v000011C1d0000AB11* + ID_MODEL_FROM_DATABASE=WL60040 Multimode Wireles LAN MAC + + pci:v000011C1d0000AB11sv000011C1sd0000AB12* +- ID_MODEL_FROM_DATABASE=WaveLAN 11abg Cardbus card (Model 1102) ++ ID_MODEL_FROM_DATABASE=WL60040 Multimode Wireles LAN MAC (WaveLAN 11abg Cardbus card (Model 1102)) + + pci:v000011C1d0000AB11sv000011C1sd0000AB13* +- ID_MODEL_FROM_DATABASE=WaveLAN 11abg MiniPCI card (Model 0512) ++ ID_MODEL_FROM_DATABASE=WL60040 Multimode Wireles LAN MAC (WaveLAN 11abg MiniPCI card (Model 0512)) + + pci:v000011C1d0000AB11sv000011C1sd0000AB15* +- ID_MODEL_FROM_DATABASE=WaveLAN 11abg Cardbus card (Model 1106) ++ ID_MODEL_FROM_DATABASE=WL60040 Multimode Wireles LAN MAC (WaveLAN 11abg Cardbus card (Model 1106)) + + pci:v000011C1d0000AB11sv000011C1sd0000AB16* +- ID_MODEL_FROM_DATABASE=WaveLAN 11abg MiniPCI card (Model 0516) ++ ID_MODEL_FROM_DATABASE=WL60040 Multimode Wireles LAN MAC (WaveLAN 11abg MiniPCI card (Model 0516)) + + pci:v000011C1d0000AB20* + ID_MODEL_FROM_DATABASE=ORiNOCO PCI Adapter +@@ -35856,10 +35856,10 @@ pci:v000011CBd00002000* + ID_MODEL_FROM_DATABASE=PCI_9050 + + pci:v000011CBd00002000sv000011CBsd00000200* +- ID_MODEL_FROM_DATABASE=SX ++ ID_MODEL_FROM_DATABASE=PCI_9050 (SX) + + pci:v000011CBd00002000sv000011CBsd0000B008* +- ID_MODEL_FROM_DATABASE=I/O8+ ++ ID_MODEL_FROM_DATABASE=PCI_9050 (I/O8+) + + pci:v000011CBd00004000* + ID_MODEL_FROM_DATABASE=SUPI_1 +@@ -35949,28 +35949,28 @@ pci:v000011DEd00006057* + ID_MODEL_FROM_DATABASE=ZR36057PQC Video cutting chipset + + pci:v000011DEd00006057sv00001031sd00007EFE* +- ID_MODEL_FROM_DATABASE=DC10 Plus ++ ID_MODEL_FROM_DATABASE=ZR36057PQC Video cutting chipset (DC10 Plus) + + pci:v000011DEd00006057sv00001031sd0000FC00* +- ID_MODEL_FROM_DATABASE=MiroVIDEO DC50, Motion JPEG Capture/CODEC Board ++ ID_MODEL_FROM_DATABASE=ZR36057PQC Video cutting chipset (MiroVIDEO DC50, Motion JPEG Capture/CODEC Board) + + pci:v000011DEd00006057sv000012F8sd00008A02* +- ID_MODEL_FROM_DATABASE=Tekram Video Kit ++ ID_MODEL_FROM_DATABASE=ZR36057PQC Video cutting chipset (Tekram Video Kit) + + pci:v000011DEd00006057sv000013CAsd00004231* +- ID_MODEL_FROM_DATABASE=JPEG/TV Card ++ ID_MODEL_FROM_DATABASE=ZR36057PQC Video cutting chipset (JPEG/TV Card) + + pci:v000011DEd00006120* + ID_MODEL_FROM_DATABASE=ZR36120 + + pci:v000011DEd00006120sv00001328sd0000F001* +- ID_MODEL_FROM_DATABASE=Cinemaster C DVD Decoder ++ ID_MODEL_FROM_DATABASE=ZR36120 (Cinemaster C DVD Decoder) + + pci:v000011DEd00006120sv000013C2sd00000000* +- ID_MODEL_FROM_DATABASE=MediaFocus Satellite TV Card ++ ID_MODEL_FROM_DATABASE=ZR36120 (MediaFocus Satellite TV Card) + + pci:v000011DEd00006120sv00001DE1sd00009FFF* +- ID_MODEL_FROM_DATABASE=Video Kit C210 ++ ID_MODEL_FROM_DATABASE=ZR36120 (Video Kit C210) + + pci:v000011DF* + ID_VENDOR_FROM_DATABASE=New Wave PDG +@@ -36102,13 +36102,13 @@ pci:v000011F6d00002011* + ID_MODEL_FROM_DATABASE=RL100-ATX 10/100 + + pci:v000011F6d00002011sv000011F6sd00002011* +- ID_MODEL_FROM_DATABASE=RL100-ATX ++ ID_MODEL_FROM_DATABASE=RL100-ATX 10/100 (RL100-ATX) + + pci:v000011F6d00002201* + ID_MODEL_FROM_DATABASE=ReadyLink 100TX (Winbond W89C840) + + pci:v000011F6d00002201sv000011F6sd00002011* +- ID_MODEL_FROM_DATABASE=ReadyLink 100TX ++ ID_MODEL_FROM_DATABASE=ReadyLink 100TX (Winbond W89C840) (ReadyLink 100TX) + + pci:v000011F6d00009881* + ID_MODEL_FROM_DATABASE=RL100TX Fast Ethernet +@@ -36138,10 +36138,10 @@ pci:v000011F8d00008032* + ID_MODEL_FROM_DATABASE=ATTO Celerity FC8xEN + + pci:v000011F8d00008032sv0000117Csd0000003B* +- ID_MODEL_FROM_DATABASE=Celerity FC-82EN Fibre Channel Adapter ++ ID_MODEL_FROM_DATABASE=ATTO Celerity FC8xEN (Celerity FC-82EN Fibre Channel Adapter) + + pci:v000011F8d00008032sv0000117Csd0000003C* +- ID_MODEL_FROM_DATABASE=Celerity FC-84EN Fibre Channel Adapter ++ ID_MODEL_FROM_DATABASE=ATTO Celerity FC8xEN (Celerity FC-84EN Fibre Channel Adapter) + + pci:v000011F9* + ID_VENDOR_FROM_DATABASE=I-Cube Inc +@@ -36285,16 +36285,16 @@ pci:v00001202d00004300* + ID_MODEL_FROM_DATABASE=Gigabit Ethernet Adapter + + pci:v00001202d00004300sv00001202sd00009841* +- ID_MODEL_FROM_DATABASE=SK-9841 LX ++ ID_MODEL_FROM_DATABASE=Gigabit Ethernet Adapter (SK-9841 LX) + + pci:v00001202d00004300sv00001202sd00009842* +- ID_MODEL_FROM_DATABASE=SK-9841 LX dual link ++ ID_MODEL_FROM_DATABASE=Gigabit Ethernet Adapter (SK-9841 LX dual link) + + pci:v00001202d00004300sv00001202sd00009843* +- ID_MODEL_FROM_DATABASE=SK-9843 SX ++ ID_MODEL_FROM_DATABASE=Gigabit Ethernet Adapter (SK-9843 SX) + + pci:v00001202d00004300sv00001202sd00009844* +- ID_MODEL_FROM_DATABASE=SK-9843 SX dual link ++ ID_MODEL_FROM_DATABASE=Gigabit Ethernet Adapter (SK-9843 SX dual link) + + pci:v00001203* + ID_VENDOR_FROM_DATABASE=Bayer Corporation, Agfa Division +@@ -36411,7 +36411,7 @@ pci:v00001217d000000F7* + ID_MODEL_FROM_DATABASE=Firewire (IEEE 1394) + + pci:v00001217d000000F7sv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=Firewire (IEEE 1394) (Satellite P305D-S8995E) + + pci:v00001217d000010F7* + ID_MODEL_FROM_DATABASE=1394 OHCI Compliant Host Controller +@@ -36420,7 +36420,7 @@ pci:v00001217d000011F7* + ID_MODEL_FROM_DATABASE=OZ600 1394a-2000 Controller + + pci:v00001217d000011F7sv00001028sd000004A3* +- ID_MODEL_FROM_DATABASE=Precision M4600 ++ ID_MODEL_FROM_DATABASE=OZ600 1394a-2000 Controller (Precision M4600) + + pci:v00001217d000013F7* + ID_MODEL_FROM_DATABASE=1394 OHCI Compliant Host Controller +@@ -36447,31 +36447,31 @@ pci:v00001217d00006933* + ID_MODEL_FROM_DATABASE=OZ6933/711E1 CardBus/SmartCardBus Controller + + pci:v00001217d00006933sv00001025sd00001016* +- ID_MODEL_FROM_DATABASE=Travelmate 612 TX ++ ID_MODEL_FROM_DATABASE=OZ6933/711E1 CardBus/SmartCardBus Controller (Travelmate 612 TX) + + pci:v00001217d00006972* + ID_MODEL_FROM_DATABASE=OZ601/6912/711E0 CardBus/SmartCardBus Controller + + pci:v00001217d00006972sv00001014sd0000020C* +- ID_MODEL_FROM_DATABASE=ThinkPad R30 ++ ID_MODEL_FROM_DATABASE=OZ601/6912/711E0 CardBus/SmartCardBus Controller (ThinkPad R30) + + pci:v00001217d00006972sv00001028sd00000152* +- ID_MODEL_FROM_DATABASE=Latitude D500 ++ ID_MODEL_FROM_DATABASE=OZ601/6912/711E0 CardBus/SmartCardBus Controller (Latitude D500) + + pci:v00001217d00006972sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Magnia Z310 ++ ID_MODEL_FROM_DATABASE=OZ601/6912/711E0 CardBus/SmartCardBus Controller (Magnia Z310) + + pci:v00001217d00007110* + ID_MODEL_FROM_DATABASE=OZ711Mx 4-in-1 MemoryCardBus Accelerator + + pci:v00001217d00007110sv0000103Csd0000088C* +- ID_MODEL_FROM_DATABASE=NC8000 laptop ++ ID_MODEL_FROM_DATABASE=OZ711Mx 4-in-1 MemoryCardBus Accelerator (NC8000 laptop) + + pci:v00001217d00007110sv0000103Csd00000890* +- ID_MODEL_FROM_DATABASE=NC6000 laptop ++ ID_MODEL_FROM_DATABASE=OZ711Mx 4-in-1 MemoryCardBus Accelerator (NC6000 laptop) + + pci:v00001217d00007110sv00001734sd0000106C* +- ID_MODEL_FROM_DATABASE=Amilo A1645 ++ ID_MODEL_FROM_DATABASE=OZ711Mx 4-in-1 MemoryCardBus Accelerator (Amilo A1645) + + pci:v00001217d00007112* + ID_MODEL_FROM_DATABASE=OZ711EC1/M1 SmartCardBus/MemoryCardBus Controller +@@ -36480,7 +36480,7 @@ pci:v00001217d00007113* + ID_MODEL_FROM_DATABASE=OZ711EC1 SmartCardBus Controller + + pci:v00001217d00007113sv00001025sd00000035* +- ID_MODEL_FROM_DATABASE=TravelMate 660 ++ ID_MODEL_FROM_DATABASE=OZ711EC1 SmartCardBus Controller (TravelMate 660) + + pci:v00001217d00007114* + ID_MODEL_FROM_DATABASE=OZ711M1/MC1 4-in-1 MemoryCardBus Controller +@@ -36489,13 +36489,13 @@ pci:v00001217d00007120* + ID_MODEL_FROM_DATABASE=Integrated MMC/SD Controller + + pci:v00001217d00007120sv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=Integrated MMC/SD Controller (Satellite P305D-S8995E) + + pci:v00001217d00007130* + ID_MODEL_FROM_DATABASE=Integrated MS/xD Controller + + pci:v00001217d00007130sv00001179sd0000FF50* +- ID_MODEL_FROM_DATABASE=Satellite P305D-S8995E ++ ID_MODEL_FROM_DATABASE=Integrated MS/xD Controller (Satellite P305D-S8995E) + + pci:v00001217d00007134* + ID_MODEL_FROM_DATABASE=OZ711MP1/MS1 MemoryCardBus Controller +@@ -36519,13 +36519,13 @@ pci:v00001217d00007223* + ID_MODEL_FROM_DATABASE=OZ711M3/MC3 4-in-1 MemoryCardBus Controller + + pci:v00001217d00007223sv0000103Csd0000088C* +- ID_MODEL_FROM_DATABASE=NC8000 laptop ++ ID_MODEL_FROM_DATABASE=OZ711M3/MC3 4-in-1 MemoryCardBus Controller (NC8000 laptop) + + pci:v00001217d00007223sv0000103Csd00000890* +- ID_MODEL_FROM_DATABASE=NC6000 laptop ++ ID_MODEL_FROM_DATABASE=OZ711M3/MC3 4-in-1 MemoryCardBus Controller (NC6000 laptop) + + pci:v00001217d00007223sv000010CFsd000011C4* +- ID_MODEL_FROM_DATABASE=Lifebook P5020D Laptop ++ ID_MODEL_FROM_DATABASE=OZ711M3/MC3 4-in-1 MemoryCardBus Controller (Lifebook P5020D Laptop) + + pci:v00001217d00007233* + ID_MODEL_FROM_DATABASE=OZ711MP3/MS3 4-in-1 MemoryCardBus Controller +@@ -36540,7 +36540,7 @@ pci:v00001217d00008320* + ID_MODEL_FROM_DATABASE=OZ600 MMC/SD Controller + + pci:v00001217d00008320sv00001028sd000004A3* +- ID_MODEL_FROM_DATABASE=Precision M4600 ++ ID_MODEL_FROM_DATABASE=OZ600 MMC/SD Controller (Precision M4600) + + pci:v00001217d00008321* + ID_MODEL_FROM_DATABASE=Integrated MMC/SD controller +@@ -36549,7 +36549,7 @@ pci:v00001217d00008330* + ID_MODEL_FROM_DATABASE=OZ600 MS/xD Controller + + pci:v00001217d00008330sv00001028sd000004A3* +- ID_MODEL_FROM_DATABASE=Precision M4600 ++ ID_MODEL_FROM_DATABASE=OZ600 MS/xD Controller (Precision M4600) + + pci:v00001217d00008331* + ID_MODEL_FROM_DATABASE=O2 Flash Memory Card +@@ -36576,52 +36576,52 @@ pci:v0000121Ad00000003* + ID_MODEL_FROM_DATABASE=Voodoo Banshee + + pci:v0000121Ad00000003sv00001092sd00000003* +- ID_MODEL_FROM_DATABASE=Monster Fusion ++ ID_MODEL_FROM_DATABASE=Voodoo Banshee (Monster Fusion) + + pci:v0000121Ad00000003sv00001092sd00004000* +- ID_MODEL_FROM_DATABASE=Monster Fusion ++ ID_MODEL_FROM_DATABASE=Voodoo Banshee (Monster Fusion) + + pci:v0000121Ad00000003sv00001092sd00004002* +- ID_MODEL_FROM_DATABASE=Monster Fusion ++ ID_MODEL_FROM_DATABASE=Voodoo Banshee (Monster Fusion) + + pci:v0000121Ad00000003sv00001092sd00004801* +- ID_MODEL_FROM_DATABASE=Monster Fusion AGP ++ ID_MODEL_FROM_DATABASE=Voodoo Banshee (Monster Fusion AGP) + + pci:v0000121Ad00000003sv00001092sd00004803* +- ID_MODEL_FROM_DATABASE=Monster Fusion AGP ++ ID_MODEL_FROM_DATABASE=Voodoo Banshee (Monster Fusion AGP) + + pci:v0000121Ad00000003sv00001092sd00008030* +- ID_MODEL_FROM_DATABASE=Monster Fusion ++ ID_MODEL_FROM_DATABASE=Voodoo Banshee (Monster Fusion) + + pci:v0000121Ad00000003sv00001092sd00008035* +- ID_MODEL_FROM_DATABASE=Monster Fusion AGP ++ ID_MODEL_FROM_DATABASE=Voodoo Banshee (Monster Fusion AGP) + + pci:v0000121Ad00000003sv000010B0sd00000001* +- ID_MODEL_FROM_DATABASE=Dragon 4000 ++ ID_MODEL_FROM_DATABASE=Voodoo Banshee (Dragon 4000) + + pci:v0000121Ad00000003sv00001102sd00001017* +- ID_MODEL_FROM_DATABASE=3D Blaster Banshee PCI (CT6760) ++ ID_MODEL_FROM_DATABASE=Voodoo Banshee (3D Blaster Banshee PCI (CT6760)) + + pci:v0000121Ad00000003sv00001102sd00001018* +- ID_MODEL_FROM_DATABASE=3D Blaster Banshee VE ++ ID_MODEL_FROM_DATABASE=Voodoo Banshee (3D Blaster Banshee VE) + + pci:v0000121Ad00000003sv0000121Asd00000001* +- ID_MODEL_FROM_DATABASE=Voodoo Banshee AGP ++ ID_MODEL_FROM_DATABASE=Voodoo Banshee (AGP) + + pci:v0000121Ad00000003sv0000121Asd00000003* +- ID_MODEL_FROM_DATABASE=Voodoo Banshee AGP SGRAM ++ ID_MODEL_FROM_DATABASE=Voodoo Banshee (AGP SGRAM) + + pci:v0000121Ad00000003sv0000121Asd00000004* + ID_MODEL_FROM_DATABASE=Voodoo Banshee + + pci:v0000121Ad00000003sv0000139Csd00000016* +- ID_MODEL_FROM_DATABASE=Raven ++ ID_MODEL_FROM_DATABASE=Voodoo Banshee (Raven) + + pci:v0000121Ad00000003sv0000139Csd00000017* +- ID_MODEL_FROM_DATABASE=Raven ++ ID_MODEL_FROM_DATABASE=Voodoo Banshee (Raven) + + pci:v0000121Ad00000003sv000014AFsd00000002* +- ID_MODEL_FROM_DATABASE=Maxi Gamer Phoenix ++ ID_MODEL_FROM_DATABASE=Voodoo Banshee (Maxi Gamer Phoenix) + + pci:v0000121Ad00000004* + ID_MODEL_FROM_DATABASE=Voodoo Banshee [Velocity 100] +@@ -36630,70 +36630,70 @@ pci:v0000121Ad00000005* + ID_MODEL_FROM_DATABASE=Voodoo 3 + + pci:v0000121Ad00000005sv0000121Asd00000004* +- ID_MODEL_FROM_DATABASE=Voodoo3 AGP ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3 AGP) + + pci:v0000121Ad00000005sv0000121Asd00000030* +- ID_MODEL_FROM_DATABASE=Voodoo3 AGP ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3 AGP) + + pci:v0000121Ad00000005sv0000121Asd00000031* +- ID_MODEL_FROM_DATABASE=Voodoo3 AGP ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3 AGP) + + pci:v0000121Ad00000005sv0000121Asd00000034* +- ID_MODEL_FROM_DATABASE=Voodoo3 AGP ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3 AGP) + + pci:v0000121Ad00000005sv0000121Asd00000036* +- ID_MODEL_FROM_DATABASE=Voodoo3 2000 PCI ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3 2000 PCI) + + pci:v0000121Ad00000005sv0000121Asd00000037* +- ID_MODEL_FROM_DATABASE=Voodoo3 AGP ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3 AGP) + + pci:v0000121Ad00000005sv0000121Asd00000038* +- ID_MODEL_FROM_DATABASE=Voodoo3 AGP ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3 AGP) + + pci:v0000121Ad00000005sv0000121Asd0000003A* +- ID_MODEL_FROM_DATABASE=Voodoo3 AGP ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3 AGP) + + pci:v0000121Ad00000005sv0000121Asd00000044* +- ID_MODEL_FROM_DATABASE=Voodoo3 ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3) + + pci:v0000121Ad00000005sv0000121Asd0000004B* +- ID_MODEL_FROM_DATABASE=Velocity 100 ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Velocity 100) + + pci:v0000121Ad00000005sv0000121Asd0000004C* +- ID_MODEL_FROM_DATABASE=Velocity 200 ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Velocity 200) + + pci:v0000121Ad00000005sv0000121Asd0000004D* +- ID_MODEL_FROM_DATABASE=Voodoo3 AGP ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3 AGP) + + pci:v0000121Ad00000005sv0000121Asd0000004E* +- ID_MODEL_FROM_DATABASE=Voodoo3 AGP ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3 AGP) + + pci:v0000121Ad00000005sv0000121Asd00000051* +- ID_MODEL_FROM_DATABASE=Voodoo3 AGP ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3 AGP) + + pci:v0000121Ad00000005sv0000121Asd00000052* +- ID_MODEL_FROM_DATABASE=Voodoo3 AGP ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3 AGP) + + pci:v0000121Ad00000005sv0000121Asd00000057* +- ID_MODEL_FROM_DATABASE=Voodoo3 3000 PCI ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3 3000 PCI) + + pci:v0000121Ad00000005sv0000121Asd00000060* +- ID_MODEL_FROM_DATABASE=Voodoo3 3500 TV (NTSC) ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3 3500 TV (NTSC)) + + pci:v0000121Ad00000005sv0000121Asd00000061* +- ID_MODEL_FROM_DATABASE=Voodoo3 3500 TV (PAL) ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3 3500 TV (PAL)) + + pci:v0000121Ad00000005sv0000121Asd00000062* +- ID_MODEL_FROM_DATABASE=Voodoo3 3500 TV (SECAM) ++ ID_MODEL_FROM_DATABASE=Voodoo 3 (Voodoo3 3500 TV (SECAM)) + + pci:v0000121Ad00000009* + ID_MODEL_FROM_DATABASE=Voodoo 4 / Voodoo 5 + + pci:v0000121Ad00000009sv0000121Asd00000003* +- ID_MODEL_FROM_DATABASE=Voodoo5 PCI 5500 ++ ID_MODEL_FROM_DATABASE=Voodoo 4 / Voodoo 5 (Voodoo5 PCI 5500) + + pci:v0000121Ad00000009sv0000121Asd00000009* +- ID_MODEL_FROM_DATABASE=Voodoo5 AGP 5500/6000 ++ ID_MODEL_FROM_DATABASE=Voodoo 4 / Voodoo 5 (Voodoo5 AGP 5500/6000) + + pci:v0000121Ad00000057* + ID_MODEL_FROM_DATABASE=Voodoo 3/3000 [Avenger] +@@ -36930,31 +36930,31 @@ pci:v0000123Fd00008120* + ID_MODEL_FROM_DATABASE=DVxplore Codec + + pci:v0000123Fd00008120sv000010DEsd000001E1* +- ID_MODEL_FROM_DATABASE=NVTV PAL ++ ID_MODEL_FROM_DATABASE=DVxplore Codec (NVTV PAL) + + pci:v0000123Fd00008120sv000010DEsd000001E2* +- ID_MODEL_FROM_DATABASE=NVTV NTSC ++ ID_MODEL_FROM_DATABASE=DVxplore Codec (NVTV NTSC) + + pci:v0000123Fd00008120sv000010DEsd000001E3* +- ID_MODEL_FROM_DATABASE=NVTV PAL ++ ID_MODEL_FROM_DATABASE=DVxplore Codec (NVTV PAL) + + pci:v0000123Fd00008120sv000010DEsd00000248* +- ID_MODEL_FROM_DATABASE=NVTV NTSC ++ ID_MODEL_FROM_DATABASE=DVxplore Codec (NVTV NTSC) + + pci:v0000123Fd00008120sv000010DEsd00000249* +- ID_MODEL_FROM_DATABASE=NVTV PAL ++ ID_MODEL_FROM_DATABASE=DVxplore Codec (NVTV PAL) + + pci:v0000123Fd00008120sv000011BDsd00000006* +- ID_MODEL_FROM_DATABASE=DV500 E4 ++ ID_MODEL_FROM_DATABASE=DVxplore Codec (DV500 E4) + + pci:v0000123Fd00008120sv000011BDsd0000000A* +- ID_MODEL_FROM_DATABASE=DV500 E4 ++ ID_MODEL_FROM_DATABASE=DVxplore Codec (DV500 E4) + + pci:v0000123Fd00008120sv000011BDsd0000000F* +- ID_MODEL_FROM_DATABASE=DV500 E4 ++ ID_MODEL_FROM_DATABASE=DVxplore Codec (DV500 E4) + + pci:v0000123Fd00008120sv00001809sd00000016* +- ID_MODEL_FROM_DATABASE=Emuzed MAUI-III PCI PVR FM TV ++ ID_MODEL_FROM_DATABASE=DVxplore Codec (Emuzed MAUI-III PCI PVR FM TV) + + pci:v0000123Fd00008888* + ID_MODEL_FROM_DATABASE=Cinemaster C 3.0 DVD Decoder +@@ -36981,10 +36981,10 @@ pci:v00001242d00001560* + ID_MODEL_FROM_DATABASE=JNIC-1560 PCI-X Fibre Channel Controller + + pci:v00001242d00001560sv00001242sd00006562* +- ID_MODEL_FROM_DATABASE=FCX2-6562 Dual Channel PCI-X Fibre Channel Adapter ++ ID_MODEL_FROM_DATABASE=JNIC-1560 PCI-X Fibre Channel Controller (FCX2-6562 Dual Channel PCI-X Fibre Channel Adapter) + + pci:v00001242d00001560sv00001242sd0000656A* +- ID_MODEL_FROM_DATABASE=FCX-6562 PCI-X Fibre Channel Adapter ++ ID_MODEL_FROM_DATABASE=JNIC-1560 PCI-X Fibre Channel Controller (FCX-6562 PCI-X Fibre Channel Adapter) + + pci:v00001242d00004643* + ID_MODEL_FROM_DATABASE=FCI-1063 Fibre Channel Adapter +@@ -37011,7 +37011,7 @@ pci:v00001244d00000A00* + ID_MODEL_FROM_DATABASE=A1 ISDN [Fritz] + + pci:v00001244d00000A00sv00001244sd00000A00* +- ID_MODEL_FROM_DATABASE=FRITZ!Card ISDN Controller ++ ID_MODEL_FROM_DATABASE=A1 ISDN [Fritz] (FRITZ!Card ISDN Controller) + + pci:v00001244d00000E00* + ID_MODEL_FROM_DATABASE=Fritz!PCI v2.0 ISDN +@@ -37053,7 +37053,7 @@ pci:v0000124Bd00000040* + ID_MODEL_FROM_DATABASE=PCI-40A or cPCI-200 Quad IndustryPack carrier + + pci:v0000124Bd00000040sv0000124Bsd00009080* +- ID_MODEL_FROM_DATABASE=PCI9080 Bridge ++ ID_MODEL_FROM_DATABASE=PCI-40A or cPCI-200 Quad IndustryPack carrier (PCI9080 Bridge) + + pci:v0000124C* + ID_VENDOR_FROM_DATABASE=Solitron Technologies, Inc. +@@ -37164,7 +37164,7 @@ pci:v0000125Bd00001400* + ID_MODEL_FROM_DATABASE=AX88141 Fast Ethernet Controller + + pci:v0000125Bd00001400sv00001186sd00001100* +- ID_MODEL_FROM_DATABASE=AX8814X Based PCI Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=AX88141 Fast Ethernet Controller (AX8814X Based PCI Fast Ethernet Adapter) + + pci:v0000125C* + ID_VENDOR_FROM_DATABASE=Aurora Technologies, Inc. +@@ -37188,61 +37188,61 @@ pci:v0000125Dd00001968* + ID_MODEL_FROM_DATABASE=ES1968 Maestro 2 + + pci:v0000125Dd00001968sv00001028sd00000085* +- ID_MODEL_FROM_DATABASE=ES1968 Maestro-2 PCI ++ ID_MODEL_FROM_DATABASE=ES1968 Maestro 2 (ES1968 Maestro-2 PCI) + + pci:v0000125Dd00001968sv00001033sd00008051* +- ID_MODEL_FROM_DATABASE=ES1968 Maestro-2 Audiodrive ++ ID_MODEL_FROM_DATABASE=ES1968 Maestro 2 (ES1968 Maestro-2 Audiodrive) + + pci:v0000125Dd00001969* + ID_MODEL_FROM_DATABASE=ES1938/ES1946/ES1969 Solo-1 Audiodrive + + pci:v0000125Dd00001969sv00001014sd00000166* +- ID_MODEL_FROM_DATABASE=ES1969 SOLO-1 AudioDrive on IBM Aptiva Mainboard ++ ID_MODEL_FROM_DATABASE=ES1938/ES1946/ES1969 Solo-1 Audiodrive (ES1969 SOLO-1 AudioDrive on IBM Aptiva Mainboard) + + pci:v0000125Dd00001969sv0000125Dsd00008888* +- ID_MODEL_FROM_DATABASE=Solo-1 Audio Adapter ++ ID_MODEL_FROM_DATABASE=ES1938/ES1946/ES1969 Solo-1 Audiodrive (Solo-1 Audio Adapter) + + pci:v0000125Dd00001969sv0000153Bsd0000111B* +- ID_MODEL_FROM_DATABASE=Terratec 128i PCI ++ ID_MODEL_FROM_DATABASE=ES1938/ES1946/ES1969 Solo-1 Audiodrive (Terratec 128i PCI) + + pci:v0000125Dd00001978* + ID_MODEL_FROM_DATABASE=ES1978 Maestro 2E + + pci:v0000125Dd00001978sv00000E11sd0000B112* +- ID_MODEL_FROM_DATABASE=Armada M700/E500 ++ ID_MODEL_FROM_DATABASE=ES1978 Maestro 2E (Armada M700/E500) + + pci:v0000125Dd00001978sv00001033sd0000803C* +- ID_MODEL_FROM_DATABASE=ES1978 Maestro-2E Audiodrive ++ ID_MODEL_FROM_DATABASE=ES1978 Maestro 2E (ES1978 Maestro-2E Audiodrive) + + pci:v0000125Dd00001978sv00001033sd00008058* +- ID_MODEL_FROM_DATABASE=ES1978 Maestro-2E Audiodrive ++ ID_MODEL_FROM_DATABASE=ES1978 Maestro 2E (ES1978 Maestro-2E Audiodrive) + + pci:v0000125Dd00001978sv00001092sd00004000* +- ID_MODEL_FROM_DATABASE=Monster Sound MX400 ++ ID_MODEL_FROM_DATABASE=ES1978 Maestro 2E (Monster Sound MX400) + + pci:v0000125Dd00001978sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=ES1978 Maestro-2E Audiodrive ++ ID_MODEL_FROM_DATABASE=ES1978 Maestro 2E (ES1978 Maestro-2E Audiodrive) + + pci:v0000125Dd00001988* + ID_MODEL_FROM_DATABASE=ES1988 Allegro-1 + + pci:v0000125Dd00001988sv00000E11sd00000098* +- ID_MODEL_FROM_DATABASE=Evo N600c ++ ID_MODEL_FROM_DATABASE=ES1988 Allegro-1 (Evo N600c) + + pci:v0000125Dd00001988sv00001092sd00004100* +- ID_MODEL_FROM_DATABASE=Sonic Impact S100 ++ ID_MODEL_FROM_DATABASE=ES1988 Allegro-1 (Sonic Impact S100) + + pci:v0000125Dd00001988sv0000125Dsd00000431* +- ID_MODEL_FROM_DATABASE=Allegro AudioDrive ++ ID_MODEL_FROM_DATABASE=ES1988 Allegro-1 (Allegro AudioDrive) + + pci:v0000125Dd00001988sv0000125Dsd00001988* +- ID_MODEL_FROM_DATABASE=ESS Allegro-1 Audiodrive ++ ID_MODEL_FROM_DATABASE=ES1988 Allegro-1 (ESS Allegro-1 Audiodrive) + + pci:v0000125Dd00001988sv0000125Dsd00001998* +- ID_MODEL_FROM_DATABASE=Allegro AudioDrive ++ ID_MODEL_FROM_DATABASE=ES1988 Allegro-1 (Allegro AudioDrive) + + pci:v0000125Dd00001988sv0000125Dsd00001999* +- ID_MODEL_FROM_DATABASE=Allegro-1 AudioDrive ++ ID_MODEL_FROM_DATABASE=ES1988 Allegro-1 (Allegro-1 AudioDrive) + + pci:v0000125Dd00001989* + ID_MODEL_FROM_DATABASE=ESS Modem +@@ -37254,13 +37254,13 @@ pci:v0000125Dd00001998* + ID_MODEL_FROM_DATABASE=ES1983S Maestro-3i PCI Audio Accelerator + + pci:v0000125Dd00001998sv00001028sd000000B1* +- ID_MODEL_FROM_DATABASE=Latitude C600 ++ ID_MODEL_FROM_DATABASE=ES1983S Maestro-3i PCI Audio Accelerator (Latitude C600) + + pci:v0000125Dd00001998sv00001028sd000000E5* +- ID_MODEL_FROM_DATABASE=Latitude C810 ++ ID_MODEL_FROM_DATABASE=ES1983S Maestro-3i PCI Audio Accelerator (Latitude C810) + + pci:v0000125Dd00001998sv00001028sd000000E6* +- ID_MODEL_FROM_DATABASE=ES1983S Maestro-3i (Dell Inspiron 8100) ++ ID_MODEL_FROM_DATABASE=ES1983S Maestro-3i PCI Audio Accelerator (ES1983S Maestro-3i (Dell Inspiron 8100)) + + pci:v0000125Dd00001999* + ID_MODEL_FROM_DATABASE=ES1983S Maestro-3i PCI Modem Accelerator +@@ -37281,34 +37281,34 @@ pci:v0000125Dd00002898* + ID_MODEL_FROM_DATABASE=ES2898 Modem + + pci:v0000125Dd00002898sv0000125Dsd00000424* +- ID_MODEL_FROM_DATABASE=ES56-PI Data Fax Modem ++ ID_MODEL_FROM_DATABASE=ES2898 Modem (ES56-PI Data Fax Modem) + + pci:v0000125Dd00002898sv0000125Dsd00000425* +- ID_MODEL_FROM_DATABASE=ES56T-PI Data Fax Modem ++ ID_MODEL_FROM_DATABASE=ES2898 Modem (ES56T-PI Data Fax Modem) + + pci:v0000125Dd00002898sv0000125Dsd00000426* +- ID_MODEL_FROM_DATABASE=ES56V-PI Data Fax Modem ++ ID_MODEL_FROM_DATABASE=ES2898 Modem (ES56V-PI Data Fax Modem) + + pci:v0000125Dd00002898sv0000125Dsd00000427* +- ID_MODEL_FROM_DATABASE=VW-PI Data Fax Modem ++ ID_MODEL_FROM_DATABASE=ES2898 Modem (VW-PI Data Fax Modem) + + pci:v0000125Dd00002898sv0000125Dsd00000428* +- ID_MODEL_FROM_DATABASE=ES56ST-PI Data Fax Modem ++ ID_MODEL_FROM_DATABASE=ES2898 Modem (ES56ST-PI Data Fax Modem) + + pci:v0000125Dd00002898sv0000125Dsd00000429* +- ID_MODEL_FROM_DATABASE=ES56SV-PI Data Fax Modem ++ ID_MODEL_FROM_DATABASE=ES2898 Modem (ES56SV-PI Data Fax Modem) + + pci:v0000125Dd00002898sv0000147Asd0000C001* +- ID_MODEL_FROM_DATABASE=ES56-PI Data Fax Modem ++ ID_MODEL_FROM_DATABASE=ES2898 Modem (ES56-PI Data Fax Modem) + + pci:v0000125Dd00002898sv0000148Dsd00001030* +- ID_MODEL_FROM_DATABASE=HCF WV-PI56 [ESS ES56-PI Data Fax Modem] ++ ID_MODEL_FROM_DATABASE=ES2898 Modem (HCF WV-PI56 [ESS ES56-PI Data Fax Modem]) + + pci:v0000125Dd00002898sv000014FEsd00000428* +- ID_MODEL_FROM_DATABASE=ES56-PI Data Fax Modem ++ ID_MODEL_FROM_DATABASE=ES2898 Modem (ES56-PI Data Fax Modem) + + pci:v0000125Dd00002898sv000014FEsd00000429* +- ID_MODEL_FROM_DATABASE=ES56-PI Data Fax Modem ++ ID_MODEL_FROM_DATABASE=ES2898 Modem (ES56-PI Data Fax Modem) + + pci:v0000125E* + ID_VENDOR_FROM_DATABASE=Specialvideo Engineering SRL +@@ -37323,40 +37323,40 @@ pci:v00001260d00003872* + ID_MODEL_FROM_DATABASE=ISL3872 [Prism 3] + + pci:v00001260d00003872sv00001468sd00000202* +- ID_MODEL_FROM_DATABASE=LAN-Express IEEE 802.11b Wireless LAN ++ ID_MODEL_FROM_DATABASE=ISL3872 [Prism 3] (LAN-Express IEEE 802.11b Wireless LAN) + + pci:v00001260d00003873* + ID_MODEL_FROM_DATABASE=ISL3874 [Prism 2.5]/ISL3872 [Prism 3] + + pci:v00001260d00003873sv000010CFsd00001169* +- ID_MODEL_FROM_DATABASE=MBH7WM01-8734 802.11b Wireless Mini PCI Card [ISL3874] ++ ID_MODEL_FROM_DATABASE=ISL3874 [Prism 2.5]/ISL3872 [Prism 3] (MBH7WM01-8734 802.11b Wireless Mini PCI Card [ISL3874]) + + pci:v00001260d00003873sv00001186sd00003501* +- ID_MODEL_FROM_DATABASE=DWL-520 Wireless PCI Adapter (rev A or B) [ISL3874] ++ ID_MODEL_FROM_DATABASE=ISL3874 [Prism 2.5]/ISL3872 [Prism 3] (DWL-520 Wireless PCI Adapter (rev A or B) [ISL3874]) + + pci:v00001260d00003873sv00001186sd00003700* +- ID_MODEL_FROM_DATABASE=DWL-520 Wireless PCI Adapter (rev E1) [ISL3872] ++ ID_MODEL_FROM_DATABASE=ISL3874 [Prism 2.5]/ISL3872 [Prism 3] (DWL-520 Wireless PCI Adapter (rev E1) [ISL3872]) + + pci:v00001260d00003873sv00001385sd00004105* +- ID_MODEL_FROM_DATABASE=MA311 802.11b wireless adapter [ISL3874] ++ ID_MODEL_FROM_DATABASE=ISL3874 [Prism 2.5]/ISL3872 [Prism 3] (MA311 802.11b wireless adapter [ISL3874]) + + pci:v00001260d00003873sv00001668sd00000414* +- ID_MODEL_FROM_DATABASE=HWP01170-01 802.11b PCI Wireless Adapter ++ ID_MODEL_FROM_DATABASE=ISL3874 [Prism 2.5]/ISL3872 [Prism 3] (HWP01170-01 802.11b PCI Wireless Adapter) + + pci:v00001260d00003873sv000016A5sd00001601* +- ID_MODEL_FROM_DATABASE=AIR.mate PC-400 PCI Wireless LAN Adapter ++ ID_MODEL_FROM_DATABASE=ISL3874 [Prism 2.5]/ISL3872 [Prism 3] (AIR.mate PC-400 PCI Wireless LAN Adapter) + + pci:v00001260d00003873sv00001737sd00003874* +- ID_MODEL_FROM_DATABASE=WMP11 v1 802.11b Wireless-B PCI Adapter [ISL3874] ++ ID_MODEL_FROM_DATABASE=ISL3874 [Prism 2.5]/ISL3872 [Prism 3] (WMP11 v1 802.11b Wireless-B PCI Adapter [ISL3874]) + + pci:v00001260d00003873sv00004033sd00007033* +- ID_MODEL_FROM_DATABASE=PCW200 802.11b Wireless PCI Adapter [ISL3874] ++ ID_MODEL_FROM_DATABASE=ISL3874 [Prism 2.5]/ISL3872 [Prism 3] (PCW200 802.11b Wireless PCI Adapter [ISL3874]) + + pci:v00001260d00003873sv00008086sd00002510* +- ID_MODEL_FROM_DATABASE=M3AWEB Wireless 802.11b MiniPCI Adapter ++ ID_MODEL_FROM_DATABASE=ISL3874 [Prism 2.5]/ISL3872 [Prism 3] (M3AWEB Wireless 802.11b MiniPCI Adapter) + + pci:v00001260d00003873sv00008086sd00002513* +- ID_MODEL_FROM_DATABASE=Wireless 802.11b MiniPCI Adapter ++ ID_MODEL_FROM_DATABASE=ISL3874 [Prism 2.5]/ISL3872 [Prism 3] (Wireless 802.11b MiniPCI Adapter) + + pci:v00001260d00003877* + ID_MODEL_FROM_DATABASE=ISL3877 [Prism Indigo] +@@ -37365,58 +37365,58 @@ pci:v00001260d00003886* + ID_MODEL_FROM_DATABASE=ISL3886 [Prism Javelin/Prism Xbow] + + pci:v00001260d00003886sv000017CFsd00000037* +- ID_MODEL_FROM_DATABASE=XG-901 and clones Wireless Adapter ++ ID_MODEL_FROM_DATABASE=ISL3886 [Prism Javelin/Prism Xbow] (XG-901 and clones Wireless Adapter) + + pci:v00001260d00003890* + ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] + + pci:v00001260d00003890sv000010B8sd00002802* +- ID_MODEL_FROM_DATABASE=SMC2802W V1 Wireless PCI Adapter [ISL3890] ++ ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (SMC2802W V1 Wireless PCI Adapter [ISL3890]) + + pci:v00001260d00003890sv000010B8sd00002835* +- ID_MODEL_FROM_DATABASE=SMC2835W Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (SMC2835W Wireless Cardbus Adapter) + + pci:v00001260d00003890sv000010B8sd0000A835* +- ID_MODEL_FROM_DATABASE=SMC2835W V2 Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (SMC2835W V2 Wireless Cardbus Adapter) + + pci:v00001260d00003890sv00001113sd00004203* +- ID_MODEL_FROM_DATABASE=WN4201B ++ ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (WN4201B) + + pci:v00001260d00003890sv00001113sd00008201* +- ID_MODEL_FROM_DATABASE=T-Com T-Sinus 154pcicard Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (T-Com T-Sinus 154pcicard Wireless PCI Adapter) + + pci:v00001260d00003890sv00001113sd0000B301* +- ID_MODEL_FROM_DATABASE=T-Sinus 154card Cardbus ++ ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (T-Sinus 154card Cardbus) + + pci:v00001260d00003890sv00001113sd0000EE03* +- ID_MODEL_FROM_DATABASE=SMC2802W V2 Wireless PCI Adapter [ISL3886] ++ ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (SMC2802W V2 Wireless PCI Adapter [ISL3886]) + + pci:v00001260d00003890sv00001113sd0000EE08* +- ID_MODEL_FROM_DATABASE=SMC2835W V3 EU Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (SMC2835W V3 EU Wireless Cardbus Adapter) + + pci:v00001260d00003890sv00001186sd00003202* +- ID_MODEL_FROM_DATABASE=DWL-G650 A1 Wireless Adapter ++ ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (DWL-G650 A1 Wireless Adapter) + + pci:v00001260d00003890sv00001259sd0000C104* +- ID_MODEL_FROM_DATABASE=CG-WLCB54GT Wireless Adapter ++ ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (CG-WLCB54GT Wireless Adapter) + + pci:v00001260d00003890sv00001260sd00000000* +- ID_MODEL_FROM_DATABASE=WG511 v1 54 Mbps Wireless PC Card ++ ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (WG511 v1 54 Mbps Wireless PC Card) + + pci:v00001260d00003890sv00001385sd00004800* +- ID_MODEL_FROM_DATABASE=WG511 v2/v3 54 Mbps Wireless PC Card ++ ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (WG511 v2/v3 54 Mbps Wireless PC Card) + + pci:v00001260d00003890sv000016A5sd00001605* +- ID_MODEL_FROM_DATABASE=ALLNET ALL0271 Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (ALLNET ALL0271 Wireless PCI Adapter) + + pci:v00001260d00003890sv000017CFsd00000014* +- ID_MODEL_FROM_DATABASE=XG-600 and clones Wireless Adapter ++ ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (XG-600 and clones Wireless Adapter) + + pci:v00001260d00003890sv000017CFsd00000020* +- ID_MODEL_FROM_DATABASE=XG-900 and clones Wireless Adapter ++ ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (XG-900 and clones Wireless Adapter) + + pci:v00001260d00003890sv0000187Esd00003403* +- ID_MODEL_FROM_DATABASE=G-110 802.11g Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (G-110 802.11g Wireless Cardbus Adapter) + + pci:v00001260d00008130* + ID_MODEL_FROM_DATABASE=HMP8130 NTSC/PAL Video Decoder +@@ -37428,7 +37428,7 @@ pci:v00001260d0000FFFF* + ID_MODEL_FROM_DATABASE=ISL3886IK + + pci:v00001260d0000FFFFsv00001260sd00000000* +- ID_MODEL_FROM_DATABASE=Senao 3054MP+ (J) mini-PCI WLAN 802.11g adapter ++ ID_MODEL_FROM_DATABASE=ISL3886IK (Senao 3054MP+ (J) mini-PCI WLAN 802.11g adapter) + + pci:v00001261* + ID_VENDOR_FROM_DATABASE=Matsushita-Kotobuki Electronics Industries, Ltd. +@@ -37455,7 +37455,7 @@ pci:v00001266d00001910* + ID_MODEL_FROM_DATABASE=NE2000Plus (RT8029) Ethernet Adapter + + pci:v00001266d00001910sv00001266sd00001910* +- ID_MODEL_FROM_DATABASE=NE2000Plus Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=NE2000Plus (RT8029) Ethernet Adapter (NE2000Plus Ethernet Adapter) + + pci:v00001267* + ID_VENDOR_FROM_DATABASE=S. A. Telecommunications +@@ -37554,169 +37554,169 @@ pci:v00001274d00001371* + ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] + + pci:v00001274d00001371sv00000E11sd00000024* +- ID_MODEL_FROM_DATABASE=AudioPCI on Motherboard Compaq Deskpro ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (AudioPCI on Motherboard Compaq Deskpro) + + pci:v00001274d00001371sv00000E11sd0000B1A7* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI) + + pci:v00001274d00001371sv00001033sd000080AC* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI) + + pci:v00001274d00001371sv00001042sd00001854* +- ID_MODEL_FROM_DATABASE=Tazer ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (Tazer) + + pci:v00001274d00001371sv0000107Bsd00008054* +- ID_MODEL_FROM_DATABASE=Tabor2 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (Tabor2) + + pci:v00001274d00001371sv00001274sd00001371* +- ID_MODEL_FROM_DATABASE=AudioPCI 64V/128 / Creative Sound Blaster CT4810 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (AudioPCI 64V/128 / Creative Sound Blaster CT4810) + + pci:v00001274d00001371sv00001274sd00008001* +- ID_MODEL_FROM_DATABASE=CT4751 board ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (CT4751 board) + + pci:v00001274d00001371sv00001462sd00006470* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MS-6147 1.1A ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MS-6147 1.1A) + + pci:v00001274d00001371sv00001462sd00006560* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MS-6156 1.10 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MS-6156 1.10) + + pci:v00001274d00001371sv00001462sd00006630* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MS-6163BX 1.0A ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MS-6163BX 1.0A) + + pci:v00001274d00001371sv00001462sd00006631* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MS-6163VIA 1.0A ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MS-6163VIA 1.0A) + + pci:v00001274d00001371sv00001462sd00006632* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MS-6163BX 2.0A ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MS-6163BX 2.0A) + + pci:v00001274d00001371sv00001462sd00006633* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MS-6163VIA 2.0A ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MS-6163VIA 2.0A) + + pci:v00001274d00001371sv00001462sd00006820* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MS-6182 1.00 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MS-6182 1.00) + + pci:v00001274d00001371sv00001462sd00006822* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MS-6182 1.00A ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MS-6182 1.00A) + + pci:v00001274d00001371sv00001462sd00006830* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MS-6183 1.00 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MS-6183 1.00) + + pci:v00001274d00001371sv00001462sd00006880* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MS-6188 1.00 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MS-6188 1.00) + + pci:v00001274d00001371sv00001462sd00006900* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MS-6190 1.00 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MS-6190 1.00) + + pci:v00001274d00001371sv00001462sd00006910* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MS-6191 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MS-6191) + + pci:v00001274d00001371sv00001462sd00006930* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MS-6193 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MS-6193) + + pci:v00001274d00001371sv00001462sd00006990* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MS-6199BX 2.0A ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MS-6199BX 2.0A) + + pci:v00001274d00001371sv00001462sd00006991* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MS-6199VIA 2.0A ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MS-6199VIA 2.0A) + + pci:v00001274d00001371sv000014A4sd00002077* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard KR639 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard KR639) + + pci:v00001274d00001371sv000014A4sd00002105* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MR800 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MR800) + + pci:v00001274d00001371sv000014A4sd00002107* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard MR801 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard MR801) + + pci:v00001274d00001371sv000014A4sd00002172* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard DR739 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard DR739) + + pci:v00001274d00001371sv00001509sd00009902* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard KW11 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard KW11) + + pci:v00001274d00001371sv00001509sd00009903* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard KW31 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard KW31) + + pci:v00001274d00001371sv00001509sd00009904* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard KA11 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard KA11) + + pci:v00001274d00001371sv00001509sd00009905* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard KC13 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard KC13) + + pci:v00001274d00001371sv0000152Dsd00008801* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard CP810E ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard CP810E) + + pci:v00001274d00001371sv0000152Dsd00008802* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard CP810 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard CP810) + + pci:v00001274d00001371sv0000152Dsd00008803* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard P3810E ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard P3810E) + + pci:v00001274d00001371sv0000152Dsd00008804* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard P3810-S ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard P3810-S) + + pci:v00001274d00001371sv0000152Dsd00008805* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard P3820-S ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard P3820-S) + + pci:v00001274d00001371sv0000270Fsd00002001* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard 6CTR ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard 6CTR) + + pci:v00001274d00001371sv0000270Fsd00002200* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard 6WTX ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard 6WTX) + + pci:v00001274d00001371sv0000270Fsd00003000* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard 6WSV ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard 6WSV) + + pci:v00001274d00001371sv0000270Fsd00003100* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard 6WIV2 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard 6WIV2) + + pci:v00001274d00001371sv0000270Fsd00003102* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard 6WIV ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard 6WIV) + + pci:v00001274d00001371sv0000270Fsd00007060* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard 6ASA2 ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard 6ASA2) + + pci:v00001274d00001371sv00008086sd00004249* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard BI440ZX ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard BI440ZX) + + pci:v00001274d00001371sv00008086sd0000424C* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard BL440ZX ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard BL440ZX) + + pci:v00001274d00001371sv00008086sd0000425A* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard BZ440ZX ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard BZ440ZX) + + pci:v00001274d00001371sv00008086sd00004341* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard Cayman ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard Cayman) + + pci:v00001274d00001371sv00008086sd00004343* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard Cape Cod ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard Cape Cod) + + pci:v00001274d00001371sv00008086sd00004541* +- ID_MODEL_FROM_DATABASE=D815EEA Motherboard ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (D815EEA Motherboard) + + pci:v00001274d00001371sv00008086sd00004649* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard Fire Island ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard Fire Island) + + pci:v00001274d00001371sv00008086sd0000464A* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard FJ440ZX ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard FJ440ZX) + + pci:v00001274d00001371sv00008086sd00004D4F* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard Montreal ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard Montreal) + + pci:v00001274d00001371sv00008086sd00004F43* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard OC440LX ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard OC440LX) + + pci:v00001274d00001371sv00008086sd00005243* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard RC440BX ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard RC440BX) + + pci:v00001274d00001371sv00008086sd00005352* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard SunRiver ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard SunRiver) + + pci:v00001274d00001371sv00008086sd00005643* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard Vancouver ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard Vancouver) + + pci:v00001274d00001371sv00008086sd00005753* +- ID_MODEL_FROM_DATABASE=ES1371, ES1373 AudioPCI On Motherboard WS440BX ++ ID_MODEL_FROM_DATABASE=ES1371 / Creative Labs CT2518 [AudioPCI-97] (ES1371, ES1373 AudioPCI On Motherboard WS440BX) + + pci:v00001274d00005000* + ID_MODEL_FROM_DATABASE=ES1370 [AudioPCI] +@@ -37725,31 +37725,31 @@ pci:v00001274d00005880* + ID_MODEL_FROM_DATABASE=5880B [AudioPCI] + + pci:v00001274d00005880sv00001274sd00002000* +- ID_MODEL_FROM_DATABASE=Creative Sound Blaster AudioPCI128 ++ ID_MODEL_FROM_DATABASE=5880B [AudioPCI] (Creative Sound Blaster AudioPCI128) + + pci:v00001274d00005880sv00001274sd00002003* +- ID_MODEL_FROM_DATABASE=Creative SoundBlaster AudioPCI 128 ++ ID_MODEL_FROM_DATABASE=5880B [AudioPCI] (Creative SoundBlaster AudioPCI 128) + + pci:v00001274d00005880sv00001274sd00005880* +- ID_MODEL_FROM_DATABASE=Creative Sound Blaster AudioPCI128 ++ ID_MODEL_FROM_DATABASE=5880B [AudioPCI] (Creative Sound Blaster AudioPCI128) + + pci:v00001274d00005880sv00001274sd00008001* +- ID_MODEL_FROM_DATABASE=Sound Blaster 16PCI 4.1ch ++ ID_MODEL_FROM_DATABASE=5880B [AudioPCI] (Sound Blaster 16PCI 4.1ch) + + pci:v00001274d00005880sv00001458sd0000A000* +- ID_MODEL_FROM_DATABASE=5880 AudioPCI On Motherboard 6OXET ++ ID_MODEL_FROM_DATABASE=5880B [AudioPCI] (5880 AudioPCI On Motherboard 6OXET) + + pci:v00001274d00005880sv00001462sd00006880* +- ID_MODEL_FROM_DATABASE=5880 AudioPCI On Motherboard MS-6188 1.00 ++ ID_MODEL_FROM_DATABASE=5880B [AudioPCI] (5880 AudioPCI On Motherboard MS-6188 1.00) + + pci:v00001274d00005880sv0000270Fsd00002001* +- ID_MODEL_FROM_DATABASE=5880 AudioPCI On Motherboard 6CTR ++ ID_MODEL_FROM_DATABASE=5880B [AudioPCI] (5880 AudioPCI On Motherboard 6CTR) + + pci:v00001274d00005880sv0000270Fsd00002200* +- ID_MODEL_FROM_DATABASE=5880 AudioPCI On Motherboard 6WTX ++ ID_MODEL_FROM_DATABASE=5880B [AudioPCI] (5880 AudioPCI On Motherboard 6WTX) + + pci:v00001274d00005880sv0000270Fsd00007040* +- ID_MODEL_FROM_DATABASE=5880 AudioPCI On Motherboard 6ATA4 ++ ID_MODEL_FROM_DATABASE=5880B [AudioPCI] (5880 AudioPCI On Motherboard 6ATA4) + + pci:v00001274d00008001* + ID_MODEL_FROM_DATABASE=CT5880 [AudioPCI] +@@ -37809,181 +37809,181 @@ pci:v0000127Ad00001002* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem + + pci:v0000127Ad00001002sv00001092sd0000094C* +- ID_MODEL_FROM_DATABASE=SupraExpress 56i PRO [Diamond SUP2380] ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (SupraExpress 56i PRO [Diamond SUP2380]) + + pci:v0000127Ad00001002sv0000122Dsd00004002* +- ID_MODEL_FROM_DATABASE=HPG / MDP3858-U ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (HPG / MDP3858-U) + + pci:v0000127Ad00001002sv0000122Dsd00004005* +- ID_MODEL_FROM_DATABASE=MDP3858-E ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (MDP3858-E) + + pci:v0000127Ad00001002sv0000122Dsd00004007* +- ID_MODEL_FROM_DATABASE=MDP3858-A/-NZ ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (MDP3858-A/-NZ) + + pci:v0000127Ad00001002sv0000122Dsd00004012* +- ID_MODEL_FROM_DATABASE=MDP3858-SA ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (MDP3858-SA) + + pci:v0000127Ad00001002sv0000122Dsd00004017* +- ID_MODEL_FROM_DATABASE=MDP3858-W ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (MDP3858-W) + + pci:v0000127Ad00001002sv0000122Dsd00004018* +- ID_MODEL_FROM_DATABASE=MDP3858-W ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (MDP3858-W) + + pci:v0000127Ad00001002sv0000127Asd00001002* +- ID_MODEL_FROM_DATABASE=Rockwell 56K D/F HCF Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (Rockwell 56K D/F HCF Modem) + + pci:v0000127Ad00001003* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem + + pci:v0000127Ad00001003sv00000E11sd0000B0BC* +- ID_MODEL_FROM_DATABASE=229-DF Zephyr ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (229-DF Zephyr) + + pci:v0000127Ad00001003sv00000E11sd0000B114* +- ID_MODEL_FROM_DATABASE=229-DF Cheetah ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (229-DF Cheetah) + + pci:v0000127Ad00001003sv00001033sd0000802B* +- ID_MODEL_FROM_DATABASE=229-DF ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (229-DF) + + pci:v0000127Ad00001003sv000013DFsd00001003* +- ID_MODEL_FROM_DATABASE=PCI56RX Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (PCI56RX Modem) + + pci:v0000127Ad00001003sv000013E0sd00000117* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM) + + pci:v0000127Ad00001003sv000013E0sd00000147* +- ID_MODEL_FROM_DATABASE=IBM F-1156IV+/R3 Spain V.90 Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM F-1156IV+/R3 Spain V.90 Modem) + + pci:v0000127Ad00001003sv000013E0sd00000197* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM) + + pci:v0000127Ad00001003sv000013E0sd000001C7* +- ID_MODEL_FROM_DATABASE=IBM F-1156IV+/R3 WW V.90 Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM F-1156IV+/R3 WW V.90 Modem) + + pci:v0000127Ad00001003sv000013E0sd000001F7* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM) + + pci:v0000127Ad00001003sv00001436sd00001003* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM) + + pci:v0000127Ad00001003sv00001436sd00001103* +- ID_MODEL_FROM_DATABASE=IBM 5614PM3G V.90 Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM 5614PM3G V.90 Modem) + + pci:v0000127Ad00001003sv00001436sd00001602* +- ID_MODEL_FROM_DATABASE=Compaq 229-DF Ducati ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (Compaq 229-DF Ducati) + + pci:v0000127Ad00001004* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice Modem + + pci:v0000127Ad00001004sv00001048sd00001500* +- ID_MODEL_FROM_DATABASE=MicroLink 56k Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice Modem (MicroLink 56k Modem) + + pci:v0000127Ad00001004sv000010CFsd00001059* +- ID_MODEL_FROM_DATABASE=Fujitsu 229-DFRT ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice Modem (Fujitsu 229-DFRT) + + pci:v0000127Ad00001005* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem + + pci:v0000127Ad00001005sv00001005sd0000127A* +- ID_MODEL_FROM_DATABASE=AOpen FM56-P ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (AOpen FM56-P) + + pci:v0000127Ad00001005sv00001033sd00008029* +- ID_MODEL_FROM_DATABASE=229-DFSV ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (229-DFSV) + + pci:v0000127Ad00001005sv00001033sd00008054* +- ID_MODEL_FROM_DATABASE=Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (Modem) + + pci:v0000127Ad00001005sv000010CFsd0000103C* +- ID_MODEL_FROM_DATABASE=Fujitsu ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (Fujitsu) + + pci:v0000127Ad00001005sv000010CFsd00001055* +- ID_MODEL_FROM_DATABASE=Fujitsu 229-DFSV ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (Fujitsu 229-DFSV) + + pci:v0000127Ad00001005sv000010CFsd00001056* +- ID_MODEL_FROM_DATABASE=Fujitsu 229-DFSV ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (Fujitsu 229-DFSV) + + pci:v0000127Ad00001005sv0000122Dsd00004003* +- ID_MODEL_FROM_DATABASE=MDP3858SP-U ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (MDP3858SP-U) + + pci:v0000127Ad00001005sv0000122Dsd00004006* +- ID_MODEL_FROM_DATABASE=Packard Bell MDP3858V-E ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (Packard Bell MDP3858V-E) + + pci:v0000127Ad00001005sv0000122Dsd00004008* +- ID_MODEL_FROM_DATABASE=MDP3858SP-A/SP-NZ ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (MDP3858SP-A/SP-NZ) + + pci:v0000127Ad00001005sv0000122Dsd00004009* +- ID_MODEL_FROM_DATABASE=MDP3858SP-E ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (MDP3858SP-E) + + pci:v0000127Ad00001005sv0000122Dsd00004010* +- ID_MODEL_FROM_DATABASE=MDP3858V-U ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (MDP3858V-U) + + pci:v0000127Ad00001005sv0000122Dsd00004011* +- ID_MODEL_FROM_DATABASE=MDP3858SP-SA ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (MDP3858SP-SA) + + pci:v0000127Ad00001005sv0000122Dsd00004013* +- ID_MODEL_FROM_DATABASE=MDP3858V-A/V-NZ ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (MDP3858V-A/V-NZ) + + pci:v0000127Ad00001005sv0000122Dsd00004015* +- ID_MODEL_FROM_DATABASE=MDP3858SP-W ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (MDP3858SP-W) + + pci:v0000127Ad00001005sv0000122Dsd00004016* +- ID_MODEL_FROM_DATABASE=MDP3858V-W ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (MDP3858V-W) + + pci:v0000127Ad00001005sv0000122Dsd00004019* +- ID_MODEL_FROM_DATABASE=MDP3858V-SA ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (MDP3858V-SA) + + pci:v0000127Ad00001005sv000013DFsd00001005* +- ID_MODEL_FROM_DATABASE=PCI56RVP Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (PCI56RVP Modem) + + pci:v0000127Ad00001005sv000013E0sd00000187* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (IBM) + + pci:v0000127Ad00001005sv000013E0sd000001A7* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (IBM) + + pci:v0000127Ad00001005sv000013E0sd000001B7* +- ID_MODEL_FROM_DATABASE=IBM DF-1156IV+/R3 Spain V.90 Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (IBM DF-1156IV+/R3 Spain V.90 Modem) + + pci:v0000127Ad00001005sv000013E0sd000001D7* +- ID_MODEL_FROM_DATABASE=IBM DF-1156IV+/R3 WW V.90 Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (IBM DF-1156IV+/R3 WW V.90 Modem) + + pci:v0000127Ad00001005sv00001436sd00001005* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (IBM) + + pci:v0000127Ad00001005sv00001436sd00001105* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (IBM) + + pci:v0000127Ad00001005sv00001437sd00001105* +- ID_MODEL_FROM_DATABASE=IBM 5614PS3G V.90 Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (IBM 5614PS3G V.90 Modem) + + pci:v0000127Ad00001022* + ID_MODEL_FROM_DATABASE=HCF 56k Modem + + pci:v0000127Ad00001022sv00001436sd00001303* +- ID_MODEL_FROM_DATABASE=M3-5614PM3G V.90 Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Modem (M3-5614PM3G V.90 Modem) + + pci:v0000127Ad00001023* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem + + pci:v0000127Ad00001023sv0000122Dsd00004020* +- ID_MODEL_FROM_DATABASE=Packard Bell MDP3858-WE ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (Packard Bell MDP3858-WE) + + pci:v0000127Ad00001023sv0000122Dsd00004023* +- ID_MODEL_FROM_DATABASE=MDP3858-UE ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (MDP3858-UE) + + pci:v0000127Ad00001023sv000013E0sd00000247* +- ID_MODEL_FROM_DATABASE=IBM F-1156IV+/R6 Spain V.90 Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM F-1156IV+/R6 Spain V.90 Modem) + + pci:v0000127Ad00001023sv000013E0sd00000297* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM) + + pci:v0000127Ad00001023sv000013E0sd000002C7* +- ID_MODEL_FROM_DATABASE=IBM F-1156IV+/R6 WW V.90 Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM F-1156IV+/R6 WW V.90 Modem) + + pci:v0000127Ad00001023sv00001436sd00001203* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM) + + pci:v0000127Ad00001023sv00001436sd00001303* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM) + + pci:v0000127Ad00001024* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice Modem +@@ -37992,19 +37992,19 @@ pci:v0000127Ad00001025* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem + + pci:v0000127Ad00001025sv000010CFsd0000106A* +- ID_MODEL_FROM_DATABASE=Fujitsu 235-DFSV ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (Fujitsu 235-DFSV) + + pci:v0000127Ad00001025sv0000122Dsd00004021* +- ID_MODEL_FROM_DATABASE=Packard Bell MDP3858V-WE ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (Packard Bell MDP3858V-WE) + + pci:v0000127Ad00001025sv0000122Dsd00004022* +- ID_MODEL_FROM_DATABASE=MDP3858SP-WE ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (MDP3858SP-WE) + + pci:v0000127Ad00001025sv0000122Dsd00004024* +- ID_MODEL_FROM_DATABASE=MDP3858V-UE ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (MDP3858V-UE) + + pci:v0000127Ad00001025sv0000122Dsd00004025* +- ID_MODEL_FROM_DATABASE=MDP3858SP-UE ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (MDP3858SP-UE) + + pci:v0000127Ad00001026* + ID_MODEL_FROM_DATABASE=HCF 56k PCI Speakerphone Modem +@@ -38034,85 +38034,85 @@ pci:v0000127Ad00002005* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem + + pci:v0000127Ad00002005sv0000104Dsd00008044* +- ID_MODEL_FROM_DATABASE=229-DFSV ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (229-DFSV) + + pci:v0000127Ad00002005sv0000104Dsd00008045* +- ID_MODEL_FROM_DATABASE=229-DFSV ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (229-DFSV) + + pci:v0000127Ad00002005sv0000104Dsd00008055* +- ID_MODEL_FROM_DATABASE=PBE/Aztech 235W-DFSV ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (PBE/Aztech 235W-DFSV) + + pci:v0000127Ad00002005sv0000104Dsd00008056* +- ID_MODEL_FROM_DATABASE=235-DFSV ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (235-DFSV) + + pci:v0000127Ad00002005sv0000104Dsd0000805A* +- ID_MODEL_FROM_DATABASE=Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (Modem) + + pci:v0000127Ad00002005sv0000104Dsd0000805F* +- ID_MODEL_FROM_DATABASE=Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (Modem) + + pci:v0000127Ad00002005sv0000104Dsd00008074* +- ID_MODEL_FROM_DATABASE=Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (Modem) + + pci:v0000127Ad00002013* + ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem + + pci:v0000127Ad00002013sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Modem ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem (Modem) + + pci:v0000127Ad00002013sv00001179sd0000FF00* +- ID_MODEL_FROM_DATABASE=Modem ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem (Modem) + + pci:v0000127Ad00002014* + ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice Modem + + pci:v0000127Ad00002014sv000010CFsd00001057* +- ID_MODEL_FROM_DATABASE=Fujitsu Citicorp III ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice Modem (Fujitsu Citicorp III) + + pci:v0000127Ad00002014sv0000122Dsd00004050* +- ID_MODEL_FROM_DATABASE=MSP3880-U ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice Modem (MSP3880-U) + + pci:v0000127Ad00002014sv0000122Dsd00004055* +- ID_MODEL_FROM_DATABASE=MSP3880-W ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice Modem (MSP3880-W) + + pci:v0000127Ad00002015* + ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice/Spkp (w/Handset) Modem + + pci:v0000127Ad00002015sv000010CFsd00001063* +- ID_MODEL_FROM_DATABASE=Fujitsu ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (Fujitsu) + + pci:v0000127Ad00002015sv000010CFsd00001064* +- ID_MODEL_FROM_DATABASE=Fujitsu ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (Fujitsu) + + pci:v0000127Ad00002015sv00001468sd00002015* +- ID_MODEL_FROM_DATABASE=Fujitsu ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (Fujitsu) + + pci:v0000127Ad00002016* + ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice/Spkp Modem + + pci:v0000127Ad00002016sv0000122Dsd00004051* +- ID_MODEL_FROM_DATABASE=MSP3880V-W ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice/Spkp Modem (MSP3880V-W) + + pci:v0000127Ad00002016sv0000122Dsd00004052* +- ID_MODEL_FROM_DATABASE=MSP3880SP-W ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice/Spkp Modem (MSP3880SP-W) + + pci:v0000127Ad00002016sv0000122Dsd00004054* +- ID_MODEL_FROM_DATABASE=MSP3880V-U ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice/Spkp Modem (MSP3880V-U) + + pci:v0000127Ad00002016sv0000122Dsd00004056* +- ID_MODEL_FROM_DATABASE=MSP3880SP-U ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice/Spkp Modem (MSP3880SP-U) + + pci:v0000127Ad00002016sv0000122Dsd00004057* +- ID_MODEL_FROM_DATABASE=MSP3880SP-A ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice/Spkp Modem (MSP3880SP-A) + + pci:v0000127Ad00004311* + ID_MODEL_FROM_DATABASE=Riptide HSF 56k PCI Modem + + pci:v0000127Ad00004311sv0000127Asd00004311* +- ID_MODEL_FROM_DATABASE=Ring Modular? Riptide HSF RT HP Dom ++ ID_MODEL_FROM_DATABASE=Riptide HSF 56k PCI Modem (Ring Modular? Riptide HSF RT HP Dom) + + pci:v0000127Ad00004311sv000013E0sd00000210* +- ID_MODEL_FROM_DATABASE=HP-GVC ++ ID_MODEL_FROM_DATABASE=Riptide HSF 56k PCI Modem (HP-GVC) + + pci:v0000127Ad00004320* + ID_MODEL_FROM_DATABASE=Riptide PCI Audio Controller +@@ -38124,16 +38124,16 @@ pci:v0000127Ad00004321* + ID_MODEL_FROM_DATABASE=Riptide HCF 56k PCI Modem + + pci:v0000127Ad00004321sv00001235sd00004321* +- ID_MODEL_FROM_DATABASE=Hewlett Packard DF ++ ID_MODEL_FROM_DATABASE=Riptide HCF 56k PCI Modem (Hewlett Packard DF) + + pci:v0000127Ad00004321sv00001235sd00004324* +- ID_MODEL_FROM_DATABASE=Hewlett Packard DF ++ ID_MODEL_FROM_DATABASE=Riptide HCF 56k PCI Modem (Hewlett Packard DF) + + pci:v0000127Ad00004321sv000013E0sd00000210* +- ID_MODEL_FROM_DATABASE=Hewlett Packard DF ++ ID_MODEL_FROM_DATABASE=Riptide HCF 56k PCI Modem (Hewlett Packard DF) + + pci:v0000127Ad00004321sv0000144Dsd00002321* +- ID_MODEL_FROM_DATABASE=Riptide ++ ID_MODEL_FROM_DATABASE=Riptide HCF 56k PCI Modem (Riptide) + + pci:v0000127Ad00004322* + ID_MODEL_FROM_DATABASE=Riptide PCI Game Controller +@@ -38190,7 +38190,7 @@ pci:v00001282d00009102* + ID_MODEL_FROM_DATABASE=21x4x DEC-Tulip compatible 10/100 Ethernet + + pci:v00001282d00009102sv00000291sd00008212* +- ID_MODEL_FROM_DATABASE=DM9102A (DM9102AE, SM9102AF) Ethernet 100/10 MBit ++ ID_MODEL_FROM_DATABASE=21x4x DEC-Tulip compatible 10/100 Ethernet (DM9102A (DM9102AE, SM9102AF) Ethernet 100/10 MBit) + + pci:v00001282d00009132* + ID_MODEL_FROM_DATABASE=Ethernet 100/10 MBit +@@ -38208,19 +38208,19 @@ pci:v00001283d00008211* + ID_MODEL_FROM_DATABASE=ITE 8211F Single Channel UDMA 133 + + pci:v00001283d00008211sv00001043sd00008138* +- ID_MODEL_FROM_DATABASE=P5GD1-VW Mainboard ++ ID_MODEL_FROM_DATABASE=ITE 8211F Single Channel UDMA 133 (P5GD1-VW Mainboard) + + pci:v00001283d00008212* + ID_MODEL_FROM_DATABASE=IT8212 Dual channel ATA RAID controller + + pci:v00001283d00008212sv00001283sd00000001* +- ID_MODEL_FROM_DATABASE=IT/ITE8212 Dual channel ATA RAID controller ++ ID_MODEL_FROM_DATABASE=IT8212 Dual channel ATA RAID controller (IT/ITE8212 Dual channel ATA RAID controller) + + pci:v00001283d00008213* + ID_MODEL_FROM_DATABASE=IT8213 IDE Controller + + pci:v00001283d00008213sv00001458sd0000B000* +- ID_MODEL_FROM_DATABASE=GA-EG45M-DS2H Mainboard ++ ID_MODEL_FROM_DATABASE=IT8213 IDE Controller (GA-EG45M-DS2H Mainboard) + + pci:v00001283d00008330* + ID_MODEL_FROM_DATABASE=IT8330G +@@ -38451,19 +38451,19 @@ pci:v000012AEd00000001* + ID_MODEL_FROM_DATABASE=AceNIC Gigabit Ethernet + + pci:v000012AEd00000001sv00001014sd00000104* +- ID_MODEL_FROM_DATABASE=Gigabit Ethernet-SX PCI Adapter ++ ID_MODEL_FROM_DATABASE=AceNIC Gigabit Ethernet (Gigabit Ethernet-SX PCI Adapter) + + pci:v000012AEd00000001sv000012AEsd00000001* +- ID_MODEL_FROM_DATABASE=Gigabit Ethernet-SX (Universal) ++ ID_MODEL_FROM_DATABASE=AceNIC Gigabit Ethernet (Gigabit Ethernet-SX (Universal)) + + pci:v000012AEd00000002* + ID_MODEL_FROM_DATABASE=AceNIC Gigabit Ethernet (Copper) + + pci:v000012AEd00000002sv000010A9sd00008002* +- ID_MODEL_FROM_DATABASE=Acenic Gigabit Ethernet ++ ID_MODEL_FROM_DATABASE=AceNIC Gigabit Ethernet (Copper) (Acenic Gigabit Ethernet) + + pci:v000012AEd00000002sv000012AEsd00000002* +- ID_MODEL_FROM_DATABASE=Gigabit Ethernet-T (3C986-T) ++ ID_MODEL_FROM_DATABASE=AceNIC Gigabit Ethernet (Copper) (Gigabit Ethernet-T (3C986-T)) + + pci:v000012AEd000000FA* + ID_MODEL_FROM_DATABASE=Farallon PN9100-T Gigabit Ethernet +@@ -38505,64 +38505,64 @@ pci:v000012B9d00001006* + ID_MODEL_FROM_DATABASE=WinModem + + pci:v000012B9d00001006sv000012B9sd0000005C* +- ID_MODEL_FROM_DATABASE=USR 56k Internal Voice WinModem (Model 3472) ++ ID_MODEL_FROM_DATABASE=WinModem (USR 56k Internal Voice WinModem (Model 3472)) + + pci:v000012B9d00001006sv000012B9sd0000005E* +- ID_MODEL_FROM_DATABASE=USR 56k Internal WinModem (Models 662975) ++ ID_MODEL_FROM_DATABASE=WinModem (USR 56k Internal WinModem (Models 662975)) + + pci:v000012B9d00001006sv000012B9sd00000062* +- ID_MODEL_FROM_DATABASE=USR 56k Internal Voice WinModem (Model 662978) ++ ID_MODEL_FROM_DATABASE=WinModem (USR 56k Internal Voice WinModem (Model 662978)) + + pci:v000012B9d00001006sv000012B9sd00000068* +- ID_MODEL_FROM_DATABASE=USR 56k Internal Voice WinModem (Model 5690) ++ ID_MODEL_FROM_DATABASE=WinModem (USR 56k Internal Voice WinModem (Model 5690)) + + pci:v000012B9d00001006sv000012B9sd0000007A* +- ID_MODEL_FROM_DATABASE=USR 56k Internal Voice WinModem (Model 662974) ++ ID_MODEL_FROM_DATABASE=WinModem (USR 56k Internal Voice WinModem (Model 662974)) + + pci:v000012B9d00001006sv000012B9sd0000007F* +- ID_MODEL_FROM_DATABASE=USR 56k Internal WinModem (Models 5698, 5699) ++ ID_MODEL_FROM_DATABASE=WinModem (USR 56k Internal WinModem (Models 5698, 5699)) + + pci:v000012B9d00001006sv000012B9sd00000080* +- ID_MODEL_FROM_DATABASE=USR 56k Internal WinModem (Models 2975, 3528) ++ ID_MODEL_FROM_DATABASE=WinModem (USR 56k Internal WinModem (Models 2975, 3528)) + + pci:v000012B9d00001006sv000012B9sd00000081* +- ID_MODEL_FROM_DATABASE=USR 56k Internal Voice WinModem (Models 2974, 3529) ++ ID_MODEL_FROM_DATABASE=WinModem (USR 56k Internal Voice WinModem (Models 2974, 3529)) + + pci:v000012B9d00001006sv000012B9sd00000091* +- ID_MODEL_FROM_DATABASE=USR 56k Internal Voice WinModem (Model 2978) ++ ID_MODEL_FROM_DATABASE=WinModem (USR 56k Internal Voice WinModem (Model 2978)) + + pci:v000012B9d00001007* + ID_MODEL_FROM_DATABASE=USR 56k Internal WinModem + + pci:v000012B9d00001007sv000012B9sd000000A3* +- ID_MODEL_FROM_DATABASE=USR 56k Internal WinModem (Model 3595) ++ ID_MODEL_FROM_DATABASE=USR 56k Internal WinModem ((Model 3595)) + + pci:v000012B9d00001007sv000012B9sd000000C4* +- ID_MODEL_FROM_DATABASE=U.S. Robotics V.92 Voice Faxmodem (2884A/B/C) ++ ID_MODEL_FROM_DATABASE=USR 56k Internal WinModem (U.S. Robotics V.92 Voice Faxmodem (2884A/B/C)) + + pci:v000012B9d00001008* + ID_MODEL_FROM_DATABASE=56K FaxModem Model 5610 + + pci:v000012B9d00001008sv000012B9sd000000A2* +- ID_MODEL_FROM_DATABASE=USR 56k Internal FAX Modem (Model 2977) ++ ID_MODEL_FROM_DATABASE=56K FaxModem Model 5610 (USR 56k Internal FAX Modem (Model 2977)) + + pci:v000012B9d00001008sv000012B9sd000000AA* +- ID_MODEL_FROM_DATABASE=USR 56k Internal Voice Modem (Model 2976) ++ ID_MODEL_FROM_DATABASE=56K FaxModem Model 5610 (USR 56k Internal Voice Modem (Model 2976)) + + pci:v000012B9d00001008sv000012B9sd000000AB* +- ID_MODEL_FROM_DATABASE=USR 56k Internal Voice Modem (Model 5609) ++ ID_MODEL_FROM_DATABASE=56K FaxModem Model 5610 (USR 56k Internal Voice Modem (Model 5609)) + + pci:v000012B9d00001008sv000012B9sd000000AC* +- ID_MODEL_FROM_DATABASE=USR 56k Internal Voice Modem (Model 3298) ++ ID_MODEL_FROM_DATABASE=56K FaxModem Model 5610 (USR 56k Internal Voice Modem (Model 3298)) + + pci:v000012B9d00001008sv000012B9sd000000AD* +- ID_MODEL_FROM_DATABASE=USR 56k Internal FAX Modem (Model 5610) ++ ID_MODEL_FROM_DATABASE=56K FaxModem Model 5610 (USR 56k Internal FAX Modem (Model 5610)) + + pci:v000012B9d00001008sv000012B9sd000000D3* +- ID_MODEL_FROM_DATABASE=USR 56K Internal V92 FAX Modem (Model 5610) ++ ID_MODEL_FROM_DATABASE=56K FaxModem Model 5610 (USR 56K Internal V92 FAX Modem (Model 5610)) + + pci:v000012B9d00001008sv000012B9sd0000BABA* +- ID_MODEL_FROM_DATABASE=USR 56K Internal Voice Modem 3CP3298-DEL (Model 5601) [Hawk] ++ ID_MODEL_FROM_DATABASE=56K FaxModem Model 5610 (USR 56K Internal Voice Modem 3CP3298-DEL (Model 5601) [Hawk]) + + pci:v000012BA* + ID_VENDOR_FROM_DATABASE=BittWare, Inc. +@@ -38586,7 +38586,7 @@ pci:v000012BEd00003042* + ID_MODEL_FROM_DATABASE=AN3042Q CO-MEM Lite + + pci:v000012BEd00003042sv000012BEsd00003042* +- ID_MODEL_FROM_DATABASE=Anchor Chips Lite Evaluation Board ++ ID_MODEL_FROM_DATABASE=AN3042Q CO-MEM Lite (Anchor Chips Lite Evaluation Board) + + pci:v000012BF* + ID_VENDOR_FROM_DATABASE=Fujifilm Microdevices +@@ -38781,58 +38781,58 @@ pci:v000012D2d00000018* + ID_MODEL_FROM_DATABASE=Riva128 + + pci:v000012D2d00000018sv00001048sd00000C10* +- ID_MODEL_FROM_DATABASE=VICTORY Erazor ++ ID_MODEL_FROM_DATABASE=Riva128 (VICTORY Erazor) + + pci:v000012D2d00000018sv0000107Bsd00008030* +- ID_MODEL_FROM_DATABASE=STB Velocity 128 ++ ID_MODEL_FROM_DATABASE=Riva128 (STB Velocity 128) + + pci:v000012D2d00000018sv00001092sd00000350* +- ID_MODEL_FROM_DATABASE=Viper V330 ++ ID_MODEL_FROM_DATABASE=Riva128 (Viper V330) + + pci:v000012D2d00000018sv00001092sd00001092* +- ID_MODEL_FROM_DATABASE=Viper V330 ++ ID_MODEL_FROM_DATABASE=Riva128 (Viper V330) + + pci:v000012D2d00000018sv000010B4sd00001B1B* +- ID_MODEL_FROM_DATABASE=STB Velocity 128 ++ ID_MODEL_FROM_DATABASE=Riva128 (STB Velocity 128) + + pci:v000012D2d00000018sv000010B4sd00001B1D* +- ID_MODEL_FROM_DATABASE=STB Velocity 128 ++ ID_MODEL_FROM_DATABASE=Riva128 (STB Velocity 128) + + pci:v000012D2d00000018sv000010B4sd00001B1E* +- ID_MODEL_FROM_DATABASE=STB Velocity 128, PAL TV-Out ++ ID_MODEL_FROM_DATABASE=Riva128 (STB Velocity 128, PAL TV-Out) + + pci:v000012D2d00000018sv000010B4sd00001B20* +- ID_MODEL_FROM_DATABASE=STB Velocity 128 Sapphire ++ ID_MODEL_FROM_DATABASE=Riva128 (STB Velocity 128 Sapphire) + + pci:v000012D2d00000018sv000010B4sd00001B21* +- ID_MODEL_FROM_DATABASE=STB Velocity 128 ++ ID_MODEL_FROM_DATABASE=Riva128 (STB Velocity 128) + + pci:v000012D2d00000018sv000010B4sd00001B22* +- ID_MODEL_FROM_DATABASE=STB Velocity 128 AGP, NTSC TV-Out ++ ID_MODEL_FROM_DATABASE=Riva128 (STB Velocity 128 AGP, NTSC TV-Out) + + pci:v000012D2d00000018sv000010B4sd00001B23* +- ID_MODEL_FROM_DATABASE=STB Velocity 128 AGP, PAL TV-Out ++ ID_MODEL_FROM_DATABASE=Riva128 (STB Velocity 128 AGP, PAL TV-Out) + + pci:v000012D2d00000018sv000010B4sd00001B27* +- ID_MODEL_FROM_DATABASE=STB Velocity 128 DVD ++ ID_MODEL_FROM_DATABASE=Riva128 (STB Velocity 128 DVD) + + pci:v000012D2d00000018sv000010B4sd00001B88* +- ID_MODEL_FROM_DATABASE=MVP Pro 128 ++ ID_MODEL_FROM_DATABASE=Riva128 (MVP Pro 128) + + pci:v000012D2d00000018sv000010B4sd0000222A* +- ID_MODEL_FROM_DATABASE=STB Velocity 128 AGP ++ ID_MODEL_FROM_DATABASE=Riva128 (STB Velocity 128 AGP) + + pci:v000012D2d00000018sv000010B4sd00002230* +- ID_MODEL_FROM_DATABASE=STB Velocity 128 ++ ID_MODEL_FROM_DATABASE=Riva128 (STB Velocity 128) + + pci:v000012D2d00000018sv000010B4sd00002232* +- ID_MODEL_FROM_DATABASE=STB Velocity 128 ++ ID_MODEL_FROM_DATABASE=Riva128 (STB Velocity 128) + + pci:v000012D2d00000018sv000010B4sd00002235* +- ID_MODEL_FROM_DATABASE=STB Velocity 128 AGP ++ ID_MODEL_FROM_DATABASE=Riva128 (STB Velocity 128 AGP) + + pci:v000012D2d00000018sv00002A15sd000054A3* +- ID_MODEL_FROM_DATABASE=3DVision-SAGP / 3DexPlorer 3000 ++ ID_MODEL_FROM_DATABASE=Riva128 (3DVision-SAGP / 3DexPlorer 3000) + + pci:v000012D2d00000019* + ID_MODEL_FROM_DATABASE=Riva128ZX +@@ -38916,7 +38916,7 @@ pci:v000012D8d0000E110* + ID_MODEL_FROM_DATABASE=PI7C9X110 PCI Express to PCI bridge + + pci:v000012D8d0000E110sv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 CompactPCI Bridge ++ ID_MODEL_FROM_DATABASE=PI7C9X110 PCI Express to PCI bridge (CC11/CL11 CompactPCI Bridge) + + pci:v000012D8d0000E111* + ID_MODEL_FROM_DATABASE=PI7C9X111SL PCIe-to-PCI Reversible Bridge +@@ -38940,10 +38940,10 @@ pci:v000012D9d00001078* + ID_MODEL_FROM_DATABASE=Prosody X class e1000 device + + pci:v000012D9d00001078sv000012D9sd0000000D* +- ID_MODEL_FROM_DATABASE=Prosody X PCI ++ ID_MODEL_FROM_DATABASE=Prosody X class e1000 device (Prosody X PCI) + + pci:v000012D9d00001078sv000012D9sd0000000E* +- ID_MODEL_FROM_DATABASE=Prosody X cPCI ++ ID_MODEL_FROM_DATABASE=Prosody X class e1000 device (Prosody X cPCI) + + pci:v000012DA* + ID_VENDOR_FROM_DATABASE=True Time Inc. +@@ -39015,67 +39015,67 @@ pci:v000012EBd00000001* + ID_MODEL_FROM_DATABASE=Vortex 1 + + pci:v000012EBd00000001sv0000104Dsd00008036* +- ID_MODEL_FROM_DATABASE=AU8820 Vortex Digital Audio Processor ++ ID_MODEL_FROM_DATABASE=Vortex 1 (AU8820 Vortex Digital Audio Processor) + + pci:v000012EBd00000001sv00001092sd00002000* +- ID_MODEL_FROM_DATABASE=Sonic Impact A3D ++ ID_MODEL_FROM_DATABASE=Vortex 1 (Sonic Impact A3D) + + pci:v000012EBd00000001sv00001092sd00002100* +- ID_MODEL_FROM_DATABASE=Sonic Impact A3D ++ ID_MODEL_FROM_DATABASE=Vortex 1 (Sonic Impact A3D) + + pci:v000012EBd00000001sv00001092sd00002110* +- ID_MODEL_FROM_DATABASE=Sonic Impact A3D ++ ID_MODEL_FROM_DATABASE=Vortex 1 (Sonic Impact A3D) + + pci:v000012EBd00000001sv00001092sd00002200* +- ID_MODEL_FROM_DATABASE=Sonic Impact A3D ++ ID_MODEL_FROM_DATABASE=Vortex 1 (Sonic Impact A3D) + + pci:v000012EBd00000001sv0000122Dsd00001002* +- ID_MODEL_FROM_DATABASE=AU8820 Vortex Digital Audio Processor ++ ID_MODEL_FROM_DATABASE=Vortex 1 (AU8820 Vortex Digital Audio Processor) + + pci:v000012EBd00000001sv000012EBsd00000001* +- ID_MODEL_FROM_DATABASE=AU8820 Vortex Digital Audio Processor ++ ID_MODEL_FROM_DATABASE=Vortex 1 (AU8820 Vortex Digital Audio Processor) + + pci:v000012EBd00000001sv00005053sd00003355* +- ID_MODEL_FROM_DATABASE=Montego ++ ID_MODEL_FROM_DATABASE=Vortex 1 (Montego) + + pci:v000012EBd00000001sv000050B2sd00001111* +- ID_MODEL_FROM_DATABASE=XLerate ++ ID_MODEL_FROM_DATABASE=Vortex 1 (XLerate) + + pci:v000012EBd00000002* + ID_MODEL_FROM_DATABASE=Vortex 2 + + pci:v000012EBd00000002sv0000104Dsd00008049* +- ID_MODEL_FROM_DATABASE=AU8830 Vortex 3D Digital Audio Processor ++ ID_MODEL_FROM_DATABASE=Vortex 2 (AU8830 Vortex 3D Digital Audio Processor) + + pci:v000012EBd00000002sv0000104Dsd0000807B* +- ID_MODEL_FROM_DATABASE=AU8830 Vortex 3D Digital Audio Processor ++ ID_MODEL_FROM_DATABASE=Vortex 2 (AU8830 Vortex 3D Digital Audio Processor) + + pci:v000012EBd00000002sv00001092sd00003000* +- ID_MODEL_FROM_DATABASE=Monster Sound II ++ ID_MODEL_FROM_DATABASE=Vortex 2 (Monster Sound II) + + pci:v000012EBd00000002sv00001092sd00003001* +- ID_MODEL_FROM_DATABASE=Monster Sound II ++ ID_MODEL_FROM_DATABASE=Vortex 2 (Monster Sound II) + + pci:v000012EBd00000002sv00001092sd00003002* +- ID_MODEL_FROM_DATABASE=Monster Sound II ++ ID_MODEL_FROM_DATABASE=Vortex 2 (Monster Sound II) + + pci:v000012EBd00000002sv00001092sd00003003* +- ID_MODEL_FROM_DATABASE=Monster Sound II ++ ID_MODEL_FROM_DATABASE=Vortex 2 (Monster Sound II) + + pci:v000012EBd00000002sv00001092sd00003004* +- ID_MODEL_FROM_DATABASE=Monster Sound II ++ ID_MODEL_FROM_DATABASE=Vortex 2 (Monster Sound II) + + pci:v000012EBd00000002sv000012EBsd00000002* +- ID_MODEL_FROM_DATABASE=AU8830 Vortex 3D Digital Audio Processor ++ ID_MODEL_FROM_DATABASE=Vortex 2 (AU8830 Vortex 3D Digital Audio Processor) + + pci:v000012EBd00000002sv000012EBsd00000088* +- ID_MODEL_FROM_DATABASE=AU8830 Vortex 3D Digital Audio Processor ++ ID_MODEL_FROM_DATABASE=Vortex 2 (AU8830 Vortex 3D Digital Audio Processor) + + pci:v000012EBd00000002sv0000144Dsd00003510* +- ID_MODEL_FROM_DATABASE=AU8830 Vortex 3D Digital Audio Processor ++ ID_MODEL_FROM_DATABASE=Vortex 2 (AU8830 Vortex 3D Digital Audio Processor) + + pci:v000012EBd00000002sv00005053sd00003356* +- ID_MODEL_FROM_DATABASE=Montego II ++ ID_MODEL_FROM_DATABASE=Vortex 2 (Montego II) + + pci:v000012EBd00000003* + ID_MODEL_FROM_DATABASE=AU8810 Vortex Digital Audio Processor +@@ -39465,16 +39465,16 @@ pci:v00001317d00000985* + ID_MODEL_FROM_DATABASE=NC100 Network Everywhere Fast Ethernet 10/100 + + pci:v00001317d00000985sv00001734sd0000100C* +- ID_MODEL_FROM_DATABASE=Scenic N300 ADMtek AN983 10/100 Mbps PCI Adapter ++ ID_MODEL_FROM_DATABASE=NC100 Network Everywhere Fast Ethernet 10/100 (Scenic N300 ADMtek AN983 10/100 Mbps PCI Adapter) + + pci:v00001317d00001985* + ID_MODEL_FROM_DATABASE=21x4x DEC-Tulip compatible 10/100 Ethernet + + pci:v00001317d00001985sv00001385sd0000511A* +- ID_MODEL_FROM_DATABASE=FA511 ++ ID_MODEL_FROM_DATABASE=21x4x DEC-Tulip compatible 10/100 Ethernet (FA511) + + pci:v00001317d00001985sv00001395sd00002103* +- ID_MODEL_FROM_DATABASE=CB100-EZ (4-LED version) ++ ID_MODEL_FROM_DATABASE=21x4x DEC-Tulip compatible 10/100 Ethernet (CB100-EZ (4-LED version)) + + pci:v00001317d00002850* + ID_MODEL_FROM_DATABASE=HSP MicroModem 56 +@@ -39486,10 +39486,10 @@ pci:v00001317d00008201* + ID_MODEL_FROM_DATABASE=ADM8211 802.11b Wireless Interface + + pci:v00001317d00008201sv000010B8sd00002635* +- ID_MODEL_FROM_DATABASE=SMC2635W v1 802.11b Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=ADM8211 802.11b Wireless Interface (SMC2635W v1 802.11b Wireless Cardbus Adapter) + + pci:v00001317d00008201sv00001317sd00008201* +- ID_MODEL_FROM_DATABASE=SMC2635W v2 802.11b Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=ADM8211 802.11b Wireless Interface (SMC2635W v2 802.11b Wireless Cardbus Adapter) + + pci:v00001317d00008211* + ID_MODEL_FROM_DATABASE=ADM8211 802.11b Wireless Interface +@@ -39510,13 +39510,13 @@ pci:v00001319d00000801* + ID_MODEL_FROM_DATABASE=Xwave QS3000A [FM801] + + pci:v00001319d00000801sv00001319sd00001319* +- ID_MODEL_FROM_DATABASE=FM801 PCI Audio ++ ID_MODEL_FROM_DATABASE=Xwave QS3000A [FM801] (FM801 PCI Audio) + + pci:v00001319d00000802* + ID_MODEL_FROM_DATABASE=Xwave QS3000A [FM801 game port] + + pci:v00001319d00000802sv00001319sd00001319* +- ID_MODEL_FROM_DATABASE=FM801 PCI Joystick ++ ID_MODEL_FROM_DATABASE=Xwave QS3000A [FM801 game port] (FM801 PCI Joystick) + + pci:v00001319d00001000* + ID_MODEL_FROM_DATABASE=FM801 PCI Audio +@@ -39618,7 +39618,7 @@ pci:v0000131Fd00002030* + ID_MODEL_FROM_DATABASE=CyberSerial (2-port) 16550 + + pci:v0000131Fd00002030sv0000131Fsd00002030* +- ID_MODEL_FROM_DATABASE=PCI Serial Card ++ ID_MODEL_FROM_DATABASE=CyberSerial (2-port) 16550 (PCI Serial Card) + + pci:v0000131Fd00002031* + ID_MODEL_FROM_DATABASE=CyberSerial (2-port) 16650 +@@ -39834,7 +39834,7 @@ pci:v0000134Dd00007890* + ID_MODEL_FROM_DATABASE=HSP MicroModem 56 + + pci:v0000134Dd00007890sv0000134Dsd00000001* +- ID_MODEL_FROM_DATABASE=PCT789 adapter ++ ID_MODEL_FROM_DATABASE=HSP MicroModem 56 (PCT789 adapter) + + pci:v0000134Dd00007891* + ID_MODEL_FROM_DATABASE=HSP MicroModem 56 +@@ -40119,7 +40119,7 @@ pci:v00001371d0000434E* + ID_MODEL_FROM_DATABASE=GigaCard Network Adapter + + pci:v00001371d0000434Esv00001371sd0000434E* +- ID_MODEL_FROM_DATABASE=N-Way PCI-Bus Giga-Card 1000/100/10Mbps(L) ++ ID_MODEL_FROM_DATABASE=GigaCard Network Adapter (N-Way PCI-Bus Giga-Card 1000/100/10Mbps(L)) + + pci:v00001373* + ID_VENDOR_FROM_DATABASE=Silicon Vision Inc +@@ -40515,10 +40515,10 @@ pci:v00001394d00000001* + ID_MODEL_FROM_DATABASE=LXT1001 Gigabit Ethernet + + pci:v00001394d00000001sv00001186sd00004800* +- ID_MODEL_FROM_DATABASE=DGE-500SX ++ ID_MODEL_FROM_DATABASE=LXT1001 Gigabit Ethernet (DGE-500SX) + + pci:v00001394d00000001sv00001394sd00000001* +- ID_MODEL_FROM_DATABASE=NetCelerator Adapter ++ ID_MODEL_FROM_DATABASE=LXT1001 Gigabit Ethernet (NetCelerator Adapter) + + pci:v00001395* + ID_VENDOR_FROM_DATABASE=Ambicom Inc +@@ -40533,40 +40533,40 @@ pci:v00001397d000008B4* + ID_MODEL_FROM_DATABASE=ISDN network Controller [HFC-4S] + + pci:v00001397d000008B4sv00001397sd0000B520* +- ID_MODEL_FROM_DATABASE=HFC-4S [IOB4ST] ++ ID_MODEL_FROM_DATABASE=ISDN network Controller [HFC-4S] (HFC-4S [IOB4ST]) + + pci:v00001397d000008B4sv00001397sd0000B540* +- ID_MODEL_FROM_DATABASE=HFC-4S [Swyx 4xS0 SX2 QuadBri] ++ ID_MODEL_FROM_DATABASE=ISDN network Controller [HFC-4S] (HFC-4S [Swyx 4xS0 SX2 QuadBri]) + + pci:v00001397d000008B4sv00001397sd0000B550* +- ID_MODEL_FROM_DATABASE=HFC-4S [Junghanns quadBRI] ++ ID_MODEL_FROM_DATABASE=ISDN network Controller [HFC-4S] (HFC-4S [Junghanns quadBRI]) + + pci:v00001397d000008B4sv00001397sd0000B556* +- ID_MODEL_FROM_DATABASE=HFC-4S [Junghanns DuoDBRI] ++ ID_MODEL_FROM_DATABASE=ISDN network Controller [HFC-4S] (HFC-4S [Junghanns DuoDBRI]) + + pci:v00001397d000008B4sv00001397sd0000E888* +- ID_MODEL_FROM_DATABASE=HFC-4S [OpenVox B200P / B400P] ++ ID_MODEL_FROM_DATABASE=ISDN network Controller [HFC-4S] (HFC-4S [OpenVox B200P / B400P]) + + pci:v00001397d000016B8* + ID_MODEL_FROM_DATABASE=ISDN network Controller [HFC-8S] + + pci:v00001397d000016B8sv00001397sd0000B562* +- ID_MODEL_FROM_DATABASE=HFC-8S [IOB8ST] ++ ID_MODEL_FROM_DATABASE=ISDN network Controller [HFC-8S] (HFC-8S [IOB8ST]) + + pci:v00001397d00002BD0* + ID_MODEL_FROM_DATABASE=ISDN network controller [HFC-PCI] + + pci:v00001397d00002BD0sv00000675sd00001704* +- ID_MODEL_FROM_DATABASE=ISDN Adapter (PCI Bus, D, C) ++ ID_MODEL_FROM_DATABASE=ISDN network controller [HFC-PCI] (ISDN Adapter (PCI Bus, D, C)) + + pci:v00001397d00002BD0sv00000675sd00001708* +- ID_MODEL_FROM_DATABASE=ISDN Adapter (PCI Bus, D, C, ACPI) ++ ID_MODEL_FROM_DATABASE=ISDN network controller [HFC-PCI] (ISDN Adapter (PCI Bus, D, C, ACPI)) + + pci:v00001397d00002BD0sv00001397sd00002BD0* +- ID_MODEL_FROM_DATABASE=ISDN Board ++ ID_MODEL_FROM_DATABASE=ISDN network controller [HFC-PCI] (ISDN Board) + + pci:v00001397d00002BD0sv0000E4BFsd00001000* +- ID_MODEL_FROM_DATABASE=CI1-1-Harp ++ ID_MODEL_FROM_DATABASE=ISDN network controller [HFC-PCI] (CI1-1-Harp) + + pci:v00001397d000030B1* + ID_MODEL_FROM_DATABASE=ISDN network Controller [HFC-E1] +@@ -40665,46 +40665,46 @@ pci:v000013A3d0000002F* + ID_MODEL_FROM_DATABASE=9725 Compression and Security Processor + + pci:v000013A3d0000002Fsv000013A3sd00001600* +- ID_MODEL_FROM_DATABASE=DR1600 Acceleration Card ++ ID_MODEL_FROM_DATABASE=9725 Compression and Security Processor (DR1600 Acceleration Card) + + pci:v000013A3d0000002Fsv000013A3sd00001605* +- ID_MODEL_FROM_DATABASE=DR1605 Acceleration Card ++ ID_MODEL_FROM_DATABASE=9725 Compression and Security Processor (DR1605 Acceleration Card) + + pci:v000013A3d0000002Fsv000013A3sd00001610* +- ID_MODEL_FROM_DATABASE=DR1610 Acceleration Card ++ ID_MODEL_FROM_DATABASE=9725 Compression and Security Processor (DR1610 Acceleration Card) + + pci:v000013A3d0000002Fsv000013A3sd00001615* +- ID_MODEL_FROM_DATABASE=DR1615 Acceleration Card ++ ID_MODEL_FROM_DATABASE=9725 Compression and Security Processor (DR1615 Acceleration Card) + + pci:v000013A3d0000002Fsv000013A3sd00001620* +- ID_MODEL_FROM_DATABASE=DR1620 Acceleration Card ++ ID_MODEL_FROM_DATABASE=9725 Compression and Security Processor (DR1620 Acceleration Card) + + pci:v000013A3d0000002Fsv000013A3sd00001625* +- ID_MODEL_FROM_DATABASE=DR1625 Acceleration Card ++ ID_MODEL_FROM_DATABASE=9725 Compression and Security Processor (DR1625 Acceleration Card) + + pci:v000013A3d00000033* + ID_MODEL_FROM_DATABASE=8201 Acceleration Processor + + pci:v000013A3d00000033sv000013A3sd00000036* +- ID_MODEL_FROM_DATABASE=DX1710 Acceleration Card ++ ID_MODEL_FROM_DATABASE=8201 Acceleration Processor (DX1710 Acceleration Card) + + pci:v000013A3d00000034* + ID_MODEL_FROM_DATABASE=8202 Acceleration Processor + + pci:v000013A3d00000034sv000013A3sd00000036* +- ID_MODEL_FROM_DATABASE=DX1720 Acceleration Card ++ ID_MODEL_FROM_DATABASE=8202 Acceleration Processor (DX1720 Acceleration Card) + + pci:v000013A3d00000035* + ID_MODEL_FROM_DATABASE=8203 Acceleration Processor + + pci:v000013A3d00000035sv000013A3sd00000036* +- ID_MODEL_FROM_DATABASE=DX1730 Acceleration Card ++ ID_MODEL_FROM_DATABASE=8203 Acceleration Processor (DX1730 Acceleration Card) + + pci:v000013A3d00000037* + ID_MODEL_FROM_DATABASE=8204 Acceleration Processor + + pci:v000013A3d00000037sv000013A3sd00000036* +- ID_MODEL_FROM_DATABASE=DX1740 Acceleration Card ++ ID_MODEL_FROM_DATABASE=8204 Acceleration Processor (DX1740 Acceleration Card) + + pci:v000013A4* + ID_VENDOR_FROM_DATABASE=Rascom Inc +@@ -41067,7 +41067,7 @@ pci:v000013F0d00000200* + ID_MODEL_FROM_DATABASE=IC Plus IP100A Integrated 10/100 Ethernet MAC + PHY + + pci:v000013F0d00000200sv00001043sd00008213* +- ID_MODEL_FROM_DATABASE=NX1001 ++ ID_MODEL_FROM_DATABASE=IC Plus IP100A Integrated 10/100 Ethernet MAC + PHY (NX1001) + + pci:v000013F0d00000201* + ID_MODEL_FROM_DATABASE=ST201 Sundance Ethernet +@@ -41079,7 +41079,7 @@ pci:v000013F0d00001023* + ID_MODEL_FROM_DATABASE=IP1000 Family Gigabit Ethernet + + pci:v000013F0d00001023sv00001043sd00008180* +- ID_MODEL_FROM_DATABASE=NX1101 ++ ID_MODEL_FROM_DATABASE=IP1000 Family Gigabit Ethernet (NX1101) + + pci:v000013F1* + ID_VENDOR_FROM_DATABASE=Oce' - Technologies B.V. +@@ -41109,76 +41109,76 @@ pci:v000013F6d00000100* + ID_MODEL_FROM_DATABASE=CM8338A + + pci:v000013F6d00000100sv000013F6sd0000FFFF* +- ID_MODEL_FROM_DATABASE=CMI8338/C3DX PCI Audio Device ++ ID_MODEL_FROM_DATABASE=CM8338A (CMI8338/C3DX PCI Audio Device) + + pci:v000013F6d00000101* + ID_MODEL_FROM_DATABASE=CM8338B + + pci:v000013F6d00000101sv000013F6sd00000101* +- ID_MODEL_FROM_DATABASE=CMI8338-031 PCI Audio Device ++ ID_MODEL_FROM_DATABASE=CM8338B (CMI8338-031 PCI Audio Device) + + pci:v000013F6d00000111* + ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio + + pci:v000013F6d00000111sv00001019sd00000970* +- ID_MODEL_FROM_DATABASE=P6STP-FL motherboard ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (P6STP-FL motherboard) + + pci:v000013F6d00000111sv00001043sd00008035* +- ID_MODEL_FROM_DATABASE=CUSI-FX motherboard ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (CUSI-FX motherboard) + + pci:v000013F6d00000111sv00001043sd00008077* +- ID_MODEL_FROM_DATABASE=CMI8738 6-channel audio controller ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (CMI8738 6-channel audio controller) + + pci:v000013F6d00000111sv00001043sd000080E2* +- ID_MODEL_FROM_DATABASE=CMI8738 6ch-MX ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (CMI8738 6ch-MX) + + pci:v000013F6d00000111sv000013F6sd00000111* +- ID_MODEL_FROM_DATABASE=CMI8738/C3DX PCI Audio Device ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (CMI8738/C3DX PCI Audio Device) + + pci:v000013F6d00000111sv000013F6sd00009761* +- ID_MODEL_FROM_DATABASE=Theatron Agrippa ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (Theatron Agrippa) + + pci:v000013F6d00000111sv0000153Bsd00001144* +- ID_MODEL_FROM_DATABASE=Aureon 5.1 ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (Aureon 5.1) + + pci:v000013F6d00000111sv0000153Bsd00001170* +- ID_MODEL_FROM_DATABASE=Aureon 7.1 ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (Aureon 7.1) + + pci:v000013F6d00000111sv00001681sd0000A000* +- ID_MODEL_FROM_DATABASE=Gamesurround MUSE XL ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (Gamesurround MUSE XL) + + pci:v000013F6d00000111sv000017ABsd00000604* +- ID_MODEL_FROM_DATABASE=PSC604 Dynamic Edge ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (PSC604 Dynamic Edge) + + pci:v000013F6d00000111sv000017ABsd00000605* +- ID_MODEL_FROM_DATABASE=PSC605 Sonic Edge ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (PSC605 Sonic Edge) + + pci:v000013F6d00000111sv000017ABsd00007777* +- ID_MODEL_FROM_DATABASE=PSC605 Sonic Edge ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (PSC605 Sonic Edge) + + pci:v000013F6d00000111sv0000270Fsd00001103* +- ID_MODEL_FROM_DATABASE=CT-7NJS Ultra motherboard ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (CT-7NJS Ultra motherboard) + + pci:v000013F6d00000111sv0000270Fsd0000F462* +- ID_MODEL_FROM_DATABASE=7NJL1 motherboard ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (7NJL1 motherboard) + + pci:v000013F6d00000111sv0000584Dsd00003731* +- ID_MODEL_FROM_DATABASE=Digital X-Mystique ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (Digital X-Mystique) + + pci:v000013F6d00000111sv0000584Dsd00003741* +- ID_MODEL_FROM_DATABASE=X-Plosion 7.1 ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (X-Plosion 7.1) + + pci:v000013F6d00000111sv0000584Dsd00003751* +- ID_MODEL_FROM_DATABASE=X-Raider 7.1 ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (X-Raider 7.1) + + pci:v000013F6d00000111sv0000584Dsd00003761* +- ID_MODEL_FROM_DATABASE=X-Mystique 7.1 LP ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (X-Mystique 7.1 LP) + + pci:v000013F6d00000111sv0000584Dsd00003771* +- ID_MODEL_FROM_DATABASE=X-Mystique 7.1 LP Value ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (X-Mystique 7.1 LP Value) + + pci:v000013F6d00000111sv00007284sd00008384* +- ID_MODEL_FROM_DATABASE=Striker 7.1 ++ ID_MODEL_FROM_DATABASE=CMI8738/CMI8768 PCI Audio (Striker 7.1) + + pci:v000013F6d00000211* + ID_MODEL_FROM_DATABASE=CM8738 +@@ -41187,85 +41187,85 @@ pci:v000013F6d00005011* + ID_MODEL_FROM_DATABASE=CM8888 [Oxygen Express] + + pci:v000013F6d00005011sv000013F6sd00005011* +- ID_MODEL_FROM_DATABASE=HDA Controller ++ ID_MODEL_FROM_DATABASE=CM8888 [Oxygen Express] (HDA Controller) + + pci:v000013F6d00008788* + ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] + + pci:v000013F6d00008788sv00001043sd00008269* +- ID_MODEL_FROM_DATABASE=Virtuoso 200 (Xonar D2) ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (Virtuoso 200 (Xonar D2)) + + pci:v000013F6d00008788sv00001043sd00008275* +- ID_MODEL_FROM_DATABASE=Virtuoso 100 (Xonar DX) ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (Virtuoso 100 (Xonar DX)) + + pci:v000013F6d00008788sv00001043sd000082B7* +- ID_MODEL_FROM_DATABASE=Virtuoso 200 (Xonar D2X) ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (Virtuoso 200 (Xonar D2X)) + + pci:v000013F6d00008788sv00001043sd00008314* +- ID_MODEL_FROM_DATABASE=Virtuoso 200 (Xonar HDAV1.3) ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (Virtuoso 200 (Xonar HDAV1.3)) + + pci:v000013F6d00008788sv00001043sd00008327* +- ID_MODEL_FROM_DATABASE=Virtuoso 100 (Xonar DX) ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (Virtuoso 100 (Xonar DX)) + + pci:v000013F6d00008788sv00001043sd0000834F* +- ID_MODEL_FROM_DATABASE=Virtuoso 100 (Xonar D1) ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (Virtuoso 100 (Xonar D1)) + + pci:v000013F6d00008788sv00001043sd0000835C* +- ID_MODEL_FROM_DATABASE=Virtuoso 100 (Xonar Essence STX) ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (Virtuoso 100 (Xonar Essence STX)) + + pci:v000013F6d00008788sv00001043sd0000835D* +- ID_MODEL_FROM_DATABASE=Virtuoso 100 (Xonar ST) ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (Virtuoso 100 (Xonar ST)) + + pci:v000013F6d00008788sv00001043sd0000835E* +- ID_MODEL_FROM_DATABASE=Virtuoso 200 (Xonar HDAV1.3 Slim) ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (Virtuoso 200 (Xonar HDAV1.3 Slim)) + + pci:v000013F6d00008788sv00001043sd0000838E* +- ID_MODEL_FROM_DATABASE=Virtuoso 66 (Xonar DS) ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (Virtuoso 66 (Xonar DS)) + + pci:v000013F6d00008788sv00001043sd00008428* +- ID_MODEL_FROM_DATABASE=Virtuoso 100 (Xonar Xense) ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (Virtuoso 100 (Xonar Xense)) + + pci:v000013F6d00008788sv00001043sd00008467* +- ID_MODEL_FROM_DATABASE=CMI8786 (Xonar DG) ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (CMI8786 (Xonar DG)) + + pci:v000013F6d00008788sv000013F6sd00008782* +- ID_MODEL_FROM_DATABASE=PCI 2.0 HD Audio ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (PCI 2.0 HD Audio) + + pci:v000013F6d00008788sv000013F6sd0000FFFF* +- ID_MODEL_FROM_DATABASE=CMI8787-HG2PCI ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (CMI8787-HG2PCI) + + pci:v000013F6d00008788sv000014C3sd00001710* +- ID_MODEL_FROM_DATABASE=HiFier Fantasia ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (HiFier Fantasia) + + pci:v000013F6d00008788sv000014C3sd00001711* +- ID_MODEL_FROM_DATABASE=HiFier Serenade ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (HiFier Serenade) + + pci:v000013F6d00008788sv000014C3sd00001713* +- ID_MODEL_FROM_DATABASE=HiFier Serenade III ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (HiFier Serenade III) + + pci:v000013F6d00008788sv00001A58sd00000910* +- ID_MODEL_FROM_DATABASE=Barracuda AC-1 ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (Barracuda AC-1) + + pci:v000013F6d00008788sv0000415Asd00005431* +- ID_MODEL_FROM_DATABASE=X-Meridian 7.1 ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (X-Meridian 7.1) + + pci:v000013F6d00008788sv00005431sd0000017A* +- ID_MODEL_FROM_DATABASE=X-Meridian 7.1 2G ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (X-Meridian 7.1 2G) + + pci:v000013F6d00008788sv0000584Dsd00003781* +- ID_MODEL_FROM_DATABASE=HDA X-Purity 7.1 Platinum ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (HDA X-Purity 7.1 Platinum) + + pci:v000013F6d00008788sv00007284sd00009761* +- ID_MODEL_FROM_DATABASE=CLARO ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (CLARO) + + pci:v000013F6d00008788sv00007284sd00009781* +- ID_MODEL_FROM_DATABASE=CLARO halo ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (CLARO halo) + + pci:v000013F6d00008788sv00007284sd00009783* +- ID_MODEL_FROM_DATABASE=eCLARO ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (eCLARO) + + pci:v000013F6d00008788sv00007284sd00009787* +- ID_MODEL_FROM_DATABASE=CLARO II ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (CLARO II) + + pci:v000013F7* + ID_VENDOR_FROM_DATABASE=Wildfire Communications +@@ -41298,13 +41298,13 @@ pci:v000013FEd00001600* + ID_MODEL_FROM_DATABASE=PCI-16xx series PCI multiport serial board (function 0) + + pci:v000013FEd00001600sv00001601sd00000002* +- ID_MODEL_FROM_DATABASE=PCI-1601 2-port unisolated RS-422/485 ++ ID_MODEL_FROM_DATABASE=PCI-16xx series PCI multiport serial board (function 0) (PCI-1601 2-port unisolated RS-422/485) + + pci:v000013FEd00001600sv00001602sd00000002* +- ID_MODEL_FROM_DATABASE=PCI-1602 2-port isolated RS-422/485 ++ ID_MODEL_FROM_DATABASE=PCI-16xx series PCI multiport serial board (function 0) (PCI-1602 2-port isolated RS-422/485) + + pci:v000013FEd00001600sv00001612sd00000004* +- ID_MODEL_FROM_DATABASE=PCI-1612 4-port RS-232/422/485 ++ ID_MODEL_FROM_DATABASE=PCI-16xx series PCI multiport serial board (function 0) (PCI-1612 4-port RS-232/422/485) + + pci:v000013FEd00001603* + ID_MODEL_FROM_DATABASE=PCI-1603 2-port isolated RS-232/current loop +@@ -41316,13 +41316,13 @@ pci:v000013FEd000016FF* + ID_MODEL_FROM_DATABASE=PCI-16xx series PCI multiport serial board (function 1: RX/TX steering CPLD) + + pci:v000013FEd000016FFsv00001601sd00000000* +- ID_MODEL_FROM_DATABASE=PCI-1601 2-port unisolated RS-422/485 PCI communications card ++ ID_MODEL_FROM_DATABASE=PCI-16xx series PCI multiport serial board (function 1: RX/TX steering CPLD) (PCI-1601 2-port unisolated RS-422/485 PCI communications card) + + pci:v000013FEd000016FFsv00001602sd00000000* +- ID_MODEL_FROM_DATABASE=PCI-1602 2-port isolated RS-422/485 ++ ID_MODEL_FROM_DATABASE=PCI-16xx series PCI multiport serial board (function 1: RX/TX steering CPLD) (PCI-1602 2-port isolated RS-422/485) + + pci:v000013FEd000016FFsv00001612sd00000000* +- ID_MODEL_FROM_DATABASE=PCI-1612 4-port RS-232/422/485 ++ ID_MODEL_FROM_DATABASE=PCI-16xx series PCI multiport serial board (function 1: RX/TX steering CPLD) (PCI-1612 4-port RS-232/422/485) + + pci:v000013FEd00001711* + ID_MODEL_FROM_DATABASE=PCI-1711 16-channel data acquisition card 12-bit, 100kS/s +@@ -41676,37 +41676,37 @@ pci:v00001409d00007168* + ID_MODEL_FROM_DATABASE=PCI2S550 (Dual 16550 UART) + + pci:v00001409d00007168sv00001409sd00000002* +- ID_MODEL_FROM_DATABASE=SER4036A3V (2x RS232 port) ++ ID_MODEL_FROM_DATABASE=PCI2S550 (Dual 16550 UART) (SER4036A3V (2x RS232 port)) + + pci:v00001409d00007168sv00001409sd00004027* +- ID_MODEL_FROM_DATABASE=SER4027A (1x RS232 port) ++ ID_MODEL_FROM_DATABASE=PCI2S550 (Dual 16550 UART) (SER4027A (1x RS232 port)) + + pci:v00001409d00007168sv00001409sd00004037* +- ID_MODEL_FROM_DATABASE=SER4037A (2x RS232 port) ++ ID_MODEL_FROM_DATABASE=PCI2S550 (Dual 16550 UART) (SER4037A (2x RS232 port)) + + pci:v00001409d00007168sv00001409sd00004056* +- ID_MODEL_FROM_DATABASE=SER4056A (4x RS232) ++ ID_MODEL_FROM_DATABASE=PCI2S550 (Dual 16550 UART) (SER4056A (4x RS232)) + + pci:v00001409d00007168sv00001409sd00005027* +- ID_MODEL_FROM_DATABASE=SER4027D ++ ID_MODEL_FROM_DATABASE=PCI2S550 (Dual 16550 UART) (SER4027D) + + pci:v00001409d00007168sv00001409sd00005037* +- ID_MODEL_FROM_DATABASE=SER4037D (2x RS232 port) ++ ID_MODEL_FROM_DATABASE=PCI2S550 (Dual 16550 UART) (SER4037D (2x RS232 port)) + + pci:v00001409d00007168sv00001409sd00005066* +- ID_MODEL_FROM_DATABASE=SER4066R (8x RS232) ++ ID_MODEL_FROM_DATABASE=PCI2S550 (Dual 16550 UART) (SER4066R (8x RS232)) + + pci:v00001409d00007168sv00001409sd00006056* +- ID_MODEL_FROM_DATABASE=SER4056D (4x RS232 port) ++ ID_MODEL_FROM_DATABASE=PCI2S550 (Dual 16550 UART) (SER4056D (4x RS232 port)) + + pci:v00001409d00007268* + ID_MODEL_FROM_DATABASE=SUN1888 (Dual IEEE1284 parallel port) + + pci:v00001409d00007268sv00001409sd00000103* +- ID_MODEL_FROM_DATABASE=PAR4008A ++ ID_MODEL_FROM_DATABASE=SUN1888 (Dual IEEE1284 parallel port) (PAR4008A) + + pci:v00001409d00007268sv00001409sd00000104* +- ID_MODEL_FROM_DATABASE=PAR4018A ++ ID_MODEL_FROM_DATABASE=SUN1888 (Dual IEEE1284 parallel port) (PAR4018A) + + pci:v0000140A* + ID_VENDOR_FROM_DATABASE=DSP Research Inc +@@ -41739,106 +41739,106 @@ pci:v00001412d00001712* + ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller + + pci:v00001412d00001712sv00001412sd00001712* +- ID_MODEL_FROM_DATABASE=Hoontech ST Audio DSP 24 ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (Hoontech ST Audio DSP 24) + + pci:v00001412d00001712sv00001412sd00003632* +- ID_MODEL_FROM_DATABASE=M-Audio Delta Audiophile 192 ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (M-Audio Delta Audiophile 192) + + pci:v00001412d00001712sv00001412sd0000D630* +- ID_MODEL_FROM_DATABASE=M-Audio Delta 1010 ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (M-Audio Delta 1010) + + pci:v00001412d00001712sv00001412sd0000D631* +- ID_MODEL_FROM_DATABASE=M-Audio Delta DiO ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (M-Audio Delta DiO) + + pci:v00001412d00001712sv00001412sd0000D632* +- ID_MODEL_FROM_DATABASE=M-Audio Delta 66 ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (M-Audio Delta 66) + + pci:v00001412d00001712sv00001412sd0000D633* +- ID_MODEL_FROM_DATABASE=M-Audio Delta 44 ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (M-Audio Delta 44) + + pci:v00001412d00001712sv00001412sd0000D634* +- ID_MODEL_FROM_DATABASE=M-Audio Delta Audiophile 2496 ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (M-Audio Delta Audiophile 2496) + + pci:v00001412d00001712sv00001412sd0000D635* +- ID_MODEL_FROM_DATABASE=M-Audio Delta TDIF ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (M-Audio Delta TDIF) + + pci:v00001412d00001712sv00001412sd0000D637* +- ID_MODEL_FROM_DATABASE=M-Audio Delta RBUS ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (M-Audio Delta RBUS) + + pci:v00001412d00001712sv00001412sd0000D638* +- ID_MODEL_FROM_DATABASE=M-Audio Delta 410 ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (M-Audio Delta 410) + + pci:v00001412d00001712sv00001412sd0000D63B* +- ID_MODEL_FROM_DATABASE=M-Audio Delta 1010LT ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (M-Audio Delta 1010LT) + + pci:v00001412d00001712sv00001412sd0000D63C* +- ID_MODEL_FROM_DATABASE=Digigram VX442 ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (Digigram VX442) + + pci:v00001412d00001712sv00001416sd00001712* +- ID_MODEL_FROM_DATABASE=Hoontech ST Audio DSP 24 Media 7.1 ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (Hoontech ST Audio DSP 24 Media 7.1) + + pci:v00001412d00001712sv0000153Bsd00001115* +- ID_MODEL_FROM_DATABASE=EWS88 MT ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (EWS88 MT) + + pci:v00001412d00001712sv0000153Bsd00001125* +- ID_MODEL_FROM_DATABASE=EWS88 MT (Master) ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (EWS88 MT (Master)) + + pci:v00001412d00001712sv0000153Bsd0000112B* +- ID_MODEL_FROM_DATABASE=EWS88 D ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (EWS88 D) + + pci:v00001412d00001712sv0000153Bsd0000112C* +- ID_MODEL_FROM_DATABASE=EWS88 D (Master) ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (EWS88 D (Master)) + + pci:v00001412d00001712sv0000153Bsd00001130* +- ID_MODEL_FROM_DATABASE=EWX 24/96 ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (EWX 24/96) + + pci:v00001412d00001712sv0000153Bsd00001138* +- ID_MODEL_FROM_DATABASE=DMX 6fire 24/96 ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (DMX 6fire 24/96) + + pci:v00001412d00001712sv0000153Bsd00001151* +- ID_MODEL_FROM_DATABASE=PHASE88 ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (PHASE88) + + pci:v00001412d00001712sv000016CEsd00001040* +- ID_MODEL_FROM_DATABASE=Edirol DA-2496 ++ ID_MODEL_FROM_DATABASE=ICE1712 [Envy24] PCI Multi-Channel I/O Controller (Edirol DA-2496) + + pci:v00001412d00001724* + ID_MODEL_FROM_DATABASE=VT1720/24 [Envy24PT/HT] PCI Multi-Channel Audio Controller + + pci:v00001412d00001724sv000010B0sd00000200* +- ID_MODEL_FROM_DATABASE=Hollywood@Home 7.1 ++ ID_MODEL_FROM_DATABASE=VT1720/24 [Envy24PT/HT] PCI Multi-Channel Audio Controller (Hollywood@Home 7.1) + + pci:v00001412d00001724sv00001412sd00001724* +- ID_MODEL_FROM_DATABASE=Albatron PX865PE 7.1 ++ ID_MODEL_FROM_DATABASE=VT1720/24 [Envy24PT/HT] PCI Multi-Channel Audio Controller (Albatron PX865PE 7.1) + + pci:v00001412d00001724sv00001412sd00003630* +- ID_MODEL_FROM_DATABASE=M-Audio Revolution 7.1 ++ ID_MODEL_FROM_DATABASE=VT1720/24 [Envy24PT/HT] PCI Multi-Channel Audio Controller (M-Audio Revolution 7.1) + + pci:v00001412d00001724sv00001412sd00003631* +- ID_MODEL_FROM_DATABASE=M-Audio Revolution 5.1 ++ ID_MODEL_FROM_DATABASE=VT1720/24 [Envy24PT/HT] PCI Multi-Channel Audio Controller (M-Audio Revolution 5.1) + + pci:v00001412d00001724sv0000153Bsd00001145* +- ID_MODEL_FROM_DATABASE=Aureon 7.1 Space ++ ID_MODEL_FROM_DATABASE=VT1720/24 [Envy24PT/HT] PCI Multi-Channel Audio Controller (Aureon 7.1 Space) + + pci:v00001412d00001724sv0000153Bsd00001147* +- ID_MODEL_FROM_DATABASE=Aureon 5.1 Sky ++ ID_MODEL_FROM_DATABASE=VT1720/24 [Envy24PT/HT] PCI Multi-Channel Audio Controller (Aureon 5.1 Sky) + + pci:v00001412d00001724sv0000153Bsd00001150* +- ID_MODEL_FROM_DATABASE=PHASE 22 ++ ID_MODEL_FROM_DATABASE=VT1720/24 [Envy24PT/HT] PCI Multi-Channel Audio Controller (PHASE 22) + + pci:v00001412d00001724sv0000153Bsd00001153* +- ID_MODEL_FROM_DATABASE=Aureon 7.1 Universe ++ ID_MODEL_FROM_DATABASE=VT1720/24 [Envy24PT/HT] PCI Multi-Channel Audio Controller (Aureon 7.1 Universe) + + pci:v00001412d00001724sv000017ABsd00001906* +- ID_MODEL_FROM_DATABASE=PSC 724 [Ultimate Edge] ++ ID_MODEL_FROM_DATABASE=VT1720/24 [Envy24PT/HT] PCI Multi-Channel Audio Controller (PSC 724 [Ultimate Edge]) + + pci:v00001412d00001724sv0000270Fsd0000F641* +- ID_MODEL_FROM_DATABASE=ZNF3-150 ++ ID_MODEL_FROM_DATABASE=VT1720/24 [Envy24PT/HT] PCI Multi-Channel Audio Controller (ZNF3-150) + + pci:v00001412d00001724sv0000270Fsd0000F645* +- ID_MODEL_FROM_DATABASE=ZNF3-250 ++ ID_MODEL_FROM_DATABASE=VT1720/24 [Envy24PT/HT] PCI Multi-Channel Audio Controller (ZNF3-250) + + pci:v00001412d00001724sv00003130sd00004154* +- ID_MODEL_FROM_DATABASE=MAYA 44 MKII ++ ID_MODEL_FROM_DATABASE=VT1720/24 [Envy24PT/HT] PCI Multi-Channel Audio Controller (MAYA 44 MKII) + + pci:v00001413* + ID_VENDOR_FROM_DATABASE=Addonics +@@ -41904,28 +41904,28 @@ pci:v00001415d00009501* + ID_MODEL_FROM_DATABASE=OX16PCI954 (Quad 16950 UART) function 0 (Uart) + + pci:v00001415d00009501sv000012C4sd00000201* +- ID_MODEL_FROM_DATABASE=Titan/cPCI (2 port) ++ ID_MODEL_FROM_DATABASE=OX16PCI954 (Quad 16950 UART) function 0 (Uart) (Titan/cPCI (2 port)) + + pci:v00001415d00009501sv000012C4sd00000202* +- ID_MODEL_FROM_DATABASE=Titan/cPCI (4 port) ++ ID_MODEL_FROM_DATABASE=OX16PCI954 (Quad 16950 UART) function 0 (Uart) (Titan/cPCI (4 port)) + + pci:v00001415d00009501sv000012C4sd00000203* +- ID_MODEL_FROM_DATABASE=Titan/cPCI (8 port) ++ ID_MODEL_FROM_DATABASE=OX16PCI954 (Quad 16950 UART) function 0 (Uart) (Titan/cPCI (8 port)) + + pci:v00001415d00009501sv000012C4sd00000210* +- ID_MODEL_FROM_DATABASE=Titan/104-Plus (8 port, p1-4) ++ ID_MODEL_FROM_DATABASE=OX16PCI954 (Quad 16950 UART) function 0 (Uart) (Titan/104-Plus (8 port, p1-4)) + + pci:v00001415d00009501sv0000131Fsd00002050* +- ID_MODEL_FROM_DATABASE=CyberPro (4-port) ++ ID_MODEL_FROM_DATABASE=OX16PCI954 (Quad 16950 UART) function 0 (Uart) (CyberPro (4-port)) + + pci:v00001415d00009501sv0000131Fsd00002051* +- ID_MODEL_FROM_DATABASE=CyberSerial 4S Plus ++ ID_MODEL_FROM_DATABASE=OX16PCI954 (Quad 16950 UART) function 0 (Uart) (CyberSerial 4S Plus) + + pci:v00001415d00009501sv000015EDsd00002000* +- ID_MODEL_FROM_DATABASE=MCCR Serial p0-3 of 8 ++ ID_MODEL_FROM_DATABASE=OX16PCI954 (Quad 16950 UART) function 0 (Uart) (MCCR Serial p0-3 of 8) + + pci:v00001415d00009501sv000015EDsd00002001* +- ID_MODEL_FROM_DATABASE=MCCR Serial p0-3 of 16 ++ ID_MODEL_FROM_DATABASE=OX16PCI954 (Quad 16950 UART) function 0 (Uart) (MCCR Serial p0-3 of 16) + + pci:v00001415d00009505* + ID_MODEL_FROM_DATABASE=OXuPCI952 (Dual 16C950 UART) +@@ -41940,19 +41940,19 @@ pci:v00001415d00009510* + ID_MODEL_FROM_DATABASE=OX16PCI954 (Quad 16950 UART) function 1 (Disabled) + + pci:v00001415d00009510sv000012C4sd00000200* +- ID_MODEL_FROM_DATABASE=Titan/cPCI (Unused) ++ ID_MODEL_FROM_DATABASE=OX16PCI954 (Quad 16950 UART) function 1 (Disabled) (Titan/cPCI (Unused)) + + pci:v00001415d00009511* + ID_MODEL_FROM_DATABASE=OX16PCI954 (Quad 16950 UART) function 1 (8bit bus) + + pci:v00001415d00009511sv000012C4sd00000211* +- ID_MODEL_FROM_DATABASE=Titan/104-Plus (8 port, p5-8) ++ ID_MODEL_FROM_DATABASE=OX16PCI954 (Quad 16950 UART) function 1 (8bit bus) (Titan/104-Plus (8 port, p5-8)) + + pci:v00001415d00009511sv000015EDsd00002000* +- ID_MODEL_FROM_DATABASE=MCCR Serial p4-7 of 8 ++ ID_MODEL_FROM_DATABASE=OX16PCI954 (Quad 16950 UART) function 1 (8bit bus) (MCCR Serial p4-7 of 8) + + pci:v00001415d00009511sv000015EDsd00002001* +- ID_MODEL_FROM_DATABASE=MCCR Serial p4-15 of 16 ++ ID_MODEL_FROM_DATABASE=OX16PCI954 (Quad 16950 UART) function 1 (8bit bus) (MCCR Serial p4-15 of 16) + + pci:v00001415d00009512* + ID_MODEL_FROM_DATABASE=OX16PCI954 (Quad 16950 UART) function 1 (32bit bus) +@@ -41970,10 +41970,10 @@ pci:v00001415d0000C158* + ID_MODEL_FROM_DATABASE=OXPCIe952 Dual 16C950 UART + + pci:v00001415d0000C158sv0000E4BFsd0000C504* +- ID_MODEL_FROM_DATABASE=CP4-SCAT Wireless Technologies Carrier Board ++ ID_MODEL_FROM_DATABASE=OXPCIe952 Dual 16C950 UART (CP4-SCAT Wireless Technologies Carrier Board) + + pci:v00001415d0000C158sv0000E4BFsd0000D551* +- ID_MODEL_FROM_DATABASE=DU1-MUSTANG Dual-Port RS-485 Interface ++ ID_MODEL_FROM_DATABASE=OXPCIe952 Dual 16C950 UART (DU1-MUSTANG Dual-Port RS-485 Interface) + + pci:v00001415d0000C308* + ID_MODEL_FROM_DATABASE=EX-44016 16-port serial +@@ -42042,7 +42042,7 @@ pci:v00001425d00000030* + ID_MODEL_FROM_DATABASE=T310 10GbE Single Port Adapter + + pci:v00001425d00000030sv0000103Csd0000705E* +- ID_MODEL_FROM_DATABASE=PCIe 10GBase-SR [AD386A] ++ ID_MODEL_FROM_DATABASE=T310 10GbE Single Port Adapter (PCIe 10GBase-SR [AD386A]) + + pci:v00001425d00000031* + ID_MODEL_FROM_DATABASE=T320 10GbE Dual Port Adapter +@@ -43170,13 +43170,13 @@ pci:v0000144Dd0000A820* + ID_MODEL_FROM_DATABASE=NVMe SSD Controller 171X + + pci:v0000144Dd0000A820sv00001028sd00001F95* +- ID_MODEL_FROM_DATABASE=Express Flash NVMe XS1715 SSD 400GB ++ ID_MODEL_FROM_DATABASE=NVMe SSD Controller 171X (Express Flash NVMe XS1715 SSD 400GB) + + pci:v0000144Dd0000A820sv00001028sd00001F96* +- ID_MODEL_FROM_DATABASE=Express Flash NVMe XS1715 SSD 800GB ++ ID_MODEL_FROM_DATABASE=NVMe SSD Controller 171X (Express Flash NVMe XS1715 SSD 800GB) + + pci:v0000144Dd0000A820sv00001028sd00001F97* +- ID_MODEL_FROM_DATABASE=Express Flash NVMe XS1715 SSD 1600GB ++ ID_MODEL_FROM_DATABASE=NVMe SSD Controller 171X (Express Flash NVMe XS1715 SSD 1600GB) + + pci:v0000144E* + ID_VENDOR_FROM_DATABASE=OLITEC +@@ -43656,19 +43656,19 @@ pci:v000014C1d00000008* + ID_MODEL_FROM_DATABASE=Myri-10G Dual-Protocol NIC + + pci:v000014C1d00000008sv000014C1sd00000008* +- ID_MODEL_FROM_DATABASE=10G-PCIE-8A ++ ID_MODEL_FROM_DATABASE=Myri-10G Dual-Protocol NIC (10G-PCIE-8A) + + pci:v000014C1d00000008sv000014C1sd00000009* +- ID_MODEL_FROM_DATABASE=10G-PCIE-8A (MSI-X firmware) ++ ID_MODEL_FROM_DATABASE=Myri-10G Dual-Protocol NIC (10G-PCIE-8A (MSI-X firmware)) + + pci:v000014C1d00000008sv000014C1sd0000000A* +- ID_MODEL_FROM_DATABASE=10G-PCIE-8B ++ ID_MODEL_FROM_DATABASE=Myri-10G Dual-Protocol NIC (10G-PCIE-8B) + + pci:v000014C1d00008043* + ID_MODEL_FROM_DATABASE=Myrinet 2000 Scalable Cluster Interconnect + + pci:v000014C1d00008043sv0000103Csd00001240* +- ID_MODEL_FROM_DATABASE=Myrinet M2L-PCI64/2-3.0 LANai 7.4 (HP OEM) ++ ID_MODEL_FROM_DATABASE=Myrinet 2000 Scalable Cluster Interconnect (Myrinet M2L-PCI64/2-3.0 LANai 7.4 (HP OEM)) + + pci:v000014C2* + ID_VENDOR_FROM_DATABASE=DTK Computer +@@ -43929,19 +43929,19 @@ pci:v000014E4d00001600* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5752 Gigabit Ethernet PCI Express + + pci:v000014E4d00001600sv00001028sd000001C1* +- ID_MODEL_FROM_DATABASE=Precision 490 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5752 Gigabit Ethernet PCI Express (Precision 490) + + pci:v000014E4d00001600sv00001028sd000001C2* +- ID_MODEL_FROM_DATABASE=Latitude D620 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5752 Gigabit Ethernet PCI Express (Latitude D620) + + pci:v000014E4d00001600sv0000103Csd00003015* +- ID_MODEL_FROM_DATABASE=PCIe LAN on Motherboard ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5752 Gigabit Ethernet PCI Express (PCIe LAN on Motherboard) + + pci:v000014E4d00001600sv0000107Bsd00005048* +- ID_MODEL_FROM_DATABASE=E4500 Onboard ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5752 Gigabit Ethernet PCI Express (E4500 Onboard) + + pci:v000014E4d00001600sv00001259sd00002705* +- ID_MODEL_FROM_DATABASE=AT-2711FX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5752 Gigabit Ethernet PCI Express (AT-2711FX) + + pci:v000014E4d00001601* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5752M Gigabit Ethernet PCI Express +@@ -43956,52 +43956,52 @@ pci:v000014E4d00001639* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM5709 Gigabit Ethernet + + pci:v000014E4d00001639sv00001028sd00000235* +- ID_MODEL_FROM_DATABASE=PowerEdge R710 BCM5709 Gigabit Ethernet ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5709 Gigabit Ethernet (PowerEdge R710 BCM5709 Gigabit Ethernet) + + pci:v000014E4d00001639sv00001028sd00000236* +- ID_MODEL_FROM_DATABASE=PowerEdge R610 BCM5709 Gigabit Ethernet ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5709 Gigabit Ethernet (PowerEdge R610 BCM5709 Gigabit Ethernet) + + pci:v000014E4d00001639sv00001028sd00000237* +- ID_MODEL_FROM_DATABASE=PowerEdge T610 BCM5709 Gigabit Ethernet ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5709 Gigabit Ethernet (PowerEdge T610 BCM5709 Gigabit Ethernet) + + pci:v000014E4d00001639sv0000103Csd00007055* +- ID_MODEL_FROM_DATABASE=NC382i Integrated Multi-port PCI Express Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5709 Gigabit Ethernet (NC382i Integrated Multi-port PCI Express Gigabit Server Adapter) + + pci:v000014E4d00001639sv0000103Csd00007059* +- ID_MODEL_FROM_DATABASE=NC382T PCI Express Dual Port Multifunction Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5709 Gigabit Ethernet (NC382T PCI Express Dual Port Multifunction Gigabit Server Adapter) + + pci:v000014E4d00001639sv000010A9sd00008027* +- ID_MODEL_FROM_DATABASE=Quad port Gigabit Ethernet Controller ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5709 Gigabit Ethernet (Quad port Gigabit Ethernet Controller) + + pci:v000014E4d0000163A* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM5709S Gigabit Ethernet + + pci:v000014E4d0000163Asv00001028sd0000027B* +- ID_MODEL_FROM_DATABASE=PowerEdge M805 Broadcom NetXtreme II BCM5709S ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5709S Gigabit Ethernet (PowerEdge M805 Broadcom NetXtreme II BCM5709S) + + pci:v000014E4d0000163Asv00001028sd0000029C* +- ID_MODEL_FROM_DATABASE=PowerEdge M710 BCM5709S Gigabit Ethernet ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5709S Gigabit Ethernet (PowerEdge M710 BCM5709S Gigabit Ethernet) + + pci:v000014E4d0000163Asv0000103Csd0000171D* +- ID_MODEL_FROM_DATABASE=NC382m Dual Port 1GbE Multifunction BL-c Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5709S Gigabit Ethernet (NC382m Dual Port 1GbE Multifunction BL-c Adapter) + + pci:v000014E4d0000163Asv0000103Csd00007056* +- ID_MODEL_FROM_DATABASE=NC382i Integrated Quad Port PCI Express Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5709S Gigabit Ethernet (NC382i Integrated Quad Port PCI Express Gigabit Server Adapter) + + pci:v000014E4d0000163Asv00001259sd00002984* +- ID_MODEL_FROM_DATABASE=AT-2973SX ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5709S Gigabit Ethernet (AT-2973SX) + + pci:v000014E4d0000163B* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM5716 Gigabit Ethernet + + pci:v000014E4d0000163Bsv00001028sd0000028C* +- ID_MODEL_FROM_DATABASE=PowerEdge R410 BCM5716 Gigabit Ethernet ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5716 Gigabit Ethernet (PowerEdge R410 BCM5716 Gigabit Ethernet) + + pci:v000014E4d0000163Bsv00001028sd0000028D* +- ID_MODEL_FROM_DATABASE=PowerEdge T410 BCM5716 Gigabit Ethernet ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5716 Gigabit Ethernet (PowerEdge T410 BCM5716 Gigabit Ethernet) + + pci:v000014E4d0000163Bsv00001028sd000002F1* +- ID_MODEL_FROM_DATABASE=PowerEdge R510 BCM5716 Gigabit Ethernet ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5716 Gigabit Ethernet (PowerEdge R510 BCM5716 Gigabit Ethernet) + + pci:v000014E4d0000163C* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM5716S Gigabit Ethernet +@@ -44028,220 +44028,220 @@ pci:v000014E4d00001644* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet + + pci:v000014E4d00001644sv00001014sd00000277* +- ID_MODEL_FROM_DATABASE=Broadcom Vigil B5700 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (Broadcom Vigil B5700 1000Base-T) + + pci:v000014E4d00001644sv00001028sd000000D1* +- ID_MODEL_FROM_DATABASE=Broadcom BCM5700 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (Broadcom BCM5700) + + pci:v000014E4d00001644sv00001028sd00000106* +- ID_MODEL_FROM_DATABASE=Broadcom BCM5700 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (Broadcom BCM5700) + + pci:v000014E4d00001644sv00001028sd00000109* +- ID_MODEL_FROM_DATABASE=Broadcom BCM5700 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (Broadcom BCM5700 1000Base-T) + + pci:v000014E4d00001644sv00001028sd0000010A* +- ID_MODEL_FROM_DATABASE=Broadcom BCM5700 1000BaseTX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (Broadcom BCM5700 1000BaseTX) + + pci:v000014E4d00001644sv000010B7sd00001000* +- ID_MODEL_FROM_DATABASE=3C996-T 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (3C996-T 1000Base-T) + + pci:v000014E4d00001644sv000010B7sd00001001* +- ID_MODEL_FROM_DATABASE=3C996B-T 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (3C996B-T 1000Base-T) + + pci:v000014E4d00001644sv000010B7sd00001002* +- ID_MODEL_FROM_DATABASE=3C996C-T 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (3C996C-T 1000Base-T) + + pci:v000014E4d00001644sv000010B7sd00001003* +- ID_MODEL_FROM_DATABASE=3C997-T 1000Base-T Dual Port ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (3C997-T 1000Base-T Dual Port) + + pci:v000014E4d00001644sv000010B7sd00001004* +- ID_MODEL_FROM_DATABASE=3C996-SX 1000Base-SX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (3C996-SX 1000Base-SX) + + pci:v000014E4d00001644sv000010B7sd00001005* +- ID_MODEL_FROM_DATABASE=3C997-SX 1000Base-SX Dual Port ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (3C997-SX 1000Base-SX Dual Port) + + pci:v000014E4d00001644sv000010B7sd00001008* +- ID_MODEL_FROM_DATABASE=3C942 Gigabit LOM (31X31) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (3C942 Gigabit LOM (31X31)) + + pci:v000014E4d00001644sv000014E4sd00000002* +- ID_MODEL_FROM_DATABASE=NetXtreme 1000Base-SX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (NetXtreme 1000Base-SX) + + pci:v000014E4d00001644sv000014E4sd00000003* +- ID_MODEL_FROM_DATABASE=NetXtreme 1000Base-SX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (NetXtreme 1000Base-SX) + + pci:v000014E4d00001644sv000014E4sd00000004* +- ID_MODEL_FROM_DATABASE=NetXtreme 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (NetXtreme 1000Base-T) + + pci:v000014E4d00001644sv000014E4sd00001028* +- ID_MODEL_FROM_DATABASE=NetXtreme 1000BaseTX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (NetXtreme 1000BaseTX) + + pci:v000014E4d00001644sv000014E4sd00001644* +- ID_MODEL_FROM_DATABASE=BCM5700 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5700 Gigabit Ethernet (BCM5700 1000Base-T) + + pci:v000014E4d00001645* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet + + pci:v000014E4d00001645sv00000E11sd0000007C* +- ID_MODEL_FROM_DATABASE=NC7770 Gigabit Server Adapter (PCI-X, 10/100/1000-T) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (NC7770 Gigabit Server Adapter (PCI-X, 10/100/1000-T)) + + pci:v000014E4d00001645sv00000E11sd0000007D* +- ID_MODEL_FROM_DATABASE=NC6770 Gigabit Server Adapter (PCI-X, 1000-SX) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (NC6770 Gigabit Server Adapter (PCI-X, 1000-SX)) + + pci:v000014E4d00001645sv00000E11sd00000085* +- ID_MODEL_FROM_DATABASE=NC7780 Gigabit Server Adapter (embedded, WOL) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (NC7780 Gigabit Server Adapter (embedded, WOL)) + + pci:v000014E4d00001645sv00000E11sd00000099* +- ID_MODEL_FROM_DATABASE=NC7780 Gigabit Server Adapter (embedded, WOL) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (NC7780 Gigabit Server Adapter (embedded, WOL)) + + pci:v000014E4d00001645sv00000E11sd0000009A* +- ID_MODEL_FROM_DATABASE=NC7770 Gigabit Server Adapter (PCI-X, 10/100/1000-T) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (NC7770 Gigabit Server Adapter (PCI-X, 10/100/1000-T)) + + pci:v000014E4d00001645sv00000E11sd000000C1* +- ID_MODEL_FROM_DATABASE=NC6770 Gigabit Server Adapter (PCI-X, 1000-SX) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (NC6770 Gigabit Server Adapter (PCI-X, 1000-SX)) + + pci:v000014E4d00001645sv00001028sd00000121* +- ID_MODEL_FROM_DATABASE=Broadcom BCM5701 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (Broadcom BCM5701 1000Base-T) + + pci:v000014E4d00001645sv0000103Csd0000128A* +- ID_MODEL_FROM_DATABASE=BCM5701 1000Base-T (HP, OEM 3COM) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (BCM5701 1000Base-T (HP, OEM 3COM)) + + pci:v000014E4d00001645sv0000103Csd0000128B* +- ID_MODEL_FROM_DATABASE=1000Base-SX (PCI) [A7073A] ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (1000Base-SX (PCI) [A7073A]) + + pci:v000014E4d00001645sv0000103Csd000012A4* +- ID_MODEL_FROM_DATABASE=Core Lan 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (Core Lan 1000Base-T) + + pci:v000014E4d00001645sv0000103Csd000012C1* +- ID_MODEL_FROM_DATABASE=IOX Core Lan 1000Base-T [A7109AX] ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (IOX Core Lan 1000Base-T [A7109AX]) + + pci:v000014E4d00001645sv0000103Csd00001300* +- ID_MODEL_FROM_DATABASE=Core LAN/SCSI Combo [A6794A] ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (Core LAN/SCSI Combo [A6794A]) + + pci:v000014E4d00001645sv000010A9sd00008010* +- ID_MODEL_FROM_DATABASE=IO9/IO10 Gigabit Ethernet (Copper) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (IO9/IO10 Gigabit Ethernet (Copper)) + + pci:v000014E4d00001645sv000010A9sd00008011* +- ID_MODEL_FROM_DATABASE=Gigabit Ethernet (Copper) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (Gigabit Ethernet (Copper)) + + pci:v000014E4d00001645sv000010A9sd00008012* +- ID_MODEL_FROM_DATABASE=Gigabit Ethernet (Fiber) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (Gigabit Ethernet (Fiber)) + + pci:v000014E4d00001645sv000010B7sd00001004* +- ID_MODEL_FROM_DATABASE=3C996-SX 1000Base-SX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (3C996-SX 1000Base-SX) + + pci:v000014E4d00001645sv000010B7sd00001006* +- ID_MODEL_FROM_DATABASE=3C996B-T 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (3C996B-T 1000Base-T) + + pci:v000014E4d00001645sv000010B7sd00001007* +- ID_MODEL_FROM_DATABASE=3C1000-T 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (3C1000-T 1000Base-T) + + pci:v000014E4d00001645sv000010B7sd00001008* +- ID_MODEL_FROM_DATABASE=3C940-BR01 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (3C940-BR01 1000Base-T) + + pci:v000014E4d00001645sv000014E4sd00000001* +- ID_MODEL_FROM_DATABASE=BCM5701 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (BCM5701 1000Base-T) + + pci:v000014E4d00001645sv000014E4sd00000005* +- ID_MODEL_FROM_DATABASE=BCM5701 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (BCM5701 1000Base-T) + + pci:v000014E4d00001645sv000014E4sd00000006* +- ID_MODEL_FROM_DATABASE=BCM5701 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (BCM5701 1000Base-T) + + pci:v000014E4d00001645sv000014E4sd00000007* +- ID_MODEL_FROM_DATABASE=BCM5701 1000Base-SX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (BCM5701 1000Base-SX) + + pci:v000014E4d00001645sv000014E4sd00000008* +- ID_MODEL_FROM_DATABASE=BCM5701 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (BCM5701 1000Base-T) + + pci:v000014E4d00001645sv000014E4sd00001645* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet + + pci:v000014E4d00001645sv000014E4sd00008008* +- ID_MODEL_FROM_DATABASE=BCM5701 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5701 Gigabit Ethernet (BCM5701 1000Base-T) + + pci:v000014E4d00001646* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5702 Gigabit Ethernet + + pci:v000014E4d00001646sv00000E11sd000000BB* +- ID_MODEL_FROM_DATABASE=NC7760 1000BaseTX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5702 Gigabit Ethernet (NC7760 1000BaseTX) + + pci:v000014E4d00001646sv00001028sd00000126* +- ID_MODEL_FROM_DATABASE=Broadcom BCM5702 1000BaseTX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5702 Gigabit Ethernet (Broadcom BCM5702 1000BaseTX) + + pci:v000014E4d00001646sv000014E4sd00008009* +- ID_MODEL_FROM_DATABASE=BCM5702 1000BaseTX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5702 Gigabit Ethernet (BCM5702 1000BaseTX) + + pci:v000014E4d00001647* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet + + pci:v000014E4d00001647sv00000E11sd00000099* +- ID_MODEL_FROM_DATABASE=NC7780 1000BaseTX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet (NC7780 1000BaseTX) + + pci:v000014E4d00001647sv00000E11sd0000009A* +- ID_MODEL_FROM_DATABASE=NC7770 1000BaseTX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet (NC7770 1000BaseTX) + + pci:v000014E4d00001647sv000010A9sd00008010* +- ID_MODEL_FROM_DATABASE=SGI IO9 Gigabit Ethernet (Copper) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet (SGI IO9 Gigabit Ethernet (Copper)) + + pci:v000014E4d00001647sv000014E4sd00000009* +- ID_MODEL_FROM_DATABASE=BCM5703 1000BaseTX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet (BCM5703 1000BaseTX) + + pci:v000014E4d00001647sv000014E4sd0000000A* +- ID_MODEL_FROM_DATABASE=BCM5703 1000BaseSX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet (BCM5703 1000BaseSX) + + pci:v000014E4d00001647sv000014E4sd0000000B* +- ID_MODEL_FROM_DATABASE=BCM5703 1000BaseTX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet (BCM5703 1000BaseTX) + + pci:v000014E4d00001647sv000014E4sd00008009* +- ID_MODEL_FROM_DATABASE=BCM5703 1000BaseTX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet (BCM5703 1000BaseTX) + + pci:v000014E4d00001647sv000014E4sd0000800A* +- ID_MODEL_FROM_DATABASE=BCM5703 1000BaseTX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet (BCM5703 1000BaseTX) + + pci:v000014E4d00001648* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5704 Gigabit Ethernet + + pci:v000014E4d00001648sv00000E11sd000000CF* +- ID_MODEL_FROM_DATABASE=NC7772 Gigabit Server Adapter (PCI-X, 10,100,1000-T) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704 Gigabit Ethernet (NC7772 Gigabit Server Adapter (PCI-X, 10,100,1000-T)) + + pci:v000014E4d00001648sv00000E11sd000000D0* +- ID_MODEL_FROM_DATABASE=NC7782 Gigabit Server Adapter (PCI-X, 10,100,1000-T) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704 Gigabit Ethernet (NC7782 Gigabit Server Adapter (PCI-X, 10,100,1000-T)) + + pci:v000014E4d00001648sv00000E11sd000000D1* +- ID_MODEL_FROM_DATABASE=NC7783 Gigabit Server Adapter (PCI-X, 10,100,1000-T) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704 Gigabit Ethernet (NC7783 Gigabit Server Adapter (PCI-X, 10,100,1000-T)) + + pci:v000014E4d00001648sv00001028sd0000014A* +- ID_MODEL_FROM_DATABASE=PowerEdge 1750 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704 Gigabit Ethernet (PowerEdge 1750) + + pci:v000014E4d00001648sv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge 6850 Broadcom NetXtreme BCM5704 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704 Gigabit Ethernet (PowerEdge 6850 Broadcom NetXtreme BCM5704) + + pci:v000014E4d00001648sv0000103Csd0000310F* +- ID_MODEL_FROM_DATABASE=NC7782 Gigabit Server Adapter (PCI-X, 10,100,1000-T) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704 Gigabit Ethernet (NC7782 Gigabit Server Adapter (PCI-X, 10,100,1000-T)) + + pci:v000014E4d00001648sv000010A9sd00008013* +- ID_MODEL_FROM_DATABASE=Dual Port Gigabit Ethernet (PCI-X,Copper) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704 Gigabit Ethernet (Dual Port Gigabit Ethernet (PCI-X,Copper)) + + pci:v000014E4d00001648sv000010A9sd00008018* +- ID_MODEL_FROM_DATABASE=Dual Port Gigabit Ethernet (A330) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704 Gigabit Ethernet (Dual Port Gigabit Ethernet (A330)) + + pci:v000014E4d00001648sv000010A9sd0000801A* +- ID_MODEL_FROM_DATABASE=Dual Port Gigabit Ethernet (IA-blade) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704 Gigabit Ethernet (Dual Port Gigabit Ethernet (IA-blade)) + + pci:v000014E4d00001648sv000010A9sd0000801B* +- ID_MODEL_FROM_DATABASE=Quad Port Gigabit Ethernet (PCI-E,Copper) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704 Gigabit Ethernet (Quad Port Gigabit Ethernet (PCI-E,Copper)) + + pci:v000014E4d00001648sv000010B7sd00002000* +- ID_MODEL_FROM_DATABASE=3C998-T Dual Port 10/100/1000 PCI-X ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704 Gigabit Ethernet (3C998-T Dual Port 10/100/1000 PCI-X) + + pci:v000014E4d00001648sv000010B7sd00003000* +- ID_MODEL_FROM_DATABASE=3C999-T Quad Port 10/100/1000 PCI-X ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704 Gigabit Ethernet (3C999-T Quad Port 10/100/1000 PCI-X) + + pci:v000014E4d00001648sv00001166sd00001648* +- ID_MODEL_FROM_DATABASE=NetXtreme CIOB-E 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704 Gigabit Ethernet (NetXtreme CIOB-E 1000Base-T) + + pci:v000014E4d00001648sv00001734sd0000100B* +- ID_MODEL_FROM_DATABASE=PRIMERGY RX/TX series onboard LAN ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704 Gigabit Ethernet (PRIMERGY RX/TX series onboard LAN) + + pci:v000014E4d00001649* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5704S_2 Gigabit Ethernet +@@ -44250,46 +44250,46 @@ pci:v000014E4d0000164A* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM5706 Gigabit Ethernet + + pci:v000014E4d0000164Asv0000103Csd00001709* +- ID_MODEL_FROM_DATABASE=NC371i Integrated PCI-X Multifunction Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5706 Gigabit Ethernet (NC371i Integrated PCI-X Multifunction Gigabit Server Adapter) + + pci:v000014E4d0000164Asv0000103Csd00003070* +- ID_MODEL_FROM_DATABASE=NC380T PCI Express Dual Port Multifunction Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5706 Gigabit Ethernet (NC380T PCI Express Dual Port Multifunction Gigabit Server Adapter) + + pci:v000014E4d0000164Asv0000103Csd00003101* +- ID_MODEL_FROM_DATABASE=NC370T MultifuNCtion Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5706 Gigabit Ethernet (NC370T MultifuNCtion Gigabit Server Adapter) + + pci:v000014E4d0000164Asv0000103Csd00003106* +- ID_MODEL_FROM_DATABASE=NC370i Multifunction Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5706 Gigabit Ethernet (NC370i Multifunction Gigabit Server Adapter) + + pci:v000014E4d0000164C* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708 Gigabit Ethernet + + pci:v000014E4d0000164Csv00001028sd000001F0* +- ID_MODEL_FROM_DATABASE=PowerEdge R900 Broadcom NetXtreme II BCM5708 ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708 Gigabit Ethernet (PowerEdge R900 Broadcom NetXtreme II BCM5708) + + pci:v000014E4d0000164Csv00001028sd00000205* +- ID_MODEL_FROM_DATABASE=PowerEdge 2970 Broadcom NetXtreme II BCM5708 ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708 Gigabit Ethernet (PowerEdge 2970 Broadcom NetXtreme II BCM5708) + + pci:v000014E4d0000164Csv00001028sd0000020B* +- ID_MODEL_FROM_DATABASE=PowerEdge T605 Broadcom NetXtreme II BCM5708 ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708 Gigabit Ethernet (PowerEdge T605 Broadcom NetXtreme II BCM5708) + + pci:v000014E4d0000164Csv00001028sd00000221* +- ID_MODEL_FROM_DATABASE=PowerEdge R805 Broadcom NetXtreme II BCM5708 ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708 Gigabit Ethernet (PowerEdge R805 Broadcom NetXtreme II BCM5708) + + pci:v000014E4d0000164Csv00001028sd00000223* +- ID_MODEL_FROM_DATABASE=PowerEdge R905 Broadcom NetXtreme II BCM5708 ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708 Gigabit Ethernet (PowerEdge R905 Broadcom NetXtreme II BCM5708) + + pci:v000014E4d0000164Csv00001028sd00001F12* +- ID_MODEL_FROM_DATABASE=PowerEdge R805/R905 Broadcom NetXtreme II BCM5708 ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708 Gigabit Ethernet (PowerEdge R805/R905 Broadcom NetXtreme II BCM5708) + + pci:v000014E4d0000164Csv0000103Csd00007037* +- ID_MODEL_FROM_DATABASE=NC373T PCI Express Multifunction Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708 Gigabit Ethernet (NC373T PCI Express Multifunction Gigabit Server Adapter) + + pci:v000014E4d0000164Csv0000103Csd00007038* +- ID_MODEL_FROM_DATABASE=NC373i Integrated Multifunction Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708 Gigabit Ethernet (NC373i Integrated Multifunction Gigabit Server Adapter) + + pci:v000014E4d0000164Csv0000103Csd00007045* +- ID_MODEL_FROM_DATABASE=NC374m PCI Express Dual Port Multifunction Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708 Gigabit Ethernet (NC374m PCI Express Dual Port Multifunction Gigabit Server Adapter) + + pci:v000014E4d0000164D* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5702FE Gigabit Ethernet +@@ -44298,10 +44298,10 @@ pci:v000014E4d0000164E* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM57710 10-Gigabit PCIe [Everest] + + pci:v000014E4d0000164Esv0000103Csd0000171C* +- ID_MODEL_FROM_DATABASE=NC532m Dual Port 10GbE Multifunction BL-C Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57710 10-Gigabit PCIe [Everest] (NC532m Dual Port 10GbE Multifunction BL-C Adapter) + + pci:v000014E4d0000164Esv0000103Csd00007058* +- ID_MODEL_FROM_DATABASE=NC532i Dual Port 10GbE Multifunction BL-C Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57710 10-Gigabit PCIe [Everest] (NC532i Dual Port 10GbE Multifunction BL-C Adapter) + + pci:v000014E4d0000164F* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM57711 10-Gigabit PCIe +@@ -44310,31 +44310,31 @@ pci:v000014E4d00001650* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM57711E 10-Gigabit PCIe + + pci:v000014E4d00001650sv0000103Csd0000171C* +- ID_MODEL_FROM_DATABASE=NC532m Dual Port 10GbE Multifunction BL-C Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57711E 10-Gigabit PCIe (NC532m Dual Port 10GbE Multifunction BL-C Adapter) + + pci:v000014E4d00001650sv0000103Csd00007058* +- ID_MODEL_FROM_DATABASE=NC532i Dual Port 10GbE Multifunction BL-C Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57711E 10-Gigabit PCIe (NC532i Dual Port 10GbE Multifunction BL-C Adapter) + + pci:v000014E4d00001653* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5705 Gigabit Ethernet + + pci:v000014E4d00001653sv00000E11sd000000E3* +- ID_MODEL_FROM_DATABASE=NC7761 Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5705 Gigabit Ethernet (NC7761 Gigabit Server Adapter) + + pci:v000014E4d00001653sv00001734sd00001073* +- ID_MODEL_FROM_DATABASE=Primergy Econel 200 D2020 mainboard ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5705 Gigabit Ethernet (Primergy Econel 200 D2020 mainboard) + + pci:v000014E4d00001654* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5705_2 Gigabit Ethernet + + pci:v000014E4d00001654sv00000E11sd000000E3* +- ID_MODEL_FROM_DATABASE=NC7761 Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5705_2 Gigabit Ethernet (NC7761 Gigabit Server Adapter) + + pci:v000014E4d00001654sv0000103Csd00003100* +- ID_MODEL_FROM_DATABASE=NC1020 ProLiant Gigabit Server Adapter 32 PCI ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5705_2 Gigabit Ethernet (NC1020 ProLiant Gigabit Server Adapter 32 PCI) + + pci:v000014E4d00001654sv0000103Csd00003226* +- ID_MODEL_FROM_DATABASE=NC150T 4-port Gigabit Combo Switch & Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5705_2 Gigabit Ethernet (NC150T 4-port Gigabit Combo Switch & Adapter) + + pci:v000014E4d00001655* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5717 Gigabit Ethernet PCIe +@@ -44349,52 +44349,52 @@ pci:v000014E4d00001659* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5721 Gigabit Ethernet PCI Express + + pci:v000014E4d00001659sv00001014sd000002C6* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5721 Gigabit Ethernet PCI Express (eServer xSeries server mainboard) + + pci:v000014E4d00001659sv00001028sd000001E6* +- ID_MODEL_FROM_DATABASE=PowerEdge 860 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5721 Gigabit Ethernet PCI Express (PowerEdge 860) + + pci:v000014E4d00001659sv00001028sd0000023C* +- ID_MODEL_FROM_DATABASE=PowerEdge R200 Broadcom NetXtreme BCM5721 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5721 Gigabit Ethernet PCI Express (PowerEdge R200 Broadcom NetXtreme BCM5721) + + pci:v000014E4d00001659sv0000103Csd0000170B* +- ID_MODEL_FROM_DATABASE=NC320m PCI Express Dual Port Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5721 Gigabit Ethernet PCI Express (NC320m PCI Express Dual Port Gigabit Server Adapter) + + pci:v000014E4d00001659sv0000103Csd00007031* +- ID_MODEL_FROM_DATABASE=NC320T PCIe Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5721 Gigabit Ethernet PCI Express (NC320T PCIe Gigabit Server Adapter) + + pci:v000014E4d00001659sv0000103Csd00007032* +- ID_MODEL_FROM_DATABASE=NC320i PCIe Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5721 Gigabit Ethernet PCI Express (NC320i PCIe Gigabit Server Adapter) + + pci:v000014E4d00001659sv00001734sd00001061* +- ID_MODEL_FROM_DATABASE=PRIMERGY RX/TX S2 series onboard LAN ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5721 Gigabit Ethernet PCI Express (PRIMERGY RX/TX S2 series onboard LAN) + + pci:v000014E4d0000165A* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5722 Gigabit Ethernet PCI Express + + pci:v000014E4d0000165Asv00001014sd00000378* +- ID_MODEL_FROM_DATABASE=IBM System x3350 (Machine type 4192) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5722 Gigabit Ethernet PCI Express (IBM System x3350 (Machine type 4192)) + + pci:v000014E4d0000165Asv00001028sd0000020F* +- ID_MODEL_FROM_DATABASE=PowerEdge R300 Broadcom NetXtreme 5722 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5722 Gigabit Ethernet PCI Express (PowerEdge R300 Broadcom NetXtreme 5722) + + pci:v000014E4d0000165Asv00001028sd00000210* +- ID_MODEL_FROM_DATABASE=PowerEdge T300 Broadcom NetXtreme 5722 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5722 Gigabit Ethernet PCI Express (PowerEdge T300 Broadcom NetXtreme 5722) + + pci:v000014E4d0000165Asv00001028sd00000225* +- ID_MODEL_FROM_DATABASE=PowerEdge T105 Broadcom NetXtreme 5722 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5722 Gigabit Ethernet PCI Express (PowerEdge T105 Broadcom NetXtreme 5722) + + pci:v000014E4d0000165Asv0000103Csd00007051* +- ID_MODEL_FROM_DATABASE=NC105i PCIe Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5722 Gigabit Ethernet PCI Express (NC105i PCIe Gigabit Server Adapter) + + pci:v000014E4d0000165Asv0000103Csd00007052* +- ID_MODEL_FROM_DATABASE=NC105T PCIe Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5722 Gigabit Ethernet PCI Express (NC105T PCIe Gigabit Server Adapter) + + pci:v000014E4d0000165B* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5723 Gigabit Ethernet PCIe + + pci:v000014E4d0000165Bsv0000103Csd0000705D* +- ID_MODEL_FROM_DATABASE=NC107i Integrated PCI Express Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5723 Gigabit Ethernet PCIe (NC107i Integrated PCI Express Gigabit Server Adapter) + + pci:v000014E4d0000165C* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5724 Gigabit Ethernet PCIe +@@ -44403,25 +44403,25 @@ pci:v000014E4d0000165D* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5705M Gigabit Ethernet + + pci:v000014E4d0000165Dsv00001028sd0000865D* +- ID_MODEL_FROM_DATABASE=Latitude D400 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5705M Gigabit Ethernet (Latitude D400) + + pci:v000014E4d0000165Dsv000014E4sd0000165D* +- ID_MODEL_FROM_DATABASE=Dell Latitude D600 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5705M Gigabit Ethernet (Dell Latitude D600) + + pci:v000014E4d0000165E* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5705M_2 Gigabit Ethernet + + pci:v000014E4d0000165Esv0000103Csd0000088C* +- ID_MODEL_FROM_DATABASE=NC8000 laptop ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5705M_2 Gigabit Ethernet (NC8000 laptop) + + pci:v000014E4d0000165Esv0000103Csd00000890* +- ID_MODEL_FROM_DATABASE=NC6000 laptop ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5705M_2 Gigabit Ethernet (NC6000 laptop) + + pci:v000014E4d0000165Esv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5705M_2 Gigabit Ethernet (NX6110/NC6120) + + pci:v000014E4d0000165Esv000010CFsd00001279* +- ID_MODEL_FROM_DATABASE=LifeBook E8010D ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5705M_2 Gigabit Ethernet (LifeBook E8010D) + + pci:v000014E4d0000165F* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5720 Gigabit Ethernet PCIe +@@ -44439,7 +44439,7 @@ pci:v000014E4d00001668* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5714 Gigabit Ethernet + + pci:v000014E4d00001668sv0000103Csd00007039* +- ID_MODEL_FROM_DATABASE=NC324i PCIe Dual Port Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5714 Gigabit Ethernet (NC324i PCIe Dual Port Gigabit Server Adapter) + + pci:v000014E4d00001669* + ID_MODEL_FROM_DATABASE=NetXtreme 5714S Gigabit Ethernet +@@ -44448,7 +44448,7 @@ pci:v000014E4d0000166A* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5780 Gigabit Ethernet + + pci:v000014E4d0000166Asv0000103Csd00007035* +- ID_MODEL_FROM_DATABASE=NC325i Integrated Dual port PCIe Express Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5780 Gigabit Ethernet (NC325i Integrated Dual port PCIe Express Gigabit Server Adapter) + + pci:v000014E4d0000166B* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5780S Gigabit Ethernet +@@ -44472,91 +44472,91 @@ pci:v000014E4d00001677* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5751 Gigabit Ethernet PCI Express + + pci:v000014E4d00001677sv00001028sd00000176* +- ID_MODEL_FROM_DATABASE=Dimension XPS Gen 4 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5751 Gigabit Ethernet PCI Express (Dimension XPS Gen 4) + + pci:v000014E4d00001677sv00001028sd00000177* +- ID_MODEL_FROM_DATABASE=Dimension 8400 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5751 Gigabit Ethernet PCI Express (Dimension 8400) + + pci:v000014E4d00001677sv00001028sd00000179* +- ID_MODEL_FROM_DATABASE=Optiplex GX280 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5751 Gigabit Ethernet PCI Express (Optiplex GX280) + + pci:v000014E4d00001677sv00001028sd00000182* +- ID_MODEL_FROM_DATABASE=Latitude D610 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5751 Gigabit Ethernet PCI Express (Latitude D610) + + pci:v000014E4d00001677sv00001028sd00000187* +- ID_MODEL_FROM_DATABASE=Precision M70 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5751 Gigabit Ethernet PCI Express (Precision M70) + + pci:v000014E4d00001677sv00001028sd000001A8* +- ID_MODEL_FROM_DATABASE=Precision 380 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5751 Gigabit Ethernet PCI Express (Precision 380) + + pci:v000014E4d00001677sv00001028sd000001AD* +- ID_MODEL_FROM_DATABASE=OptiPlex GX620 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5751 Gigabit Ethernet PCI Express (OptiPlex GX620) + + pci:v000014E4d00001677sv0000103Csd00003006* +- ID_MODEL_FROM_DATABASE=DC7100 SFF(DX878AV) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5751 Gigabit Ethernet PCI Express (DC7100 SFF(DX878AV)) + + pci:v000014E4d00001677sv00001462sd0000028C* +- ID_MODEL_FROM_DATABASE=915P/G Neo2 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5751 Gigabit Ethernet PCI Express (915P/G Neo2) + + pci:v000014E4d00001677sv00001734sd0000105D* +- ID_MODEL_FROM_DATABASE=Scenic W620 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5751 Gigabit Ethernet PCI Express (Scenic W620) + + pci:v000014E4d00001678* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5715 Gigabit Ethernet + + pci:v000014E4d00001678sv0000103Csd0000703E* +- ID_MODEL_FROM_DATABASE=NC326i PCIe Dual Port Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5715 Gigabit Ethernet (NC326i PCIe Dual Port Gigabit Server Adapter) + + pci:v000014E4d00001679* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5715S Gigabit Ethernet + + pci:v000014E4d00001679sv0000103Csd00001707* +- ID_MODEL_FROM_DATABASE=NC326m PCIe Dual Port Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5715S Gigabit Ethernet (NC326m PCIe Dual Port Adapter) + + pci:v000014E4d00001679sv0000103Csd0000170C* +- ID_MODEL_FROM_DATABASE=NC325m PCIe Quad Port Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5715S Gigabit Ethernet (NC325m PCIe Quad Port Adapter) + + pci:v000014E4d00001679sv0000103Csd0000703C* +- ID_MODEL_FROM_DATABASE=NC326i PCIe Dual Port Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5715S Gigabit Ethernet (NC326i PCIe Dual Port Gigabit Server Adapter) + + pci:v000014E4d0000167A* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5754 Gigabit Ethernet PCI Express + + pci:v000014E4d0000167Asv00001028sd000001DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 745 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5754 Gigabit Ethernet PCI Express (OptiPlex 745) + + pci:v000014E4d0000167Asv00001028sd000001DE* +- ID_MODEL_FROM_DATABASE=Precision 390 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5754 Gigabit Ethernet PCI Express (Precision 390) + + pci:v000014E4d0000167Asv00001028sd000001DF* +- ID_MODEL_FROM_DATABASE=PowerEdge SC440 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5754 Gigabit Ethernet PCI Express (PowerEdge SC440) + + pci:v000014E4d0000167Asv00001028sd00000214* +- ID_MODEL_FROM_DATABASE=Precision T3400 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5754 Gigabit Ethernet PCI Express (Precision T3400) + + pci:v000014E4d0000167Asv00001028sd0000021E* +- ID_MODEL_FROM_DATABASE=Precision T5400 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5754 Gigabit Ethernet PCI Express (Precision T5400) + + pci:v000014E4d0000167B* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5755 Gigabit Ethernet PCI Express + + pci:v000014E4d0000167Bsv0000103Csd0000280A* +- ID_MODEL_FROM_DATABASE=DC5750 Microtower ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5755 Gigabit Ethernet PCI Express (DC5750 Microtower) + + pci:v000014E4d0000167D* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5751M Gigabit Ethernet PCI Express + + pci:v000014E4d0000167Dsv00001014sd00000577* +- ID_MODEL_FROM_DATABASE=ThinkPad Z60t ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5751M Gigabit Ethernet PCI Express (ThinkPad Z60t) + + pci:v000014E4d0000167Dsv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=HP nx8220 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5751M Gigabit Ethernet PCI Express (HP nx8220) + + pci:v000014E4d0000167Dsv0000103Csd00000940* +- ID_MODEL_FROM_DATABASE=HP Compaq nw8240 Mobile Workstation ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5751M Gigabit Ethernet PCI Express (HP Compaq nw8240 Mobile Workstation) + + pci:v000014E4d0000167Dsv000017AAsd00002081* +- ID_MODEL_FROM_DATABASE=ThinkPad R60e ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5751M Gigabit Ethernet PCI Express (ThinkPad R60e) + + pci:v000014E4d0000167E* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5751F Fast Ethernet PCI Express +@@ -44592,22 +44592,22 @@ pci:v000014E4d00001688* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5761 10/100/1000BASE-T Ethernet + + pci:v000014E4d00001688sv00001259sd00002708* +- ID_MODEL_FROM_DATABASE=AT-2712 FX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5761 10/100/1000BASE-T Ethernet (AT-2712 FX) + + pci:v000014E4d0000168A* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1/10 Gigabit Ethernet + + pci:v000014E4d0000168Asv00001028sd00001F5C* +- ID_MODEL_FROM_DATABASE=BCM57800 10-Gigabit Ethernet ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1/10 Gigabit Ethernet (BCM57800 10-Gigabit Ethernet) + + pci:v000014E4d0000168Asv00001028sd00001F5D* +- ID_MODEL_FROM_DATABASE=BCM57800 10-Gigabit Ethernet ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1/10 Gigabit Ethernet (BCM57800 10-Gigabit Ethernet) + + pci:v000014E4d0000168Asv00001028sd00001F67* +- ID_MODEL_FROM_DATABASE=BCM57800 1-Gigabit Ethernet ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1/10 Gigabit Ethernet (BCM57800 1-Gigabit Ethernet) + + pci:v000014E4d0000168Asv00001028sd00001F68* +- ID_MODEL_FROM_DATABASE=BCM57800 1-Gigabit Ethernet ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1/10 Gigabit Ethernet (BCM57800 1-Gigabit Ethernet) + + pci:v000014E4d0000168D* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM57840 10/20 Gigabit Ethernet +@@ -44616,34 +44616,34 @@ pci:v000014E4d0000168E* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet + + pci:v000014E4d0000168Esv0000103Csd00001798* +- ID_MODEL_FROM_DATABASE=Flex-10 10Gb 2-port 530FLB Adapter [Meru] ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet (Flex-10 10Gb 2-port 530FLB Adapter [Meru]) + + pci:v000014E4d0000168Esv0000103Csd000017A5* +- ID_MODEL_FROM_DATABASE=HP Flex-10 10Gb 2-port 530M Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet (HP Flex-10 10Gb 2-port 530M Adapter) + + pci:v000014E4d0000168Esv0000103Csd000018D3* +- ID_MODEL_FROM_DATABASE=HP Ethernet 10Gb 2-port 530T Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet (HP Ethernet 10Gb 2-port 530T Adapter) + + pci:v000014E4d0000168Esv0000103Csd00001930* +- ID_MODEL_FROM_DATABASE=HP FlexFabric 10Gb 2-port 534FLR-SFP+ Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet (HP FlexFabric 10Gb 2-port 534FLR-SFP+ Adapter) + + pci:v000014E4d0000168Esv0000103Csd00001931* +- ID_MODEL_FROM_DATABASE=HP StoreFabric CN1100R Dual Port Converged Network Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet (HP StoreFabric CN1100R Dual Port Converged Network Adapter) + + pci:v000014E4d0000168Esv0000103Csd00001932* +- ID_MODEL_FROM_DATABASE=HP FlexFabric 10Gb 2-port 534FLB Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet (HP FlexFabric 10Gb 2-port 534FLB Adapter) + + pci:v000014E4d0000168Esv0000103Csd00001933* +- ID_MODEL_FROM_DATABASE=HP FlexFabric 10Gb 2-port 534M Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet (HP FlexFabric 10Gb 2-port 534M Adapter) + + pci:v000014E4d0000168Esv0000103Csd0000193A* +- ID_MODEL_FROM_DATABASE=HP FlexFabric 10Gb 2-port 533FLR-T Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet (HP FlexFabric 10Gb 2-port 533FLR-T Adapter) + + pci:v000014E4d0000168Esv0000103Csd00003382* +- ID_MODEL_FROM_DATABASE=HP Ethernet 10Gb 2-port 530FLR-SFP+ Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet (HP Ethernet 10Gb 2-port 530FLR-SFP+ Adapter) + + pci:v000014E4d0000168Esv0000103Csd0000339D* +- ID_MODEL_FROM_DATABASE=HP Ethernet 10Gb 2-port 530SFP+ Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet (HP Ethernet 10Gb 2-port 530SFP+ Adapter) + + pci:v000014E4d00001690* + ID_MODEL_FROM_DATABASE=NetXtreme BCM57760 Gigabit Ethernet PCIe +@@ -44652,22 +44652,22 @@ pci:v000014E4d00001691* + ID_MODEL_FROM_DATABASE=NetLink BCM57788 Gigabit Ethernet PCIe + + pci:v000014E4d00001691sv00001028sd000004AA* +- ID_MODEL_FROM_DATABASE=XPS 8300 ++ ID_MODEL_FROM_DATABASE=NetLink BCM57788 Gigabit Ethernet PCIe (XPS 8300) + + pci:v000014E4d00001692* + ID_MODEL_FROM_DATABASE=NetLink BCM57780 Gigabit Ethernet PCIe + + pci:v000014E4d00001692sv00001025sd0000033D* +- ID_MODEL_FROM_DATABASE=Aspire 7740G ++ ID_MODEL_FROM_DATABASE=NetLink BCM57780 Gigabit Ethernet PCIe (Aspire 7740G) + + pci:v000014E4d00001693* + ID_MODEL_FROM_DATABASE=NetLink BCM5787M Gigabit Ethernet PCI Express + + pci:v000014E4d00001693sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Aspire 5920G ++ ID_MODEL_FROM_DATABASE=NetLink BCM5787M Gigabit Ethernet PCI Express (Aspire 5920G) + + pci:v000014E4d00001693sv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=6710b ++ ID_MODEL_FROM_DATABASE=NetLink BCM5787M Gigabit Ethernet PCI Express (6710b) + + pci:v000014E4d00001694* + ID_MODEL_FROM_DATABASE=NetLink BCM57790 Gigabit Ethernet PCIe +@@ -44676,10 +44676,10 @@ pci:v000014E4d00001696* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5782 Gigabit Ethernet + + pci:v000014E4d00001696sv0000103Csd000012BC* +- ID_MODEL_FROM_DATABASE=d530 CMT (DG746A) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5782 Gigabit Ethernet (d530 CMT (DG746A)) + + pci:v000014E4d00001696sv000014E4sd0000000D* +- ID_MODEL_FROM_DATABASE=NetXtreme BCM5782 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5782 Gigabit Ethernet (NetXtreme BCM5782 1000Base-T) + + pci:v000014E4d00001698* + ID_MODEL_FROM_DATABASE=NetLink BCM5784M Gigabit Ethernet PCIe +@@ -44697,16 +44697,16 @@ pci:v000014E4d0000169C* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5788 Gigabit Ethernet + + pci:v000014E4d0000169Csv0000103Csd0000308B* +- ID_MODEL_FROM_DATABASE=MX6125 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5788 Gigabit Ethernet (MX6125) + + pci:v000014E4d0000169Csv0000103Csd000030A1* +- ID_MODEL_FROM_DATABASE=NC2400 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5788 Gigabit Ethernet (NC2400) + + pci:v000014E4d0000169Csv0000144Dsd0000C018* +- ID_MODEL_FROM_DATABASE=X20 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5788 Gigabit Ethernet (X20) + + pci:v000014E4d0000169Csv00001462sd0000590C* +- ID_MODEL_FROM_DATABASE=KT6 Delta-FIS2R (MS-6590) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5788 Gigabit Ethernet (KT6 Delta-FIS2R (MS-6590)) + + pci:v000014E4d0000169D* + ID_MODEL_FROM_DATABASE=NetLink BCM5789 Gigabit Ethernet PCI Express +@@ -44721,112 +44721,112 @@ pci:v000014E4d000016A2* + ID_MODEL_FROM_DATABASE=BCM57840 NetXtreme II 10/20-Gigabit Ethernet + + pci:v000014E4d000016A2sv0000103Csd00001916* +- ID_MODEL_FROM_DATABASE=HP FlexFabric 20Gb 2-port 630FLB Adapter ++ ID_MODEL_FROM_DATABASE=BCM57840 NetXtreme II 10/20-Gigabit Ethernet (HP FlexFabric 20Gb 2-port 630FLB Adapter) + + pci:v000014E4d000016A2sv0000103Csd00001917* +- ID_MODEL_FROM_DATABASE=HP FlexFabric 20Gb 2-port 630M Adapter ++ ID_MODEL_FROM_DATABASE=BCM57840 NetXtreme II 10/20-Gigabit Ethernet (HP FlexFabric 20Gb 2-port 630M Adapter) + + pci:v000014E4d000016A4* + ID_MODEL_FROM_DATABASE=BCM57840 NetXtreme II Ethernet Multi Function + + pci:v000014E4d000016A4sv0000103Csd00001916* +- ID_MODEL_FROM_DATABASE=HP NPAR 20Gb 2-port 630FLB Adapter ++ ID_MODEL_FROM_DATABASE=BCM57840 NetXtreme II Ethernet Multi Function (HP NPAR 20Gb 2-port 630FLB Adapter) + + pci:v000014E4d000016A4sv0000103Csd00001917* +- ID_MODEL_FROM_DATABASE=HP NPAR 20Gb 2-port 630M Adapter ++ ID_MODEL_FROM_DATABASE=BCM57840 NetXtreme II Ethernet Multi Function (HP NPAR 20Gb 2-port 630M Adapter) + + pci:v000014E4d000016A5* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1/10 Gigabit Ethernet Multi Function + + pci:v000014E4d000016A5sv00001028sd00001F5C* +- ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 10-Gigabit Ethernet Multi Function ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1/10 Gigabit Ethernet Multi Function (NetXtreme II BCM57800 10-Gigabit Ethernet Multi Function) + + pci:v000014E4d000016A5sv00001028sd00001F5D* +- ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 10-Gigabit Ethernet Multi Function ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1/10 Gigabit Ethernet Multi Function (NetXtreme II BCM57800 10-Gigabit Ethernet Multi Function) + + pci:v000014E4d000016A5sv00001028sd00001F67* +- ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1-Gigabit Ethernet Multi Function ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1/10 Gigabit Ethernet Multi Function (NetXtreme II BCM57800 1-Gigabit Ethernet Multi Function) + + pci:v000014E4d000016A5sv00001028sd00001F68* +- ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1-Gigabit Ethernet Multi Function ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1/10 Gigabit Ethernet Multi Function (NetXtreme II BCM57800 1-Gigabit Ethernet Multi Function) + + pci:v000014E4d000016A6* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5702X Gigabit Ethernet + + pci:v000014E4d000016A6sv00000E11sd000000BB* +- ID_MODEL_FROM_DATABASE=NC7760 Gigabit Server Adapter (PCI-X, 10/100/1000-T) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5702X Gigabit Ethernet (NC7760 Gigabit Server Adapter (PCI-X, 10/100/1000-T)) + + pci:v000014E4d000016A6sv00001028sd00000126* +- ID_MODEL_FROM_DATABASE=BCM5702 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5702X Gigabit Ethernet (BCM5702 1000Base-T) + + pci:v000014E4d000016A6sv000014E4sd0000000C* +- ID_MODEL_FROM_DATABASE=BCM5702 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5702X Gigabit Ethernet (BCM5702 1000Base-T) + + pci:v000014E4d000016A6sv000014E4sd00008009* +- ID_MODEL_FROM_DATABASE=BCM5702 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5702X Gigabit Ethernet (BCM5702 1000Base-T) + + pci:v000014E4d000016A7* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5703X Gigabit Ethernet + + pci:v000014E4d000016A7sv00000E11sd000000CA* +- ID_MODEL_FROM_DATABASE=NC7771 Gigabit Server Adapter (PCI-X, 10,100,1000-T) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703X Gigabit Ethernet (NC7771 Gigabit Server Adapter (PCI-X, 10,100,1000-T)) + + pci:v000014E4d000016A7sv00000E11sd000000CB* +- ID_MODEL_FROM_DATABASE=NC7781 Gigabit Server Adapter (PCI-X, 10,100,1000-T) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703X Gigabit Ethernet (NC7781 Gigabit Server Adapter (PCI-X, 10,100,1000-T)) + + pci:v000014E4d000016A7sv00001014sd0000026F* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703X Gigabit Ethernet (eServer xSeries server mainboard) + + pci:v000014E4d000016A7sv000014E4sd00000009* +- ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703X Gigabit Ethernet (NetXtreme BCM5703 1000Base-T) + + pci:v000014E4d000016A7sv000014E4sd0000000A* +- ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 1000Base-SX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703X Gigabit Ethernet (NetXtreme BCM5703 1000Base-SX) + + pci:v000014E4d000016A7sv000014E4sd0000000B* +- ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703X Gigabit Ethernet (NetXtreme BCM5703 1000Base-T) + + pci:v000014E4d000016A7sv000014E4sd0000800A* +- ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703X Gigabit Ethernet (NetXtreme BCM5703 1000Base-T) + + pci:v000014E4d000016A8* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5704S Gigabit Ethernet + + pci:v000014E4d000016A8sv0000103Csd0000132B* +- ID_MODEL_FROM_DATABASE=PCI-X 1000Mbps Dual-port Built-in ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704S Gigabit Ethernet (PCI-X 1000Mbps Dual-port Built-in) + + pci:v000014E4d000016A8sv000010A9sd00008014* +- ID_MODEL_FROM_DATABASE=Dual Port Gigabit Ethernet (PCI-X,Fiber) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704S Gigabit Ethernet (Dual Port Gigabit Ethernet (PCI-X,Fiber)) + + pci:v000014E4d000016A8sv000010A9sd0000801C* +- ID_MODEL_FROM_DATABASE=Quad Port Gigabit Ethernet (PCI-E,Fiber) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704S Gigabit Ethernet (Quad Port Gigabit Ethernet (PCI-E,Fiber)) + + pci:v000014E4d000016A8sv000010B7sd00002001* +- ID_MODEL_FROM_DATABASE=3C998-SX Dual Port 1000-SX PCI-X ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5704S Gigabit Ethernet (3C998-SX Dual Port 1000-SX PCI-X) + + pci:v000014E4d000016A9* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1/10 Gigabit Ethernet Virtual Function + + pci:v000014E4d000016A9sv00001028sd00001F5C* +- ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 10-Gigabit Ethernet Virtual Function ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1/10 Gigabit Ethernet Virtual Function (NetXtreme II BCM57800 10-Gigabit Ethernet Virtual Function) + + pci:v000014E4d000016A9sv00001028sd00001F5D* +- ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 10-Gigabit Ethernet Virtual Function ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1/10 Gigabit Ethernet Virtual Function (NetXtreme II BCM57800 10-Gigabit Ethernet Virtual Function) + + pci:v000014E4d000016A9sv00001028sd00001F67* +- ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1-Gigabit Ethernet Virtual Function ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1/10 Gigabit Ethernet Virtual Function (NetXtreme II BCM57800 1-Gigabit Ethernet Virtual Function) + + pci:v000014E4d000016A9sv00001028sd00001F68* +- ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1-Gigabit Ethernet Virtual Function ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57800 1/10 Gigabit Ethernet Virtual Function (NetXtreme II BCM57800 1-Gigabit Ethernet Virtual Function) + + pci:v000014E4d000016AA* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM5706S Gigabit Ethernet + + pci:v000014E4d000016AAsv0000103Csd00003102* +- ID_MODEL_FROM_DATABASE=NC370F MultifuNCtion Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5706S Gigabit Ethernet (NC370F MultifuNCtion Gigabit Server Adapter) + + pci:v000014E4d000016AAsv0000103Csd0000310C* +- ID_MODEL_FROM_DATABASE=NC370i Multifunction Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5706S Gigabit Ethernet (NC370i Multifunction Gigabit Server Adapter) + + pci:v000014E4d000016AB* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM57840 10/20 Gigabit Ethernet Multi Function +@@ -44838,97 +44838,97 @@ pci:v000014E4d000016ACsv00001014sd00000304* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708S Gigabit Ethernet + + pci:v000014E4d000016ACsv00001028sd000001BB* +- ID_MODEL_FROM_DATABASE=PowerEdge 1955 Broadcom NetXtreme II BCM5708S ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708S Gigabit Ethernet (PowerEdge 1955 Broadcom NetXtreme II BCM5708S) + + pci:v000014E4d000016ACsv00001028sd0000020C* +- ID_MODEL_FROM_DATABASE=PowerEdge M605 Broadcom NetXtreme II BCM5708S ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708S Gigabit Ethernet (PowerEdge M605 Broadcom NetXtreme II BCM5708S) + + pci:v000014E4d000016ACsv0000103Csd00001706* +- ID_MODEL_FROM_DATABASE=NC373m Multifunction Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708S Gigabit Ethernet (NC373m Multifunction Gigabit Server Adapter) + + pci:v000014E4d000016ACsv0000103Csd00007038* +- ID_MODEL_FROM_DATABASE=NC373i PCI Express Multifunction Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708S Gigabit Ethernet (NC373i PCI Express Multifunction Gigabit Server Adapter) + + pci:v000014E4d000016ACsv0000103Csd0000703B* +- ID_MODEL_FROM_DATABASE=NC373i Integrated Multifunction Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708S Gigabit Ethernet (NC373i Integrated Multifunction Gigabit Server Adapter) + + pci:v000014E4d000016ACsv0000103Csd0000703D* +- ID_MODEL_FROM_DATABASE=NC373F PCI Express Multifunction Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM5708S Gigabit Ethernet (NC373F PCI Express Multifunction Gigabit Server Adapter) + + pci:v000014E4d000016AD* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM57840 10/20 Gigabit Ethernet Virtual Function + + pci:v000014E4d000016ADsv0000103Csd00001916* +- ID_MODEL_FROM_DATABASE=HP FlexFabric 20Gb 2-port 630FLB Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57840 10/20 Gigabit Ethernet Virtual Function (HP FlexFabric 20Gb 2-port 630FLB Adapter) + + pci:v000014E4d000016ADsv0000103Csd00001917* +- ID_MODEL_FROM_DATABASE=HP FlexFabric 20Gb 2-port 630M Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57840 10/20 Gigabit Ethernet Virtual Function (HP FlexFabric 20Gb 2-port 630M Adapter) + + pci:v000014E4d000016AE* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Multi Function + + pci:v000014E4d000016AEsv0000103Csd00001798* +- ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 530FLB Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Multi Function (HP NPAR 10Gb 2-port 530FLB Adapter) + + pci:v000014E4d000016AEsv0000103Csd000017A5* +- ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 530M Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Multi Function (HP NPAR 10Gb 2-port 530M Adapter) + + pci:v000014E4d000016AEsv0000103Csd000018D3* +- ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 530T Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Multi Function (HP NPAR 10Gb 2-port 530T Adapter) + + pci:v000014E4d000016AEsv0000103Csd00001930* +- ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 534FLR-SFP+ Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Multi Function (HP NPAR 10Gb 2-port 534FLR-SFP+ Adapter) + + pci:v000014E4d000016AEsv0000103Csd00001931* +- ID_MODEL_FROM_DATABASE=HP NPAR CN1100R Dual Port Converged Network Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Multi Function (HP NPAR CN1100R Dual Port Converged Network Adapter) + + pci:v000014E4d000016AEsv0000103Csd00001932* +- ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 534FLB Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Multi Function (HP NPAR 10Gb 2-port 534FLB Adapter) + + pci:v000014E4d000016AEsv0000103Csd00001933* +- ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 534M Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Multi Function (HP NPAR 10Gb 2-port 534M Adapter) + + pci:v000014E4d000016AEsv0000103Csd0000193A* +- ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 533FLR-T Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Multi Function (HP NPAR 10Gb 2-port 533FLR-T Adapter) + + pci:v000014E4d000016AEsv0000103Csd00003382* +- ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 530FLR-SFP+ Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Multi Function (HP NPAR 10Gb 2-port 530FLR-SFP+ Adapter) + + pci:v000014E4d000016AEsv0000103Csd0000339D* +- ID_MODEL_FROM_DATABASE=HP NPAR 10Gb 2-port 530SFP+ Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Multi Function (HP NPAR 10Gb 2-port 530SFP+ Adapter) + + pci:v000014E4d000016AF* + ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Virtual Function + + pci:v000014E4d000016AFsv0000103Csd00001798* +- ID_MODEL_FROM_DATABASE=HP Flex-10 10Gb 2-port 530FLB Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Virtual Function (HP Flex-10 10Gb 2-port 530FLB Adapter) + + pci:v000014E4d000016AFsv0000103Csd000017A5* +- ID_MODEL_FROM_DATABASE=HP Flex-10 10Gb 2-port 530M Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Virtual Function (HP Flex-10 10Gb 2-port 530M Adapter) + + pci:v000014E4d000016AFsv0000103Csd000018D3* +- ID_MODEL_FROM_DATABASE=HP Ethernet 10Gb 2-port 530T Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Virtual Function (HP Ethernet 10Gb 2-port 530T Adapter) + + pci:v000014E4d000016AFsv0000103Csd00001930* +- ID_MODEL_FROM_DATABASE=HP FlexFabric 10Gb 2-port 534FLR-SFP+ Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Virtual Function (HP FlexFabric 10Gb 2-port 534FLR-SFP+ Adapter) + + pci:v000014E4d000016AFsv0000103Csd00001931* +- ID_MODEL_FROM_DATABASE=HP StoreFabric CN1100R Dual Port Converged Network Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Virtual Function (HP StoreFabric CN1100R Dual Port Converged Network Adapter) + + pci:v000014E4d000016AFsv0000103Csd00001932* +- ID_MODEL_FROM_DATABASE=HP FlexFabric 10Gb 2-port 534FLB Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Virtual Function (HP FlexFabric 10Gb 2-port 534FLB Adapter) + + pci:v000014E4d000016AFsv0000103Csd00001933* +- ID_MODEL_FROM_DATABASE=HP FlexFabric 10Gb 2-port 534M Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Virtual Function (HP FlexFabric 10Gb 2-port 534M Adapter) + + pci:v000014E4d000016AFsv0000103Csd0000193A* +- ID_MODEL_FROM_DATABASE=HP FlexFabric 10Gb 2-port 533FLR-T Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Virtual Function (HP FlexFabric 10Gb 2-port 533FLR-T Adapter) + + pci:v000014E4d000016AFsv0000103Csd00003382* +- ID_MODEL_FROM_DATABASE=HP Ethernet 10Gb 2-port 530FLR-SFP+ Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Virtual Function (HP Ethernet 10Gb 2-port 530FLR-SFP+ Adapter) + + pci:v000014E4d000016AFsv0000103Csd0000339D* +- ID_MODEL_FROM_DATABASE=HP Ethernet 10Gb 2-port 530SFP+ Adapter ++ ID_MODEL_FROM_DATABASE=NetXtreme II BCM57810 10 Gigabit Ethernet Virtual Function (HP Ethernet 10Gb 2-port 530SFP+ Adapter) + + pci:v000014E4d000016B0* + ID_MODEL_FROM_DATABASE=NetXtreme BCM57761 Gigabit Ethernet PCIe +@@ -44937,7 +44937,7 @@ pci:v000014E4d000016B1* + ID_MODEL_FROM_DATABASE=NetLink BCM57781 Gigabit Ethernet PCIe + + pci:v000014E4d000016B1sv00001849sd000096B1* +- ID_MODEL_FROM_DATABASE=Z77 Extreme4 motherboard ++ ID_MODEL_FROM_DATABASE=NetLink BCM57781 Gigabit Ethernet PCIe (Z77 Extreme4 motherboard) + + pci:v000014E4d000016B2* + ID_MODEL_FROM_DATABASE=NetLink BCM57791 Gigabit Ethernet PCIe +@@ -44970,37 +44970,37 @@ pci:v000014E4d000016C6* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5702A3 Gigabit Ethernet + + pci:v000014E4d000016C6sv000010B7sd00001100* +- ID_MODEL_FROM_DATABASE=3C1000B-T 10/100/1000 PCI ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5702A3 Gigabit Ethernet (3C1000B-T 10/100/1000 PCI) + + pci:v000014E4d000016C6sv000014E4sd0000000C* +- ID_MODEL_FROM_DATABASE=BCM5702 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5702A3 Gigabit Ethernet (BCM5702 1000Base-T) + + pci:v000014E4d000016C6sv000014E4sd00008009* +- ID_MODEL_FROM_DATABASE=BCM5702 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5702A3 Gigabit Ethernet (BCM5702 1000Base-T) + + pci:v000014E4d000016C7* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet + + pci:v000014E4d000016C7sv00000E11sd000000CA* +- ID_MODEL_FROM_DATABASE=NC7771 Gigabit Server Adapter (PCI-X, 10,100,1000-T) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet (NC7771 Gigabit Server Adapter (PCI-X, 10,100,1000-T)) + + pci:v000014E4d000016C7sv00000E11sd000000CB* +- ID_MODEL_FROM_DATABASE=NC7781 Gigabit Server Adapter (PCI-X, 10,100,1000-T) ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet (NC7781 Gigabit Server Adapter (PCI-X, 10,100,1000-T)) + + pci:v000014E4d000016C7sv0000103Csd000012C3* +- ID_MODEL_FROM_DATABASE=Combo FC/GigE-SX [A9782A] ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet (Combo FC/GigE-SX [A9782A]) + + pci:v000014E4d000016C7sv0000103Csd000012CA* +- ID_MODEL_FROM_DATABASE=Combo FC/GigE-T [A9784A] ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet (Combo FC/GigE-T [A9784A]) + + pci:v000014E4d000016C7sv0000103Csd00001321* +- ID_MODEL_FROM_DATABASE=Core I/O LAN/SCSI Combo [AB314A] ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet (Core I/O LAN/SCSI Combo [AB314A]) + + pci:v000014E4d000016C7sv000014E4sd00000009* +- ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 1000Base-T ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet (NetXtreme BCM5703 1000Base-T) + + pci:v000014E4d000016C7sv000014E4sd0000000A* +- ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 1000Base-SX ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5703 Gigabit Ethernet (NetXtreme BCM5703 1000Base-SX) + + pci:v000014E4d000016DD* + ID_MODEL_FROM_DATABASE=NetLink BCM5781 Gigabit Ethernet PCI Express +@@ -45015,10 +45015,10 @@ pci:v000014E4d000016FD* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5753M Gigabit Ethernet PCI Express + + pci:v000014E4d000016FDsv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5753M Gigabit Ethernet PCI Express (Compaq nx9420 Notebook) + + pci:v000014E4d000016FDsv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5753M Gigabit Ethernet PCI Express (Compaq nw8440) + + pci:v000014E4d000016FE* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5753F Fast Ethernet PCI Express +@@ -45027,40 +45027,40 @@ pci:v000014E4d0000170C* + ID_MODEL_FROM_DATABASE=BCM4401-B0 100Base-TX + + pci:v000014E4d0000170Csv00001028sd00000188* +- ID_MODEL_FROM_DATABASE=Inspiron 6000 laptop ++ ID_MODEL_FROM_DATABASE=BCM4401-B0 100Base-TX (Inspiron 6000 laptop) + + pci:v000014E4d0000170Csv00001028sd0000018D* +- ID_MODEL_FROM_DATABASE=Inspiron 700m/710m ++ ID_MODEL_FROM_DATABASE=BCM4401-B0 100Base-TX (Inspiron 700m/710m) + + pci:v000014E4d0000170Csv00001028sd00000196* +- ID_MODEL_FROM_DATABASE=Inspiron 5160 ++ ID_MODEL_FROM_DATABASE=BCM4401-B0 100Base-TX (Inspiron 5160) + + pci:v000014E4d0000170Csv00001028sd000001AF* +- ID_MODEL_FROM_DATABASE=Inspiron 6400 ++ ID_MODEL_FROM_DATABASE=BCM4401-B0 100Base-TX (Inspiron 6400) + + pci:v000014E4d0000170Csv00001028sd000001CD* +- ID_MODEL_FROM_DATABASE=Inspiron 9400 Laptop ++ ID_MODEL_FROM_DATABASE=BCM4401-B0 100Base-TX (Inspiron 9400 Laptop) + + pci:v000014E4d0000170Csv00001028sd000001D7* +- ID_MODEL_FROM_DATABASE=XPS M1210 ++ ID_MODEL_FROM_DATABASE=BCM4401-B0 100Base-TX (XPS M1210) + + pci:v000014E4d0000170Csv00001028sd000001D8* +- ID_MODEL_FROM_DATABASE=Inspiron E1405 ++ ID_MODEL_FROM_DATABASE=BCM4401-B0 100Base-TX (Inspiron E1405) + + pci:v000014E4d0000170Csv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=BCM4401-B0 100Base-TX (NX6110/NC6120) + + pci:v000014E4d0000170Csv0000103Csd000030A2* +- ID_MODEL_FROM_DATABASE=NX7300 laptop ++ ID_MODEL_FROM_DATABASE=BCM4401-B0 100Base-TX (NX7300 laptop) + + pci:v000014E4d0000170Csv000014E4sd0000170C* +- ID_MODEL_FROM_DATABASE=HP Compaq 6720t Mobile Thin Client ++ ID_MODEL_FROM_DATABASE=BCM4401-B0 100Base-TX (HP Compaq 6720t Mobile Thin Client) + + pci:v000014E4d0000170D* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5901 100Base-TX + + pci:v000014E4d0000170Dsv00001014sd00000545* +- ID_MODEL_FROM_DATABASE=ThinkPad R40e ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM5901 100Base-TX (ThinkPad R40e) + + pci:v000014E4d0000170E* + ID_MODEL_FROM_DATABASE=NetXtreme BCM5901 100Base-TX +@@ -45072,16 +45072,16 @@ pci:v000014E4d00001713* + ID_MODEL_FROM_DATABASE=NetLink BCM5906M Fast Ethernet PCI Express + + pci:v000014E4d00001713sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=NetLink BCM5906M Fast Ethernet PCI Express (Inspiron 1420) + + pci:v000014E4d00001713sv00001028sd00000209* +- ID_MODEL_FROM_DATABASE=XPS M1330 ++ ID_MODEL_FROM_DATABASE=NetLink BCM5906M Fast Ethernet PCI Express (XPS M1330) + + pci:v000014E4d00001713sv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=NetLink BCM5906M Fast Ethernet PCI Express (Compaq 6710b) + + pci:v000014E4d00001713sv000017AAsd00003A23* +- ID_MODEL_FROM_DATABASE=IdeaPad S10e ++ ID_MODEL_FROM_DATABASE=NetLink BCM5906M Fast Ethernet PCI Express (IdeaPad S10e) + + pci:v000014E4d00003352* + ID_MODEL_FROM_DATABASE=BCM3352 +@@ -45108,16 +45108,16 @@ pci:v000014E4d00004301* + ID_MODEL_FROM_DATABASE=BCM4301 802.11b Wireless LAN Controller + + pci:v000014E4d00004301sv00001028sd00000407* +- ID_MODEL_FROM_DATABASE=TrueMobile 1180 Onboard WLAN ++ ID_MODEL_FROM_DATABASE=BCM4301 802.11b Wireless LAN Controller (TrueMobile 1180 Onboard WLAN) + + pci:v000014E4d00004301sv00001043sd00000120* +- ID_MODEL_FROM_DATABASE=WL-103b Wireless LAN PC Card ++ ID_MODEL_FROM_DATABASE=BCM4301 802.11b Wireless LAN Controller (WL-103b Wireless LAN PC Card) + + pci:v000014E4d00004301sv000016A5sd00001602* +- ID_MODEL_FROM_DATABASE=B-300 802.11b Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=BCM4301 802.11b Wireless LAN Controller (B-300 802.11b Wireless CardBus Adapter) + + pci:v000014E4d00004301sv00001737sd00004301* +- ID_MODEL_FROM_DATABASE=WMP11 v2.7 802.11b Wireless-B PCI Adapter ++ ID_MODEL_FROM_DATABASE=BCM4301 802.11b Wireless LAN Controller (WMP11 v2.7 802.11b Wireless-B PCI Adapter) + + pci:v000014E4d00004305* + ID_MODEL_FROM_DATABASE=BCM4307 V.90 56k Modem +@@ -45135,85 +45135,85 @@ pci:v000014E4d00004311* + ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g WLAN + + pci:v000014E4d00004311sv00001028sd00000007* +- ID_MODEL_FROM_DATABASE=Wireless 1390 WLAN Mini-Card ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g WLAN (Wireless 1390 WLAN Mini-Card) + + pci:v000014E4d00004311sv00001028sd00000008* +- ID_MODEL_FROM_DATABASE=Wireless 1390 WLAN ExpressCard ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g WLAN (Wireless 1390 WLAN ExpressCard) + + pci:v000014E4d00004311sv0000103Csd00001363* +- ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g Wireless LAN Controller ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g WLAN (BCM4311 802.11b/g Wireless LAN Controller) + + pci:v000014E4d00004311sv0000103Csd00001364* +- ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g Wireless LAN Controller ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g WLAN (BCM4311 802.11b/g Wireless LAN Controller) + + pci:v000014E4d00004311sv0000103Csd00001365* +- ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g Wireless LAN Controller ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g WLAN (BCM4311 802.11b/g Wireless LAN Controller) + + pci:v000014E4d00004311sv0000103Csd00001374* +- ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g Wireless LAN Controller ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g WLAN (BCM4311 802.11b/g Wireless LAN Controller) + + pci:v000014E4d00004311sv0000103Csd00001375* +- ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g Wireless LAN Controller ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g WLAN (BCM4311 802.11b/g Wireless LAN Controller) + + pci:v000014E4d00004311sv0000103Csd00001376* +- ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g Wireless LAN Controller ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g WLAN (BCM4311 802.11b/g Wireless LAN Controller) + + pci:v000014E4d00004311sv0000103Csd00001377* +- ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g Wireless LAN Controller ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g WLAN (BCM4311 802.11b/g Wireless LAN Controller) + + pci:v000014E4d00004311sv0000103Csd0000137F* +- ID_MODEL_FROM_DATABASE=BCM4322 802.11a/b/g/n Wireless LAN Controller ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g WLAN (BCM4322 802.11a/b/g/n Wireless LAN Controller) + + pci:v000014E4d00004311sv0000103Csd00001380* +- ID_MODEL_FROM_DATABASE=BCM4322 802.11a/b/g/n Wireless LAN Controller ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g WLAN (BCM4322 802.11a/b/g/n Wireless LAN Controller) + + pci:v000014E4d00004311sv000014E4sd00004311* +- ID_MODEL_FROM_DATABASE=BCM94311MCG ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11b/g WLAN (BCM94311MCG) + + pci:v000014E4d00004312* + ID_MODEL_FROM_DATABASE=BCM4311 802.11a/b/g + + pci:v000014E4d00004312sv00001028sd00000007* +- ID_MODEL_FROM_DATABASE=Wireless 1490 Dual Band WLAN Mini-Card ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11a/b/g (Wireless 1490 Dual Band WLAN Mini-Card) + + pci:v000014E4d00004312sv00001028sd00000008* +- ID_MODEL_FROM_DATABASE=Wireless 1490 Dual Band WLAN ExpressCard ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11a/b/g (Wireless 1490 Dual Band WLAN ExpressCard) + + pci:v000014E4d00004312sv0000103Csd0000135A* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11a/b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11a/b/g (Broadcom 802.11a/b/g WLAN) + + pci:v000014E4d00004312sv0000103Csd0000135F* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11a/b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11a/b/g (Broadcom 802.11a/b/g WLAN) + + pci:v000014E4d00004312sv0000103Csd00001360* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11a/b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11a/b/g (Broadcom 802.11a/b/g WLAN) + + pci:v000014E4d00004312sv0000103Csd00001361* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11a/b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11a/b/g (Broadcom 802.11a/b/g WLAN) + + pci:v000014E4d00004312sv0000103Csd00001362* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11a/b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11a/b/g (Broadcom 802.11a/b/g WLAN) + + pci:v000014E4d00004312sv0000103Csd00001370* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11a/b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11a/b/g (Broadcom 802.11a/b/g WLAN) + + pci:v000014E4d00004312sv0000103Csd00001371* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11a/b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11a/b/g (Broadcom 802.11a/b/g WLAN) + + pci:v000014E4d00004312sv0000103Csd00001372* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11a/b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11a/b/g (Broadcom 802.11a/b/g WLAN) + + pci:v000014E4d00004312sv0000103Csd00001373* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11a/b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11a/b/g (Broadcom 802.11a/b/g WLAN) + + pci:v000014E4d00004312sv0000103Csd000030B5* +- ID_MODEL_FROM_DATABASE=Presario V3242AU ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11a/b/g (Presario V3242AU) + + pci:v000014E4d00004312sv0000106Bsd00000089* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11a/b/g (AirPort Extreme) + + pci:v000014E4d00004312sv00001371sd0000103C* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11 Multiband-netwerkadapter(6715s) ++ ID_MODEL_FROM_DATABASE=BCM4311 802.11a/b/g (Broadcom 802.11 Multiband-netwerkadapter(6715s)) + + pci:v000014E4d00004313* + ID_MODEL_FROM_DATABASE=BCM4311 802.11a +@@ -45222,175 +45222,175 @@ pci:v000014E4d00004315* + ID_MODEL_FROM_DATABASE=BCM4312 802.11b/g LP-PHY + + pci:v000014E4d00004315sv00001028sd0000000B* +- ID_MODEL_FROM_DATABASE=Wireless 1395 WLAN Mini-Card ++ ID_MODEL_FROM_DATABASE=BCM4312 802.11b/g LP-PHY (Wireless 1395 WLAN Mini-Card) + + pci:v000014E4d00004315sv00001028sd0000000C* +- ID_MODEL_FROM_DATABASE=Wireless 1397 WLAN Mini-Card ++ ID_MODEL_FROM_DATABASE=BCM4312 802.11b/g LP-PHY (Wireless 1397 WLAN Mini-Card) + + pci:v000014E4d00004315sv0000103Csd0000137C* +- ID_MODEL_FROM_DATABASE=BCM4312 802.11b/g Wireless LAN Controller ++ ID_MODEL_FROM_DATABASE=BCM4312 802.11b/g LP-PHY (BCM4312 802.11b/g Wireless LAN Controller) + + pci:v000014E4d00004315sv0000103Csd0000137D* +- ID_MODEL_FROM_DATABASE=BCM4312 802.11b/g Wireless LAN Controller ++ ID_MODEL_FROM_DATABASE=BCM4312 802.11b/g LP-PHY (BCM4312 802.11b/g Wireless LAN Controller) + + pci:v000014E4d00004315sv0000103Csd00001507* +- ID_MODEL_FROM_DATABASE=U98Z049.00 Wireless Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=BCM4312 802.11b/g LP-PHY (U98Z049.00 Wireless Mini PCIe Card) + + pci:v000014E4d00004315sv0000105Bsd0000E003* +- ID_MODEL_FROM_DATABASE=T77H030.00 Wireless Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=BCM4312 802.11b/g LP-PHY (T77H030.00 Wireless Mini PCIe Card) + + pci:v000014E4d00004315sv0000105Bsd0000E01B* +- ID_MODEL_FROM_DATABASE=T77H106.00 Wireless Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=BCM4312 802.11b/g LP-PHY (T77H106.00 Wireless Half-size Mini PCIe Card) + + pci:v000014E4d00004318* + ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller + + pci:v000014E4d00004318sv00001028sd00000005* +- ID_MODEL_FROM_DATABASE=Wireless 1370 WLAN Mini-PCI Card ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (Wireless 1370 WLAN Mini-PCI Card) + + pci:v000014E4d00004318sv00001028sd00000006* +- ID_MODEL_FROM_DATABASE=Wireless 1370 WLAN PC Card ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (Wireless 1370 WLAN PC Card) + + pci:v000014E4d00004318sv0000103Csd00001355* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (Broadcom 802.11b/g WLAN) + + pci:v000014E4d00004318sv0000103Csd00001356* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (Broadcom 802.11b/g WLAN) + + pci:v000014E4d00004318sv0000103Csd00001357* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (Broadcom 802.11b/g WLAN) + + pci:v000014E4d00004318sv00001043sd0000100F* +- ID_MODEL_FROM_DATABASE=WL-138G v2 / WL-138gE / WL-100gE ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (WL-138G v2 / WL-138gE / WL-100gE) + + pci:v000014E4d00004318sv00001043sd0000120F* +- ID_MODEL_FROM_DATABASE=A6U notebook embedded card ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (A6U notebook embedded card) + + pci:v000014E4d00004318sv00001154sd00000355* +- ID_MODEL_FROM_DATABASE=Buffalo WLI2-PCI-G54S High Speed Mode Wireless Adapter ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (Buffalo WLI2-PCI-G54S High Speed Mode Wireless Adapter) + + pci:v000014E4d00004318sv00001468sd00000311* +- ID_MODEL_FROM_DATABASE=Aspire 3022WLMi, 5024WLMi, 5020 ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (Aspire 3022WLMi, 5024WLMi, 5020) + + pci:v000014E4d00004318sv00001468sd00000312* +- ID_MODEL_FROM_DATABASE=TravelMate 2410 ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (TravelMate 2410) + + pci:v000014E4d00004318sv000014E4sd00000449* +- ID_MODEL_FROM_DATABASE=Gateway 7510GX ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (Gateway 7510GX) + + pci:v000014E4d00004318sv000016ECsd00000119* +- ID_MODEL_FROM_DATABASE=U.S.Robotics Wireless MAXg PC Card ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (U.S.Robotics Wireless MAXg PC Card) + + pci:v000014E4d00004318sv00001737sd00000042* +- ID_MODEL_FROM_DATABASE=WMP54GS v1.1 802.11g Wireless-G PCI Adapter with SpeedBooster ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (WMP54GS v1.1 802.11g Wireless-G PCI Adapter with SpeedBooster) + + pci:v000014E4d00004318sv00001737sd00000048* +- ID_MODEL_FROM_DATABASE=WPC54G v3 802.11g Wireless-G Notebook Adapter ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (WPC54G v3 802.11g Wireless-G Notebook Adapter) + + pci:v000014E4d00004318sv00001737sd00000049* +- ID_MODEL_FROM_DATABASE=WPC54GS v2 802.11g Wireless-G Notebook Adapter with SpeedBooster ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (WPC54GS v2 802.11g Wireless-G Notebook Adapter with SpeedBooster) + + pci:v000014E4d00004318sv00001799sd00007000* +- ID_MODEL_FROM_DATABASE=F5D7000 v4000 Wireless G Desktop Card ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (F5D7000 v4000 Wireless G Desktop Card) + + pci:v000014E4d00004318sv00001799sd00007001* +- ID_MODEL_FROM_DATABASE=F5D7001 v2000 Wireless G Plus Desktop Card ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (F5D7001 v2000 Wireless G Plus Desktop Card) + + pci:v000014E4d00004318sv00001799sd00007010* +- ID_MODEL_FROM_DATABASE=F5D7010 v4000 Wireless G Notebook Card ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (F5D7010 v4000 Wireless G Notebook Card) + + pci:v000014E4d00004318sv00001799sd00007011* +- ID_MODEL_FROM_DATABASE=F5D7011 v2000 High-Speed Mode Wireless G Notebook Card ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (F5D7011 v2000 High-Speed Mode Wireless G Notebook Card) + + pci:v000014E4d00004319* + ID_MODEL_FROM_DATABASE=BCM4318 [AirForce 54g] 802.11a/b/g PCI Express Transceiver + + pci:v000014E4d00004319sv00001028sd00000005* +- ID_MODEL_FROM_DATABASE=Wireless 1470 Dual Band WLAN Mini-PCI Card ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce 54g] 802.11a/b/g PCI Express Transceiver (Wireless 1470 Dual Band WLAN Mini-PCI Card) + + pci:v000014E4d00004319sv00001028sd00000006* +- ID_MODEL_FROM_DATABASE=Wireless 1470 Dual Band WLAN PC Card ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce 54g] 802.11a/b/g PCI Express Transceiver (Wireless 1470 Dual Band WLAN PC Card) + + pci:v000014E4d00004319sv0000103Csd00001358* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11a/b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce 54g] 802.11a/b/g PCI Express Transceiver (Broadcom 802.11a/b/g WLAN) + + pci:v000014E4d00004319sv0000103Csd00001359* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11a/b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce 54g] 802.11a/b/g PCI Express Transceiver (Broadcom 802.11a/b/g WLAN) + + pci:v000014E4d00004319sv0000103Csd0000135A* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11a/b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4318 [AirForce 54g] 802.11a/b/g PCI Express Transceiver (Broadcom 802.11a/b/g WLAN) + + pci:v000014E4d00004320* + ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller + + pci:v000014E4d00004320sv00001028sd00000001* +- ID_MODEL_FROM_DATABASE=TrueMobile 1300 WLAN Mini-PCI Card ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (TrueMobile 1300 WLAN Mini-PCI Card) + + pci:v000014E4d00004320sv00001028sd00000002* +- ID_MODEL_FROM_DATABASE=TrueMobile 1300 WLAN PC Card ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (TrueMobile 1300 WLAN PC Card) + + pci:v000014E4d00004320sv00001028sd00000003* +- ID_MODEL_FROM_DATABASE=Wireless 1350 WLAN Mini-PCI Card ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (Wireless 1350 WLAN Mini-PCI Card) + + pci:v000014E4d00004320sv00001028sd00000004* +- ID_MODEL_FROM_DATABASE=Wireless 1350 WLAN PC Card ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (Wireless 1350 WLAN PC Card) + + pci:v000014E4d00004320sv0000103Csd000012F4* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (Broadcom 802.11b/g WLAN) + + pci:v000014E4d00004320sv0000103Csd000012F8* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (Broadcom 802.11b/g WLAN) + + pci:v000014E4d00004320sv0000103Csd000012FA* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (Broadcom 802.11b/g WLAN) + + pci:v000014E4d00004320sv0000103Csd000012FB* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (Broadcom 802.11b/g WLAN) + + pci:v000014E4d00004320sv00001043sd0000100F* +- ID_MODEL_FROM_DATABASE=WL-100G ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (WL-100G) + + pci:v000014E4d00004320sv00001057sd00007025* +- ID_MODEL_FROM_DATABASE=WN825G ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (WN825G) + + pci:v000014E4d00004320sv0000106Bsd0000004E* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (AirPort Extreme) + + pci:v000014E4d00004320sv00001154sd00000330* +- ID_MODEL_FROM_DATABASE=Buffalo WLI2-PCI-G54S High Speed Mode Wireless Desktop Adapter ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (Buffalo WLI2-PCI-G54S High Speed Mode Wireless Desktop Adapter) + + pci:v000014E4d00004320sv0000144Fsd00007050* +- ID_MODEL_FROM_DATABASE=eMachines M6805 802.11g Built-in Wireless ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (eMachines M6805 802.11g Built-in Wireless) + + pci:v000014E4d00004320sv0000144Fsd00007051* +- ID_MODEL_FROM_DATABASE=Sonnet Aria Extreme PCI ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (Sonnet Aria Extreme PCI) + + pci:v000014E4d00004320sv00001737sd00000013* +- ID_MODEL_FROM_DATABASE=WMP54G v1 802.11g PCI Adapter ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (WMP54G v1 802.11g PCI Adapter) + + pci:v000014E4d00004320sv00001737sd00000014* +- ID_MODEL_FROM_DATABASE=WMP54G v2 802.11g PCI Adapter ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (WMP54G v2 802.11g PCI Adapter) + + pci:v000014E4d00004320sv00001737sd00000015* +- ID_MODEL_FROM_DATABASE=WMP54GS v1.0 802.11g Wireless-G PCI Adapter with SpeedBooster ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (WMP54GS v1.0 802.11g Wireless-G PCI Adapter with SpeedBooster) + + pci:v000014E4d00004320sv00001737sd00004320* +- ID_MODEL_FROM_DATABASE=WPC54G v1 / WPC54GS v1 802.11g Wireless-G Notebook Adapter ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (WPC54G v1 / WPC54GS v1 802.11g Wireless-G Notebook Adapter) + + pci:v000014E4d00004320sv00001799sd00007000* +- ID_MODEL_FROM_DATABASE=F5D7000 v1000 Wireless G Desktop Card ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (F5D7000 v1000 Wireless G Desktop Card) + + pci:v000014E4d00004320sv00001799sd00007001* +- ID_MODEL_FROM_DATABASE=F5D7001 v1000 Wireless G Plus Desktop Card ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (F5D7001 v1000 Wireless G Plus Desktop Card) + + pci:v000014E4d00004320sv00001799sd00007010* +- ID_MODEL_FROM_DATABASE=F5D7010 v1000 Wireless G Notebook Card ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (F5D7010 v1000 Wireless G Notebook Card) + + pci:v000014E4d00004320sv00001799sd00007011* +- ID_MODEL_FROM_DATABASE=F5D7011 v1000 High-Speed Mode Wireless G Notebook Card ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (F5D7011 v1000 High-Speed Mode Wireless G Notebook Card) + + pci:v000014E4d00004320sv0000185Fsd00001220* +- ID_MODEL_FROM_DATABASE=TravelMate 290E WLAN Mini-PCI Card ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11b/g Wireless LAN Controller (TravelMate 290E WLAN Mini-PCI Card) + + pci:v000014E4d00004321* + ID_MODEL_FROM_DATABASE=BCM4321 802.11a Wireless Network Controller +@@ -45402,31 +45402,31 @@ pci:v000014E4d00004324* + ID_MODEL_FROM_DATABASE=BCM4309 802.11abg Wireless Network Controller + + pci:v000014E4d00004324sv00001028sd00000001* +- ID_MODEL_FROM_DATABASE=Truemobile 1400 ++ ID_MODEL_FROM_DATABASE=BCM4309 802.11abg Wireless Network Controller (Truemobile 1400) + + pci:v000014E4d00004324sv00001028sd00000002* +- ID_MODEL_FROM_DATABASE=TrueMobile 1400 Dual Band WLAN PC Card ++ ID_MODEL_FROM_DATABASE=BCM4309 802.11abg Wireless Network Controller (TrueMobile 1400 Dual Band WLAN PC Card) + + pci:v000014E4d00004324sv00001028sd00000003* +- ID_MODEL_FROM_DATABASE=Truemobile 1450 MiniPCI ++ ID_MODEL_FROM_DATABASE=BCM4309 802.11abg Wireless Network Controller (Truemobile 1450 MiniPCI) + + pci:v000014E4d00004324sv00001028sd00000004* +- ID_MODEL_FROM_DATABASE=Wireless 1450 Dual Band WLAN PC Card ++ ID_MODEL_FROM_DATABASE=BCM4309 802.11abg Wireless Network Controller (Wireless 1450 Dual Band WLAN PC Card) + + pci:v000014E4d00004324sv0000103Csd000012F9* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11a/b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4309 802.11abg Wireless Network Controller (Broadcom 802.11a/b/g WLAN) + + pci:v000014E4d00004324sv0000103Csd000012FC* +- ID_MODEL_FROM_DATABASE=Broadcom 802.11a/b/g WLAN ++ ID_MODEL_FROM_DATABASE=BCM4309 802.11abg Wireless Network Controller (Broadcom 802.11a/b/g WLAN) + + pci:v000014E4d00004325* + ID_MODEL_FROM_DATABASE=BCM4306 802.11bg Wireless Network Controller + + pci:v000014E4d00004325sv00001414sd00000003* +- ID_MODEL_FROM_DATABASE=Wireless Notebook Adapter MN-720 ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11bg Wireless Network Controller (Wireless Notebook Adapter MN-720) + + pci:v000014E4d00004325sv00001414sd00000004* +- ID_MODEL_FROM_DATABASE=Wireless PCI Adapter MN-730 ++ ID_MODEL_FROM_DATABASE=BCM4306 802.11bg Wireless Network Controller (Wireless PCI Adapter MN-730) + + pci:v000014E4d00004326* + ID_MODEL_FROM_DATABASE=BCM4307 Chipcommon I/O Controller? +@@ -45435,58 +45435,58 @@ pci:v000014E4d00004328* + ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n + + pci:v000014E4d00004328sv00001028sd00000009* +- ID_MODEL_FROM_DATABASE=Wireless 1500 Draft 802.11n WLAN Mini-Card ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n (Wireless 1500 Draft 802.11n WLAN Mini-Card) + + pci:v000014E4d00004328sv00001028sd0000000A* +- ID_MODEL_FROM_DATABASE=Wireless 1500 Draft 802.11n WLAN Mini-card ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n (Wireless 1500 Draft 802.11n WLAN Mini-card) + + pci:v000014E4d00004328sv0000103Csd00001366* +- ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n Wireless LAN Controller ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n (Wireless LAN Controller) + + pci:v000014E4d00004328sv0000103Csd00001367* +- ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n Wireless LAN Controller ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n (Wireless LAN Controller) + + pci:v000014E4d00004328sv0000103Csd00001368* +- ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n Wireless LAN Controller ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n (Wireless LAN Controller) + + pci:v000014E4d00004328sv0000103Csd00001369* +- ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n Wireless LAN Controller ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n (Wireless LAN Controller) + + pci:v000014E4d00004328sv0000106Bsd00000087* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n (AirPort Extreme) + + pci:v000014E4d00004328sv0000106Bsd00000088* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n (AirPort Extreme) + + pci:v000014E4d00004328sv0000106Bsd0000008B* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n (AirPort Extreme) + + pci:v000014E4d00004328sv0000106Bsd0000008C* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n (AirPort Extreme) + + pci:v000014E4d00004328sv0000106Bsd00000090* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n (AirPort Extreme) + + pci:v000014E4d00004328sv000014E4sd00004328* +- ID_MODEL_FROM_DATABASE=BCM4328 802.11a/b/g/n ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n (BCM4328 802.11a/b/g/n) + + pci:v000014E4d00004328sv00001737sd00000066* +- ID_MODEL_FROM_DATABASE=WPC600N v1 802.11a/b/g/n Wireless-N CardBus Adapter ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n (WPC600N v1 802.11a/b/g/n Wireless-N CardBus Adapter) + + pci:v000014E4d00004328sv00001737sd00000068* +- ID_MODEL_FROM_DATABASE=WEC600N v1 802.11a/b/g/n Wireless-N ExpressCard ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11a/b/g/n (WEC600N v1 802.11a/b/g/n Wireless-N ExpressCard) + + pci:v000014E4d00004329* + ID_MODEL_FROM_DATABASE=BCM4321 802.11b/g/n + + pci:v000014E4d00004329sv00001385sd00007B00* +- ID_MODEL_FROM_DATABASE=WN511B RangeMax NEXT Wireless Notebook Adapter ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11b/g/n (WN511B RangeMax NEXT Wireless Notebook Adapter) + + pci:v000014E4d00004329sv00001385sd00007D00* +- ID_MODEL_FROM_DATABASE=WN311B RangeMax Next 270 Mbps Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11b/g/n (WN311B RangeMax Next 270 Mbps Wireless PCI Adapter) + + pci:v000014E4d00004329sv00001737sd00000058* +- ID_MODEL_FROM_DATABASE=WPC300N v1 Wireless-N Notebook Adapter ++ ID_MODEL_FROM_DATABASE=BCM4321 802.11b/g/n (WPC300N v1 Wireless-N Notebook Adapter) + + pci:v000014E4d0000432A* + ID_MODEL_FROM_DATABASE=BCM4321 802.11an Wireless Network Controller +@@ -45495,19 +45495,19 @@ pci:v000014E4d0000432B* + ID_MODEL_FROM_DATABASE=BCM4322 802.11a/b/g/n Wireless LAN Controller + + pci:v000014E4d0000432Bsv00001028sd0000000D* +- ID_MODEL_FROM_DATABASE=Wireless 1510 Wireless-N WLAN Mini-Card ++ ID_MODEL_FROM_DATABASE=BCM4322 802.11a/b/g/n Wireless LAN Controller (Wireless 1510 Wireless-N WLAN Mini-Card) + + pci:v000014E4d0000432Bsv0000106Bsd0000008D* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM4322 802.11a/b/g/n Wireless LAN Controller (AirPort Extreme) + + pci:v000014E4d0000432Bsv0000106Bsd0000008E* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM4322 802.11a/b/g/n Wireless LAN Controller (AirPort Extreme) + + pci:v000014E4d0000432C* + ID_MODEL_FROM_DATABASE=BCM4322 802.11b/g/n + + pci:v000014E4d0000432Csv00001799sd0000D311* +- ID_MODEL_FROM_DATABASE=Dynex DX-NNBX 802.11n WLAN Cardbus Card ++ ID_MODEL_FROM_DATABASE=BCM4322 802.11b/g/n (Dynex DX-NNBX 802.11n WLAN Cardbus Card) + + pci:v000014E4d0000432D* + ID_MODEL_FROM_DATABASE=BCM4322 802.11an Wireless Network Controller +@@ -45516,25 +45516,25 @@ pci:v000014E4d00004331* + ID_MODEL_FROM_DATABASE=BCM4331 802.11a/b/g/n + + pci:v000014E4d00004331sv0000106Bsd000000D6* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM4331 802.11a/b/g/n (AirPort Extreme) + + pci:v000014E4d00004331sv0000106Bsd000000E4* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM4331 802.11a/b/g/n (AirPort Extreme) + + pci:v000014E4d00004331sv0000106Bsd000000EF* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM4331 802.11a/b/g/n (AirPort Extreme) + + pci:v000014E4d00004331sv0000106Bsd000000F4* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM4331 802.11a/b/g/n (AirPort Extreme) + + pci:v000014E4d00004331sv0000106Bsd000000F5* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM4331 802.11a/b/g/n (AirPort Extreme) + + pci:v000014E4d00004331sv0000106Bsd0000010E* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM4331 802.11a/b/g/n (AirPort Extreme) + + pci:v000014E4d00004331sv0000106Bsd0000010F* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM4331 802.11a/b/g/n (AirPort Extreme) + + pci:v000014E4d00004333* + ID_MODEL_FROM_DATABASE=Serial (EDGE/GPRS modem part of Option GT Combo Edge) +@@ -45549,25 +45549,25 @@ pci:v000014E4d00004353* + ID_MODEL_FROM_DATABASE=BCM43224 802.11a/b/g/n + + pci:v000014E4d00004353sv00001028sd0000000E* +- ID_MODEL_FROM_DATABASE=Wireless 1520 Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=BCM43224 802.11a/b/g/n (Wireless 1520 Half-size Mini PCIe Card) + + pci:v000014E4d00004353sv0000103Csd00001509* +- ID_MODEL_FROM_DATABASE=WMIB-275N Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=BCM43224 802.11a/b/g/n (WMIB-275N Half-size Mini PCIe Card) + + pci:v000014E4d00004353sv0000106Bsd00000093* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM43224 802.11a/b/g/n (AirPort Extreme) + + pci:v000014E4d00004353sv0000106Bsd000000D1* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM43224 802.11a/b/g/n (AirPort Extreme) + + pci:v000014E4d00004353sv0000106Bsd000000E9* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=BCM43224 802.11a/b/g/n (AirPort Extreme) + + pci:v000014E4d00004357* + ID_MODEL_FROM_DATABASE=BCM43225 802.11b/g/n + + pci:v000014E4d00004357sv0000105Bsd0000E021* +- ID_MODEL_FROM_DATABASE=T77H103.00 Wireless Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=BCM43225 802.11b/g/n (T77H103.00 Wireless Half-size Mini PCIe Card) + + pci:v000014E4d00004358* + ID_MODEL_FROM_DATABASE=BCM43227 802.11b/g/n +@@ -45576,16 +45576,16 @@ pci:v000014E4d00004359* + ID_MODEL_FROM_DATABASE=BCM43228 802.11a/b/g/n + + pci:v000014E4d00004359sv00001028sd00000011* +- ID_MODEL_FROM_DATABASE=Wireless 1530 Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=BCM43228 802.11a/b/g/n (Wireless 1530 Half-size Mini PCIe Card) + + pci:v000014E4d00004359sv0000103Csd0000182C* +- ID_MODEL_FROM_DATABASE=BCM943228HM4L 802.11a/b/g/n 2x2 Wi-Fi Adapter ++ ID_MODEL_FROM_DATABASE=BCM43228 802.11a/b/g/n (BCM943228HM4L 802.11a/b/g/n 2x2 Wi-Fi Adapter) + + pci:v000014E4d00004365* + ID_MODEL_FROM_DATABASE=BCM43142 802.11b/g/n + + pci:v000014E4d00004365sv00001028sd00000016* +- ID_MODEL_FROM_DATABASE=Wireless 1704 802.11n + BT 4.0 ++ ID_MODEL_FROM_DATABASE=BCM43142 802.11b/g/n (Wireless 1704 802.11n + BT 4.0) + + pci:v000014E4d000043A0* + ID_MODEL_FROM_DATABASE=BCM4360 802.11ac Wireless Network Adapter +@@ -45597,13 +45597,13 @@ pci:v000014E4d00004401* + ID_MODEL_FROM_DATABASE=BCM4401 100Base-T + + pci:v000014E4d00004401sv00001025sd00000035* +- ID_MODEL_FROM_DATABASE=TravelMate 660 ++ ID_MODEL_FROM_DATABASE=BCM4401 100Base-T (TravelMate 660) + + pci:v000014E4d00004401sv0000103Csd000008B0* +- ID_MODEL_FROM_DATABASE=tc1100 tablet ++ ID_MODEL_FROM_DATABASE=BCM4401 100Base-T (tc1100 tablet) + + pci:v000014E4d00004401sv00001043sd000080A8* +- ID_MODEL_FROM_DATABASE=A7V8X motherboard ++ ID_MODEL_FROM_DATABASE=BCM4401 100Base-T (A7V8X motherboard) + + pci:v000014E4d00004402* + ID_MODEL_FROM_DATABASE=BCM4402 Integrated 10/100BaseT +@@ -45696,7 +45696,7 @@ pci:v000014E4d00004727* + ID_MODEL_FROM_DATABASE=BCM4313 802.11bgn Wireless Network Adapter + + pci:v000014E4d00004727sv00001028sd00000010* +- ID_MODEL_FROM_DATABASE=Inspiron M5010 / XPS 8300 ++ ID_MODEL_FROM_DATABASE=BCM4313 802.11bgn Wireless Network Adapter (Inspiron M5010 / XPS 8300) + + pci:v000014E4d00005365* + ID_MODEL_FROM_DATABASE=BCM5365P Sentry5 Host Bridge +@@ -45867,55 +45867,55 @@ pci:v000014F1d00001033* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem + + pci:v000014F1d00001033sv00001033sd00008077* +- ID_MODEL_FROM_DATABASE=NEC ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (NEC) + + pci:v000014F1d00001033sv0000122Dsd00004027* +- ID_MODEL_FROM_DATABASE=Dell Zeus - MDP3880-W(B) Data Fax Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (Dell Zeus - MDP3880-W(B) Data Fax Modem) + + pci:v000014F1d00001033sv0000122Dsd00004030* +- ID_MODEL_FROM_DATABASE=Dell Mercury - MDP3880-U(B) Data Fax Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (Dell Mercury - MDP3880-U(B) Data Fax Modem) + + pci:v000014F1d00001033sv0000122Dsd00004034* +- ID_MODEL_FROM_DATABASE=Dell Thor - MDP3880-W(U) Data Fax Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (Dell Thor - MDP3880-W(U) Data Fax Modem) + + pci:v000014F1d00001033sv000013E0sd0000020D* +- ID_MODEL_FROM_DATABASE=Dell Copper ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (Dell Copper) + + pci:v000014F1d00001033sv000013E0sd0000020E* +- ID_MODEL_FROM_DATABASE=Dell Silver ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (Dell Silver) + + pci:v000014F1d00001033sv000013E0sd00000261* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM) + + pci:v000014F1d00001033sv000013E0sd00000290* +- ID_MODEL_FROM_DATABASE=Compaq Goldwing ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (Compaq Goldwing) + + pci:v000014F1d00001033sv000013E0sd000002A0* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM) + + pci:v000014F1d00001033sv000013E0sd000002B0* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM) + + pci:v000014F1d00001033sv000013E0sd000002C0* +- ID_MODEL_FROM_DATABASE=Compaq Scooter ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (Compaq Scooter) + + pci:v000014F1d00001033sv000013E0sd000002D0* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM) + + pci:v000014F1d00001033sv0000144Fsd00001500* +- ID_MODEL_FROM_DATABASE=IBM P85-DF (1) ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM P85-DF (1)) + + pci:v000014F1d00001033sv0000144Fsd00001501* +- ID_MODEL_FROM_DATABASE=IBM P85-DF (2) ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM P85-DF (2)) + + pci:v000014F1d00001033sv0000144Fsd0000150A* +- ID_MODEL_FROM_DATABASE=IBM P85-DF (3) ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM P85-DF (3)) + + pci:v000014F1d00001033sv0000144Fsd0000150B* +- ID_MODEL_FROM_DATABASE=IBM P85-DF Low Profile (1) ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM P85-DF Low Profile (1)) + + pci:v000014F1d00001033sv0000144Fsd00001510* +- ID_MODEL_FROM_DATABASE=IBM P85-DF Low Profile (2) ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM P85-DF Low Profile (2)) + + pci:v000014F1d00001034* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice Modem +@@ -45924,31 +45924,31 @@ pci:v000014F1d00001035* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem + + pci:v000014F1d00001035sv000010CFsd00001098* +- ID_MODEL_FROM_DATABASE=Fujitsu P85-DFSV ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (Fujitsu P85-DFSV) + + pci:v000014F1d00001036* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp Modem + + pci:v000014F1d00001036sv0000104Dsd00008067* +- ID_MODEL_FROM_DATABASE=HCF 56k Modem ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp Modem (HCF 56k Modem) + + pci:v000014F1d00001036sv0000122Dsd00004029* +- ID_MODEL_FROM_DATABASE=MDP3880SP-W ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp Modem (MDP3880SP-W) + + pci:v000014F1d00001036sv0000122Dsd00004031* +- ID_MODEL_FROM_DATABASE=MDP3880SP-U ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp Modem (MDP3880SP-U) + + pci:v000014F1d00001036sv000013E0sd00000209* +- ID_MODEL_FROM_DATABASE=Dell Titanium ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp Modem (Dell Titanium) + + pci:v000014F1d00001036sv000013E0sd0000020A* +- ID_MODEL_FROM_DATABASE=Dell Graphite ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp Modem (Dell Graphite) + + pci:v000014F1d00001036sv000013E0sd00000260* +- ID_MODEL_FROM_DATABASE=Gateway Red Owl ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp Modem (Gateway Red Owl) + + pci:v000014F1d00001036sv000013E0sd00000270* +- ID_MODEL_FROM_DATABASE=Gateway White Horse ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp Modem (Gateway White Horse) + + pci:v000014F1d00001052* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (Worldwide) +@@ -45966,7 +45966,7 @@ pci:v000014F1d00001056* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp Modem (Worldwide) + + pci:v000014F1d00001056sv0000122Dsd00004035* +- ID_MODEL_FROM_DATABASE=MDP3900V-W ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp Modem (Worldwide) (MDP3900V-W) + + pci:v000014F1d00001057* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp Modem (Worldwide) +@@ -45987,7 +45987,7 @@ pci:v000014F1d00001066* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp Modem + + pci:v000014F1d00001066sv0000122Dsd00004033* +- ID_MODEL_FROM_DATABASE=Dell Athena - MDP3900V-U ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp Modem (Dell Athena - MDP3900V-U) + + pci:v000014F1d00001085* + ID_MODEL_FROM_DATABASE=HCF V90 56k Data/Fax/Voice/Spkp PCI Modem +@@ -46011,16 +46011,16 @@ pci:v000014F1d00001453* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem + + pci:v000014F1d00001453sv000013E0sd00000240* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM) + + pci:v000014F1d00001453sv000013E0sd00000250* +- ID_MODEL_FROM_DATABASE=IBM ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM) + + pci:v000014F1d00001453sv0000144Fsd00001502* +- ID_MODEL_FROM_DATABASE=IBM P95-DF (1) ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM P95-DF (1)) + + pci:v000014F1d00001453sv0000144Fsd00001503* +- ID_MODEL_FROM_DATABASE=IBM P95-DF (2) ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax Modem (IBM P95-DF (2)) + + pci:v000014F1d00001454* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice Modem +@@ -46032,10 +46032,10 @@ pci:v000014F1d00001456* + ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp Modem + + pci:v000014F1d00001456sv0000122Dsd00004035* +- ID_MODEL_FROM_DATABASE=Dell Europa - MDP3900V-W ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp Modem (Dell Europa - MDP3900V-W) + + pci:v000014F1d00001456sv0000122Dsd00004302* +- ID_MODEL_FROM_DATABASE=Dell MP3930V-W(C) MiniPCI ++ ID_MODEL_FROM_DATABASE=HCF 56k Data/Fax/Voice/Spkp Modem (Dell MP3930V-W(C) MiniPCI) + + pci:v000014F1d00001610* + ID_MODEL_FROM_DATABASE=ADSL AccessRunner PCI Arbitration Device +@@ -46056,10 +46056,10 @@ pci:v000014F1d00001803* + ID_MODEL_FROM_DATABASE=HCF 56k Modem + + pci:v000014F1d00001803sv00000E11sd00000023* +- ID_MODEL_FROM_DATABASE=623-LAN Grizzly ++ ID_MODEL_FROM_DATABASE=HCF 56k Modem (623-LAN Grizzly) + + pci:v000014F1d00001803sv00000E11sd00000043* +- ID_MODEL_FROM_DATABASE=623-LAN Yogi ++ ID_MODEL_FROM_DATABASE=HCF 56k Modem (623-LAN Yogi) + + pci:v000014F1d00001811* + ID_MODEL_FROM_DATABASE=MiniPCI Network Adapter +@@ -46068,10 +46068,10 @@ pci:v000014F1d00001815* + ID_MODEL_FROM_DATABASE=HCF 56k Modem + + pci:v000014F1d00001815sv00000E11sd00000022* +- ID_MODEL_FROM_DATABASE=Grizzly ++ ID_MODEL_FROM_DATABASE=HCF 56k Modem (Grizzly) + + pci:v000014F1d00001815sv00000E11sd00000042* +- ID_MODEL_FROM_DATABASE=Yogi ++ ID_MODEL_FROM_DATABASE=HCF 56k Modem (Yogi) + + pci:v000014F1d00002003* + ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem +@@ -46089,28 +46089,28 @@ pci:v000014F1d00002013* + ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem + + pci:v000014F1d00002013sv00000E11sd0000B195* +- ID_MODEL_FROM_DATABASE=Bear ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem (Bear) + + pci:v000014F1d00002013sv00000E11sd0000B196* +- ID_MODEL_FROM_DATABASE=Seminole 1 ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem (Seminole 1) + + pci:v000014F1d00002013sv00000E11sd0000B1BE* +- ID_MODEL_FROM_DATABASE=Seminole 2 ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem (Seminole 2) + + pci:v000014F1d00002013sv00001025sd00008013* +- ID_MODEL_FROM_DATABASE=Acer ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem (Acer) + + pci:v000014F1d00002013sv00001033sd0000809D* +- ID_MODEL_FROM_DATABASE=NEC ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem (NEC) + + pci:v000014F1d00002013sv00001033sd000080BC* +- ID_MODEL_FROM_DATABASE=NEC ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem (NEC) + + pci:v000014F1d00002013sv0000155Dsd00006793* +- ID_MODEL_FROM_DATABASE=HP ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem (HP) + + pci:v000014F1d00002013sv0000155Dsd00008850* +- ID_MODEL_FROM_DATABASE=E Machines ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem (E Machines) + + pci:v000014F1d00002014* + ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice Modem +@@ -46131,7 +46131,7 @@ pci:v000014F1d00002045* + ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (WorldW SmartDAA) + + pci:v000014F1d00002045sv000014F1sd00002045* +- ID_MODEL_FROM_DATABASE=Generic SoftK56 ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (WorldW SmartDAA) (Generic SoftK56) + + pci:v000014F1d00002046* + ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice/Spkp Modem (WorldW SmartDAA) +@@ -46152,7 +46152,7 @@ pci:v000014F1d00002093* + ID_MODEL_FROM_DATABASE=HSF 56k Modem + + pci:v000014F1d00002093sv0000155Dsd00002F07* +- ID_MODEL_FROM_DATABASE=Legend ++ ID_MODEL_FROM_DATABASE=HSF 56k Modem (Legend) + + pci:v000014F1d00002143* + ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Cell Modem (Mob WorldW SmartDAA) +@@ -46206,13 +46206,13 @@ pci:v000014F1d00002443* + ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem (Mob WorldW SmartDAA) + + pci:v000014F1d00002443sv0000104Dsd00008075* +- ID_MODEL_FROM_DATABASE=Modem ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem (Mob WorldW SmartDAA) (Modem) + + pci:v000014F1d00002443sv0000104Dsd00008083* +- ID_MODEL_FROM_DATABASE=Modem ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem (Mob WorldW SmartDAA) (Modem) + + pci:v000014F1d00002443sv0000104Dsd00008097* +- ID_MODEL_FROM_DATABASE=Modem ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem (Mob WorldW SmartDAA) (Modem) + + pci:v000014F1d00002444* + ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax/Voice Modem (Mob WorldW SmartDAA) +@@ -46239,13 +46239,13 @@ pci:v000014F1d00002F00* + ID_MODEL_FROM_DATABASE=HSF 56k HSFi Modem + + pci:v000014F1d00002F00sv000013E0sd00008D84* +- ID_MODEL_FROM_DATABASE=IBM HSFi V.90 ++ ID_MODEL_FROM_DATABASE=HSF 56k HSFi Modem (IBM HSFi V.90) + + pci:v000014F1d00002F00sv000013E0sd00008D85* +- ID_MODEL_FROM_DATABASE=Compaq Stinger ++ ID_MODEL_FROM_DATABASE=HSF 56k HSFi Modem (Compaq Stinger) + + pci:v000014F1d00002F00sv000014F1sd00002004* +- ID_MODEL_FROM_DATABASE=Dynalink 56PMi ++ ID_MODEL_FROM_DATABASE=HSF 56k HSFi Modem (Dynalink 56PMi) + + pci:v000014F1d00002F02* + ID_MODEL_FROM_DATABASE=HSF 56k HSFi Data/Fax +@@ -46257,16 +46257,16 @@ pci:v000014F1d00002F20* + ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem + + pci:v000014F1d00002F20sv000014F1sd0000200C* +- ID_MODEL_FROM_DATABASE=Soft Data Fax Modem with SmartCP ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem (Soft Data Fax Modem with SmartCP) + + pci:v000014F1d00002F20sv000014F1sd0000200F* +- ID_MODEL_FROM_DATABASE=Dimension 3000 ++ ID_MODEL_FROM_DATABASE=HSF 56k Data/Fax Modem (Dimension 3000) + + pci:v000014F1d00002F30* + ID_MODEL_FROM_DATABASE=SoftV92 SpeakerPhone SoftRing Modem with SmartSP + + pci:v000014F1d00002F30sv000014F1sd00002014* +- ID_MODEL_FROM_DATABASE=Devolo MikroLink 56K Modem PCI ++ ID_MODEL_FROM_DATABASE=SoftV92 SpeakerPhone SoftRing Modem with SmartSP (Devolo MikroLink 56K Modem PCI) + + pci:v000014F1d00002F50* + ID_MODEL_FROM_DATABASE=Conexant SoftK56 Data/Fax Modem +@@ -46275,13 +46275,13 @@ pci:v000014F1d00005B7A* + ID_MODEL_FROM_DATABASE=CX23418 Single-Chip MPEG-2 Encoder with Integrated Analog Video/Broadcast Audio Decoder + + pci:v000014F1d00005B7Asv00000070sd00007444* +- ID_MODEL_FROM_DATABASE=WinTV HVR-1600 ++ ID_MODEL_FROM_DATABASE=CX23418 Single-Chip MPEG-2 Encoder with Integrated Analog Video/Broadcast Audio Decoder (WinTV HVR-1600) + + pci:v000014F1d00005B7Asv0000107Dsd00006F34* +- ID_MODEL_FROM_DATABASE=WinFast DVR3100 H ++ ID_MODEL_FROM_DATABASE=CX23418 Single-Chip MPEG-2 Encoder with Integrated Analog Video/Broadcast Audio Decoder (WinFast DVR3100 H) + + pci:v000014F1d00005B7Asv00005854sd00003343* +- ID_MODEL_FROM_DATABASE=GoTView PCI DVD3 Hybrid ++ ID_MODEL_FROM_DATABASE=CX23418 Single-Chip MPEG-2 Encoder with Integrated Analog Video/Broadcast Audio Decoder (GoTView PCI DVD3 Hybrid) + + pci:v000014F1d00008200* + ID_MODEL_FROM_DATABASE=CX25850 +@@ -46293,304 +46293,304 @@ pci:v000014F1d00008800* + ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder + + pci:v000014F1d00008800sv00000070sd00002801* +- ID_MODEL_FROM_DATABASE=Hauppauge WinTV 28xxx (Roslyn) models ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (Hauppauge WinTV 28xxx (Roslyn) models) + + pci:v000014F1d00008800sv00000070sd00003400* +- ID_MODEL_FROM_DATABASE=WinTV 34604 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (WinTV 34604) + + pci:v000014F1d00008800sv00000070sd00003401* +- ID_MODEL_FROM_DATABASE=Hauppauge WinTV 34xxx models ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (Hauppauge WinTV 34xxx models) + + pci:v000014F1d00008800sv00000070sd00006902* +- ID_MODEL_FROM_DATABASE=WinTV HVR-4000-HD ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (WinTV HVR-4000-HD) + + pci:v000014F1d00008800sv00000070sd00007801* +- ID_MODEL_FROM_DATABASE=WinTV HVR-1800 MCE ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (WinTV HVR-1800 MCE) + + pci:v000014F1d00008800sv00000070sd00009001* +- ID_MODEL_FROM_DATABASE=Nova-T DVB-T ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (Nova-T DVB-T) + + pci:v000014F1d00008800sv00000070sd00009200* +- ID_MODEL_FROM_DATABASE=Nova-SE2 DVB-S ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (Nova-SE2 DVB-S) + + pci:v000014F1d00008800sv00000070sd00009202* +- ID_MODEL_FROM_DATABASE=Nova-S-Plus DVB-S ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (Nova-S-Plus DVB-S) + + pci:v000014F1d00008800sv00000070sd00009402* +- ID_MODEL_FROM_DATABASE=WinTV-HVR1100 DVB-T/Hybrid ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (WinTV-HVR1100 DVB-T/Hybrid) + + pci:v000014F1d00008800sv00000070sd00009600* +- ID_MODEL_FROM_DATABASE=WinTV 88x Video ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (WinTV 88x Video) + + pci:v000014F1d00008800sv00000070sd00009802* +- ID_MODEL_FROM_DATABASE=WinTV-HVR1100 DVB-T/Hybrid (Low Profile) ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (WinTV-HVR1100 DVB-T/Hybrid (Low Profile)) + + pci:v000014F1d00008800sv00001002sd000000F8* +- ID_MODEL_FROM_DATABASE=ATI TV Wonder Pro ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (ATI TV Wonder Pro) + + pci:v000014F1d00008800sv00001002sd0000A101* +- ID_MODEL_FROM_DATABASE=HDTV Wonder ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (HDTV Wonder) + + pci:v000014F1d00008800sv00001043sd00004823* +- ID_MODEL_FROM_DATABASE=ASUS PVR-416 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (ASUS PVR-416) + + pci:v000014F1d00008800sv0000107Dsd00006611* +- ID_MODEL_FROM_DATABASE=Winfast TV 2000XP Expert ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (Winfast TV 2000XP Expert) + + pci:v000014F1d00008800sv0000107Dsd00006613* +- ID_MODEL_FROM_DATABASE=Leadtek Winfast 2000XP Expert ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (Leadtek Winfast 2000XP Expert) + + pci:v000014F1d00008800sv0000107Dsd00006620* +- ID_MODEL_FROM_DATABASE=Leadtek Winfast DV2000 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (Leadtek Winfast DV2000) + + pci:v000014F1d00008800sv0000107Dsd0000663C* +- ID_MODEL_FROM_DATABASE=Leadtek PVR 2000 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (Leadtek PVR 2000) + + pci:v000014F1d00008800sv0000107Dsd0000665F* +- ID_MODEL_FROM_DATABASE=WinFast DTV1000-T ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (WinFast DTV1000-T) + + pci:v000014F1d00008800sv000010FCsd0000D003* +- ID_MODEL_FROM_DATABASE=IODATA GV-VCP3/PCI ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (IODATA GV-VCP3/PCI) + + pci:v000014F1d00008800sv000010FCsd0000D035* +- ID_MODEL_FROM_DATABASE=IODATA GV/BCTV7E ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (IODATA GV/BCTV7E) + + pci:v000014F1d00008800sv00001421sd00000334* +- ID_MODEL_FROM_DATABASE=Instant TV DVB-T PCI ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (Instant TV DVB-T PCI) + + pci:v000014F1d00008800sv00001461sd0000000A* +- ID_MODEL_FROM_DATABASE=AVerTV 303 (M126) ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (AVerTV 303 (M126)) + + pci:v000014F1d00008800sv00001461sd0000000B* +- ID_MODEL_FROM_DATABASE=AverTV Studio 303 (M126) ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (AverTV Studio 303 (M126)) + + pci:v000014F1d00008800sv00001461sd00008011* +- ID_MODEL_FROM_DATABASE=UltraTV Media Center PCI 550 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (UltraTV Media Center PCI 550) + + pci:v000014F1d00008800sv00001462sd00008606* +- ID_MODEL_FROM_DATABASE=MSI TV-@nywhere Master ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (MSI TV-@nywhere Master) + + pci:v000014F1d00008800sv000014C7sd00000107* +- ID_MODEL_FROM_DATABASE=GDI Black Gold ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (GDI Black Gold) + + pci:v000014F1d00008800sv000014F1sd00000187* +- ID_MODEL_FROM_DATABASE=Conexant DVB-T reference design ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (Conexant DVB-T reference design) + + pci:v000014F1d00008800sv000014F1sd00000342* +- ID_MODEL_FROM_DATABASE=Digital-Logic MICROSPACE Entertainment Center (MEC) ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (Digital-Logic MICROSPACE Entertainment Center (MEC)) + + pci:v000014F1d00008800sv0000153Bsd00001166* +- ID_MODEL_FROM_DATABASE=Cinergy 1400 DVB-T ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (Cinergy 1400 DVB-T) + + pci:v000014F1d00008800sv00001540sd00002580* +- ID_MODEL_FROM_DATABASE=Provideo PV259 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (Provideo PV259) + + pci:v000014F1d00008800sv00001554sd00004811* +- ID_MODEL_FROM_DATABASE=PixelView ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (PixelView) + + pci:v000014F1d00008800sv00001554sd00004813* +- ID_MODEL_FROM_DATABASE=Club 3D ZAP1000 MCE Edition ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (Club 3D ZAP1000 MCE Edition) + + pci:v000014F1d00008800sv000017DEsd000008A1* +- ID_MODEL_FROM_DATABASE=KWorld/VStream XPert DVB-T with cx22702 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (KWorld/VStream XPert DVB-T with cx22702) + + pci:v000014F1d00008800sv000017DEsd000008A6* +- ID_MODEL_FROM_DATABASE=KWorld/VStream XPert DVB-T ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (KWorld/VStream XPert DVB-T) + + pci:v000014F1d00008800sv000017DEsd000008B2* +- ID_MODEL_FROM_DATABASE=KWorld DVB-S 100 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (KWorld DVB-S 100) + + pci:v000014F1d00008800sv000017DEsd0000A8A6* +- ID_MODEL_FROM_DATABASE=digitalnow DNTV Live! DVB-T ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (digitalnow DNTV Live! DVB-T) + + pci:v000014F1d00008800sv00001822sd00000025* +- ID_MODEL_FROM_DATABASE=digitalnow DNTV Live! DVB-T Pro ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (digitalnow DNTV Live! DVB-T Pro) + + pci:v000014F1d00008800sv0000185Bsd0000E000* +- ID_MODEL_FROM_DATABASE=VideoMate X500 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (VideoMate X500) + + pci:v000014F1d00008800sv000018ACsd0000D500* +- ID_MODEL_FROM_DATABASE=FusionHDTV 5 Gold ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (FusionHDTV 5 Gold) + + pci:v000014F1d00008800sv000018ACsd0000D810* +- ID_MODEL_FROM_DATABASE=FusionHDTV 3 Gold-Q ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (FusionHDTV 3 Gold-Q) + + pci:v000014F1d00008800sv000018ACsd0000D820* +- ID_MODEL_FROM_DATABASE=FusionHDTV 3 Gold-T ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (FusionHDTV 3 Gold-T) + + pci:v000014F1d00008800sv000018ACsd0000DB00* +- ID_MODEL_FROM_DATABASE=FusionHDTV DVB-T1 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (FusionHDTV DVB-T1) + + pci:v000014F1d00008800sv000018ACsd0000DB11* +- ID_MODEL_FROM_DATABASE=FusionHDTV DVB-T Plus ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (FusionHDTV DVB-T Plus) + + pci:v000014F1d00008800sv000018ACsd0000DB50* +- ID_MODEL_FROM_DATABASE=FusionHDTV DVB-T Dual Digital ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (FusionHDTV DVB-T Dual Digital) + + pci:v000014F1d00008800sv00005654sd00002388* +- ID_MODEL_FROM_DATABASE=GoTView PCI Hybrid TV Tuner Card ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (GoTView PCI Hybrid TV Tuner Card) + + pci:v000014F1d00008800sv00007063sd00003000* +- ID_MODEL_FROM_DATABASE=pcHDTV HD3000 HDTV ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (pcHDTV HD3000 HDTV) + + pci:v000014F1d00008800sv00007063sd00005500* +- ID_MODEL_FROM_DATABASE=pcHDTV HD-5500 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (pcHDTV HD-5500) + + pci:v000014F1d00008801* + ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] + + pci:v000014F1d00008801sv00000070sd00002801* +- ID_MODEL_FROM_DATABASE=Hauppauge WinTV 28xxx (Roslyn) models ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (Hauppauge WinTV 28xxx (Roslyn) models) + + pci:v000014F1d00008801sv0000185Bsd0000E000* +- ID_MODEL_FROM_DATABASE=VideoMate X500 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (VideoMate X500) + + pci:v000014F1d00008801sv00005654sd00002388* +- ID_MODEL_FROM_DATABASE=GoTView PCI Hybrid Audio AVStream Device ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (GoTView PCI Hybrid Audio AVStream Device) + + pci:v000014F1d00008801sv00007063sd00005500* +- ID_MODEL_FROM_DATABASE=pcHDTV HD-5500 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (pcHDTV HD-5500) + + pci:v000014F1d00008802* + ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] + + pci:v000014F1d00008802sv00000070sd00002801* +- ID_MODEL_FROM_DATABASE=Hauppauge WinTV 28xxx (Roslyn) models ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (Hauppauge WinTV 28xxx (Roslyn) models) + + pci:v000014F1d00008802sv00000070sd00006902* +- ID_MODEL_FROM_DATABASE=WinTV HVR-4000-HD ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (WinTV HVR-4000-HD) + + pci:v000014F1d00008802sv00000070sd00009002* +- ID_MODEL_FROM_DATABASE=Nova-T DVB-T Model 909 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (Nova-T DVB-T Model 909) + + pci:v000014F1d00008802sv00000070sd00009402* +- ID_MODEL_FROM_DATABASE=WinTV-HVR1100 DVB-T/Hybrid ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (WinTV-HVR1100 DVB-T/Hybrid) + + pci:v000014F1d00008802sv00000070sd00009600* +- ID_MODEL_FROM_DATABASE=WinTV 88x MPEG Encoder ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (WinTV 88x MPEG Encoder) + + pci:v000014F1d00008802sv00001043sd00004823* +- ID_MODEL_FROM_DATABASE=ASUS PVR-416 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (ASUS PVR-416) + + pci:v000014F1d00008802sv0000107Dsd0000663C* +- ID_MODEL_FROM_DATABASE=Leadtek PVR 2000 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (Leadtek PVR 2000) + + pci:v000014F1d00008802sv0000107Dsd0000665F* +- ID_MODEL_FROM_DATABASE=WinFast DTV1000-T ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (WinFast DTV1000-T) + + pci:v000014F1d00008802sv000014F1sd00000187* +- ID_MODEL_FROM_DATABASE=Conexant DVB-T reference design ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (Conexant DVB-T reference design) + + pci:v000014F1d00008802sv000017DEsd000008A1* +- ID_MODEL_FROM_DATABASE=XPert DVB-T PCI BDA DVBT 23880 Transport Stream Capture ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (XPert DVB-T PCI BDA DVBT 23880 Transport Stream Capture) + + pci:v000014F1d00008802sv000017DEsd000008A6* +- ID_MODEL_FROM_DATABASE=KWorld/VStream XPert DVB-T ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (KWorld/VStream XPert DVB-T) + + pci:v000014F1d00008802sv000018ACsd0000D500* +- ID_MODEL_FROM_DATABASE=DViCO FusionHDTV5 Gold ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (DViCO FusionHDTV5 Gold) + + pci:v000014F1d00008802sv000018ACsd0000D810* +- ID_MODEL_FROM_DATABASE=DViCO FusionHDTV3 Gold-Q ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (DViCO FusionHDTV3 Gold-Q) + + pci:v000014F1d00008802sv000018ACsd0000D820* +- ID_MODEL_FROM_DATABASE=DViCO FusionHDTV3 Gold-T ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (DViCO FusionHDTV3 Gold-T) + + pci:v000014F1d00008802sv000018ACsd0000DB00* +- ID_MODEL_FROM_DATABASE=DVICO FusionHDTV DVB-T1 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (DVICO FusionHDTV DVB-T1) + + pci:v000014F1d00008802sv000018ACsd0000DB10* +- ID_MODEL_FROM_DATABASE=DVICO FusionHDTV DVB-T Plus ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (DVICO FusionHDTV DVB-T Plus) + + pci:v000014F1d00008802sv00005654sd00002388* +- ID_MODEL_FROM_DATABASE=GoTView PCI Hybrid TS Capture Device ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (GoTView PCI Hybrid TS Capture Device) + + pci:v000014F1d00008802sv00007063sd00003000* +- ID_MODEL_FROM_DATABASE=pcHDTV HD3000 HDTV ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (pcHDTV HD3000 HDTV) + + pci:v000014F1d00008802sv00007063sd00005500* +- ID_MODEL_FROM_DATABASE=pcHDTV HD-5500 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (pcHDTV HD-5500) + + pci:v000014F1d00008804* + ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [IR Port] + + pci:v000014F1d00008804sv00000070sd00006902* +- ID_MODEL_FROM_DATABASE=WinTV HVR-4000-HD ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [IR Port] (WinTV HVR-4000-HD) + + pci:v000014F1d00008804sv00000070sd00009002* +- ID_MODEL_FROM_DATABASE=Nova-T DVB-T Model 909 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [IR Port] (Nova-T DVB-T Model 909) + + pci:v000014F1d00008804sv00000070sd00009402* +- ID_MODEL_FROM_DATABASE=WinTV-HVR1100 DVB-T/Hybrid ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [IR Port] (WinTV-HVR1100 DVB-T/Hybrid) + + pci:v000014F1d00008804sv00007063sd00005500* +- ID_MODEL_FROM_DATABASE=pcHDTV HD-5500 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [IR Port] (pcHDTV HD-5500) + + pci:v000014F1d00008811* + ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] + + pci:v000014F1d00008811sv00000070sd00003400* +- ID_MODEL_FROM_DATABASE=WinTV 34604 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (WinTV 34604) + + pci:v000014F1d00008811sv00000070sd00003401* +- ID_MODEL_FROM_DATABASE=Hauppauge WinTV 34xxx models ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (Hauppauge WinTV 34xxx models) + + pci:v000014F1d00008811sv00000070sd00006902* +- ID_MODEL_FROM_DATABASE=WinTV HVR-4000-HD ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (WinTV HVR-4000-HD) + + pci:v000014F1d00008811sv00000070sd00009402* +- ID_MODEL_FROM_DATABASE=WinTV-HVR1100 DVB-T/Hybrid ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (WinTV-HVR1100 DVB-T/Hybrid) + + pci:v000014F1d00008811sv00000070sd00009600* +- ID_MODEL_FROM_DATABASE=WinTV 88x Audio ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (WinTV 88x Audio) + + pci:v000014F1d00008811sv00001462sd00008606* +- ID_MODEL_FROM_DATABASE=MSI TV-@nywhere Master ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (MSI TV-@nywhere Master) + + pci:v000014F1d00008811sv000018ACsd0000D500* +- ID_MODEL_FROM_DATABASE=DViCO FusionHDTV5 Gold ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (DViCO FusionHDTV5 Gold) + + pci:v000014F1d00008811sv000018ACsd0000D810* +- ID_MODEL_FROM_DATABASE=DViCO FusionHDTV3 Gold-Q ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (DViCO FusionHDTV3 Gold-Q) + + pci:v000014F1d00008811sv000018ACsd0000D820* +- ID_MODEL_FROM_DATABASE=DViCO FusionHDTV3 Gold-T ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (DViCO FusionHDTV3 Gold-T) + + pci:v000014F1d00008811sv000018ACsd0000DB00* +- ID_MODEL_FROM_DATABASE=DVICO FusionHDTV DVB-T1 ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (DVICO FusionHDTV DVB-T1) + + pci:v000014F1d00008811sv00005654sd00002388* +- ID_MODEL_FROM_DATABASE=GoTView PCI Hybrid Audio Capture Device ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (GoTView PCI Hybrid Audio Capture Device) + + pci:v000014F1d00008852* + ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder + + pci:v000014F1d00008852sv00000070sd00008010* +- ID_MODEL_FROM_DATABASE=Hauppauge WinTV HVR-1400 ExpressCard ++ ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder (Hauppauge WinTV HVR-1400 ExpressCard) + + pci:v000014F1d00008852sv0000107Dsd00006F22* +- ID_MODEL_FROM_DATABASE=WinFast PxTV1200 ++ ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder (WinFast PxTV1200) + + pci:v000014F1d00008852sv00001461sd0000C039* +- ID_MODEL_FROM_DATABASE=AVerTV Hybrid Express (A577) ++ ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder (AVerTV Hybrid Express (A577)) + + pci:v000014F1d00008852sv0000153Bsd0000117E* +- ID_MODEL_FROM_DATABASE=Cinergy T PCIe Dual ++ ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder (Cinergy T PCIe Dual) + + pci:v000014F1d00008852sv000018ACsd0000DB78* +- ID_MODEL_FROM_DATABASE=FusionHDTV DVB-T Dual Express ++ ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder (FusionHDTV DVB-T Dual Express) + + pci:v000014F1d00008880* + ID_MODEL_FROM_DATABASE=CX23887/8 PCIe Broadcast Audio and Video Decoder with 3D Comb + + pci:v000014F1d00008880sv00000070sd0000C108* +- ID_MODEL_FROM_DATABASE=WinTV-HVR-4400-HD model 1278 ++ ID_MODEL_FROM_DATABASE=CX23887/8 PCIe Broadcast Audio and Video Decoder with 3D Comb (WinTV-HVR-4400-HD model 1278) + + pci:v000014F1d00008880sv00005654sd00002389* +- ID_MODEL_FROM_DATABASE=GoTView X5 DVD Hybrid PCI-E ++ ID_MODEL_FROM_DATABASE=CX23887/8 PCIe Broadcast Audio and Video Decoder with 3D Comb (GoTView X5 DVD Hybrid PCI-E) + + pci:v000014F1d00008880sv00005654sd00002390* +- ID_MODEL_FROM_DATABASE=GoTView X5 3D HYBRID PCI-E ++ ID_MODEL_FROM_DATABASE=CX23887/8 PCIe Broadcast Audio and Video Decoder with 3D Comb (GoTView X5 3D HYBRID PCI-E) + + pci:v000014F2* + ID_VENDOR_FROM_DATABASE=MOBILITY Electronics +@@ -46842,100 +46842,100 @@ pci:v00001522d00000100* + ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge + + pci:v00001522d00000100sv00001522sd00000200* +- ID_MODEL_FROM_DATABASE=RockForceDUO 2 Port V.92/V.44 Data/Fax/Voice Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForceDUO 2 Port V.92/V.44 Data/Fax/Voice Modem) + + pci:v00001522d00000100sv00001522sd00000300* +- ID_MODEL_FROM_DATABASE=RockForceQUATRO 4 Port V.92/V.44 Data/Fax/Voice Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForceQUATRO 4 Port V.92/V.44 Data/Fax/Voice Modem) + + pci:v00001522d00000100sv00001522sd00000400* +- ID_MODEL_FROM_DATABASE=RockForceDUO+ 2 Port V.92/V.44 Data/Fax/Voice Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForceDUO+ 2 Port V.92/V.44 Data/Fax/Voice Modem) + + pci:v00001522d00000100sv00001522sd00000500* +- ID_MODEL_FROM_DATABASE=RockForceQUATRO+ 4 Port V.92/V.44 Data/Fax/Voice Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForceQUATRO+ 4 Port V.92/V.44 Data/Fax/Voice Modem) + + pci:v00001522d00000100sv00001522sd00000600* +- ID_MODEL_FROM_DATABASE=RockForce+ 2 Port V.90 Data/Fax/Voice Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForce+ 2 Port V.90 Data/Fax/Voice Modem) + + pci:v00001522d00000100sv00001522sd00000700* +- ID_MODEL_FROM_DATABASE=RockForce+ 4 Port V.90 Data/Fax/Voice Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForce+ 4 Port V.90 Data/Fax/Voice Modem) + + pci:v00001522d00000100sv00001522sd00000800* +- ID_MODEL_FROM_DATABASE=RockForceOCTO+ 8 Port V.92/V.44 Data/Fax/Voice Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForceOCTO+ 8 Port V.92/V.44 Data/Fax/Voice Modem) + + pci:v00001522d00000100sv00001522sd00000C00* +- ID_MODEL_FROM_DATABASE=RockForceDUO+ 2 Port V.92/V.44 Data, V.34 Super-G3 Fax, Voice Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForceDUO+ 2 Port V.92/V.44 Data, V.34 Super-G3 Fax, Voice Modem) + + pci:v00001522d00000100sv00001522sd00000D00* +- ID_MODEL_FROM_DATABASE=RockForceQUATRO+ 4 Port V.92/V.44 Data, V.34 Super-G3 Fax, Voice Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForceQUATRO+ 4 Port V.92/V.44 Data, V.34 Super-G3 Fax, Voice Modem) + + pci:v00001522d00000100sv00001522sd00001D00* +- ID_MODEL_FROM_DATABASE=RockForceOCTO+ 8 Port V.92/V.44 Data, V.34 Super-G3 Fax, Voice Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForceOCTO+ 8 Port V.92/V.44 Data, V.34 Super-G3 Fax, Voice Modem) + + pci:v00001522d00000100sv00001522sd00002000* +- ID_MODEL_FROM_DATABASE=RockForceD1 1 Port V.90 Data Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForceD1 1 Port V.90 Data Modem) + + pci:v00001522d00000100sv00001522sd00002100* +- ID_MODEL_FROM_DATABASE=RockForceF1 1 Port V.34 Super-G3 Fax Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForceF1 1 Port V.34 Super-G3 Fax Modem) + + pci:v00001522d00000100sv00001522sd00002200* +- ID_MODEL_FROM_DATABASE=RockForceD2 2 Port V.90 Data Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForceD2 2 Port V.90 Data Modem) + + pci:v00001522d00000100sv00001522sd00002300* +- ID_MODEL_FROM_DATABASE=RockForceF2 2 Port V.34 Super-G3 Fax Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForceF2 2 Port V.34 Super-G3 Fax Modem) + + pci:v00001522d00000100sv00001522sd00002400* +- ID_MODEL_FROM_DATABASE=RockForceD4 4 Port V.90 Data Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForceD4 4 Port V.90 Data Modem) + + pci:v00001522d00000100sv00001522sd00002500* +- ID_MODEL_FROM_DATABASE=RockForceF4 4 Port V.34 Super-G3 Fax Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForceF4 4 Port V.34 Super-G3 Fax Modem) + + pci:v00001522d00000100sv00001522sd00002600* +- ID_MODEL_FROM_DATABASE=RockForceD8 8 Port V.90 Data Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForceD8 8 Port V.90 Data Modem) + + pci:v00001522d00000100sv00001522sd00002700* +- ID_MODEL_FROM_DATABASE=RockForceF8 8 Port V.34 Super-G3 Fax Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (RockForceF8 8 Port V.34 Super-G3 Fax Modem) + + pci:v00001522d00000100sv00001522sd00003000* +- ID_MODEL_FROM_DATABASE=IQ Express D1 - 1 Port V.92 Data Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (IQ Express D1 - 1 Port V.92 Data Modem) + + pci:v00001522d00000100sv00001522sd00003100* +- ID_MODEL_FROM_DATABASE=IQ Express F1 - 1 Port V.34 Super-G3 Fax Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (IQ Express F1 - 1 Port V.34 Super-G3 Fax Modem) + + pci:v00001522d00000100sv00001522sd00003200* +- ID_MODEL_FROM_DATABASE=IQ Express D2 - 2 Port V.92 Data Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (IQ Express D2 - 2 Port V.92 Data Modem) + + pci:v00001522d00000100sv00001522sd00003300* +- ID_MODEL_FROM_DATABASE=IQ Express F2 - 2 Port V.34 Super-G3 Fax Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (IQ Express F2 - 2 Port V.34 Super-G3 Fax Modem) + + pci:v00001522d00000100sv00001522sd00003400* +- ID_MODEL_FROM_DATABASE=IQ Express D4 - 4 Port V.92 Data Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (IQ Express D4 - 4 Port V.92 Data Modem) + + pci:v00001522d00000100sv00001522sd00003500* +- ID_MODEL_FROM_DATABASE=IQ Express F4 - 4 Port V.34 Super-G3 Fax Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (IQ Express F4 - 4 Port V.34 Super-G3 Fax Modem) + + pci:v00001522d00000100sv00001522sd00003C00* +- ID_MODEL_FROM_DATABASE=IQ Express D8 - 8 Port V.92 Data Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (IQ Express D8 - 8 Port V.92 Data Modem) + + pci:v00001522d00000100sv00001522sd00003D00* +- ID_MODEL_FROM_DATABASE=IQ Express F8 - 8 Port V.34 Super-G3 Fax Modem ++ ID_MODEL_FROM_DATABASE=PCI <-> IOBus Bridge (IQ Express F8 - 8 Port V.34 Super-G3 Fax Modem) + + pci:v00001522d00004000* + ID_MODEL_FROM_DATABASE=PCI Express UART + + pci:v00001522d00004000sv00001522sd00004001* +- ID_MODEL_FROM_DATABASE=IQ Express 1-port V.34 Super-G3 Fax ++ ID_MODEL_FROM_DATABASE=PCI Express UART (IQ Express 1-port V.34 Super-G3 Fax) + + pci:v00001522d00004000sv00001522sd00004002* +- ID_MODEL_FROM_DATABASE=IQ Express 2-port V.34 Super-G3 Fax ++ ID_MODEL_FROM_DATABASE=PCI Express UART (IQ Express 2-port V.34 Super-G3 Fax) + + pci:v00001522d00004000sv00001522sd00004004* +- ID_MODEL_FROM_DATABASE=IQ Express 4-port V.34 Super-G3 Fax ++ ID_MODEL_FROM_DATABASE=PCI Express UART (IQ Express 4-port V.34 Super-G3 Fax) + + pci:v00001522d00004000sv00001522sd00004008* +- ID_MODEL_FROM_DATABASE=IQ Express 8-port V.34 Super-G3 Fax ++ ID_MODEL_FROM_DATABASE=PCI Express UART (IQ Express 8-port V.34 Super-G3 Fax) + + pci:v00001522d00004000sv00001522sd00004100* +- ID_MODEL_FROM_DATABASE=IQ Express SideBand ++ ID_MODEL_FROM_DATABASE=PCI Express UART (IQ Express SideBand) + + pci:v00001523* + ID_VENDOR_FROM_DATABASE=MUSIC Semiconductors +@@ -46947,7 +46947,7 @@ pci:v00001524d00000510* + ID_MODEL_FROM_DATABASE=CB710 Memory Card Reader Controller + + pci:v00001524d00000510sv0000103Csd0000006A* +- ID_MODEL_FROM_DATABASE=NX9500 ++ ID_MODEL_FROM_DATABASE=CB710 Memory Card Reader Controller (NX9500) + + pci:v00001524d00000520* + ID_MODEL_FROM_DATABASE=FLASH memory: ENE Technology Inc: +@@ -46986,16 +46986,16 @@ pci:v00001524d00001410* + ID_MODEL_FROM_DATABASE=CB1410 Cardbus Controller + + pci:v00001524d00001410sv00001025sd0000003C* +- ID_MODEL_FROM_DATABASE=CL50 motherboard ++ ID_MODEL_FROM_DATABASE=CB1410 Cardbus Controller (CL50 motherboard) + + pci:v00001524d00001410sv00001025sd0000005A* +- ID_MODEL_FROM_DATABASE=TravelMate 290 ++ ID_MODEL_FROM_DATABASE=CB1410 Cardbus Controller (TravelMate 290) + + pci:v00001524d00001411* + ID_MODEL_FROM_DATABASE=CB-710/2/4 Cardbus Controller + + pci:v00001524d00001411sv0000103Csd0000006A* +- ID_MODEL_FROM_DATABASE=NX9500 ++ ID_MODEL_FROM_DATABASE=CB-710/2/4 Cardbus Controller (NX9500) + + pci:v00001524d00001412* + ID_MODEL_FROM_DATABASE=CB-712/4 Cardbus Controller +@@ -47598,7 +47598,7 @@ pci:v000015ADd00000801* + ID_MODEL_FROM_DATABASE=Virtual Machine Interface + + pci:v000015ADd00000801sv000015ADsd00000800* +- ID_MODEL_FROM_DATABASE=Hypervisor ROM Interface ++ ID_MODEL_FROM_DATABASE=Virtual Machine Interface (Hypervisor ROM Interface) + + pci:v000015ADd00001977* + ID_MODEL_FROM_DATABASE=HD Audio Controller +@@ -47748,10 +47748,10 @@ pci:v000015B3d00006746* + ID_MODEL_FROM_DATABASE=MT26438 [ConnectX VPI PCIe 2.0 5GT/s - IB QDR / 10GigE Virtualization+] + + pci:v000015B3d00006746sv0000103Csd00001781* +- ID_MODEL_FROM_DATABASE=NC543i 1-port 4x QDR IB/Flex-10 10Gb Adapter ++ ID_MODEL_FROM_DATABASE=MT26438 [ConnectX VPI PCIe 2.0 5GT/s - IB QDR / 10GigE Virtualization+] (NC543i 1-port 4x QDR IB/Flex-10 10Gb Adapter) + + pci:v000015B3d00006746sv0000103Csd00003349* +- ID_MODEL_FROM_DATABASE=NC543i 2-port 4xQDR IB/10Gb Adapter ++ ID_MODEL_FROM_DATABASE=MT26438 [ConnectX VPI PCIe 2.0 5GT/s - IB QDR / 10GigE Virtualization+] (NC543i 2-port 4xQDR IB/10Gb Adapter) + + pci:v000015B3d00006750* + ID_MODEL_FROM_DATABASE=MT26448 [ConnectX EN 10GigE, PCIe 2.0 5GT/s] +@@ -47763,7 +47763,7 @@ pci:v000015B3d00006764* + ID_MODEL_FROM_DATABASE=MT26468 [ConnectX EN 10GigE, PCIe 2.0 5GT/s Virtualization+] + + pci:v000015B3d00006764sv0000103Csd00003313* +- ID_MODEL_FROM_DATABASE=HP NC542m Dual Port Flex-10 10GbE BLc Adapter ++ ID_MODEL_FROM_DATABASE=MT26468 [ConnectX EN 10GigE, PCIe 2.0 5GT/s Virtualization+] (HP NC542m Dual Port Flex-10 10GbE BLc Adapter) + + pci:v000015B3d0000676E* + ID_MODEL_FROM_DATABASE=MT26478 [ConnectX EN 40GigE, PCIe 2.0 5GT/s] +@@ -47886,13 +47886,13 @@ pci:v000015BCd00000105* + ID_MODEL_FROM_DATABASE=Celerity FC-44XS/FC-42XS/FC-41XS/FC-44ES/FC-42ES/FC-41ES + + pci:v000015BCd00000105sv0000117Csd00000022* +- ID_MODEL_FROM_DATABASE=Celerity FC-42XS Fibre Channel Adapter ++ ID_MODEL_FROM_DATABASE=Celerity FC-44XS/FC-42XS/FC-41XS/FC-44ES/FC-42ES/FC-41ES (Celerity FC-42XS Fibre Channel Adapter) + + pci:v000015BCd00000105sv0000117Csd00000025* +- ID_MODEL_FROM_DATABASE=Celerity FC-44ES Fibre Channel Adapter ++ ID_MODEL_FROM_DATABASE=Celerity FC-44XS/FC-42XS/FC-41XS/FC-44ES/FC-42ES/FC-41ES (Celerity FC-44ES Fibre Channel Adapter) + + pci:v000015BCd00000105sv0000117Csd00000026* +- ID_MODEL_FROM_DATABASE=Celerity FC-42ES Fibre Channel Adapter ++ ID_MODEL_FROM_DATABASE=Celerity FC-44XS/FC-42XS/FC-41XS/FC-44ES/FC-42ES/FC-41ES (Celerity FC-42ES Fibre Channel Adapter) + + pci:v000015BCd00001100* + ID_MODEL_FROM_DATABASE=E8001-66442 PCI Express CIC +@@ -48306,34 +48306,34 @@ pci:v00001657d00000013* + ID_MODEL_FROM_DATABASE=425/825/42B/82B 4Gbps/8Gbps PCIe dual port FC HBA + + pci:v00001657d00000013sv0000103Csd00001742* +- ID_MODEL_FROM_DATABASE=HP 82B 8Gbps dual port FC HBA ++ ID_MODEL_FROM_DATABASE=425/825/42B/82B 4Gbps/8Gbps PCIe dual port FC HBA (HP 82B 8Gbps dual port FC HBA) + + pci:v00001657d00000013sv0000103Csd00001744* +- ID_MODEL_FROM_DATABASE=HP 42B 4Gbps dual port FC HBA ++ ID_MODEL_FROM_DATABASE=425/825/42B/82B 4Gbps/8Gbps PCIe dual port FC HBA (HP 42B 4Gbps dual port FC HBA) + + pci:v00001657d00000013sv00001657sd00000014* +- ID_MODEL_FROM_DATABASE=425/825 4Gbps/8Gbps PCIe dual port FC HBA ++ ID_MODEL_FROM_DATABASE=425/825/42B/82B 4Gbps/8Gbps PCIe dual port FC HBA (425/825 4Gbps/8Gbps PCIe dual port FC HBA) + + pci:v00001657d00000014* + ID_MODEL_FROM_DATABASE=1010/1020/1007/1741 10Gbps CNA + + pci:v00001657d00000014sv00001657sd00000014* +- ID_MODEL_FROM_DATABASE=1010/1020/1007/1741 10Gbps CNA - FCOE ++ ID_MODEL_FROM_DATABASE=1010/1020/1007/1741 10Gbps CNA (- FCOE) + + pci:v00001657d00000014sv00001657sd00000015* +- ID_MODEL_FROM_DATABASE=1010/1020/1007/1741 10Gbps CNA - LL ++ ID_MODEL_FROM_DATABASE=1010/1020/1007/1741 10Gbps CNA (- LL) + + pci:v00001657d00000017* + ID_MODEL_FROM_DATABASE=415/815/41B/81B 4Gbps/8Gbps PCIe single port FC HBA + + pci:v00001657d00000017sv0000103Csd00001741* +- ID_MODEL_FROM_DATABASE=HP 41B 4Gbps single port FC HBA ++ ID_MODEL_FROM_DATABASE=415/815/41B/81B 4Gbps/8Gbps PCIe single port FC HBA (HP 41B 4Gbps single port FC HBA) + + pci:v00001657d00000017sv0000103Csd00001743* +- ID_MODEL_FROM_DATABASE=HP 81B 8Gbps single port FC HBA ++ ID_MODEL_FROM_DATABASE=415/815/41B/81B 4Gbps/8Gbps PCIe single port FC HBA (HP 81B 8Gbps single port FC HBA) + + pci:v00001657d00000017sv00001657sd00000014* +- ID_MODEL_FROM_DATABASE=415/815 4Gbps/8Gbps single port PCIe FC HBA ++ ID_MODEL_FROM_DATABASE=415/815/41B/81B 4Gbps/8Gbps PCIe single port FC HBA (415/815 4Gbps/8Gbps single port PCIe FC HBA) + + pci:v00001657d00000021* + ID_MODEL_FROM_DATABASE=804 8Gbps FC HBA for HP Bladesystem c-class +@@ -48342,13 +48342,13 @@ pci:v00001657d00000022* + ID_MODEL_FROM_DATABASE=1860 16Gbps/10Gbps Fabric Adapter + + pci:v00001657d00000022sv00001657sd00000022* +- ID_MODEL_FROM_DATABASE=10Gbps CNA - FCOE ++ ID_MODEL_FROM_DATABASE=1860 16Gbps/10Gbps Fabric Adapter (10Gbps CNA - FCOE) + + pci:v00001657d00000022sv00001657sd00000023* +- ID_MODEL_FROM_DATABASE=10Gbps CNA - LL ++ ID_MODEL_FROM_DATABASE=1860 16Gbps/10Gbps Fabric Adapter (10Gbps CNA - LL) + + pci:v00001657d00000022sv00001657sd00000024* +- ID_MODEL_FROM_DATABASE=16Gbps FC HBA ++ ID_MODEL_FROM_DATABASE=1860 16Gbps/10Gbps Fabric Adapter (16Gbps FC HBA) + + pci:v00001657d00000023* + ID_MODEL_FROM_DATABASE=1867/1869 16Gbps FC HBA +@@ -48435,10 +48435,10 @@ pci:v0000167Bd00002102* + ID_MODEL_FROM_DATABASE=ZyDAS ZD1202 + + pci:v0000167Bd00002102sv0000187Esd00003406* +- ID_MODEL_FROM_DATABASE=ZyAIR B-122 CardBus 11Mbs Wireless LAN Card ++ ID_MODEL_FROM_DATABASE=ZyDAS ZD1202 (ZyAIR B-122 CardBus 11Mbs Wireless LAN Card) + + pci:v0000167Bd00002102sv0000187Esd00003407* +- ID_MODEL_FROM_DATABASE=ZyAIR B-320 802.11b Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=ZyDAS ZD1202 (ZyAIR B-320 802.11b Wireless PCI Adapter) + + pci:v0000167Bd00002116* + ID_MODEL_FROM_DATABASE=ZD1212B Wireless Adapter +@@ -48471,16 +48471,16 @@ pci:v0000168Cd00000007* + ID_MODEL_FROM_DATABASE=AR5210 Wireless Network Adapter [AR5000 802.11a] + + pci:v0000168Cd00000007sv00001737sd00000007* +- ID_MODEL_FROM_DATABASE=WPC54A Wireless PC Card ++ ID_MODEL_FROM_DATABASE=AR5210 Wireless Network Adapter [AR5000 802.11a] (WPC54A Wireless PC Card) + + pci:v0000168Cd00000007sv00001B47sd00000100* +- ID_MODEL_FROM_DATABASE=Harmony 8450CN Wireless CardBus Module ++ ID_MODEL_FROM_DATABASE=AR5210 Wireless Network Adapter [AR5000 802.11a] (Harmony 8450CN Wireless CardBus Module) + + pci:v0000168Cd00000007sv00001B47sd00000110* +- ID_MODEL_FROM_DATABASE=Skyline 4030 / Harmony 8450 802.11a Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR5210 Wireless Network Adapter [AR5000 802.11a] (Skyline 4030 / Harmony 8450 802.11a Wireless CardBus Adapter) + + pci:v0000168Cd00000007sv00008086sd00002501* +- ID_MODEL_FROM_DATABASE=PRO/Wireless 5000 LAN PCI Adapter Module ++ ID_MODEL_FROM_DATABASE=AR5210 Wireless Network Adapter [AR5000 802.11a] (PRO/Wireless 5000 LAN PCI Adapter Module) + + pci:v0000168Cd00000011* + ID_MODEL_FROM_DATABASE=AR5211 Wireless Network Adapter [AR5001A 802.11a] +@@ -48489,562 +48489,562 @@ pci:v0000168Cd00000012* + ID_MODEL_FROM_DATABASE=AR5211 Wireless Network Adapter [AR5001X 802.11ab] + + pci:v0000168Cd00000012sv00001186sd00003A03* +- ID_MODEL_FROM_DATABASE=AirPro DWL-A650 Wireless Cardbus Adapter (rev.B) ++ ID_MODEL_FROM_DATABASE=AR5211 Wireless Network Adapter [AR5001X 802.11ab] (AirPro DWL-A650 Wireless Cardbus Adapter (rev.B)) + + pci:v0000168Cd00000012sv00001186sd00003A04* +- ID_MODEL_FROM_DATABASE=AirPro DWL-AB650 Multimode Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5211 Wireless Network Adapter [AR5001X 802.11ab] (AirPro DWL-AB650 Multimode Wireless Cardbus Adapter) + + pci:v0000168Cd00000012sv00001186sd00003A05* +- ID_MODEL_FROM_DATABASE=AirPro DWL-AB520 Multimode Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5211 Wireless Network Adapter [AR5001X 802.11ab] (AirPro DWL-AB520 Multimode Wireless PCI Adapter) + + pci:v0000168Cd00000012sv0000126Csd00008031* +- ID_MODEL_FROM_DATABASE=2201 Mobile Adapter ++ ID_MODEL_FROM_DATABASE=AR5211 Wireless Network Adapter [AR5001X 802.11ab] (2201 Mobile Adapter) + + pci:v0000168Cd00000012sv00001385sd00004400* +- ID_MODEL_FROM_DATABASE=WAB501 802.11ab Wireless CardBus Card ++ ID_MODEL_FROM_DATABASE=AR5211 Wireless Network Adapter [AR5001X 802.11ab] (WAB501 802.11ab Wireless CardBus Card) + + pci:v0000168Cd00000012sv00001B47sd0000AA00* +- ID_MODEL_FROM_DATABASE=8460 802.11ab Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR5211 Wireless Network Adapter [AR5001X 802.11ab] (8460 802.11ab Wireless CardBus Adapter) + + pci:v0000168Cd00000013* + ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter + + pci:v0000168Cd00000013sv00000308sd00003402* +- ID_MODEL_FROM_DATABASE=AG-100 802.11ag Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (AG-100 802.11ag Wireless Cardbus Adapter) + + pci:v0000168Cd00000013sv00000308sd00003405* +- ID_MODEL_FROM_DATABASE=G-102 v2 802.11g Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (G-102 v2 802.11g Wireless Cardbus Adapter) + + pci:v0000168Cd00000013sv00000308sd00003408* +- ID_MODEL_FROM_DATABASE=G-170S 802.11g Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (G-170S 802.11g Wireless CardBus Adapter) + + pci:v0000168Cd00000013sv00000E11sd000000E5* +- ID_MODEL_FROM_DATABASE=NC6000/NC8000 laptop ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (NC6000/NC8000 laptop) + + pci:v0000168Cd00000013sv000010B7sd00006002* +- ID_MODEL_FROM_DATABASE=3CRWE154A72 802.11abg Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (3CRWE154A72 802.11abg Cardbus Adapter) + + pci:v0000168Cd00000013sv00001113sd0000D301* +- ID_MODEL_FROM_DATABASE=Philips CPWNA100 Wireless CardBus adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (Philips CPWNA100 Wireless CardBus adapter) + + pci:v0000168Cd00000013sv00001113sd0000EE23* +- ID_MODEL_FROM_DATABASE=SMCWPCIT-G 108Mbps Wireless PCI adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (SMCWPCIT-G 108Mbps Wireless PCI adapter) + + pci:v0000168Cd00000013sv00001154sd0000033B* +- ID_MODEL_FROM_DATABASE=Buffalo WLI-CB-AMG54 ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (Buffalo WLI-CB-AMG54) + + pci:v0000168Cd00000013sv00001154sd0000034E* +- ID_MODEL_FROM_DATABASE=Buffalo WLI-CB-AG108HP 802.11abg Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (Buffalo WLI-CB-AG108HP 802.11abg Cardbus Adapter) + + pci:v0000168Cd00000013sv00001186sd00003202* +- ID_MODEL_FROM_DATABASE=DWL-G650 (Rev B3,B5) Wireless cardbus adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (DWL-G650 (Rev B3,B5) Wireless cardbus adapter) + + pci:v0000168Cd00000013sv00001186sd00003203* +- ID_MODEL_FROM_DATABASE=AirPlus DWL-G520 Wireless PCI Adapter (rev. A) ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (AirPlus DWL-G520 Wireless PCI Adapter (rev. A)) + + pci:v0000168Cd00000013sv00001186sd00003A07* +- ID_MODEL_FROM_DATABASE=AirXpert DWL-AG650 Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (AirXpert DWL-AG650 Wireless Cardbus Adapter) + + pci:v0000168Cd00000013sv00001186sd00003A08* +- ID_MODEL_FROM_DATABASE=AirXpert DWL-AG520 Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (AirXpert DWL-AG520 Wireless PCI Adapter) + + pci:v0000168Cd00000013sv00001186sd00003A12* +- ID_MODEL_FROM_DATABASE=D-Link AirPlus DWL-G650 Wireless Cardbus Adapter(rev.C) ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (D-Link AirPlus DWL-G650 Wireless Cardbus Adapter(rev.C)) + + pci:v0000168Cd00000013sv00001186sd00003A13* +- ID_MODEL_FROM_DATABASE=AirPlus DWL-G520 Wireless PCI Adapter (rev. B) ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (AirPlus DWL-G520 Wireless PCI Adapter (rev. B)) + + pci:v0000168Cd00000013sv00001186sd00003A14* +- ID_MODEL_FROM_DATABASE=AirPremier AG DWL-AG530 Wireless PCI Adapter (rev.A) ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (AirPremier AG DWL-AG530 Wireless PCI Adapter (rev.A)) + + pci:v0000168Cd00000013sv00001186sd00003A17* +- ID_MODEL_FROM_DATABASE=D-Link AirPremier DWL-G680 Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (D-Link AirPremier DWL-G680 Wireless Cardbus Adapter) + + pci:v0000168Cd00000013sv00001186sd00003A18* +- ID_MODEL_FROM_DATABASE=D-Link AirPremier DWL-G550 Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (D-Link AirPremier DWL-G550 Wireless PCI Adapter) + + pci:v0000168Cd00000013sv00001186sd00003A1A* +- ID_MODEL_FROM_DATABASE=WNA-2330 802.11bg Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (WNA-2330 802.11bg Wireless CardBus Adapter) + + pci:v0000168Cd00000013sv00001186sd00003A63* +- ID_MODEL_FROM_DATABASE=D-Link AirPremier DWL-AG660 Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (D-Link AirPremier DWL-AG660 Wireless Cardbus Adapter) + + pci:v0000168Cd00000013sv00001186sd00003A93* +- ID_MODEL_FROM_DATABASE=Conceptronic C54I Wireless 801.11g PCI card ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (Conceptronic C54I Wireless 801.11g PCI card) + + pci:v0000168Cd00000013sv00001186sd00003A94* +- ID_MODEL_FROM_DATABASE=Conceptronic C54C 802.11g Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (Conceptronic C54C 802.11g Wireless Cardbus Adapter) + + pci:v0000168Cd00000013sv00001186sd00003AB0* +- ID_MODEL_FROM_DATABASE=Allnet ALL0281 Wireless PCI Card ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (Allnet ALL0281 Wireless PCI Card) + + pci:v0000168Cd00000013sv00001385sd00004600* +- ID_MODEL_FROM_DATABASE=WAG511 802.11a/b/g Dual Band Wireless PC Card ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (WAG511 802.11a/b/g Dual Band Wireless PC Card) + + pci:v0000168Cd00000013sv00001385sd00004610* +- ID_MODEL_FROM_DATABASE=WAG511 802.11a/b/g Dual Band Wireless PC Card ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (WAG511 802.11a/b/g Dual Band Wireless PC Card) + + pci:v0000168Cd00000013sv00001385sd00004900* +- ID_MODEL_FROM_DATABASE=WG311v1 802.11g Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (WG311v1 802.11g Wireless PCI Adapter) + + pci:v0000168Cd00000013sv00001385sd00004A00* +- ID_MODEL_FROM_DATABASE=WAG311 802.11a/g Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (WAG311 802.11a/g Wireless PCI Adapter) + + pci:v0000168Cd00000013sv00001385sd00004B00* +- ID_MODEL_FROM_DATABASE=WG511T 108 Mbps Wireless PC Card (rev.A/B) ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (WG511T 108 Mbps Wireless PC Card (rev.A/B)) + + pci:v0000168Cd00000013sv00001385sd00004D00* +- ID_MODEL_FROM_DATABASE=WG311T 108 Mbps Wireless PCI Adapter (rev.A2) ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (WG311T 108 Mbps Wireless PCI Adapter (rev.A2)) + + pci:v0000168Cd00000013sv00001385sd00004F00* +- ID_MODEL_FROM_DATABASE=WG511U Double 108 Mbps Wireless PC Card ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (WG511U Double 108 Mbps Wireless PC Card) + + pci:v0000168Cd00000013sv00001385sd00005A00* +- ID_MODEL_FROM_DATABASE=WG311T 108 Mbps Wireless PCI Adapter (rev.A3) ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (WG311T 108 Mbps Wireless PCI Adapter (rev.A3)) + + pci:v0000168Cd00000013sv00001385sd00005B00* +- ID_MODEL_FROM_DATABASE=WG511T 108 Mbps Wireless PC Card (rev.C) ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (WG511T 108 Mbps Wireless PC Card (rev.C)) + + pci:v0000168Cd00000013sv00001385sd00005D00* +- ID_MODEL_FROM_DATABASE=WPN511 RangeMax Wireless PC Card ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (WPN511 RangeMax Wireless PC Card) + + pci:v0000168Cd00000013sv00001458sd0000E911* +- ID_MODEL_FROM_DATABASE=GN-WIAG02 ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (GN-WIAG02) + + pci:v0000168Cd00000013sv00001468sd00000403* +- ID_MODEL_FROM_DATABASE=U10H014 802.11g Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (U10H014 802.11g Cardbus Adapter) + + pci:v0000168Cd00000013sv00001468sd00000408* +- ID_MODEL_FROM_DATABASE=ThinkPad 11b/g Wireless LAN Mini PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (ThinkPad 11b/g Wireless LAN Mini PCI Adapter) + + pci:v0000168Cd00000013sv000014B7sd00000A10* +- ID_MODEL_FROM_DATABASE=8480-WD 802.11abg Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (8480-WD 802.11abg Cardbus Adapter) + + pci:v0000168Cd00000013sv000014B7sd00000A60* +- ID_MODEL_FROM_DATABASE=8482-WD ORiNOCO 11a/b/g Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (8482-WD ORiNOCO 11a/b/g Wireless PCI Adapter) + + pci:v0000168Cd00000013sv000014B7sd0000AA30* +- ID_MODEL_FROM_DATABASE=8800-FC 802.11bg Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (8800-FC 802.11bg Cardbus Adapter) + + pci:v0000168Cd00000013sv000014B7sd0000AA40* +- ID_MODEL_FROM_DATABASE=8470-WD 802.11bg Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (8470-WD 802.11bg Cardbus Adapter) + + pci:v0000168Cd00000013sv000014B9sd0000CB21* +- ID_MODEL_FROM_DATABASE=CB21 802.11a/b/g Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (CB21 802.11a/b/g Cardbus Adapter) + + pci:v0000168Cd00000013sv00001668sd00001026* +- ID_MODEL_FROM_DATABASE=IBM HighRate 11 a/b/g Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (IBM HighRate 11 a/b/g Wireless CardBus Adapter) + + pci:v0000168Cd00000013sv0000168Csd00000013* +- ID_MODEL_FROM_DATABASE=AirPlus XtremeG DWL-G650 Wireless PCMCIA Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (AirPlus XtremeG DWL-G650 Wireless PCMCIA Adapter) + + pci:v0000168Cd00000013sv0000168Csd00001025* +- ID_MODEL_FROM_DATABASE=DWL-G650B2 Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (DWL-G650B2 Wireless CardBus Adapter) + + pci:v0000168Cd00000013sv0000168Csd00001027* +- ID_MODEL_FROM_DATABASE=Engenius NL-3054CB ARIES b/g CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (Engenius NL-3054CB ARIES b/g CardBus Adapter) + + pci:v0000168Cd00000013sv0000168Csd00001042* +- ID_MODEL_FROM_DATABASE=Ubiquiti Networks SuperRange a/b/g Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (Ubiquiti Networks SuperRange a/b/g Cardbus Adapter) + + pci:v0000168Cd00000013sv0000168Csd00001051* +- ID_MODEL_FROM_DATABASE=EZ Connect g 802.11g 108Mbps Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (EZ Connect g 802.11g 108Mbps Wireless PCI Adapter) + + pci:v0000168Cd00000013sv0000168Csd00002026* +- ID_MODEL_FROM_DATABASE=Netgate 5354MP ARIES a(108Mb turbo)/b/g MiniPCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (Netgate 5354MP ARIES a(108Mb turbo)/b/g MiniPCI Adapter) + + pci:v0000168Cd00000013sv0000168Csd00002027* +- ID_MODEL_FROM_DATABASE=D-Link AirPlus DWL-G520 Wireless PCI Adapter (rev. A) ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (D-Link AirPlus DWL-G520 Wireless PCI Adapter (rev. A)) + + pci:v0000168Cd00000013sv0000168Csd00002041* +- ID_MODEL_FROM_DATABASE=Engenius 5354MP Plus ARIES2 b/g MiniPCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (Engenius 5354MP Plus ARIES2 b/g MiniPCI Adapter) + + pci:v0000168Cd00000013sv0000168Csd00002042* +- ID_MODEL_FROM_DATABASE=Engenius 5354MP Plus ARIES2 a/b/g MiniPCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (Engenius 5354MP Plus ARIES2 a/b/g MiniPCI Adapter) + + pci:v0000168Cd00000013sv0000168Csd00002051* +- ID_MODEL_FROM_DATABASE=TRENDnet TEW-443PI Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (TRENDnet TEW-443PI Wireless PCI Adapter) + + pci:v0000168Cd00000013sv000016A5sd0000160A* +- ID_MODEL_FROM_DATABASE=BWP712 802.11bg Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (BWP712 802.11bg Wireless CardBus Adapter) + + pci:v0000168Cd00000013sv000016ABsd00007302* +- ID_MODEL_FROM_DATABASE=Trust Speedshare Turbo Pro Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (Trust Speedshare Turbo Pro Wireless PCI Adapter) + + pci:v0000168Cd00000013sv00001737sd00000017* +- ID_MODEL_FROM_DATABASE=WPC55AG ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (WPC55AG) + + pci:v0000168Cd00000013sv00001737sd00000026* +- ID_MODEL_FROM_DATABASE=WMP55AG v1.1 ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (WMP55AG v1.1) + + pci:v0000168Cd00000013sv00001737sd00000035* +- ID_MODEL_FROM_DATABASE=WPC55AG v1.2 802.11abg Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (WPC55AG v1.2 802.11abg Cardbus Adapter) + + pci:v0000168Cd00000013sv00001737sd00000036* +- ID_MODEL_FROM_DATABASE=WMP55AG v1.2 802.11abg PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (WMP55AG v1.2 802.11abg PCI Adapter) + + pci:v0000168Cd00000013sv00001799sd00003000* +- ID_MODEL_FROM_DATABASE=F6D3000 Dual-Band Wireless A+G Desktop Card ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (F6D3000 Dual-Band Wireless A+G Desktop Card) + + pci:v0000168Cd00000013sv00001799sd00003010* +- ID_MODEL_FROM_DATABASE=F6D3010 Dual-Band Wireless A+G Notebook Card ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (F6D3010 Dual-Band Wireless A+G Notebook Card) + + pci:v0000168Cd00000013sv000017CFsd00000042* +- ID_MODEL_FROM_DATABASE=Z-COMAX Highpower XG-622H (400mw) 802.11b/g mini-PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (Z-COMAX Highpower XG-622H (400mw) 802.11b/g mini-PCI Adapter) + + pci:v0000168Cd00000013sv0000185Fsd00001012* +- ID_MODEL_FROM_DATABASE=CM9 Wireless a/b/g MiniPCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (CM9 Wireless a/b/g MiniPCI Adapter) + + pci:v0000168Cd00000013sv0000185Fsd00002012* +- ID_MODEL_FROM_DATABASE=Wistron NeWeb WLAN a+b+g model CB9 ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (Wistron NeWeb WLAN a+b+g model CB9) + + pci:v0000168Cd00000013sv0000A727sd00006801* +- ID_MODEL_FROM_DATABASE=3CRXJK10075 OfficeConnect Wireless 108Mbps 11g XJACK PC Card ++ ID_MODEL_FROM_DATABASE=AR5212/AR5213 Wireless Network Adapter (3CRXJK10075 OfficeConnect Wireless 108Mbps 11g XJACK PC Card) + + pci:v0000168Cd0000001A* + ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] + + pci:v0000168Cd0000001Asv00001052sd0000168C* +- ID_MODEL_FROM_DATABASE=Sweex Wireless Lan PC Card 54Mbps ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (Sweex Wireless Lan PC Card 54Mbps) + + pci:v0000168Cd0000001Asv00001113sd0000EE20* +- ID_MODEL_FROM_DATABASE=SMC Wireless CardBus Adapter 802.11g (SMCWCB-G EU) ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (SMC Wireless CardBus Adapter 802.11g (SMCWCB-G EU)) + + pci:v0000168Cd0000001Asv00001113sd0000EE24* +- ID_MODEL_FROM_DATABASE=SMC Wireless PCI Card WPCI-G ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (SMC Wireless PCI Card WPCI-G) + + pci:v0000168Cd0000001Asv00001186sd00003A15* +- ID_MODEL_FROM_DATABASE=AirPlus G DWL-G630 Wireless Cardbus Adapter (rev.D1) ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (AirPlus G DWL-G630 Wireless Cardbus Adapter (rev.D1)) + + pci:v0000168Cd0000001Asv00001186sd00003A16* +- ID_MODEL_FROM_DATABASE=AirPlus G DWL-G510 Wireless PCI Adapter(rev.B) ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (AirPlus G DWL-G510 Wireless PCI Adapter(rev.B)) + + pci:v0000168Cd0000001Asv00001186sd00003A1C* +- ID_MODEL_FROM_DATABASE=WNA-1330 Notebook Adapter ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (WNA-1330 Notebook Adapter) + + pci:v0000168Cd0000001Asv00001186sd00003A1D* +- ID_MODEL_FROM_DATABASE=WDA-1320 Desktop Adapter ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (WDA-1320 Desktop Adapter) + + pci:v0000168Cd0000001Asv00001186sd00003A23* +- ID_MODEL_FROM_DATABASE=AirPlus G DWL-G520+A Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (AirPlus G DWL-G520+A Wireless PCI Adapter) + + pci:v0000168Cd0000001Asv00001186sd00003A24* +- ID_MODEL_FROM_DATABASE=AirPlus G DWL-G650+A Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (AirPlus G DWL-G650+A Wireless Cardbus Adapter) + + pci:v0000168Cd0000001Asv00001186sd00003B08* +- ID_MODEL_FROM_DATABASE=AirPlus G DWL-G630 Wireless Cardbus Adapter (rev.C1) ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (AirPlus G DWL-G630 Wireless Cardbus Adapter (rev.C1)) + + pci:v0000168Cd0000001Asv0000168Csd0000001A* +- ID_MODEL_FROM_DATABASE=Belkin FD7000 ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (Belkin FD7000) + + pci:v0000168Cd0000001Asv0000168Csd00001052* +- ID_MODEL_FROM_DATABASE=TP-Link TL-WN510G Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (TP-Link TL-WN510G Wireless CardBus Adapter) + + pci:v0000168Cd0000001Asv0000168Csd00002052* +- ID_MODEL_FROM_DATABASE=Compex Wireless 802.11 b/g MiniPCI Adapter, Rev A1 [WLM54G] ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (Compex Wireless 802.11 b/g MiniPCI Adapter, Rev A1 [WLM54G]) + + pci:v0000168Cd0000001Asv000016ECsd00000122* +- ID_MODEL_FROM_DATABASE=Wireless PCI Adapter Model 5418 ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (Wireless PCI Adapter Model 5418) + + pci:v0000168Cd0000001Asv00001737sd00000053* +- ID_MODEL_FROM_DATABASE=WPC54G v7 802.11g Wireless-G Notebook Adapter ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (WPC54G v7 802.11g Wireless-G Notebook Adapter) + + pci:v0000168Cd0000001Asv00001799sd0000700C* +- ID_MODEL_FROM_DATABASE=F5D7000 v5000 Wireless G Desktop Card ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (F5D7000 v5000 Wireless G Desktop Card) + + pci:v0000168Cd0000001Asv00001799sd0000701D* +- ID_MODEL_FROM_DATABASE=F5D7010 v5000 Wireless G Notebook Card ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (F5D7010 v5000 Wireless G Notebook Card) + + pci:v0000168Cd0000001Asv000017F9sd00000008* +- ID_MODEL_FROM_DATABASE=DX-WGNBC 802.11bg Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (DX-WGNBC 802.11bg Wireless CardBus Adapter) + + pci:v0000168Cd0000001Asv000017F9sd00000018* +- ID_MODEL_FROM_DATABASE=DX-WGDTC 802.11bg Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR2413/AR2414 Wireless Network Adapter [AR5005G(S) 802.11bg] (DX-WGDTC 802.11bg Wireless PCI Adapter) + + pci:v0000168Cd0000001B* + ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] + + pci:v0000168Cd0000001Bsv00000777sd00001107* +- ID_MODEL_FROM_DATABASE=UB5 802.11a Wireless Mini PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (UB5 802.11a Wireless Mini PCI Adapter) + + pci:v0000168Cd0000001Bsv00000777sd00003002* +- ID_MODEL_FROM_DATABASE=XR2 802.11g Wireless Mini PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (XR2 802.11g Wireless Mini PCI Adapter) + + pci:v0000168Cd0000001Bsv00000777sd00003005* +- ID_MODEL_FROM_DATABASE=XR5 802.11a Wireless Mini PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (XR5 802.11a Wireless Mini PCI Adapter) + + pci:v0000168Cd0000001Bsv00000777sd00003009* +- ID_MODEL_FROM_DATABASE=XR9 900MHz Wireless Mini PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (XR9 900MHz Wireless Mini PCI Adapter) + + pci:v0000168Cd0000001Bsv00001154sd0000034E* +- ID_MODEL_FROM_DATABASE=WLI-CB-AG108HP 802.11abg Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (WLI-CB-AG108HP 802.11abg Wireless CardBus Adapter) + + pci:v0000168Cd0000001Bsv00001186sd00003A19* +- ID_MODEL_FROM_DATABASE=D-Link AirPremier AG DWL-AG660 Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (D-Link AirPremier AG DWL-AG660 Wireless Cardbus Adapter) + + pci:v0000168Cd0000001Bsv00001186sd00003A22* +- ID_MODEL_FROM_DATABASE=AirPremier AG DWL-AG530 Wireless PCI Adapter (rev.B) ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (AirPremier AG DWL-AG530 Wireless PCI Adapter (rev.B)) + + pci:v0000168Cd0000001Bsv000011ADsd00005001* +- ID_MODEL_FROM_DATABASE=WN5301A 802.11bg Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (WN5301A 802.11bg Wireless PCI Adapter) + + pci:v0000168Cd0000001Bsv00001458sd0000E901* +- ID_MODEL_FROM_DATABASE=GN-WI01HT Wireless a/b/g MiniPCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (GN-WI01HT Wireless a/b/g MiniPCI Adapter) + + pci:v0000168Cd0000001Bsv0000168Csd0000001B* +- ID_MODEL_FROM_DATABASE=Wireless LAN PCI LiteOn ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (Wireless LAN PCI LiteOn) + + pci:v0000168Cd0000001Bsv0000168Csd00001062* +- ID_MODEL_FROM_DATABASE=IPN-W100CB 802.11abg Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (IPN-W100CB 802.11abg Wireless CardBus Adapter) + + pci:v0000168Cd0000001Bsv0000168Csd00002062* +- ID_MODEL_FROM_DATABASE=EnGenius EMP-8602 (400mw) or Compex WLM54AG (SuperAG) ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (EnGenius EMP-8602 (400mw) or Compex WLM54AG (SuperAG)) + + pci:v0000168Cd0000001Bsv0000168Csd00002063* +- ID_MODEL_FROM_DATABASE=EnGenius EMP-8602 (400mw) or Compex WLM54AG ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (EnGenius EMP-8602 (400mw) or Compex WLM54AG) + + pci:v0000168Cd0000001Bsv000017F9sd0000000B* +- ID_MODEL_FROM_DATABASE=WL-711A 802.11abg Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (WL-711A 802.11abg Wireless CardBus Adapter) + + pci:v0000168Cd0000001Bsv000017F9sd0000000C* +- ID_MODEL_FROM_DATABASE=WPIA-112AG 802.11abg Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (WPIA-112AG 802.11abg Wireless PCI Adapter) + + pci:v0000168Cd0000001Bsv000017F9sd0000000D* +- ID_MODEL_FROM_DATABASE=PC-686X 802.11abg Wireless Mini PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (PC-686X 802.11abg Wireless Mini PCI Adapter) + + pci:v0000168Cd0000001Bsv0000185Fsd00001600* +- ID_MODEL_FROM_DATABASE=DCMA-82 High Power WLAN 802.11a/b/g mini-PCI Module (Super A/G, eXtended Range, 400mW) ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (DCMA-82 High Power WLAN 802.11a/b/g mini-PCI Module (Super A/G, eXtended Range, 400mW)) + + pci:v0000168Cd0000001Bsv00001948sd00003ABA* +- ID_MODEL_FROM_DATABASE=RBTBJ-AW 802.11abg Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (RBTBJ-AW 802.11abg Wireless Cardbus Adapter) + + pci:v0000168Cd0000001Bsv0000A727sd00006804* +- ID_MODEL_FROM_DATABASE=Wireless 11a/b/g PC Card with XJACK(r) Antenna ++ ID_MODEL_FROM_DATABASE=AR5413/AR5414 Wireless Network Adapter [AR5006X(S) 802.11abg] (Wireless 11a/b/g PC Card with XJACK(r) Antenna) + + pci:v0000168Cd0000001C* + ID_MODEL_FROM_DATABASE=AR242x / AR542x Wireless Network Adapter (PCI-Express) + + pci:v0000168Cd0000001Csv00000777sd00003006* +- ID_MODEL_FROM_DATABASE=SRX 802.11abg Wireless ExpressCard Adapter ++ ID_MODEL_FROM_DATABASE=AR242x / AR542x Wireless Network Adapter (PCI-Express) (SRX 802.11abg Wireless ExpressCard Adapter) + + pci:v0000168Cd0000001Csv0000103Csd0000137A* +- ID_MODEL_FROM_DATABASE=AR5BXB63 (Foxconn) 802.11bg Mini PCIe NIC ++ ID_MODEL_FROM_DATABASE=AR242x / AR542x Wireless Network Adapter (PCI-Express) (AR5BXB63 (Foxconn) 802.11bg Mini PCIe NIC) + + pci:v0000168Cd0000001Csv0000106Bsd00000086* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=AR242x / AR542x Wireless Network Adapter (PCI-Express) (AirPort Extreme) + + pci:v0000168Cd0000001Csv0000144Fsd00007106* +- ID_MODEL_FROM_DATABASE=WLL3140 (Toshiba PA3501U-1MPC) 802.11bg Wireless Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=AR242x / AR542x Wireless Network Adapter (PCI-Express) (WLL3140 (Toshiba PA3501U-1MPC) 802.11bg Wireless Mini PCIe Card) + + pci:v0000168Cd0000001Csv0000144Fsd00007128* +- ID_MODEL_FROM_DATABASE=WLL3141 (Toshiba PA3613U-1MPC) 802.11bg Wireless Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=AR242x / AR542x Wireless Network Adapter (PCI-Express) (WLL3141 (Toshiba PA3613U-1MPC) 802.11bg Wireless Mini PCIe Card) + + pci:v0000168Cd0000001Csv00001468sd00000428* +- ID_MODEL_FROM_DATABASE=AR5BXB63 802.11bg NIC ++ ID_MODEL_FROM_DATABASE=AR242x / AR542x Wireless Network Adapter (PCI-Express) (AR5BXB63 802.11bg NIC) + + pci:v0000168Cd0000001Csv00001468sd0000042A* +- ID_MODEL_FROM_DATABASE=AR5007EG 802.11bg NIC ++ ID_MODEL_FROM_DATABASE=AR242x / AR542x Wireless Network Adapter (PCI-Express) (AR5007EG 802.11bg NIC) + + pci:v0000168Cd0000001Csv0000147Bsd00001033* +- ID_MODEL_FROM_DATABASE=AirPace Wi-Fi ++ ID_MODEL_FROM_DATABASE=AR242x / AR542x Wireless Network Adapter (PCI-Express) (AirPace Wi-Fi) + + pci:v0000168Cd0000001Csv0000168Csd0000001C* +- ID_MODEL_FROM_DATABASE=AR242x 802.11abg NIC (PCI Express) ++ ID_MODEL_FROM_DATABASE=AR242x / AR542x Wireless Network Adapter (PCI-Express) (AR242x 802.11abg NIC (PCI Express)) + + pci:v0000168Cd0000001Csv0000168Csd00003061* +- ID_MODEL_FROM_DATABASE=AR5006EGS 802.11bg NIC (2.4GHz, PCI Express) ++ ID_MODEL_FROM_DATABASE=AR242x / AR542x Wireless Network Adapter (PCI-Express) (AR5006EGS 802.11bg NIC (2.4GHz, PCI Express)) + + pci:v0000168Cd0000001Csv0000168Csd00003062* +- ID_MODEL_FROM_DATABASE=AR5006EXS 802.11abg NIC (2.4/5.0GHz, PCI Express) ++ ID_MODEL_FROM_DATABASE=AR242x / AR542x Wireless Network Adapter (PCI-Express) (AR5006EXS 802.11abg NIC (2.4/5.0GHz, PCI Express)) + + pci:v0000168Cd0000001Csv0000168Csd00003063* +- ID_MODEL_FROM_DATABASE=AR5006EX 802.11abg NIC (2.4/5.0GHz, PCI Express) ++ ID_MODEL_FROM_DATABASE=AR242x / AR542x Wireless Network Adapter (PCI-Express) (AR5006EX 802.11abg NIC (2.4/5.0GHz, PCI Express)) + + pci:v0000168Cd0000001Csv0000168Csd00003065* +- ID_MODEL_FROM_DATABASE=AR5006EG 802.11bg NIC (2.4GHz, PCI Express) ++ ID_MODEL_FROM_DATABASE=AR242x / AR542x Wireless Network Adapter (PCI-Express) (AR5006EG 802.11bg NIC (2.4GHz, PCI Express)) + + pci:v0000168Cd0000001Csv0000168Csd00003067* +- ID_MODEL_FROM_DATABASE=AR242x 802.11abg Wireless PCI Express Adapter (rev 01) ++ ID_MODEL_FROM_DATABASE=AR242x / AR542x Wireless Network Adapter (PCI-Express) (AR242x 802.11abg Wireless PCI Express Adapter (rev 01)) + + pci:v0000168Cd0000001Csv00001A3Bsd00001026* +- ID_MODEL_FROM_DATABASE=AW-GE780 802.11bg Wireless Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=AR242x / AR542x Wireless Network Adapter (PCI-Express) (AW-GE780 802.11bg Wireless Mini PCIe Card) + + pci:v0000168Cd0000001D* + ID_MODEL_FROM_DATABASE=AR2417 Wireless Network Adapter [AR5007G 802.11bg] + + pci:v0000168Cd0000001Dsv00001799sd0000720B* +- ID_MODEL_FROM_DATABASE=F5D7000 v8000 Wireless G Desktop Card ++ ID_MODEL_FROM_DATABASE=AR2417 Wireless Network Adapter [AR5007G 802.11bg] (F5D7000 v8000 Wireless G Desktop Card) + + pci:v0000168Cd0000001Dsv00001799sd0000721B* +- ID_MODEL_FROM_DATABASE=F5D7010 v8000 Wireless G Notebook Card ++ ID_MODEL_FROM_DATABASE=AR2417 Wireless Network Adapter [AR5007G 802.11bg] (F5D7010 v8000 Wireless G Notebook Card) + + pci:v0000168Cd00000020* + ID_MODEL_FROM_DATABASE=AR5513 802.11abg Wireless NIC + + pci:v0000168Cd00000020sv00000308sd00003407* +- ID_MODEL_FROM_DATABASE=M-102 802.11g Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5513 802.11abg Wireless NIC (M-102 802.11g Wireless Cardbus Adapter) + + pci:v0000168Cd00000020sv00001186sd00003A67* +- ID_MODEL_FROM_DATABASE=DWL-G650M Super G MIMO Wireless Notebook Adapter ++ ID_MODEL_FROM_DATABASE=AR5513 802.11abg Wireless NIC (DWL-G650M Super G MIMO Wireless Notebook Adapter) + + pci:v0000168Cd00000020sv00001186sd00003A68* +- ID_MODEL_FROM_DATABASE=DWL-G520M Wireless 108G MIMO Desktop Adapter ++ ID_MODEL_FROM_DATABASE=AR5513 802.11abg Wireless NIC (DWL-G520M Wireless 108G MIMO Desktop Adapter) + + pci:v0000168Cd00000020sv0000187Esd0000340E* +- ID_MODEL_FROM_DATABASE=M-302 802.11g Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5513 802.11abg Wireless NIC (M-302 802.11g Wireless PCI Adapter) + + pci:v0000168Cd00000020sv00001976sd00002003* +- ID_MODEL_FROM_DATABASE=TEW-601PC 802.11g Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR5513 802.11abg Wireless NIC (TEW-601PC 802.11g Wireless CardBus Adapter) + + pci:v0000168Cd00000023* + ID_MODEL_FROM_DATABASE=AR5416 Wireless Network Adapter [AR5008 802.11(a)bgn] + + pci:v0000168Cd00000023sv00000308sd0000340B* +- ID_MODEL_FROM_DATABASE=NWD-170N 802.11bgn Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR5416 Wireless Network Adapter [AR5008 802.11(a)bgn] (NWD-170N 802.11bgn Wireless CardBus Adapter) + + pci:v0000168Cd00000023sv00001154sd00000365* +- ID_MODEL_FROM_DATABASE=Buffalo WLP-CB-AG300 802.11abgn Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=AR5416 Wireless Network Adapter [AR5008 802.11(a)bgn] (Buffalo WLP-CB-AG300 802.11abgn Cardbus Adapter) + + pci:v0000168Cd00000023sv00001154sd00000367* +- ID_MODEL_FROM_DATABASE=WLI-CB-AG301N 802.11abgn Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR5416 Wireless Network Adapter [AR5008 802.11(a)bgn] (WLI-CB-AG301N 802.11abgn Wireless CardBus Adapter) + + pci:v0000168Cd00000023sv00001186sd00003A6A* +- ID_MODEL_FROM_DATABASE=DWA-642 802.11n RangeBooster N CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR5416 Wireless Network Adapter [AR5008 802.11(a)bgn] (DWA-642 802.11n RangeBooster N CardBus Adapter) + + pci:v0000168Cd00000023sv00001186sd00003A6B* +- ID_MODEL_FROM_DATABASE=DWA-547 802.11n RangeBooster N 650 DeskTop Adapter ++ ID_MODEL_FROM_DATABASE=AR5416 Wireless Network Adapter [AR5008 802.11(a)bgn] (DWA-547 802.11n RangeBooster N 650 DeskTop Adapter) + + pci:v0000168Cd00000023sv00001186sd00003A6D* +- ID_MODEL_FROM_DATABASE=DWA-552 802.11n Xtreme N Desktop Adapter (rev A1) ++ ID_MODEL_FROM_DATABASE=AR5416 Wireless Network Adapter [AR5008 802.11(a)bgn] (DWA-552 802.11n Xtreme N Desktop Adapter (rev A1)) + + pci:v0000168Cd00000023sv00001186sd00003A76* +- ID_MODEL_FROM_DATABASE=DWA-645 802.11n RangeBooster N 650 Notebook Adapter (rev A1) ++ ID_MODEL_FROM_DATABASE=AR5416 Wireless Network Adapter [AR5008 802.11(a)bgn] (DWA-645 802.11n RangeBooster N 650 Notebook Adapter (rev A1)) + + pci:v0000168Cd00000023sv00001737sd00000059* +- ID_MODEL_FROM_DATABASE=WPC300N v2 Wireless-N Notebook Adapter ++ ID_MODEL_FROM_DATABASE=AR5416 Wireless Network Adapter [AR5008 802.11(a)bgn] (WPC300N v2 Wireless-N Notebook Adapter) + + pci:v0000168Cd00000023sv00001737sd00000069* +- ID_MODEL_FROM_DATABASE=WPC100 v1 802.11n RangePlus Wireless Notebook Adapter ++ ID_MODEL_FROM_DATABASE=AR5416 Wireless Network Adapter [AR5008 802.11(a)bgn] (WPC100 v1 802.11n RangePlus Wireless Notebook Adapter) + + pci:v0000168Cd00000023sv00001737sd00000072* +- ID_MODEL_FROM_DATABASE=WMP110 v1 802.11n RangePlus Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5416 Wireless Network Adapter [AR5008 802.11(a)bgn] (WMP110 v1 802.11n RangePlus Wireless PCI Adapter) + + pci:v0000168Cd00000023sv00001799sd00008011* +- ID_MODEL_FROM_DATABASE=F5D8011 v1 802.11n N1 Wireless Notebook Card ++ ID_MODEL_FROM_DATABASE=AR5416 Wireless Network Adapter [AR5008 802.11(a)bgn] (F5D8011 v1 802.11n N1 Wireless Notebook Card) + + pci:v0000168Cd00000023sv0000187Esd00003411* +- ID_MODEL_FROM_DATABASE=NWD-370N 802.11n Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR5416 Wireless Network Adapter [AR5008 802.11(a)bgn] (NWD-370N 802.11n Wireless PCI Adapter) + + pci:v0000168Cd00000023sv00001976sd00002008* +- ID_MODEL_FROM_DATABASE=TEW-621PC 802.11bgn Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AR5416 Wireless Network Adapter [AR5008 802.11(a)bgn] (TEW-621PC 802.11bgn Wireless CardBus Adapter) + + pci:v0000168Cd00000024* + ID_MODEL_FROM_DATABASE=AR5418 Wireless Network Adapter [AR5008E 802.11(a)bgn] (PCI-Express) + + pci:v0000168Cd00000024sv0000106Bsd00000087* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=AR5418 Wireless Network Adapter [AR5008E 802.11(a)bgn] (PCI-Express) (AirPort Extreme) + + pci:v0000168Cd00000024sv00001186sd00003A70* +- ID_MODEL_FROM_DATABASE=DWA-556 Xtreme N PCI Express Desktop Adapter ++ ID_MODEL_FROM_DATABASE=AR5418 Wireless Network Adapter [AR5008E 802.11(a)bgn] (PCI-Express) (DWA-556 Xtreme N PCI Express Desktop Adapter) + + pci:v0000168Cd00000027* + ID_MODEL_FROM_DATABASE=AR9160 Wireless Network Adapter [AR9001 802.11(a)bgn] + + pci:v0000168Cd00000027sv00000777sd00004082* +- ID_MODEL_FROM_DATABASE=SR71-A 802.11abgn Wireless Mini PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR9160 Wireless Network Adapter [AR9001 802.11(a)bgn] (SR71-A 802.11abgn Wireless Mini PCI Adapter) + + pci:v0000168Cd00000029* + ID_MODEL_FROM_DATABASE=AR922X Wireless Network Adapter + + pci:v0000168Cd00000029sv00000777sd00004005* +- ID_MODEL_FROM_DATABASE=SR71-15 802.11an Mini PCI Adapter ++ ID_MODEL_FROM_DATABASE=AR922X Wireless Network Adapter (SR71-15 802.11an Mini PCI Adapter) + + pci:v0000168Cd00000029sv00001186sd00003A7A* +- ID_MODEL_FROM_DATABASE=DWA-552 802.11n Xtreme N Desktop Adapter (rev A2) ++ ID_MODEL_FROM_DATABASE=AR922X Wireless Network Adapter (DWA-552 802.11n Xtreme N Desktop Adapter (rev A2)) + + pci:v0000168Cd00000029sv00001186sd00003A7D* +- ID_MODEL_FROM_DATABASE=DWA-552 802.11n Xtreme N Desktop Adapter (rev A3) ++ ID_MODEL_FROM_DATABASE=AR922X Wireless Network Adapter (DWA-552 802.11n Xtreme N Desktop Adapter (rev A3)) + + pci:v0000168Cd0000002A* + ID_MODEL_FROM_DATABASE=AR928X Wireless Network Adapter (PCI-Express) + + pci:v0000168Cd0000002Asv00000777sd00004F05* +- ID_MODEL_FROM_DATABASE=SR71-X 802.11abgn Wireless ExpressCard Adapter [AR9280] ++ ID_MODEL_FROM_DATABASE=AR928X Wireless Network Adapter (PCI-Express) (SR71-X 802.11abgn Wireless ExpressCard Adapter [AR9280]) + + pci:v0000168Cd0000002Asv0000103Csd00003041* +- ID_MODEL_FROM_DATABASE=AR5BHB92-H 802.11abgn Wireless Half-size Mini PCIe Card [AR9280] ++ ID_MODEL_FROM_DATABASE=AR928X Wireless Network Adapter (PCI-Express) (AR5BHB92-H 802.11abgn Wireless Half-size Mini PCIe Card [AR9280]) + + pci:v0000168Cd0000002Asv0000105Bsd0000E006* +- ID_MODEL_FROM_DATABASE=T77H053.00 802.11bgn Wireless Mini PCIe Card [AR9281] ++ ID_MODEL_FROM_DATABASE=AR928X Wireless Network Adapter (PCI-Express) (T77H053.00 802.11bgn Wireless Mini PCIe Card [AR9281]) + + pci:v0000168Cd0000002Asv0000105Bsd0000E01F* +- ID_MODEL_FROM_DATABASE=T77H047.31 802.11bgn Wireless Half-size Mini PCIe Card [AR9283] ++ ID_MODEL_FROM_DATABASE=AR928X Wireless Network Adapter (PCI-Express) (T77H047.31 802.11bgn Wireless Half-size Mini PCIe Card [AR9283]) + + pci:v0000168Cd0000002Asv0000106Bsd0000008F* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=AR928X Wireless Network Adapter (PCI-Express) (AirPort Extreme) + + pci:v0000168Cd0000002Asv000011ADsd00006600* +- ID_MODEL_FROM_DATABASE=WN6600A 802.11bgn Wireless Mini PCIe Card [AR9281] ++ ID_MODEL_FROM_DATABASE=AR928X Wireless Network Adapter (PCI-Express) (WN6600A 802.11bgn Wireless Mini PCIe Card [AR9281]) + + pci:v0000168Cd0000002Asv0000144Fsd00007141* +- ID_MODEL_FROM_DATABASE=WLL6080 802.11bgn Wireless Mini PCIe Card [AR9281] ++ ID_MODEL_FROM_DATABASE=AR928X Wireless Network Adapter (PCI-Express) (WLL6080 802.11bgn Wireless Mini PCIe Card [AR9281]) + + pci:v0000168Cd0000002Asv0000168Csd00000203* +- ID_MODEL_FROM_DATABASE=DW1525 802.11abgn WLAN PCIe Card [AR9280] ++ ID_MODEL_FROM_DATABASE=AR928X Wireless Network Adapter (PCI-Express) (DW1525 802.11abgn WLAN PCIe Card [AR9280]) + + pci:v0000168Cd0000002Asv00001A32sd00000303* +- ID_MODEL_FROM_DATABASE=EM303 802.11bgn Wireless Mini PCIe Card [AR9281] ++ ID_MODEL_FROM_DATABASE=AR928X Wireless Network Adapter (PCI-Express) (EM303 802.11bgn Wireless Mini PCIe Card [AR9281]) + + pci:v0000168Cd0000002Asv00001A32sd00000306* +- ID_MODEL_FROM_DATABASE=EM306 802.11bgn Wireless Half-size Mini PCIe Card [AR9283] ++ ID_MODEL_FROM_DATABASE=AR928X Wireless Network Adapter (PCI-Express) (EM306 802.11bgn Wireless Half-size Mini PCIe Card [AR9283]) + + pci:v0000168Cd0000002Asv00001A3Bsd00001067* +- ID_MODEL_FROM_DATABASE=AW-NE771 802.11bgn Wireless Mini PCIe Card [AR9281] ++ ID_MODEL_FROM_DATABASE=AR928X Wireless Network Adapter (PCI-Express) (AW-NE771 802.11bgn Wireless Mini PCIe Card [AR9281]) + + pci:v0000168Cd0000002Asv00001A3Bsd00001081* +- ID_MODEL_FROM_DATABASE=AW-NE773 802.11abgn Wireless Half-size Mini PCIe Card [AR9280] ++ ID_MODEL_FROM_DATABASE=AR928X Wireless Network Adapter (PCI-Express) (AW-NE773 802.11abgn Wireless Half-size Mini PCIe Card [AR9280]) + + pci:v0000168Cd0000002B* + ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) + + pci:v0000168Cd0000002Bsv00001028sd00000204* +- ID_MODEL_FROM_DATABASE=Wireless 1502 802.11bgn Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (Wireless 1502 802.11bgn Half-size Mini PCIe Card) + + pci:v0000168Cd0000002Bsv00001028sd00000205* +- ID_MODEL_FROM_DATABASE=Wireless 1702 802.11bgn Half-size Mini PCIe Card [AR9002WB-1NGCD] ++ ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (Wireless 1702 802.11bgn Half-size Mini PCIe Card [AR9002WB-1NGCD]) + + pci:v0000168Cd0000002Bsv0000103Csd0000303F* +- ID_MODEL_FROM_DATABASE=U98Z062.10 802.11bgn Wireless Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (U98Z062.10 802.11bgn Wireless Half-size Mini PCIe Card) + + pci:v0000168Cd0000002Bsv0000103Csd00003040* +- ID_MODEL_FROM_DATABASE=U98Z062.12 802.11bgn Wireless Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (U98Z062.12 802.11bgn Wireless Half-size Mini PCIe Card) + + pci:v0000168Cd0000002Bsv0000105Bsd0000E017* +- ID_MODEL_FROM_DATABASE=T77H126.00 802.11bgn Wireless Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (T77H126.00 802.11bgn Wireless Half-size Mini PCIe Card) + + pci:v0000168Cd0000002Bsv0000105Bsd0000E023* +- ID_MODEL_FROM_DATABASE=T77H121.04 802.11bgn Wireless Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (T77H121.04 802.11bgn Wireless Half-size Mini PCIe Card) + + pci:v0000168Cd0000002Bsv00001113sd0000E811* +- ID_MODEL_FROM_DATABASE=WN7811A (Toshiba PA3722U-1MPC) 802.11bgn Wireless Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (WN7811A (Toshiba PA3722U-1MPC) 802.11bgn Wireless Half-size Mini PCIe Card) + + pci:v0000168Cd0000002Bsv0000185Fsd000030AF* +- ID_MODEL_FROM_DATABASE=DNXA-95 802.11bgn Wireless Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (DNXA-95 802.11bgn Wireless Half-size Mini PCIe Card) + + pci:v0000168Cd0000002Bsv00001931sd00000023* +- ID_MODEL_FROM_DATABASE=Option GTM67x PCIe WiFi Adapter ++ ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (Option GTM67x PCIe WiFi Adapter) + + pci:v0000168Cd0000002Bsv00001A3Bsd00001089* +- ID_MODEL_FROM_DATABASE=AW-NE785 / AW-NE785H 802.11bgn Wireless Full or Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (AW-NE785 / AW-NE785H 802.11bgn Wireless Full or Half-size Mini PCIe Card) + + pci:v0000168Cd0000002Bsv00001A3Bsd00002C37* +- ID_MODEL_FROM_DATABASE=AW-NB037H 802.11bgn Wireless Half-size Mini PCIe Card [AR9002WB-1NGCD] ++ ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (AW-NB037H 802.11bgn Wireless Half-size Mini PCIe Card [AR9002WB-1NGCD]) + + pci:v0000168Cd0000002Bsv00001B9Asd00000401* +- ID_MODEL_FROM_DATABASE=XW204E 802.11bgn Wireless Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (XW204E 802.11bgn Wireless Half-size Mini PCIe Card) + + pci:v0000168Cd0000002Bsv00001B9Asd00000C03* +- ID_MODEL_FROM_DATABASE=WB214E 802.11bgn Wireless Half-size Mini PCIe Card [AR9002WB-1NGCD] ++ ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (WB214E 802.11bgn Wireless Half-size Mini PCIe Card [AR9002WB-1NGCD]) + + pci:v0000168Cd0000002C* + ID_MODEL_FROM_DATABASE=AR2427 802.11bg Wireless Network Adapter (PCI-Express) +@@ -49059,25 +49059,25 @@ pci:v0000168Cd00000030* + ID_MODEL_FROM_DATABASE=AR93xx Wireless Network Adapter + + pci:v0000168Cd00000030sv0000103Csd00001627* +- ID_MODEL_FROM_DATABASE=AR9380/HB112 802.11abgn 3×3 Wi-Fi Adapter ++ ID_MODEL_FROM_DATABASE=AR93xx Wireless Network Adapter (AR9380/HB112 802.11abgn 3×3 Wi-Fi Adapter) + + pci:v0000168Cd00000030sv0000106Bsd0000009A* +- ID_MODEL_FROM_DATABASE=AirPort Extreme ++ ID_MODEL_FROM_DATABASE=AR93xx Wireless Network Adapter (AirPort Extreme) + + pci:v0000168Cd00000030sv00001186sd00003A7E* +- ID_MODEL_FROM_DATABASE=DWA-566 Wireless N 300 Dual Band PCIe Desktop Adapter ++ ID_MODEL_FROM_DATABASE=AR93xx Wireless Network Adapter (DWA-566 Wireless N 300 Dual Band PCIe Desktop Adapter) + + pci:v0000168Cd00000030sv00001A56sd00002000* +- ID_MODEL_FROM_DATABASE=Killer Wireless-N 1102 Half-size Mini PCIe Card [AR9382] ++ ID_MODEL_FROM_DATABASE=AR93xx Wireless Network Adapter (Killer Wireless-N 1102 Half-size Mini PCIe Card [AR9382]) + + pci:v0000168Cd00000030sv00001A56sd00002001* +- ID_MODEL_FROM_DATABASE=Killer Wireless-N 1103 Half-size Mini PCIe Card [AR9380] ++ ID_MODEL_FROM_DATABASE=AR93xx Wireless Network Adapter (Killer Wireless-N 1103 Half-size Mini PCIe Card [AR9380]) + + pci:v0000168Cd00000032* + ID_MODEL_FROM_DATABASE=AR9485 Wireless Network Adapter + + pci:v0000168Cd00000032sv0000103Csd00001838* +- ID_MODEL_FROM_DATABASE=AR9485/HB125 802.11bgn 1×1 Wi-Fi Adapter ++ ID_MODEL_FROM_DATABASE=AR9485 Wireless Network Adapter (AR9485/HB125 802.11bgn 1×1 Wi-Fi Adapter) + + pci:v0000168Cd00000033* + ID_MODEL_FROM_DATABASE=AR9580 Wireless Network Adapter +@@ -49086,7 +49086,7 @@ pci:v0000168Cd00000034* + ID_MODEL_FROM_DATABASE=AR9462 Wireless Network Adapter + + pci:v0000168Cd00000034sv00001A56sd00002003* +- ID_MODEL_FROM_DATABASE=Killer Wireless-N 1202 Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=AR9462 Wireless Network Adapter (Killer Wireless-N 1202 Half-size Mini PCIe Card) + + pci:v0000168Cd00000036* + ID_MODEL_FROM_DATABASE=QCA9565 / AR9565 Wireless Network Adapter +@@ -49095,7 +49095,7 @@ pci:v0000168Cd00000037* + ID_MODEL_FROM_DATABASE=AR9485 Wireless Network Adapter + + pci:v0000168Cd00000037sv00001A3Bsd00002100* +- ID_MODEL_FROM_DATABASE=AW-NB100H 802.11n Wireless Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=AR9485 Wireless Network Adapter (AW-NB100H 802.11n Wireless Mini PCIe Card) + + pci:v0000168Cd0000003C* + ID_MODEL_FROM_DATABASE=QCA988x 802.11ac Wireless Network Adapter +@@ -49107,7 +49107,7 @@ pci:v0000168Cd00001014* + ID_MODEL_FROM_DATABASE=AR5212 802.11abg NIC + + pci:v0000168Cd00001014sv00001014sd0000058A* +- ID_MODEL_FROM_DATABASE=ThinkPad 11a/b/g Wireless LAN Mini Express Adapter (AR5BXB6) ++ ID_MODEL_FROM_DATABASE=AR5212 802.11abg NIC (ThinkPad 11a/b/g Wireless LAN Mini Express Adapter (AR5BXB6)) + + pci:v0000168Cd00009013* + ID_MODEL_FROM_DATABASE=AR5002X Wireless Network Adapter +@@ -49125,7 +49125,7 @@ pci:v0000168Cd0000FF1D* + ID_MODEL_FROM_DATABASE=AR922x Wireless Network Adapter + + pci:v0000168Cd0000FF1Dsv0000168Csd0000EE1C* +- ID_MODEL_FROM_DATABASE=AR9220-AC1A [AVM Fritz!Box FON WLAN 7270 v3] ++ ID_MODEL_FROM_DATABASE=AR922x Wireless Network Adapter (AR9220-AC1A [AVM Fritz!Box FON WLAN 7270 v3]) + + pci:v00001695* + ID_VENDOR_FROM_DATABASE=EPoX Computer Co., Ltd. +@@ -49524,16 +49524,16 @@ pci:v00001737d00001032* + ID_MODEL_FROM_DATABASE=Gigabit Network Adapter + + pci:v00001737d00001032sv00001737sd00000015* +- ID_MODEL_FROM_DATABASE=EG1032 v2 Instant Gigabit Network Adapter ++ ID_MODEL_FROM_DATABASE=Gigabit Network Adapter (EG1032 v2 Instant Gigabit Network Adapter) + + pci:v00001737d00001032sv00001737sd00000024* +- ID_MODEL_FROM_DATABASE=EG1032 v3 Instant Gigabit Network Adapter ++ ID_MODEL_FROM_DATABASE=Gigabit Network Adapter (EG1032 v3 Instant Gigabit Network Adapter) + + pci:v00001737d00001064* + ID_MODEL_FROM_DATABASE=Gigabit Network Adapter + + pci:v00001737d00001064sv00001737sd00000016* +- ID_MODEL_FROM_DATABASE=EG1064 v2 Instant Gigabit Network Adapter ++ ID_MODEL_FROM_DATABASE=Gigabit Network Adapter (EG1064 v2 Instant Gigabit Network Adapter) + + pci:v00001737d0000AB08* + ID_MODEL_FROM_DATABASE=21x4x DEC-Tulip compatible 10/100 Ethernet +@@ -49554,7 +49554,7 @@ pci:v0000173Bd000003EA* + ID_MODEL_FROM_DATABASE=AC9100 Gigabit Ethernet + + pci:v0000173Bd000003EAsv0000173Bsd00000001* +- ID_MODEL_FROM_DATABASE=AC1002 ++ ID_MODEL_FROM_DATABASE=AC9100 Gigabit Ethernet (AC1002) + + pci:v0000173Bd000003EB* + ID_MODEL_FROM_DATABASE=AC1003 Gigabit Ethernet +@@ -49851,19 +49851,19 @@ pci:v000017CBd00000001* + ID_MODEL_FROM_DATABASE=AGN100 802.11 a/b/g True MIMO Wireless Card + + pci:v000017CBd00000001sv00001385sd00005C00* +- ID_MODEL_FROM_DATABASE=WGM511 Pre-N 802.11g Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AGN100 802.11 a/b/g True MIMO Wireless Card (WGM511 Pre-N 802.11g Wireless CardBus Adapter) + + pci:v000017CBd00000001sv00001737sd00000045* +- ID_MODEL_FROM_DATABASE=WMP54GX v1 802.11g Wireless-G PCI Adapter with SRX ++ ID_MODEL_FROM_DATABASE=AGN100 802.11 a/b/g True MIMO Wireless Card (WMP54GX v1 802.11g Wireless-G PCI Adapter with SRX) + + pci:v000017CBd00000002* + ID_MODEL_FROM_DATABASE=AGN300 802.11 a/b/g True MIMO Wireless Card + + pci:v000017CBd00000002sv00001385sd00006D00* +- ID_MODEL_FROM_DATABASE=WPNT511 RangeMax 240 Mbps Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=AGN300 802.11 a/b/g True MIMO Wireless Card (WPNT511 RangeMax 240 Mbps Wireless CardBus Adapter) + + pci:v000017CBd00000002sv00001737sd00000054* +- ID_MODEL_FROM_DATABASE=WPC54GX4 v1 802.11g Wireless-G Notebook Adapter with SRX400 ++ ID_MODEL_FROM_DATABASE=AGN300 802.11 a/b/g True MIMO Wireless Card (WPC54GX4 v1 802.11g Wireless-G Notebook Adapter with SRX400) + + pci:v000017CC* + ID_VENDOR_FROM_DATABASE=NetChip Technology, Inc +@@ -49914,7 +49914,7 @@ pci:v000017D3d00001280* + ID_MODEL_FROM_DATABASE=ARC-1280/1280ML 24-Port PCI-Express to SATA II RAID Controller + + pci:v000017D3d00001280sv000017D3sd00001221* +- ID_MODEL_FROM_DATABASE=ARC-1221 8-Port PCI-Express to SATA RAID Controller ++ ID_MODEL_FROM_DATABASE=ARC-1280/1280ML 24-Port PCI-Express to SATA II RAID Controller (ARC-1221 8-Port PCI-Express to SATA RAID Controller) + + pci:v000017D3d00001300* + ID_MODEL_FROM_DATABASE=ARC-1300ix-16 16-Port PCI-Express to SAS Non-RAID Host Adapter +@@ -49923,7 +49923,7 @@ pci:v000017D3d00001680* + ID_MODEL_FROM_DATABASE=ARC-1680 8 port PCIe/PCI-X to SAS/SATA II RAID Controller + + pci:v000017D3d00001680sv000017D3sd00001212* +- ID_MODEL_FROM_DATABASE=ARC-1212 4-Port PCIe to SAS/SATA II RAID Controller ++ ID_MODEL_FROM_DATABASE=ARC-1680 8 port PCIe/PCI-X to SAS/SATA II RAID Controller (ARC-1212 4-Port PCIe to SAS/SATA II RAID Controller) + + pci:v000017D3d00001880* + ID_MODEL_FROM_DATABASE=ARC-1880 8/12 port PCIe/PCI-X to SAS/SATA II RAID Controller +@@ -49941,82 +49941,82 @@ pci:v000017D5d00005831* + ID_MODEL_FROM_DATABASE=Xframe 10-Gigabit Ethernet PCI-X + + pci:v000017D5d00005831sv0000103Csd000012D5* +- ID_MODEL_FROM_DATABASE=PCI-X 133MHz 10GbE SR Fiber ++ ID_MODEL_FROM_DATABASE=Xframe 10-Gigabit Ethernet PCI-X (PCI-X 133MHz 10GbE SR Fiber) + + pci:v000017D5d00005831sv000010A9sd00008020* +- ID_MODEL_FROM_DATABASE=Single Port 10-Gigabit Ethernet (PCI-X, Fiber) ++ ID_MODEL_FROM_DATABASE=Xframe 10-Gigabit Ethernet PCI-X (Single Port 10-Gigabit Ethernet (PCI-X, Fiber)) + + pci:v000017D5d00005831sv000010A9sd00008024* +- ID_MODEL_FROM_DATABASE=Single Port 10-Gigabit Ethernet (PCI-X, Fiber) ++ ID_MODEL_FROM_DATABASE=Xframe 10-Gigabit Ethernet PCI-X (Single Port 10-Gigabit Ethernet (PCI-X, Fiber)) + + pci:v000017D5d00005832* + ID_MODEL_FROM_DATABASE=Xframe II 10-Gigabit Ethernet PCI-X 2.0 + + pci:v000017D5d00005832sv0000103Csd00001337* +- ID_MODEL_FROM_DATABASE=PCI-X 266MHz 10GigE SR [AD385A] ++ ID_MODEL_FROM_DATABASE=Xframe II 10-Gigabit Ethernet PCI-X 2.0 (PCI-X 266MHz 10GigE SR [AD385A]) + + pci:v000017D5d00005832sv000010A9sd00008021* +- ID_MODEL_FROM_DATABASE=Single Port 10-Gigabit Ethernet II (PCI-X, Fiber) ++ ID_MODEL_FROM_DATABASE=Xframe II 10-Gigabit Ethernet PCI-X 2.0 (Single Port 10-Gigabit Ethernet II (PCI-X, Fiber)) + + pci:v000017D5d00005832sv000017D5sd00006020* +- ID_MODEL_FROM_DATABASE=Xframe II SR ++ ID_MODEL_FROM_DATABASE=Xframe II 10-Gigabit Ethernet PCI-X 2.0 (Xframe II SR) + + pci:v000017D5d00005832sv000017D5sd00006021* +- ID_MODEL_FROM_DATABASE=Xframe II SR, Low Profile ++ ID_MODEL_FROM_DATABASE=Xframe II 10-Gigabit Ethernet PCI-X 2.0 (Xframe II SR, Low Profile) + + pci:v000017D5d00005832sv000017D5sd00006022* +- ID_MODEL_FROM_DATABASE=Xframe E SR ++ ID_MODEL_FROM_DATABASE=Xframe II 10-Gigabit Ethernet PCI-X 2.0 (Xframe E SR) + + pci:v000017D5d00005832sv000017D5sd00006420* +- ID_MODEL_FROM_DATABASE=Xframe II LR ++ ID_MODEL_FROM_DATABASE=Xframe II 10-Gigabit Ethernet PCI-X 2.0 (Xframe II LR) + + pci:v000017D5d00005832sv000017D5sd00006421* +- ID_MODEL_FROM_DATABASE=Xframe II LR, Low Profile ++ ID_MODEL_FROM_DATABASE=Xframe II 10-Gigabit Ethernet PCI-X 2.0 (Xframe II LR, Low Profile) + + pci:v000017D5d00005832sv000017D5sd00006422* +- ID_MODEL_FROM_DATABASE=Xframe E LR ++ ID_MODEL_FROM_DATABASE=Xframe II 10-Gigabit Ethernet PCI-X 2.0 (Xframe E LR) + + pci:v000017D5d00005832sv000017D5sd00006C20* +- ID_MODEL_FROM_DATABASE=Xframe II CX4 ++ ID_MODEL_FROM_DATABASE=Xframe II 10-Gigabit Ethernet PCI-X 2.0 (Xframe II CX4) + + pci:v000017D5d00005832sv000017D5sd00006C21* +- ID_MODEL_FROM_DATABASE=Xframe II CX4, Low Profile ++ ID_MODEL_FROM_DATABASE=Xframe II 10-Gigabit Ethernet PCI-X 2.0 (Xframe II CX4, Low Profile) + + pci:v000017D5d00005832sv000017D5sd00006C22* +- ID_MODEL_FROM_DATABASE=Xframe E CX4 ++ ID_MODEL_FROM_DATABASE=Xframe II 10-Gigabit Ethernet PCI-X 2.0 (Xframe E CX4) + + pci:v000017D5d00005833* + ID_MODEL_FROM_DATABASE=X3100 Series 10 Gigabit Ethernet PCIe + + pci:v000017D5d00005833sv000017D5sd00006030* +- ID_MODEL_FROM_DATABASE=X3110 Single Port SR ++ ID_MODEL_FROM_DATABASE=X3100 Series 10 Gigabit Ethernet PCIe (X3110 Single Port SR) + + pci:v000017D5d00005833sv000017D5sd00006031* +- ID_MODEL_FROM_DATABASE=X3120 Dual Port SR ++ ID_MODEL_FROM_DATABASE=X3100 Series 10 Gigabit Ethernet PCIe (X3120 Dual Port SR) + + pci:v000017D5d00005833sv000017D5sd00006430* +- ID_MODEL_FROM_DATABASE=X3110 Single Port LR ++ ID_MODEL_FROM_DATABASE=X3100 Series 10 Gigabit Ethernet PCIe (X3110 Single Port LR) + + pci:v000017D5d00005833sv000017D5sd00006431* +- ID_MODEL_FROM_DATABASE=X3120 Dual Port LR ++ ID_MODEL_FROM_DATABASE=X3100 Series 10 Gigabit Ethernet PCIe (X3120 Dual Port LR) + + pci:v000017D5d00005833sv000017D5sd00007030* +- ID_MODEL_FROM_DATABASE=X3110 Single Port LRM ++ ID_MODEL_FROM_DATABASE=X3100 Series 10 Gigabit Ethernet PCIe (X3110 Single Port LRM) + + pci:v000017D5d00005833sv000017D5sd00007031* +- ID_MODEL_FROM_DATABASE=X3120 Dual Port LRM ++ ID_MODEL_FROM_DATABASE=X3100 Series 10 Gigabit Ethernet PCIe (X3120 Dual Port LRM) + + pci:v000017D5d00005833sv000017D5sd00007430* +- ID_MODEL_FROM_DATABASE=X3110 Single Port 10GBase-T ++ ID_MODEL_FROM_DATABASE=X3100 Series 10 Gigabit Ethernet PCIe (X3110 Single Port 10GBase-T) + + pci:v000017D5d00005833sv000017D5sd00007431* +- ID_MODEL_FROM_DATABASE=X3120 Dual Port 10GBase-T ++ ID_MODEL_FROM_DATABASE=X3100 Series 10 Gigabit Ethernet PCIe (X3120 Dual Port 10GBase-T) + + pci:v000017D5d00005833sv000017D5sd00007830* +- ID_MODEL_FROM_DATABASE=X3110 Single Port 10GBase-CR ++ ID_MODEL_FROM_DATABASE=X3100 Series 10 Gigabit Ethernet PCIe (X3110 Single Port 10GBase-CR) + + pci:v000017D5d00005833sv000017D5sd00007831* +- ID_MODEL_FROM_DATABASE=X3120 Dual Port 10GBase-CR ++ ID_MODEL_FROM_DATABASE=X3100 Series 10 Gigabit Ethernet PCIe (X3120 Dual Port 10GBase-CR) + + pci:v000017DB* + ID_VENDOR_FROM_DATABASE=Cray Inc +@@ -50103,16 +50103,16 @@ pci:v000017FEd00002120* + ID_MODEL_FROM_DATABASE=IPN 2120 802.11b + + pci:v000017FEd00002120sv00001737sd00000020* +- ID_MODEL_FROM_DATABASE=WMP11 v4 802.11b Wireless-B PCI Adapter ++ ID_MODEL_FROM_DATABASE=IPN 2120 802.11b (WMP11 v4 802.11b Wireless-B PCI Adapter) + + pci:v000017FEd00002220* + ID_MODEL_FROM_DATABASE=IPN 2220 802.11g + + pci:v000017FEd00002220sv00001468sd00000305* +- ID_MODEL_FROM_DATABASE=T60N871 802.11g Mini PCI Wireless Adapter ++ ID_MODEL_FROM_DATABASE=IPN 2220 802.11g (T60N871 802.11g Mini PCI Wireless Adapter) + + pci:v000017FEd00002220sv00001737sd00000029* +- ID_MODEL_FROM_DATABASE=WPC54G v4 802.11g Wireless-G Notebook Adapter ++ ID_MODEL_FROM_DATABASE=IPN 2220 802.11g (WPC54G v4 802.11g Wireless-G Notebook Adapter) + + pci:v000017FF* + ID_VENDOR_FROM_DATABASE=Benq Corporation +@@ -50133,13 +50133,13 @@ pci:v00001813d00004000* + ID_MODEL_FROM_DATABASE=HaM controllerless modem + + pci:v00001813d00004000sv000016BEsd00000001* +- ID_MODEL_FROM_DATABASE=V9x HAM Data Fax Modem ++ ID_MODEL_FROM_DATABASE=HaM controllerless modem (V9x HAM Data Fax Modem) + + pci:v00001813d00004100* + ID_MODEL_FROM_DATABASE=HaM plus Data Fax Modem + + pci:v00001813d00004100sv000016BEsd00000002* +- ID_MODEL_FROM_DATABASE=V9x HAM 1394 ++ ID_MODEL_FROM_DATABASE=HaM plus Data Fax Modem (V9x HAM 1394) + + pci:v00001814* + ID_VENDOR_FROM_DATABASE=Ralink corp. +@@ -50148,13 +50148,13 @@ pci:v00001814d00000101* + ID_MODEL_FROM_DATABASE=Wireless PCI Adapter RT2400 / RT2460 + + pci:v00001814d00000101sv00001043sd00000127* +- ID_MODEL_FROM_DATABASE=WiFi-b add-on Card ++ ID_MODEL_FROM_DATABASE=Wireless PCI Adapter RT2400 / RT2460 (WiFi-b add-on Card) + + pci:v00001814d00000101sv00001371sd00000010* +- ID_MODEL_FROM_DATABASE=Minitar MNW2BPCI Wireless PCI Card ++ ID_MODEL_FROM_DATABASE=Wireless PCI Adapter RT2400 / RT2460 (Minitar MNW2BPCI Wireless PCI Card) + + pci:v00001814d00000101sv00001462sd00006828* +- ID_MODEL_FROM_DATABASE=PC11B2 (MS-6828) Wireless 11b PCI Card ++ ID_MODEL_FROM_DATABASE=Wireless PCI Adapter RT2400 / RT2460 (PC11B2 (MS-6828) Wireless 11b PCI Card) + + pci:v00001814d00000200* + ID_MODEL_FROM_DATABASE=RT2500 802.11g PCI [PC54G2] +@@ -50163,58 +50163,58 @@ pci:v00001814d00000201* + ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg + + pci:v00001814d00000201sv00001043sd0000130F* +- ID_MODEL_FROM_DATABASE=WL-130g ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (WL-130g) + + pci:v00001814d00000201sv00001186sd00003C00* +- ID_MODEL_FROM_DATABASE=DWL-G650X Wireless 11g CardBus Adapter ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (DWL-G650X Wireless 11g CardBus Adapter) + + pci:v00001814d00000201sv00001371sd0000001E* +- ID_MODEL_FROM_DATABASE=CWC-854 Wireless-G CardBus Adapter ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (CWC-854 Wireless-G CardBus Adapter) + + pci:v00001814d00000201sv00001371sd0000001F* +- ID_MODEL_FROM_DATABASE=CWM-854 Wireless-G Mini PCI Adapter ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (CWM-854 Wireless-G Mini PCI Adapter) + + pci:v00001814d00000201sv00001371sd00000020* +- ID_MODEL_FROM_DATABASE=CWP-854 Wireless-G PCI Adapter ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (CWP-854 Wireless-G PCI Adapter) + + pci:v00001814d00000201sv00001458sd0000E381* +- ID_MODEL_FROM_DATABASE=GN-WMKG 802.11b/g Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (GN-WMKG 802.11b/g Wireless CardBus Adapter) + + pci:v00001814d00000201sv00001458sd0000E931* +- ID_MODEL_FROM_DATABASE=GN-WIKG 802.11b/g mini-PCI Adapter ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (GN-WIKG 802.11b/g mini-PCI Adapter) + + pci:v00001814d00000201sv00001462sd00006833* +- ID_MODEL_FROM_DATABASE=Unknown 802.11g mini-PCI Adapter ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (Unknown 802.11g mini-PCI Adapter) + + pci:v00001814d00000201sv00001462sd00006835* +- ID_MODEL_FROM_DATABASE=Wireless 11G CardBus CB54G2 ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (Wireless 11G CardBus CB54G2) + + pci:v00001814d00000201sv00001737sd00000032* +- ID_MODEL_FROM_DATABASE=WMP54G v4.0 PCI Adapter ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (WMP54G v4.0 PCI Adapter) + + pci:v00001814d00000201sv00001799sd0000700A* +- ID_MODEL_FROM_DATABASE=F5D7000 v2000/v3000 Wireless G Desktop Card ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (F5D7000 v2000/v3000 Wireless G Desktop Card) + + pci:v00001814d00000201sv00001799sd0000701A* +- ID_MODEL_FROM_DATABASE=F5D7010 v2000/v3000 Wireless G Notebook Card ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (F5D7010 v2000/v3000 Wireless G Notebook Card) + + pci:v00001814d00000201sv00001814sd00002560* + ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg + + pci:v00001814d00000201sv0000182Dsd00009073* +- ID_MODEL_FROM_DATABASE=WL-115 Wireless Network PCI Adapter ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (WL-115 Wireless Network PCI Adapter) + + pci:v00001814d00000201sv0000185Fsd000022A0* +- ID_MODEL_FROM_DATABASE=CN-WF513 Wireless Cardbus Adapter ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (CN-WF513 Wireless Cardbus Adapter) + + pci:v00001814d00000201sv000018EBsd00005312* +- ID_MODEL_FROM_DATABASE=WL531P IEEE 802.11g PCI Card-EU ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (WL531P IEEE 802.11g PCI Card-EU) + + pci:v00001814d00000201sv00001948sd00003C00* +- ID_MODEL_FROM_DATABASE=C54RC v1 Wireless 11g CardBus Adapter ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (C54RC v1 Wireless 11g CardBus Adapter) + + pci:v00001814d00000201sv00001948sd00003C01* +- ID_MODEL_FROM_DATABASE=C54Ri v1 Wireless 11g PCI Adapter ++ ID_MODEL_FROM_DATABASE=RT2500 Wireless 802.11bg (C54Ri v1 Wireless 11g PCI Adapter) + + pci:v00001814d00000300* + ID_MODEL_FROM_DATABASE=Wireless Adapter Canyon CN-WF511 +@@ -50223,88 +50223,88 @@ pci:v00001814d00000301* + ID_MODEL_FROM_DATABASE=RT2561/RT61 802.11g PCI + + pci:v00001814d00000301sv00001186sd00003C08* +- ID_MODEL_FROM_DATABASE=AirPlus G DWL-G630 Wireless Cardbus Adapter (rev.E1) ++ ID_MODEL_FROM_DATABASE=RT2561/RT61 802.11g PCI (AirPlus G DWL-G630 Wireless Cardbus Adapter (rev.E1)) + + pci:v00001814d00000301sv00001186sd00003C09* +- ID_MODEL_FROM_DATABASE=DWL-G510 Rev C ++ ID_MODEL_FROM_DATABASE=RT2561/RT61 802.11g PCI (DWL-G510 Rev C) + + pci:v00001814d00000301sv000013D1sd0000ABE3* +- ID_MODEL_FROM_DATABASE=miniPCI Pluscom 802.11 a/b/g ++ ID_MODEL_FROM_DATABASE=RT2561/RT61 802.11g PCI (miniPCI Pluscom 802.11 a/b/g) + + pci:v00001814d00000301sv00001458sd0000E933* +- ID_MODEL_FROM_DATABASE=GN-WI01GS ++ ID_MODEL_FROM_DATABASE=RT2561/RT61 802.11g PCI (GN-WI01GS) + + pci:v00001814d00000301sv00001458sd0000E934* +- ID_MODEL_FROM_DATABASE=GN-WP01GS ++ ID_MODEL_FROM_DATABASE=RT2561/RT61 802.11g PCI (GN-WP01GS) + + pci:v00001814d00000301sv00001737sd00000055* +- ID_MODEL_FROM_DATABASE=WMP54G v4.1 ++ ID_MODEL_FROM_DATABASE=RT2561/RT61 802.11g PCI (WMP54G v4.1) + + pci:v00001814d00000301sv00001799sd0000700E* +- ID_MODEL_FROM_DATABASE=F5D7000 v6000 Wireless G Desktop Card ++ ID_MODEL_FROM_DATABASE=RT2561/RT61 802.11g PCI (F5D7000 v6000 Wireless G Desktop Card) + + pci:v00001814d00000301sv00001799sd0000701E* +- ID_MODEL_FROM_DATABASE=F5D7010 v6000 Wireless G Notebook Card ++ ID_MODEL_FROM_DATABASE=RT2561/RT61 802.11g PCI (F5D7010 v6000 Wireless G Notebook Card) + + pci:v00001814d00000301sv000017F9sd00000012* +- ID_MODEL_FROM_DATABASE=AWLC3026T 802.11g Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=RT2561/RT61 802.11g PCI (AWLC3026T 802.11g Wireless CardBus Adapter) + + pci:v00001814d00000301sv00001814sd00002561* +- ID_MODEL_FROM_DATABASE=EW-7108PCg/EW-7128g ++ ID_MODEL_FROM_DATABASE=RT2561/RT61 802.11g PCI (EW-7108PCg/EW-7128g) + + pci:v00001814d00000302* + ID_MODEL_FROM_DATABASE=RT2561/RT61 rev B 802.11g + + pci:v00001814d00000302sv00001186sd00003A71* +- ID_MODEL_FROM_DATABASE=DWA-510 Wireless G Desktop Adapter ++ ID_MODEL_FROM_DATABASE=RT2561/RT61 rev B 802.11g (DWA-510 Wireless G Desktop Adapter) + + pci:v00001814d00000302sv00001186sd00003C08* +- ID_MODEL_FROM_DATABASE=AirPlus G DWL-G630 Wireless Cardbus Adapter (rev.E2) ++ ID_MODEL_FROM_DATABASE=RT2561/RT61 rev B 802.11g (AirPlus G DWL-G630 Wireless Cardbus Adapter (rev.E2)) + + pci:v00001814d00000302sv00001186sd00003C09* +- ID_MODEL_FROM_DATABASE=AirPlus G DWL-G510 Wireless Network Adapter (Rev.C) ++ ID_MODEL_FROM_DATABASE=RT2561/RT61 rev B 802.11g (AirPlus G DWL-G510 Wireless Network Adapter (Rev.C)) + + pci:v00001814d00000302sv00001462sd0000B834* +- ID_MODEL_FROM_DATABASE=PC54G3 Wireless 11g PCI Card ++ ID_MODEL_FROM_DATABASE=RT2561/RT61 rev B 802.11g (PC54G3 Wireless 11g PCI Card) + + pci:v00001814d00000302sv00001948sd00003C23* +- ID_MODEL_FROM_DATABASE=C54RC v2 Wireless 11g CardBus Adapter ++ ID_MODEL_FROM_DATABASE=RT2561/RT61 rev B 802.11g (C54RC v2 Wireless 11g CardBus Adapter) + + pci:v00001814d00000302sv00001948sd00003C24* +- ID_MODEL_FROM_DATABASE=C54Ri v2 Wireless 11g PCI Adapter ++ ID_MODEL_FROM_DATABASE=RT2561/RT61 rev B 802.11g (C54Ri v2 Wireless 11g PCI Adapter) + + pci:v00001814d00000401* + ID_MODEL_FROM_DATABASE=RT2600 802.11 MIMO + + pci:v00001814d00000401sv00001737sd00000052* +- ID_MODEL_FROM_DATABASE=WPC54GR v1 802.11g Wireless-G Notebook Adapter with RangeBooster ++ ID_MODEL_FROM_DATABASE=RT2600 802.11 MIMO (WPC54GR v1 802.11g Wireless-G Notebook Adapter with RangeBooster) + + pci:v00001814d00000401sv000017F9sd00000011* +- ID_MODEL_FROM_DATABASE=WPCR-137G 802.11bg Wireless CardBus Adapter ++ ID_MODEL_FROM_DATABASE=RT2600 802.11 MIMO (WPCR-137G 802.11bg Wireless CardBus Adapter) + + pci:v00001814d00000401sv000017F9sd00000016* +- ID_MODEL_FROM_DATABASE=WPIR-119GH 802.11bg Wireless Desktop Adapter ++ ID_MODEL_FROM_DATABASE=RT2600 802.11 MIMO (WPIR-119GH 802.11bg Wireless Desktop Adapter) + + pci:v00001814d00000601* + ID_MODEL_FROM_DATABASE=RT2800 802.11n PCI + + pci:v00001814d00000601sv00001799sd0000801C* +- ID_MODEL_FROM_DATABASE=F5D8011 v3 802.11n N1 Wireless Notebook Card ++ ID_MODEL_FROM_DATABASE=RT2800 802.11n PCI (F5D8011 v3 802.11n N1 Wireless Notebook Card) + + pci:v00001814d00000601sv0000187Esd00003412* +- ID_MODEL_FROM_DATABASE=NWD-310N 802.11n Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=RT2800 802.11n PCI (NWD-310N 802.11n Wireless PCI Adapter) + + pci:v00001814d00000681* + ID_MODEL_FROM_DATABASE=RT2890 Wireless 802.11n PCIe + + pci:v00001814d00000681sv00001458sd0000E939* +- ID_MODEL_FROM_DATABASE=GN-WS30N-RH 802.11bgn Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=RT2890 Wireless 802.11n PCIe (GN-WS30N-RH 802.11bgn Mini PCIe Card) + + pci:v00001814d00000701* + ID_MODEL_FROM_DATABASE=RT2760 Wireless 802.11n 1T/2R + + pci:v00001814d00000701sv00001737sd00000074* +- ID_MODEL_FROM_DATABASE=WMP110 v2 802.11n RangePlus Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=RT2760 Wireless 802.11n 1T/2R (WMP110 v2 802.11n RangePlus Wireless PCI Adapter) + + pci:v00001814d00000781* + ID_MODEL_FROM_DATABASE=RT2790 Wireless 802.11n 1T/2R PCIe +@@ -50313,7 +50313,7 @@ pci:v00001814d00003060* + ID_MODEL_FROM_DATABASE=RT3060 Wireless 802.11n 1T/1R + + pci:v00001814d00003060sv00001186sd00003C04* +- ID_MODEL_FROM_DATABASE=DWA-525 Wireless N 150 Desktop Adapter (rev.A1) ++ ID_MODEL_FROM_DATABASE=RT3060 Wireless 802.11n 1T/1R (DWA-525 Wireless N 150 Desktop Adapter (rev.A1)) + + pci:v00001814d00003062* + ID_MODEL_FROM_DATABASE=RT3062 Wireless 802.11n 2T/2R +@@ -50322,7 +50322,7 @@ pci:v00001814d00003090* + ID_MODEL_FROM_DATABASE=RT3090 Wireless 802.11n 1T/1R PCIe + + pci:v00001814d00003090sv000013BDsd00001057* +- ID_MODEL_FROM_DATABASE=GN-WS32L-RH Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=RT3090 Wireless 802.11n 1T/1R PCIe (GN-WS32L-RH Half-size Mini PCIe Card) + + pci:v00001814d00003091* + ID_MODEL_FROM_DATABASE=RT3091 Wireless 802.11n 1T/2R PCIe +@@ -50334,13 +50334,13 @@ pci:v00001814d00003290* + ID_MODEL_FROM_DATABASE=RT3290 Wireless 802.11n 1T/1R PCIe + + pci:v00001814d00003290sv0000103Csd000018EC* +- ID_MODEL_FROM_DATABASE=Ralink RT3290LE 802.11bgn 1x1 Wi-Fi and Bluetooth 4.0 Combo Adapter ++ ID_MODEL_FROM_DATABASE=RT3290 Wireless 802.11n 1T/1R PCIe (Ralink RT3290LE 802.11bgn 1x1 Wi-Fi and Bluetooth 4.0 Combo Adapter) + + pci:v00001814d00003298* + ID_MODEL_FROM_DATABASE=RT3290 Bluetooth + + pci:v00001814d00003298sv0000103Csd000018EC* +- ID_MODEL_FROM_DATABASE=Ralink RT3290LE 802.11bgn 1x1 Wi-Fi and Bluetooth 4.0 Combo Adapter ++ ID_MODEL_FROM_DATABASE=RT3290 Bluetooth (Ralink RT3290LE 802.11bgn 1x1 Wi-Fi and Bluetooth 4.0 Combo Adapter) + + pci:v00001814d00003592* + ID_MODEL_FROM_DATABASE=RT3592 Wireless 802.11abgn 2T/2R PCIe +@@ -50352,16 +50352,16 @@ pci:v00001814d00005360* + ID_MODEL_FROM_DATABASE=RT5360 Wireless 802.11n 1T/1R + + pci:v00001814d00005360sv00001186sd00003C05* +- ID_MODEL_FROM_DATABASE=DWA-525 Wireless N 150 Desktop Adapter (rev.A2) ++ ID_MODEL_FROM_DATABASE=RT5360 Wireless 802.11n 1T/1R (DWA-525 Wireless N 150 Desktop Adapter (rev.A2)) + + pci:v00001814d00005360sv000020F4sd0000703A* +- ID_MODEL_FROM_DATABASE=TEW-703PI N150 Wireless PCI Adapter ++ ID_MODEL_FROM_DATABASE=RT5360 Wireless 802.11n 1T/1R (TEW-703PI N150 Wireless PCI Adapter) + + pci:v00001814d00005390* + ID_MODEL_FROM_DATABASE=RT5390 Wireless 802.11n 1T/1R PCIe + + pci:v00001814d00005390sv0000103Csd00001636* +- ID_MODEL_FROM_DATABASE=U98Z077.00 Half-size Mini PCIe Card ++ ID_MODEL_FROM_DATABASE=RT5390 Wireless 802.11n 1T/1R PCIe (U98Z077.00 Half-size Mini PCIe Card) + + pci:v00001814d00005392* + ID_MODEL_FROM_DATABASE=RT5392 PCIe Wireless Network Adapter +@@ -50370,7 +50370,7 @@ pci:v00001814d0000539F* + ID_MODEL_FROM_DATABASE=RT5390 [802.11 b/g/n 1T1R G-band PCI Express Single Chip] + + pci:v00001814d0000539Fsv0000103Csd00001637* +- ID_MODEL_FROM_DATABASE=Pavilion DM1Z-3000 PCIe wireless card ++ ID_MODEL_FROM_DATABASE=RT5390 [802.11 b/g/n 1T1R G-band PCI Express Single Chip] (Pavilion DM1Z-3000 PCIe wireless card) + + pci:v00001814d00005592* + ID_MODEL_FROM_DATABASE=RT5592 PCIe Wireless Network Adapter +@@ -50637,7 +50637,7 @@ pci:v000018C3d00000720* + ID_MODEL_FROM_DATABASE=nGene PCI-Express Multimedia Controller + + pci:v000018C3d00000720sv000007CAsd0000032E* +- ID_MODEL_FROM_DATABASE=Hybrid M779 PCI-E ++ ID_MODEL_FROM_DATABASE=nGene PCI-Express Multimedia Controller (Hybrid M779 PCI-E) + + pci:v000018C8* + ID_VENDOR_FROM_DATABASE=Cray Inc +@@ -50697,70 +50697,70 @@ pci:v000018ECd00006D05* + ID_MODEL_FROM_DATABASE=ML555 + + pci:v000018ECd00006D05sv000018ECsd00000100* +- ID_MODEL_FROM_DATABASE=NIC (ethernet interfaces) ++ ID_MODEL_FROM_DATABASE=ML555 (NIC (ethernet interfaces)) + + pci:v000018ECd00006D05sv000018ECsd00000200* +- ID_MODEL_FROM_DATABASE=NIC (szedata2) 4x1G ++ ID_MODEL_FROM_DATABASE=ML555 (NIC (szedata2) 4x1G) + + pci:v000018ECd00006D05sv000018ECsd00000201* +- ID_MODEL_FROM_DATABASE=NIC (szedata2) 2x10G ++ ID_MODEL_FROM_DATABASE=ML555 (NIC (szedata2) 2x10G) + + pci:v000018ECd00006D05sv000018ECsd00000300* +- ID_MODEL_FROM_DATABASE=NIFIC (szedata2) 4x1G ++ ID_MODEL_FROM_DATABASE=ML555 (NIFIC (szedata2) 4x1G) + + pci:v000018ECd00006D05sv000018ECsd00000302* +- ID_MODEL_FROM_DATABASE=NIFIC (szedata2) 2x10G ++ ID_MODEL_FROM_DATABASE=ML555 (NIFIC (szedata2) 2x10G) + + pci:v000018ECd00006D05sv000018ECsd00004200* +- ID_MODEL_FROM_DATABASE=Flexible FlowMon (szedata2) 1x10G ++ ID_MODEL_FROM_DATABASE=ML555 (Flexible FlowMon (szedata2) 1x10G) + + pci:v000018ECd00006D05sv000018ECsd0000FF00* +- ID_MODEL_FROM_DATABASE=Testing design ++ ID_MODEL_FROM_DATABASE=ML555 (Testing design) + + pci:v000018ECd00006D05sv000018ECsd0000FF01* +- ID_MODEL_FROM_DATABASE=Boot design ++ ID_MODEL_FROM_DATABASE=ML555 (Boot design) + + pci:v000018ECd0000C006* + ID_MODEL_FROM_DATABASE=COMBO6 + + pci:v000018ECd0000C006sv000018ECsd0000D001* +- ID_MODEL_FROM_DATABASE=COMBO-4MTX ++ ID_MODEL_FROM_DATABASE=COMBO6 (COMBO-4MTX) + + pci:v000018ECd0000C006sv000018ECsd0000D002* +- ID_MODEL_FROM_DATABASE=COMBO-4SFP ++ ID_MODEL_FROM_DATABASE=COMBO6 (COMBO-4SFP) + + pci:v000018ECd0000C006sv000018ECsd0000D003* +- ID_MODEL_FROM_DATABASE=COMBO-4SFPRO ++ ID_MODEL_FROM_DATABASE=COMBO6 (COMBO-4SFPRO) + + pci:v000018ECd0000C006sv000018ECsd0000D004* +- ID_MODEL_FROM_DATABASE=COMBO-2XFP ++ ID_MODEL_FROM_DATABASE=COMBO6 (COMBO-2XFP) + + pci:v000018ECd0000C032* + ID_MODEL_FROM_DATABASE=COMBO-LXT110 + + pci:v000018ECd0000C032sv000018ECsd00000100* +- ID_MODEL_FROM_DATABASE=NIC (ethernet interfaces) ++ ID_MODEL_FROM_DATABASE=COMBO-LXT110 (NIC (ethernet interfaces)) + + pci:v000018ECd0000C032sv000018ECsd00000200* +- ID_MODEL_FROM_DATABASE=NIC (szedata2) 4x1G ++ ID_MODEL_FROM_DATABASE=COMBO-LXT110 (NIC (szedata2) 4x1G) + + pci:v000018ECd0000C032sv000018ECsd00000201* +- ID_MODEL_FROM_DATABASE=NIC (szedata2) 2x10G ++ ID_MODEL_FROM_DATABASE=COMBO-LXT110 (NIC (szedata2) 2x10G) + + pci:v000018ECd0000C032sv000018ECsd00000300* +- ID_MODEL_FROM_DATABASE=NIFIC (szedata2) 4x1G ++ ID_MODEL_FROM_DATABASE=COMBO-LXT110 (NIFIC (szedata2) 4x1G) + + pci:v000018ECd0000C032sv000018ECsd00000302* +- ID_MODEL_FROM_DATABASE=NIFIC (szedata2) 2x10G ++ ID_MODEL_FROM_DATABASE=COMBO-LXT110 (NIFIC (szedata2) 2x10G) + + pci:v000018ECd0000C032sv000018ECsd00004200* +- ID_MODEL_FROM_DATABASE=Flexible FlowMon (szedata2) 1x10G ++ ID_MODEL_FROM_DATABASE=COMBO-LXT110 (Flexible FlowMon (szedata2) 1x10G) + + pci:v000018ECd0000C032sv000018ECsd0000FF00* +- ID_MODEL_FROM_DATABASE=Testing design ++ ID_MODEL_FROM_DATABASE=COMBO-LXT110 (Testing design) + + pci:v000018ECd0000C032sv000018ECsd0000FF01* +- ID_MODEL_FROM_DATABASE=Boot design ++ ID_MODEL_FROM_DATABASE=COMBO-LXT110 (Boot design) + + pci:v000018ECd0000C045* + ID_MODEL_FROM_DATABASE=COMBO6E +@@ -50772,70 +50772,70 @@ pci:v000018ECd0000C058* + ID_MODEL_FROM_DATABASE=COMBO6X + + pci:v000018ECd0000C058sv000018ECsd0000D001* +- ID_MODEL_FROM_DATABASE=COMBO-4MTX ++ ID_MODEL_FROM_DATABASE=COMBO6X (COMBO-4MTX) + + pci:v000018ECd0000C058sv000018ECsd0000D002* +- ID_MODEL_FROM_DATABASE=COMBO-4SFP ++ ID_MODEL_FROM_DATABASE=COMBO6X (COMBO-4SFP) + + pci:v000018ECd0000C058sv000018ECsd0000D003* +- ID_MODEL_FROM_DATABASE=COMBO-4SFPRO ++ ID_MODEL_FROM_DATABASE=COMBO6X (COMBO-4SFPRO) + + pci:v000018ECd0000C058sv000018ECsd0000D004* +- ID_MODEL_FROM_DATABASE=COMBO-2XFP ++ ID_MODEL_FROM_DATABASE=COMBO6X (COMBO-2XFP) + + pci:v000018ECd0000C132* + ID_MODEL_FROM_DATABASE=COMBO-LXT155 + + pci:v000018ECd0000C132sv000018ECsd00000100* +- ID_MODEL_FROM_DATABASE=NIC (ethernet interfaces) ++ ID_MODEL_FROM_DATABASE=COMBO-LXT155 (NIC (ethernet interfaces)) + + pci:v000018ECd0000C132sv000018ECsd00000200* +- ID_MODEL_FROM_DATABASE=NIC (szedata2) 4x1G ++ ID_MODEL_FROM_DATABASE=COMBO-LXT155 (NIC (szedata2) 4x1G) + + pci:v000018ECd0000C132sv000018ECsd00000201* +- ID_MODEL_FROM_DATABASE=NIC (szedata2) 2x10G ++ ID_MODEL_FROM_DATABASE=COMBO-LXT155 (NIC (szedata2) 2x10G) + + pci:v000018ECd0000C132sv000018ECsd00000300* +- ID_MODEL_FROM_DATABASE=NIFIC (szedata2) 4x1G ++ ID_MODEL_FROM_DATABASE=COMBO-LXT155 (NIFIC (szedata2) 4x1G) + + pci:v000018ECd0000C132sv000018ECsd00000302* +- ID_MODEL_FROM_DATABASE=NIFIC (szedata2) 2x10G ++ ID_MODEL_FROM_DATABASE=COMBO-LXT155 (NIFIC (szedata2) 2x10G) + + pci:v000018ECd0000C132sv000018ECsd00004200* +- ID_MODEL_FROM_DATABASE=Flexible FlowMon (szedata2) 1x10G ++ ID_MODEL_FROM_DATABASE=COMBO-LXT155 (Flexible FlowMon (szedata2) 1x10G) + + pci:v000018ECd0000C132sv000018ECsd0000FF00* +- ID_MODEL_FROM_DATABASE=Testing design ++ ID_MODEL_FROM_DATABASE=COMBO-LXT155 (Testing design) + + pci:v000018ECd0000C132sv000018ECsd0000FF01* +- ID_MODEL_FROM_DATABASE=Boot design ++ ID_MODEL_FROM_DATABASE=COMBO-LXT155 (Boot design) + + pci:v000018ECd0000C232* + ID_MODEL_FROM_DATABASE=COMBO-FXT100 + + pci:v000018ECd0000C232sv000018ECsd00000100* +- ID_MODEL_FROM_DATABASE=NIC (ethernet interfaces) ++ ID_MODEL_FROM_DATABASE=COMBO-FXT100 (NIC (ethernet interfaces)) + + pci:v000018ECd0000C232sv000018ECsd00000200* +- ID_MODEL_FROM_DATABASE=NIC (szedata2) 4x1G ++ ID_MODEL_FROM_DATABASE=COMBO-FXT100 (NIC (szedata2) 4x1G) + + pci:v000018ECd0000C232sv000018ECsd00000201* +- ID_MODEL_FROM_DATABASE=NIC (szedata2) 2x10G ++ ID_MODEL_FROM_DATABASE=COMBO-FXT100 (NIC (szedata2) 2x10G) + + pci:v000018ECd0000C232sv000018ECsd00000300* +- ID_MODEL_FROM_DATABASE=NIFIC (szedata2) 4x1G ++ ID_MODEL_FROM_DATABASE=COMBO-FXT100 (NIFIC (szedata2) 4x1G) + + pci:v000018ECd0000C232sv000018ECsd00000302* +- ID_MODEL_FROM_DATABASE=NIFIC (szedata2) 2x10G ++ ID_MODEL_FROM_DATABASE=COMBO-FXT100 (NIFIC (szedata2) 2x10G) + + pci:v000018ECd0000C232sv000018ECsd00004200* +- ID_MODEL_FROM_DATABASE=Flexible FlowMon (szedata2) 1x10G ++ ID_MODEL_FROM_DATABASE=COMBO-FXT100 (Flexible FlowMon (szedata2) 1x10G) + + pci:v000018ECd0000C232sv000018ECsd0000FF00* +- ID_MODEL_FROM_DATABASE=Testing design ++ ID_MODEL_FROM_DATABASE=COMBO-FXT100 (Testing design) + + pci:v000018ECd0000C232sv000018ECsd0000FF01* +- ID_MODEL_FROM_DATABASE=Boot design ++ ID_MODEL_FROM_DATABASE=COMBO-FXT100 (Boot design) + + pci:v000018EE* + ID_VENDOR_FROM_DATABASE=Chenming Mold Ind. Corp. +@@ -51075,235 +51075,235 @@ pci:v00001924d00000703* + ID_MODEL_FROM_DATABASE=SFC4000 rev A net [Solarstorm] + + pci:v00001924d00000703sv000010B8sd00000102* +- ID_MODEL_FROM_DATABASE=SMC10GPCIe-10BT (A2) [TigerCard] ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A net [Solarstorm] (SMC10GPCIe-10BT (A2) [TigerCard]) + + pci:v00001924d00000703sv000010B8sd00000103* +- ID_MODEL_FROM_DATABASE=SMC10GPCIe-10BT (A3) [TigerCard] ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A net [Solarstorm] (SMC10GPCIe-10BT (A3) [TigerCard]) + + pci:v00001924d00000703sv000010B8sd00000201* +- ID_MODEL_FROM_DATABASE=SMC10GPCIe-XFP (A1) [TigerCard] ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A net [Solarstorm] (SMC10GPCIe-XFP (A1) [TigerCard]) + + pci:v00001924d00000703sv00001924sd00000101* +- ID_MODEL_FROM_DATABASE=SFE4001-A1 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A net [Solarstorm] (SFE4001-A1) + + pci:v00001924d00000703sv00001924sd00000102* +- ID_MODEL_FROM_DATABASE=SFE4001-A2 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A net [Solarstorm] (SFE4001-A2) + + pci:v00001924d00000703sv00001924sd00000103* +- ID_MODEL_FROM_DATABASE=SFE4001-A3 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A net [Solarstorm] (SFE4001-A3) + + pci:v00001924d00000703sv00001924sd00000201* +- ID_MODEL_FROM_DATABASE=SFE4002-A1 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A net [Solarstorm] (SFE4002-A1) + + pci:v00001924d00000703sv00001924sd00000301* +- ID_MODEL_FROM_DATABASE=SFE4003-A1 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A net [Solarstorm] (SFE4003-A1) + + pci:v00001924d00000703sv00001924sd00000302* +- ID_MODEL_FROM_DATABASE=SFE4003-A2 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A net [Solarstorm] (SFE4003-A2) + + pci:v00001924d00000703sv00001924sd00000303* +- ID_MODEL_FROM_DATABASE=SFE4003-A3 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A net [Solarstorm] (SFE4003-A3) + + pci:v00001924d00000703sv00001924sd00000304* +- ID_MODEL_FROM_DATABASE=SFE4003-A4 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A net [Solarstorm] (SFE4003-A4) + + pci:v00001924d00000703sv00001924sd00000500* +- ID_MODEL_FROM_DATABASE=SFE4005-A0 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A net [Solarstorm] (SFE4005-A0) + + pci:v00001924d00000710* + ID_MODEL_FROM_DATABASE=SFC4000 rev B [Solarstorm] + + pci:v00001924d00000710sv000010B8sd00000103* +- ID_MODEL_FROM_DATABASE=SMC10GPCIe-10BT (A3) [TigerCard] ++ ID_MODEL_FROM_DATABASE=SFC4000 rev B [Solarstorm] (SMC10GPCIe-10BT (A3) [TigerCard]) + + pci:v00001924d00000710sv000010B8sd00000201* +- ID_MODEL_FROM_DATABASE=SMC10GPCIe-XFP (A1) [TigerCard] ++ ID_MODEL_FROM_DATABASE=SFC4000 rev B [Solarstorm] (SMC10GPCIe-XFP (A1) [TigerCard]) + + pci:v00001924d00000710sv00001924sd00000102* +- ID_MODEL_FROM_DATABASE=SFE4001-A2 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev B [Solarstorm] (SFE4001-A2) + + pci:v00001924d00000710sv00001924sd00000103* +- ID_MODEL_FROM_DATABASE=SFE4001-A3 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev B [Solarstorm] (SFE4001-A3) + + pci:v00001924d00000710sv00001924sd00000201* +- ID_MODEL_FROM_DATABASE=SFE4002-A1 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev B [Solarstorm] (SFE4002-A1) + + pci:v00001924d00000710sv00001924sd00000302* +- ID_MODEL_FROM_DATABASE=SFE4003-A2 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev B [Solarstorm] (SFE4003-A2) + + pci:v00001924d00000710sv00001924sd00000303* +- ID_MODEL_FROM_DATABASE=SFE4003-A3 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev B [Solarstorm] (SFE4003-A3) + + pci:v00001924d00000710sv00001924sd00000304* +- ID_MODEL_FROM_DATABASE=SFE4003-A4 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev B [Solarstorm] (SFE4003-A4) + + pci:v00001924d00000710sv00001924sd00000500* +- ID_MODEL_FROM_DATABASE=SFE4005-A0 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev B [Solarstorm] (SFE4005-A0) + + pci:v00001924d00000710sv00001924sd00005102* +- ID_MODEL_FROM_DATABASE=SFN4111T-A2 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev B [Solarstorm] (SFN4111T-A2) + + pci:v00001924d00000710sv00001924sd00005103* +- ID_MODEL_FROM_DATABASE=SFN4111T-R3 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev B [Solarstorm] (SFN4111T-R3) + + pci:v00001924d00000710sv00001924sd00005104* +- ID_MODEL_FROM_DATABASE=SFN4111T-R4 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev B [Solarstorm] (SFN4111T-R4) + + pci:v00001924d00000710sv00001924sd00005105* +- ID_MODEL_FROM_DATABASE=SFN4111T-R5 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev B [Solarstorm] (SFN4111T-R5) + + pci:v00001924d00000710sv00001924sd00005201* +- ID_MODEL_FROM_DATABASE=SFN4112F-R1 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev B [Solarstorm] (SFN4112F-R1) + + pci:v00001924d00000710sv00001924sd00005202* +- ID_MODEL_FROM_DATABASE=SFN4112F-R2 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev B [Solarstorm] (SFN4112F-R2) + + pci:v00001924d00000803* + ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] + + pci:v00001924d00000803sv00001014sd00000478* +- ID_MODEL_FROM_DATABASE=2-port 10GbE Low-Latency (R7) ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (2-port 10GbE Low-Latency (R7)) + + pci:v00001924d00000803sv00001014sd00000479* +- ID_MODEL_FROM_DATABASE=2-port 10GbE OpenOnload (R7) ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (2-port 10GbE OpenOnload (R7)) + + pci:v00001924d00000803sv00001014sd000004A7* +- ID_MODEL_FROM_DATABASE=Solarflare 10Gb Low-latency Dual-port HBA (R7) ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (Solarflare 10Gb Low-latency Dual-port HBA (R7)) + + pci:v00001924d00000803sv00001014sd000004A8* +- ID_MODEL_FROM_DATABASE=Solarflare 10Gb Dual-port HBA (R7) ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (Solarflare 10Gb Dual-port HBA (R7)) + + pci:v00001924d00000803sv0000103Csd00002132* +- ID_MODEL_FROM_DATABASE=Ethernet 10Gb 2-port 570FLR-SFP+ Adapter (R1) ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (Ethernet 10Gb 2-port 570FLR-SFP+ Adapter (R1)) + + pci:v00001924d00000803sv0000103Csd00002136* +- ID_MODEL_FROM_DATABASE=Ethernet 10Gb 2-port 570SFP+ Adapter (R7) ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (Ethernet 10Gb 2-port 570SFP+ Adapter (R7)) + + pci:v00001924d00000803sv00001924sd00001201* +- ID_MODEL_FROM_DATABASE=SFA6902F-R1 SFP+ AOE Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFA6902F-R1 SFP+ AOE Adapter) + + pci:v00001924d00000803sv00001924sd00006200* +- ID_MODEL_FROM_DATABASE=SFN5122F-R0 SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5122F-R0 SFP+ Server Adapter) + + pci:v00001924d00000803sv00001924sd00006201* +- ID_MODEL_FROM_DATABASE=SFN5122F-R1 SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5122F-R1 SFP+ Server Adapter) + + pci:v00001924d00000803sv00001924sd00006202* +- ID_MODEL_FROM_DATABASE=SFN5122F-R2 SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5122F-R2 SFP+ Server Adapter) + + pci:v00001924d00000803sv00001924sd00006204* +- ID_MODEL_FROM_DATABASE=SFN5122F-R4 SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5122F-R4 SFP+ Server Adapter) + + pci:v00001924d00000803sv00001924sd00006205* +- ID_MODEL_FROM_DATABASE=SFN5122F-R5 SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5122F-R5 SFP+ Server Adapter) + + pci:v00001924d00000803sv00001924sd00006206* +- ID_MODEL_FROM_DATABASE=SFN5122F-R6 SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5122F-R6 SFP+ Server Adapter) + + pci:v00001924d00000803sv00001924sd00006207* +- ID_MODEL_FROM_DATABASE=SFN5122F-R7 SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5122F-R7 SFP+ Server Adapter) + + pci:v00001924d00000803sv00001924sd00006210* +- ID_MODEL_FROM_DATABASE=SFN5322F-R0 SFP+ Precision Time Synchronization Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5322F-R0 SFP+ Precision Time Synchronization Server Adapter) + + pci:v00001924d00000803sv00001924sd00006211* +- ID_MODEL_FROM_DATABASE=SFN5322F-R1 SFP+ Precision Time Synchronization Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5322F-R1 SFP+ Precision Time Synchronization Server Adapter) + + pci:v00001924d00000803sv00001924sd00006217* +- ID_MODEL_FROM_DATABASE=SFN5322F-R7 SFP+ Precision Time Synchronization Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5322F-R7 SFP+ Precision Time Synchronization Server Adapter) + + pci:v00001924d00000803sv00001924sd00006227* +- ID_MODEL_FROM_DATABASE=SFN6122F-R7 SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN6122F-R7 SFP+ Server Adapter) + + pci:v00001924d00000803sv00001924sd00006237* +- ID_MODEL_FROM_DATABASE=SFN6322F-R7 SFP+ Precision Time Synchronization Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN6322F-R7 SFP+ Precision Time Synchronization Server Adapter) + + pci:v00001924d00000803sv00001924sd00006501* +- ID_MODEL_FROM_DATABASE=SFN5802K-R1 Mezzanine Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5802K-R1 Mezzanine Adapter) + + pci:v00001924d00000803sv00001924sd00006511* +- ID_MODEL_FROM_DATABASE=SFN5814H-R1 Mezzanine Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5814H-R1 Mezzanine Adapter) + + pci:v00001924d00000803sv00001924sd00006521* +- ID_MODEL_FROM_DATABASE=SFN5812H-R1 Mezzanine Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5812H-R1 Mezzanine Adapter) + + pci:v00001924d00000803sv00001924sd00006562* +- ID_MODEL_FROM_DATABASE=SFN6832F-R2 SFP+ Mezzanine Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN6832F-R2 SFP+ Mezzanine Adapter) + + pci:v00001924d00000803sv00001924sd00006A05* +- ID_MODEL_FROM_DATABASE=SFN5112F-R5 SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5112F-R5 SFP+ Server Adapter) + + pci:v00001924d00000803sv00001924sd00006A06* +- ID_MODEL_FROM_DATABASE=SFN5112F-R6 SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5112F-R6 SFP+ Server Adapter) + + pci:v00001924d00000803sv00001924sd00007206* +- ID_MODEL_FROM_DATABASE=SFN5162F-R6 SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5162F-R6 SFP+ Server Adapter) + + pci:v00001924d00000803sv00001924sd00007207* +- ID_MODEL_FROM_DATABASE=SFN5162F-R7 SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5162F-R7 SFP+ Server Adapter) + + pci:v00001924d00000803sv00001924sd00007A06* +- ID_MODEL_FROM_DATABASE=SFN5152F-R6 SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5152F-R6 SFP+ Server Adapter) + + pci:v00001924d00000803sv00001924sd00007A07* +- ID_MODEL_FROM_DATABASE=SFN5152F-R7 SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9020 [Solarstorm] (SFN5152F-R7 SFP+ Server Adapter) + + pci:v00001924d00000813* + ID_MODEL_FROM_DATABASE=SFL9021 [Solarstorm] + + pci:v00001924d00000813sv00001924sd00006100* +- ID_MODEL_FROM_DATABASE=SFN5121T-R0 10GBASE-T Server Adapter ++ ID_MODEL_FROM_DATABASE=SFL9021 [Solarstorm] (SFN5121T-R0 10GBASE-T Server Adapter) + + pci:v00001924d00000813sv00001924sd00006102* +- ID_MODEL_FROM_DATABASE=SFN5121T-R2 10GBASE-T Server Adapter ++ ID_MODEL_FROM_DATABASE=SFL9021 [Solarstorm] (SFN5121T-R2 10GBASE-T Server Adapter) + + pci:v00001924d00000813sv00001924sd00006103* +- ID_MODEL_FROM_DATABASE=SFN5121T-R3 10GBASE-T Server Adapter ++ ID_MODEL_FROM_DATABASE=SFL9021 [Solarstorm] (SFN5121T-R3 10GBASE-T Server Adapter) + + pci:v00001924d00000813sv00001924sd00006104* +- ID_MODEL_FROM_DATABASE=SFN5121T-R4 10GBASE-T Server Adapter ++ ID_MODEL_FROM_DATABASE=SFL9021 [Solarstorm] (SFN5121T-R4 10GBASE-T Server Adapter) + + pci:v00001924d00000813sv00001924sd00006902* +- ID_MODEL_FROM_DATABASE=SFN5111T-R2 10GBASE-T Server Adapter ++ ID_MODEL_FROM_DATABASE=SFL9021 [Solarstorm] (SFN5111T-R2 10GBASE-T Server Adapter) + + pci:v00001924d00000813sv00001924sd00006904* +- ID_MODEL_FROM_DATABASE=SFN5111T-R4 10GBASE-T Server Adapter ++ ID_MODEL_FROM_DATABASE=SFL9021 [Solarstorm] (SFN5111T-R4 10GBASE-T Server Adapter) + + pci:v00001924d00000813sv00001924sd00007104* +- ID_MODEL_FROM_DATABASE=SFN5161T-R4 10GBASE-T Server Adapter ++ ID_MODEL_FROM_DATABASE=SFL9021 [Solarstorm] (SFN5161T-R4 10GBASE-T Server Adapter) + + pci:v00001924d00000813sv00001924sd00007904* +- ID_MODEL_FROM_DATABASE=SFN5151T-R4 10GBASE-T Server Adapter ++ ID_MODEL_FROM_DATABASE=SFL9021 [Solarstorm] (SFN5151T-R4 10GBASE-T Server Adapter) + + pci:v00001924d00000903* + ID_MODEL_FROM_DATABASE=SFC9120 + + pci:v00001924d00000903sv00001014sd000004CC* +- ID_MODEL_FROM_DATABASE=SFN7122F-R2 2x10GbE SFP+ Flareon Ultra ++ ID_MODEL_FROM_DATABASE=SFC9120 (SFN7122F-R2 2x10GbE SFP+ Flareon Ultra) + + pci:v00001924d00000903sv00001924sd00008002* +- ID_MODEL_FROM_DATABASE=SFN7122F-R1 SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9120 (SFN7122F-R1 SFP+ Server Adapter) + + pci:v00001924d00000903sv00001924sd00008003* +- ID_MODEL_FROM_DATABASE=SFN7x41Q-R1 Flareon Ultra 7000 Series 10/40G Adapter ++ ID_MODEL_FROM_DATABASE=SFC9120 (SFN7x41Q-R1 Flareon Ultra 7000 Series 10/40G Adapter) + + pci:v00001924d00000903sv00001924sd00008006* +- ID_MODEL_FROM_DATABASE=SFN7022F-R1 SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9120 (SFN7022F-R1 SFP+ Server Adapter) + + pci:v00001924d00000903sv00001924sd00008007* +- ID_MODEL_FROM_DATABASE=SFN7322F-R2 Precision Time SFP+ Server Adapter ++ ID_MODEL_FROM_DATABASE=SFC9120 (SFN7322F-R2 Precision Time SFP+ Server Adapter) + + pci:v00001924d00000903sv00001924sd00008009* +- ID_MODEL_FROM_DATABASE=SFN7x22F-R2 Flareon Ultra 7000 Series 10G Adapter ++ ID_MODEL_FROM_DATABASE=SFC9120 (SFN7x22F-R2 Flareon Ultra 7000 Series 10G Adapter) + + pci:v00001924d00000903sv00001924sd0000800A* +- ID_MODEL_FROM_DATABASE=SFN7x02F-R2 Flareon 7000 Series 10G Adapter ++ ID_MODEL_FROM_DATABASE=SFC9120 (SFN7x02F-R2 Flareon 7000 Series 10G Adapter) + + pci:v00001924d00000923* + ID_MODEL_FROM_DATABASE=SFC9140 + + pci:v00001924d00000923sv00001924sd0000800B* +- ID_MODEL_FROM_DATABASE=SFN7x42Q-R1 Flareon Ultra 7000 Series 10/40G Adapter ++ ID_MODEL_FROM_DATABASE=SFC9140 (SFN7x42Q-R1 Flareon Ultra 7000 Series 10/40G Adapter) + + pci:v00001924d00001803* + ID_MODEL_FROM_DATABASE=SFC9020 Virtual Function [Solarstorm] +@@ -51315,40 +51315,40 @@ pci:v00001924d00006703* + ID_MODEL_FROM_DATABASE=SFC4000 rev A iSCSI/Onload [Solarstorm] + + pci:v00001924d00006703sv000010B8sd00000102* +- ID_MODEL_FROM_DATABASE=SMC10GPCIe-10BT (A2) [TigerCard] ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A iSCSI/Onload [Solarstorm] (SMC10GPCIe-10BT (A2) [TigerCard]) + + pci:v00001924d00006703sv000010B8sd00000103* +- ID_MODEL_FROM_DATABASE=SMC10GPCIe-10BT (A3) [TigerCard] ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A iSCSI/Onload [Solarstorm] (SMC10GPCIe-10BT (A3) [TigerCard]) + + pci:v00001924d00006703sv000010B8sd00000201* +- ID_MODEL_FROM_DATABASE=SMC10GPCIe-XFP (A1) [TigerCard] ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A iSCSI/Onload [Solarstorm] (SMC10GPCIe-XFP (A1) [TigerCard]) + + pci:v00001924d00006703sv00001924sd00000101* +- ID_MODEL_FROM_DATABASE=SFE4001-A1 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A iSCSI/Onload [Solarstorm] (SFE4001-A1) + + pci:v00001924d00006703sv00001924sd00000102* +- ID_MODEL_FROM_DATABASE=SFE4001-A2 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A iSCSI/Onload [Solarstorm] (SFE4001-A2) + + pci:v00001924d00006703sv00001924sd00000103* +- ID_MODEL_FROM_DATABASE=SFE4001-A3 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A iSCSI/Onload [Solarstorm] (SFE4001-A3) + + pci:v00001924d00006703sv00001924sd00000201* +- ID_MODEL_FROM_DATABASE=SFE4002-A1 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A iSCSI/Onload [Solarstorm] (SFE4002-A1) + + pci:v00001924d00006703sv00001924sd00000301* +- ID_MODEL_FROM_DATABASE=SFE4003-A1 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A iSCSI/Onload [Solarstorm] (SFE4003-A1) + + pci:v00001924d00006703sv00001924sd00000302* +- ID_MODEL_FROM_DATABASE=SFE4003-A2 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A iSCSI/Onload [Solarstorm] (SFE4003-A2) + + pci:v00001924d00006703sv00001924sd00000303* +- ID_MODEL_FROM_DATABASE=SFE4003-A3 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A iSCSI/Onload [Solarstorm] (SFE4003-A3) + + pci:v00001924d00006703sv00001924sd00000304* +- ID_MODEL_FROM_DATABASE=SFE4003-A4 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A iSCSI/Onload [Solarstorm] (SFE4003-A4) + + pci:v00001924d00006703sv00001924sd00000500* +- ID_MODEL_FROM_DATABASE=SFE4005-A0 ++ ID_MODEL_FROM_DATABASE=SFC4000 rev A iSCSI/Onload [Solarstorm] (SFE4005-A0) + + pci:v00001924d0000C101* + ID_MODEL_FROM_DATABASE=EF1-21022T [EtherFabric] +@@ -51549,13 +51549,13 @@ pci:v00001957d00000084* + ID_MODEL_FROM_DATABASE=MPC8347E PBGA + + pci:v00001957d00000084sv0000110Asd00004074* +- ID_MODEL_FROM_DATABASE=SIMATIC NET CP 1628 ++ ID_MODEL_FROM_DATABASE=MPC8347E PBGA (SIMATIC NET CP 1628) + + pci:v00001957d00000085* + ID_MODEL_FROM_DATABASE=MPC8347 PBGA + + pci:v00001957d00000085sv0000110Asd00004046* +- ID_MODEL_FROM_DATABASE=SIMATIC NET CP 1623 ++ ID_MODEL_FROM_DATABASE=MPC8347 PBGA (SIMATIC NET CP 1623) + + pci:v00001957d00000086* + ID_MODEL_FROM_DATABASE=MPC8343E +@@ -51570,7 +51570,7 @@ pci:v00001957d000000B6* + ID_MODEL_FROM_DATABASE=MPC8314E + + pci:v00001957d000000B6sv00001A56sd00001101* +- ID_MODEL_FROM_DATABASE=Killer Xeno Pro Gigabit Ethernet Controller ++ ID_MODEL_FROM_DATABASE=MPC8314E (Killer Xeno Pro Gigabit Ethernet Controller) + + pci:v00001957d000000C2* + ID_MODEL_FROM_DATABASE=MPC8379E +@@ -51621,7 +51621,7 @@ pci:v00001957d00000111* + ID_MODEL_FROM_DATABASE=P1022 + + pci:v00001957d00000111sv00001C7Fsd00005200* +- ID_MODEL_FROM_DATABASE=EB5200 ++ ID_MODEL_FROM_DATABASE=P1022 (EB5200) + + pci:v00001957d00000118* + ID_MODEL_FROM_DATABASE=P1013E +@@ -51660,7 +51660,7 @@ pci:v00001957d0000C006* + ID_MODEL_FROM_DATABASE=MPC8308 + + pci:v00001957d0000C006sv00001A56sd00001201* +- ID_MODEL_FROM_DATABASE=Killer E2100 Gigabit Ethernet Controller ++ ID_MODEL_FROM_DATABASE=MPC8308 (Killer E2100 Gigabit Ethernet Controller) + + pci:v00001958* + ID_VENDOR_FROM_DATABASE=Faster Technology, LLC. +@@ -51726,13 +51726,13 @@ pci:v00001969d00001026* + ID_MODEL_FROM_DATABASE=AR8121/AR8113/AR8114 Gigabit or Fast Ethernet + + pci:v00001969d00001026sv00001043sd00008304* +- ID_MODEL_FROM_DATABASE=P5KPL-CM Motherboard ++ ID_MODEL_FROM_DATABASE=AR8121/AR8113/AR8114 Gigabit or Fast Ethernet (P5KPL-CM Motherboard) + + pci:v00001969d00001048* + ID_MODEL_FROM_DATABASE=Attansic L1 Gigabit Ethernet + + pci:v00001969d00001048sv00001043sd00008226* +- ID_MODEL_FROM_DATABASE=P5KPL-VM Motherboard ++ ID_MODEL_FROM_DATABASE=Attansic L1 Gigabit Ethernet (P5KPL-VM Motherboard) + + pci:v00001969d00001062* + ID_MODEL_FROM_DATABASE=AR8132 Fast Ethernet +@@ -51741,7 +51741,7 @@ pci:v00001969d00001063* + ID_MODEL_FROM_DATABASE=AR8131 Gigabit Ethernet + + pci:v00001969d00001063sv00001458sd0000E000* +- ID_MODEL_FROM_DATABASE=GA-G31M-ES2L Motherboard ++ ID_MODEL_FROM_DATABASE=AR8131 Gigabit Ethernet (GA-G31M-ES2L Motherboard) + + pci:v00001969d00001066* + ID_MODEL_FROM_DATABASE=Attansic L2c Gigabit Ethernet +@@ -51762,7 +51762,7 @@ pci:v00001969d00001091* + ID_MODEL_FROM_DATABASE=AR8161 Gigabit Ethernet + + pci:v00001969d00001091sv00001043sd00001477* +- ID_MODEL_FROM_DATABASE=N56VZ ++ ID_MODEL_FROM_DATABASE=AR8161 Gigabit Ethernet (N56VZ) + + pci:v00001969d000010A0* + ID_MODEL_FROM_DATABASE=QCA8172 Fast Ethernet +@@ -51804,7 +51804,7 @@ pci:v00001971d00001011* + ID_MODEL_FROM_DATABASE=Physics Processing Unit [PhysX] + + pci:v00001971d00001011sv00001043sd00000001* +- ID_MODEL_FROM_DATABASE=PhysX P1 ++ ID_MODEL_FROM_DATABASE=Physics Processing Unit [PhysX] (PhysX P1) + + pci:v00001974* + ID_VENDOR_FROM_DATABASE=Eberspaecher Electronics +@@ -51834,25 +51834,25 @@ pci:v0000197Bd00002361* + ID_MODEL_FROM_DATABASE=JMB361 AHCI/IDE + + pci:v0000197Bd00002361sv00001462sd00007235* +- ID_MODEL_FROM_DATABASE=P965 Neo MS-7235 mainboard ++ ID_MODEL_FROM_DATABASE=JMB361 AHCI/IDE (P965 Neo MS-7235 mainboard) + + pci:v0000197Bd00002362* + ID_MODEL_FROM_DATABASE=JMB362 SATA Controller + + pci:v0000197Bd00002362sv00001043sd00008460* +- ID_MODEL_FROM_DATABASE=P8P67 Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=JMB362 SATA Controller (P8P67 Deluxe Motherboard) + + pci:v0000197Bd00002363* + ID_MODEL_FROM_DATABASE=JMB363 SATA/IDE Controller + + pci:v0000197Bd00002363sv00001043sd000081E4* +- ID_MODEL_FROM_DATABASE=P5B [JMB363] ++ ID_MODEL_FROM_DATABASE=JMB363 SATA/IDE Controller (P5B [JMB363]) + + pci:v0000197Bd00002363sv00001458sd0000B000* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=JMB363 SATA/IDE Controller (Motherboard) + + pci:v0000197Bd00002363sv00001849sd00002363* +- ID_MODEL_FROM_DATABASE=Motherboard (one of many) ++ ID_MODEL_FROM_DATABASE=JMB363 SATA/IDE Controller (Motherboard (one of many)) + + pci:v0000197Bd00002364* + ID_MODEL_FROM_DATABASE=JMB364 AHCI Controller +@@ -51984,19 +51984,19 @@ pci:v000019A2d00000700* + ID_MODEL_FROM_DATABASE=OneConnect 10Gb NIC + + pci:v000019A2d00000700sv0000103Csd00001747* +- ID_MODEL_FROM_DATABASE=NC550SFP DualPort 10GbE Server Adapter ++ ID_MODEL_FROM_DATABASE=OneConnect 10Gb NIC (NC550SFP DualPort 10GbE Server Adapter) + + pci:v000019A2d00000700sv0000103Csd00001749* +- ID_MODEL_FROM_DATABASE=NC550SFP Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=OneConnect 10Gb NIC (NC550SFP Dual Port Server Adapter) + + pci:v000019A2d00000700sv0000103Csd0000174A* +- ID_MODEL_FROM_DATABASE=NC551m Dual Port FlexFabric 10Gb Adapter ++ ID_MODEL_FROM_DATABASE=OneConnect 10Gb NIC (NC551m Dual Port FlexFabric 10Gb Adapter) + + pci:v000019A2d00000700sv0000103Csd0000174B* +- ID_MODEL_FROM_DATABASE=StorageWorks NC550 DualPort Converged Network Adapter ++ ID_MODEL_FROM_DATABASE=OneConnect 10Gb NIC (StorageWorks NC550 DualPort Converged Network Adapter) + + pci:v000019A2d00000700sv0000103Csd00003314* +- ID_MODEL_FROM_DATABASE=NC551i Dual Port FlexFabric 10Gb Adapter ++ ID_MODEL_FROM_DATABASE=OneConnect 10Gb NIC (NC551i Dual Port FlexFabric 10Gb Adapter) + + pci:v000019A2d00000702* + ID_MODEL_FROM_DATABASE=OneConnect 10Gb iSCSI Initiator +@@ -52008,19 +52008,19 @@ pci:v000019A2d00000710* + ID_MODEL_FROM_DATABASE=OneConnect 10Gb NIC (be3) + + pci:v000019A2d00000710sv0000103Csd00003315* +- ID_MODEL_FROM_DATABASE=NC553i 10Gb 2-port FlexFabric Converged Network Adapter ++ ID_MODEL_FROM_DATABASE=OneConnect 10Gb NIC (be3) (NC553i 10Gb 2-port FlexFabric Converged Network Adapter) + + pci:v000019A2d00000710sv0000103Csd00003340* +- ID_MODEL_FROM_DATABASE=NC552SFP 2-port 10Gb Server Adapter ++ ID_MODEL_FROM_DATABASE=OneConnect 10Gb NIC (be3) (NC552SFP 2-port 10Gb Server Adapter) + + pci:v000019A2d00000710sv0000103Csd00003341* +- ID_MODEL_FROM_DATABASE=NC552m 10Gb 2-port FlexFabric Converged Network Adapter ++ ID_MODEL_FROM_DATABASE=OneConnect 10Gb NIC (be3) (NC552m 10Gb 2-port FlexFabric Converged Network Adapter) + + pci:v000019A2d00000710sv0000103Csd00003345* +- ID_MODEL_FROM_DATABASE=NC553m 10Gb 2-port FlexFabric Converged Network Adapter ++ ID_MODEL_FROM_DATABASE=OneConnect 10Gb NIC (be3) (NC553m 10Gb 2-port FlexFabric Converged Network Adapter) + + pci:v000019A2d00000710sv0000103Csd0000337B* +- ID_MODEL_FROM_DATABASE=NC554FLB 10Gb 2-port FlexFabric Converged Network Adapter ++ ID_MODEL_FROM_DATABASE=OneConnect 10Gb NIC (be3) (NC554FLB 10Gb 2-port FlexFabric Converged Network Adapter) + + pci:v000019A2d00000712* + ID_MODEL_FROM_DATABASE=OneConnect 10Gb iSCSI Initiator (be3) +@@ -52029,10 +52029,10 @@ pci:v000019A2d00000714* + ID_MODEL_FROM_DATABASE=OneConnect 10Gb FCoE Initiator (be3) + + pci:v000019A2d00000714sv0000103Csd00003315* +- ID_MODEL_FROM_DATABASE=NC553i 10Gb 2-port FlexFabric Converged Network Adapter ++ ID_MODEL_FROM_DATABASE=OneConnect 10Gb FCoE Initiator (be3) (NC553i 10Gb 2-port FlexFabric Converged Network Adapter) + + pci:v000019A2d00000714sv0000103Csd0000337B* +- ID_MODEL_FROM_DATABASE=NC554FLB 10Gb 2-port FlexFabric Converged Network Adapter ++ ID_MODEL_FROM_DATABASE=OneConnect 10Gb FCoE Initiator (be3) (NC554FLB 10Gb 2-port FlexFabric Converged Network Adapter) + + pci:v000019A8* + ID_VENDOR_FROM_DATABASE=DAQDATA GmbH +@@ -52332,16 +52332,16 @@ pci:v00001A78d00000031* + ID_MODEL_FROM_DATABASE=Virident FlashMAX Drive + + pci:v00001A78d00000031sv00001A78sd00000034* +- ID_MODEL_FROM_DATABASE=FlashMAX PCIe SSD [rev 3] ++ ID_MODEL_FROM_DATABASE=Virident FlashMAX Drive (FlashMAX PCIe SSD [rev 3]) + + pci:v00001A78d00000031sv00001A78sd00000037* +- ID_MODEL_FROM_DATABASE=FlashMAX PCIe SSD [rev 3D] ++ ID_MODEL_FROM_DATABASE=Virident FlashMAX Drive (FlashMAX PCIe SSD [rev 3D]) + + pci:v00001A78d00000031sv00001A78sd00000038* +- ID_MODEL_FROM_DATABASE=FlashMAX PCIe SSD [rev 4] ++ ID_MODEL_FROM_DATABASE=Virident FlashMAX Drive (FlashMAX PCIe SSD [rev 4]) + + pci:v00001A78d00000031sv00001A78sd00000039* +- ID_MODEL_FROM_DATABASE=FlashMAX PCIe SSD [rev 4D] ++ ID_MODEL_FROM_DATABASE=Virident FlashMAX Drive (FlashMAX PCIe SSD [rev 4D]) + + pci:v00001A78d00000040* + ID_MODEL_FROM_DATABASE=FlashMAX II +@@ -52479,25 +52479,25 @@ pci:v00001AEDd00001005* + ID_MODEL_FROM_DATABASE=ioDimm3 + + pci:v00001AEDd00001005sv00001014sd000003C3* +- ID_MODEL_FROM_DATABASE=High IOPS SSD PCIe Adapter ++ ID_MODEL_FROM_DATABASE=ioDimm3 (High IOPS SSD PCIe Adapter) + + pci:v00001AEDd00001005sv0000103Csd0000176F* +- ID_MODEL_FROM_DATABASE=1.28TB MLC PCIe ioDrive Duo ++ ID_MODEL_FROM_DATABASE=ioDimm3 (1.28TB MLC PCIe ioDrive Duo) + + pci:v00001AEDd00001005sv0000103Csd00001770* +- ID_MODEL_FROM_DATABASE=5.2TB MLC PCIe ioDrive Octal ++ ID_MODEL_FROM_DATABASE=ioDimm3 (5.2TB MLC PCIe ioDrive Octal) + + pci:v00001AEDd00001005sv0000103Csd0000178B* +- ID_MODEL_FROM_DATABASE=160GB SLC PCIe ioDrive ++ ID_MODEL_FROM_DATABASE=ioDimm3 (160GB SLC PCIe ioDrive) + + pci:v00001AEDd00001005sv0000103Csd0000178C* +- ID_MODEL_FROM_DATABASE=320GB MLC PCIe ioDrive ++ ID_MODEL_FROM_DATABASE=ioDimm3 (320GB MLC PCIe ioDrive) + + pci:v00001AEDd00001005sv0000103Csd0000178D* +- ID_MODEL_FROM_DATABASE=320GB SLC PCIe ioDrive Duo ++ ID_MODEL_FROM_DATABASE=ioDimm3 (320GB SLC PCIe ioDrive Duo) + + pci:v00001AEDd00001005sv0000103Csd0000178E* +- ID_MODEL_FROM_DATABASE=640GB MLC PCIe ioDrive Duo ++ ID_MODEL_FROM_DATABASE=ioDimm3 (640GB MLC PCIe ioDrive Duo) + + pci:v00001AEDd00001006* + ID_MODEL_FROM_DATABASE=ioXtreme +@@ -52548,7 +52548,7 @@ pci:v00001AF4d00001110* + ID_MODEL_FROM_DATABASE=Inter-VM shared memory + + pci:v00001AF4d00001110sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=Inter-VM shared memory (QEMU Virtual Machine) + + pci:v00001AF5* + ID_VENDOR_FROM_DATABASE=Netezza Corp. +@@ -52587,22 +52587,22 @@ pci:v00001B21d00000612* + ID_MODEL_FROM_DATABASE=ASM1062 Serial ATA Controller + + pci:v00001B21d00000612sv00001849sd00000612* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=ASM1062 Serial ATA Controller (Motherboard) + + pci:v00001B21d00001042* + ID_MODEL_FROM_DATABASE=ASM1042 SuperSpeed USB Host Controller + + pci:v00001B21d00001042sv00001043sd00008488* +- ID_MODEL_FROM_DATABASE=P8B WS Motherboard ++ ID_MODEL_FROM_DATABASE=ASM1042 SuperSpeed USB Host Controller (P8B WS Motherboard) + + pci:v00001B21d00001042sv00001849sd00001042* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=ASM1042 SuperSpeed USB Host Controller (Motherboard) + + pci:v00001B21d00001080* + ID_MODEL_FROM_DATABASE=ASM1083/1085 PCIe to PCI Bridge + + pci:v00001B21d00001080sv00001849sd00001080* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=ASM1083/1085 PCIe to PCI Bridge (Motherboard) + + pci:v00001B2C* + ID_VENDOR_FROM_DATABASE=Opal-RT Technologies Inc. +@@ -52617,31 +52617,31 @@ pci:v00001B36d00000002* + ID_MODEL_FROM_DATABASE=QEMU PCI 16550A Adapter + + pci:v00001B36d00000002sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=QEMU PCI 16550A Adapter (QEMU Virtual Machine) + + pci:v00001B36d00000003* + ID_MODEL_FROM_DATABASE=QEMU PCI Dual-port 16550A Adapter + + pci:v00001B36d00000003sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=QEMU PCI Dual-port 16550A Adapter (QEMU Virtual Machine) + + pci:v00001B36d00000004* + ID_MODEL_FROM_DATABASE=QEMU PCI Quad-port 16550A Adapter + + pci:v00001B36d00000004sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=QEMU PCI Quad-port 16550A Adapter (QEMU Virtual Machine) + + pci:v00001B36d00000005* + ID_MODEL_FROM_DATABASE=QEMU PCI Test Device + + pci:v00001B36d00000005sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=QEMU PCI Test Device (QEMU Virtual Machine) + + pci:v00001B36d00000100* + ID_MODEL_FROM_DATABASE=QXL paravirtual graphic card + + pci:v00001B36d00000100sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=QXL paravirtual graphic card (QEMU Virtual Machine) + + pci:v00001B37* + ID_VENDOR_FROM_DATABASE=Signal Processing Devices Sweden AB +@@ -52662,10 +52662,10 @@ pci:v00001B3Ed00001FA8* + ID_MODEL_FROM_DATABASE=BYNET BIC2SE/X + + pci:v00001B3Ed00001FA8sv00001B3Esd000000A3* +- ID_MODEL_FROM_DATABASE=BYNET BIC2SX ++ ID_MODEL_FROM_DATABASE=BYNET BIC2SE/X (BYNET BIC2SX) + + pci:v00001B3Ed00001FA8sv00001B3Esd000000C3* +- ID_MODEL_FROM_DATABASE=BYNET BIC2SE ++ ID_MODEL_FROM_DATABASE=BYNET BIC2SE/X (BYNET BIC2SE) + + pci:v00001B40* + ID_VENDOR_FROM_DATABASE=Schooner Information Technology, Inc. +@@ -52701,7 +52701,7 @@ pci:v00001B4Bd00009130* + ID_MODEL_FROM_DATABASE=88SE9128 PCIe SATA 6 Gb/s RAID controller with HyperDuo + + pci:v00001B4Bd00009130sv00001043sd00008438* +- ID_MODEL_FROM_DATABASE=P8P67 Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=88SE9128 PCIe SATA 6 Gb/s RAID controller with HyperDuo (P8P67 Deluxe Motherboard) + + pci:v00001B4Bd00009172* + ID_MODEL_FROM_DATABASE=88SE9172 SATA 6Gb/s Controller +@@ -52767,7 +52767,7 @@ pci:v00001B73d00001000* + ID_MODEL_FROM_DATABASE=FL1000G USB 3.0 Host Controller + + pci:v00001B73d00001000sv00001D5Csd00001000* +- ID_MODEL_FROM_DATABASE=Anker USB 3.0 Express Card ++ ID_MODEL_FROM_DATABASE=FL1000G USB 3.0 Host Controller (Anker USB 3.0 Express Card) + + pci:v00001B73d00001009* + ID_MODEL_FROM_DATABASE=FL1009 USB 3.0 Host Controller +@@ -53010,67 +53010,67 @@ pci:v00001FC9d00003010* + ID_MODEL_FROM_DATABASE=10-Giga TOE SmartNIC + + pci:v00001FC9d00003010sv00000000sd00003002* +- ID_MODEL_FROM_DATABASE=10-Giga TOE Single Port XFP SmartNIC ++ ID_MODEL_FROM_DATABASE=10-Giga TOE SmartNIC (10-Giga TOE Single Port XFP SmartNIC) + + pci:v00001FC9d00003010sv00000000sd00003004* +- ID_MODEL_FROM_DATABASE=10-Giga TOE Single Port SFP+ SmartNIC ++ ID_MODEL_FROM_DATABASE=10-Giga TOE SmartNIC (10-Giga TOE Single Port SFP+ SmartNIC) + + pci:v00001FC9d00003010sv00000000sd00003008* +- ID_MODEL_FROM_DATABASE=10-Giga TOE Single Port CX4 SmartNIC ++ ID_MODEL_FROM_DATABASE=10-Giga TOE SmartNIC (10-Giga TOE Single Port CX4 SmartNIC) + + pci:v00001FC9d00003014* + ID_MODEL_FROM_DATABASE=10-Giga TOE SmartNIC 2-Port + + pci:v00001FC9d00003014sv00000000sd00003003* +- ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port XFP Low Profile SmartNIC ++ ID_MODEL_FROM_DATABASE=10-Giga TOE SmartNIC 2-Port (10-Giga TOE Dual Port XFP Low Profile SmartNIC) + + pci:v00001FC9d00003014sv00000000sd00003005* +- ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port SFP+ Low Profile SmartNIC ++ ID_MODEL_FROM_DATABASE=10-Giga TOE SmartNIC 2-Port (10-Giga TOE Dual Port SFP+ Low Profile SmartNIC) + + pci:v00001FC9d00003014sv00000000sd00003014* +- ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port CX4 Low Profile SmartNIC ++ ID_MODEL_FROM_DATABASE=10-Giga TOE SmartNIC 2-Port (10-Giga TOE Dual Port CX4 Low Profile SmartNIC) + + pci:v00001FC9d00003110* + ID_MODEL_FROM_DATABASE=10-Giga TOE Single Port SmartNIC + + pci:v00001FC9d00003110sv00000000sd00003004* +- ID_MODEL_FROM_DATABASE=10-Giga TOE Single Port SFP+ SmartNIC ++ ID_MODEL_FROM_DATABASE=10-Giga TOE Single Port SmartNIC (10-Giga TOE Single Port SFP+ SmartNIC) + + pci:v00001FC9d00003114* + ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port Low Profile SmartNIC + + pci:v00001FC9d00003114sv00000000sd00003005* +- ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port SFP+ Low Profile SmartNIC ++ ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port Low Profile SmartNIC (10-Giga TOE Dual Port SFP+ Low Profile SmartNIC) + + pci:v00001FC9d00003114sv00000000sd00003011* +- ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port SFP+/CX4 Low Profile SmartNIC ++ ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port Low Profile SmartNIC (10-Giga TOE Dual Port SFP+/CX4 Low Profile SmartNIC) + + pci:v00001FC9d00003114sv00000000sd00003012* +- ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port CX4/SFP+ Low Profile SmartNIC ++ ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port Low Profile SmartNIC (10-Giga TOE Dual Port CX4/SFP+ Low Profile SmartNIC) + + pci:v00001FC9d00003114sv00000000sd00003014* +- ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port CX4 Low Profile SmartNIC ++ ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port Low Profile SmartNIC (10-Giga TOE Dual Port CX4 Low Profile SmartNIC) + + pci:v00001FC9d00003310* + ID_MODEL_FROM_DATABASE=10-Giga TOE SFP+ Single Port SmartNIC + + pci:v00001FC9d00003310sv00000000sd00003004* +- ID_MODEL_FROM_DATABASE=10-Giga TOE Single Port SFP+ SmartNIC ++ ID_MODEL_FROM_DATABASE=10-Giga TOE SFP+ Single Port SmartNIC (10-Giga TOE Single Port SFP+ SmartNIC) + + pci:v00001FC9d00003314* + ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port Low Profile SmartNIC + + pci:v00001FC9d00003314sv00000000sd00003005* +- ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port SFP+ Low Profile SmartNIC ++ ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port Low Profile SmartNIC (10-Giga TOE Dual Port SFP+ Low Profile SmartNIC) + + pci:v00001FC9d00003314sv00000000sd00003011* +- ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port SFP+/CX4 Low Profile SmartNIC ++ ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port Low Profile SmartNIC (10-Giga TOE Dual Port SFP+/CX4 Low Profile SmartNIC) + + pci:v00001FC9d00003314sv00000000sd00003012* +- ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port CX4/SFP+ Low Profile SmartNIC ++ ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port Low Profile SmartNIC (10-Giga TOE Dual Port CX4/SFP+ Low Profile SmartNIC) + + pci:v00001FC9d00003314sv00000000sd00003014* +- ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port CX4 Low Profile SmartNIC ++ ID_MODEL_FROM_DATABASE=10-Giga TOE Dual Port Low Profile SmartNIC (10-Giga TOE Dual Port CX4 Low Profile SmartNIC) + + pci:v00001FCE* + ID_VENDOR_FROM_DATABASE=Cognio Inc. +@@ -53172,31 +53172,31 @@ pci:v00003388d00000021* + ID_MODEL_FROM_DATABASE=HB6 Universal PCI-PCI bridge (non-transparent mode) + + pci:v00003388d00000021sv00001775sd0000C200* +- ID_MODEL_FROM_DATABASE=C2K CompactPCI interface bridge ++ ID_MODEL_FROM_DATABASE=HB6 Universal PCI-PCI bridge (non-transparent mode) (C2K CompactPCI interface bridge) + + pci:v00003388d00000021sv00001775sd0000CE90* +- ID_MODEL_FROM_DATABASE=CE9 ++ ID_MODEL_FROM_DATABASE=HB6 Universal PCI-PCI bridge (non-transparent mode) (CE9) + + pci:v00003388d00000021sv00004C53sd00001050* +- ID_MODEL_FROM_DATABASE=CT7 mainboard ++ ID_MODEL_FROM_DATABASE=HB6 Universal PCI-PCI bridge (non-transparent mode) (CT7 mainboard) + + pci:v00003388d00000021sv00004C53sd00001080* +- ID_MODEL_FROM_DATABASE=CT8 mainboard ++ ID_MODEL_FROM_DATABASE=HB6 Universal PCI-PCI bridge (non-transparent mode) (CT8 mainboard) + + pci:v00003388d00000021sv00004C53sd00001090* +- ID_MODEL_FROM_DATABASE=Cx9 mainboard ++ ID_MODEL_FROM_DATABASE=HB6 Universal PCI-PCI bridge (non-transparent mode) (Cx9 mainboard) + + pci:v00003388d00000021sv00004C53sd000010A0* +- ID_MODEL_FROM_DATABASE=CA3/CR3 mainboard ++ ID_MODEL_FROM_DATABASE=HB6 Universal PCI-PCI bridge (non-transparent mode) (CA3/CR3 mainboard) + + pci:v00003388d00000021sv00004C53sd00003010* +- ID_MODEL_FROM_DATABASE=PPCI mezzanine (32-bit PMC) ++ ID_MODEL_FROM_DATABASE=HB6 Universal PCI-PCI bridge (non-transparent mode) (PPCI mezzanine (32-bit PMC)) + + pci:v00003388d00000021sv00004C53sd00003011* +- ID_MODEL_FROM_DATABASE=PPCI mezzanine (64-bit PMC) ++ ID_MODEL_FROM_DATABASE=HB6 Universal PCI-PCI bridge (non-transparent mode) (PPCI mezzanine (64-bit PMC)) + + pci:v00003388d00000021sv00004C53sd00004000* +- ID_MODEL_FROM_DATABASE=PMCCARR1 carrier board ++ ID_MODEL_FROM_DATABASE=HB6 Universal PCI-PCI bridge (non-transparent mode) (PMCCARR1 carrier board) + + pci:v00003388d00000022* + ID_MODEL_FROM_DATABASE=HiNT HB4 PCI-PCI Bridge (PCI6150) +@@ -53220,19 +53220,19 @@ pci:v00003388d00008011* + ID_MODEL_FROM_DATABASE=VXPro II Chipset + + pci:v00003388d00008011sv00003388sd00008011* +- ID_MODEL_FROM_DATABASE=VXPro II Chipset CPU to PCI Bridge ++ ID_MODEL_FROM_DATABASE=VXPro II Chipset (CPU to PCI Bridge) + + pci:v00003388d00008012* + ID_MODEL_FROM_DATABASE=VXPro II Chipset + + pci:v00003388d00008012sv00003388sd00008012* +- ID_MODEL_FROM_DATABASE=VXPro II Chipset PCI to ISA Bridge ++ ID_MODEL_FROM_DATABASE=VXPro II Chipset (PCI to ISA Bridge) + + pci:v00003388d00008013* + ID_MODEL_FROM_DATABASE=VXPro II IDE + + pci:v00003388d00008013sv00003388sd00008013* +- ID_MODEL_FROM_DATABASE=VXPro II Chipset EIDE Controller ++ ID_MODEL_FROM_DATABASE=VXPro II IDE (VXPro II Chipset EIDE Controller) + + pci:v00003388d0000A103* + ID_MODEL_FROM_DATABASE=Blackmagic Design DeckLink HD Pro +@@ -53277,13 +53277,13 @@ pci:v00003D3Dd00000002* + ID_MODEL_FROM_DATABASE=GLINT 500TX + + pci:v00003D3Dd00000002sv00000000sd00000000* +- ID_MODEL_FROM_DATABASE=GLoria L ++ ID_MODEL_FROM_DATABASE=GLINT 500TX (GLoria L) + + pci:v00003D3Dd00000003* + ID_MODEL_FROM_DATABASE=GLINT Delta + + pci:v00003D3Dd00000003sv00000000sd00000000* +- ID_MODEL_FROM_DATABASE=GLoria XL ++ ID_MODEL_FROM_DATABASE=GLINT Delta (GLoria XL) + + pci:v00003D3Dd00000004* + ID_MODEL_FROM_DATABASE=Permedia +@@ -53295,10 +53295,10 @@ pci:v00003D3Dd00000006* + ID_MODEL_FROM_DATABASE=GLINT MX + + pci:v00003D3Dd00000006sv00000000sd00000000* +- ID_MODEL_FROM_DATABASE=GLoria XL ++ ID_MODEL_FROM_DATABASE=GLINT MX (GLoria XL) + + pci:v00003D3Dd00000006sv00001048sd00000A42* +- ID_MODEL_FROM_DATABASE=GLoria XXL ++ ID_MODEL_FROM_DATABASE=GLINT MX (GLoria XXL) + + pci:v00003D3Dd00000007* + ID_MODEL_FROM_DATABASE=3D Extreme +@@ -53307,55 +53307,55 @@ pci:v00003D3Dd00000008* + ID_MODEL_FROM_DATABASE=GLINT Gamma G1 + + pci:v00003D3Dd00000008sv00001048sd00000A42* +- ID_MODEL_FROM_DATABASE=GLoria XXL ++ ID_MODEL_FROM_DATABASE=GLINT Gamma G1 (GLoria XXL) + + pci:v00003D3Dd00000009* + ID_MODEL_FROM_DATABASE=Permedia II 2D+3D + + pci:v00003D3Dd00000009sv00001040sd00000011* +- ID_MODEL_FROM_DATABASE=AccelStar II ++ ID_MODEL_FROM_DATABASE=Permedia II 2D+3D (AccelStar II) + + pci:v00003D3Dd00000009sv00001048sd00000A42* +- ID_MODEL_FROM_DATABASE=GLoria XXL ++ ID_MODEL_FROM_DATABASE=Permedia II 2D+3D (GLoria XXL) + + pci:v00003D3Dd00000009sv000013E9sd00001000* +- ID_MODEL_FROM_DATABASE=6221L-4U ++ ID_MODEL_FROM_DATABASE=Permedia II 2D+3D (6221L-4U) + + pci:v00003D3Dd00000009sv00003D3Dsd00000100* +- ID_MODEL_FROM_DATABASE=AccelStar II 3D Accelerator ++ ID_MODEL_FROM_DATABASE=Permedia II 2D+3D (AccelStar II 3D Accelerator) + + pci:v00003D3Dd00000009sv00003D3Dsd00000111* +- ID_MODEL_FROM_DATABASE=Permedia 3:16 ++ ID_MODEL_FROM_DATABASE=Permedia II 2D+3D (Permedia 3:16) + + pci:v00003D3Dd00000009sv00003D3Dsd00000114* +- ID_MODEL_FROM_DATABASE=Santa Ana ++ ID_MODEL_FROM_DATABASE=Permedia II 2D+3D (Santa Ana) + + pci:v00003D3Dd00000009sv00003D3Dsd00000116* +- ID_MODEL_FROM_DATABASE=Oxygen GVX1 ++ ID_MODEL_FROM_DATABASE=Permedia II 2D+3D (Oxygen GVX1) + + pci:v00003D3Dd00000009sv00003D3Dsd00000119* +- ID_MODEL_FROM_DATABASE=Scirocco ++ ID_MODEL_FROM_DATABASE=Permedia II 2D+3D (Scirocco) + + pci:v00003D3Dd00000009sv00003D3Dsd00000120* +- ID_MODEL_FROM_DATABASE=Santa Ana PCL ++ ID_MODEL_FROM_DATABASE=Permedia II 2D+3D (Santa Ana PCL) + + pci:v00003D3Dd00000009sv00003D3Dsd00000125* +- ID_MODEL_FROM_DATABASE=Oxygen VX1 ++ ID_MODEL_FROM_DATABASE=Permedia II 2D+3D (Oxygen VX1) + + pci:v00003D3Dd00000009sv00003D3Dsd00000127* +- ID_MODEL_FROM_DATABASE=Permedia3 Create! ++ ID_MODEL_FROM_DATABASE=Permedia II 2D+3D (Permedia3 Create!) + + pci:v00003D3Dd0000000A* + ID_MODEL_FROM_DATABASE=GLINT R3 + + pci:v00003D3Dd0000000Asv00003D3Dsd00000121* +- ID_MODEL_FROM_DATABASE=Oxygen VX1 ++ ID_MODEL_FROM_DATABASE=GLINT R3 (Oxygen VX1) + + pci:v00003D3Dd0000000C* + ID_MODEL_FROM_DATABASE=GLINT R3 [Oxygen VX1] + + pci:v00003D3Dd0000000Csv00003D3Dsd00000144* +- ID_MODEL_FROM_DATABASE=Oxygen VX1-4X AGP [Permedia 4] ++ ID_MODEL_FROM_DATABASE=GLINT R3 [Oxygen VX1] (Oxygen VX1-4X AGP [Permedia 4]) + + pci:v00003D3Dd0000000D* + ID_MODEL_FROM_DATABASE=GLint R4 rev A +@@ -53472,13 +53472,13 @@ pci:v00004040d00000001* + ID_MODEL_FROM_DATABASE=NXB-10GXSR 10-Gigabit Ethernet PCIe Adapter with SR-XFP optical interface + + pci:v00004040d00000001sv0000103Csd00007047* +- ID_MODEL_FROM_DATABASE=NC510F PCIe 10-Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NXB-10GXSR 10-Gigabit Ethernet PCIe Adapter with SR-XFP optical interface (NC510F PCIe 10-Gigabit Server Adapter) + + pci:v00004040d00000002* + ID_MODEL_FROM_DATABASE=NXB-10GCX4 10-Gigabit Ethernet PCIe Adapter with CX4 copper interface + + pci:v00004040d00000002sv0000103Csd00007048* +- ID_MODEL_FROM_DATABASE=NC510c PCIe 10-Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NXB-10GCX4 10-Gigabit Ethernet PCIe Adapter with CX4 copper interface (NC510c PCIe 10-Gigabit Server Adapter) + + pci:v00004040d00000003* + ID_MODEL_FROM_DATABASE=NXB-4GCU Quad Gigabit Ethernet PCIe Adapter with 1000-BASE-T interface +@@ -53490,7 +53490,7 @@ pci:v00004040d00000005* + ID_MODEL_FROM_DATABASE=NetXen Dual Port 10GbE Multifunction Adapter for c-Class + + pci:v00004040d00000005sv0000103Csd0000170E* +- ID_MODEL_FROM_DATABASE=NC512m Dual Port 10GbE Multifunction BL-C Adapter ++ ID_MODEL_FROM_DATABASE=NetXen Dual Port 10GbE Multifunction Adapter for c-Class (NC512m Dual Port 10GbE Multifunction BL-C Adapter) + + pci:v00004040d00000024* + ID_MODEL_FROM_DATABASE=XG Mgmt +@@ -53502,28 +53502,28 @@ pci:v00004040d00000100* + ID_MODEL_FROM_DATABASE=NX3031 Multifunction 1/10-Gigabit Server Adapter + + pci:v00004040d00000100sv0000103Csd0000171B* +- ID_MODEL_FROM_DATABASE=NC522m Dual Port 10GbE Multifunction BL-c Adapter ++ ID_MODEL_FROM_DATABASE=NX3031 Multifunction 1/10-Gigabit Server Adapter (NC522m Dual Port 10GbE Multifunction BL-c Adapter) + + pci:v00004040d00000100sv0000103Csd00001740* +- ID_MODEL_FROM_DATABASE=NC375T PCI Express Quad Port Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NX3031 Multifunction 1/10-Gigabit Server Adapter (NC375T PCI Express Quad Port Gigabit Server Adapter) + + pci:v00004040d00000100sv0000103Csd00003251* +- ID_MODEL_FROM_DATABASE=NC375i 1G w/NC524SFP 10G Module ++ ID_MODEL_FROM_DATABASE=NX3031 Multifunction 1/10-Gigabit Server Adapter (NC375i 1G w/NC524SFP 10G Module) + + pci:v00004040d00000100sv0000103Csd0000705A* +- ID_MODEL_FROM_DATABASE=NC375i Integrated Quad Port Multifunction Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NX3031 Multifunction 1/10-Gigabit Server Adapter (NC375i Integrated Quad Port Multifunction Gigabit Server Adapter) + + pci:v00004040d00000100sv0000103Csd0000705B* +- ID_MODEL_FROM_DATABASE=NC522SFP Dual Port 10GbE Server Adapter ++ ID_MODEL_FROM_DATABASE=NX3031 Multifunction 1/10-Gigabit Server Adapter (NC522SFP Dual Port 10GbE Server Adapter) + + pci:v00004040d00000100sv0000152Dsd0000896B* +- ID_MODEL_FROM_DATABASE=TG20 Dual Port 10GbE Server/Storage Adapter ++ ID_MODEL_FROM_DATABASE=NX3031 Multifunction 1/10-Gigabit Server Adapter (TG20 Dual Port 10GbE Server/Storage Adapter) + + pci:v00004040d00000100sv00004040sd00000124* +- ID_MODEL_FROM_DATABASE=NX3031 Quad Port Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=NX3031 Multifunction 1/10-Gigabit Server Adapter (NX3031 Quad Port Gigabit Server Adapter) + + pci:v00004040d00000100sv00004040sd00000126* +- ID_MODEL_FROM_DATABASE=Dual Port SFP+ 10GbE Server Adapter ++ ID_MODEL_FROM_DATABASE=NX3031 Multifunction 1/10-Gigabit Server Adapter (Dual Port SFP+ 10GbE Server Adapter) + + pci:v00004143* + ID_VENDOR_FROM_DATABASE=Digital Equipment Corp +@@ -53571,190 +53571,190 @@ pci:v00004444d00000016* + ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder + + pci:v00004444d00000016sv00000070sd00000003* +- ID_MODEL_FROM_DATABASE=WinTV PVR 250 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (WinTV PVR 250) + + pci:v00004444d00000016sv00000070sd00000009* +- ID_MODEL_FROM_DATABASE=WinTV PVR 150 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (WinTV PVR 150) + + pci:v00004444d00000016sv00000070sd00000801* +- ID_MODEL_FROM_DATABASE=WinTV PVR 150 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (WinTV PVR 150) + + pci:v00004444d00000016sv00000070sd00000807* +- ID_MODEL_FROM_DATABASE=WinTV PVR 150 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (WinTV PVR 150) + + pci:v00004444d00000016sv00000070sd00004001* +- ID_MODEL_FROM_DATABASE=WinTV PVR 250 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (WinTV PVR 250) + + pci:v00004444d00000016sv00000070sd00004009* +- ID_MODEL_FROM_DATABASE=WinTV PVR 250 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (WinTV PVR 250) + + pci:v00004444d00000016sv00000070sd00004801* +- ID_MODEL_FROM_DATABASE=WinTV PVR 250 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (WinTV PVR 250) + + pci:v00004444d00000016sv00000070sd00004803* +- ID_MODEL_FROM_DATABASE=WinTV PVR 250 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (WinTV PVR 250) + + pci:v00004444d00000016sv00000070sd00008003* +- ID_MODEL_FROM_DATABASE=WinTV PVR 150 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (WinTV PVR 150) + + pci:v00004444d00000016sv00000070sd00008801* +- ID_MODEL_FROM_DATABASE=WinTV PVR 150 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (WinTV PVR 150) + + pci:v00004444d00000016sv00000070sd0000C801* +- ID_MODEL_FROM_DATABASE=WinTV PVR 150 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (WinTV PVR 150) + + pci:v00004444d00000016sv00000070sd0000E807* +- ID_MODEL_FROM_DATABASE=WinTV PVR 500 (1st unit) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (WinTV PVR 500 (1st unit)) + + pci:v00004444d00000016sv00000070sd0000E817* +- ID_MODEL_FROM_DATABASE=WinTV PVR 500 (2nd unit) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (WinTV PVR 500 (2nd unit)) + + pci:v00004444d00000016sv00000070sd0000FF92* +- ID_MODEL_FROM_DATABASE=WiNTV PVR-550 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (WiNTV PVR-550) + + pci:v00004444d00000016sv00000270sd00000801* +- ID_MODEL_FROM_DATABASE=WinTV PVR 150 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (WinTV PVR 150) + + pci:v00004444d00000016sv0000104Dsd0000013D* +- ID_MODEL_FROM_DATABASE=ENX-26 TV Encoder ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (ENX-26 TV Encoder) + + pci:v00004444d00000016sv000010FCsd0000D038* +- ID_MODEL_FROM_DATABASE=GV-MVP/RX2W (1st unit) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (GV-MVP/RX2W (1st unit)) + + pci:v00004444d00000016sv000010FCsd0000D039* +- ID_MODEL_FROM_DATABASE=GV-MVP/RX2W (2nd unit) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (GV-MVP/RX2W (2nd unit)) + + pci:v00004444d00000016sv000012ABsd0000FFF3* +- ID_MODEL_FROM_DATABASE=MPG600 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (MPG600) + + pci:v00004444d00000016sv000012ABsd0000FFFF* +- ID_MODEL_FROM_DATABASE=MPG600 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (MPG600) + + pci:v00004444d00000016sv00001461sd0000C00A* +- ID_MODEL_FROM_DATABASE=M113 PCI Analog TV (PAL/SECAM, Philips FQ1216MK3 tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M113 PCI Analog TV (PAL/SECAM, Philips FQ1216MK3 tuner)) + + pci:v00004444d00000016sv00001461sd0000C00B* +- ID_MODEL_FROM_DATABASE=M113 PCI Analog TV (PAL/SECAM+FM, Philips FM1216MK3 tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M113 PCI Analog TV (PAL/SECAM+FM, Philips FM1216MK3 tuner)) + + pci:v00004444d00000016sv00001461sd0000C00C* +- ID_MODEL_FROM_DATABASE=M113 PCI Analog TV (NTSC, JAPAN version, Philips FI1286MK2 tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M113 PCI Analog TV (NTSC, JAPAN version, Philips FI1286MK2 tuner)) + + pci:v00004444d00000016sv00001461sd0000C010* +- ID_MODEL_FROM_DATABASE=M113 PCI Analog TV (NTSC, Philips FI1236MK3 tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M113 PCI Analog TV (NTSC, Philips FI1236MK3 tuner)) + + pci:v00004444d00000016sv00001461sd0000C011* +- ID_MODEL_FROM_DATABASE=M113 PCI Analog TV (NTSC+FM, Philips FM1236MK3 tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M113 PCI Analog TV (NTSC+FM, Philips FM1236MK3 tuner)) + + pci:v00004444d00000016sv00001461sd0000C018* +- ID_MODEL_FROM_DATABASE=M113 PCI Analog TV (NTSC, Philips FQ1236MK5 tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M113 PCI Analog TV (NTSC, Philips FQ1236MK5 tuner)) + + pci:v00004444d00000016sv00001461sd0000C019* +- ID_MODEL_FROM_DATABASE=UltraTV 1500 MCE, a.k.a. M113 PCI Analog TV (NTSC+FM, Philips FQ1236MK5 tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (UltraTV 1500 MCE, a.k.a. M113 PCI Analog TV (NTSC+FM, Philips FQ1236MK5 tuner)) + + pci:v00004444d00000016sv00001461sd0000C01A* +- ID_MODEL_FROM_DATABASE=M113 PCI Analog TV (PAL/SECAM, Philips FQ1216MK5 tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M113 PCI Analog TV (PAL/SECAM, Philips FQ1216MK5 tuner)) + + pci:v00004444d00000016sv00001461sd0000C01B* +- ID_MODEL_FROM_DATABASE=M113 PCI Analog TV (PAL/SECAM+FM, Philips FM1216MK5 tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M113 PCI Analog TV (PAL/SECAM+FM, Philips FM1216MK5 tuner)) + + pci:v00004444d00000016sv00001461sd0000C030* +- ID_MODEL_FROM_DATABASE=M113 PCI Analog TV (NTSC-J, Partsnic tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M113 PCI Analog TV (NTSC-J, Partsnic tuner)) + + pci:v00004444d00000016sv00001461sd0000C031* +- ID_MODEL_FROM_DATABASE=M113 PCI Analog TV (NTSC-J+FM, Partsnic tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M113 PCI Analog TV (NTSC-J+FM, Partsnic tuner)) + + pci:v00004444d00000016sv00001461sd0000C032* +- ID_MODEL_FROM_DATABASE=M113 PCI Analog TV (PAL/SECAM, Partsnic tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M113 PCI Analog TV (PAL/SECAM, Partsnic tuner)) + + pci:v00004444d00000016sv00001461sd0000C033* +- ID_MODEL_FROM_DATABASE=M113 PCI Analog TV (PAL/SECAM+FM, Partsnic tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M113 PCI Analog TV (PAL/SECAM+FM, Partsnic tuner)) + + pci:v00004444d00000016sv00001461sd0000C034* +- ID_MODEL_FROM_DATABASE=M113 PCI Analog TV (NTSC, Partsnic tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M113 PCI Analog TV (NTSC, Partsnic tuner)) + + pci:v00004444d00000016sv00001461sd0000C035* +- ID_MODEL_FROM_DATABASE=M113 PCI Analog TV (NTSC+FM, Partsnic tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M113 PCI Analog TV (NTSC+FM, Partsnic tuner)) + + pci:v00004444d00000016sv00001461sd0000C03F* +- ID_MODEL_FROM_DATABASE=C115 PCI video capture card (no tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (C115 PCI video capture card (no tuner)) + + pci:v00004444d00000016sv00001461sd0000C136* +- ID_MODEL_FROM_DATABASE=M104 mini-PCI Analog TV ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M104 mini-PCI Analog TV) + + pci:v00004444d00000016sv00001461sd0000C20A* +- ID_MODEL_FROM_DATABASE=M755 AVerTV Video Capture (PAL/SECAM, Philips FQ1216MK3 tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M755 AVerTV Video Capture (PAL/SECAM, Philips FQ1216MK3 tuner)) + + pci:v00004444d00000016sv00001461sd0000C218* +- ID_MODEL_FROM_DATABASE=M755 AVerTV Video Capture (NTSC, Philips FQ1236MK5 tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M755 AVerTV Video Capture (NTSC, Philips FQ1236MK5 tuner)) + + pci:v00004444d00000016sv00001461sd0000C219* +- ID_MODEL_FROM_DATABASE=M755 AVerTV Video Capture (NTSC+FM, Philips FQ1236MK5 tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M755 AVerTV Video Capture (NTSC+FM, Philips FQ1236MK5 tuner)) + + pci:v00004444d00000016sv00001461sd0000C21A* +- ID_MODEL_FROM_DATABASE=M755 AVerTV Video Capture (PAL/SECAM, Philips FQ1216MK5 tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M755 AVerTV Video Capture (PAL/SECAM, Philips FQ1216MK5 tuner)) + + pci:v00004444d00000016sv00001461sd0000C21B* +- ID_MODEL_FROM_DATABASE=M755 AVerTV Video Capture (PAL/SECAM+FM, Philips FM1216MK5 tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M755 AVerTV Video Capture (PAL/SECAM+FM, Philips FM1216MK5 tuner)) + + pci:v00004444d00000016sv00001461sd0000C230* +- ID_MODEL_FROM_DATABASE=M755 AVerTV Video Capture (NTSC-J, Partsnic tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M755 AVerTV Video Capture (NTSC-J, Partsnic tuner)) + + pci:v00004444d00000016sv00001461sd0000C231* +- ID_MODEL_FROM_DATABASE=M755 AVerTV Video Capture (NTSC-J+FM, Partsnic tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M755 AVerTV Video Capture (NTSC-J+FM, Partsnic tuner)) + + pci:v00004444d00000016sv00001461sd0000C232* +- ID_MODEL_FROM_DATABASE=M755 AVerTV Video Capture (PAL/SECAM, Partsnic tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M755 AVerTV Video Capture (PAL/SECAM, Partsnic tuner)) + + pci:v00004444d00000016sv00001461sd0000C233* +- ID_MODEL_FROM_DATABASE=M755 AVerTV Video Capture (PAL/SECAM+FM, Partsnic tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M755 AVerTV Video Capture (PAL/SECAM+FM, Partsnic tuner)) + + pci:v00004444d00000016sv00001461sd0000C234* +- ID_MODEL_FROM_DATABASE=M755 AVerTV Video Capture (NTSC, Partsnic tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M755 AVerTV Video Capture (NTSC, Partsnic tuner)) + + pci:v00004444d00000016sv00001461sd0000C235* +- ID_MODEL_FROM_DATABASE=M755 AVerTV Video Capture (NTSC+FM, Partsnic tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M755 AVerTV Video Capture (NTSC+FM, Partsnic tuner)) + + pci:v00004444d00000016sv00001461sd0000C337* +- ID_MODEL_FROM_DATABASE=E106 AVerMedia AVerTV Video Capture ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (E106 AVerMedia AVerTV Video Capture) + + pci:v00004444d00000016sv00001461sd0000C439* +- ID_MODEL_FROM_DATABASE=M116 AVerMedia AVerTV MCE 116 Plus (NTSC/PAL/SECAM+FM+REMOTE, Xceive 2028 tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M116 AVerMedia AVerTV MCE 116 Plus (NTSC/PAL/SECAM+FM+REMOTE, Xceive 2028 tuner)) + + pci:v00004444d00000016sv00001461sd0000C5FF* +- ID_MODEL_FROM_DATABASE=C755 AVerTV Video Capture card (no tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (C755 AVerTV Video Capture card (no tuner)) + + pci:v00004444d00000016sv00001461sd0000C6FF* +- ID_MODEL_FROM_DATABASE=C115 PCI video capture card (no tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (C115 PCI video capture card (no tuner)) + + pci:v00004444d00000016sv00001461sd0000C739* +- ID_MODEL_FROM_DATABASE=M785 AVerMedia PCI Analog TV (NTSC/PAL/SECAM+FM, Xceive 2028 tuner) ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (M785 AVerMedia PCI Analog TV (NTSC/PAL/SECAM+FM, Xceive 2028 tuner)) + + pci:v00004444d00000016sv00009005sd00000092* +- ID_MODEL_FROM_DATABASE=VideOh! AVC-2010 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (VideOh! AVC-2010) + + pci:v00004444d00000016sv00009005sd00000093* +- ID_MODEL_FROM_DATABASE=VideOh! AVC-2410 ++ ID_MODEL_FROM_DATABASE=iTVC16 (CX23416) Video Decoder (VideOh! AVC-2410) + + pci:v00004444d00000803* + ID_MODEL_FROM_DATABASE=iTVC15 (CX23415) Video Decoder + + pci:v00004444d00000803sv00000070sd00004000* +- ID_MODEL_FROM_DATABASE=WinTV PVR-350 ++ ID_MODEL_FROM_DATABASE=iTVC15 (CX23415) Video Decoder (WinTV PVR-350) + + pci:v00004444d00000803sv00000070sd00004001* +- ID_MODEL_FROM_DATABASE=WinTV PVR-250 ++ ID_MODEL_FROM_DATABASE=iTVC15 (CX23415) Video Decoder (WinTV PVR-250) + + pci:v00004444d00000803sv00000070sd00004800* +- ID_MODEL_FROM_DATABASE=WinTV PVR-350 (V1) ++ ID_MODEL_FROM_DATABASE=iTVC15 (CX23415) Video Decoder (WinTV PVR-350 (V1)) + + pci:v00004444d00000803sv000012ABsd00000000* +- ID_MODEL_FROM_DATABASE=MPG160 ++ ID_MODEL_FROM_DATABASE=iTVC15 (CX23415) Video Decoder (MPG160) + + pci:v00004444d00000803sv00001461sd0000A3CE* +- ID_MODEL_FROM_DATABASE=M179 ++ ID_MODEL_FROM_DATABASE=iTVC15 (CX23415) Video Decoder (M179) + + pci:v00004444d00000803sv00001461sd0000A3CF* +- ID_MODEL_FROM_DATABASE=M179 ++ ID_MODEL_FROM_DATABASE=iTVC15 (CX23415) Video Decoder (M179) + + pci:v00004468* + ID_VENDOR_FROM_DATABASE=Bridgeport machines +@@ -53961,7 +53961,7 @@ pci:v00004A14d00005000* + ID_MODEL_FROM_DATABASE=NV5000SC + + pci:v00004A14d00005000sv00004A14sd00005000* +- ID_MODEL_FROM_DATABASE=RT8029-Based Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=NV5000SC (RT8029-Based Ethernet Adapter) + + pci:v00004B10* + ID_VENDOR_FROM_DATABASE=Buslogic Inc. +@@ -53976,16 +53976,16 @@ pci:v00004C53d00000000* + ID_MODEL_FROM_DATABASE=PLUSTEST device + + pci:v00004C53d00000000sv00004C53sd00003000* +- ID_MODEL_FROM_DATABASE=PLUSTEST card (PC104+) ++ ID_MODEL_FROM_DATABASE=PLUSTEST device (PLUSTEST card (PC104+)) + + pci:v00004C53d00000000sv00004C53sd00003001* +- ID_MODEL_FROM_DATABASE=PLUSTEST card (PMC) ++ ID_MODEL_FROM_DATABASE=PLUSTEST device (PLUSTEST card (PMC)) + + pci:v00004C53d00000001* + ID_MODEL_FROM_DATABASE=PLUSTEST-MM device + + pci:v00004C53d00000001sv00004C53sd00003002* +- ID_MODEL_FROM_DATABASE=PLUSTEST-MM card (PMC) ++ ID_MODEL_FROM_DATABASE=PLUSTEST-MM device (PLUSTEST-MM card (PMC)) + + pci:v00004CA1* + ID_VENDOR_FROM_DATABASE=Seanix Technology Inc +@@ -54222,13 +54222,13 @@ pci:v00005333d00008900* + ID_MODEL_FROM_DATABASE=86c755 [Trio 64V2/DX] + + pci:v00005333d00008900sv00005333sd00008900* +- ID_MODEL_FROM_DATABASE=86C775 Trio64V2/DX ++ ID_MODEL_FROM_DATABASE=86c755 [Trio 64V2/DX] (86C775 Trio64V2/DX) + + pci:v00005333d00008901* + ID_MODEL_FROM_DATABASE=86c775/86c785 [Trio 64V2/DX or /GX] + + pci:v00005333d00008901sv00005333sd00008901* +- ID_MODEL_FROM_DATABASE=86C775 Trio64V2/DX, 86C785 Trio64V2/GX ++ ID_MODEL_FROM_DATABASE=86c775/86c785 [Trio 64V2/DX or /GX] (86C775 Trio64V2/DX, 86C785 Trio64V2/GX) + + pci:v00005333d00008902* + ID_MODEL_FROM_DATABASE=Plato/PX +@@ -54240,13 +54240,13 @@ pci:v00005333d00008904* + ID_MODEL_FROM_DATABASE=86c365, 86c366 [Trio 3D] + + pci:v00005333d00008904sv00001014sd000000DB* +- ID_MODEL_FROM_DATABASE=Integrated Trio3D ++ ID_MODEL_FROM_DATABASE=86c365, 86c366 [Trio 3D] (Integrated Trio3D) + + pci:v00005333d00008904sv00004843sd0000314A* +- ID_MODEL_FROM_DATABASE=Terminator 128/3D GLH ++ ID_MODEL_FROM_DATABASE=86c365, 86c366 [Trio 3D] (Terminator 128/3D GLH) + + pci:v00005333d00008904sv00005333sd00008904* +- ID_MODEL_FROM_DATABASE=86C365 Trio3D AGP ++ ID_MODEL_FROM_DATABASE=86c365, 86c366 [Trio 3D] (86C365 Trio3D AGP) + + pci:v00005333d00008905* + ID_MODEL_FROM_DATABASE=Trio 64V+ family +@@ -54285,40 +54285,40 @@ pci:v00005333d00008A01* + ID_MODEL_FROM_DATABASE=86c375 [ViRGE/DX] or 86c385 [ViRGE/GX] + + pci:v00005333d00008A01sv00000E11sd0000B032* +- ID_MODEL_FROM_DATABASE=ViRGE/GX ++ ID_MODEL_FROM_DATABASE=86c375 [ViRGE/DX] or 86c385 [ViRGE/GX] (ViRGE/GX) + + pci:v00005333d00008A01sv000010B4sd00001617* +- ID_MODEL_FROM_DATABASE=Nitro 3D ++ ID_MODEL_FROM_DATABASE=86c375 [ViRGE/DX] or 86c385 [ViRGE/GX] (Nitro 3D) + + pci:v00005333d00008A01sv000010B4sd00001717* +- ID_MODEL_FROM_DATABASE=Nitro 3D ++ ID_MODEL_FROM_DATABASE=86c375 [ViRGE/DX] or 86c385 [ViRGE/GX] (Nitro 3D) + + pci:v00005333d00008A01sv00005333sd00008A01* +- ID_MODEL_FROM_DATABASE=ViRGE/DX ++ ID_MODEL_FROM_DATABASE=86c375 [ViRGE/DX] or 86c385 [ViRGE/GX] (ViRGE/DX) + + pci:v00005333d00008A10* + ID_MODEL_FROM_DATABASE=ViRGE/GX2 + + pci:v00005333d00008A10sv00001092sd00008A10* +- ID_MODEL_FROM_DATABASE=Stealth 3D 4000 ++ ID_MODEL_FROM_DATABASE=ViRGE/GX2 (Stealth 3D 4000) + + pci:v00005333d00008A13* + ID_MODEL_FROM_DATABASE=86c360 [Trio 3D/1X], 86c362, 86c368 [Trio 3D/2X] + + pci:v00005333d00008A13sv00005333sd00008A13* +- ID_MODEL_FROM_DATABASE=Trio3D/2X ++ ID_MODEL_FROM_DATABASE=86c360 [Trio 3D/1X], 86c362, 86c368 [Trio 3D/2X] (Trio3D/2X) + + pci:v00005333d00008A20* + ID_MODEL_FROM_DATABASE=86c794 [Savage 3D] + + pci:v00005333d00008A20sv00005333sd00008A20* +- ID_MODEL_FROM_DATABASE=86C391 Savage3D ++ ID_MODEL_FROM_DATABASE=86c794 [Savage 3D] (86C391 Savage3D) + + pci:v00005333d00008A21* + ID_MODEL_FROM_DATABASE=86c390 [Savage 3D/MV] + + pci:v00005333d00008A21sv00005333sd00008A21* +- ID_MODEL_FROM_DATABASE=86C390 Savage3D/MV ++ ID_MODEL_FROM_DATABASE=86c390 [Savage 3D/MV] (86C390 Savage3D/MV) + + pci:v00005333d00008A22* + ID_MODEL_FROM_DATABASE=Savage 4 +@@ -54330,85 +54330,85 @@ pci:v00005333d00008A22sv00001033sd00008069* + ID_MODEL_FROM_DATABASE=Savage 4 + + pci:v00005333d00008A22sv00001033sd00008110* +- ID_MODEL_FROM_DATABASE=Savage 4 LT ++ ID_MODEL_FROM_DATABASE=Savage 4 (LT) + + pci:v00005333d00008A22sv0000105Dsd00000018* +- ID_MODEL_FROM_DATABASE=SR9 8Mb SDRAM ++ ID_MODEL_FROM_DATABASE=Savage 4 (SR9 8Mb SDRAM) + + pci:v00005333d00008A22sv0000105Dsd0000002A* +- ID_MODEL_FROM_DATABASE=SR9 Pro 16Mb SDRAM ++ ID_MODEL_FROM_DATABASE=Savage 4 (SR9 Pro 16Mb SDRAM) + + pci:v00005333d00008A22sv0000105Dsd0000003A* +- ID_MODEL_FROM_DATABASE=SR9 Pro 32Mb SDRAM ++ ID_MODEL_FROM_DATABASE=Savage 4 (SR9 Pro 32Mb SDRAM) + + pci:v00005333d00008A22sv0000105Dsd0000092F* +- ID_MODEL_FROM_DATABASE=SR9 Pro+ 16Mb SGRAM ++ ID_MODEL_FROM_DATABASE=Savage 4 (SR9 Pro+ 16Mb SGRAM) + + pci:v00005333d00008A22sv00001092sd00004207* +- ID_MODEL_FROM_DATABASE=Stealth III S540 ++ ID_MODEL_FROM_DATABASE=Savage 4 (Stealth III S540) + + pci:v00005333d00008A22sv00001092sd00004800* +- ID_MODEL_FROM_DATABASE=Stealth III S540 ++ ID_MODEL_FROM_DATABASE=Savage 4 (Stealth III S540) + + pci:v00005333d00008A22sv00001092sd00004807* +- ID_MODEL_FROM_DATABASE=SpeedStar A90 ++ ID_MODEL_FROM_DATABASE=Savage 4 (SpeedStar A90) + + pci:v00005333d00008A22sv00001092sd00004808* +- ID_MODEL_FROM_DATABASE=Stealth III S540 ++ ID_MODEL_FROM_DATABASE=Savage 4 (Stealth III S540) + + pci:v00005333d00008A22sv00001092sd00004809* +- ID_MODEL_FROM_DATABASE=Stealth III S540 ++ ID_MODEL_FROM_DATABASE=Savage 4 (Stealth III S540) + + pci:v00005333d00008A22sv00001092sd0000480E* +- ID_MODEL_FROM_DATABASE=Stealth III S540 ++ ID_MODEL_FROM_DATABASE=Savage 4 (Stealth III S540) + + pci:v00005333d00008A22sv00001092sd00004904* +- ID_MODEL_FROM_DATABASE=Stealth III S520 ++ ID_MODEL_FROM_DATABASE=Savage 4 (Stealth III S520) + + pci:v00005333d00008A22sv00001092sd00004905* +- ID_MODEL_FROM_DATABASE=SpeedStar A200 ++ ID_MODEL_FROM_DATABASE=Savage 4 (SpeedStar A200) + + pci:v00005333d00008A22sv00001092sd00004A09* +- ID_MODEL_FROM_DATABASE=Stealth III S540 ++ ID_MODEL_FROM_DATABASE=Savage 4 (Stealth III S540) + + pci:v00005333d00008A22sv00001092sd00004A0B* +- ID_MODEL_FROM_DATABASE=Stealth III S540 Xtreme ++ ID_MODEL_FROM_DATABASE=Savage 4 (Stealth III S540 Xtreme) + + pci:v00005333d00008A22sv00001092sd00004A0F* +- ID_MODEL_FROM_DATABASE=Stealth III S540 ++ ID_MODEL_FROM_DATABASE=Savage 4 (Stealth III S540) + + pci:v00005333d00008A22sv00001092sd00004E01* +- ID_MODEL_FROM_DATABASE=Stealth III S540 ++ ID_MODEL_FROM_DATABASE=Savage 4 (Stealth III S540) + + pci:v00005333d00008A22sv00001102sd0000101D* +- ID_MODEL_FROM_DATABASE=3d Blaster Savage 4 ++ ID_MODEL_FROM_DATABASE=Savage 4 (3d Blaster Savage 4) + + pci:v00005333d00008A22sv00001102sd0000101E* +- ID_MODEL_FROM_DATABASE=3d Blaster Savage 4 ++ ID_MODEL_FROM_DATABASE=Savage 4 (3d Blaster Savage 4) + + pci:v00005333d00008A22sv00005333sd00008100* +- ID_MODEL_FROM_DATABASE=86C394-397 Savage4 SDRAM 100 ++ ID_MODEL_FROM_DATABASE=Savage 4 (86C394-397 Savage4 SDRAM 100) + + pci:v00005333d00008A22sv00005333sd00008110* +- ID_MODEL_FROM_DATABASE=86C394-397 Savage4 SDRAM 110 ++ ID_MODEL_FROM_DATABASE=Savage 4 (86C394-397 Savage4 SDRAM 110) + + pci:v00005333d00008A22sv00005333sd00008125* +- ID_MODEL_FROM_DATABASE=86C394-397 Savage4 SDRAM 125 ++ ID_MODEL_FROM_DATABASE=Savage 4 (86C394-397 Savage4 SDRAM 125) + + pci:v00005333d00008A22sv00005333sd00008143* +- ID_MODEL_FROM_DATABASE=86C394-397 Savage4 SDRAM 143 ++ ID_MODEL_FROM_DATABASE=Savage 4 (86C394-397 Savage4 SDRAM 143) + + pci:v00005333d00008A22sv00005333sd00008A22* +- ID_MODEL_FROM_DATABASE=86C394-397 Savage4 ++ ID_MODEL_FROM_DATABASE=Savage 4 (86C394-397 Savage4) + + pci:v00005333d00008A22sv00005333sd00008A2E* +- ID_MODEL_FROM_DATABASE=86C394-397 Savage4 32bit ++ ID_MODEL_FROM_DATABASE=Savage 4 (86C394-397 Savage4 32bit) + + pci:v00005333d00008A22sv00005333sd00009125* +- ID_MODEL_FROM_DATABASE=86C394-397 Savage4 SGRAM 125 ++ ID_MODEL_FROM_DATABASE=Savage 4 (86C394-397 Savage4 SGRAM 125) + + pci:v00005333d00008A22sv00005333sd00009143* +- ID_MODEL_FROM_DATABASE=86C394-397 Savage4 SGRAM 143 ++ ID_MODEL_FROM_DATABASE=Savage 4 (86C394-397 Savage4 SGRAM 143) + + pci:v00005333d00008A23* + ID_MODEL_FROM_DATABASE=Savage 4 +@@ -54417,7 +54417,7 @@ pci:v00005333d00008A25* + ID_MODEL_FROM_DATABASE=ProSavage PM133 + + pci:v00005333d00008A25sv00000303sd00000303* +- ID_MODEL_FROM_DATABASE=D9840-60001 [Brio BA410 Motherboard] ++ ID_MODEL_FROM_DATABASE=ProSavage PM133 (D9840-60001 [Brio BA410 Motherboard]) + + pci:v00005333d00008A26* + ID_MODEL_FROM_DATABASE=ProSavage KM133 +@@ -54447,16 +54447,16 @@ pci:v00005333d00008C12* + ID_MODEL_FROM_DATABASE=86C270-294 [SavageIX-MV] + + pci:v00005333d00008C12sv00001014sd0000017F* +- ID_MODEL_FROM_DATABASE=ThinkPad T20/T22 ++ ID_MODEL_FROM_DATABASE=86C270-294 [SavageIX-MV] (ThinkPad T20/T22) + + pci:v00005333d00008C12sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=86C584 SuperSavage/IXC Toshiba ++ ID_MODEL_FROM_DATABASE=86C270-294 [SavageIX-MV] (86C584 SuperSavage/IXC Toshiba) + + pci:v00005333d00008C13* + ID_MODEL_FROM_DATABASE=86C270-294 [SavageIX] + + pci:v00005333d00008C13sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Magnia Z310 ++ ID_MODEL_FROM_DATABASE=86C270-294 [SavageIX] (Magnia Z310) + + pci:v00005333d00008C22* + ID_MODEL_FROM_DATABASE=SuperSavage MX/128 +@@ -54483,7 +54483,7 @@ pci:v00005333d00008C2E* + ID_MODEL_FROM_DATABASE=SuperSavage IX/C SDR + + pci:v00005333d00008C2Esv00001014sd000001FC* +- ID_MODEL_FROM_DATABASE=ThinkPad T23 ++ ID_MODEL_FROM_DATABASE=SuperSavage IX/C SDR (ThinkPad T23) + + pci:v00005333d00008C2F* + ID_MODEL_FROM_DATABASE=SuperSavage IX/C DDR +@@ -54513,7 +54513,7 @@ pci:v00005333d00008E48* + ID_MODEL_FROM_DATABASE=Matrix [Chrome S25 / S27] + + pci:v00005333d00008E48sv00005333sd00000130* +- ID_MODEL_FROM_DATABASE=Chrome S27 256M DDR2 ++ ID_MODEL_FROM_DATABASE=Matrix [Chrome S25 / S27] (Chrome S27 256M DDR2) + + pci:v00005333d00009043* + ID_MODEL_FROM_DATABASE=Chrome 430 GT +@@ -54528,28 +54528,28 @@ pci:v00005333d00009102* + ID_MODEL_FROM_DATABASE=86C410 [Savage 2000] + + pci:v00005333d00009102sv00001092sd00005932* +- ID_MODEL_FROM_DATABASE=Viper II Z200 ++ ID_MODEL_FROM_DATABASE=86C410 [Savage 2000] (Viper II Z200) + + pci:v00005333d00009102sv00001092sd00005934* +- ID_MODEL_FROM_DATABASE=Viper II Z200 ++ ID_MODEL_FROM_DATABASE=86C410 [Savage 2000] (Viper II Z200) + + pci:v00005333d00009102sv00001092sd00005952* +- ID_MODEL_FROM_DATABASE=Viper II Z200 ++ ID_MODEL_FROM_DATABASE=86C410 [Savage 2000] (Viper II Z200) + + pci:v00005333d00009102sv00001092sd00005954* +- ID_MODEL_FROM_DATABASE=Viper II Z200 ++ ID_MODEL_FROM_DATABASE=86C410 [Savage 2000] (Viper II Z200) + + pci:v00005333d00009102sv00001092sd00005A35* +- ID_MODEL_FROM_DATABASE=Viper II Z200 ++ ID_MODEL_FROM_DATABASE=86C410 [Savage 2000] (Viper II Z200) + + pci:v00005333d00009102sv00001092sd00005A37* +- ID_MODEL_FROM_DATABASE=Viper II Z200 ++ ID_MODEL_FROM_DATABASE=86C410 [Savage 2000] (Viper II Z200) + + pci:v00005333d00009102sv00001092sd00005A55* +- ID_MODEL_FROM_DATABASE=Viper II Z200 ++ ID_MODEL_FROM_DATABASE=86C410 [Savage 2000] (Viper II Z200) + + pci:v00005333d00009102sv00001092sd00005A57* +- ID_MODEL_FROM_DATABASE=Viper II Z200 ++ ID_MODEL_FROM_DATABASE=86C410 [Savage 2000] (Viper II Z200) + + pci:v00005333d0000CA00* + ID_MODEL_FROM_DATABASE=SonicVibes +@@ -54774,13 +54774,13 @@ pci:v00008086d00000044* + ID_MODEL_FROM_DATABASE=Core Processor DRAM Controller + + pci:v00008086d00000044sv00001025sd00000347* +- ID_MODEL_FROM_DATABASE=Aspire 7740G ++ ID_MODEL_FROM_DATABASE=Core Processor DRAM Controller (Aspire 7740G) + + pci:v00008086d00000044sv00001025sd00000487* +- ID_MODEL_FROM_DATABASE=TravelMate 5742 ++ ID_MODEL_FROM_DATABASE=Core Processor DRAM Controller (TravelMate 5742) + + pci:v00008086d00000044sv0000E4BFsd000050C1* +- ID_MODEL_FROM_DATABASE=PC1-GROOVE ++ ID_MODEL_FROM_DATABASE=Core Processor DRAM Controller (PC1-GROOVE) + + pci:v00008086d00000045* + ID_MODEL_FROM_DATABASE=Core Processor PCI Express x16 Root Port +@@ -54789,7 +54789,7 @@ pci:v00008086d00000046* + ID_MODEL_FROM_DATABASE=Core Processor Integrated Graphics Controller + + pci:v00008086d00000046sv0000E4BFsd000050C1* +- ID_MODEL_FROM_DATABASE=PC1-GROOVE ++ ID_MODEL_FROM_DATABASE=Core Processor Integrated Graphics Controller (PC1-GROOVE) + + pci:v00008086d00000047* + ID_MODEL_FROM_DATABASE=Core Processor Secondary PCI Express Root Port +@@ -54816,202 +54816,202 @@ pci:v00008086d00000082* + ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6205 [Taylor Peak] + + pci:v00008086d00000082sv00008086sd00001301* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6205 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6205 [Taylor Peak] (Centrino Advanced-N 6205 AGN) + + pci:v00008086d00000082sv00008086sd00001306* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6205 ABG ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6205 [Taylor Peak] (Centrino Advanced-N 6205 ABG) + + pci:v00008086d00000082sv00008086sd00001307* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6205 BG ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6205 [Taylor Peak] (Centrino Advanced-N 6205 BG) + + pci:v00008086d00000082sv00008086sd00001321* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6205 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6205 [Taylor Peak] (Centrino Advanced-N 6205 AGN) + + pci:v00008086d00000082sv00008086sd00001326* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6205 ABG ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6205 [Taylor Peak] (Centrino Advanced-N 6205 ABG) + + pci:v00008086d00000083* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 [Condor Peak] + + pci:v00008086d00000083sv00008086sd00001205* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 [Condor Peak] (Centrino Wireless-N 1000 BGN) + + pci:v00008086d00000083sv00008086sd00001206* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 [Condor Peak] (Centrino Wireless-N 1000 BG) + + pci:v00008086d00000083sv00008086sd00001225* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 [Condor Peak] (Centrino Wireless-N 1000 BGN) + + pci:v00008086d00000083sv00008086sd00001226* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 [Condor Peak] (Centrino Wireless-N 1000 BG) + + pci:v00008086d00000083sv00008086sd00001305* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 [Condor Peak] (Centrino Wireless-N 1000 BGN) + + pci:v00008086d00000083sv00008086sd00001306* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 [Condor Peak] (Centrino Wireless-N 1000 BG) + + pci:v00008086d00000083sv00008086sd00001325* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 [Condor Peak] (Centrino Wireless-N 1000 BGN) + + pci:v00008086d00000083sv00008086sd00001326* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 [Condor Peak] (Centrino Wireless-N 1000 BG) + + pci:v00008086d00000084* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 [Condor Peak] + + pci:v00008086d00000084sv00008086sd00001215* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 [Condor Peak] (Centrino Wireless-N 1000 BGN) + + pci:v00008086d00000084sv00008086sd00001216* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 [Condor Peak] (Centrino Wireless-N 1000 BG) + + pci:v00008086d00000084sv00008086sd00001315* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 [Condor Peak] (Centrino Wireless-N 1000 BGN) + + pci:v00008086d00000084sv00008086sd00001316* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1000 [Condor Peak] (Centrino Wireless-N 1000 BG) + + pci:v00008086d00000085* + ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6205 [Taylor Peak] + + pci:v00008086d00000085sv00008086sd00001311* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6205 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6205 [Taylor Peak] (Centrino Advanced-N 6205 AGN) + + pci:v00008086d00000085sv00008086sd00001316* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6205 ABG ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6205 [Taylor Peak] (Centrino Advanced-N 6205 ABG) + + pci:v00008086d00000087* + ID_MODEL_FROM_DATABASE=Centrino Advanced-N + WiMAX 6250 [Kilmer Peak] + + pci:v00008086d00000087sv00008086sd00001301* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N + WiMAX 6250 2x2 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N + WiMAX 6250 [Kilmer Peak] (Centrino Advanced-N + WiMAX 6250 2x2 AGN) + + pci:v00008086d00000087sv00008086sd00001306* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N + WiMAX 6250 2x2 ABG ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N + WiMAX 6250 [Kilmer Peak] (Centrino Advanced-N + WiMAX 6250 2x2 ABG) + + pci:v00008086d00000087sv00008086sd00001321* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N + WiMAX 6250 2x2 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N + WiMAX 6250 [Kilmer Peak] (Centrino Advanced-N + WiMAX 6250 2x2 AGN) + + pci:v00008086d00000087sv00008086sd00001326* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N + WiMAX 6250 2x2 ABG ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N + WiMAX 6250 [Kilmer Peak] (Centrino Advanced-N + WiMAX 6250 2x2 ABG) + + pci:v00008086d00000089* + ID_MODEL_FROM_DATABASE=Centrino Advanced-N + WiMAX 6250 [Kilmer Peak] + + pci:v00008086d00000089sv00008086sd00001311* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N + WiMAX 6250 2x2 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N + WiMAX 6250 [Kilmer Peak] (Centrino Advanced-N + WiMAX 6250 2x2 AGN) + + pci:v00008086d00000089sv00008086sd00001316* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N + WiMAX 6250 2x2 ABG ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N + WiMAX 6250 [Kilmer Peak] (Centrino Advanced-N + WiMAX 6250 2x2 ABG) + + pci:v00008086d0000008A* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1030 [Rainbow Peak] + + pci:v00008086d0000008Asv00008086sd00005305* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1030 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1030 [Rainbow Peak] (Centrino Wireless-N 1030 BGN) + + pci:v00008086d0000008Asv00008086sd00005307* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1030 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1030 [Rainbow Peak] (Centrino Wireless-N 1030 BG) + + pci:v00008086d0000008Asv00008086sd00005325* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1030 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1030 [Rainbow Peak] (Centrino Wireless-N 1030 BGN) + + pci:v00008086d0000008Asv00008086sd00005327* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1030 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1030 [Rainbow Peak] (Centrino Wireless-N 1030 BG) + + pci:v00008086d0000008B* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1030 [Rainbow Peak] + + pci:v00008086d0000008Bsv00008086sd00005315* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1030 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1030 [Rainbow Peak] (Centrino Wireless-N 1030 BGN) + + pci:v00008086d0000008Bsv00008086sd00005317* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1030 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 1030 [Rainbow Peak] (Centrino Wireless-N 1030 BG) + + pci:v00008086d00000090* + ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 [Rainbow Peak] + + pci:v00008086d00000090sv00008086sd00005211* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 [Rainbow Peak] (Centrino Advanced-N 6230 AGN) + + pci:v00008086d00000090sv00008086sd00005215* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 [Rainbow Peak] (Centrino Advanced-N 6230 BGN) + + pci:v00008086d00000090sv00008086sd00005216* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 ABG ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 [Rainbow Peak] (Centrino Advanced-N 6230 ABG) + + pci:v00008086d00000091* + ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 [Rainbow Peak] + + pci:v00008086d00000091sv00008086sd00005201* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 [Rainbow Peak] (Centrino Advanced-N 6230 AGN) + + pci:v00008086d00000091sv00008086sd00005205* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 [Rainbow Peak] (Centrino Advanced-N 6230 BGN) + + pci:v00008086d00000091sv00008086sd00005206* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 ABG ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 [Rainbow Peak] (Centrino Advanced-N 6230 ABG) + + pci:v00008086d00000091sv00008086sd00005207* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 BG ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 [Rainbow Peak] (Centrino Advanced-N 6230 BG) + + pci:v00008086d00000091sv00008086sd00005221* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 [Rainbow Peak] (Centrino Advanced-N 6230 AGN) + + pci:v00008086d00000091sv00008086sd00005225* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 [Rainbow Peak] (Centrino Advanced-N 6230 BGN) + + pci:v00008086d00000091sv00008086sd00005226* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 ABG ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6230 [Rainbow Peak] (Centrino Advanced-N 6230 ABG) + + pci:v00008086d00000100* + ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family DRAM Controller + + pci:v00008086d00000100sv00001028sd000004AA* +- ID_MODEL_FROM_DATABASE=XPS 8300 ++ ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family DRAM Controller (XPS 8300) + + pci:v00008086d00000100sv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8P67/P8H67 Series Motherboard ++ ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family DRAM Controller (P8P67/P8H67 Series Motherboard) + + pci:v00008086d00000101* + ID_MODEL_FROM_DATABASE=Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port + + pci:v00008086d00000101sv00001028sd000004B2* +- ID_MODEL_FROM_DATABASE=Vostro 3350 ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (Vostro 3350) + + pci:v00008086d00000101sv0000106Bsd000000DC* +- ID_MODEL_FROM_DATABASE=MacBookPro8,2 [Core i7, 15", 2011] ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (MacBookPro8,2 [Core i7, 15", 2011]) + + pci:v00008086d00000102* + ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family Integrated Graphics Controller + + pci:v00008086d00000102sv00001028sd000004AA* +- ID_MODEL_FROM_DATABASE=XPS 8300 ++ ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family Integrated Graphics Controller (XPS 8300) + + pci:v00008086d00000102sv00001043sd00000102* +- ID_MODEL_FROM_DATABASE=P8H67 Series Motherboard ++ ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family Integrated Graphics Controller (P8H67 Series Motherboard) + + pci:v00008086d00000104* + ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family DRAM Controller + + pci:v00008086d00000104sv00001028sd000004A3* +- ID_MODEL_FROM_DATABASE=Precision M4600 ++ ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family DRAM Controller (Precision M4600) + + pci:v00008086d00000104sv00001028sd000004B2* +- ID_MODEL_FROM_DATABASE=Vostro 3350 ++ ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family DRAM Controller (Vostro 3350) + + pci:v00008086d00000104sv00001028sd000004DA* +- ID_MODEL_FROM_DATABASE=Vostro 3750 ++ ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family DRAM Controller (Vostro 3750) + + pci:v00008086d00000104sv0000106Bsd000000DC* +- ID_MODEL_FROM_DATABASE=MacBookPro8,2 [Core i7, 15", 2011] ++ ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family DRAM Controller (MacBookPro8,2 [Core i7, 15", 2011]) + + pci:v00008086d00000105* + ID_MODEL_FROM_DATABASE=Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port + + pci:v00008086d00000105sv0000106Bsd000000DC* +- ID_MODEL_FROM_DATABASE=MacBookPro8,2 [Core i7, 15", 2011] ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (MacBookPro8,2 [Core i7, 15", 2011]) + + pci:v00008086d00000106* + ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family Integrated Graphics Controller +@@ -55044,7 +55044,7 @@ pci:v00008086d00000116* + ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family Integrated Graphics Controller + + pci:v00008086d00000116sv00001028sd000004DA* +- ID_MODEL_FROM_DATABASE=Vostro 3750 ++ ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family Integrated Graphics Controller (Vostro 3750) + + pci:v00008086d00000122* + ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family Integrated Graphics Controller +@@ -55053,64 +55053,64 @@ pci:v00008086d00000126* + ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family Integrated Graphics Controller + + pci:v00008086d00000126sv00001028sd000004CC* +- ID_MODEL_FROM_DATABASE=Vostro 3350 ++ ID_MODEL_FROM_DATABASE=2nd Generation Core Processor Family Integrated Graphics Controller (Vostro 3350) + + pci:v00008086d00000150* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller + + pci:v00008086d00000150sv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=P8H77-I Motherboard ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (P8H77-I Motherboard) + + pci:v00008086d00000150sv00001849sd00000150* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (Motherboard) + + pci:v00008086d00000151* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port + + pci:v00008086d00000151sv00001043sd00001477* +- ID_MODEL_FROM_DATABASE=N56VZ ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (N56VZ) + + pci:v00008086d00000151sv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8 series motherboard ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (P8 series motherboard) + + pci:v00008086d00000151sv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=P8H77-I Motherboard ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (P8H77-I Motherboard) + + pci:v00008086d00000151sv00008086sd00002010* +- ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (Server Board S1200BTS) + + pci:v00008086d00000152* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller + + pci:v00008086d00000152sv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=P8H77-I Motherboard ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller (P8H77-I Motherboard) + + pci:v00008086d00000153* + ID_MODEL_FROM_DATABASE=3rd Gen Core Processor Thermal Subsystem + + pci:v00008086d00000153sv00001043sd00001517* +- ID_MODEL_FROM_DATABASE=Zenbook Prime UX31A ++ ID_MODEL_FROM_DATABASE=3rd Gen Core Processor Thermal Subsystem (Zenbook Prime UX31A) + + pci:v00008086d00000154* + ID_MODEL_FROM_DATABASE=3rd Gen Core processor DRAM Controller + + pci:v00008086d00000154sv00001025sd00000813* +- ID_MODEL_FROM_DATABASE=Aspire R7-571 ++ ID_MODEL_FROM_DATABASE=3rd Gen Core processor DRAM Controller (Aspire R7-571) + + pci:v00008086d00000154sv0000103Csd000017F6* +- ID_MODEL_FROM_DATABASE=ProBook 4540s ++ ID_MODEL_FROM_DATABASE=3rd Gen Core processor DRAM Controller (ProBook 4540s) + + pci:v00008086d00000154sv00001043sd00001477* +- ID_MODEL_FROM_DATABASE=N56VZ ++ ID_MODEL_FROM_DATABASE=3rd Gen Core processor DRAM Controller (N56VZ) + + pci:v00008086d00000154sv00001043sd00001517* +- ID_MODEL_FROM_DATABASE=Zenbook Prime UX31A ++ ID_MODEL_FROM_DATABASE=3rd Gen Core processor DRAM Controller (Zenbook Prime UX31A) + + pci:v00008086d00000155* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port + + pci:v00008086d00000155sv00008086sd00002010* +- ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (Server Board S1200BTS) + + pci:v00008086d00000156* + ID_MODEL_FROM_DATABASE=3rd Gen Core processor Graphics Controller +@@ -55119,10 +55119,10 @@ pci:v00008086d00000158* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/Ivy Bridge DRAM Controller + + pci:v00008086d00000158sv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8 series motherboard ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/Ivy Bridge DRAM Controller (P8 series motherboard) + + pci:v00008086d00000158sv00008086sd00002010* +- ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/Ivy Bridge DRAM Controller (Server Board S1200BTS) + + pci:v00008086d00000159* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port +@@ -55137,7 +55137,7 @@ pci:v00008086d0000015D* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port + + pci:v00008086d0000015Dsv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8 series motherboard ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (P8 series motherboard) + + pci:v00008086d0000015E* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller +@@ -55146,22 +55146,22 @@ pci:v00008086d00000162* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller + + pci:v00008086d00000162sv00001849sd00000162* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller (Motherboard) + + pci:v00008086d00000166* + ID_MODEL_FROM_DATABASE=3rd Gen Core processor Graphics Controller + + pci:v00008086d00000166sv00001043sd00001517* +- ID_MODEL_FROM_DATABASE=Zenbook Prime UX31A ++ ID_MODEL_FROM_DATABASE=3rd Gen Core processor Graphics Controller (Zenbook Prime UX31A) + + pci:v00008086d00000166sv00001043sd00002103* +- ID_MODEL_FROM_DATABASE=N56VZ ++ ID_MODEL_FROM_DATABASE=3rd Gen Core processor Graphics Controller (N56VZ) + + pci:v00008086d0000016A* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller + + pci:v00008086d0000016Asv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8B WS Motherboard ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller (P8B WS Motherboard) + + pci:v00008086d00000172* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller +@@ -55179,19 +55179,19 @@ pci:v00008086d00000326* + ID_MODEL_FROM_DATABASE=6700/6702PXH I/OxAPIC Interrupt Controller A + + pci:v00008086d00000326sv0000103Csd00003208* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G2 ++ ID_MODEL_FROM_DATABASE=6700/6702PXH I/OxAPIC Interrupt Controller A (ProLiant DL140 G2) + + pci:v00008086d00000326sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=6700/6702PXH I/OxAPIC Interrupt Controller A (CR11/VR11 Single Board Computer) + + pci:v00008086d00000327* + ID_MODEL_FROM_DATABASE=6700PXH I/OxAPIC Interrupt Controller B + + pci:v00008086d00000327sv0000103Csd00003208* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G2 ++ ID_MODEL_FROM_DATABASE=6700PXH I/OxAPIC Interrupt Controller B (ProLiant DL140 G2) + + pci:v00008086d00000327sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=6700PXH I/OxAPIC Interrupt Controller B (CR11/VR11 Single Board Computer) + + pci:v00008086d00000329* + ID_MODEL_FROM_DATABASE=6700PXH PCI Express-to-PCI Bridge A +@@ -55260,7 +55260,7 @@ pci:v00008086d00000416* + ID_MODEL_FROM_DATABASE=4th Gen Core Processor Integrated Graphics Controller + + pci:v00008086d00000416sv000017AAsd0000220E* +- ID_MODEL_FROM_DATABASE=ThinkPad T440p ++ ID_MODEL_FROM_DATABASE=4th Gen Core Processor Integrated Graphics Controller (ThinkPad T440p) + + pci:v00008086d0000041A* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v3 Processor Integrated Graphics Controller +@@ -55365,16 +55365,16 @@ pci:v00008086d00000600* + ID_MODEL_FROM_DATABASE=RAID Controller + + pci:v00008086d00000600sv00008086sd00000136* +- ID_MODEL_FROM_DATABASE=SRCU31L ++ ID_MODEL_FROM_DATABASE=RAID Controller (SRCU31L) + + pci:v00008086d00000600sv00008086sd000001AF* +- ID_MODEL_FROM_DATABASE=SRCZCR ++ ID_MODEL_FROM_DATABASE=RAID Controller (SRCZCR) + + pci:v00008086d00000600sv00008086sd000001C1* +- ID_MODEL_FROM_DATABASE=ICP Vortex GDT8546RZ ++ ID_MODEL_FROM_DATABASE=RAID Controller (ICP Vortex GDT8546RZ) + + pci:v00008086d00000600sv00008086sd000001F7* +- ID_MODEL_FROM_DATABASE=SCRU32 ++ ID_MODEL_FROM_DATABASE=RAID Controller (SCRU32) + + pci:v00008086d0000061F* + ID_MODEL_FROM_DATABASE=80303 I/O Processor +@@ -55467,301 +55467,301 @@ pci:v00008086d00000885* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N + WiMAX 6150 + + pci:v00008086d00000885sv00008086sd00001305* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N + WiMAX 6150 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N + WiMAX 6150 (BGN) + + pci:v00008086d00000885sv00008086sd00001307* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N + WiMAX 6150 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N + WiMAX 6150 (BG) + + pci:v00008086d00000885sv00008086sd00001325* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N + WiMAX 6150 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N + WiMAX 6150 (BGN) + + pci:v00008086d00000885sv00008086sd00001327* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N + WiMAX 6150 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N + WiMAX 6150 (BG) + + pci:v00008086d00000886* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N + WiMAX 6150 + + pci:v00008086d00000886sv00008086sd00001315* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N + WiMAX 6150 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N + WiMAX 6150 (BGN) + + pci:v00008086d00000886sv00008086sd00001317* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N + WiMAX 6150 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N + WiMAX 6150 (BG) + + pci:v00008086d00000887* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2230 + + pci:v00008086d00000887sv00008086sd00004062* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2230 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2230 (BGN) + + pci:v00008086d00000887sv00008086sd00004462* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2230 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2230 (BGN) + + pci:v00008086d00000888* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2230 + + pci:v00008086d00000888sv00008086sd00004262* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2230 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2230 (BGN) + + pci:v00008086d0000088E* + ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6235 + + pci:v00008086d0000088Esv00008086sd00004060* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6235 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6235 (AGN) + + pci:v00008086d0000088Esv00008086sd00004460* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6235 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6235 (AGN) + + pci:v00008086d0000088F* + ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6235 + + pci:v00008086d0000088Fsv00008086sd00004260* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6235 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6235 (AGN) + + pci:v00008086d00000890* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2200 + + pci:v00008086d00000890sv00008086sd00004022* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2200 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2200 (BGN) + + pci:v00008086d00000890sv00008086sd00004422* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2200 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2200 (BGN) + + pci:v00008086d00000890sv00008086sd00004822* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2200 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2200 (BGN) + + pci:v00008086d00000891* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2200 + + pci:v00008086d00000891sv00008086sd00004222* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2200 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 2200 (BGN) + + pci:v00008086d00000892* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N 135 + + pci:v00008086d00000892sv00008086sd00000062* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 135 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 135 (BGN) + + pci:v00008086d00000892sv00008086sd00000462* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 135 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 135 (BGN) + + pci:v00008086d00000893* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N 135 + + pci:v00008086d00000893sv00008086sd00000262* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 135 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 135 (BGN) + + pci:v00008086d00000894* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N 105 + + pci:v00008086d00000894sv00008086sd00000022* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 105 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 105 (BGN) + + pci:v00008086d00000894sv00008086sd00000422* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 105 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 105 (BGN) + + pci:v00008086d00000894sv00008086sd00000822* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 105 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 105 (BGN) + + pci:v00008086d00000895* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N 105 + + pci:v00008086d00000895sv00008086sd00000222* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 105 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 105 (BGN) + + pci:v00008086d00000896* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N 130 + + pci:v00008086d00000896sv00008086sd00005005* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 130 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 130 (BGN) + + pci:v00008086d00000896sv00008086sd00005007* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 130 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 130 (BG) + + pci:v00008086d00000896sv00008086sd00005025* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 130 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 130 (BGN) + + pci:v00008086d00000896sv00008086sd00005027* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 130 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 130 (BG) + + pci:v00008086d00000897* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N 130 + + pci:v00008086d00000897sv00008086sd00005015* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 130 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 130 (BGN) + + pci:v00008086d00000897sv00008086sd00005017* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 130 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 130 (BG) + + pci:v00008086d000008AE* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N 100 + + pci:v00008086d000008AEsv00008086sd00001005* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 100 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 100 (BGN) + + pci:v00008086d000008AEsv00008086sd00001007* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 100 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 100 (BG) + + pci:v00008086d000008AEsv00008086sd00001025* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 100 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 100 (BGN) + + pci:v00008086d000008AEsv00008086sd00001027* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 100 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 100 (BG) + + pci:v00008086d000008AF* + ID_MODEL_FROM_DATABASE=Centrino Wireless-N 100 + + pci:v00008086d000008AFsv00008086sd00001015* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 100 BGN ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 100 (BGN) + + pci:v00008086d000008AFsv00008086sd00001017* +- ID_MODEL_FROM_DATABASE=Centrino Wireless-N 100 BG ++ ID_MODEL_FROM_DATABASE=Centrino Wireless-N 100 (BG) + + pci:v00008086d000008B1* + ID_MODEL_FROM_DATABASE=Wireless 7260 + + pci:v00008086d000008B1sv00008086sd00004060* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-N 7260) + + pci:v00008086d000008B1sv00008086sd00004062* +- ID_MODEL_FROM_DATABASE=Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Wireless-N 7260) + + pci:v00008086d000008B1sv00008086sd00004070* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-AC 7260) + + pci:v00008086d000008B1sv00008086sd00004160* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-N 7260) + + pci:v00008086d000008B1sv00008086sd00004162* +- ID_MODEL_FROM_DATABASE=Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Wireless-N 7260) + + pci:v00008086d000008B1sv00008086sd00004170* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-AC 7260) + + pci:v00008086d000008B1sv00008086sd00004460* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-N 7260) + + pci:v00008086d000008B1sv00008086sd00004462* +- ID_MODEL_FROM_DATABASE=Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Wireless-N 7260) + + pci:v00008086d000008B1sv00008086sd00004470* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-AC 7260) + + pci:v00008086d000008B1sv00008086sd0000486E* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-AC 7260) + + pci:v00008086d000008B1sv00008086sd00004870* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-AC 7260) + + pci:v00008086d000008B1sv00008086sd00004A6C* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-AC 7260) + + pci:v00008086d000008B1sv00008086sd00004A6E* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-AC 7260) + + pci:v00008086d000008B1sv00008086sd00004A70* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-AC 7260) + + pci:v00008086d000008B1sv00008086sd0000C020* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-N 7260) + + pci:v00008086d000008B1sv00008086sd0000C060* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-N 7260) + + pci:v00008086d000008B1sv00008086sd0000C062* +- ID_MODEL_FROM_DATABASE=Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Wireless-N 7260) + + pci:v00008086d000008B1sv00008086sd0000C070* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-AC 7260) + + pci:v00008086d000008B1sv00008086sd0000C160* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-N 7260) + + pci:v00008086d000008B1sv00008086sd0000C162* +- ID_MODEL_FROM_DATABASE=Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Wireless-N 7260) + + pci:v00008086d000008B1sv00008086sd0000C170* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-AC 7260) + + pci:v00008086d000008B1sv00008086sd0000C420* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-N 7260) + + pci:v00008086d000008B1sv00008086sd0000C460* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-N 7260) + + pci:v00008086d000008B1sv00008086sd0000C462* +- ID_MODEL_FROM_DATABASE=Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Wireless-N 7260) + + pci:v00008086d000008B1sv00008086sd0000C470* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-AC 7260) + + pci:v00008086d000008B2* + ID_MODEL_FROM_DATABASE=Wireless 7260 + + pci:v00008086d000008B2sv00008086sd00004220* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-N 7260) + + pci:v00008086d000008B2sv00008086sd00004260* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-N 7260) + + pci:v00008086d000008B2sv00008086sd00004262* +- ID_MODEL_FROM_DATABASE=Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Wireless-N 7260) + + pci:v00008086d000008B2sv00008086sd00004270* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-AC 7260) + + pci:v00008086d000008B2sv00008086sd0000C220* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-N 7260) + + pci:v00008086d000008B2sv00008086sd0000C260* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-N 7260) + + pci:v00008086d000008B2sv00008086sd0000C262* +- ID_MODEL_FROM_DATABASE=Wireless-N 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Wireless-N 7260) + + pci:v00008086d000008B2sv00008086sd0000C270* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7260 ++ ID_MODEL_FROM_DATABASE=Wireless 7260 (Dual Band Wireless-AC 7260) + + pci:v00008086d000008B3* + ID_MODEL_FROM_DATABASE=Wireless 3160 + + pci:v00008086d000008B3sv00008086sd00000060* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 3160 ++ ID_MODEL_FROM_DATABASE=Wireless 3160 (Dual Band Wireless-N 3160) + + pci:v00008086d000008B3sv00008086sd00000062* +- ID_MODEL_FROM_DATABASE=Wireless-N 3160 ++ ID_MODEL_FROM_DATABASE=Wireless 3160 (Wireless-N 3160) + + pci:v00008086d000008B3sv00008086sd00000070* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 3160 ++ ID_MODEL_FROM_DATABASE=Wireless 3160 (Dual Band Wireless-AC 3160) + + pci:v00008086d000008B3sv00008086sd00000170* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 3160 ++ ID_MODEL_FROM_DATABASE=Wireless 3160 (Dual Band Wireless-AC 3160) + + pci:v00008086d000008B3sv00008086sd00000470* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 3160 ++ ID_MODEL_FROM_DATABASE=Wireless 3160 (Dual Band Wireless-AC 3160) + + pci:v00008086d000008B3sv00008086sd00008060* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless N-3160 ++ ID_MODEL_FROM_DATABASE=Wireless 3160 (Dual Band Wireless N-3160) + + pci:v00008086d000008B3sv00008086sd00008062* +- ID_MODEL_FROM_DATABASE=Wireless N-3160 ++ ID_MODEL_FROM_DATABASE=Wireless 3160 (Wireless N-3160) + + pci:v00008086d000008B3sv00008086sd00008070* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless AC 3160 ++ ID_MODEL_FROM_DATABASE=Wireless 3160 (Dual Band Wireless AC 3160) + + pci:v00008086d000008B3sv00008086sd00008170* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless AC 3160 ++ ID_MODEL_FROM_DATABASE=Wireless 3160 (Dual Band Wireless AC 3160) + + pci:v00008086d000008B3sv00008086sd00008470* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless AC 3160 ++ ID_MODEL_FROM_DATABASE=Wireless 3160 (Dual Band Wireless AC 3160) + + pci:v00008086d000008B4* + ID_MODEL_FROM_DATABASE=Wireless 3160 + + pci:v00008086d000008B4sv00008086sd00000270* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 3160 ++ ID_MODEL_FROM_DATABASE=Wireless 3160 (Dual Band Wireless-AC 3160) + + pci:v00008086d000008B4sv00008086sd00008270* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless AC 3160 ++ ID_MODEL_FROM_DATABASE=Wireless 3160 (Dual Band Wireless AC 3160) + + pci:v00008086d000008CF* + ID_MODEL_FROM_DATABASE=Atom Processor Z2760 Integrated Graphics Controller +@@ -55770,106 +55770,106 @@ pci:v00008086d0000095A* + ID_MODEL_FROM_DATABASE=Wireless 7265 + + pci:v00008086d0000095Asv00008086sd00001010* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00005000* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-N 7265) + + pci:v00008086d0000095Asv00008086sd00005002* +- ID_MODEL_FROM_DATABASE=Wireless-N 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Wireless-N 7265) + + pci:v00008086d0000095Asv00008086sd0000500A* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-N 7265) + + pci:v00008086d0000095Asv00008086sd00005010* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00005012* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00005020* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-N 7265) + + pci:v00008086d0000095Asv00008086sd0000502A* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-N 7265) + + pci:v00008086d0000095Asv00008086sd00005090* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00005100* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd0000510A* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00005110* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00005112* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00005190* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00005400* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00005410* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00005420* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-N 7265) + + pci:v00008086d0000095Asv00008086sd00005490* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00005590* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00009010* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00009012* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00009110* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00009112* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00009210* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00009310* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00009410* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Asv00008086sd00009510* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095B* + ID_MODEL_FROM_DATABASE=Wireless 7265 + + pci:v00008086d0000095Bsv00008086sd00005200* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-N 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-N 7265) + + pci:v00008086d0000095Bsv00008086sd00005202* +- ID_MODEL_FROM_DATABASE=Wireless-N 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Wireless-N 7265) + + pci:v00008086d0000095Bsv00008086sd00005210* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Bsv00008086sd00005290* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Bsv00008086sd00005302* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d0000095Bsv00008086sd00005310* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 7265 ++ ID_MODEL_FROM_DATABASE=Wireless 7265 (Dual Band Wireless-AC 7265) + + pci:v00008086d00000960* + ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor/Bridge +@@ -55884,7 +55884,7 @@ pci:v00008086d00000A04* + ID_MODEL_FROM_DATABASE=Haswell-ULT DRAM Controller + + pci:v00008086d00000A04sv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ ID_MODEL_FROM_DATABASE=Haswell-ULT DRAM Controller (ThinkPad X240) + + pci:v00008086d00000A06* + ID_MODEL_FROM_DATABASE=Haswell-ULT Integrated Graphics Controller +@@ -55893,13 +55893,13 @@ pci:v00008086d00000A0C* + ID_MODEL_FROM_DATABASE=Haswell-ULT HD Audio Controller + + pci:v00008086d00000A0Csv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ ID_MODEL_FROM_DATABASE=Haswell-ULT HD Audio Controller (ThinkPad X240) + + pci:v00008086d00000A16* + ID_MODEL_FROM_DATABASE=Haswell-ULT Integrated Graphics Controller + + pci:v00008086d00000A16sv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ ID_MODEL_FROM_DATABASE=Haswell-ULT Integrated Graphics Controller (ThinkPad X240) + + pci:v00008086d00000A22* + ID_MODEL_FROM_DATABASE=Haswell-ULT Integrated Graphics Controller +@@ -55917,7 +55917,7 @@ pci:v00008086d00000BE1* + ID_MODEL_FROM_DATABASE=Atom Processor D2xxx/N2xxx Integrated Graphics Controller + + pci:v00008086d00000BE1sv0000105Bsd00000D7C* +- ID_MODEL_FROM_DATABASE=D270S/D250S Motherboard ++ ID_MODEL_FROM_DATABASE=Atom Processor D2xxx/N2xxx Integrated Graphics Controller (D270S/D250S Motherboard) + + pci:v00008086d00000BE2* + ID_MODEL_FROM_DATABASE=Atom Processor D2xxx/N2xxx Integrated Graphics Controller +@@ -55980,7 +55980,7 @@ pci:v00008086d00000BF5* + ID_MODEL_FROM_DATABASE=Atom Processor D2xxx/N2xxx DRAM Controller + + pci:v00008086d00000BF5sv0000105Bsd00000D7C* +- ID_MODEL_FROM_DATABASE=D270S/D250S Motherboard ++ ID_MODEL_FROM_DATABASE=Atom Processor D2xxx/N2xxx DRAM Controller (D270S/D250S Motherboard) + + pci:v00008086d00000BF6* + ID_MODEL_FROM_DATABASE=Atom Processor D2xxx/N2xxx DRAM Controller +@@ -55998,10 +55998,10 @@ pci:v00008086d00000C04* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller + + pci:v00008086d00000C04sv0000103Csd00001909* +- ID_MODEL_FROM_DATABASE=ZBook 15 ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller (ZBook 15) + + pci:v00008086d00000C04sv000017AAsd0000220E* +- ID_MODEL_FROM_DATABASE=ThinkPad T440p ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller (ThinkPad T440p) + + pci:v00008086d00000C05* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v3/4th Gen Core Processor PCI Express x8 Controller +@@ -56016,7 +56016,7 @@ pci:v00008086d00000C0C* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller + + pci:v00008086d00000C0Csv000017AAsd0000220E* +- ID_MODEL_FROM_DATABASE=ThinkPad T440p ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller (ThinkPad T440p) + + pci:v00008086d00000C46* + ID_MODEL_FROM_DATABASE=Atom Processor S1200 PCI Express Root Port 1 +@@ -56787,34 +56787,34 @@ pci:v00008086d00001000* + ID_MODEL_FROM_DATABASE=82542 Gigabit Ethernet Controller (Fiber) + + pci:v00008086d00001000sv00000E11sd0000B0DF* +- ID_MODEL_FROM_DATABASE=NC6132 Gigabit Ethernet Adapter (1000-SX) ++ ID_MODEL_FROM_DATABASE=82542 Gigabit Ethernet Controller (Fiber) (NC6132 Gigabit Ethernet Adapter (1000-SX)) + + pci:v00008086d00001000sv00000E11sd0000B0E0* +- ID_MODEL_FROM_DATABASE=NC6133 Gigabit Ethernet Adapter (1000-LX) ++ ID_MODEL_FROM_DATABASE=82542 Gigabit Ethernet Controller (Fiber) (NC6133 Gigabit Ethernet Adapter (1000-LX)) + + pci:v00008086d00001000sv00000E11sd0000B123* +- ID_MODEL_FROM_DATABASE=NC6134 Gigabit Ethernet Adapter (1000-LX) ++ ID_MODEL_FROM_DATABASE=82542 Gigabit Ethernet Controller (Fiber) (NC6134 Gigabit Ethernet Adapter (1000-LX)) + + pci:v00008086d00001000sv00001014sd00000119* +- ID_MODEL_FROM_DATABASE=Netfinity Gigabit Ethernet SX Adapter ++ ID_MODEL_FROM_DATABASE=82542 Gigabit Ethernet Controller (Fiber) (Netfinity Gigabit Ethernet SX Adapter) + + pci:v00008086d00001000sv00008086sd00001000* +- ID_MODEL_FROM_DATABASE=PRO/1000 Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=82542 Gigabit Ethernet Controller (Fiber) (PRO/1000 Gigabit Server Adapter) + + pci:v00008086d00001001* + ID_MODEL_FROM_DATABASE=82543GC Gigabit Ethernet Controller (Fiber) + + pci:v00008086d00001001sv00000E11sd0000004A* +- ID_MODEL_FROM_DATABASE=NC6136 Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=82543GC Gigabit Ethernet Controller (Fiber) (NC6136 Gigabit Server Adapter) + + pci:v00008086d00001001sv00001014sd000001EA* +- ID_MODEL_FROM_DATABASE=Netfinity Gigabit Ethernet SX Adapter ++ ID_MODEL_FROM_DATABASE=82543GC Gigabit Ethernet Controller (Fiber) (Netfinity Gigabit Ethernet SX Adapter) + + pci:v00008086d00001001sv00008086sd00001002* +- ID_MODEL_FROM_DATABASE=PRO/1000 F Server Adapter ++ ID_MODEL_FROM_DATABASE=82543GC Gigabit Ethernet Controller (Fiber) (PRO/1000 F Server Adapter) + + pci:v00008086d00001001sv00008086sd00001003* +- ID_MODEL_FROM_DATABASE=PRO/1000 F Server Adapter ++ ID_MODEL_FROM_DATABASE=82543GC Gigabit Ethernet Controller (Fiber) (PRO/1000 F Server Adapter) + + pci:v00008086d00001002* + ID_MODEL_FROM_DATABASE=Pro 100 LAN+Modem 56 Cardbus II +@@ -56823,64 +56823,64 @@ pci:v00008086d00001002sv00008086sd0000200E* + ID_MODEL_FROM_DATABASE=Pro 100 LAN+Modem 56 Cardbus II + + pci:v00008086d00001002sv00008086sd00002013* +- ID_MODEL_FROM_DATABASE=Pro 100 SR Mobile Combo Adapter ++ ID_MODEL_FROM_DATABASE=Pro 100 LAN+Modem 56 Cardbus II (Pro 100 SR Mobile Combo Adapter) + + pci:v00008086d00001002sv00008086sd00002017* +- ID_MODEL_FROM_DATABASE=Pro 100 S Combo Mobile Adapter ++ ID_MODEL_FROM_DATABASE=Pro 100 LAN+Modem 56 Cardbus II (Pro 100 S Combo Mobile Adapter) + + pci:v00008086d00001004* + ID_MODEL_FROM_DATABASE=82543GC Gigabit Ethernet Controller (Copper) + + pci:v00008086d00001004sv00000E11sd00000049* +- ID_MODEL_FROM_DATABASE=NC7132 Gigabit Upgrade Module ++ ID_MODEL_FROM_DATABASE=82543GC Gigabit Ethernet Controller (Copper) (NC7132 Gigabit Upgrade Module) + + pci:v00008086d00001004sv00000E11sd0000B1A4* +- ID_MODEL_FROM_DATABASE=NC7131 Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=82543GC Gigabit Ethernet Controller (Copper) (NC7131 Gigabit Server Adapter) + + pci:v00008086d00001004sv00001014sd000010F2* +- ID_MODEL_FROM_DATABASE=Gigabit Ethernet Server Adapter ++ ID_MODEL_FROM_DATABASE=82543GC Gigabit Ethernet Controller (Copper) (Gigabit Ethernet Server Adapter) + + pci:v00008086d00001004sv00008086sd00001004* +- ID_MODEL_FROM_DATABASE=PRO/1000 T Server Adapter ++ ID_MODEL_FROM_DATABASE=82543GC Gigabit Ethernet Controller (Copper) (PRO/1000 T Server Adapter) + + pci:v00008086d00001004sv00008086sd00002004* +- ID_MODEL_FROM_DATABASE=PRO/1000 T Server Adapter ++ ID_MODEL_FROM_DATABASE=82543GC Gigabit Ethernet Controller (Copper) (PRO/1000 T Server Adapter) + + pci:v00008086d00001008* + ID_MODEL_FROM_DATABASE=82544EI Gigabit Ethernet Controller (Copper) + + pci:v00008086d00001008sv00001014sd00000269* +- ID_MODEL_FROM_DATABASE=iSeries 1000/100/10 Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=82544EI Gigabit Ethernet Controller (Copper) (iSeries 1000/100/10 Ethernet Adapter) + + pci:v00008086d00001008sv00001028sd0000011B* +- ID_MODEL_FROM_DATABASE=PowerEdge 1650/2550 ++ ID_MODEL_FROM_DATABASE=82544EI Gigabit Ethernet Controller (Copper) (PowerEdge 1650/2550) + + pci:v00008086d00001008sv00001028sd0000011C* +- ID_MODEL_FROM_DATABASE=PRO/1000 XT Network Connection ++ ID_MODEL_FROM_DATABASE=82544EI Gigabit Ethernet Controller (Copper) (PRO/1000 XT Network Connection) + + pci:v00008086d00001008sv00008086sd00001107* +- ID_MODEL_FROM_DATABASE=PRO/1000 XT Server Adapter ++ ID_MODEL_FROM_DATABASE=82544EI Gigabit Ethernet Controller (Copper) (PRO/1000 XT Server Adapter) + + pci:v00008086d00001008sv00008086sd00002107* +- ID_MODEL_FROM_DATABASE=PRO/1000 XT Server Adapter ++ ID_MODEL_FROM_DATABASE=82544EI Gigabit Ethernet Controller (Copper) (PRO/1000 XT Server Adapter) + + pci:v00008086d00001008sv00008086sd00002110* +- ID_MODEL_FROM_DATABASE=PRO/1000 XT Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82544EI Gigabit Ethernet Controller (Copper) (PRO/1000 XT Desktop Adapter) + + pci:v00008086d00001008sv00008086sd00003108* +- ID_MODEL_FROM_DATABASE=PRO/1000 XT Network Connection ++ ID_MODEL_FROM_DATABASE=82544EI Gigabit Ethernet Controller (Copper) (PRO/1000 XT Network Connection) + + pci:v00008086d00001009* + ID_MODEL_FROM_DATABASE=82544EI Gigabit Ethernet Controller (Fiber) + + pci:v00008086d00001009sv00001014sd00000268* +- ID_MODEL_FROM_DATABASE=iSeries Gigabit Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=82544EI Gigabit Ethernet Controller (Fiber) (iSeries Gigabit Ethernet Adapter) + + pci:v00008086d00001009sv00008086sd00001109* +- ID_MODEL_FROM_DATABASE=PRO/1000 XF Server Adapter ++ ID_MODEL_FROM_DATABASE=82544EI Gigabit Ethernet Controller (Fiber) (PRO/1000 XF Server Adapter) + + pci:v00008086d00001009sv00008086sd00002109* +- ID_MODEL_FROM_DATABASE=PRO/1000 XF Server Adapter ++ ID_MODEL_FROM_DATABASE=82544EI Gigabit Ethernet Controller (Fiber) (PRO/1000 XF Server Adapter) + + pci:v00008086d0000100A* + ID_MODEL_FROM_DATABASE=82540EM Gigabit Ethernet Controller +@@ -56889,286 +56889,286 @@ pci:v00008086d0000100C* + ID_MODEL_FROM_DATABASE=82544GC Gigabit Ethernet Controller (Copper) + + pci:v00008086d0000100Csv00008086sd00001112* +- ID_MODEL_FROM_DATABASE=PRO/1000 T Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82544GC Gigabit Ethernet Controller (Copper) (PRO/1000 T Desktop Adapter) + + pci:v00008086d0000100Csv00008086sd00002112* +- ID_MODEL_FROM_DATABASE=PRO/1000 T Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82544GC Gigabit Ethernet Controller (Copper) (PRO/1000 T Desktop Adapter) + + pci:v00008086d0000100D* + ID_MODEL_FROM_DATABASE=82544GC Gigabit Ethernet Controller (LOM) + + pci:v00008086d0000100Dsv00001028sd00000123* +- ID_MODEL_FROM_DATABASE=PRO/1000 XT Network Connection ++ ID_MODEL_FROM_DATABASE=82544GC Gigabit Ethernet Controller (LOM) (PRO/1000 XT Network Connection) + + pci:v00008086d0000100Dsv00001079sd0000891F* +- ID_MODEL_FROM_DATABASE=82544GC Based Network Connection ++ ID_MODEL_FROM_DATABASE=82544GC Gigabit Ethernet Controller (LOM) (82544GC Based Network Connection) + + pci:v00008086d0000100Dsv00004C53sd00001080* +- ID_MODEL_FROM_DATABASE=CT8 mainboard ++ ID_MODEL_FROM_DATABASE=82544GC Gigabit Ethernet Controller (LOM) (CT8 mainboard) + + pci:v00008086d0000100Dsv00008086sd0000110D* +- ID_MODEL_FROM_DATABASE=82544GC Based Network Connection ++ ID_MODEL_FROM_DATABASE=82544GC Gigabit Ethernet Controller (LOM) (82544GC Based Network Connection) + + pci:v00008086d0000100E* + ID_MODEL_FROM_DATABASE=82540EM Gigabit Ethernet Controller + + pci:v00008086d0000100Esv00001014sd00000265* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Network Connection ++ ID_MODEL_FROM_DATABASE=82540EM Gigabit Ethernet Controller (PRO/1000 MT Network Connection) + + pci:v00008086d0000100Esv00001014sd00000267* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Network Connection ++ ID_MODEL_FROM_DATABASE=82540EM Gigabit Ethernet Controller (PRO/1000 MT Network Connection) + + pci:v00008086d0000100Esv00001014sd0000026A* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Network Connection ++ ID_MODEL_FROM_DATABASE=82540EM Gigabit Ethernet Controller (PRO/1000 MT Network Connection) + + pci:v00008086d0000100Esv00001028sd0000002E* +- ID_MODEL_FROM_DATABASE=Optiplex GX260 ++ ID_MODEL_FROM_DATABASE=82540EM Gigabit Ethernet Controller (Optiplex GX260) + + pci:v00008086d0000100Esv00001028sd00000134* +- ID_MODEL_FROM_DATABASE=PowerEdge 600SC ++ ID_MODEL_FROM_DATABASE=82540EM Gigabit Ethernet Controller (PowerEdge 600SC) + + pci:v00008086d0000100Esv00001028sd00000151* +- ID_MODEL_FROM_DATABASE=Optiplex GX270 ++ ID_MODEL_FROM_DATABASE=82540EM Gigabit Ethernet Controller (Optiplex GX270) + + pci:v00008086d0000100Esv0000107Bsd00008920* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82540EM Gigabit Ethernet Controller (PRO/1000 MT Desktop Adapter) + + pci:v00008086d0000100Esv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82540EM Gigabit Ethernet Controller (QEMU Virtual Machine) + + pci:v00008086d0000100Esv00008086sd0000001E* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82540EM Gigabit Ethernet Controller (PRO/1000 MT Desktop Adapter) + + pci:v00008086d0000100Esv00008086sd0000002E* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82540EM Gigabit Ethernet Controller (PRO/1000 MT Desktop Adapter) + + pci:v00008086d0000100Esv00008086sd00001376* +- ID_MODEL_FROM_DATABASE=PRO/1000 GT Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82540EM Gigabit Ethernet Controller (PRO/1000 GT Desktop Adapter) + + pci:v00008086d0000100Esv00008086sd00001476* +- ID_MODEL_FROM_DATABASE=PRO/1000 GT Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82540EM Gigabit Ethernet Controller (PRO/1000 GT Desktop Adapter) + + pci:v00008086d0000100F* + ID_MODEL_FROM_DATABASE=82545EM Gigabit Ethernet Controller (Copper) + + pci:v00008086d0000100Fsv00001014sd00000269* +- ID_MODEL_FROM_DATABASE=iSeries 1000/100/10 Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=82545EM Gigabit Ethernet Controller (Copper) (iSeries 1000/100/10 Ethernet Adapter) + + pci:v00008086d0000100Fsv00001014sd0000028E* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Network Connection ++ ID_MODEL_FROM_DATABASE=82545EM Gigabit Ethernet Controller (Copper) (PRO/1000 MT Network Connection) + + pci:v00008086d0000100Fsv000015ADsd00000750* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Single Port Adapter ++ ID_MODEL_FROM_DATABASE=82545EM Gigabit Ethernet Controller (Copper) (PRO/1000 MT Single Port Adapter) + + pci:v00008086d0000100Fsv00008086sd00001000* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Network Connection ++ ID_MODEL_FROM_DATABASE=82545EM Gigabit Ethernet Controller (Copper) (PRO/1000 MT Network Connection) + + pci:v00008086d0000100Fsv00008086sd00001001* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Server Adapter ++ ID_MODEL_FROM_DATABASE=82545EM Gigabit Ethernet Controller (Copper) (PRO/1000 MT Server Adapter) + + pci:v00008086d00001010* + ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller (Copper) + + pci:v00008086d00001010sv00000E11sd000000DB* +- ID_MODEL_FROM_DATABASE=NC7170 Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller (Copper) (NC7170 Gigabit Server Adapter) + + pci:v00008086d00001010sv00001014sd0000027C* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Dual Port Network Adapter ++ ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller (Copper) (PRO/1000 MT Dual Port Network Adapter) + + pci:v00008086d00001010sv000015ADsd00000760* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Dual Port Adapter ++ ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller (Copper) (PRO/1000 MT Dual Port Adapter) + + pci:v00008086d00001010sv000018FBsd00007872* +- ID_MODEL_FROM_DATABASE=RESlink-X ++ ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller (Copper) (RESlink-X) + + pci:v00008086d00001010sv00001FC1sd00000026* +- ID_MODEL_FROM_DATABASE=Niagara 2260 Bypass Card ++ ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller (Copper) (Niagara 2260 Bypass Card) + + pci:v00008086d00001010sv00004C53sd00001080* +- ID_MODEL_FROM_DATABASE=CT8 mainboard ++ ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller (Copper) (CT8 mainboard) + + pci:v00008086d00001010sv00004C53sd000010A0* +- ID_MODEL_FROM_DATABASE=CA3/CR3 mainboard ++ ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller (Copper) (CA3/CR3 mainboard) + + pci:v00008086d00001010sv00008086sd00001011* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller (Copper) (PRO/1000 MT Dual Port Server Adapter) + + pci:v00008086d00001010sv00008086sd00001012* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller (Copper) (PRO/1000 MT Dual Port Server Adapter) + + pci:v00008086d00001010sv00008086sd0000101A* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Dual Port Network Connection ++ ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller (Copper) (PRO/1000 MT Dual Port Network Connection) + + pci:v00008086d00001010sv00008086sd00003424* +- ID_MODEL_FROM_DATABASE=SE7501HG2 Mainboard ++ ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller (Copper) (SE7501HG2 Mainboard) + + pci:v00008086d00001011* + ID_MODEL_FROM_DATABASE=82545EM Gigabit Ethernet Controller (Fiber) + + pci:v00008086d00001011sv00001014sd00000268* +- ID_MODEL_FROM_DATABASE=iSeries Gigabit Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=82545EM Gigabit Ethernet Controller (Fiber) (iSeries Gigabit Ethernet Adapter) + + pci:v00008086d00001011sv00008086sd00001002* +- ID_MODEL_FROM_DATABASE=PRO/1000 MF Server Adapter ++ ID_MODEL_FROM_DATABASE=82545EM Gigabit Ethernet Controller (Fiber) (PRO/1000 MF Server Adapter) + + pci:v00008086d00001011sv00008086sd00001003* +- ID_MODEL_FROM_DATABASE=PRO/1000 MF Server Adapter (LX) ++ ID_MODEL_FROM_DATABASE=82545EM Gigabit Ethernet Controller (Fiber) (PRO/1000 MF Server Adapter (LX)) + + pci:v00008086d00001012* + ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller (Fiber) + + pci:v00008086d00001012sv00000E11sd000000DC* +- ID_MODEL_FROM_DATABASE=NC6170 Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller (Fiber) (NC6170 Gigabit Server Adapter) + + pci:v00008086d00001012sv00008086sd00001012* +- ID_MODEL_FROM_DATABASE=PRO/1000 MF Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller (Fiber) (PRO/1000 MF Dual Port Server Adapter) + + pci:v00008086d00001013* + ID_MODEL_FROM_DATABASE=82541EI Gigabit Ethernet Controller + + pci:v00008086d00001013sv00008086sd00000013* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Network Connection ++ ID_MODEL_FROM_DATABASE=82541EI Gigabit Ethernet Controller (PRO/1000 MT Network Connection) + + pci:v00008086d00001013sv00008086sd00001013* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Network Connection ++ ID_MODEL_FROM_DATABASE=82541EI Gigabit Ethernet Controller (PRO/1000 MT Network Connection) + + pci:v00008086d00001013sv00008086sd00001113* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82541EI Gigabit Ethernet Controller (PRO/1000 MT Desktop Adapter) + + pci:v00008086d00001014* + ID_MODEL_FROM_DATABASE=82541ER Gigabit Ethernet Controller + + pci:v00008086d00001014sv00008086sd00000014* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Desktop Connection ++ ID_MODEL_FROM_DATABASE=82541ER Gigabit Ethernet Controller (PRO/1000 MT Desktop Connection) + + pci:v00008086d00001014sv00008086sd00001014* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Network Connection ++ ID_MODEL_FROM_DATABASE=82541ER Gigabit Ethernet Controller (PRO/1000 MT Network Connection) + + pci:v00008086d00001015* + ID_MODEL_FROM_DATABASE=82540EM Gigabit Ethernet Controller (LOM) + + pci:v00008086d00001015sv00008086sd00001015* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Mobile Connection ++ ID_MODEL_FROM_DATABASE=82540EM Gigabit Ethernet Controller (LOM) (PRO/1000 MT Mobile Connection) + + pci:v00008086d00001016* + ID_MODEL_FROM_DATABASE=82540EP Gigabit Ethernet Controller (Mobile) + + pci:v00008086d00001016sv00001014sd0000052C* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Mobile Connection ++ ID_MODEL_FROM_DATABASE=82540EP Gigabit Ethernet Controller (Mobile) (PRO/1000 MT Mobile Connection) + + pci:v00008086d00001016sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Mobile Connection ++ ID_MODEL_FROM_DATABASE=82540EP Gigabit Ethernet Controller (Mobile) (PRO/1000 MT Mobile Connection) + + pci:v00008086d00001016sv00008086sd00001016* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Mobile Connection ++ ID_MODEL_FROM_DATABASE=82540EP Gigabit Ethernet Controller (Mobile) (PRO/1000 MT Mobile Connection) + + pci:v00008086d00001017* + ID_MODEL_FROM_DATABASE=82540EP Gigabit Ethernet Controller + + pci:v00008086d00001017sv00008086sd00001017* +- ID_MODEL_FROM_DATABASE=PR0/1000 MT Desktop Connection ++ ID_MODEL_FROM_DATABASE=82540EP Gigabit Ethernet Controller (PR0/1000 MT Desktop Connection) + + pci:v00008086d00001018* + ID_MODEL_FROM_DATABASE=82541EI Gigabit Ethernet Controller + + pci:v00008086d00001018sv00008086sd00001018* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Mobile Connection ++ ID_MODEL_FROM_DATABASE=82541EI Gigabit Ethernet Controller (PRO/1000 MT Mobile Connection) + + pci:v00008086d00001019* + ID_MODEL_FROM_DATABASE=82547EI Gigabit Ethernet Controller + + pci:v00008086d00001019sv00001458sd00001019* +- ID_MODEL_FROM_DATABASE=GA-8IPE1000 Pro2 motherboard (865PE) ++ ID_MODEL_FROM_DATABASE=82547EI Gigabit Ethernet Controller (GA-8IPE1000 Pro2 motherboard (865PE)) + + pci:v00008086d00001019sv00001458sd0000E000* +- ID_MODEL_FROM_DATABASE=Intel Gigabit Ethernet (Kenai II) ++ ID_MODEL_FROM_DATABASE=82547EI Gigabit Ethernet Controller (Intel Gigabit Ethernet (Kenai II)) + + pci:v00008086d00001019sv00008086sd00001019* +- ID_MODEL_FROM_DATABASE=PRO/1000 CT Desktop Connection ++ ID_MODEL_FROM_DATABASE=82547EI Gigabit Ethernet Controller (PRO/1000 CT Desktop Connection) + + pci:v00008086d00001019sv00008086sd0000301F* +- ID_MODEL_FROM_DATABASE=D865PERL mainboard ++ ID_MODEL_FROM_DATABASE=82547EI Gigabit Ethernet Controller (D865PERL mainboard) + + pci:v00008086d00001019sv00008086sd00003025* +- ID_MODEL_FROM_DATABASE=D875PBZ motherboard ++ ID_MODEL_FROM_DATABASE=82547EI Gigabit Ethernet Controller (D875PBZ motherboard) + + pci:v00008086d00001019sv00008086sd0000302C* +- ID_MODEL_FROM_DATABASE=Intel 82865G Mainboard (D865GBF) ++ ID_MODEL_FROM_DATABASE=82547EI Gigabit Ethernet Controller (Intel 82865G Mainboard (D865GBF)) + + pci:v00008086d00001019sv00008086sd00003427* +- ID_MODEL_FROM_DATABASE=S875WP1-E mainboard ++ ID_MODEL_FROM_DATABASE=82547EI Gigabit Ethernet Controller (S875WP1-E mainboard) + + pci:v00008086d0000101A* + ID_MODEL_FROM_DATABASE=82547EI Gigabit Ethernet Controller (Mobile) + + pci:v00008086d0000101Asv00008086sd0000101A* +- ID_MODEL_FROM_DATABASE=PRO/1000 CT Mobile Connection ++ ID_MODEL_FROM_DATABASE=82547EI Gigabit Ethernet Controller (Mobile) (PRO/1000 CT Mobile Connection) + + pci:v00008086d0000101D* + ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller + + pci:v00008086d0000101Dsv00008086sd00001000* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Quad Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82546EB Gigabit Ethernet Controller (PRO/1000 MT Quad Port Server Adapter) + + pci:v00008086d0000101E* + ID_MODEL_FROM_DATABASE=82540EP Gigabit Ethernet Controller (Mobile) + + pci:v00008086d0000101Esv00001014sd00000549* +- ID_MODEL_FROM_DATABASE=Thinkpad ++ ID_MODEL_FROM_DATABASE=82540EP Gigabit Ethernet Controller (Mobile) (Thinkpad) + + pci:v00008086d0000101Esv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Mobile Connection ++ ID_MODEL_FROM_DATABASE=82540EP Gigabit Ethernet Controller (Mobile) (PRO/1000 MT Mobile Connection) + + pci:v00008086d0000101Esv00008086sd0000101E* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Mobile Connection ++ ID_MODEL_FROM_DATABASE=82540EP Gigabit Ethernet Controller (Mobile) (PRO/1000 MT Mobile Connection) + + pci:v00008086d00001026* + ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller + + pci:v00008086d00001026sv00001028sd00000168* +- ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller (Precision Workstation 670 Mainboard) + + pci:v00008086d00001026sv00001028sd00000169* +- ID_MODEL_FROM_DATABASE=Precision 470 ++ ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller (Precision 470) + + pci:v00008086d00001026sv00008086sd00001000* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Server Connection ++ ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller (PRO/1000 MT Server Connection) + + pci:v00008086d00001026sv00008086sd00001001* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Server Adapter ++ ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller (PRO/1000 MT Server Adapter) + + pci:v00008086d00001026sv00008086sd00001002* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Server Adapter ++ ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller (PRO/1000 MT Server Adapter) + + pci:v00008086d00001026sv00008086sd00001003* +- ID_MODEL_FROM_DATABASE=PRO/1000 GT Server Adapter ++ ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller (PRO/1000 GT Server Adapter) + + pci:v00008086d00001026sv00008086sd00001026* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Server Connection ++ ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller (PRO/1000 MT Server Connection) + + pci:v00008086d00001027* + ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller + + pci:v00008086d00001027sv0000103Csd00003103* +- ID_MODEL_FROM_DATABASE=NC310F PCI-X Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller (NC310F PCI-X Gigabit Server Adapter) + + pci:v00008086d00001027sv00008086sd00001001* +- ID_MODEL_FROM_DATABASE=PRO/1000 MF Server Adapter(LX) ++ ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller (PRO/1000 MF Server Adapter(LX)) + + pci:v00008086d00001027sv00008086sd00001002* +- ID_MODEL_FROM_DATABASE=PRO/1000 MF Server Adapter(LX) ++ ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller (PRO/1000 MF Server Adapter(LX)) + + pci:v00008086d00001027sv00008086sd00001003* +- ID_MODEL_FROM_DATABASE=PRO/1000 MF Server Adapter(LX) ++ ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller (PRO/1000 MF Server Adapter(LX)) + + pci:v00008086d00001027sv00008086sd00001027* +- ID_MODEL_FROM_DATABASE=PRO/1000 MF Server Adapter ++ ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller (PRO/1000 MF Server Adapter) + + pci:v00008086d00001028* + ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller + + pci:v00008086d00001028sv00008086sd00001028* +- ID_MODEL_FROM_DATABASE=PRO/1000 MB Server Connection ++ ID_MODEL_FROM_DATABASE=82545GM Gigabit Ethernet Controller (PRO/1000 MB Server Connection) + + pci:v00008086d00001029* + ID_MODEL_FROM_DATABASE=82559 Ethernet Controller +@@ -57180,31 +57180,31 @@ pci:v00008086d00001031* + ID_MODEL_FROM_DATABASE=82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller + + pci:v00008086d00001031sv00001014sd00000209* +- ID_MODEL_FROM_DATABASE=ThinkPad A/T/X Series ++ ID_MODEL_FROM_DATABASE=82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller (ThinkPad A/T/X Series) + + pci:v00008086d00001031sv0000104Dsd000080E7* +- ID_MODEL_FROM_DATABASE=Vaio PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ++ ID_MODEL_FROM_DATABASE=82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller (Vaio PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP) + + pci:v00008086d00001031sv0000104Dsd0000813C* +- ID_MODEL_FROM_DATABASE=Vaio PCG-GRV616G ++ ID_MODEL_FROM_DATABASE=82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller (Vaio PCG-GRV616G) + + pci:v00008086d00001031sv0000107Bsd00005350* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00001031sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00001031sv0000144Dsd0000C000* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00001031sv0000144Dsd0000C001* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00001031sv0000144Dsd0000C003* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00001031sv0000144Dsd0000C006* +- ID_MODEL_FROM_DATABASE=vpr Matrix 170B4 ++ ID_MODEL_FROM_DATABASE=82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller (vpr Matrix 170B4) + + pci:v00008086d00001032* + ID_MODEL_FROM_DATABASE=82801CAM (ICH3) PRO/100 VE Ethernet Controller +@@ -57228,16 +57228,16 @@ pci:v00008086d00001038* + ID_MODEL_FROM_DATABASE=82801CAM (ICH3) PRO/100 VM (KM) Ethernet Controller + + pci:v00008086d00001038sv00000E11sd00000098* +- ID_MODEL_FROM_DATABASE=Evo N600c ++ ID_MODEL_FROM_DATABASE=82801CAM (ICH3) PRO/100 VM (KM) Ethernet Controller (Evo N600c) + + pci:v00008086d00001039* + ID_MODEL_FROM_DATABASE=82801DB PRO/100 VE (LOM) Ethernet Controller + + pci:v00008086d00001039sv00001014sd00000267* +- ID_MODEL_FROM_DATABASE=NetVista A30p ++ ID_MODEL_FROM_DATABASE=82801DB PRO/100 VE (LOM) Ethernet Controller (NetVista A30p) + + pci:v00008086d00001039sv0000114Asd00000582* +- ID_MODEL_FROM_DATABASE=PC8 onboard ethernet ETH1 ++ ID_MODEL_FROM_DATABASE=82801DB PRO/100 VE (LOM) Ethernet Controller (PC8 onboard ethernet ETH1) + + pci:v00008086d0000103A* + ID_MODEL_FROM_DATABASE=82801DB PRO/100 VE (CNR) Ethernet Controller +@@ -57252,13 +57252,13 @@ pci:v00008086d0000103D* + ID_MODEL_FROM_DATABASE=82801DB PRO/100 VE (MOB) Ethernet Controller + + pci:v00008086d0000103Dsv00001014sd00000522* +- ID_MODEL_FROM_DATABASE=ThinkPad R40 ++ ID_MODEL_FROM_DATABASE=82801DB PRO/100 VE (MOB) Ethernet Controller (ThinkPad R40) + + pci:v00008086d0000103Dsv00001028sd00002002* +- ID_MODEL_FROM_DATABASE=Latitude D500 ++ ID_MODEL_FROM_DATABASE=82801DB PRO/100 VE (MOB) Ethernet Controller (Latitude D500) + + pci:v00008086d0000103Dsv00008086sd0000103D* +- ID_MODEL_FROM_DATABASE=82562EZ 10/100 Ethernet Controller ++ ID_MODEL_FROM_DATABASE=82801DB PRO/100 VE (MOB) Ethernet Controller (82562EZ 10/100 Ethernet Controller) + + pci:v00008086d0000103E* + ID_MODEL_FROM_DATABASE=82801DB PRO/100 VM (MOB) Ethernet Controller +@@ -57267,43 +57267,43 @@ pci:v00008086d00001040* + ID_MODEL_FROM_DATABASE=536EP Data Fax Modem + + pci:v00008086d00001040sv000016BEsd00001040* +- ID_MODEL_FROM_DATABASE=V.9X DSP Data Fax Modem ++ ID_MODEL_FROM_DATABASE=536EP Data Fax Modem (V.9X DSP Data Fax Modem) + + pci:v00008086d00001043* + ID_MODEL_FROM_DATABASE=PRO/Wireless LAN 2100 3B Mini PCI Adapter + + pci:v00008086d00001043sv0000103Csd000008B0* +- ID_MODEL_FROM_DATABASE=tc1100 tablet ++ ID_MODEL_FROM_DATABASE=PRO/Wireless LAN 2100 3B Mini PCI Adapter (tc1100 tablet) + + pci:v00008086d00001043sv00008086sd00002522* +- ID_MODEL_FROM_DATABASE=Samsung X10/P30 integrated WLAN ++ ID_MODEL_FROM_DATABASE=PRO/Wireless LAN 2100 3B Mini PCI Adapter (Samsung X10/P30 integrated WLAN) + + pci:v00008086d00001043sv00008086sd00002527* +- ID_MODEL_FROM_DATABASE=MIM2000/Centrino ++ ID_MODEL_FROM_DATABASE=PRO/Wireless LAN 2100 3B Mini PCI Adapter (MIM2000/Centrino) + + pci:v00008086d00001043sv00008086sd00002561* +- ID_MODEL_FROM_DATABASE=Dell Latitude D800 ++ ID_MODEL_FROM_DATABASE=PRO/Wireless LAN 2100 3B Mini PCI Adapter (Dell Latitude D800) + + pci:v00008086d00001043sv00008086sd00002581* +- ID_MODEL_FROM_DATABASE=Toshiba Satellite M10 ++ ID_MODEL_FROM_DATABASE=PRO/Wireless LAN 2100 3B Mini PCI Adapter (Toshiba Satellite M10) + + pci:v00008086d00001048* + ID_MODEL_FROM_DATABASE=82597EX 10GbE Ethernet Controller + + pci:v00008086d00001048sv00008086sd0000A01F* +- ID_MODEL_FROM_DATABASE=PRO/10GbE LR Server Adapter ++ ID_MODEL_FROM_DATABASE=82597EX 10GbE Ethernet Controller (PRO/10GbE LR Server Adapter) + + pci:v00008086d00001048sv00008086sd0000A11F* +- ID_MODEL_FROM_DATABASE=PRO/10GbE LR Server Adapter ++ ID_MODEL_FROM_DATABASE=82597EX 10GbE Ethernet Controller (PRO/10GbE LR Server Adapter) + + pci:v00008086d00001049* + ID_MODEL_FROM_DATABASE=82566MM Gigabit Network Connection + + pci:v00008086d00001049sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=82566MM Gigabit Network Connection (Compaq 6910p) + + pci:v00008086d00001049sv000017AAsd000020B9* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82566MM Gigabit Network Connection (ThinkPad T61/R61) + + pci:v00008086d0000104A* + ID_MODEL_FROM_DATABASE=82566DM Gigabit Network Connection +@@ -57321,22 +57321,22 @@ pci:v00008086d00001050* + ID_MODEL_FROM_DATABASE=82562EZ 10/100 Ethernet Controller + + pci:v00008086d00001050sv00001028sd0000019D* +- ID_MODEL_FROM_DATABASE=Dimension 3000 ++ ID_MODEL_FROM_DATABASE=82562EZ 10/100 Ethernet Controller (Dimension 3000) + + pci:v00008086d00001050sv00001462sd0000728C* +- ID_MODEL_FROM_DATABASE=865PE Neo2 (MS-6728) ++ ID_MODEL_FROM_DATABASE=82562EZ 10/100 Ethernet Controller (865PE Neo2 (MS-6728)) + + pci:v00008086d00001050sv00001462sd0000758C* +- ID_MODEL_FROM_DATABASE=MS-6758 (875P Neo) ++ ID_MODEL_FROM_DATABASE=82562EZ 10/100 Ethernet Controller (MS-6758 (875P Neo)) + + pci:v00008086d00001050sv00008086sd00003020* +- ID_MODEL_FROM_DATABASE=D865PERL mainboard ++ ID_MODEL_FROM_DATABASE=82562EZ 10/100 Ethernet Controller (D865PERL mainboard) + + pci:v00008086d00001050sv00008086sd0000302F* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GBF ++ ID_MODEL_FROM_DATABASE=82562EZ 10/100 Ethernet Controller (Desktop Board D865GBF) + + pci:v00008086d00001050sv00008086sd00003427* +- ID_MODEL_FROM_DATABASE=S875WP1-E mainboard ++ ID_MODEL_FROM_DATABASE=82562EZ 10/100 Ethernet Controller (S875WP1-E mainboard) + + pci:v00008086d00001051* + ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) integrated LAN Controller +@@ -57369,70 +57369,70 @@ pci:v00008086d0000105E* + ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller + + pci:v00008086d0000105Esv0000103Csd00007044* +- ID_MODEL_FROM_DATABASE=NC360T PCI Express Dual Port Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (NC360T PCI Express Dual Port Gigabit Server Adapter) + + pci:v00008086d0000105Esv0000103Csd0000704E* +- ID_MODEL_FROM_DATABASE=Dual Port 1000Base-T (PCIe) [AD337A] ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (Dual Port 1000Base-T (PCIe) [AD337A]) + + pci:v00008086d0000105Esv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (CR11/VR11 Single Board Computer) + + pci:v00008086d0000105Esv00001775sd00006003* +- ID_MODEL_FROM_DATABASE=Telum GE-QT ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (Telum GE-QT) + + pci:v00008086d0000105Esv000018DFsd00001214* +- ID_MODEL_FROM_DATABASE=2x 1GbE, PCIe x1, dual Intel 82571EB chips ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (2x 1GbE, PCIe x1, dual Intel 82571EB chips) + + pci:v00008086d0000105Esv00008086sd0000005E* +- ID_MODEL_FROM_DATABASE=PRO/1000 PT Dual Port Server Connection ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (PRO/1000 PT Dual Port Server Connection) + + pci:v00008086d0000105Esv00008086sd0000105E* +- ID_MODEL_FROM_DATABASE=PRO/1000 PT Dual Port Network Connection ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (PRO/1000 PT Dual Port Network Connection) + + pci:v00008086d0000105Esv00008086sd000010D5* +- ID_MODEL_FROM_DATABASE=82571PT Gigabit PT Quad Port Server ExpressModule ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (82571PT Gigabit PT Quad Port Server ExpressModule) + + pci:v00008086d0000105Esv00008086sd0000115E* +- ID_MODEL_FROM_DATABASE=PRO/1000 PT Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (PRO/1000 PT Dual Port Server Adapter) + + pci:v00008086d0000105Esv00008086sd0000125E* +- ID_MODEL_FROM_DATABASE=PRO/1000 PT Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (PRO/1000 PT Dual Port Server Adapter) + + pci:v00008086d0000105Esv00008086sd0000135E* +- ID_MODEL_FROM_DATABASE=PRO/1000 PT Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (PRO/1000 PT Dual Port Server Adapter) + + pci:v00008086d0000105F* + ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller + + pci:v00008086d0000105Fsv0000103Csd0000704F* +- ID_MODEL_FROM_DATABASE=Dual Port 1000Base-SX (PCIe) [AD338A] ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (Dual Port 1000Base-SX (PCIe) [AD338A]) + + pci:v00008086d0000105Fsv00008086sd0000005A* +- ID_MODEL_FROM_DATABASE=PRO/1000 PF Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (PRO/1000 PF Dual Port Server Adapter) + + pci:v00008086d0000105Fsv00008086sd0000115F* +- ID_MODEL_FROM_DATABASE=PRO/1000 PF Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (PRO/1000 PF Dual Port Server Adapter) + + pci:v00008086d0000105Fsv00008086sd0000125F* +- ID_MODEL_FROM_DATABASE=PRO/1000 PF Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (PRO/1000 PF Dual Port Server Adapter) + + pci:v00008086d0000105Fsv00008086sd0000135F* +- ID_MODEL_FROM_DATABASE=PRO/1000 PF Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (PRO/1000 PF Dual Port Server Adapter) + + pci:v00008086d00001060* + ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller + + pci:v00008086d00001060sv00008086sd00000060* +- ID_MODEL_FROM_DATABASE=PRO/1000 PB Dual Port Server Connection ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (PRO/1000 PB Dual Port Server Connection) + + pci:v00008086d00001060sv00008086sd00001060* +- ID_MODEL_FROM_DATABASE=PRO/1000 PB Dual Port Server Connection ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (PRO/1000 PB Dual Port Server Connection) + + pci:v00008086d00001064* + ID_MODEL_FROM_DATABASE=82562ET/EZ/GT/GZ - PRO/100 VE (LOM) Ethernet Controller + + pci:v00008086d00001064sv00001043sd000080F8* +- ID_MODEL_FROM_DATABASE=P5GD1-VW Mainboard ++ ID_MODEL_FROM_DATABASE=82562ET/EZ/GT/GZ - PRO/100 VE (LOM) Ethernet Controller (P5GD1-VW Mainboard) + + pci:v00008086d00001065* + ID_MODEL_FROM_DATABASE=82562ET/EZ/GT/GZ - PRO/100 VE Ethernet Controller +@@ -57459,148 +57459,148 @@ pci:v00008086d00001075* + ID_MODEL_FROM_DATABASE=82547GI Gigabit Ethernet Controller + + pci:v00008086d00001075sv00001028sd00000165* +- ID_MODEL_FROM_DATABASE=PowerEdge 750 ++ ID_MODEL_FROM_DATABASE=82547GI Gigabit Ethernet Controller (PowerEdge 750) + + pci:v00008086d00001075sv00008086sd00000075* +- ID_MODEL_FROM_DATABASE=PRO/1000 CT Network Connection ++ ID_MODEL_FROM_DATABASE=82547GI Gigabit Ethernet Controller (PRO/1000 CT Network Connection) + + pci:v00008086d00001075sv00008086sd00001075* +- ID_MODEL_FROM_DATABASE=PRO/1000 CT Network Connection ++ ID_MODEL_FROM_DATABASE=82547GI Gigabit Ethernet Controller (PRO/1000 CT Network Connection) + + pci:v00008086d00001076* + ID_MODEL_FROM_DATABASE=82541GI Gigabit Ethernet Controller + + pci:v00008086d00001076sv00001028sd00000165* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Network Connection ++ ID_MODEL_FROM_DATABASE=82541GI Gigabit Ethernet Controller (PRO/1000 MT Network Connection) + + pci:v00008086d00001076sv00001028sd0000016D* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Network Connection ++ ID_MODEL_FROM_DATABASE=82541GI Gigabit Ethernet Controller (PRO/1000 MT Network Connection) + + pci:v00008086d00001076sv00001028sd0000019A* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Network Connection ++ ID_MODEL_FROM_DATABASE=82541GI Gigabit Ethernet Controller (PRO/1000 MT Network Connection) + + pci:v00008086d00001076sv00001028sd0000106D* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Network Connection ++ ID_MODEL_FROM_DATABASE=82541GI Gigabit Ethernet Controller (PRO/1000 MT Network Connection) + + pci:v00008086d00001076sv00008086sd00000076* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Network Connection ++ ID_MODEL_FROM_DATABASE=82541GI Gigabit Ethernet Controller (PRO/1000 MT Network Connection) + + pci:v00008086d00001076sv00008086sd00001076* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Network Connection ++ ID_MODEL_FROM_DATABASE=82541GI Gigabit Ethernet Controller (PRO/1000 MT Network Connection) + + pci:v00008086d00001076sv00008086sd00001176* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82541GI Gigabit Ethernet Controller (PRO/1000 MT Desktop Adapter) + + pci:v00008086d00001076sv00008086sd00001276* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Network Adapter ++ ID_MODEL_FROM_DATABASE=82541GI Gigabit Ethernet Controller (PRO/1000 MT Network Adapter) + + pci:v00008086d00001077* + ID_MODEL_FROM_DATABASE=82541GI Gigabit Ethernet Controller + + pci:v00008086d00001077sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Mobile Connection ++ ID_MODEL_FROM_DATABASE=82541GI Gigabit Ethernet Controller (PRO/1000 MT Mobile Connection) + + pci:v00008086d00001077sv00008086sd00000077* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Mobile Connection ++ ID_MODEL_FROM_DATABASE=82541GI Gigabit Ethernet Controller (PRO/1000 MT Mobile Connection) + + pci:v00008086d00001077sv00008086sd00001077* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Mobile Connection ++ ID_MODEL_FROM_DATABASE=82541GI Gigabit Ethernet Controller (PRO/1000 MT Mobile Connection) + + pci:v00008086d00001078* + ID_MODEL_FROM_DATABASE=82541ER Gigabit Ethernet Controller + + pci:v00008086d00001078sv00008086sd00001078* +- ID_MODEL_FROM_DATABASE=82541ER-based Network Connection ++ ID_MODEL_FROM_DATABASE=82541ER Gigabit Ethernet Controller (82541ER-based Network Connection) + + pci:v00008086d00001079* + ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller + + pci:v00008086d00001079sv0000103Csd000012A6* +- ID_MODEL_FROM_DATABASE=Dual Port 1000Base-T [A9900A] ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (Dual Port 1000Base-T [A9900A]) + + pci:v00008086d00001079sv0000103Csd000012CF* +- ID_MODEL_FROM_DATABASE=Core Dual Port 1000Base-T [AB352A] ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (Core Dual Port 1000Base-T [AB352A]) + + pci:v00008086d00001079sv00001775sd000010D0* +- ID_MODEL_FROM_DATABASE=V5D Single Board Computer Gigabit Ethernet ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (V5D Single Board Computer Gigabit Ethernet) + + pci:v00008086d00001079sv00001775sd0000CE90* +- ID_MODEL_FROM_DATABASE=CE9 ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (CE9) + + pci:v00008086d00001079sv00001FC1sd00000027* +- ID_MODEL_FROM_DATABASE=Niagara 2261 Failover NIC ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (Niagara 2261 Failover NIC) + + pci:v00008086d00001079sv00004C53sd00001090* +- ID_MODEL_FROM_DATABASE=Cx9 / Vx9 mainboard ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (Cx9 / Vx9 mainboard) + + pci:v00008086d00001079sv00004C53sd000010B0* +- ID_MODEL_FROM_DATABASE=CL9 mainboard ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (CL9 mainboard) + + pci:v00008086d00001079sv00008086sd00000079* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Dual Port Network Connection ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (PRO/1000 MT Dual Port Network Connection) + + pci:v00008086d00001079sv00008086sd00001079* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Dual Port Network Connection ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (PRO/1000 MT Dual Port Network Connection) + + pci:v00008086d00001079sv00008086sd00001179* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (PRO/1000 MT Dual Port Server Adapter) + + pci:v00008086d00001079sv00008086sd0000117A* +- ID_MODEL_FROM_DATABASE=PRO/1000 MT Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (PRO/1000 MT Dual Port Server Adapter) + + pci:v00008086d0000107A* + ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller + + pci:v00008086d0000107Asv0000103Csd000012A8* +- ID_MODEL_FROM_DATABASE=Dual Port 1000base-SX [A9899A] ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (Dual Port 1000base-SX [A9899A]) + + pci:v00008086d0000107Asv00008086sd0000107A* +- ID_MODEL_FROM_DATABASE=PRO/1000 MF Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (PRO/1000 MF Dual Port Server Adapter) + + pci:v00008086d0000107Asv00008086sd0000127A* +- ID_MODEL_FROM_DATABASE=PRO/1000 MF Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (PRO/1000 MF Dual Port Server Adapter) + + pci:v00008086d0000107B* + ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller + + pci:v00008086d0000107Bsv00008086sd0000007B* +- ID_MODEL_FROM_DATABASE=PRO/1000 MB Dual Port Server Connection ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (PRO/1000 MB Dual Port Server Connection) + + pci:v00008086d0000107Bsv00008086sd0000107B* +- ID_MODEL_FROM_DATABASE=PRO/1000 MB Dual Port Server Connection ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (PRO/1000 MB Dual Port Server Connection) + + pci:v00008086d0000107C* + ID_MODEL_FROM_DATABASE=82541PI Gigabit Ethernet Controller + + pci:v00008086d0000107Csv00008086sd00001376* +- ID_MODEL_FROM_DATABASE=PRO/1000 GT Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82541PI Gigabit Ethernet Controller (PRO/1000 GT Desktop Adapter) + + pci:v00008086d0000107Csv00008086sd00001476* +- ID_MODEL_FROM_DATABASE=PRO/1000 GT Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82541PI Gigabit Ethernet Controller (PRO/1000 GT Desktop Adapter) + + pci:v00008086d0000107D* + ID_MODEL_FROM_DATABASE=82572EI Gigabit Ethernet Controller (Copper) + + pci:v00008086d0000107Dsv00008086sd00001082* +- ID_MODEL_FROM_DATABASE=PRO/1000 PT Server Adapter ++ ID_MODEL_FROM_DATABASE=82572EI Gigabit Ethernet Controller (Copper) (PRO/1000 PT Server Adapter) + + pci:v00008086d0000107Dsv00008086sd00001084* +- ID_MODEL_FROM_DATABASE=PRO/1000 PT Server Adapter ++ ID_MODEL_FROM_DATABASE=82572EI Gigabit Ethernet Controller (Copper) (PRO/1000 PT Server Adapter) + + pci:v00008086d0000107Dsv00008086sd00001092* +- ID_MODEL_FROM_DATABASE=PRO/1000 PT Server Adapter ++ ID_MODEL_FROM_DATABASE=82572EI Gigabit Ethernet Controller (Copper) (PRO/1000 PT Server Adapter) + + pci:v00008086d0000107E* + ID_MODEL_FROM_DATABASE=82572EI Gigabit Ethernet Controller (Fiber) + + pci:v00008086d0000107Esv00008086sd00001084* +- ID_MODEL_FROM_DATABASE=PRO/1000 PF Server Adapter ++ ID_MODEL_FROM_DATABASE=82572EI Gigabit Ethernet Controller (Fiber) (PRO/1000 PF Server Adapter) + + pci:v00008086d0000107Esv00008086sd00001085* +- ID_MODEL_FROM_DATABASE=PRO/1000 PF Server Adapter ++ ID_MODEL_FROM_DATABASE=82572EI Gigabit Ethernet Controller (Fiber) (PRO/1000 PF Server Adapter) + + pci:v00008086d0000107Esv00008086sd00001094* +- ID_MODEL_FROM_DATABASE=PRO/1000 PF Server Adapter ++ ID_MODEL_FROM_DATABASE=82572EI Gigabit Ethernet Controller (Fiber) (PRO/1000 PF Server Adapter) + + pci:v00008086d0000107F* + ID_MODEL_FROM_DATABASE=82572EI Gigabit Ethernet Controller +@@ -57636,16 +57636,16 @@ pci:v00008086d0000108A* + ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller + + pci:v00008086d0000108Asv00008086sd0000108A* +- ID_MODEL_FROM_DATABASE=PRO/1000 P Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (PRO/1000 P Dual Port Server Adapter) + + pci:v00008086d0000108Asv00008086sd0000118A* +- ID_MODEL_FROM_DATABASE=PRO/1000 P Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (PRO/1000 P Dual Port Server Adapter) + + pci:v00008086d0000108B* + ID_MODEL_FROM_DATABASE=82573V Gigabit Ethernet Controller (Copper) + + pci:v00008086d0000108Bsv00001462sd0000176C* +- ID_MODEL_FROM_DATABASE=on board on MSI 945P - NEO (MS-7176) ++ ID_MODEL_FROM_DATABASE=82573V Gigabit Ethernet Controller (Copper) (on board on MSI 945P - NEO (MS-7176)) + + pci:v00008086d0000108C* + ID_MODEL_FROM_DATABASE=82573E Gigabit Ethernet Controller (Copper) +@@ -57675,13 +57675,13 @@ pci:v00008086d00001096* + ID_MODEL_FROM_DATABASE=80003ES2LAN Gigabit Ethernet Controller (Copper) + + pci:v00008086d00001096sv000015D9sd00001096* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=80003ES2LAN Gigabit Ethernet Controller (Copper) (Motherboard) + + pci:v00008086d00001096sv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=80003ES2LAN Gigabit Ethernet Controller (Copper) (X7DVL-E-O motherboard) + + pci:v00008086d00001096sv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=Intel S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=80003ES2LAN Gigabit Ethernet Controller (Copper) (Intel S5000PSLSATA Server Board) + + pci:v00008086d00001097* + ID_MODEL_FROM_DATABASE=631xESB/632xESB DPT LAN Controller (Fiber) +@@ -57693,28 +57693,28 @@ pci:v00008086d00001099* + ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (Copper) + + pci:v00008086d00001099sv00008086sd00001099* +- ID_MODEL_FROM_DATABASE=PRO/1000 GT Quad Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (Copper) (PRO/1000 GT Quad Port Server Adapter) + + pci:v00008086d0000109A* + ID_MODEL_FROM_DATABASE=82573L Gigabit Ethernet Controller + + pci:v00008086d0000109Asv00001179sd0000FF10* +- ID_MODEL_FROM_DATABASE=PRO/1000 PL ++ ID_MODEL_FROM_DATABASE=82573L Gigabit Ethernet Controller (PRO/1000 PL) + + pci:v00008086d0000109Asv000017AAsd00002001* +- ID_MODEL_FROM_DATABASE=ThinkPad T60 ++ ID_MODEL_FROM_DATABASE=82573L Gigabit Ethernet Controller (ThinkPad T60) + + pci:v00008086d0000109Asv000017AAsd0000207E* +- ID_MODEL_FROM_DATABASE=ThinkPad X60/X60s ++ ID_MODEL_FROM_DATABASE=82573L Gigabit Ethernet Controller (ThinkPad X60/X60s) + + pci:v00008086d0000109Asv00008086sd0000109A* +- ID_MODEL_FROM_DATABASE=PRO/1000 PL Network Connection ++ ID_MODEL_FROM_DATABASE=82573L Gigabit Ethernet Controller (PRO/1000 PL Network Connection) + + pci:v00008086d0000109Asv00008086sd0000309C* +- ID_MODEL_FROM_DATABASE=Desktop Board D945GTP ++ ID_MODEL_FROM_DATABASE=82573L Gigabit Ethernet Controller (Desktop Board D945GTP) + + pci:v00008086d0000109Asv00008086sd000030A5* +- ID_MODEL_FROM_DATABASE=Desktop Board D975XBX ++ ID_MODEL_FROM_DATABASE=82573L Gigabit Ethernet Controller (Desktop Board D975XBX) + + pci:v00008086d0000109B* + ID_MODEL_FROM_DATABASE=82546GB PRO/1000 GF Quad Port Server Adapter +@@ -57723,10 +57723,10 @@ pci:v00008086d0000109E* + ID_MODEL_FROM_DATABASE=82597EX 10GbE Ethernet Controller + + pci:v00008086d0000109Esv00008086sd0000A01F* +- ID_MODEL_FROM_DATABASE=PRO/10GbE CX4 Server Adapter ++ ID_MODEL_FROM_DATABASE=82597EX 10GbE Ethernet Controller (PRO/10GbE CX4 Server Adapter) + + pci:v00008086d0000109Esv00008086sd0000A11F* +- ID_MODEL_FROM_DATABASE=PRO/10GbE CX4 Server Adapter ++ ID_MODEL_FROM_DATABASE=82597EX 10GbE Ethernet Controller (PRO/10GbE CX4 Server Adapter) + + pci:v00008086d000010A0* + ID_MODEL_FROM_DATABASE=82571EB PRO/1000 AT Quad Port Bypass Adapter +@@ -57738,19 +57738,19 @@ pci:v00008086d000010A4* + ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller + + pci:v00008086d000010A4sv00008086sd000010A4* +- ID_MODEL_FROM_DATABASE=PRO/1000 PT Quad Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (PRO/1000 PT Quad Port Server Adapter) + + pci:v00008086d000010A4sv00008086sd000011A4* +- ID_MODEL_FROM_DATABASE=PRO/1000 PT Quad Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (PRO/1000 PT Quad Port Server Adapter) + + pci:v00008086d000010A5* + ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (Fiber) + + pci:v00008086d000010A5sv00008086sd000010A5* +- ID_MODEL_FROM_DATABASE=PRO/1000 PF Quad Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (Fiber) (PRO/1000 PF Quad Port Server Adapter) + + pci:v00008086d000010A5sv00008086sd000010A6* +- ID_MODEL_FROM_DATABASE=PRO/1000 PF Quad Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (Fiber) (PRO/1000 PF Quad Port Server Adapter) + + pci:v00008086d000010A6* + ID_MODEL_FROM_DATABASE=82599EB 10-Gigabit Dummy Function +@@ -57759,7 +57759,7 @@ pci:v00008086d000010A7* + ID_MODEL_FROM_DATABASE=82575EB Gigabit Network Connection + + pci:v00008086d000010A7sv00008086sd000010A8* +- ID_MODEL_FROM_DATABASE=82575EB Gigabit Riser Card ++ ID_MODEL_FROM_DATABASE=82575EB Gigabit Network Connection (82575EB Gigabit Riser Card) + + pci:v00008086d000010A9* + ID_MODEL_FROM_DATABASE=82575EB Gigabit Backplane Connection +@@ -57780,13 +57780,13 @@ pci:v00008086d000010B5* + ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (Copper) + + pci:v00008086d000010B5sv0000103Csd00003109* +- ID_MODEL_FROM_DATABASE=NC340T PCI-X Quad-port Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (Copper) (NC340T PCI-X Quad-port Gigabit Server Adapter) + + pci:v00008086d000010B5sv00008086sd00001099* +- ID_MODEL_FROM_DATABASE=PRO/1000 GT Quad Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (Copper) (PRO/1000 GT Quad Port Server Adapter) + + pci:v00008086d000010B5sv00008086sd00001199* +- ID_MODEL_FROM_DATABASE=PRO/1000 GT Quad Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82546GB Gigabit Ethernet Controller (Copper) (PRO/1000 GT Quad Port Server Adapter) + + pci:v00008086d000010B6* + ID_MODEL_FROM_DATABASE=82598 10GbE PCI-Express Ethernet Controller +@@ -57795,13 +57795,13 @@ pci:v00008086d000010B9* + ID_MODEL_FROM_DATABASE=82572EI Gigabit Ethernet Controller (Copper) + + pci:v00008086d000010B9sv0000103Csd0000704A* +- ID_MODEL_FROM_DATABASE=HP 110T PCIe Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=82572EI Gigabit Ethernet Controller (Copper) (HP 110T PCIe Gigabit Server Adapter) + + pci:v00008086d000010B9sv00008086sd00001083* +- ID_MODEL_FROM_DATABASE=PRO/1000 PT Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82572EI Gigabit Ethernet Controller (Copper) (PRO/1000 PT Desktop Adapter) + + pci:v00008086d000010B9sv00008086sd00001093* +- ID_MODEL_FROM_DATABASE=PRO/1000 PT Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82572EI Gigabit Ethernet Controller (Copper) (PRO/1000 PT Desktop Adapter) + + pci:v00008086d000010BA* + ID_MODEL_FROM_DATABASE=80003ES2LAN Gigabit Ethernet Controller (Copper) +@@ -57813,22 +57813,22 @@ pci:v00008086d000010BC* + ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (Copper) + + pci:v00008086d000010BCsv0000103Csd0000704B* +- ID_MODEL_FROM_DATABASE=NC364T PCI Express Quad Port Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (Copper) (NC364T PCI Express Quad Port Gigabit Server Adapter) + + pci:v00008086d000010BCsv0000108Esd000011BC* +- ID_MODEL_FROM_DATABASE=x4 PCI-Express Quad Gigabit Ethernet UTP Low Profile Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (Copper) (x4 PCI-Express Quad Gigabit Ethernet UTP Low Profile Adapter) + + pci:v00008086d000010BCsv00008086sd000010BC* +- ID_MODEL_FROM_DATABASE=PRO/1000 PT Quad Port LP Server Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (Copper) (PRO/1000 PT Quad Port LP Server Adapter) + + pci:v00008086d000010BCsv00008086sd000011BC* +- ID_MODEL_FROM_DATABASE=PRO/1000 PT Quad Port LP Server Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Gigabit Ethernet Controller (Copper) (PRO/1000 PT Quad Port LP Server Adapter) + + pci:v00008086d000010BD* + ID_MODEL_FROM_DATABASE=82566DM-2 Gigabit Network Connection + + pci:v00008086d000010BDsv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=OptiPlex 755 ++ ID_MODEL_FROM_DATABASE=82566DM-2 Gigabit Network Connection (OptiPlex 755) + + pci:v00008086d000010BF* + ID_MODEL_FROM_DATABASE=82567LF Gigabit Network Connection +@@ -57837,7 +57837,7 @@ pci:v00008086d000010C0* + ID_MODEL_FROM_DATABASE=82562V-2 10/100 Network Connection + + pci:v00008086d000010C0sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82562V-2 10/100 Network Connection (Inspiron 530) + + pci:v00008086d000010C2* + ID_MODEL_FROM_DATABASE=82562G-2 10/100 Network Connection +@@ -57855,67 +57855,67 @@ pci:v00008086d000010C6* + ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Dual Port Network Connection + + pci:v00008086d000010C6sv00008086sd0000A05F* +- ID_MODEL_FROM_DATABASE=10-Gigabit XF SR Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Dual Port Network Connection (10-Gigabit XF SR Dual Port Server Adapter) + + pci:v00008086d000010C6sv00008086sd0000A15F* +- ID_MODEL_FROM_DATABASE=10-Gigabit XF SR Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Dual Port Network Connection (10-Gigabit XF SR Dual Port Server Adapter) + + pci:v00008086d000010C7* + ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Network Connection + + pci:v00008086d000010C7sv00001014sd0000037F* +- ID_MODEL_FROM_DATABASE=10-Gigabit XF SR Server Adapter ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Network Connection (10-Gigabit XF SR Server Adapter) + + pci:v00008086d000010C7sv00001014sd00000380* +- ID_MODEL_FROM_DATABASE=10-Gigabit XF LR Server Adapter ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Network Connection (10-Gigabit XF LR Server Adapter) + + pci:v00008086d000010C7sv00008086sd0000A05F* +- ID_MODEL_FROM_DATABASE=10-Gigabit XF SR Server Adapter ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Network Connection (10-Gigabit XF SR Server Adapter) + + pci:v00008086d000010C7sv00008086sd0000A15F* +- ID_MODEL_FROM_DATABASE=10-Gigabit XF SR Server Adapter ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Network Connection (10-Gigabit XF SR Server Adapter) + + pci:v00008086d000010C7sv00008086sd0000A16F* +- ID_MODEL_FROM_DATABASE=10-Gigabit XF SR Server Adapter ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Network Connection (10-Gigabit XF SR Server Adapter) + + pci:v00008086d000010C8* + ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AT Network Connection + + pci:v00008086d000010C8sv00008086sd0000A10C* +- ID_MODEL_FROM_DATABASE=10-Gigabit AT Server Adapter ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AT Network Connection (10-Gigabit AT Server Adapter) + + pci:v00008086d000010C8sv00008086sd0000A11C* +- ID_MODEL_FROM_DATABASE=10-Gigabit AT Server Adapter ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AT Network Connection (10-Gigabit AT Server Adapter) + + pci:v00008086d000010C8sv00008086sd0000A12C* +- ID_MODEL_FROM_DATABASE=10-Gigabit AT Server Adapter ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AT Network Connection (10-Gigabit AT Server Adapter) + + pci:v00008086d000010C9* + ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection + + pci:v00008086d000010C9sv0000103Csd000031EF* +- ID_MODEL_FROM_DATABASE=NC362i Integrated Dual port Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection (NC362i Integrated Dual port Gigabit Server Adapter) + + pci:v00008086d000010C9sv0000103Csd0000323F* +- ID_MODEL_FROM_DATABASE=NC362i Integrated Dual port Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection (NC362i Integrated Dual port Gigabit Server Adapter) + + pci:v00008086d000010C9sv000010A9sd00008028* +- ID_MODEL_FROM_DATABASE=UV-BaseIO dual-port GbE ++ ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection (UV-BaseIO dual-port GbE) + + pci:v00008086d000010C9sv000013A3sd00000037* +- ID_MODEL_FROM_DATABASE=DS4100 Secure Multi-Gigabit Server Adapter with Compression ++ ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection (DS4100 Secure Multi-Gigabit Server Adapter with Compression) + + pci:v00008086d000010C9sv000015D9sd0000A811* +- ID_MODEL_FROM_DATABASE=H8DGU ++ ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection (H8DGU) + + pci:v00008086d000010C9sv00008086sd0000A01C* +- ID_MODEL_FROM_DATABASE=Gigabit ET Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection (Gigabit ET Dual Port Server Adapter) + + pci:v00008086d000010C9sv00008086sd0000A03C* +- ID_MODEL_FROM_DATABASE=Gigabit ET Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection (Gigabit ET Dual Port Server Adapter) + + pci:v00008086d000010C9sv00008086sd0000A04C* +- ID_MODEL_FROM_DATABASE=Gigabit ET Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection (Gigabit ET Dual Port Server Adapter) + + pci:v00008086d000010CA* + ID_MODEL_FROM_DATABASE=82576 Virtual Function +@@ -57936,34 +57936,34 @@ pci:v00008086d000010D3* + ID_MODEL_FROM_DATABASE=82574L Gigabit Network Connection + + pci:v00008086d000010D3sv0000103Csd00003250* +- ID_MODEL_FROM_DATABASE=NC112T PCI Express single Port Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=82574L Gigabit Network Connection (NC112T PCI Express single Port Gigabit Server Adapter) + + pci:v00008086d000010D3sv00001043sd00008369* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=82574L Gigabit Network Connection (Motherboard) + + pci:v00008086d000010D3sv000010A9sd00008029* +- ID_MODEL_FROM_DATABASE=Prism XL Single Port Gigabit Ethernet ++ ID_MODEL_FROM_DATABASE=82574L Gigabit Network Connection (Prism XL Single Port Gigabit Ethernet) + + pci:v00008086d000010D3sv000015D9sd0000060A* +- ID_MODEL_FROM_DATABASE=X7SPA-H/X7SPA-HF Motherboard ++ ID_MODEL_FROM_DATABASE=82574L Gigabit Network Connection (X7SPA-H/X7SPA-HF Motherboard) + + pci:v00008086d000010D3sv000015D9sd0000060D* +- ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ ID_MODEL_FROM_DATABASE=82574L Gigabit Network Connection (C7SIM-Q Motherboard) + + pci:v00008086d000010D3sv00008086sd00000001* +- ID_MODEL_FROM_DATABASE=Gigabit CT2 Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82574L Gigabit Network Connection (Gigabit CT2 Desktop Adapter) + + pci:v00008086d000010D3sv00008086sd0000357A* +- ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ ID_MODEL_FROM_DATABASE=82574L Gigabit Network Connection (Server Board S1200BTS) + + pci:v00008086d000010D3sv00008086sd0000A01F* +- ID_MODEL_FROM_DATABASE=Gigabit CT Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82574L Gigabit Network Connection (Gigabit CT Desktop Adapter) + + pci:v00008086d000010D3sv0000E4BFsd000050C1* +- ID_MODEL_FROM_DATABASE=PC1-GROOVE ++ ID_MODEL_FROM_DATABASE=82574L Gigabit Network Connection (PC1-GROOVE) + + pci:v00008086d000010D3sv0000E4BFsd000050C2* +- ID_MODEL_FROM_DATABASE=PC2-LIMBO ++ ID_MODEL_FROM_DATABASE=82574L Gigabit Network Connection (PC2-LIMBO) + + pci:v00008086d000010D4* + ID_MODEL_FROM_DATABASE=Matrox Concord GE (customized Intel 82574) +@@ -57975,13 +57975,13 @@ pci:v00008086d000010D6* + ID_MODEL_FROM_DATABASE=82575GB Gigabit Network Connection + + pci:v00008086d000010D6sv00008086sd000010D6* +- ID_MODEL_FROM_DATABASE=Gigabit VT Quad Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82575GB Gigabit Network Connection (Gigabit VT Quad Port Server Adapter) + + pci:v00008086d000010D6sv00008086sd0000145A* +- ID_MODEL_FROM_DATABASE=Gigabit VT Quad Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82575GB Gigabit Network Connection (Gigabit VT Quad Port Server Adapter) + + pci:v00008086d000010D6sv00008086sd0000147A* +- ID_MODEL_FROM_DATABASE=Gigabit VT Quad Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82575GB Gigabit Network Connection (Gigabit VT Quad Port Server Adapter) + + pci:v00008086d000010D8* + ID_MODEL_FROM_DATABASE=82599EB 10 Gigabit Unprogrammed +@@ -57990,13 +57990,13 @@ pci:v00008086d000010D9* + ID_MODEL_FROM_DATABASE=82571EB Dual Port Gigabit Mezzanine Adapter + + pci:v00008086d000010D9sv0000103Csd00001716* +- ID_MODEL_FROM_DATABASE=NC360m Dual Port 1GbE BL-c Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Dual Port Gigabit Mezzanine Adapter (NC360m Dual Port 1GbE BL-c Adapter) + + pci:v00008086d000010DA* + ID_MODEL_FROM_DATABASE=82571EB Quad Port Gigabit Mezzanine Adapter + + pci:v00008086d000010DAsv0000103Csd00001717* +- ID_MODEL_FROM_DATABASE=NC364m Quad Port 1GbE BL-c Adapter ++ ID_MODEL_FROM_DATABASE=82571EB Quad Port Gigabit Mezzanine Adapter (NC364m Quad Port 1GbE BL-c Adapter) + + pci:v00008086d000010DB* + ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit Dual Port Network Connection +@@ -58014,13 +58014,13 @@ pci:v00008086d000010E1* + ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Dual Port Network Connection + + pci:v00008086d000010E1sv00008086sd0000A15F* +- ID_MODEL_FROM_DATABASE=10-Gigabit SR Dual Port Express Module ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Dual Port Network Connection (10-Gigabit SR Dual Port Express Module) + + pci:v00008086d000010E2* + ID_MODEL_FROM_DATABASE=82575GB Gigabit Network Connection + + pci:v00008086d000010E2sv00008086sd000010E2* +- ID_MODEL_FROM_DATABASE=Gigabit VT Quad Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82575GB Gigabit Network Connection (Gigabit VT Quad Port Server Adapter) + + pci:v00008086d000010E5* + ID_MODEL_FROM_DATABASE=82567LM-4 Gigabit Network Connection +@@ -58029,37 +58029,37 @@ pci:v00008086d000010E6* + ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection + + pci:v00008086d000010E6sv00008086sd0000A01F* +- ID_MODEL_FROM_DATABASE=Gigabit EF Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection (Gigabit EF Dual Port Server Adapter) + + pci:v00008086d000010E6sv00008086sd0000A02F* +- ID_MODEL_FROM_DATABASE=Gigabit EF Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection (Gigabit EF Dual Port Server Adapter) + + pci:v00008086d000010E7* + ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection + + pci:v00008086d000010E7sv0000103Csd000031FF* +- ID_MODEL_FROM_DATABASE=NC362i Integrated Dual Port BL-c Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection (NC362i Integrated Dual Port BL-c Gigabit Server Adapter) + + pci:v00008086d000010E8* + ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection + + pci:v00008086d000010E8sv00008086sd0000A02B* +- ID_MODEL_FROM_DATABASE=Gigabit ET Quad Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection (Gigabit ET Quad Port Server Adapter) + + pci:v00008086d000010E8sv00008086sd0000A02C* +- ID_MODEL_FROM_DATABASE=Gigabit ET Quad Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection (Gigabit ET Quad Port Server Adapter) + + pci:v00008086d000010EA* + ID_MODEL_FROM_DATABASE=82577LM Gigabit Network Connection + + pci:v00008086d000010EAsv00001028sd0000040A* +- ID_MODEL_FROM_DATABASE=Latitude E6410 ++ ID_MODEL_FROM_DATABASE=82577LM Gigabit Network Connection (Latitude E6410) + + pci:v00008086d000010EAsv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=82577LM Gigabit Network Connection (Latitude E6510) + + pci:v00008086d000010EAsv0000E4BFsd000050C1* +- ID_MODEL_FROM_DATABASE=PC1-GROOVE ++ ID_MODEL_FROM_DATABASE=82577LM Gigabit Network Connection (PC1-GROOVE) + + pci:v00008086d000010EB* + ID_MODEL_FROM_DATABASE=82577LC Gigabit Network Connection +@@ -58068,10 +58068,10 @@ pci:v00008086d000010EC* + ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AT CX4 Network Connection + + pci:v00008086d000010ECsv00008086sd0000A01F* +- ID_MODEL_FROM_DATABASE=10-Gigabit CX4 Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AT CX4 Network Connection (10-Gigabit CX4 Dual Port Server Adapter) + + pci:v00008086d000010ECsv00008086sd0000A11F* +- ID_MODEL_FROM_DATABASE=10-Gigabit CX4 Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AT CX4 Network Connection (10-Gigabit CX4 Dual Port Server Adapter) + + pci:v00008086d000010ED* + ID_MODEL_FROM_DATABASE=82599 Ethernet Controller Virtual Function +@@ -58080,10 +58080,10 @@ pci:v00008086d000010EF* + ID_MODEL_FROM_DATABASE=82578DM Gigabit Network Connection + + pci:v00008086d000010EFsv00001028sd000002DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 980 ++ ID_MODEL_FROM_DATABASE=82578DM Gigabit Network Connection (OptiPlex 980) + + pci:v00008086d000010EFsv000015D9sd0000060D* +- ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ ID_MODEL_FROM_DATABASE=82578DM Gigabit Network Connection (C7SIM-Q Motherboard) + + pci:v00008086d000010F0* + ID_MODEL_FROM_DATABASE=82578DC Gigabit Network Connection +@@ -58092,19 +58092,19 @@ pci:v00008086d000010F1* + ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Dual Port Network Connection + + pci:v00008086d000010F1sv00008086sd0000A20F* +- ID_MODEL_FROM_DATABASE=10-Gigabit AF DA Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Dual Port Network Connection (10-Gigabit AF DA Dual Port Server Adapter) + + pci:v00008086d000010F1sv00008086sd0000A21F* +- ID_MODEL_FROM_DATABASE=10-Gigabit AF DA Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Dual Port Network Connection (10-Gigabit AF DA Dual Port Server Adapter) + + pci:v00008086d000010F4* + ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Network Connection + + pci:v00008086d000010F4sv00008086sd0000106F* +- ID_MODEL_FROM_DATABASE=10-Gigabit XF LR Server Adapter ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Network Connection (10-Gigabit XF LR Server Adapter) + + pci:v00008086d000010F4sv00008086sd0000A06F* +- ID_MODEL_FROM_DATABASE=10-Gigabit XF LR Server Adapter ++ ID_MODEL_FROM_DATABASE=82598EB 10-Gigabit AF Network Connection (10-Gigabit XF LR Server Adapter) + + pci:v00008086d000010F5* + ID_MODEL_FROM_DATABASE=82567LM Gigabit Network Connection +@@ -58116,25 +58116,25 @@ pci:v00008086d000010F7* + ID_MODEL_FROM_DATABASE=10 Gigabit BR KX4 Dual Port Network Connection + + pci:v00008086d000010F7sv0000108Esd00007B12* +- ID_MODEL_FROM_DATABASE=Sun Dual 10GbE PCIe 2.0 FEM ++ ID_MODEL_FROM_DATABASE=10 Gigabit BR KX4 Dual Port Network Connection (Sun Dual 10GbE PCIe 2.0 FEM) + + pci:v00008086d000010F7sv00008086sd0000000D* +- ID_MODEL_FROM_DATABASE=Ethernet Mezzanine Adapter X520-KX4-2 ++ ID_MODEL_FROM_DATABASE=10 Gigabit BR KX4 Dual Port Network Connection (Ethernet Mezzanine Adapter X520-KX4-2) + + pci:v00008086d000010F8* + ID_MODEL_FROM_DATABASE=82599 10 Gigabit Dual Port Backplane Connection + + pci:v00008086d000010F8sv00001028sd00001F63* +- ID_MODEL_FROM_DATABASE=10GbE 2P X520k bNDC ++ ID_MODEL_FROM_DATABASE=82599 10 Gigabit Dual Port Backplane Connection (10GbE 2P X520k bNDC) + + pci:v00008086d000010F8sv0000103Csd000017D2* +- ID_MODEL_FROM_DATABASE=Ethernet 10Gb 2-port 560M Adapter ++ ID_MODEL_FROM_DATABASE=82599 10 Gigabit Dual Port Backplane Connection (Ethernet 10Gb 2-port 560M Adapter) + + pci:v00008086d000010F8sv0000103Csd000018D0* +- ID_MODEL_FROM_DATABASE=Ethernet 10Gb 2-port 560FLB Adapter ++ ID_MODEL_FROM_DATABASE=82599 10 Gigabit Dual Port Backplane Connection (Ethernet 10Gb 2-port 560FLB Adapter) + + pci:v00008086d000010F8sv00008086sd0000000C* +- ID_MODEL_FROM_DATABASE=Ethernet X520 10GbE Dual Port KX4-KR Mezz ++ ID_MODEL_FROM_DATABASE=82599 10 Gigabit Dual Port Backplane Connection (Ethernet X520 10GbE Dual Port KX4-KR Mezz) + + pci:v00008086d000010F9* + ID_MODEL_FROM_DATABASE=82599 10 Gigabit Dual Port Network Connection +@@ -58143,58 +58143,58 @@ pci:v00008086d000010FB* + ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection + + pci:v00008086d000010FBsv00001028sd00001F72* +- ID_MODEL_FROM_DATABASE=Ethernet 10G 4P X520/I350 rNDC ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (Ethernet 10G 4P X520/I350 rNDC) + + pci:v00008086d000010FBsv0000103Csd000017D0* +- ID_MODEL_FROM_DATABASE=Ethernet 10Gb 2-port 560FLR-SFP+ Adapter ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (Ethernet 10Gb 2-port 560FLR-SFP+ Adapter) + + pci:v00008086d000010FBsv0000103Csd000017D2* +- ID_MODEL_FROM_DATABASE=Ethernet 10Gb 2-port 560M Adapter ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (Ethernet 10Gb 2-port 560M Adapter) + + pci:v00008086d000010FBsv0000103Csd000017D3* +- ID_MODEL_FROM_DATABASE=Ethernet 10Gb 2-port 560SFP+ Adapter ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (Ethernet 10Gb 2-port 560SFP+ Adapter) + + pci:v00008086d000010FBsv0000103Csd0000211B* +- ID_MODEL_FROM_DATABASE=Ethernet 10Gb 1-port P560FLR-SFP+ Adapter ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (Ethernet 10Gb 1-port P560FLR-SFP+ Adapter) + + pci:v00008086d000010FBsv0000103Csd00002147* +- ID_MODEL_FROM_DATABASE=Ethernet 10Gb 1-port 561i Adapter ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (Ethernet 10Gb 1-port 561i Adapter) + + pci:v00008086d000010FBsv0000103Csd00002159* +- ID_MODEL_FROM_DATABASE=Ethernet 10Gb 2-port 562i Adapter ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (Ethernet 10Gb 2-port 562i Adapter) + + pci:v00008086d000010FBsv0000108Esd00007B11* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter X520-2 ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (Ethernet Server Adapter X520-2) + + pci:v00008086d000010FBsv00001734sd000011A9* +- ID_MODEL_FROM_DATABASE=10 Gigabit Dual Port Network Connection ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (10 Gigabit Dual Port Network Connection) + + pci:v00008086d000010FBsv000017AAsd00001071* +- ID_MODEL_FROM_DATABASE=ThinkServer X520-2 AnyFabric ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (ThinkServer X520-2 AnyFabric) + + pci:v00008086d000010FBsv00008086sd00000002* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter X520-DA2 ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (Ethernet Server Adapter X520-DA2) + + pci:v00008086d000010FBsv00008086sd00000003* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter X520-2 ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (Ethernet Server Adapter X520-2) + + pci:v00008086d000010FBsv00008086sd00000006* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter X520-1 ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (Ethernet Server Adapter X520-1) + + pci:v00008086d000010FBsv00008086sd00000008* +- ID_MODEL_FROM_DATABASE=Ethernet OCP Server Adapter X520-2 ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (Ethernet OCP Server Adapter X520-2) + + pci:v00008086d000010FBsv00008086sd0000000A* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter X520-1 ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (Ethernet Server Adapter X520-1) + + pci:v00008086d000010FBsv00008086sd0000000C* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter X520-2 ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (Ethernet Server Adapter X520-2) + + pci:v00008086d000010FBsv00008086sd00007A11* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter X520-2 ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (Ethernet Server Adapter X520-2) + + pci:v00008086d000010FBsv00008086sd00007A12* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter X520-2 ++ ID_MODEL_FROM_DATABASE=82599ES 10-Gigabit SFI/SFP+ Network Connection (Ethernet Server Adapter X520-2) + + pci:v00008086d000010FC* + ID_MODEL_FROM_DATABASE=82599 10 Gigabit Dual Port Network Connection +@@ -58209,19 +58209,19 @@ pci:v00008086d00001130* + ID_MODEL_FROM_DATABASE=82815 815 Chipset Host Bridge and Memory Controller Hub + + pci:v00008086d00001130sv00001025sd00001016* +- ID_MODEL_FROM_DATABASE=Travelmate 612 TX ++ ID_MODEL_FROM_DATABASE=82815 815 Chipset Host Bridge and Memory Controller Hub (Travelmate 612 TX) + + pci:v00008086d00001130sv00001043sd00008027* +- ID_MODEL_FROM_DATABASE=TUSL2-C Mainboard ++ ID_MODEL_FROM_DATABASE=82815 815 Chipset Host Bridge and Memory Controller Hub (TUSL2-C Mainboard) + + pci:v00008086d00001130sv0000104Dsd000080DF* +- ID_MODEL_FROM_DATABASE=Vaio PCG-FX403 ++ ID_MODEL_FROM_DATABASE=82815 815 Chipset Host Bridge and Memory Controller Hub (Vaio PCG-FX403) + + pci:v00008086d00001130sv00008086sd00004532* +- ID_MODEL_FROM_DATABASE=D815EEA2 mainboard ++ ID_MODEL_FROM_DATABASE=82815 815 Chipset Host Bridge and Memory Controller Hub (D815EEA2 mainboard) + + pci:v00008086d00001130sv00008086sd00004557* +- ID_MODEL_FROM_DATABASE=D815EGEW Mainboard ++ ID_MODEL_FROM_DATABASE=82815 815 Chipset Host Bridge and Memory Controller Hub (D815EGEW Mainboard) + + pci:v00008086d00001131* + ID_MODEL_FROM_DATABASE=82815 815 Chipset AGP Bridge +@@ -58230,28 +58230,28 @@ pci:v00008086d00001132* + ID_MODEL_FROM_DATABASE=82815 Chipset Graphics Controller (CGC) + + pci:v00008086d00001132sv00001025sd00001016* +- ID_MODEL_FROM_DATABASE=Travelmate 612 TX ++ ID_MODEL_FROM_DATABASE=82815 Chipset Graphics Controller (CGC) (Travelmate 612 TX) + + pci:v00008086d00001132sv0000103Csd00002001* +- ID_MODEL_FROM_DATABASE=e-pc 40 ++ ID_MODEL_FROM_DATABASE=82815 Chipset Graphics Controller (CGC) (e-pc 40) + + pci:v00008086d00001132sv0000104Dsd000080DF* +- ID_MODEL_FROM_DATABASE=Vaio PCG-FX403 ++ ID_MODEL_FROM_DATABASE=82815 Chipset Graphics Controller (CGC) (Vaio PCG-FX403) + + pci:v00008086d00001132sv00008086sd00004532* +- ID_MODEL_FROM_DATABASE=D815EEA2 Mainboard ++ ID_MODEL_FROM_DATABASE=82815 Chipset Graphics Controller (CGC) (D815EEA2 Mainboard) + + pci:v00008086d00001132sv00008086sd00004541* +- ID_MODEL_FROM_DATABASE=D815EEA Motherboard ++ ID_MODEL_FROM_DATABASE=82815 Chipset Graphics Controller (CGC) (D815EEA Motherboard) + + pci:v00008086d00001132sv00008086sd00004557* +- ID_MODEL_FROM_DATABASE=D815EGEW Mainboard ++ ID_MODEL_FROM_DATABASE=82815 Chipset Graphics Controller (CGC) (D815EGEW Mainboard) + + pci:v00008086d00001161* + ID_MODEL_FROM_DATABASE=82806AA PCI64 Hub Advanced Programmable Interrupt Controller + + pci:v00008086d00001161sv00008086sd00001161* +- ID_MODEL_FROM_DATABASE=82806AA PCI64 Hub APIC ++ ID_MODEL_FROM_DATABASE=82806AA PCI64 Hub Advanced Programmable Interrupt Controller (82806AA PCI64 Hub APIC) + + pci:v00008086d00001162* + ID_MODEL_FROM_DATABASE=Xscale 80200 Big Endian Companion Chip +@@ -58260,25 +58260,25 @@ pci:v00008086d00001200* + ID_MODEL_FROM_DATABASE=IXP1200 Network Processor + + pci:v00008086d00001200sv0000172Asd00000000* +- ID_MODEL_FROM_DATABASE=AEP SSL Accelerator ++ ID_MODEL_FROM_DATABASE=IXP1200 Network Processor (AEP SSL Accelerator) + + pci:v00008086d00001209* + ID_MODEL_FROM_DATABASE=8255xER/82551IT Fast Ethernet Controller + + pci:v00008086d00001209sv0000140Bsd00000610* +- ID_MODEL_FROM_DATABASE=PMC610 quad Ethernet board ++ ID_MODEL_FROM_DATABASE=8255xER/82551IT Fast Ethernet Controller (PMC610 quad Ethernet board) + + pci:v00008086d00001209sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=8255xER/82551IT Fast Ethernet Controller (QEMU Virtual Machine) + + pci:v00008086d00001209sv00004C53sd00001050* +- ID_MODEL_FROM_DATABASE=CT7 mainboard ++ ID_MODEL_FROM_DATABASE=8255xER/82551IT Fast Ethernet Controller (CT7 mainboard) + + pci:v00008086d00001209sv00004C53sd00001051* +- ID_MODEL_FROM_DATABASE=CE7 mainboard ++ ID_MODEL_FROM_DATABASE=8255xER/82551IT Fast Ethernet Controller (CE7 mainboard) + + pci:v00008086d00001209sv00004C53sd00001070* +- ID_MODEL_FROM_DATABASE=PC6 mainboard ++ ID_MODEL_FROM_DATABASE=8255xER/82551IT Fast Ethernet Controller (PC6 mainboard) + + pci:v00008086d00001221* + ID_MODEL_FROM_DATABASE=82092AA PCI to PCMCIA Bridge +@@ -58305,487 +58305,487 @@ pci:v00008086d00001229* + ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 + + pci:v00008086d00001229sv00000E11sd00003001* +- ID_MODEL_FROM_DATABASE=82559 Fast Ethernet LOM with Alert on LAN* ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82559 Fast Ethernet LOM with Alert on LAN*) + + pci:v00008086d00001229sv00000E11sd00003002* +- ID_MODEL_FROM_DATABASE=82559 Fast Ethernet LOM with Alert on LAN* ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82559 Fast Ethernet LOM with Alert on LAN*) + + pci:v00008086d00001229sv00000E11sd00003003* +- ID_MODEL_FROM_DATABASE=82559 Fast Ethernet LOM with Alert on LAN* ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82559 Fast Ethernet LOM with Alert on LAN*) + + pci:v00008086d00001229sv00000E11sd00003004* +- ID_MODEL_FROM_DATABASE=82559 Fast Ethernet LOM with Alert on LAN* ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82559 Fast Ethernet LOM with Alert on LAN*) + + pci:v00008086d00001229sv00000E11sd00003005* +- ID_MODEL_FROM_DATABASE=82559 Fast Ethernet LOM with Alert on LAN* ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82559 Fast Ethernet LOM with Alert on LAN*) + + pci:v00008086d00001229sv00000E11sd00003006* +- ID_MODEL_FROM_DATABASE=82559 Fast Ethernet LOM with Alert on LAN* ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82559 Fast Ethernet LOM with Alert on LAN*) + + pci:v00008086d00001229sv00000E11sd00003007* +- ID_MODEL_FROM_DATABASE=82559 Fast Ethernet LOM with Alert on LAN* ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82559 Fast Ethernet LOM with Alert on LAN*) + + pci:v00008086d00001229sv00000E11sd0000B01E* +- ID_MODEL_FROM_DATABASE=NC3120 Fast Ethernet NIC ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NC3120 Fast Ethernet NIC) + + pci:v00008086d00001229sv00000E11sd0000B01F* +- ID_MODEL_FROM_DATABASE=NC3122 Fast Ethernet NIC (dual port) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NC3122 Fast Ethernet NIC (dual port)) + + pci:v00008086d00001229sv00000E11sd0000B02F* +- ID_MODEL_FROM_DATABASE=NC1120 Ethernet NIC ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NC1120 Ethernet NIC) + + pci:v00008086d00001229sv00000E11sd0000B04A* +- ID_MODEL_FROM_DATABASE=Netelligent 10/100TX NIC with Wake on LAN ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (Netelligent 10/100TX NIC with Wake on LAN) + + pci:v00008086d00001229sv00000E11sd0000B0C6* +- ID_MODEL_FROM_DATABASE=NC3161 Fast Ethernet NIC (embedded, WOL) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NC3161 Fast Ethernet NIC (embedded, WOL)) + + pci:v00008086d00001229sv00000E11sd0000B0C7* +- ID_MODEL_FROM_DATABASE=NC3160 Fast Ethernet NIC (embedded) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NC3160 Fast Ethernet NIC (embedded)) + + pci:v00008086d00001229sv00000E11sd0000B0D7* +- ID_MODEL_FROM_DATABASE=NC3121 Fast Ethernet NIC (WOL) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NC3121 Fast Ethernet NIC (WOL)) + + pci:v00008086d00001229sv00000E11sd0000B0DD* +- ID_MODEL_FROM_DATABASE=NC3131 Fast Ethernet NIC (dual port) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NC3131 Fast Ethernet NIC (dual port)) + + pci:v00008086d00001229sv00000E11sd0000B0DE* +- ID_MODEL_FROM_DATABASE=NC3132 Fast Ethernet Module (dual port) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NC3132 Fast Ethernet Module (dual port)) + + pci:v00008086d00001229sv00000E11sd0000B0E1* +- ID_MODEL_FROM_DATABASE=NC3133 Fast Ethernet Module (100-FX) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NC3133 Fast Ethernet Module (100-FX)) + + pci:v00008086d00001229sv00000E11sd0000B134* +- ID_MODEL_FROM_DATABASE=NC3163 Fast Ethernet NIC (embedded, WOL) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NC3163 Fast Ethernet NIC (embedded, WOL)) + + pci:v00008086d00001229sv00000E11sd0000B13C* +- ID_MODEL_FROM_DATABASE=NC3162 Fast Ethernet NIC (embedded) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NC3162 Fast Ethernet NIC (embedded)) + + pci:v00008086d00001229sv00000E11sd0000B144* +- ID_MODEL_FROM_DATABASE=NC3123 Fast Ethernet NIC (WOL) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NC3123 Fast Ethernet NIC (WOL)) + + pci:v00008086d00001229sv00000E11sd0000B163* +- ID_MODEL_FROM_DATABASE=NC3134 Fast Ethernet NIC (dual port) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NC3134 Fast Ethernet NIC (dual port)) + + pci:v00008086d00001229sv00000E11sd0000B164* +- ID_MODEL_FROM_DATABASE=NC3135 Fast Ethernet Upgrade Module (dual port) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NC3135 Fast Ethernet Upgrade Module (dual port)) + + pci:v00008086d00001229sv00000E11sd0000B1A4* +- ID_MODEL_FROM_DATABASE=NC7131 Gigabit Server Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NC7131 Gigabit Server Adapter) + + pci:v00008086d00001229sv00001014sd0000005C* +- ID_MODEL_FROM_DATABASE=82558B Ethernet Pro 10/100 ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82558B Ethernet Pro 10/100) + + pci:v00008086d00001229sv00001014sd000001BC* +- ID_MODEL_FROM_DATABASE=82559 Fast Ethernet LAN On Motherboard ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82559 Fast Ethernet LAN On Motherboard) + + pci:v00008086d00001229sv00001014sd000001F1* +- ID_MODEL_FROM_DATABASE=10/100 Ethernet Server Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (10/100 Ethernet Server Adapter) + + pci:v00008086d00001229sv00001014sd000001F2* +- ID_MODEL_FROM_DATABASE=10/100 Ethernet Server Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (10/100 Ethernet Server Adapter) + + pci:v00008086d00001229sv00001014sd00000207* +- ID_MODEL_FROM_DATABASE=Ethernet Pro/100 S ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (Ethernet Pro/100 S) + + pci:v00008086d00001229sv00001014sd00000232* +- ID_MODEL_FROM_DATABASE=10/100 Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (10/100 Dual Port Server Adapter) + + pci:v00008086d00001229sv00001014sd0000023A* +- ID_MODEL_FROM_DATABASE=ThinkPad R30 ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (ThinkPad R30) + + pci:v00008086d00001229sv00001014sd0000105C* +- ID_MODEL_FROM_DATABASE=Netfinity 10/100 ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (Netfinity 10/100) + + pci:v00008086d00001229sv00001014sd00002205* +- ID_MODEL_FROM_DATABASE=ThinkPad A22p ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (ThinkPad A22p) + + pci:v00008086d00001229sv00001014sd0000305C* +- ID_MODEL_FROM_DATABASE=10/100 EtherJet Management Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (10/100 EtherJet Management Adapter) + + pci:v00008086d00001229sv00001014sd0000405C* +- ID_MODEL_FROM_DATABASE=10/100 EtherJet Adapter with Alert on LAN ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (10/100 EtherJet Adapter with Alert on LAN) + + pci:v00008086d00001229sv00001014sd0000505C* +- ID_MODEL_FROM_DATABASE=10/100 EtherJet Secure Management Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (10/100 EtherJet Secure Management Adapter) + + pci:v00008086d00001229sv00001014sd0000605C* +- ID_MODEL_FROM_DATABASE=10/100 EtherJet Secure Management Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (10/100 EtherJet Secure Management Adapter) + + pci:v00008086d00001229sv00001014sd0000705C* +- ID_MODEL_FROM_DATABASE=10/100 Netfinity 10/100 Ethernet Security Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (10/100 Netfinity 10/100 Ethernet Security Adapter) + + pci:v00008086d00001229sv00001014sd0000805C* +- ID_MODEL_FROM_DATABASE=10/100 Netfinity 10/100 Ethernet Security Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (10/100 Netfinity 10/100 Ethernet Security Adapter) + + pci:v00008086d00001229sv00001028sd0000009B* +- ID_MODEL_FROM_DATABASE=10/100 Ethernet Server Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (10/100 Ethernet Server Adapter) + + pci:v00008086d00001229sv00001028sd000000CE* +- ID_MODEL_FROM_DATABASE=10/100 Ethernet Server Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (10/100 Ethernet Server Adapter) + + pci:v00008086d00001229sv00001033sd00008000* +- ID_MODEL_FROM_DATABASE=PC-9821X-B06 ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (PC-9821X-B06) + + pci:v00008086d00001229sv00001033sd00008016* +- ID_MODEL_FROM_DATABASE=PK-UG-X006 ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (PK-UG-X006) + + pci:v00008086d00001229sv00001033sd0000801F* +- ID_MODEL_FROM_DATABASE=PK-UG-X006 ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (PK-UG-X006) + + pci:v00008086d00001229sv00001033sd00008026* +- ID_MODEL_FROM_DATABASE=PK-UG-X006 ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (PK-UG-X006) + + pci:v00008086d00001229sv00001033sd00008063* +- ID_MODEL_FROM_DATABASE=82559-based Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82559-based Fast Ethernet Adapter) + + pci:v00008086d00001229sv00001033sd00008064* +- ID_MODEL_FROM_DATABASE=82559-based Fast Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82559-based Fast Ethernet Adapter) + + pci:v00008086d00001229sv0000103Csd000010C0* +- ID_MODEL_FROM_DATABASE=NetServer 10/100TX ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NetServer 10/100TX) + + pci:v00008086d00001229sv0000103Csd000010C3* +- ID_MODEL_FROM_DATABASE=NetServer 10/100TX ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NetServer 10/100TX) + + pci:v00008086d00001229sv0000103Csd000010CA* +- ID_MODEL_FROM_DATABASE=NetServer 10/100TX ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NetServer 10/100TX) + + pci:v00008086d00001229sv0000103Csd000010CB* +- ID_MODEL_FROM_DATABASE=NetServer 10/100TX ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NetServer 10/100TX) + + pci:v00008086d00001229sv0000103Csd000010E3* +- ID_MODEL_FROM_DATABASE=NetServer 10/100TX ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NetServer 10/100TX) + + pci:v00008086d00001229sv0000103Csd000010E4* +- ID_MODEL_FROM_DATABASE=NetServer 10/100TX ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NetServer 10/100TX) + + pci:v00008086d00001229sv0000103Csd00001200* +- ID_MODEL_FROM_DATABASE=NetServer 10/100TX ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NetServer 10/100TX) + + pci:v00008086d00001229sv0000108Esd000010CF* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100(B) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100(B)) + + pci:v00008086d00001229sv000010C3sd00001100* +- ID_MODEL_FROM_DATABASE=SmartEther100 SC1100 ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (SmartEther100 SC1100) + + pci:v00008086d00001229sv000010CFsd00001115* +- ID_MODEL_FROM_DATABASE=8255x-based Ethernet Adapter (10/100) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (8255x-based Ethernet Adapter (10/100)) + + pci:v00008086d00001229sv000010CFsd00001143* +- ID_MODEL_FROM_DATABASE=8255x-based Ethernet Adapter (10/100) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (8255x-based Ethernet Adapter (10/100)) + + pci:v00008086d00001229sv0000110Asd0000008B* +- ID_MODEL_FROM_DATABASE=82551QM Fast Ethernet Multifuction PCI/CardBus Controller ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82551QM Fast Ethernet Multifuction PCI/CardBus Controller) + + pci:v00008086d00001229sv0000114Asd00000582* +- ID_MODEL_FROM_DATABASE=PC8 onboard ethernet ETH2 ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (PC8 onboard ethernet ETH2) + + pci:v00008086d00001229sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=8255x-based Ethernet Adapter (10/100) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (8255x-based Ethernet Adapter (10/100)) + + pci:v00008086d00001229sv00001179sd00000002* +- ID_MODEL_FROM_DATABASE=PCI FastEther LAN on Docker ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (PCI FastEther LAN on Docker) + + pci:v00008086d00001229sv00001179sd00000003* +- ID_MODEL_FROM_DATABASE=8255x-based Fast Ethernet ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (8255x-based Fast Ethernet) + + pci:v00008086d00001229sv00001259sd00002560* +- ID_MODEL_FROM_DATABASE=AT-2560 100 ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (AT-2560 100) + + pci:v00008086d00001229sv00001259sd00002561* +- ID_MODEL_FROM_DATABASE=AT-2560 100 FX Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (AT-2560 100 FX Ethernet Adapter) + + pci:v00008086d00001229sv00001266sd00000001* +- ID_MODEL_FROM_DATABASE=NE10/100 Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (NE10/100 Adapter) + + pci:v00008086d00001229sv000013E9sd00001000* +- ID_MODEL_FROM_DATABASE=6221L-4U ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (6221L-4U) + + pci:v00008086d00001229sv0000144Dsd00002501* +- ID_MODEL_FROM_DATABASE=SEM-2000 MiniPCI LAN Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (SEM-2000 MiniPCI LAN Adapter) + + pci:v00008086d00001229sv0000144Dsd00002502* +- ID_MODEL_FROM_DATABASE=SEM-2100IL MiniPCI LAN Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (SEM-2100IL MiniPCI LAN Adapter) + + pci:v00008086d00001229sv00001668sd00001100* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100B (TX) (MiniPCI Ethernet+Modem) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100B (TX) (MiniPCI Ethernet+Modem)) + + pci:v00008086d00001229sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (CR11/VR11 Single Board Computer) + + pci:v00008086d00001229sv00001775sd0000CE90* +- ID_MODEL_FROM_DATABASE=CE9 ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (CE9) + + pci:v00008086d00001229sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (QEMU Virtual Machine) + + pci:v00008086d00001229sv00004C53sd00001080* +- ID_MODEL_FROM_DATABASE=CT8 mainboard ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (CT8 mainboard) + + pci:v00008086d00001229sv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (PSL09 PrPMC) + + pci:v00008086d00001229sv00008086sd00000001* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100B (TX) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100B (TX)) + + pci:v00008086d00001229sv00008086sd00000002* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100B (T4) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100B (T4)) + + pci:v00008086d00001229sv00008086sd00000003* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/10+ ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/10+) + + pci:v00008086d00001229sv00008086sd00000004* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 WfM ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 WfM) + + pci:v00008086d00001229sv00008086sd00000005* +- ID_MODEL_FROM_DATABASE=82557 10/100 ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82557 10/100) + + pci:v00008086d00001229sv00008086sd00000006* +- ID_MODEL_FROM_DATABASE=82557 10/100 with Wake on LAN ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82557 10/100 with Wake on LAN) + + pci:v00008086d00001229sv00008086sd00000007* +- ID_MODEL_FROM_DATABASE=82558 10/100 Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82558 10/100 Adapter) + + pci:v00008086d00001229sv00008086sd00000008* +- ID_MODEL_FROM_DATABASE=82558 10/100 with Wake on LAN ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82558 10/100 with Wake on LAN) + + pci:v00008086d00001229sv00008086sd00000009* +- ID_MODEL_FROM_DATABASE=82558B PRO/100+ PCI (TP) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82558B PRO/100+ PCI (TP)) + + pci:v00008086d00001229sv00008086sd0000000A* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ Management Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ Management Adapter) + + pci:v00008086d00001229sv00008086sd0000000B* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+) + + pci:v00008086d00001229sv00008086sd0000000C* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ Management Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ Management Adapter) + + pci:v00008086d00001229sv00008086sd0000000D* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ Alert On LAN II* Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ Alert On LAN II* Adapter) + + pci:v00008086d00001229sv00008086sd0000000E* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ Management Adapter with Alert On LAN* ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ Management Adapter with Alert On LAN*) + + pci:v00008086d00001229sv00008086sd0000000F* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 Desktop Adapter) + + pci:v00008086d00001229sv00008086sd00000010* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Management Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Management Adapter) + + pci:v00008086d00001229sv00008086sd00000011* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Management Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Management Adapter) + + pci:v00008086d00001229sv00008086sd00000012* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Advanced Management Adapter (D) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Advanced Management Adapter (D)) + + pci:v00008086d00001229sv00008086sd00000013* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Advanced Management Adapter (E) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Advanced Management Adapter (E)) + + pci:v00008086d00001229sv00008086sd00000030* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Management Adapter with Alert On LAN* GC ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 Management Adapter with Alert On LAN* GC) + + pci:v00008086d00001229sv00008086sd00000031* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 Desktop Adapter) + + pci:v00008086d00001229sv00008086sd00000040* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Desktop Adapter) + + pci:v00008086d00001229sv00008086sd00000041* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Desktop Adapter) + + pci:v00008086d00001229sv00008086sd00000042* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 Desktop Adapter) + + pci:v00008086d00001229sv00008086sd00000050* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Desktop Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Desktop Adapter) + + pci:v00008086d00001229sv00008086sd00001009* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ Server Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ Server Adapter) + + pci:v00008086d00001229sv00008086sd0000100C* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ Server Adapter (PILA8470B) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ Server Adapter (PILA8470B)) + + pci:v00008086d00001229sv00008086sd00001012* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Server Adapter (D) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Server Adapter (D)) + + pci:v00008086d00001229sv00008086sd00001013* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Server Adapter (E) ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Server Adapter (E)) + + pci:v00008086d00001229sv00008086sd00001015* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Dual Port Server Adapter) + + pci:v00008086d00001229sv00008086sd00001017* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ Dual Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ Dual Port Server Adapter) + + pci:v00008086d00001229sv00008086sd00001030* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ Management Adapter with Alert On LAN* G Server ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ Management Adapter with Alert On LAN* G Server) + + pci:v00008086d00001229sv00008086sd00001040* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Server Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Server Adapter) + + pci:v00008086d00001229sv00008086sd00001041* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Server Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Server Adapter) + + pci:v00008086d00001229sv00008086sd00001042* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Server Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 Server Adapter) + + pci:v00008086d00001229sv00008086sd00001050* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Server Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Server Adapter) + + pci:v00008086d00001229sv00008086sd00001051* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Server Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 Server Adapter) + + pci:v00008086d00001229sv00008086sd00001052* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Server Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 Server Adapter) + + pci:v00008086d00001229sv00008086sd000010F0* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ Dual Port Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ Dual Port Adapter) + + pci:v00008086d00001229sv00008086sd00001229* +- ID_MODEL_FROM_DATABASE=82557/8/9 [Ethernet Pro 100] ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82557/8/9 [Ethernet Pro 100]) + + pci:v00008086d00001229sv00008086sd00002009* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Mobile Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Mobile Adapter) + + pci:v00008086d00001229sv00008086sd0000200D* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Cardbus ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 Cardbus) + + pci:v00008086d00001229sv00008086sd0000200E* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 LAN+V90 Cardbus Modem ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 LAN+V90 Cardbus Modem) + + pci:v00008086d00001229sv00008086sd0000200F* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 SR Mobile Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 SR Mobile Adapter) + + pci:v00008086d00001229sv00008086sd00002010* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Mobile Combo Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Mobile Combo Adapter) + + pci:v00008086d00001229sv00008086sd00002013* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 SR Mobile Combo Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 SR Mobile Combo Adapter) + + pci:v00008086d00001229sv00008086sd00002016* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Mobile Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Mobile Adapter) + + pci:v00008086d00001229sv00008086sd00002017* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Combo Mobile Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Combo Mobile Adapter) + + pci:v00008086d00001229sv00008086sd00002018* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 SR Mobile Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 SR Mobile Adapter) + + pci:v00008086d00001229sv00008086sd00002019* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 SR Combo Mobile Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 SR Combo Mobile Adapter) + + pci:v00008086d00001229sv00008086sd00002101* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 P Mobile Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 P Mobile Adapter) + + pci:v00008086d00001229sv00008086sd00002102* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 SP Mobile Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 SP Mobile Adapter) + + pci:v00008086d00001229sv00008086sd00002103* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 SP Mobile Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 SP Mobile Adapter) + + pci:v00008086d00001229sv00008086sd00002104* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 SP Mobile Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 SP Mobile Adapter) + + pci:v00008086d00001229sv00008086sd00002105* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 SP Mobile Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 SP Mobile Adapter) + + pci:v00008086d00001229sv00008086sd00002106* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 P Mobile Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 P Mobile Adapter) + + pci:v00008086d00001229sv00008086sd00002107* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Network Connection ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 Network Connection) + + pci:v00008086d00001229sv00008086sd00002108* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Network Connection ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 Network Connection) + + pci:v00008086d00001229sv00008086sd00002200* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 P Mobile Combo Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 P Mobile Combo Adapter) + + pci:v00008086d00001229sv00008086sd00002201* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 P Mobile Combo Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 P Mobile Combo Adapter) + + pci:v00008086d00001229sv00008086sd00002202* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 SP Mobile Combo Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 SP Mobile Combo Adapter) + + pci:v00008086d00001229sv00008086sd00002203* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ MiniPCI ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ MiniPCI) + + pci:v00008086d00001229sv00008086sd00002204* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ MiniPCI ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ MiniPCI) + + pci:v00008086d00001229sv00008086sd00002205* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 SP Mobile Combo Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 SP Mobile Combo Adapter) + + pci:v00008086d00001229sv00008086sd00002206* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 SP Mobile Combo Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 SP Mobile Combo Adapter) + + pci:v00008086d00001229sv00008086sd00002207* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 SP Mobile Combo Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 SP Mobile Combo Adapter) + + pci:v00008086d00001229sv00008086sd00002208* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 P Mobile Combo Adapter ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 P Mobile Combo Adapter) + + pci:v00008086d00001229sv00008086sd00002402* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ MiniPCI ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ MiniPCI) + + pci:v00008086d00001229sv00008086sd00002407* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ MiniPCI ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ MiniPCI) + + pci:v00008086d00001229sv00008086sd00002408* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ MiniPCI ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ MiniPCI) + + pci:v00008086d00001229sv00008086sd00002409* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ MiniPCI ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ MiniPCI) + + pci:v00008086d00001229sv00008086sd0000240F* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ MiniPCI ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ MiniPCI) + + pci:v00008086d00001229sv00008086sd00002410* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ MiniPCI ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ MiniPCI) + + pci:v00008086d00001229sv00008086sd00002411* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ MiniPCI ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ MiniPCI) + + pci:v00008086d00001229sv00008086sd00002412* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ MiniPCI ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ MiniPCI) + + pci:v00008086d00001229sv00008086sd00002413* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100+ MiniPCI ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100+ MiniPCI) + + pci:v00008086d00001229sv00008086sd00003000* +- ID_MODEL_FROM_DATABASE=82559 Fast Ethernet LAN on Motherboard ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82559 Fast Ethernet LAN on Motherboard) + + pci:v00008086d00001229sv00008086sd00003001* +- ID_MODEL_FROM_DATABASE=82559 Fast Ethernet LOM with Basic Alert on LAN* ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82559 Fast Ethernet LOM with Basic Alert on LAN*) + + pci:v00008086d00001229sv00008086sd00003002* +- ID_MODEL_FROM_DATABASE=82559 Fast Ethernet LOM with Alert on LAN II* ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (82559 Fast Ethernet LOM with Alert on LAN II*) + + pci:v00008086d00001229sv00008086sd00003006* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Network Connection ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Network Connection) + + pci:v00008086d00001229sv00008086sd00003007* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Network Connection ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Network Connection) + + pci:v00008086d00001229sv00008086sd00003008* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Network Connection ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 Network Connection) + + pci:v00008086d00001229sv00008086sd00003010* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Network Connection ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Network Connection) + + pci:v00008086d00001229sv00008086sd00003011* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 S Network Connection ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 S Network Connection) + + pci:v00008086d00001229sv00008086sd00003012* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Network Connection ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (EtherExpress PRO/100 Network Connection) + + pci:v00008086d00001229sv00008086sd0000301A* +- ID_MODEL_FROM_DATABASE=S845WD1-E mainboard ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (S845WD1-E mainboard) + + pci:v00008086d00001229sv00008086sd00003411* +- ID_MODEL_FROM_DATABASE=SDS2 Mainboard ++ ID_MODEL_FROM_DATABASE=82557/8/9/0/1 Ethernet Pro 100 (SDS2 Mainboard) + + pci:v00008086d0000122D* + ID_MODEL_FROM_DATABASE=430FX - 82437FX TSC [Triton I] +@@ -58809,7 +58809,7 @@ pci:v00008086d00001237* + ID_MODEL_FROM_DATABASE=440FX - 82441FX PMC [Natoma] + + pci:v00008086d00001237sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=Qemu virtual machine ++ ID_MODEL_FROM_DATABASE=440FX - 82441FX PMC [Natoma] (Qemu virtual machine) + + pci:v00008086d00001239* + ID_MODEL_FROM_DATABASE=82371FB PIIX IDE Interface +@@ -58857,10 +58857,10 @@ pci:v00008086d00001461* + ID_MODEL_FROM_DATABASE=82870P2 P64H2 I/OxAPIC + + pci:v00008086d00001461sv000015D9sd00003480* +- ID_MODEL_FROM_DATABASE=P4DP6 ++ ID_MODEL_FROM_DATABASE=82870P2 P64H2 I/OxAPIC (P4DP6) + + pci:v00008086d00001461sv00004C53sd00001090* +- ID_MODEL_FROM_DATABASE=Cx9/Vx9 mainboard ++ ID_MODEL_FROM_DATABASE=82870P2 P64H2 I/OxAPIC (Cx9/Vx9 mainboard) + + pci:v00008086d00001462* + ID_MODEL_FROM_DATABASE=82870P2 P64H2 Hot Plug Controller +@@ -58872,16 +58872,16 @@ pci:v00008086d00001502* + ID_MODEL_FROM_DATABASE=82579LM Gigabit Network Connection + + pci:v00008086d00001502sv00001028sd000004A3* +- ID_MODEL_FROM_DATABASE=Precision M4600 ++ ID_MODEL_FROM_DATABASE=82579LM Gigabit Network Connection (Precision M4600) + + pci:v00008086d00001502sv00008086sd0000357A* +- ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ ID_MODEL_FROM_DATABASE=82579LM Gigabit Network Connection (Server Board S1200BTS) + + pci:v00008086d00001503* + ID_MODEL_FROM_DATABASE=82579V Gigabit Network Connection + + pci:v00008086d00001503sv00001043sd0000849C* +- ID_MODEL_FROM_DATABASE=P8P67 Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=82579V Gigabit Network Connection (P8P67 Deluxe Motherboard) + + pci:v00008086d00001507* + ID_MODEL_FROM_DATABASE=Ethernet Express Module X520-P2 +@@ -58911,19 +58911,19 @@ pci:v00008086d0000150D* + ID_MODEL_FROM_DATABASE=82576 Gigabit Backplane Connection + + pci:v00008086d0000150Dsv00008086sd0000A10C* +- ID_MODEL_FROM_DATABASE=Gigabit ET Quad Port Mezzanine Card ++ ID_MODEL_FROM_DATABASE=82576 Gigabit Backplane Connection (Gigabit ET Quad Port Mezzanine Card) + + pci:v00008086d0000150E* + ID_MODEL_FROM_DATABASE=82580 Gigabit Network Connection + + pci:v00008086d0000150Esv0000103Csd00001780* +- ID_MODEL_FROM_DATABASE=NC365T 4-port Ethernet Server Adapter ++ ID_MODEL_FROM_DATABASE=82580 Gigabit Network Connection (NC365T 4-port Ethernet Server Adapter) + + pci:v00008086d0000150Esv00008086sd000012A1* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I340-T4 ++ ID_MODEL_FROM_DATABASE=82580 Gigabit Network Connection (Ethernet Server Adapter I340-T4) + + pci:v00008086d0000150Esv00008086sd000012A2* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I340-T4 ++ ID_MODEL_FROM_DATABASE=82580 Gigabit Network Connection (Ethernet Server Adapter I340-T4) + + pci:v00008086d0000150F* + ID_MODEL_FROM_DATABASE=82580 Gigabit Fiber Network Connection +@@ -58947,16 +58947,16 @@ pci:v00008086d00001516* + ID_MODEL_FROM_DATABASE=82580 Gigabit Network Connection + + pci:v00008086d00001516sv00008086sd000012B1* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I340-T2 ++ ID_MODEL_FROM_DATABASE=82580 Gigabit Network Connection (Ethernet Server Adapter I340-T2) + + pci:v00008086d00001516sv00008086sd000012B2* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I340-T2 ++ ID_MODEL_FROM_DATABASE=82580 Gigabit Network Connection (Ethernet Server Adapter I340-T2) + + pci:v00008086d00001517* + ID_MODEL_FROM_DATABASE=82599ES 10 Gigabit Network Connection + + pci:v00008086d00001517sv00001137sd0000006A* +- ID_MODEL_FROM_DATABASE=UCS CNA M61KR-I Intel Converged Network Adapter ++ ID_MODEL_FROM_DATABASE=82599ES 10 Gigabit Network Connection (UCS CNA M61KR-I Intel Converged Network Adapter) + + pci:v00008086d00001518* + ID_MODEL_FROM_DATABASE=82576NS SerDes Gigabit Network Connection +@@ -58965,7 +58965,7 @@ pci:v00008086d0000151C* + ID_MODEL_FROM_DATABASE=82599 10 Gigabit TN Network Connection + + pci:v00008086d0000151Csv0000108Esd00007B13* +- ID_MODEL_FROM_DATABASE=Dual 10GBASE-T LP ++ ID_MODEL_FROM_DATABASE=82599 10 Gigabit TN Network Connection (Dual 10GBASE-T LP) + + pci:v00008086d00001520* + ID_MODEL_FROM_DATABASE=I350 Ethernet Controller Virtual Function +@@ -58974,115 +58974,115 @@ pci:v00008086d00001521* + ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection + + pci:v00008086d00001521sv00001028sd00000602* +- ID_MODEL_FROM_DATABASE=Gigabit 2P I350-t LOM ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Gigabit 2P I350-t LOM) + + pci:v00008086d00001521sv00001028sd00001F60* +- ID_MODEL_FROM_DATABASE=Intel GbE 4P I350crNDC ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Intel GbE 4P I350crNDC) + + pci:v00008086d00001521sv00001028sd00001F62* +- ID_MODEL_FROM_DATABASE=Intel GbE 2P I350crNDC ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Intel GbE 2P I350crNDC) + + pci:v00008086d00001521sv00001028sd0000FF9A* +- ID_MODEL_FROM_DATABASE=Gigabit 4P X710/I350 rNDC ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Gigabit 4P X710/I350 rNDC) + + pci:v00008086d00001521sv0000103Csd000017D1* +- ID_MODEL_FROM_DATABASE=Ethernet 1Gb 4-port 366FLR Adapter ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Ethernet 1Gb 4-port 366FLR Adapter) + + pci:v00008086d00001521sv0000103Csd00002003* +- ID_MODEL_FROM_DATABASE=Ethernet 1Gb 2-port 367i Adapter ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Ethernet 1Gb 2-port 367i Adapter) + + pci:v00008086d00001521sv0000103Csd00002226* +- ID_MODEL_FROM_DATABASE=Ethernet 1Gb 1-port 364i Adapter ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Ethernet 1Gb 1-port 364i Adapter) + + pci:v00008086d00001521sv0000103Csd0000337F* +- ID_MODEL_FROM_DATABASE=Ethernet 1Gb 2-port 361i Adapter ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Ethernet 1Gb 2-port 361i Adapter) + + pci:v00008086d00001521sv0000103Csd00003380* +- ID_MODEL_FROM_DATABASE=Ethernet 1Gb 4-port 366i Adapter ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Ethernet 1Gb 4-port 366i Adapter) + + pci:v00008086d00001521sv0000103Csd0000339E* +- ID_MODEL_FROM_DATABASE=Ethernet 1Gb 2-port 361T Adapter ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Ethernet 1Gb 2-port 361T Adapter) + + pci:v00008086d00001521sv0000108Esd00007B16* +- ID_MODEL_FROM_DATABASE=Quad Port GbE PCIe 2.0 ExpressModule, UTP ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Quad Port GbE PCIe 2.0 ExpressModule, UTP) + + pci:v00008086d00001521sv0000108Esd00007B18* +- ID_MODEL_FROM_DATABASE=Quad Port GbE PCIe 2.0 Low Profile Adapter, UTP ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Quad Port GbE PCIe 2.0 Low Profile Adapter, UTP) + + pci:v00008086d00001521sv000010A9sd0000802A* +- ID_MODEL_FROM_DATABASE=UV2-BaseIO dual-port GbE ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (UV2-BaseIO dual-port GbE) + + pci:v00008086d00001521sv000017AAsd00001074* +- ID_MODEL_FROM_DATABASE=ThinkServer I350-T4 AnyFabric ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (ThinkServer I350-T4 AnyFabric) + + pci:v00008086d00001521sv00008086sd00000001* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I350-T4 ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Ethernet Server Adapter I350-T4) + + pci:v00008086d00001521sv00008086sd00000002* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I350-T2 ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Ethernet Server Adapter I350-T2) + + pci:v00008086d00001521sv00008086sd000000A1* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I350-T4 ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Ethernet Server Adapter I350-T4) + + pci:v00008086d00001521sv00008086sd000000A2* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I350-T2 ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Ethernet Server Adapter I350-T2) + + pci:v00008086d00001521sv00008086sd00005001* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I350-T4 ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Ethernet Server Adapter I350-T4) + + pci:v00008086d00001521sv00008086sd00005002* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I350-T2 ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Ethernet Server Adapter I350-T2) + + pci:v00008086d00001522* + ID_MODEL_FROM_DATABASE=I350 Gigabit Fiber Network Connection + + pci:v00008086d00001522sv0000108Esd00007B17* +- ID_MODEL_FROM_DATABASE=Quad Port GbE PCIe 2.0 ExpressModule, MMF ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Fiber Network Connection (Quad Port GbE PCIe 2.0 ExpressModule, MMF) + + pci:v00008086d00001522sv0000108Esd00007B19* +- ID_MODEL_FROM_DATABASE=Dual Port GbE PCIe 2.0 Low Profile Adapter, MMF ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Fiber Network Connection (Dual Port GbE PCIe 2.0 Low Profile Adapter, MMF) + + pci:v00008086d00001522sv00008086sd00000002* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I350-T2 ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Fiber Network Connection (Ethernet Server Adapter I350-T2) + + pci:v00008086d00001522sv00008086sd00000003* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I350-F4 ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Fiber Network Connection (Ethernet Server Adapter I350-F4) + + pci:v00008086d00001522sv00008086sd00000004* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I350-F2 ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Fiber Network Connection (Ethernet Server Adapter I350-F2) + + pci:v00008086d00001522sv00008086sd00000005* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I350-F1 ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Fiber Network Connection (Ethernet Server Adapter I350-F1) + + pci:v00008086d00001522sv00008086sd000000A2* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I350-T2 ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Fiber Network Connection (Ethernet Server Adapter I350-T2) + + pci:v00008086d00001522sv00008086sd000000A3* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I350-F4 ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Fiber Network Connection (Ethernet Server Adapter I350-F4) + + pci:v00008086d00001522sv00008086sd000000A4* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I350-F2 ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Fiber Network Connection (Ethernet Server Adapter I350-F2) + + pci:v00008086d00001523* + ID_MODEL_FROM_DATABASE=I350 Gigabit Backplane Connection + + pci:v00008086d00001523sv00001028sd00001F9B* +- ID_MODEL_FROM_DATABASE=Gigabit 4P I350 bNDC ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Backplane Connection (Gigabit 4P I350 bNDC) + + pci:v00008086d00001523sv0000103Csd00001784* +- ID_MODEL_FROM_DATABASE=Ethernet 1Gb 2-port 361FLB Adapter ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Backplane Connection (Ethernet 1Gb 2-port 361FLB Adapter) + + pci:v00008086d00001523sv0000103Csd000018D1* +- ID_MODEL_FROM_DATABASE=Ethernet 1Gb 2-port 361FLB Adapter ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Backplane Connection (Ethernet 1Gb 2-port 361FLB Adapter) + + pci:v00008086d00001523sv0000103Csd00001989* +- ID_MODEL_FROM_DATABASE=Ethernet 1Gb 2-port 363i Adapter ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Backplane Connection (Ethernet 1Gb 2-port 363i Adapter) + + pci:v00008086d00001523sv0000103Csd0000339F* +- ID_MODEL_FROM_DATABASE=Ethernet 1Gb 4-port 366M Adapter ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Backplane Connection (Ethernet 1Gb 4-port 366M Adapter) + + pci:v00008086d00001523sv00008086sd00001F52* +- ID_MODEL_FROM_DATABASE=1GbE 4P I350 Mezz ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Backplane Connection (1GbE 4P I350 Mezz) + + pci:v00008086d00001524* + ID_MODEL_FROM_DATABASE=I350 Gigabit Connection +@@ -59094,64 +59094,64 @@ pci:v00008086d00001526* + ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection + + pci:v00008086d00001526sv00008086sd0000A05C* +- ID_MODEL_FROM_DATABASE=Gigabit ET2 Quad Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection (Gigabit ET2 Quad Port Server Adapter) + + pci:v00008086d00001526sv00008086sd0000A06C* +- ID_MODEL_FROM_DATABASE=Gigabit ET2 Quad Port Server Adapter ++ ID_MODEL_FROM_DATABASE=82576 Gigabit Network Connection (Gigabit ET2 Quad Port Server Adapter) + + pci:v00008086d00001527* + ID_MODEL_FROM_DATABASE=82580 Gigabit Fiber Network Connection + + pci:v00008086d00001527sv00008086sd00000001* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I340-F4 ++ ID_MODEL_FROM_DATABASE=82580 Gigabit Fiber Network Connection (Ethernet Server Adapter I340-F4) + + pci:v00008086d00001527sv00008086sd00000002* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I340-F4 ++ ID_MODEL_FROM_DATABASE=82580 Gigabit Fiber Network Connection (Ethernet Server Adapter I340-F4) + + pci:v00008086d00001528* + ID_MODEL_FROM_DATABASE=Ethernet Controller 10-Gigabit X540-AT2 + + pci:v00008086d00001528sv00001028sd00001F61* +- ID_MODEL_FROM_DATABASE=Ethernet 10G 4P X540/I350 rNDC ++ ID_MODEL_FROM_DATABASE=Ethernet Controller 10-Gigabit X540-AT2 (Ethernet 10G 4P X540/I350 rNDC) + + pci:v00008086d00001528sv0000103Csd0000192D* +- ID_MODEL_FROM_DATABASE=561FLR-T 2-port 10Gb Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=Ethernet Controller 10-Gigabit X540-AT2 (561FLR-T 2-port 10Gb Ethernet Adapter) + + pci:v00008086d00001528sv0000103Csd00002004* +- ID_MODEL_FROM_DATABASE=Ethernet 10Gb 2-port 561i Adapter ++ ID_MODEL_FROM_DATABASE=Ethernet Controller 10-Gigabit X540-AT2 (Ethernet 10Gb 2-port 561i Adapter) + + pci:v00008086d00001528sv0000103Csd0000211A* +- ID_MODEL_FROM_DATABASE=Ethernet 10Gb 2-port 561T Adapter ++ ID_MODEL_FROM_DATABASE=Ethernet Controller 10-Gigabit X540-AT2 (Ethernet 10Gb 2-port 561T Adapter) + + pci:v00008086d00001528sv0000108Esd00007B14* +- ID_MODEL_FROM_DATABASE=Sun Dual Port 10 GbE PCIe 2.0 ExpressModule, Base-T ++ ID_MODEL_FROM_DATABASE=Ethernet Controller 10-Gigabit X540-AT2 (Sun Dual Port 10 GbE PCIe 2.0 ExpressModule, Base-T) + + pci:v00008086d00001528sv0000108Esd00007B15* +- ID_MODEL_FROM_DATABASE=Sun Dual Port 10 GbE PCIe 2.0 Low Profile Adapter, Base-T ++ ID_MODEL_FROM_DATABASE=Ethernet Controller 10-Gigabit X540-AT2 (Sun Dual Port 10 GbE PCIe 2.0 Low Profile Adapter, Base-T) + + pci:v00008086d00001528sv00001137sd000000BF* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X540-T2 ++ ID_MODEL_FROM_DATABASE=Ethernet Controller 10-Gigabit X540-AT2 (Ethernet Converged Network Adapter X540-T2) + + pci:v00008086d00001528sv000017AAsd00001073* +- ID_MODEL_FROM_DATABASE=ThinkServer X540-T2 AnyFabric ++ ID_MODEL_FROM_DATABASE=Ethernet Controller 10-Gigabit X540-AT2 (ThinkServer X540-T2 AnyFabric) + + pci:v00008086d00001528sv00008086sd00000001* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X540-T2 ++ ID_MODEL_FROM_DATABASE=Ethernet Controller 10-Gigabit X540-AT2 (Ethernet Converged Network Adapter X540-T2) + + pci:v00008086d00001528sv00008086sd00000002* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X540-T1 ++ ID_MODEL_FROM_DATABASE=Ethernet Controller 10-Gigabit X540-AT2 (Ethernet Converged Network Adapter X540-T1) + + pci:v00008086d00001528sv00008086sd0000001A* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X540-T2 ++ ID_MODEL_FROM_DATABASE=Ethernet Controller 10-Gigabit X540-AT2 (Ethernet Converged Network Adapter X540-T2) + + pci:v00008086d00001528sv00008086sd000000A2* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X540-T1 ++ ID_MODEL_FROM_DATABASE=Ethernet Controller 10-Gigabit X540-AT2 (Ethernet Converged Network Adapter X540-T1) + + pci:v00008086d00001528sv00008086sd00001F61* +- ID_MODEL_FROM_DATABASE=Ethernet 10G 4P X540/I350 rNDC ++ ID_MODEL_FROM_DATABASE=Ethernet Controller 10-Gigabit X540-AT2 (Ethernet 10G 4P X540/I350 rNDC) + + pci:v00008086d00001528sv00008086sd00005003* +- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X540-t Adapter ++ ID_MODEL_FROM_DATABASE=Ethernet Controller 10-Gigabit X540-AT2 (Ethernet 10G 2P X540-t Adapter) + + pci:v00008086d00001529* + ID_MODEL_FROM_DATABASE=82599 10 Gigabit Dual Port Network Connection with FCoE +@@ -59163,16 +59163,16 @@ pci:v00008086d00001533* + ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection + + pci:v00008086d00001533sv0000103Csd00000003* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I210-T1 ++ ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection (Ethernet Server Adapter I210-T1) + + pci:v00008086d00001533sv000017AAsd00001100* +- ID_MODEL_FROM_DATABASE=ThinkServer Ethernet Server Adapter ++ ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection (ThinkServer Ethernet Server Adapter) + + pci:v00008086d00001533sv00008086sd00000001* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I210-T1 ++ ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection (Ethernet Server Adapter I210-T1) + + pci:v00008086d00001533sv00008086sd00000002* +- ID_MODEL_FROM_DATABASE=Ethernet Server Adapter I210-T1 ++ ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection (Ethernet Server Adapter I210-T1) + + pci:v00008086d00001534* + ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection +@@ -59193,10 +59193,10 @@ pci:v00008086d0000153A* + ID_MODEL_FROM_DATABASE=Ethernet Connection I217-LM + + pci:v00008086d0000153Asv0000103Csd00001909* +- ID_MODEL_FROM_DATABASE=ZBook 15 ++ ID_MODEL_FROM_DATABASE=Ethernet Connection I217-LM (ZBook 15) + + pci:v00008086d0000153Asv000017AAsd0000220E* +- ID_MODEL_FROM_DATABASE=ThinkPad T440p ++ ID_MODEL_FROM_DATABASE=Ethernet Connection I217-LM (ThinkPad T440p) + + pci:v00008086d0000153B* + ID_MODEL_FROM_DATABASE=Ethernet Connection I217-V +@@ -59211,13 +59211,13 @@ pci:v00008086d0000154A* + ID_MODEL_FROM_DATABASE=Ethernet Server Adapter X520-4 + + pci:v00008086d0000154Asv00008086sd0000011A* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X520-4 ++ ID_MODEL_FROM_DATABASE=Ethernet Server Adapter X520-4 (Ethernet Converged Network Adapter X520-4) + + pci:v00008086d0000154Asv00008086sd0000011B* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X520-4 ++ ID_MODEL_FROM_DATABASE=Ethernet Server Adapter X520-4 (Ethernet Converged Network Adapter X520-4) + + pci:v00008086d0000154Asv00008086sd0000011C* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X520-4 ++ ID_MODEL_FROM_DATABASE=Ethernet Server Adapter X520-4 (Ethernet Converged Network Adapter X520-4) + + pci:v00008086d0000154C* + ID_MODEL_FROM_DATABASE=XL710 X710 Virtual Function +@@ -59226,13 +59226,13 @@ pci:v00008086d0000154D* + ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X520 Adapter + + pci:v00008086d0000154Dsv00008086sd00007B11* +- ID_MODEL_FROM_DATABASE=10GbE 2P X520 Adapter ++ ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X520 Adapter (10GbE 2P X520 Adapter) + + pci:v00008086d00001557* + ID_MODEL_FROM_DATABASE=82599 10 Gigabit Network Connection + + pci:v00008086d00001557sv00008086sd00000001* +- ID_MODEL_FROM_DATABASE=Ethernet OCP Server Adapter X520-1 ++ ID_MODEL_FROM_DATABASE=82599 10 Gigabit Network Connection (Ethernet OCP Server Adapter X520-1) + + pci:v00008086d00001558* + ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X520-Q1 +@@ -59250,22 +59250,22 @@ pci:v00008086d0000155A* + ID_MODEL_FROM_DATABASE=Ethernet Connection I218-LM + + pci:v00008086d0000155Asv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ ID_MODEL_FROM_DATABASE=Ethernet Connection I218-LM (ThinkPad X240) + + pci:v00008086d0000155C* + ID_MODEL_FROM_DATABASE=Ethernet Server Bypass Adapter + + pci:v00008086d0000155Csv00008086sd00000001* +- ID_MODEL_FROM_DATABASE=Ethernet Server Bypass Adapter X540-T2 ++ ID_MODEL_FROM_DATABASE=Ethernet Server Bypass Adapter (X540-T2) + + pci:v00008086d0000155D* + ID_MODEL_FROM_DATABASE=Ethernet Server Bypass Adapter + + pci:v00008086d0000155Dsv00008086sd00000001* +- ID_MODEL_FROM_DATABASE=Ethernet Server Bypass Adapter X520-SR2 ++ ID_MODEL_FROM_DATABASE=Ethernet Server Bypass Adapter (X520-SR2) + + pci:v00008086d0000155Dsv00008086sd00000002* +- ID_MODEL_FROM_DATABASE=Ethernet Server Bypass Adapter X520-LR2 ++ ID_MODEL_FROM_DATABASE=Ethernet Server Bypass Adapter (X520-LR2) + + pci:v00008086d00001560* + ID_MODEL_FROM_DATABASE=Ethernet Controller X540 +@@ -59277,28 +59277,28 @@ pci:v00008086d00001572* + ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter + + pci:v00008086d00001572sv00001028sd00001F99* +- ID_MODEL_FROM_DATABASE=Ethernet 10G 4P X710/I350 rNDC ++ ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet 10G 4P X710/I350 rNDC) + + pci:v00008086d00001572sv00008086sd00000001* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X710-4 ++ ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet Converged Network Adapter X710-4) + + pci:v00008086d00001572sv00008086sd00000002* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X710-4 ++ ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet Converged Network Adapter X710-4) + + pci:v00008086d00001572sv00008086sd00000004* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X710-4 ++ ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet Converged Network Adapter X710-4) + + pci:v00008086d00001572sv00008086sd00000005* +- ID_MODEL_FROM_DATABASE=Ethernet 10G 4P X710 Adapter ++ ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet 10G 4P X710 Adapter) + + pci:v00008086d00001572sv00008086sd00000006* +- ID_MODEL_FROM_DATABASE=Ethernet 10G2P X710 Adapter ++ ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet 10G2P X710 Adapter) + + pci:v00008086d00001572sv00008086sd00000007* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X710-2 ++ ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet Converged Network Adapter X710-2) + + pci:v00008086d00001572sv00008086sd00000008* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter X710-2 ++ ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet Converged Network Adapter X710-2) + + pci:v00008086d0000157B* + ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection +@@ -59313,31 +59313,31 @@ pci:v00008086d00001581* + ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10Gbe backplane + + pci:v00008086d00001581sv00001028sd00001F98* +- ID_MODEL_FROM_DATABASE=Ethernet 10G 4P X710-k bNDC ++ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10Gbe backplane (Ethernet 10G 4P X710-k bNDC) + + pci:v00008086d00001583* + ID_MODEL_FROM_DATABASE=Ethernet Controller LX710 for 40GbE QSFP+ + + pci:v00008086d00001583sv00008086sd00000001* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter XL710-Q2 ++ ID_MODEL_FROM_DATABASE=Ethernet Controller LX710 for 40GbE QSFP+ (Ethernet Converged Network Adapter XL710-Q2) + + pci:v00008086d00001583sv00008086sd00000002* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter XL710-Q2 ++ ID_MODEL_FROM_DATABASE=Ethernet Controller LX710 for 40GbE QSFP+ (Ethernet Converged Network Adapter XL710-Q2) + + pci:v00008086d00001583sv00008086sd00000003* +- ID_MODEL_FROM_DATABASE=Ethernet I/O Module XL710-Q2 ++ ID_MODEL_FROM_DATABASE=Ethernet Controller LX710 for 40GbE QSFP+ (Ethernet I/O Module XL710-Q2) + + pci:v00008086d00001584* + ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ + + pci:v00008086d00001584sv00008086sd00000001* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter XL710-Q1 ++ ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ (Ethernet Converged Network Adapter XL710-Q1) + + pci:v00008086d00001584sv00008086sd00000002* +- ID_MODEL_FROM_DATABASE=Ethernet Converged Network Adapter XL710-Q1 ++ ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ (Ethernet Converged Network Adapter XL710-Q1) + + pci:v00008086d00001584sv00008086sd00000003* +- ID_MODEL_FROM_DATABASE=Ethernet I/O Module XL710-Q1 ++ ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ (Ethernet I/O Module XL710-Q1) + + pci:v00008086d00001585* + ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 10GbE QSFP+ +@@ -59469,82 +59469,82 @@ pci:v00008086d00001960* + ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor + + pci:v00008086d00001960sv0000101Esd00000431* +- ID_MODEL_FROM_DATABASE=MegaRAID 431 RAID Controller ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (MegaRAID 431 RAID Controller) + + pci:v00008086d00001960sv0000101Esd00000438* +- ID_MODEL_FROM_DATABASE=MegaRAID 438 Ultra2 LVD RAID Controller ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (MegaRAID 438 Ultra2 LVD RAID Controller) + + pci:v00008086d00001960sv0000101Esd00000466* +- ID_MODEL_FROM_DATABASE=MegaRAID 466 Express Plus RAID Controller ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (MegaRAID 466 Express Plus RAID Controller) + + pci:v00008086d00001960sv0000101Esd00000467* +- ID_MODEL_FROM_DATABASE=MegaRAID 467 Enterprise 1500 RAID Controller ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (MegaRAID 467 Enterprise 1500 RAID Controller) + + pci:v00008086d00001960sv0000101Esd00000490* +- ID_MODEL_FROM_DATABASE=MegaRAID 490 Express 300 RAID Controller ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (MegaRAID 490 Express 300 RAID Controller) + + pci:v00008086d00001960sv0000101Esd00000762* +- ID_MODEL_FROM_DATABASE=MegaRAID 762 Express RAID Controller ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (MegaRAID 762 Express RAID Controller) + + pci:v00008086d00001960sv0000101Esd000009A0* +- ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 2/SC ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (PowerEdge Expandable RAID Controller 2/SC) + + pci:v00008086d00001960sv00001028sd00000467* +- ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 2/DC ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (PowerEdge Expandable RAID Controller 2/DC) + + pci:v00008086d00001960sv00001028sd00001111* +- ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 2/SC ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (PowerEdge Expandable RAID Controller 2/SC) + + pci:v00008086d00001960sv0000103Csd000003A2* +- ID_MODEL_FROM_DATABASE=MegaRAID ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (MegaRAID) + + pci:v00008086d00001960sv0000103Csd000010C6* +- ID_MODEL_FROM_DATABASE=MegaRAID 438, NetRAID-3Si ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (MegaRAID 438, NetRAID-3Si) + + pci:v00008086d00001960sv0000103Csd000010C7* +- ID_MODEL_FROM_DATABASE=MegaRAID T5, Integrated NetRAID ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (MegaRAID T5, Integrated NetRAID) + + pci:v00008086d00001960sv0000103Csd000010CC* +- ID_MODEL_FROM_DATABASE=MegaRAID, Integrated NetRAID ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (MegaRAID, Integrated NetRAID) + + pci:v00008086d00001960sv0000103Csd000010CD* +- ID_MODEL_FROM_DATABASE=NetRAID-1Si ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (NetRAID-1Si) + + pci:v00008086d00001960sv0000105Asd00000000* +- ID_MODEL_FROM_DATABASE=SuperTrak ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (SuperTrak) + + pci:v00008086d00001960sv0000105Asd00002168* +- ID_MODEL_FROM_DATABASE=SuperTrak Pro ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (SuperTrak Pro) + + pci:v00008086d00001960sv0000105Asd00005168* +- ID_MODEL_FROM_DATABASE=SuperTrak66/100 ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (SuperTrak66/100) + + pci:v00008086d00001960sv00001111sd00001111* +- ID_MODEL_FROM_DATABASE=MegaRAID 466, PowerEdge Expandable RAID Controller 2/SC ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (MegaRAID 466, PowerEdge Expandable RAID Controller 2/SC) + + pci:v00008086d00001960sv00001111sd00001112* +- ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 2/SC ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (PowerEdge Expandable RAID Controller 2/SC) + + pci:v00008086d00001960sv0000113Csd000003A2* +- ID_MODEL_FROM_DATABASE=MegaRAID ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (MegaRAID) + + pci:v00008086d00001960sv0000E4BFsd00001010* +- ID_MODEL_FROM_DATABASE=CG1-RADIO ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (CG1-RADIO) + + pci:v00008086d00001960sv0000E4BFsd00001020* +- ID_MODEL_FROM_DATABASE=CU2-QUARTET ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (CU2-QUARTET) + + pci:v00008086d00001960sv0000E4BFsd00001040* +- ID_MODEL_FROM_DATABASE=CU1-CHORUS ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (CU1-CHORUS) + + pci:v00008086d00001960sv0000E4BFsd00003100* +- ID_MODEL_FROM_DATABASE=CX1-BAND ++ ID_MODEL_FROM_DATABASE=80960RP (i960RP) Microprocessor (CX1-BAND) + + pci:v00008086d00001962* + ID_MODEL_FROM_DATABASE=80960RM (i960RM) Microprocessor + + pci:v00008086d00001962sv0000105Asd00000000* +- ID_MODEL_FROM_DATABASE=SuperTrak SX6000 I2O CPU ++ ID_MODEL_FROM_DATABASE=80960RM (i960RM) Microprocessor (SuperTrak SX6000 I2O CPU) + + pci:v00008086d00001A21* + ID_MODEL_FROM_DATABASE=82840 840 [Carmel] Chipset Host Bridge (Hub A) +@@ -59559,10 +59559,10 @@ pci:v00008086d00001A30* + ID_MODEL_FROM_DATABASE=82845 845 [Brookdale] Chipset Host Bridge + + pci:v00008086d00001A30sv00001028sd0000010E* +- ID_MODEL_FROM_DATABASE=Optiplex GX240 ++ ID_MODEL_FROM_DATABASE=82845 845 [Brookdale] Chipset Host Bridge (Optiplex GX240) + + pci:v00008086d00001A30sv000015D9sd00003280* +- ID_MODEL_FROM_DATABASE=Supermicro P4SBE Mainboard ++ ID_MODEL_FROM_DATABASE=82845 845 [Brookdale] Chipset Host Bridge (Supermicro P4SBE Mainboard) + + pci:v00008086d00001A31* + ID_MODEL_FROM_DATABASE=82845 845 [Brookdale] Chipset AGP Bridge +@@ -59571,28 +59571,28 @@ pci:v00008086d00001A38* + ID_MODEL_FROM_DATABASE=5000 Series Chipset DMA Engine + + pci:v00008086d00001A38sv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset DMA Engine (X7DVL-E-O motherboard) + + pci:v00008086d00001A38sv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=Intel S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset DMA Engine (Intel S5000PSLSATA Server Board) + + pci:v00008086d00001A48* + ID_MODEL_FROM_DATABASE=82597EX 10GbE Ethernet Controller + + pci:v00008086d00001A48sv00008086sd0000A01F* +- ID_MODEL_FROM_DATABASE=PRO/10GbE SR Server Adapter ++ ID_MODEL_FROM_DATABASE=82597EX 10GbE Ethernet Controller (PRO/10GbE SR Server Adapter) + + pci:v00008086d00001A48sv00008086sd0000A11F* +- ID_MODEL_FROM_DATABASE=PRO/10GbE SR Server Adapter ++ ID_MODEL_FROM_DATABASE=82597EX 10GbE Ethernet Controller (PRO/10GbE SR Server Adapter) + + pci:v00008086d00001B48* + ID_MODEL_FROM_DATABASE=82597EX 10GbE Ethernet Controller + + pci:v00008086d00001B48sv00008086sd0000A01F* +- ID_MODEL_FROM_DATABASE=PRO/10GbE LR Server Adapter ++ ID_MODEL_FROM_DATABASE=82597EX 10GbE Ethernet Controller (PRO/10GbE LR Server Adapter) + + pci:v00008086d00001B48sv00008086sd0000A11F* +- ID_MODEL_FROM_DATABASE=PRO/10GbE LR Server Adapter ++ ID_MODEL_FROM_DATABASE=82597EX 10GbE Ethernet Controller (PRO/10GbE LR Server Adapter) + + pci:v00008086d00001C00* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family 4 port SATA IDE Controller +@@ -59604,28 +59604,28 @@ pci:v00008086d00001C02* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family SATA AHCI Controller + + pci:v00008086d00001C02sv00001028sd000004AA* +- ID_MODEL_FROM_DATABASE=XPS 8300 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family SATA AHCI Controller (XPS 8300) + + pci:v00008086d00001C02sv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8 series motherboard ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family SATA AHCI Controller (P8 series motherboard) + + pci:v00008086d00001C02sv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family SATA AHCI Controller (Server Board S1200BTS) + + pci:v00008086d00001C03* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller + + pci:v00008086d00001C03sv00001028sd000004A3* +- ID_MODEL_FROM_DATABASE=Precision M4600 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller (Precision M4600) + + pci:v00008086d00001C03sv00001028sd000004B2* +- ID_MODEL_FROM_DATABASE=Vostro 3350 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller (Vostro 3350) + + pci:v00008086d00001C03sv00001028sd000004DA* +- ID_MODEL_FROM_DATABASE=Vostro 3750 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller (Vostro 3750) + + pci:v00008086d00001C03sv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Apple MacBookPro8,2 [Core i7, 15", 2011] ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller (Apple MacBookPro8,2 [Core i7, 15", 2011]) + + pci:v00008086d00001C04* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family SATA RAID Controller +@@ -59643,58 +59643,58 @@ pci:v00008086d00001C10* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 1 + + pci:v00008086d00001C10sv00001028sd000004AA* +- ID_MODEL_FROM_DATABASE=XPS 8300 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 1 (XPS 8300) + + pci:v00008086d00001C10sv00001028sd000004DA* +- ID_MODEL_FROM_DATABASE=Vostro 3750 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 1 (Vostro 3750) + + pci:v00008086d00001C10sv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8 series motherboard ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 1 (P8 series motherboard) + + pci:v00008086d00001C10sv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Server Board S1200BTS / Apple MacBook Pro 8,1/8,2 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 1 (Server Board S1200BTS / Apple MacBook Pro 8,1/8,2) + + pci:v00008086d00001C12* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 2 + + pci:v00008086d00001C12sv00001028sd000004AA* +- ID_MODEL_FROM_DATABASE=XPS 8300 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 2 (XPS 8300) + + pci:v00008086d00001C12sv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Apple MacBookPro8,2 [Core i7, 15", 2011] ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 2 (Apple MacBookPro8,2 [Core i7, 15", 2011]) + + pci:v00008086d00001C14* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 3 + + pci:v00008086d00001C14sv00001028sd000004DA* +- ID_MODEL_FROM_DATABASE=Vostro 3750 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 3 (Vostro 3750) + + pci:v00008086d00001C14sv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Apple MacBookPro8,2 [Core i7, 15", 2011] ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 3 (Apple MacBookPro8,2 [Core i7, 15", 2011]) + + pci:v00008086d00001C16* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 4 + + pci:v00008086d00001C16sv00001028sd000004AA* +- ID_MODEL_FROM_DATABASE=XPS 8300 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 4 (XPS 8300) + + pci:v00008086d00001C18* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 5 + + pci:v00008086d00001C18sv00001028sd000004DA* +- ID_MODEL_FROM_DATABASE=Vostro 3750 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 5 (Vostro 3750) + + pci:v00008086d00001C18sv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 5 (Server Board S1200BTS) + + pci:v00008086d00001C1A* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 6 + + pci:v00008086d00001C1Asv00001028sd000004DA* +- ID_MODEL_FROM_DATABASE=Vostro 3750 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 6 (Vostro 3750) + + pci:v00008086d00001C1Asv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8 series motherboard ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 6 (P8 series motherboard) + + pci:v00008086d00001C1C* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 7 +@@ -59703,58 +59703,58 @@ pci:v00008086d00001C1E* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 8 + + pci:v00008086d00001C1Esv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8 series motherboard ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family PCI Express Root Port 8 (P8 series motherboard) + + pci:v00008086d00001C20* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family High Definition Audio Controller + + pci:v00008086d00001C20sv00001028sd00000490* +- ID_MODEL_FROM_DATABASE=Alienware M17x R3 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family High Definition Audio Controller (Alienware M17x R3) + + pci:v00008086d00001C20sv00001028sd000004A3* +- ID_MODEL_FROM_DATABASE=Precision M4600 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family High Definition Audio Controller (Precision M4600) + + pci:v00008086d00001C20sv00001028sd000004AA* +- ID_MODEL_FROM_DATABASE=XPS 8300 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family High Definition Audio Controller (XPS 8300) + + pci:v00008086d00001C20sv00001028sd000004B2* +- ID_MODEL_FROM_DATABASE=Vostro 3350 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family High Definition Audio Controller (Vostro 3350) + + pci:v00008086d00001C20sv00001028sd000004DA* +- ID_MODEL_FROM_DATABASE=Vostro 3750 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family High Definition Audio Controller (Vostro 3750) + + pci:v00008086d00001C20sv00001043sd00008418* +- ID_MODEL_FROM_DATABASE=P8P67 Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family High Definition Audio Controller (P8P67 Deluxe Motherboard) + + pci:v00008086d00001C20sv00001043sd0000841B* +- ID_MODEL_FROM_DATABASE=P8H67 Series Motherboard ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family High Definition Audio Controller (P8H67 Series Motherboard) + + pci:v00008086d00001C20sv00008086sd00002008* +- ID_MODEL_FROM_DATABASE=DQ67SW board ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family High Definition Audio Controller (DQ67SW board) + + pci:v00008086d00001C20sv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Apple MacBookPro8,2 [Core i7, 15", 2011] ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family High Definition Audio Controller (Apple MacBookPro8,2 [Core i7, 15", 2011]) + + pci:v00008086d00001C22* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family SMBus Controller + + pci:v00008086d00001C22sv00001028sd000004A3* +- ID_MODEL_FROM_DATABASE=Precision M4600 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family SMBus Controller (Precision M4600) + + pci:v00008086d00001C22sv00001028sd000004AA* +- ID_MODEL_FROM_DATABASE=XPS 8300 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family SMBus Controller (XPS 8300) + + pci:v00008086d00001C22sv00001028sd000004B2* +- ID_MODEL_FROM_DATABASE=Vostro 3350 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family SMBus Controller (Vostro 3350) + + pci:v00008086d00001C22sv00001028sd000004DA* +- ID_MODEL_FROM_DATABASE=Vostro 3750 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family SMBus Controller (Vostro 3750) + + pci:v00008086d00001C22sv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8 series motherboard ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family SMBus Controller (P8 series motherboard) + + pci:v00008086d00001C22sv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Server Board S1200BTS / Apple MacBook Pro 8,1/8,2 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family SMBus Controller (Server Board S1200BTS / Apple MacBook Pro 8,1/8,2) + + pci:v00008086d00001C24* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family Thermal Management Controller +@@ -59766,55 +59766,55 @@ pci:v00008086d00001C26* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 + + pci:v00008086d00001C26sv00001028sd000004A3* +- ID_MODEL_FROM_DATABASE=Precision M4600 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (Precision M4600) + + pci:v00008086d00001C26sv00001028sd000004AA* +- ID_MODEL_FROM_DATABASE=XPS 8300 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (XPS 8300) + + pci:v00008086d00001C26sv00001028sd000004B2* +- ID_MODEL_FROM_DATABASE=Vostro 3350 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (Vostro 3350) + + pci:v00008086d00001C26sv00001028sd000004DA* +- ID_MODEL_FROM_DATABASE=Vostro 3750 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (Vostro 3750) + + pci:v00008086d00001C26sv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8 series motherboard ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (P8 series motherboard) + + pci:v00008086d00001C26sv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Server Board S1200BTS / Apple MacBook Pro 8,1/8,2 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (Server Board S1200BTS / Apple MacBook Pro 8,1/8,2) + + pci:v00008086d00001C27* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Universal Host Controller #1 + + pci:v00008086d00001C27sv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Apple MacBookPro8,2 [Core i7, 15", 2011] ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Universal Host Controller #1 (Apple MacBookPro8,2 [Core i7, 15", 2011]) + + pci:v00008086d00001C2C* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Universal Host Controller #5 + + pci:v00008086d00001C2Csv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Apple MacBookPro8,2 [Core i7, 15", 2011] ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Universal Host Controller #5 (Apple MacBookPro8,2 [Core i7, 15", 2011]) + + pci:v00008086d00001C2D* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 + + pci:v00008086d00001C2Dsv00001028sd000004A3* +- ID_MODEL_FROM_DATABASE=Precision M4600 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (Precision M4600) + + pci:v00008086d00001C2Dsv00001028sd000004AA* +- ID_MODEL_FROM_DATABASE=XPS 8300 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (XPS 8300) + + pci:v00008086d00001C2Dsv00001028sd000004B2* +- ID_MODEL_FROM_DATABASE=Vostro 3350 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (Vostro 3350) + + pci:v00008086d00001C2Dsv00001028sd000004DA* +- ID_MODEL_FROM_DATABASE=Vostro 3750 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (Vostro 3750) + + pci:v00008086d00001C2Dsv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8 series motherboard ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (P8 series motherboard) + + pci:v00008086d00001C2Dsv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Server Board S1200BTS / Apple MacBook Pro 8,1/8,2 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (Server Board S1200BTS / Apple MacBook Pro 8,1/8,2) + + pci:v00008086d00001C33* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family LAN Controller +@@ -59826,22 +59826,22 @@ pci:v00008086d00001C3A* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family MEI Controller #1 + + pci:v00008086d00001C3Asv00001028sd000004A3* +- ID_MODEL_FROM_DATABASE=Precision M4600 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family MEI Controller #1 (Precision M4600) + + pci:v00008086d00001C3Asv00001028sd000004AA* +- ID_MODEL_FROM_DATABASE=XPS 8300 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family MEI Controller #1 (XPS 8300) + + pci:v00008086d00001C3Asv00001028sd000004B2* +- ID_MODEL_FROM_DATABASE=Vostro 3350 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family MEI Controller #1 (Vostro 3350) + + pci:v00008086d00001C3Asv00001028sd000004DA* +- ID_MODEL_FROM_DATABASE=Vostro 3750 ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family MEI Controller #1 (Vostro 3750) + + pci:v00008086d00001C3Asv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8 series motherboard ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family MEI Controller #1 (P8 series motherboard) + + pci:v00008086d00001C3Asv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Apple MacBookPro8,2 [Core i7, 15", 2011] ++ ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family MEI Controller #1 (Apple MacBookPro8,2 [Core i7, 15", 2011]) + + pci:v00008086d00001C3B* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family MEI Controller #2 +@@ -59874,7 +59874,7 @@ pci:v00008086d00001C46* + ID_MODEL_FROM_DATABASE=P67 Express Chipset Family LPC Controller + + pci:v00008086d00001C46sv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8P67 Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=P67 Express Chipset Family LPC Controller (P8P67 Deluxe Motherboard) + + pci:v00008086d00001C47* + ID_MODEL_FROM_DATABASE=UM67 Express Chipset Family LPC Controller +@@ -59886,25 +59886,25 @@ pci:v00008086d00001C49* + ID_MODEL_FROM_DATABASE=HM65 Express Chipset Family LPC Controller + + pci:v00008086d00001C49sv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Apple MacBookPro8,2 [Core i7, 15", 2011] ++ ID_MODEL_FROM_DATABASE=HM65 Express Chipset Family LPC Controller (Apple MacBookPro8,2 [Core i7, 15", 2011]) + + pci:v00008086d00001C4A* + ID_MODEL_FROM_DATABASE=H67 Express Chipset Family LPC Controller + + pci:v00008086d00001C4Asv00001028sd000004AA* +- ID_MODEL_FROM_DATABASE=XPS 8300 ++ ID_MODEL_FROM_DATABASE=H67 Express Chipset Family LPC Controller (XPS 8300) + + pci:v00008086d00001C4Asv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8H67 Series Motherboard ++ ID_MODEL_FROM_DATABASE=H67 Express Chipset Family LPC Controller (P8H67 Series Motherboard) + + pci:v00008086d00001C4B* + ID_MODEL_FROM_DATABASE=HM67 Express Chipset Family LPC Controller + + pci:v00008086d00001C4Bsv00001028sd000004B2* +- ID_MODEL_FROM_DATABASE=Vostro 3350 ++ ID_MODEL_FROM_DATABASE=HM67 Express Chipset Family LPC Controller (Vostro 3350) + + pci:v00008086d00001C4Bsv00001028sd000004DA* +- ID_MODEL_FROM_DATABASE=Vostro 3750 ++ ID_MODEL_FROM_DATABASE=HM67 Express Chipset Family LPC Controller (Vostro 3750) + + pci:v00008086d00001C4C* + ID_MODEL_FROM_DATABASE=Q65 Express Chipset Family LPC Controller +@@ -59919,7 +59919,7 @@ pci:v00008086d00001C4F* + ID_MODEL_FROM_DATABASE=QM67 Express Chipset Family LPC Controller + + pci:v00008086d00001C4Fsv00001028sd000004A3* +- ID_MODEL_FROM_DATABASE=Precision M4600 ++ ID_MODEL_FROM_DATABASE=QM67 Express Chipset Family LPC Controller (Precision M4600) + + pci:v00008086d00001C50* + ID_MODEL_FROM_DATABASE=B65 Express Chipset Family LPC Controller +@@ -59931,7 +59931,7 @@ pci:v00008086d00001C52* + ID_MODEL_FROM_DATABASE=C202 Chipset Family LPC Controller + + pci:v00008086d00001C52sv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ ID_MODEL_FROM_DATABASE=C202 Chipset Family LPC Controller (Server Board S1200BTS) + + pci:v00008086d00001C53* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family LPC Controller +@@ -59946,7 +59946,7 @@ pci:v00008086d00001C56* + ID_MODEL_FROM_DATABASE=C206 Chipset Family LPC Controller + + pci:v00008086d00001C56sv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8B WS Motherboard ++ ID_MODEL_FROM_DATABASE=C206 Chipset Family LPC Controller (P8B WS Motherboard) + + pci:v00008086d00001C57* + ID_MODEL_FROM_DATABASE=6 Series/C200 Series Chipset Family LPC Controller +@@ -60177,19 +60177,19 @@ pci:v00008086d00001E02* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family 6-port SATA Controller [AHCI mode] + + pci:v00008086d00001E02sv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=P8H77-I Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family 6-port SATA Controller [AHCI mode] (P8H77-I Motherboard) + + pci:v00008086d00001E02sv00001849sd00001E02* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family 6-port SATA Controller [AHCI mode] (Motherboard) + + pci:v00008086d00001E03* + ID_MODEL_FROM_DATABASE=7 Series Chipset Family 6-port SATA Controller [AHCI mode] + + pci:v00008086d00001E03sv00001043sd00001477* +- ID_MODEL_FROM_DATABASE=N56VZ ++ ID_MODEL_FROM_DATABASE=7 Series Chipset Family 6-port SATA Controller [AHCI mode] (N56VZ) + + pci:v00008086d00001E03sv00001043sd00001517* +- ID_MODEL_FROM_DATABASE=Zenbook Prime UX31A ++ ID_MODEL_FROM_DATABASE=7 Series Chipset Family 6-port SATA Controller [AHCI mode] (Zenbook Prime UX31A) + + pci:v00008086d00001E04* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family SATA Controller [RAID mode] +@@ -60216,25 +60216,25 @@ pci:v00008086d00001E10* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 1 + + pci:v00008086d00001E10sv00001043sd00001477* +- ID_MODEL_FROM_DATABASE=N56VZ ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 1 (N56VZ) + + pci:v00008086d00001E10sv00001043sd00001517* +- ID_MODEL_FROM_DATABASE=Zenbook Prime UX31A ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 1 (Zenbook Prime UX31A) + + pci:v00008086d00001E10sv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=P8H77-I Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 1 (P8H77-I Motherboard) + + pci:v00008086d00001E10sv00001849sd00001E10* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 1 (Motherboard) + + pci:v00008086d00001E12* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 2 + + pci:v00008086d00001E12sv00001043sd00001477* +- ID_MODEL_FROM_DATABASE=N56VZ ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 2 (N56VZ) + + pci:v00008086d00001E12sv00001043sd00001517* +- ID_MODEL_FROM_DATABASE=Zenbook Prime UX31A ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 2 (Zenbook Prime UX31A) + + pci:v00008086d00001E14* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 3 +@@ -60243,25 +60243,25 @@ pci:v00008086d00001E16* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 4 + + pci:v00008086d00001E16sv00001043sd00001477* +- ID_MODEL_FROM_DATABASE=N56VZ ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 4 (N56VZ) + + pci:v00008086d00001E16sv00001849sd00001618* +- ID_MODEL_FROM_DATABASE=Z77 Extreme4 motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 4 (Z77 Extreme4 motherboard) + + pci:v00008086d00001E18* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 5 + + pci:v00008086d00001E18sv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=P8H77-I Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 5 (P8H77-I Motherboard) + + pci:v00008086d00001E18sv00001849sd00001E18* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 5 (Motherboard) + + pci:v00008086d00001E1A* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 6 + + pci:v00008086d00001E1Asv00001849sd00001E1A* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 6 (Motherboard) + + pci:v00008086d00001E1C* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 7 +@@ -60270,43 +60270,43 @@ pci:v00008086d00001E1E* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 8 + + pci:v00008086d00001E1Esv00001849sd00001E1E* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family PCI Express Root Port 8 (Motherboard) + + pci:v00008086d00001E20* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family High Definition Audio Controller + + pci:v00008086d00001E20sv00001043sd00001477* +- ID_MODEL_FROM_DATABASE=N56VZ ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family High Definition Audio Controller (N56VZ) + + pci:v00008086d00001E20sv00001043sd00001517* +- ID_MODEL_FROM_DATABASE=Zenbook Prime UX31A ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family High Definition Audio Controller (Zenbook Prime UX31A) + + pci:v00008086d00001E20sv00001043sd00008415* +- ID_MODEL_FROM_DATABASE=P8H77-I Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family High Definition Audio Controller (P8H77-I Motherboard) + + pci:v00008086d00001E20sv00001849sd00001898* +- ID_MODEL_FROM_DATABASE=Z77 Extreme4 motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family High Definition Audio Controller (Z77 Extreme4 motherboard) + + pci:v00008086d00001E22* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family SMBus Controller + + pci:v00008086d00001E22sv00001043sd00001477* +- ID_MODEL_FROM_DATABASE=N56VZ ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family SMBus Controller (N56VZ) + + pci:v00008086d00001E22sv00001043sd00001517* +- ID_MODEL_FROM_DATABASE=Zenbook Prime UX31A ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family SMBus Controller (Zenbook Prime UX31A) + + pci:v00008086d00001E22sv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=P8H77-I Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family SMBus Controller (P8H77-I Motherboard) + + pci:v00008086d00001E22sv00001849sd00001E22* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family SMBus Controller (Motherboard) + + pci:v00008086d00001E24* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family Thermal Management Controller + + pci:v00008086d00001E24sv00001043sd00001517* +- ID_MODEL_FROM_DATABASE=Zenbook Prime UX31A ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family Thermal Management Controller (Zenbook Prime UX31A) + + pci:v00008086d00001E25* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family DMI to PCI Bridge +@@ -60315,49 +60315,49 @@ pci:v00008086d00001E26* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 + + pci:v00008086d00001E26sv00001043sd00001477* +- ID_MODEL_FROM_DATABASE=N56VZ ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (N56VZ) + + pci:v00008086d00001E26sv00001043sd00001517* +- ID_MODEL_FROM_DATABASE=Zenbook Prime UX31A ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (Zenbook Prime UX31A) + + pci:v00008086d00001E26sv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=P8H77-I Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (P8H77-I Motherboard) + + pci:v00008086d00001E26sv00001849sd00001E26* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (Motherboard) + + pci:v00008086d00001E2D* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 + + pci:v00008086d00001E2Dsv00001043sd00001477* +- ID_MODEL_FROM_DATABASE=N56VZ ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (N56VZ) + + pci:v00008086d00001E2Dsv00001043sd00001517* +- ID_MODEL_FROM_DATABASE=Zenbook Prime UX31A ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (Zenbook Prime UX31A) + + pci:v00008086d00001E2Dsv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=P8H77-I Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (P8H77-I Motherboard) + + pci:v00008086d00001E2Dsv00001849sd00001E2D* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (Motherboard) + + pci:v00008086d00001E31* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB xHCI Host Controller + + pci:v00008086d00001E31sv0000103Csd000017AB* +- ID_MODEL_FROM_DATABASE=ProBook 6570b ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB xHCI Host Controller (ProBook 6570b) + + pci:v00008086d00001E31sv00001043sd00001477* +- ID_MODEL_FROM_DATABASE=N56VZ ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB xHCI Host Controller (N56VZ) + + pci:v00008086d00001E31sv00001043sd00001517* +- ID_MODEL_FROM_DATABASE=Zenbook Prime UX31A ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB xHCI Host Controller (Zenbook Prime UX31A) + + pci:v00008086d00001E31sv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=P8H77-I Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB xHCI Host Controller (P8H77-I Motherboard) + + pci:v00008086d00001E31sv00001849sd00001E31* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB xHCI Host Controller (Motherboard) + + pci:v00008086d00001E33* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family LAN Controller +@@ -60366,16 +60366,16 @@ pci:v00008086d00001E3A* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family MEI Controller #1 + + pci:v00008086d00001E3Asv00001043sd00001477* +- ID_MODEL_FROM_DATABASE=N56VZ ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family MEI Controller #1 (N56VZ) + + pci:v00008086d00001E3Asv00001043sd00001517* +- ID_MODEL_FROM_DATABASE=Zenbook Prime UX31A ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family MEI Controller #1 (Zenbook Prime UX31A) + + pci:v00008086d00001E3Asv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=P8H77-I Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family MEI Controller #1 (P8H77-I Motherboard) + + pci:v00008086d00001E3Asv00001849sd00001E3A* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family MEI Controller #1 (Motherboard) + + pci:v00008086d00001E3B* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family MEI Controller #2 +@@ -60399,7 +60399,7 @@ pci:v00008086d00001E44* + ID_MODEL_FROM_DATABASE=Z77 Express Chipset LPC Controller + + pci:v00008086d00001E44sv00001849sd00001E44* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=Z77 Express Chipset LPC Controller (Motherboard) + + pci:v00008086d00001E45* + ID_MODEL_FROM_DATABASE=7 Series Chipset Family LPC Controller +@@ -60420,7 +60420,7 @@ pci:v00008086d00001E4A* + ID_MODEL_FROM_DATABASE=H77 Express Chipset LPC Controller + + pci:v00008086d00001E4Asv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=P8H77-I Motherboard ++ ID_MODEL_FROM_DATABASE=H77 Express Chipset LPC Controller (P8H77-I Motherboard) + + pci:v00008086d00001E4B* + ID_MODEL_FROM_DATABASE=7 Series Chipset Family LPC Controller +@@ -60468,10 +60468,10 @@ pci:v00008086d00001E59* + ID_MODEL_FROM_DATABASE=HM76 Express Chipset LPC Controller + + pci:v00008086d00001E59sv00001043sd00001477* +- ID_MODEL_FROM_DATABASE=N56VZ ++ ID_MODEL_FROM_DATABASE=HM76 Express Chipset LPC Controller (N56VZ) + + pci:v00008086d00001E59sv00001043sd00001517* +- ID_MODEL_FROM_DATABASE=Zenbook Prime UX31A ++ ID_MODEL_FROM_DATABASE=HM76 Express Chipset LPC Controller (Zenbook Prime UX31A) + + pci:v00008086d00001E5A* + ID_MODEL_FROM_DATABASE=7 Series Chipset Family LPC Controller +@@ -60804,28 +60804,28 @@ pci:v00008086d00002415* + ID_MODEL_FROM_DATABASE=82801AA AC'97 Audio Controller + + pci:v00008086d00002415sv00001028sd00000095* +- ID_MODEL_FROM_DATABASE=Precision Workstation 220 Integrated Digital Audio ++ ID_MODEL_FROM_DATABASE=82801AA AC'97 Audio Controller (Precision Workstation 220 Integrated Digital Audio) + + pci:v00008086d00002415sv00001028sd000000B4* +- ID_MODEL_FROM_DATABASE=OptiPlex GX110 ++ ID_MODEL_FROM_DATABASE=82801AA AC'97 Audio Controller (OptiPlex GX110) + + pci:v00008086d00002415sv0000110Asd00000051* +- ID_MODEL_FROM_DATABASE=Activy 2xx ++ ID_MODEL_FROM_DATABASE=82801AA AC'97 Audio Controller (Activy 2xx) + + pci:v00008086d00002415sv000011D4sd00000040* +- ID_MODEL_FROM_DATABASE=SoundMAX Integrated Digital Audio ++ ID_MODEL_FROM_DATABASE=82801AA AC'97 Audio Controller (SoundMAX Integrated Digital Audio) + + pci:v00008086d00002415sv000011D4sd00000048* +- ID_MODEL_FROM_DATABASE=SoundMAX Integrated Digital Audio ++ ID_MODEL_FROM_DATABASE=82801AA AC'97 Audio Controller (SoundMAX Integrated Digital Audio) + + pci:v00008086d00002415sv000011D4sd00005340* +- ID_MODEL_FROM_DATABASE=SoundMAX Integrated Digital Audio ++ ID_MODEL_FROM_DATABASE=82801AA AC'97 Audio Controller (SoundMAX Integrated Digital Audio) + + pci:v00008086d00002415sv00001734sd00001025* +- ID_MODEL_FROM_DATABASE=Activy 3xx ++ ID_MODEL_FROM_DATABASE=82801AA AC'97 Audio Controller (Activy 3xx) + + pci:v00008086d00002415sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82801AA AC'97 Audio Controller (QEMU Virtual Machine) + + pci:v00008086d00002416* + ID_MODEL_FROM_DATABASE=82801AA AC'97 Modem Controller +@@ -60849,10 +60849,10 @@ pci:v00008086d00002425* + ID_MODEL_FROM_DATABASE=82801AB AC'97 Audio Controller + + pci:v00008086d00002425sv000011D4sd00000040* +- ID_MODEL_FROM_DATABASE=SoundMAX Integrated Digital Audio ++ ID_MODEL_FROM_DATABASE=82801AB AC'97 Audio Controller (SoundMAX Integrated Digital Audio) + + pci:v00008086d00002425sv000011D4sd00000048* +- ID_MODEL_FROM_DATABASE=SoundMAX Integrated Digital Audio ++ ID_MODEL_FROM_DATABASE=82801AB AC'97 Audio Controller (SoundMAX Integrated Digital Audio) + + pci:v00008086d00002426* + ID_MODEL_FROM_DATABASE=82801AB AC'97 Modem Controller +@@ -60864,352 +60864,352 @@ pci:v00008086d00002440* + ID_MODEL_FROM_DATABASE=82801BA ISA Bridge (LPC) + + pci:v00008086d00002440sv00008086sd00005744* +- ID_MODEL_FROM_DATABASE=S845WD1-E ++ ID_MODEL_FROM_DATABASE=82801BA ISA Bridge (LPC) (S845WD1-E) + + pci:v00008086d00002442* + ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 + + pci:v00008086d00002442sv00001014sd000001C6* +- ID_MODEL_FROM_DATABASE=Netvista A40/A40p ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (Netvista A40/A40p) + + pci:v00008086d00002442sv00001025sd00001016* +- ID_MODEL_FROM_DATABASE=Travelmate 612 TX ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (Travelmate 612 TX) + + pci:v00008086d00002442sv00001028sd000000C7* +- ID_MODEL_FROM_DATABASE=Dimension 8100 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (Dimension 8100) + + pci:v00008086d00002442sv00001028sd000000D8* +- ID_MODEL_FROM_DATABASE=Precision 530 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (Precision 530) + + pci:v00008086d00002442sv00001028sd0000010E* +- ID_MODEL_FROM_DATABASE=Optiplex GX240 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (Optiplex GX240) + + pci:v00008086d00002442sv0000103Csd0000126F* +- ID_MODEL_FROM_DATABASE=e-pc 40 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (e-pc 40) + + pci:v00008086d00002442sv00001043sd00008027* +- ID_MODEL_FROM_DATABASE=TUSL2-C Mainboard ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (TUSL2-C Mainboard) + + pci:v00008086d00002442sv0000104Dsd000080DF* +- ID_MODEL_FROM_DATABASE=Vaio PCG-FX403 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (Vaio PCG-FX403) + + pci:v00008086d00002442sv0000147Bsd00000507* +- ID_MODEL_FROM_DATABASE=TH7II-RAID ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (TH7II-RAID) + + pci:v00008086d00002442sv00008086sd00004532* +- ID_MODEL_FROM_DATABASE=D815EEA2 mainboard ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (D815EEA2 mainboard) + + pci:v00008086d00002442sv00008086sd00004557* +- ID_MODEL_FROM_DATABASE=D815EGEW Mainboard ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (D815EGEW Mainboard) + + pci:v00008086d00002442sv00008086sd00005744* +- ID_MODEL_FROM_DATABASE=S845WD1-E mainboard ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (S845WD1-E mainboard) + + pci:v00008086d00002443* + ID_MODEL_FROM_DATABASE=82801BA/BAM SMBus Controller + + pci:v00008086d00002443sv00001014sd000001C6* +- ID_MODEL_FROM_DATABASE=Netvista A40/A40p ++ ID_MODEL_FROM_DATABASE=82801BA/BAM SMBus Controller (Netvista A40/A40p) + + pci:v00008086d00002443sv00001025sd00001016* +- ID_MODEL_FROM_DATABASE=Travelmate 612 TX ++ ID_MODEL_FROM_DATABASE=82801BA/BAM SMBus Controller (Travelmate 612 TX) + + pci:v00008086d00002443sv00001028sd000000C7* +- ID_MODEL_FROM_DATABASE=Dimension 8100 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM SMBus Controller (Dimension 8100) + + pci:v00008086d00002443sv00001028sd000000D8* +- ID_MODEL_FROM_DATABASE=Precision 530 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM SMBus Controller (Precision 530) + + pci:v00008086d00002443sv00001028sd0000010E* +- ID_MODEL_FROM_DATABASE=Optiplex GX240 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM SMBus Controller (Optiplex GX240) + + pci:v00008086d00002443sv0000103Csd0000126F* +- ID_MODEL_FROM_DATABASE=e-pc 40 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM SMBus Controller (e-pc 40) + + pci:v00008086d00002443sv00001043sd00008027* +- ID_MODEL_FROM_DATABASE=TUSL2-C Mainboard ++ ID_MODEL_FROM_DATABASE=82801BA/BAM SMBus Controller (TUSL2-C Mainboard) + + pci:v00008086d00002443sv0000104Dsd000080DF* +- ID_MODEL_FROM_DATABASE=Vaio PCG-FX403 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM SMBus Controller (Vaio PCG-FX403) + + pci:v00008086d00002443sv0000147Bsd00000507* +- ID_MODEL_FROM_DATABASE=TH7II-RAID ++ ID_MODEL_FROM_DATABASE=82801BA/BAM SMBus Controller (TH7II-RAID) + + pci:v00008086d00002443sv000015D9sd00003280* +- ID_MODEL_FROM_DATABASE=Supermicro P4SBE Mainboard ++ ID_MODEL_FROM_DATABASE=82801BA/BAM SMBus Controller (Supermicro P4SBE Mainboard) + + pci:v00008086d00002443sv00008086sd00004532* +- ID_MODEL_FROM_DATABASE=D815EEA2 mainboard ++ ID_MODEL_FROM_DATABASE=82801BA/BAM SMBus Controller (D815EEA2 mainboard) + + pci:v00008086d00002443sv00008086sd00004557* +- ID_MODEL_FROM_DATABASE=D815EGEW Mainboard ++ ID_MODEL_FROM_DATABASE=82801BA/BAM SMBus Controller (D815EGEW Mainboard) + + pci:v00008086d00002443sv00008086sd00005744* +- ID_MODEL_FROM_DATABASE=S845WD1-E mainboard ++ ID_MODEL_FROM_DATABASE=82801BA/BAM SMBus Controller (S845WD1-E mainboard) + + pci:v00008086d00002444* + ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 + + pci:v00008086d00002444sv00001025sd00001016* +- ID_MODEL_FROM_DATABASE=Travelmate 612 TX ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (Travelmate 612 TX) + + pci:v00008086d00002444sv00001028sd000000C7* +- ID_MODEL_FROM_DATABASE=Dimension 8100 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (Dimension 8100) + + pci:v00008086d00002444sv00001028sd000000D8* +- ID_MODEL_FROM_DATABASE=Precision 530 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (Precision 530) + + pci:v00008086d00002444sv00001028sd0000010E* +- ID_MODEL_FROM_DATABASE=Optiplex GX240 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (Optiplex GX240) + + pci:v00008086d00002444sv0000103Csd0000126F* +- ID_MODEL_FROM_DATABASE=e-pc 40 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (e-pc 40) + + pci:v00008086d00002444sv00001043sd00008027* +- ID_MODEL_FROM_DATABASE=TUSL2-C Mainboard ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (TUSL2-C Mainboard) + + pci:v00008086d00002444sv0000104Dsd000080DF* +- ID_MODEL_FROM_DATABASE=Vaio PCG-FX403 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (Vaio PCG-FX403) + + pci:v00008086d00002444sv0000147Bsd00000507* +- ID_MODEL_FROM_DATABASE=TH7II-RAID ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (TH7II-RAID) + + pci:v00008086d00002444sv00008086sd00004532* +- ID_MODEL_FROM_DATABASE=D815EEA2 mainboard ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (D815EEA2 mainboard) + + pci:v00008086d00002444sv00008086sd00005744* +- ID_MODEL_FROM_DATABASE=S845WD1-E mainboard ++ ID_MODEL_FROM_DATABASE=82801BA/BAM USB Controller #1 (S845WD1-E mainboard) + + pci:v00008086d00002445* + ID_MODEL_FROM_DATABASE=82801BA/BAM AC'97 Audio Controller + + pci:v00008086d00002445sv00000E11sd0000000B* +- ID_MODEL_FROM_DATABASE=Compaq Deskpro EN Audio ++ ID_MODEL_FROM_DATABASE=82801BA/BAM AC'97 Audio Controller (Compaq Deskpro EN Audio) + + pci:v00008086d00002445sv00000E11sd00000088* +- ID_MODEL_FROM_DATABASE=Evo D500 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM AC'97 Audio Controller (Evo D500) + + pci:v00008086d00002445sv00001014sd000001C6* +- ID_MODEL_FROM_DATABASE=Netvista A40/A40p ++ ID_MODEL_FROM_DATABASE=82801BA/BAM AC'97 Audio Controller (Netvista A40/A40p) + + pci:v00008086d00002445sv00001025sd00001016* +- ID_MODEL_FROM_DATABASE=Travelmate 612 TX ++ ID_MODEL_FROM_DATABASE=82801BA/BAM AC'97 Audio Controller (Travelmate 612 TX) + + pci:v00008086d00002445sv00001028sd000000D8* +- ID_MODEL_FROM_DATABASE=Precision 530 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM AC'97 Audio Controller (Precision 530) + + pci:v00008086d00002445sv0000103Csd0000126F* +- ID_MODEL_FROM_DATABASE=e-pc 40 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM AC'97 Audio Controller (e-pc 40) + + pci:v00008086d00002445sv0000104Dsd000080DF* +- ID_MODEL_FROM_DATABASE=Vaio PCG-FX403 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM AC'97 Audio Controller (Vaio PCG-FX403) + + pci:v00008086d00002445sv00001462sd00003370* +- ID_MODEL_FROM_DATABASE=STAC9721 AC ++ ID_MODEL_FROM_DATABASE=82801BA/BAM AC'97 Audio Controller (STAC9721 AC) + + pci:v00008086d00002445sv0000147Bsd00000507* +- ID_MODEL_FROM_DATABASE=TH7II-RAID ++ ID_MODEL_FROM_DATABASE=82801BA/BAM AC'97 Audio Controller (TH7II-RAID) + + pci:v00008086d00002445sv00008086sd00004557* +- ID_MODEL_FROM_DATABASE=D815EGEW Mainboard ++ ID_MODEL_FROM_DATABASE=82801BA/BAM AC'97 Audio Controller (D815EGEW Mainboard) + + pci:v00008086d00002446* + ID_MODEL_FROM_DATABASE=82801BA/BAM AC'97 Modem Controller + + pci:v00008086d00002446sv00001025sd00001016* +- ID_MODEL_FROM_DATABASE=Travelmate 612 TX ++ ID_MODEL_FROM_DATABASE=82801BA/BAM AC'97 Modem Controller (Travelmate 612 TX) + + pci:v00008086d00002446sv0000104Dsd000080DF* +- ID_MODEL_FROM_DATABASE=Vaio PCG-FX403 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM AC'97 Modem Controller (Vaio PCG-FX403) + + pci:v00008086d00002448* + ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge + + pci:v00008086d00002448sv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Latitude E6510) + + pci:v00008086d00002448sv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=HP Compaq nw8240 Mobile Workstation ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (HP Compaq nw8240 Mobile Workstation) + + pci:v00008086d00002448sv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (NX6110/NC6120) + + pci:v00008086d00002448sv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Compaq nx9420 Notebook) + + pci:v00008086d00002448sv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Compaq nw8440) + + pci:v00008086d00002448sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Compaq 6910p) + + pci:v00008086d00002448sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (VAIO VGN-NR120E) + + pci:v00008086d00002448sv0000105Bsd00000D7C* +- ID_MODEL_FROM_DATABASE=D270S/D250S Motherboard ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (D270S/D250S Motherboard) + + pci:v00008086d00002448sv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P30 notebook ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (P30 notebook) + + pci:v00008086d00002448sv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Notebook N150P) + + pci:v00008086d00002448sv00001458sd00005000* +- ID_MODEL_FROM_DATABASE=GA-D525TUD ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (GA-D525TUD) + + pci:v00008086d00002448sv00001734sd00001055* +- ID_MODEL_FROM_DATABASE=Amilo M1420 ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Amilo M1420) + + pci:v00008086d00002448sv000017AAsd000020AE* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (ThinkPad T61/R61) + + pci:v00008086d00002448sv00008086sd0000544B* +- ID_MODEL_FROM_DATABASE=Desktop Board D425KT ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Desktop Board D425KT) + + pci:v00008086d00002448sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (CCG-RUMBA) + + pci:v00008086d00002449* + ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller + + pci:v00008086d00002449sv00000E11sd00000012* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VM ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VM) + + pci:v00008086d00002449sv00000E11sd00000091* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv00001014sd000001CE* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv00001014sd000001DC* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv00001014sd000001EB* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv00001014sd000001EC* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv00001014sd00000202* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv00001014sd00000205* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv00001014sd00000217* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv00001014sd00000234* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv00001014sd0000023D* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv00001014sd00000244* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv00001014sd00000245* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv00001014sd00000265* +- ID_MODEL_FROM_DATABASE=PRO/100 VE Desktop Connection ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (PRO/100 VE Desktop Connection) + + pci:v00008086d00002449sv00001014sd00000267* +- ID_MODEL_FROM_DATABASE=PRO/100 VE Desktop Connection ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (PRO/100 VE Desktop Connection) + + pci:v00008086d00002449sv00001014sd0000026A* +- ID_MODEL_FROM_DATABASE=PRO/100 VE Desktop Connection ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (PRO/100 VE Desktop Connection) + + pci:v00008086d00002449sv0000109Fsd0000315D* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv0000109Fsd00003181* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv00001179sd0000FF01* +- ID_MODEL_FROM_DATABASE=PRO/100 VE Network Connection ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (PRO/100 VE Network Connection) + + pci:v00008086d00002449sv00001186sd00007801* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv0000144Dsd00002602* +- ID_MODEL_FROM_DATABASE=HomePNA 1M CNR ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (HomePNA 1M CNR) + + pci:v00008086d00002449sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (QEMU Virtual Machine) + + pci:v00008086d00002449sv00008086sd00003010* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv00008086sd00003011* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VM ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VM) + + pci:v00008086d00002449sv00008086sd00003012* +- ID_MODEL_FROM_DATABASE=82562EH based Phoneline ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (82562EH based Phoneline) + + pci:v00008086d00002449sv00008086sd00003013* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VE ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VE) + + pci:v00008086d00002449sv00008086sd00003014* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 VM ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 VM) + + pci:v00008086d00002449sv00008086sd00003015* +- ID_MODEL_FROM_DATABASE=82562EH based Phoneline ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (82562EH based Phoneline) + + pci:v00008086d00002449sv00008086sd00003016* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 P Mobile Combo ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 P Mobile Combo) + + pci:v00008086d00002449sv00008086sd00003017* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 P Mobile ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100 P Mobile) + + pci:v00008086d00002449sv00008086sd00003018* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 ++ ID_MODEL_FROM_DATABASE=82801BA/BAM/CA/CAM Ethernet Controller (EtherExpress PRO/100) + + pci:v00008086d0000244A* + ID_MODEL_FROM_DATABASE=82801BAM IDE U100 Controller + + pci:v00008086d0000244Asv00001025sd00001016* +- ID_MODEL_FROM_DATABASE=Travelmate 612TX ++ ID_MODEL_FROM_DATABASE=82801BAM IDE U100 Controller (Travelmate 612TX) + + pci:v00008086d0000244Asv0000104Dsd000080DF* +- ID_MODEL_FROM_DATABASE=Vaio PCG-FX403 ++ ID_MODEL_FROM_DATABASE=82801BAM IDE U100 Controller (Vaio PCG-FX403) + + pci:v00008086d0000244B* + ID_MODEL_FROM_DATABASE=82801BA IDE U100 Controller + + pci:v00008086d0000244Bsv00001014sd000001C6* +- ID_MODEL_FROM_DATABASE=Netvista A40/A40p ++ ID_MODEL_FROM_DATABASE=82801BA IDE U100 Controller (Netvista A40/A40p) + + pci:v00008086d0000244Bsv00001028sd000000C7* +- ID_MODEL_FROM_DATABASE=Dimension 8100 ++ ID_MODEL_FROM_DATABASE=82801BA IDE U100 Controller (Dimension 8100) + + pci:v00008086d0000244Bsv00001028sd000000D8* +- ID_MODEL_FROM_DATABASE=Precision 530 ++ ID_MODEL_FROM_DATABASE=82801BA IDE U100 Controller (Precision 530) + + pci:v00008086d0000244Bsv00001028sd0000010E* +- ID_MODEL_FROM_DATABASE=Optiplex GX240 ++ ID_MODEL_FROM_DATABASE=82801BA IDE U100 Controller (Optiplex GX240) + + pci:v00008086d0000244Bsv0000103Csd0000126F* +- ID_MODEL_FROM_DATABASE=e-pc 40 ++ ID_MODEL_FROM_DATABASE=82801BA IDE U100 Controller (e-pc 40) + + pci:v00008086d0000244Bsv00001043sd00008027* +- ID_MODEL_FROM_DATABASE=TUSL2-C Mainboard ++ ID_MODEL_FROM_DATABASE=82801BA IDE U100 Controller (TUSL2-C Mainboard) + + pci:v00008086d0000244Bsv0000147Bsd00000507* +- ID_MODEL_FROM_DATABASE=TH7II-RAID ++ ID_MODEL_FROM_DATABASE=82801BA IDE U100 Controller (TH7II-RAID) + + pci:v00008086d0000244Bsv000015D9sd00003280* +- ID_MODEL_FROM_DATABASE=Supermicro P4SBE Mainboard ++ ID_MODEL_FROM_DATABASE=82801BA IDE U100 Controller (Supermicro P4SBE Mainboard) + + pci:v00008086d0000244Bsv00008086sd00004532* +- ID_MODEL_FROM_DATABASE=D815EEA2 mainboard ++ ID_MODEL_FROM_DATABASE=82801BA IDE U100 Controller (D815EEA2 mainboard) + + pci:v00008086d0000244Bsv00008086sd00004557* +- ID_MODEL_FROM_DATABASE=D815EGEW Mainboard ++ ID_MODEL_FROM_DATABASE=82801BA IDE U100 Controller (D815EGEW Mainboard) + + pci:v00008086d0000244Bsv00008086sd00005744* +- ID_MODEL_FROM_DATABASE=S845WD1-E mainboard ++ ID_MODEL_FROM_DATABASE=82801BA IDE U100 Controller (S845WD1-E mainboard) + + pci:v00008086d0000244C* + ID_MODEL_FROM_DATABASE=82801BAM ISA Bridge (LPC) +@@ -61218,52 +61218,52 @@ pci:v00008086d0000244E* + ID_MODEL_FROM_DATABASE=82801 PCI Bridge + + pci:v00008086d0000244Esv00001014sd00000267* +- ID_MODEL_FROM_DATABASE=NetVista A30p ++ ID_MODEL_FROM_DATABASE=82801 PCI Bridge (NetVista A30p) + + pci:v00008086d0000244Esv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801 PCI Bridge (Inspiron 530) + + pci:v00008086d0000244Esv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801 PCI Bridge (Optiplex 755) + + pci:v00008086d0000244Esv00001028sd000002DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 980 ++ ID_MODEL_FROM_DATABASE=82801 PCI Bridge (OptiPlex 980) + + pci:v00008086d0000244Esv0000103Csd00002A3B* +- ID_MODEL_FROM_DATABASE=Pavilion A1512X ++ ID_MODEL_FROM_DATABASE=82801 PCI Bridge (Pavilion A1512X) + + pci:v00008086d0000244Esv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=82801 PCI Bridge (Asus IPIBL-LB Motherboard) + + pci:v00008086d0000244Esv0000103Csd000031FE* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=82801 PCI Bridge (ProLiant DL140 G3) + + pci:v00008086d0000244Esv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant ML150 G6 Server ++ ID_MODEL_FROM_DATABASE=82801 PCI Bridge (ProLiant ML150 G6 Server) + + pci:v00008086d0000244Esv00001043sd00008277* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801 PCI Bridge (P5K PRO Motherboard) + + pci:v00008086d0000244Esv00001043sd0000844D* +- ID_MODEL_FROM_DATABASE=P8 series motherboard ++ ID_MODEL_FROM_DATABASE=82801 PCI Bridge (P8 series motherboard) + + pci:v00008086d0000244Esv00001458sd00005000* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=82801 PCI Bridge (Motherboard) + + pci:v00008086d0000244Esv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=82801 PCI Bridge (Wind PC MS-7418) + + pci:v00008086d0000244Esv000015D9sd0000060D* +- ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ ID_MODEL_FROM_DATABASE=82801 PCI Bridge (C7SIM-Q Motherboard) + + pci:v00008086d0000244Esv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=82801 PCI Bridge (X7DBN Motherboard) + + pci:v00008086d0000244Esv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=82801 PCI Bridge (CC11/CL11) + + pci:v00008086d0000244Esv00008086sd00007270* +- ID_MODEL_FROM_DATABASE=Server Board S1200BTS ++ ID_MODEL_FROM_DATABASE=82801 PCI Bridge (Server Board S1200BTS) + + pci:v00008086d00002450* + ID_MODEL_FROM_DATABASE=82801E ISA Bridge (LPC) +@@ -61293,160 +61293,160 @@ pci:v00008086d00002482* + ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #1 + + pci:v00008086d00002482sv00000E11sd00000030* +- ID_MODEL_FROM_DATABASE=Evo N600c ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #1 (Evo N600c) + + pci:v00008086d00002482sv00001014sd00000220* +- ID_MODEL_FROM_DATABASE=ThinkPad A/T/X Series ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #1 (ThinkPad A/T/X Series) + + pci:v00008086d00002482sv0000104Dsd000080E7* +- ID_MODEL_FROM_DATABASE=VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #1 (VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP) + + pci:v00008086d00002482sv000015D9sd00003480* +- ID_MODEL_FROM_DATABASE=P4DP6 ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #1 (P4DP6) + + pci:v00008086d00002482sv00008086sd00001958* +- ID_MODEL_FROM_DATABASE=vpr Matrix 170B4 ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #1 (vpr Matrix 170B4) + + pci:v00008086d00002482sv00008086sd00003424* +- ID_MODEL_FROM_DATABASE=SE7501HG2 Mainboard ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #1 (SE7501HG2 Mainboard) + + pci:v00008086d00002482sv00008086sd00004541* +- ID_MODEL_FROM_DATABASE=Latitude C640 ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #1 (Latitude C640) + + pci:v00008086d00002483* + ID_MODEL_FROM_DATABASE=82801CA/CAM SMBus Controller + + pci:v00008086d00002483sv00001014sd00000220* +- ID_MODEL_FROM_DATABASE=ThinkPad A/T/X Series ++ ID_MODEL_FROM_DATABASE=82801CA/CAM SMBus Controller (ThinkPad A/T/X Series) + + pci:v00008086d00002483sv0000104Dsd000080E7* +- ID_MODEL_FROM_DATABASE=VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ++ ID_MODEL_FROM_DATABASE=82801CA/CAM SMBus Controller (VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP) + + pci:v00008086d00002483sv000015D9sd00003480* +- ID_MODEL_FROM_DATABASE=P4DP6 ++ ID_MODEL_FROM_DATABASE=82801CA/CAM SMBus Controller (P4DP6) + + pci:v00008086d00002483sv00008086sd00001958* +- ID_MODEL_FROM_DATABASE=vpr Matrix 170B4 ++ ID_MODEL_FROM_DATABASE=82801CA/CAM SMBus Controller (vpr Matrix 170B4) + + pci:v00008086d00002484* + ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #2 + + pci:v00008086d00002484sv00000E11sd00000030* +- ID_MODEL_FROM_DATABASE=Evo N600c ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #2 (Evo N600c) + + pci:v00008086d00002484sv00001014sd00000220* +- ID_MODEL_FROM_DATABASE=ThinkPad A/T/X Series ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #2 (ThinkPad A/T/X Series) + + pci:v00008086d00002484sv0000104Dsd000080E7* +- ID_MODEL_FROM_DATABASE=VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #2 (VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP) + + pci:v00008086d00002484sv000015D9sd00003480* +- ID_MODEL_FROM_DATABASE=P4DP6 ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #2 (P4DP6) + + pci:v00008086d00002484sv00008086sd00001958* +- ID_MODEL_FROM_DATABASE=vpr Matrix 170B4 ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #2 (vpr Matrix 170B4) + + pci:v00008086d00002485* + ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Audio Controller + + pci:v00008086d00002485sv00001013sd00005959* +- ID_MODEL_FROM_DATABASE=Crystal WMD Audio Codec ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Audio Controller (Crystal WMD Audio Codec) + + pci:v00008086d00002485sv00001014sd00000222* +- ID_MODEL_FROM_DATABASE=ThinkPad A30/A30p/T23 ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Audio Controller (ThinkPad A30/A30p/T23) + + pci:v00008086d00002485sv00001014sd00000508* +- ID_MODEL_FROM_DATABASE=ThinkPad T30 ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Audio Controller (ThinkPad T30) + + pci:v00008086d00002485sv00001014sd0000051C* +- ID_MODEL_FROM_DATABASE=ThinkPad A/T/X Series ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Audio Controller (ThinkPad A/T/X Series) + + pci:v00008086d00002485sv00001043sd00001583* +- ID_MODEL_FROM_DATABASE=L3C (SPDIF) ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Audio Controller (L3C (SPDIF)) + + pci:v00008086d00002485sv00001043sd00001623* +- ID_MODEL_FROM_DATABASE=L2B (no SPDIF) ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Audio Controller (L2B (no SPDIF)) + + pci:v00008086d00002485sv00001043sd00001643* +- ID_MODEL_FROM_DATABASE=L3F ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Audio Controller (L3F) + + pci:v00008086d00002485sv0000104Dsd000080E7* +- ID_MODEL_FROM_DATABASE=VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Audio Controller (VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP) + + pci:v00008086d00002485sv0000144Dsd0000C006* +- ID_MODEL_FROM_DATABASE=vpr Matrix 170B4 ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Audio Controller (vpr Matrix 170B4) + + pci:v00008086d00002486* + ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Modem Controller + + pci:v00008086d00002486sv00001014sd00000223* +- ID_MODEL_FROM_DATABASE=ThinkPad A/T/X Series ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Modem Controller (ThinkPad A/T/X Series) + + pci:v00008086d00002486sv00001014sd00000503* +- ID_MODEL_FROM_DATABASE=ThinkPad R31 ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Modem Controller (ThinkPad R31) + + pci:v00008086d00002486sv00001014sd0000051A* +- ID_MODEL_FROM_DATABASE=ThinkPad A/T/X Series ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Modem Controller (ThinkPad A/T/X Series) + + pci:v00008086d00002486sv0000101Fsd00001025* +- ID_MODEL_FROM_DATABASE=620 Series ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Modem Controller (620 Series) + + pci:v00008086d00002486sv00001043sd00001496* +- ID_MODEL_FROM_DATABASE=PCtel HSP56 MR ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Modem Controller (PCtel HSP56 MR) + + pci:v00008086d00002486sv0000104Dsd000080E7* +- ID_MODEL_FROM_DATABASE=VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Modem Controller (VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP) + + pci:v00008086d00002486sv0000134Dsd00004C21* +- ID_MODEL_FROM_DATABASE=Dell Inspiron 2100 internal modem ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Modem Controller (Dell Inspiron 2100 internal modem) + + pci:v00008086d00002486sv0000144Dsd00002115* +- ID_MODEL_FROM_DATABASE=vpr Matrix 170B4 internal modem ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Modem Controller (vpr Matrix 170B4 internal modem) + + pci:v00008086d00002486sv000014F1sd00005421* +- ID_MODEL_FROM_DATABASE=MD56ORD V.92 MDC Modem ++ ID_MODEL_FROM_DATABASE=82801CA/CAM AC'97 Modem Controller (MD56ORD V.92 MDC Modem) + + pci:v00008086d00002487* + ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #3 + + pci:v00008086d00002487sv00000E11sd00000030* +- ID_MODEL_FROM_DATABASE=Evo N600c ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #3 (Evo N600c) + + pci:v00008086d00002487sv00001014sd00000220* +- ID_MODEL_FROM_DATABASE=ThinkPad A/T/X Series ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #3 (ThinkPad A/T/X Series) + + pci:v00008086d00002487sv0000104Dsd000080E7* +- ID_MODEL_FROM_DATABASE=VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #3 (VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP) + + pci:v00008086d00002487sv000015D9sd00003480* +- ID_MODEL_FROM_DATABASE=P4DP6 ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #3 (P4DP6) + + pci:v00008086d00002487sv00008086sd00001958* +- ID_MODEL_FROM_DATABASE=vpr Matrix 170B4 ++ ID_MODEL_FROM_DATABASE=82801CA/CAM USB Controller #3 (vpr Matrix 170B4) + + pci:v00008086d0000248A* + ID_MODEL_FROM_DATABASE=82801CAM IDE U100 Controller + + pci:v00008086d0000248Asv00000E11sd00000030* +- ID_MODEL_FROM_DATABASE=Evo N600c ++ ID_MODEL_FROM_DATABASE=82801CAM IDE U100 Controller (Evo N600c) + + pci:v00008086d0000248Asv00001014sd00000220* +- ID_MODEL_FROM_DATABASE=ThinkPad A/T/X Series ++ ID_MODEL_FROM_DATABASE=82801CAM IDE U100 Controller (ThinkPad A/T/X Series) + + pci:v00008086d0000248Asv0000104Dsd000080E7* +- ID_MODEL_FROM_DATABASE=VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ++ ID_MODEL_FROM_DATABASE=82801CAM IDE U100 Controller (VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP) + + pci:v00008086d0000248Asv00008086sd00001958* +- ID_MODEL_FROM_DATABASE=vpr Matrix 170B4 ++ ID_MODEL_FROM_DATABASE=82801CAM IDE U100 Controller (vpr Matrix 170B4) + + pci:v00008086d0000248Asv00008086sd00004541* +- ID_MODEL_FROM_DATABASE=Latitude C640 ++ ID_MODEL_FROM_DATABASE=82801CAM IDE U100 Controller (Latitude C640) + + pci:v00008086d0000248B* + ID_MODEL_FROM_DATABASE=82801CA Ultra ATA Storage Controller + + pci:v00008086d0000248Bsv000015D9sd00003480* +- ID_MODEL_FROM_DATABASE=P4DP6 ++ ID_MODEL_FROM_DATABASE=82801CA Ultra ATA Storage Controller (P4DP6) + + pci:v00008086d0000248C* + ID_MODEL_FROM_DATABASE=82801CAM ISA Bridge (LPC) +@@ -61455,10 +61455,10 @@ pci:v00008086d000024C0* + ID_MODEL_FROM_DATABASE=82801DB/DBL (ICH4/ICH4-L) LPC Interface Bridge + + pci:v00008086d000024C0sv00001014sd00000267* +- ID_MODEL_FROM_DATABASE=NetVista A30p ++ ID_MODEL_FROM_DATABASE=82801DB/DBL (ICH4/ICH4-L) LPC Interface Bridge (NetVista A30p) + + pci:v00008086d000024C0sv00001462sd00005800* +- ID_MODEL_FROM_DATABASE=845PE Max (MS-6580) ++ ID_MODEL_FROM_DATABASE=82801DB/DBL (ICH4/ICH4-L) LPC Interface Bridge (845PE Max (MS-6580)) + + pci:v00008086d000024C1* + ID_MODEL_FROM_DATABASE=82801DBL (ICH4-L) IDE Controller +@@ -61467,574 +61467,574 @@ pci:v00008086d000024C2* + ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 + + pci:v00008086d000024C2sv00001014sd00000267* +- ID_MODEL_FROM_DATABASE=NetVista A30p ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (NetVista A30p) + + pci:v00008086d000024C2sv00001014sd0000052D* +- ID_MODEL_FROM_DATABASE=ThinkPad ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (ThinkPad) + + pci:v00008086d000024C2sv00001025sd0000005A* +- ID_MODEL_FROM_DATABASE=TravelMate 290 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (TravelMate 290) + + pci:v00008086d000024C2sv00001028sd00000126* +- ID_MODEL_FROM_DATABASE=Optiplex GX260 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (Optiplex GX260) + + pci:v00008086d000024C2sv00001028sd00000163* +- ID_MODEL_FROM_DATABASE=Latitude D505 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (Latitude D505) + + pci:v00008086d000024C2sv00001028sd0000018D* +- ID_MODEL_FROM_DATABASE=Inspiron 700m/710m ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (Inspiron 700m/710m) + + pci:v00008086d000024C2sv00001028sd00000196* +- ID_MODEL_FROM_DATABASE=Inspiron 5160 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (Inspiron 5160) + + pci:v00008086d000024C2sv0000103Csd0000088C* +- ID_MODEL_FROM_DATABASE=NC8000 laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (NC8000 laptop) + + pci:v00008086d000024C2sv0000103Csd00000890* +- ID_MODEL_FROM_DATABASE=NC6000 laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (NC6000 laptop) + + pci:v00008086d000024C2sv0000103Csd000008B0* +- ID_MODEL_FROM_DATABASE=tc1100 tablet ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (tc1100 tablet) + + pci:v00008086d000024C2sv00001043sd00008089* +- ID_MODEL_FROM_DATABASE=P4B533 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (P4B533) + + pci:v00008086d000024C2sv00001071sd00008160* +- ID_MODEL_FROM_DATABASE=MIM2000 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (MIM2000) + + pci:v00008086d000024C2sv0000114Asd00000582* +- ID_MODEL_FROM_DATABASE=PC8 onboard USB 1.x ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (PC8 onboard USB 1.x) + + pci:v00008086d000024C2sv0000144Dsd0000C005* +- ID_MODEL_FROM_DATABASE=X10 Laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (X10 Laptop) + + pci:v00008086d000024C2sv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P30/P35 notebook ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (P30/P35 notebook) + + pci:v00008086d000024C2sv00001462sd00005800* +- ID_MODEL_FROM_DATABASE=845PE Max (MS-6580) ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (845PE Max (MS-6580)) + + pci:v00008086d000024C2sv00001509sd00002990* +- ID_MODEL_FROM_DATABASE=Averatec 5110H laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (Averatec 5110H laptop) + + pci:v00008086d000024C2sv00001734sd00001004* +- ID_MODEL_FROM_DATABASE=D1451 Mainboard (SCENIC N300, i845GV) ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (D1451 Mainboard (SCENIC N300, i845GV)) + + pci:v00008086d000024C2sv00001734sd00001055* +- ID_MODEL_FROM_DATABASE=Amilo M1420 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (Amilo M1420) + + pci:v00008086d000024C2sv00004C53sd00001090* +- ID_MODEL_FROM_DATABASE=Cx9 / Vx9 mainboard ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (Cx9 / Vx9 mainboard) + + pci:v00008086d000024C2sv00008086sd000024C2* +- ID_MODEL_FROM_DATABASE=Latitude X300 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (Latitude X300) + + pci:v00008086d000024C2sv00008086sd00004541* +- ID_MODEL_FROM_DATABASE=Latitude D400/D500 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (Latitude D400/D500) + + pci:v00008086d000024C2sv0000E4BFsd00000CC9* +- ID_MODEL_FROM_DATABASE=CC9-SAMBA ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (CC9-SAMBA) + + pci:v00008086d000024C2sv0000E4BFsd00000CD2* +- ID_MODEL_FROM_DATABASE=CD2-BEBOP ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (CD2-BEBOP) + + pci:v00008086d000024C3* + ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller + + pci:v00008086d000024C3sv00001014sd00000267* +- ID_MODEL_FROM_DATABASE=NetVista A30p ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (NetVista A30p) + + pci:v00008086d000024C3sv00001014sd0000052D* +- ID_MODEL_FROM_DATABASE=ThinkPad ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (ThinkPad) + + pci:v00008086d000024C3sv00001025sd0000005A* +- ID_MODEL_FROM_DATABASE=TravelMate 290 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (TravelMate 290) + + pci:v00008086d000024C3sv00001028sd00000126* +- ID_MODEL_FROM_DATABASE=Optiplex GX260 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (Optiplex GX260) + + pci:v00008086d000024C3sv00001028sd0000014F* +- ID_MODEL_FROM_DATABASE=Latitude X300 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (Latitude X300) + + pci:v00008086d000024C3sv00001028sd0000018D* +- ID_MODEL_FROM_DATABASE=Inspiron 700m/710m ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (Inspiron 700m/710m) + + pci:v00008086d000024C3sv0000103Csd0000088C* +- ID_MODEL_FROM_DATABASE=NC8000 laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (NC8000 laptop) + + pci:v00008086d000024C3sv0000103Csd00000890* +- ID_MODEL_FROM_DATABASE=NC6000 laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (NC6000 laptop) + + pci:v00008086d000024C3sv0000103Csd000008B0* +- ID_MODEL_FROM_DATABASE=tc1100 tablet ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (tc1100 tablet) + + pci:v00008086d000024C3sv00001071sd00008160* +- ID_MODEL_FROM_DATABASE=MIM2000 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (MIM2000) + + pci:v00008086d000024C3sv0000114Asd00000582* +- ID_MODEL_FROM_DATABASE=PC8 onboard SMbus ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (PC8 onboard SMbus) + + pci:v00008086d000024C3sv0000144Dsd0000C005* +- ID_MODEL_FROM_DATABASE=X10 Laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (X10 Laptop) + + pci:v00008086d000024C3sv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P30/P35 notebook ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (P30/P35 notebook) + + pci:v00008086d000024C3sv00001458sd000024C2* +- ID_MODEL_FROM_DATABASE=GA-8PE667 Ultra ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (GA-8PE667 Ultra) + + pci:v00008086d000024C3sv00001462sd00005800* +- ID_MODEL_FROM_DATABASE=845PE Max (MS-6580) ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (845PE Max (MS-6580)) + + pci:v00008086d000024C3sv00001734sd00001004* +- ID_MODEL_FROM_DATABASE=D1451 Mainboard (SCENIC N300, i845GV) ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (D1451 Mainboard (SCENIC N300, i845GV)) + + pci:v00008086d000024C3sv00001734sd00001055* +- ID_MODEL_FROM_DATABASE=Amilo M1420 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (Amilo M1420) + + pci:v00008086d000024C3sv00004C53sd00001090* +- ID_MODEL_FROM_DATABASE=Cx9 / Vx9 mainboard ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (Cx9 / Vx9 mainboard) + + pci:v00008086d000024C3sv0000E4BFsd00000CC9* +- ID_MODEL_FROM_DATABASE=CC9-SAMBA ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (CC9-SAMBA) + + pci:v00008086d000024C3sv0000E4BFsd00000CD2* +- ID_MODEL_FROM_DATABASE=CD2-BEBOP ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (CD2-BEBOP) + + pci:v00008086d000024C4* + ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 + + pci:v00008086d000024C4sv00001014sd00000267* +- ID_MODEL_FROM_DATABASE=NetVista A30p ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (NetVista A30p) + + pci:v00008086d000024C4sv00001014sd0000052D* +- ID_MODEL_FROM_DATABASE=ThinkPad ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (ThinkPad) + + pci:v00008086d000024C4sv00001025sd0000005A* +- ID_MODEL_FROM_DATABASE=TravelMate 290 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (TravelMate 290) + + pci:v00008086d000024C4sv00001028sd00000126* +- ID_MODEL_FROM_DATABASE=Optiplex GX260 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (Optiplex GX260) + + pci:v00008086d000024C4sv00001028sd00000163* +- ID_MODEL_FROM_DATABASE=Latitude D505 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (Latitude D505) + + pci:v00008086d000024C4sv00001028sd0000018D* +- ID_MODEL_FROM_DATABASE=Inspiron 700m/710m ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (Inspiron 700m/710m) + + pci:v00008086d000024C4sv00001028sd00000196* +- ID_MODEL_FROM_DATABASE=Inspiron 5160 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (Inspiron 5160) + + pci:v00008086d000024C4sv0000103Csd0000088C* +- ID_MODEL_FROM_DATABASE=NC8000 laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (NC8000 laptop) + + pci:v00008086d000024C4sv0000103Csd00000890* +- ID_MODEL_FROM_DATABASE=NC6000 laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (NC6000 laptop) + + pci:v00008086d000024C4sv0000103Csd000008B0* +- ID_MODEL_FROM_DATABASE=tc1100 tablet ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (tc1100 tablet) + + pci:v00008086d000024C4sv00001043sd00008089* +- ID_MODEL_FROM_DATABASE=P4B533 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (P4B533) + + pci:v00008086d000024C4sv00001071sd00008160* +- ID_MODEL_FROM_DATABASE=MIM2000 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (MIM2000) + + pci:v00008086d000024C4sv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P30/P35 notebook ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (P30/P35 notebook) + + pci:v00008086d000024C4sv00001462sd00005800* +- ID_MODEL_FROM_DATABASE=845PE Max (MS-6580) ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (845PE Max (MS-6580)) + + pci:v00008086d000024C4sv00001509sd00002990* +- ID_MODEL_FROM_DATABASE=Averatec 5110H ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (Averatec 5110H) + + pci:v00008086d000024C4sv00001734sd00001004* +- ID_MODEL_FROM_DATABASE=D1451 Mainboard (SCENIC N300, i845GV) ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (D1451 Mainboard (SCENIC N300, i845GV)) + + pci:v00008086d000024C4sv00004C53sd00001090* +- ID_MODEL_FROM_DATABASE=Cx9 / Vx9 mainboard ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (Cx9 / Vx9 mainboard) + + pci:v00008086d000024C4sv00008086sd000024C2* +- ID_MODEL_FROM_DATABASE=Latitude X300 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (Latitude X300) + + pci:v00008086d000024C4sv00008086sd00004541* +- ID_MODEL_FROM_DATABASE=Latitude D400/D500 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (Latitude D400/D500) + + pci:v00008086d000024C4sv0000E4BFsd00000CC9* +- ID_MODEL_FROM_DATABASE=CC9-SAMBA ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (CC9-SAMBA) + + pci:v00008086d000024C4sv0000E4BFsd00000CD2* +- ID_MODEL_FROM_DATABASE=CD2-BEBOP ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (CD2-BEBOP) + + pci:v00008086d000024C5* + ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller + + pci:v00008086d000024C5sv00000E11sd000000B8* +- ID_MODEL_FROM_DATABASE=Analog Devices Inc. codec [SoundMAX] ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (Analog Devices Inc. codec [SoundMAX]) + + pci:v00008086d000024C5sv00001014sd00000267* +- ID_MODEL_FROM_DATABASE=NetVista A30p ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (NetVista A30p) + + pci:v00008086d000024C5sv00001014sd00000537* +- ID_MODEL_FROM_DATABASE=ThinkPad T41 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (ThinkPad T41) + + pci:v00008086d000024C5sv00001014sd0000055F* +- ID_MODEL_FROM_DATABASE=Thinkpad R50e model 1634 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (Thinkpad R50e model 1634) + + pci:v00008086d000024C5sv00001025sd0000005A* +- ID_MODEL_FROM_DATABASE=TravelMate 290 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (TravelMate 290) + + pci:v00008086d000024C5sv00001028sd00000139* +- ID_MODEL_FROM_DATABASE=Latitude D400 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (Latitude D400) + + pci:v00008086d000024C5sv00001028sd0000014F* +- ID_MODEL_FROM_DATABASE=Latitude X300 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (Latitude X300) + + pci:v00008086d000024C5sv00001028sd00000152* +- ID_MODEL_FROM_DATABASE=Latitude D500 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (Latitude D500) + + pci:v00008086d000024C5sv00001028sd00000163* +- ID_MODEL_FROM_DATABASE=Latitude D505 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (Latitude D505) + + pci:v00008086d000024C5sv00001028sd0000018D* +- ID_MODEL_FROM_DATABASE=Inspiron 700m/710m [SigmaTel STAC9750,51] ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (Inspiron 700m/710m [SigmaTel STAC9750,51]) + + pci:v00008086d000024C5sv00001028sd00000196* +- ID_MODEL_FROM_DATABASE=Inspiron 5160 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (Inspiron 5160) + + pci:v00008086d000024C5sv0000103Csd0000088C* +- ID_MODEL_FROM_DATABASE=NC8000 laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (NC8000 laptop) + + pci:v00008086d000024C5sv0000103Csd00000890* +- ID_MODEL_FROM_DATABASE=NC6000 laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (NC6000 laptop) + + pci:v00008086d000024C5sv0000103Csd000008B0* +- ID_MODEL_FROM_DATABASE=tc1100 tablet ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (tc1100 tablet) + + pci:v00008086d000024C5sv00001043sd00001713* +- ID_MODEL_FROM_DATABASE=M2400N/M6800N laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (M2400N/M6800N laptop) + + pci:v00008086d000024C5sv00001043sd000080B0* +- ID_MODEL_FROM_DATABASE=P4B533 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (P4B533) + + pci:v00008086d000024C5sv00001071sd00008160* +- ID_MODEL_FROM_DATABASE=MIM2000 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (MIM2000) + + pci:v00008086d000024C5sv00001179sd00000201* +- ID_MODEL_FROM_DATABASE=Toshiba Tecra M1 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (Toshiba Tecra M1) + + pci:v00008086d000024C5sv0000144Dsd0000C005* +- ID_MODEL_FROM_DATABASE=X10 Laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (X10 Laptop) + + pci:v00008086d000024C5sv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P30/P35 notebook ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (P30/P35 notebook) + + pci:v00008086d000024C5sv00001458sd0000A002* +- ID_MODEL_FROM_DATABASE=GA-8PE667 Ultra ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (GA-8PE667 Ultra) + + pci:v00008086d000024C5sv00001462sd00005800* +- ID_MODEL_FROM_DATABASE=845PE Max (MS-6580) ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (845PE Max (MS-6580)) + + pci:v00008086d000024C5sv00001734sd00001005* +- ID_MODEL_FROM_DATABASE=D1451 (SCENIC N300, i845GV) Sigmatel STAC9750T ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (D1451 (SCENIC N300, i845GV) Sigmatel STAC9750T) + + pci:v00008086d000024C5sv00001734sd00001055* +- ID_MODEL_FROM_DATABASE=Amilo M1420 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (Amilo M1420) + + pci:v00008086d000024C5sv00008086sd000024C5* +- ID_MODEL_FROM_DATABASE=Dell Dimension 2400 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (Dell Dimension 2400) + + pci:v00008086d000024C6* + ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller + + pci:v00008086d000024C6sv00001014sd00000524* +- ID_MODEL_FROM_DATABASE=ThinkPad T41 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (ThinkPad T41) + + pci:v00008086d000024C6sv00001014sd00000525* +- ID_MODEL_FROM_DATABASE=ThinkPad ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (ThinkPad) + + pci:v00008086d000024C6sv00001014sd00000559* +- ID_MODEL_FROM_DATABASE=ThinkPad R50e ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (ThinkPad R50e) + + pci:v00008086d000024C6sv00001025sd0000003C* +- ID_MODEL_FROM_DATABASE=Aspire 2001WLCi (Compal CL50 motherboard) implementation ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (Aspire 2001WLCi (Compal CL50 motherboard) implementation) + + pci:v00008086d000024C6sv00001025sd0000005A* +- ID_MODEL_FROM_DATABASE=TravelMate 290 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (TravelMate 290) + + pci:v00008086d000024C6sv00001028sd00000196* +- ID_MODEL_FROM_DATABASE=Inspiron 5160 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (Inspiron 5160) + + pci:v00008086d000024C6sv0000103Csd0000088C* +- ID_MODEL_FROM_DATABASE=NC8000 laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (NC8000 laptop) + + pci:v00008086d000024C6sv0000103Csd00000890* +- ID_MODEL_FROM_DATABASE=NC6000 laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (NC6000 laptop) + + pci:v00008086d000024C6sv0000103Csd000008B0* +- ID_MODEL_FROM_DATABASE=tc1100 tablet ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (tc1100 tablet) + + pci:v00008086d000024C6sv00001043sd00001716* +- ID_MODEL_FROM_DATABASE=M2400N laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (M2400N laptop) + + pci:v00008086d000024C6sv00001043sd00001826* +- ID_MODEL_FROM_DATABASE=M6800N ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (M6800N) + + pci:v00008086d000024C6sv00001071sd00008160* +- ID_MODEL_FROM_DATABASE=MIM2000 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (MIM2000) + + pci:v00008086d000024C6sv0000134Dsd00004C21* +- ID_MODEL_FROM_DATABASE=Latitude D500 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (Latitude D500) + + pci:v00008086d000024C6sv0000144Dsd00002115* +- ID_MODEL_FROM_DATABASE=X10 Laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (X10 Laptop) + + pci:v00008086d000024C6sv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P30/P35 notebook ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (P30/P35 notebook) + + pci:v00008086d000024C6sv000014F1sd00005422* +- ID_MODEL_FROM_DATABASE=D480 MDC V.9x Modem ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (D480 MDC V.9x Modem) + + pci:v00008086d000024C7* + ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 + + pci:v00008086d000024C7sv00001014sd00000267* +- ID_MODEL_FROM_DATABASE=NetVista A30p ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (NetVista A30p) + + pci:v00008086d000024C7sv00001014sd0000052D* +- ID_MODEL_FROM_DATABASE=ThinkPad ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (ThinkPad) + + pci:v00008086d000024C7sv00001025sd0000005A* +- ID_MODEL_FROM_DATABASE=TravelMate 290 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (TravelMate 290) + + pci:v00008086d000024C7sv00001028sd00000126* +- ID_MODEL_FROM_DATABASE=Optiplex GX260 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (Optiplex GX260) + + pci:v00008086d000024C7sv00001028sd00000163* +- ID_MODEL_FROM_DATABASE=Latitude D505 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (Latitude D505) + + pci:v00008086d000024C7sv00001028sd0000018D* +- ID_MODEL_FROM_DATABASE=Inspiron 700m/710m ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (Inspiron 700m/710m) + + pci:v00008086d000024C7sv00001028sd00000196* +- ID_MODEL_FROM_DATABASE=Inspiron 5160 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (Inspiron 5160) + + pci:v00008086d000024C7sv0000103Csd0000088C* +- ID_MODEL_FROM_DATABASE=NC8000 laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (NC8000 laptop) + + pci:v00008086d000024C7sv0000103Csd00000890* +- ID_MODEL_FROM_DATABASE=NC6000 laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (NC6000 laptop) + + pci:v00008086d000024C7sv0000103Csd000008B0* +- ID_MODEL_FROM_DATABASE=tc1100 tablet ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (tc1100 tablet) + + pci:v00008086d000024C7sv00001043sd00008089* +- ID_MODEL_FROM_DATABASE=P4B533 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (P4B533) + + pci:v00008086d000024C7sv00001071sd00008160* +- ID_MODEL_FROM_DATABASE=MIM2000 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (MIM2000) + + pci:v00008086d000024C7sv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P30/P35 notebook ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (P30/P35 notebook) + + pci:v00008086d000024C7sv00001462sd00005800* +- ID_MODEL_FROM_DATABASE=845PE Max (MS-6580) ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (845PE Max (MS-6580)) + + pci:v00008086d000024C7sv00001509sd00002990* +- ID_MODEL_FROM_DATABASE=Averatec 5110H ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (Averatec 5110H) + + pci:v00008086d000024C7sv00001734sd00001004* +- ID_MODEL_FROM_DATABASE=D1451 Mainboard (SCENIC N300, i845GV) ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (D1451 Mainboard (SCENIC N300, i845GV)) + + pci:v00008086d000024C7sv00004C53sd00001090* +- ID_MODEL_FROM_DATABASE=Cx9 / Vx9 mainboard ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (Cx9 / Vx9 mainboard) + + pci:v00008086d000024C7sv00008086sd000024C2* +- ID_MODEL_FROM_DATABASE=Latitude X300 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (Latitude X300) + + pci:v00008086d000024C7sv00008086sd00004541* +- ID_MODEL_FROM_DATABASE=Latitude D400/D500 ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (Latitude D400/D500) + + pci:v00008086d000024C7sv0000E4BFsd00000CC9* +- ID_MODEL_FROM_DATABASE=CC9-SAMBA ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (CC9-SAMBA) + + pci:v00008086d000024C7sv0000E4BFsd00000CD2* +- ID_MODEL_FROM_DATABASE=CD2-BEBOP ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (CD2-BEBOP) + + pci:v00008086d000024CA* + ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) IDE Controller + + pci:v00008086d000024CAsv00001014sd0000052D* +- ID_MODEL_FROM_DATABASE=ThinkPad ++ ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) IDE Controller (ThinkPad) + + pci:v00008086d000024CAsv00001025sd0000005A* +- ID_MODEL_FROM_DATABASE=TravelMate 290 ++ ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) IDE Controller (TravelMate 290) + + pci:v00008086d000024CAsv00001028sd0000014F* +- ID_MODEL_FROM_DATABASE=Latitude X300 ++ ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) IDE Controller (Latitude X300) + + pci:v00008086d000024CAsv00001028sd00000163* +- ID_MODEL_FROM_DATABASE=Latitude D505 ++ ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) IDE Controller (Latitude D505) + + pci:v00008086d000024CAsv00001028sd0000018D* +- ID_MODEL_FROM_DATABASE=Inspiron 700m/710m ++ ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) IDE Controller (Inspiron 700m/710m) + + pci:v00008086d000024CAsv00001028sd00000196* +- ID_MODEL_FROM_DATABASE=Inspiron 5160 ++ ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) IDE Controller (Inspiron 5160) + + pci:v00008086d000024CAsv0000103Csd0000088C* +- ID_MODEL_FROM_DATABASE=NC8000 laptop ++ ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) IDE Controller (NC8000 laptop) + + pci:v00008086d000024CAsv0000103Csd00000890* +- ID_MODEL_FROM_DATABASE=NC6000 laptop ++ ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) IDE Controller (NC6000 laptop) + + pci:v00008086d000024CAsv0000103Csd000008B0* +- ID_MODEL_FROM_DATABASE=tc1100 tablet ++ ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) IDE Controller (tc1100 tablet) + + pci:v00008086d000024CAsv00001071sd00008160* +- ID_MODEL_FROM_DATABASE=MIM2000 ++ ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) IDE Controller (MIM2000) + + pci:v00008086d000024CAsv0000144Dsd0000C005* +- ID_MODEL_FROM_DATABASE=X10 Laptop ++ ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) IDE Controller (X10 Laptop) + + pci:v00008086d000024CAsv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P30/P35 notebook ++ ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) IDE Controller (P30/P35 notebook) + + pci:v00008086d000024CAsv00001734sd00001055* +- ID_MODEL_FROM_DATABASE=Amilo M1420 ++ ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) IDE Controller (Amilo M1420) + + pci:v00008086d000024CAsv00008086sd00004541* +- ID_MODEL_FROM_DATABASE=Latitude D400/D500 ++ ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) IDE Controller (Latitude D400/D500) + + pci:v00008086d000024CB* + ID_MODEL_FROM_DATABASE=82801DB (ICH4) IDE Controller + + pci:v00008086d000024CBsv00001014sd00000267* +- ID_MODEL_FROM_DATABASE=NetVista A30p ++ ID_MODEL_FROM_DATABASE=82801DB (ICH4) IDE Controller (NetVista A30p) + + pci:v00008086d000024CBsv00001028sd00000126* +- ID_MODEL_FROM_DATABASE=Optiplex GX260 ++ ID_MODEL_FROM_DATABASE=82801DB (ICH4) IDE Controller (Optiplex GX260) + + pci:v00008086d000024CBsv00001043sd00008089* +- ID_MODEL_FROM_DATABASE=P4B533 ++ ID_MODEL_FROM_DATABASE=82801DB (ICH4) IDE Controller (P4B533) + + pci:v00008086d000024CBsv0000114Asd00000582* +- ID_MODEL_FROM_DATABASE=PC8 onboard IDE ++ ID_MODEL_FROM_DATABASE=82801DB (ICH4) IDE Controller (PC8 onboard IDE) + + pci:v00008086d000024CBsv00001458sd000024C2* +- ID_MODEL_FROM_DATABASE=GA-8PE667 Ultra ++ ID_MODEL_FROM_DATABASE=82801DB (ICH4) IDE Controller (GA-8PE667 Ultra) + + pci:v00008086d000024CBsv00001462sd00005800* +- ID_MODEL_FROM_DATABASE=845PE Max (MS-6580) ++ ID_MODEL_FROM_DATABASE=82801DB (ICH4) IDE Controller (845PE Max (MS-6580)) + + pci:v00008086d000024CBsv00001734sd00001004* +- ID_MODEL_FROM_DATABASE=D1451 Mainboard (SCENIC N300, i845GV) ++ ID_MODEL_FROM_DATABASE=82801DB (ICH4) IDE Controller (D1451 Mainboard (SCENIC N300, i845GV)) + + pci:v00008086d000024CBsv00004C53sd00001090* +- ID_MODEL_FROM_DATABASE=Cx9 / Vx9 mainboard ++ ID_MODEL_FROM_DATABASE=82801DB (ICH4) IDE Controller (Cx9 / Vx9 mainboard) + + pci:v00008086d000024CBsv0000E4BFsd00000CC9* +- ID_MODEL_FROM_DATABASE=CC9-SAMBA ++ ID_MODEL_FROM_DATABASE=82801DB (ICH4) IDE Controller (CC9-SAMBA) + + pci:v00008086d000024CBsv0000E4BFsd00000CD2* +- ID_MODEL_FROM_DATABASE=CD2-BEBOP ++ ID_MODEL_FROM_DATABASE=82801DB (ICH4) IDE Controller (CD2-BEBOP) + + pci:v00008086d000024CC* + ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) LPC Interface Bridge + + pci:v00008086d000024CCsv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P30 notebook ++ ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) LPC Interface Bridge (P30 notebook) + + pci:v00008086d000024CCsv00001734sd00001055* +- ID_MODEL_FROM_DATABASE=Amilo M1420 ++ ID_MODEL_FROM_DATABASE=82801DBM (ICH4-M) LPC Interface Bridge (Amilo M1420) + + pci:v00008086d000024CD* + ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller + + pci:v00008086d000024CDsv00001014sd00000267* +- ID_MODEL_FROM_DATABASE=NetVista A30p ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (NetVista A30p) + + pci:v00008086d000024CDsv00001014sd0000052E* +- ID_MODEL_FROM_DATABASE=ThinkPad ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (ThinkPad) + + pci:v00008086d000024CDsv00001025sd0000005A* +- ID_MODEL_FROM_DATABASE=TravelMate 290 ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (TravelMate 290) + + pci:v00008086d000024CDsv00001028sd0000011D* +- ID_MODEL_FROM_DATABASE=Latitude D600 ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (Latitude D600) + + pci:v00008086d000024CDsv00001028sd00000126* +- ID_MODEL_FROM_DATABASE=Optiplex GX260 ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (Optiplex GX260) + + pci:v00008086d000024CDsv00001028sd00000139* +- ID_MODEL_FROM_DATABASE=Latitude D400 ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (Latitude D400) + + pci:v00008086d000024CDsv00001028sd00000152* +- ID_MODEL_FROM_DATABASE=Latitude D500 ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (Latitude D500) + + pci:v00008086d000024CDsv00001028sd00000163* +- ID_MODEL_FROM_DATABASE=Latitude D505 ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (Latitude D505) + + pci:v00008086d000024CDsv00001028sd0000018D* +- ID_MODEL_FROM_DATABASE=Inspiron 700m/710m ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (Inspiron 700m/710m) + + pci:v00008086d000024CDsv00001028sd00000196* +- ID_MODEL_FROM_DATABASE=Inspiron 5160 ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (Inspiron 5160) + + pci:v00008086d000024CDsv0000103Csd0000088C* +- ID_MODEL_FROM_DATABASE=NC8000 laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (NC8000 laptop) + + pci:v00008086d000024CDsv0000103Csd00000890* +- ID_MODEL_FROM_DATABASE=NC6000 laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (NC6000 laptop) + + pci:v00008086d000024CDsv0000103Csd000008B0* +- ID_MODEL_FROM_DATABASE=tc1100 tablet ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (tc1100 tablet) + + pci:v00008086d000024CDsv00001043sd00008089* +- ID_MODEL_FROM_DATABASE=P4B533 ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (P4B533) + + pci:v00008086d000024CDsv00001071sd00008160* +- ID_MODEL_FROM_DATABASE=MIM2000 ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (MIM2000) + + pci:v00008086d000024CDsv0000114Asd00000582* +- ID_MODEL_FROM_DATABASE=PC8 onboard USB 2.0 ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (PC8 onboard USB 2.0) + + pci:v00008086d000024CDsv00001179sd0000FF00* +- ID_MODEL_FROM_DATABASE=Satellite 2430 ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (Satellite 2430) + + pci:v00008086d000024CDsv0000144Dsd0000C005* +- ID_MODEL_FROM_DATABASE=X10 Laptop ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (X10 Laptop) + + pci:v00008086d000024CDsv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P30/P35 notebook ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (P30/P35 notebook) + + pci:v00008086d000024CDsv00001462sd00003981* +- ID_MODEL_FROM_DATABASE=845PE Max (MS-6580) ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (845PE Max (MS-6580)) + + pci:v00008086d000024CDsv00001509sd00001968* +- ID_MODEL_FROM_DATABASE=Averatec 5110H ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (Averatec 5110H) + + pci:v00008086d000024CDsv00001734sd00001004* +- ID_MODEL_FROM_DATABASE=D1451 Mainboard (SCENIC N300, i845GV) ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (D1451 Mainboard (SCENIC N300, i845GV)) + + pci:v00008086d000024CDsv00001734sd00001055* +- ID_MODEL_FROM_DATABASE=Amilo M1420 ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (Amilo M1420) + + pci:v00008086d000024CDsv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (QEMU Virtual Machine) + + pci:v00008086d000024CDsv00004C53sd00001090* +- ID_MODEL_FROM_DATABASE=Cx9 / Vx9 mainboard ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (Cx9 / Vx9 mainboard) + + pci:v00008086d000024CDsv00008086sd000024C2* +- ID_MODEL_FROM_DATABASE=Latitude X300 ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (Latitude X300) + + pci:v00008086d000024CDsv0000E4BFsd00000CC9* +- ID_MODEL_FROM_DATABASE=CC9-SAMBA ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (CC9-SAMBA) + + pci:v00008086d000024CDsv0000E4BFsd00000CD2* +- ID_MODEL_FROM_DATABASE=CD2-BEBOP ++ ID_MODEL_FROM_DATABASE=82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (CD2-BEBOP) + + pci:v00008086d000024D0* + ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) LPC Interface Bridge +@@ -62043,436 +62043,436 @@ pci:v00008086d000024D1* + ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller + + pci:v00008086d000024D1sv00001028sd00000168* +- ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller (Precision Workstation 670 Mainboard) + + pci:v00008086d000024D1sv00001028sd00000169* +- ID_MODEL_FROM_DATABASE=Precision 470 ++ ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller (Precision 470) + + pci:v00008086d000024D1sv00001028sd0000019A* +- ID_MODEL_FROM_DATABASE=PowerEdge SC1425 ++ ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller (PowerEdge SC1425) + + pci:v00008086d000024D1sv0000103Csd000012BC* +- ID_MODEL_FROM_DATABASE=d530 CMT (DG746A) ++ ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller (d530 CMT (DG746A)) + + pci:v00008086d000024D1sv0000103Csd00003208* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G2 ++ ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller (ProLiant DL140 G2) + + pci:v00008086d000024D1sv00001043sd000080A6* +- ID_MODEL_FROM_DATABASE=P4P800 series motherboard ++ ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller (P4P800 series motherboard) + + pci:v00008086d000024D1sv00001458sd000024D1* +- ID_MODEL_FROM_DATABASE=GA-8IPE1000 Pro2 motherboard (865PE) ++ ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller (GA-8IPE1000 Pro2 motherboard (865PE)) + + pci:v00008086d000024D1sv00001462sd00007280* +- ID_MODEL_FROM_DATABASE=865PE Neo2 (MS-6728) ++ ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller (865PE Neo2 (MS-6728)) + + pci:v00008086d000024D1sv00001462sd00007650* +- ID_MODEL_FROM_DATABASE=Hetis 865GV-E (MS-7065) ++ ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller (Hetis 865GV-E (MS-7065)) + + pci:v00008086d000024D1sv00001565sd00005200* +- ID_MODEL_FROM_DATABASE=P4TSV Motherboard (865G) ++ ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller (P4TSV Motherboard (865G)) + + pci:v00008086d000024D1sv000015D9sd00004580* +- ID_MODEL_FROM_DATABASE=P4SCE Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller (P4SCE Mainboard) + + pci:v00008086d000024D1sv00008086sd00003427* +- ID_MODEL_FROM_DATABASE=S875WP1-E mainboard ++ ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller (S875WP1-E mainboard) + + pci:v00008086d000024D1sv00008086sd00004246* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GBF ++ ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller (Desktop Board D865GBF) + + pci:v00008086d000024D1sv00008086sd00004C43* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GLC ++ ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller (Desktop Board D865GLC) + + pci:v00008086d000024D1sv00008086sd0000524C* +- ID_MODEL_FROM_DATABASE=D865PERL mainboard ++ ID_MODEL_FROM_DATABASE=82801EB (ICH5) SATA Controller (D865PERL mainboard) + + pci:v00008086d000024D2* + ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 + + pci:v00008086d000024D2sv00001014sd000002DD* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (eServer xSeries server mainboard) + + pci:v00008086d000024D2sv00001014sd000002ED* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (eServer xSeries server mainboard) + + pci:v00008086d000024D2sv00001028sd00000168* +- ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (Precision Workstation 670 Mainboard) + + pci:v00008086d000024D2sv00001028sd00000169* +- ID_MODEL_FROM_DATABASE=Precision 470 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (Precision 470) + + pci:v00008086d000024D2sv00001028sd0000016C* +- ID_MODEL_FROM_DATABASE=PowerEdge 1850 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (PowerEdge 1850 onboard UHCI) + + pci:v00008086d000024D2sv00001028sd0000016D* +- ID_MODEL_FROM_DATABASE=PowerEdge 2850 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (PowerEdge 2850 onboard UHCI) + + pci:v00008086d000024D2sv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge 6850 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (PowerEdge 6850 onboard UHCI) + + pci:v00008086d000024D2sv00001028sd00000183* +- ID_MODEL_FROM_DATABASE=PowerEdge 1800 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (PowerEdge 1800) + + pci:v00008086d000024D2sv00001028sd0000019A* +- ID_MODEL_FROM_DATABASE=PowerEdge SC1425 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (PowerEdge SC1425) + + pci:v00008086d000024D2sv0000103Csd0000006A* +- ID_MODEL_FROM_DATABASE=NX9500 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (NX9500) + + pci:v00008086d000024D2sv0000103Csd000012BC* +- ID_MODEL_FROM_DATABASE=d530 CMT (DG746A) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (d530 CMT (DG746A)) + + pci:v00008086d000024D2sv0000103Csd00003208* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G2 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (ProLiant DL140 G2) + + pci:v00008086d000024D2sv00001043sd000080A6* +- ID_MODEL_FROM_DATABASE=P4P800/P5P800 series motherboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (P4P800/P5P800 series motherboard) + + pci:v00008086d000024D2sv00001458sd000024D2* +- ID_MODEL_FROM_DATABASE=GA-8IPE1000/8KNXP motherboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (GA-8IPE1000/8KNXP motherboard) + + pci:v00008086d000024D2sv00001462sd00007280* +- ID_MODEL_FROM_DATABASE=865PE Neo2 (MS-6728) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (865PE Neo2 (MS-6728)) + + pci:v00008086d000024D2sv00001565sd00003101* +- ID_MODEL_FROM_DATABASE=P4TSV Motherboard (865G) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (P4TSV Motherboard (865G)) + + pci:v00008086d000024D2sv000015D9sd00004580* +- ID_MODEL_FROM_DATABASE=P4SCE Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (P4SCE Mainboard) + + pci:v00008086d000024D2sv00001734sd0000101C* +- ID_MODEL_FROM_DATABASE=PRIMERGY RX/TX series onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (PRIMERGY RX/TX series onboard UHCI) + + pci:v00008086d000024D2sv00008086sd00003427* +- ID_MODEL_FROM_DATABASE=S875WP1-E mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (S875WP1-E mainboard) + + pci:v00008086d000024D2sv00008086sd00004246* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GBF ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (Desktop Board D865GBF) + + pci:v00008086d000024D2sv00008086sd00004C43* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GLC ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (Desktop Board D865GLC) + + pci:v00008086d000024D2sv00008086sd0000524C* +- ID_MODEL_FROM_DATABASE=D865PERL mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (D865PERL mainboard) + + pci:v00008086d000024D3* + ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller + + pci:v00008086d000024D3sv00001014sd000002DD* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (eServer xSeries server mainboard) + + pci:v00008086d000024D3sv00001014sd000002ED* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (eServer xSeries server mainboard) + + pci:v00008086d000024D3sv00001028sd00000156* +- ID_MODEL_FROM_DATABASE=Precision 360 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (Precision 360) + + pci:v00008086d000024D3sv00001028sd00000168* +- ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (Precision Workstation 670 Mainboard) + + pci:v00008086d000024D3sv00001028sd00000169* +- ID_MODEL_FROM_DATABASE=Precision 470 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (Precision 470) + + pci:v00008086d000024D3sv0000103Csd000012BC* +- ID_MODEL_FROM_DATABASE=d330 uT ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (d330 uT) + + pci:v00008086d000024D3sv0000103Csd00003208* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G2 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (ProLiant DL140 G2) + + pci:v00008086d000024D3sv00001043sd000080A6* +- ID_MODEL_FROM_DATABASE=P4P800/P5P800 series motherboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (P4P800/P5P800 series motherboard) + + pci:v00008086d000024D3sv00001458sd000024D2* +- ID_MODEL_FROM_DATABASE=GA-8IPE1000 Pro2 motherboard (865PE) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (GA-8IPE1000 Pro2 motherboard (865PE)) + + pci:v00008086d000024D3sv00001462sd00007280* +- ID_MODEL_FROM_DATABASE=865PE Neo2 (MS-6728) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (865PE Neo2 (MS-6728)) + + pci:v00008086d000024D3sv00001462sd00007650* +- ID_MODEL_FROM_DATABASE=Hetis 865GV-E (MS-7065) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (Hetis 865GV-E (MS-7065)) + + pci:v00008086d000024D3sv00001565sd00003101* +- ID_MODEL_FROM_DATABASE=P4TSV Motherboard (865G) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (P4TSV Motherboard (865G)) + + pci:v00008086d000024D3sv000015D9sd00004580* +- ID_MODEL_FROM_DATABASE=P4SCE Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (P4SCE Mainboard) + + pci:v00008086d000024D3sv00001734sd0000101C* +- ID_MODEL_FROM_DATABASE=PRIMERGY RX/TX S2 series SMBus ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (PRIMERGY RX/TX S2 series SMBus) + + pci:v00008086d000024D3sv00008086sd00003427* +- ID_MODEL_FROM_DATABASE=S875WP1-E mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (S875WP1-E mainboard) + + pci:v00008086d000024D3sv00008086sd00004246* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GBF ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (Desktop Board D865GBF) + + pci:v00008086d000024D3sv00008086sd00004C43* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GLC ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (Desktop Board D865GLC) + + pci:v00008086d000024D3sv00008086sd0000524C* +- ID_MODEL_FROM_DATABASE=D865PERL mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) SMBus Controller (D865PERL mainboard) + + pci:v00008086d000024D4* + ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 + + pci:v00008086d000024D4sv00001014sd000002DD* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (eServer xSeries server mainboard) + + pci:v00008086d000024D4sv00001014sd000002ED* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (eServer xSeries server mainboard) + + pci:v00008086d000024D4sv00001028sd00000168* +- ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (Precision Workstation 670 Mainboard) + + pci:v00008086d000024D4sv00001028sd00000169* +- ID_MODEL_FROM_DATABASE=Precision 470 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (Precision 470) + + pci:v00008086d000024D4sv00001028sd0000016C* +- ID_MODEL_FROM_DATABASE=PowerEdge 1850 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (PowerEdge 1850 onboard UHCI) + + pci:v00008086d000024D4sv00001028sd0000016D* +- ID_MODEL_FROM_DATABASE=PowerEdge 2850 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (PowerEdge 2850 onboard UHCI) + + pci:v00008086d000024D4sv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge 6850 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (PowerEdge 6850 onboard UHCI) + + pci:v00008086d000024D4sv00001028sd00000183* +- ID_MODEL_FROM_DATABASE=PowerEdge 1800 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (PowerEdge 1800) + + pci:v00008086d000024D4sv00001028sd0000019A* +- ID_MODEL_FROM_DATABASE=PowerEdge SC1425 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (PowerEdge SC1425) + + pci:v00008086d000024D4sv0000103Csd0000006A* +- ID_MODEL_FROM_DATABASE=NX9500 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (NX9500) + + pci:v00008086d000024D4sv0000103Csd000012BC* +- ID_MODEL_FROM_DATABASE=d530 CMT (DG746A) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (d530 CMT (DG746A)) + + pci:v00008086d000024D4sv0000103Csd00003208* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G2 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (ProLiant DL140 G2) + + pci:v00008086d000024D4sv00001043sd000080A6* +- ID_MODEL_FROM_DATABASE=P4P800/P5P800 series motherboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (P4P800/P5P800 series motherboard) + + pci:v00008086d000024D4sv00001458sd000024D2* +- ID_MODEL_FROM_DATABASE=GA-8IPE1000 Pro2 motherboard (865PE) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (GA-8IPE1000 Pro2 motherboard (865PE)) + + pci:v00008086d000024D4sv00001462sd00007280* +- ID_MODEL_FROM_DATABASE=865PE Neo2 (MS-6728) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (865PE Neo2 (MS-6728)) + + pci:v00008086d000024D4sv00001462sd00007650* +- ID_MODEL_FROM_DATABASE=Hetis 865GV-E (MS-7065) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (Hetis 865GV-E (MS-7065)) + + pci:v00008086d000024D4sv00001565sd00003101* +- ID_MODEL_FROM_DATABASE=P4TSV Motherboard (865G) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (P4TSV Motherboard (865G)) + + pci:v00008086d000024D4sv000015D9sd00004580* +- ID_MODEL_FROM_DATABASE=P4SCE Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (P4SCE Mainboard) + + pci:v00008086d000024D4sv00001734sd0000101C* +- ID_MODEL_FROM_DATABASE=PRIMERGY RX/TX S2 series onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (PRIMERGY RX/TX S2 series onboard UHCI) + + pci:v00008086d000024D4sv00008086sd00003427* +- ID_MODEL_FROM_DATABASE=S875WP1-E mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (S875WP1-E mainboard) + + pci:v00008086d000024D4sv00008086sd00004246* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GBF ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (Desktop Board D865GBF) + + pci:v00008086d000024D4sv00008086sd00004C43* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GLC ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (Desktop Board D865GLC) + + pci:v00008086d000024D4sv00008086sd0000524C* +- ID_MODEL_FROM_DATABASE=D865PERL mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (D865PERL mainboard) + + pci:v00008086d000024D5* + ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller + + pci:v00008086d000024D5sv0000100Asd0000147B* +- ID_MODEL_FROM_DATABASE=Abit IS7-E motherboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (Abit IS7-E motherboard) + + pci:v00008086d000024D5sv00001028sd00000168* +- ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (Precision Workstation 670 Mainboard) + + pci:v00008086d000024D5sv00001028sd00000169* +- ID_MODEL_FROM_DATABASE=Precision 470 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (Precision 470) + + pci:v00008086d000024D5sv0000103Csd0000006A* +- ID_MODEL_FROM_DATABASE=NX9500 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (NX9500) + + pci:v00008086d000024D5sv0000103Csd000012BC* +- ID_MODEL_FROM_DATABASE=d330 uT ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (d330 uT) + + pci:v00008086d000024D5sv00001043sd000080F3* +- ID_MODEL_FROM_DATABASE=P4P800 series motherboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (P4P800 series motherboard) + + pci:v00008086d000024D5sv00001043sd0000810F* +- ID_MODEL_FROM_DATABASE=P5P800-MX Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (P5P800-MX Mainboard) + + pci:v00008086d000024D5sv00001458sd0000A002* +- ID_MODEL_FROM_DATABASE=GA-8IPE1000/8KNXP motherboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (GA-8IPE1000/8KNXP motherboard) + + pci:v00008086d000024D5sv00001462sd00000080* +- ID_MODEL_FROM_DATABASE=865PE Neo2-V (MS-6788) Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (865PE Neo2-V (MS-6788) Mainboard) + + pci:v00008086d000024D5sv00001462sd00007280* +- ID_MODEL_FROM_DATABASE=865PE Neo2 (MS-6728) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (865PE Neo2 (MS-6728)) + + pci:v00008086d000024D5sv00001462sd00007650* +- ID_MODEL_FROM_DATABASE=Hetis 865GV-E (MS-7065) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (Hetis 865GV-E (MS-7065)) + + pci:v00008086d000024D5sv00008086sd0000A000* +- ID_MODEL_FROM_DATABASE=D865PERL mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (D865PERL mainboard) + + pci:v00008086d000024D5sv00008086sd0000E000* +- ID_MODEL_FROM_DATABASE=D865PERL mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (D865PERL mainboard) + + pci:v00008086d000024D5sv00008086sd0000E001* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GBF ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (Desktop Board D865GBF) + + pci:v00008086d000024D5sv00008086sd0000E002* +- ID_MODEL_FROM_DATABASE=SoundMax Intergrated Digital Audio ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (SoundMax Intergrated Digital Audio) + + pci:v00008086d000024D6* + ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Modem Controller + + pci:v00008086d000024D6sv0000103Csd0000006A* +- ID_MODEL_FROM_DATABASE=NX9500 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) AC'97 Modem Controller (NX9500) + + pci:v00008086d000024D7* + ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 + + pci:v00008086d000024D7sv00001014sd000002ED* +- ID_MODEL_FROM_DATABASE=xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (xSeries server mainboard) + + pci:v00008086d000024D7sv00001028sd00000168* +- ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (Precision Workstation 670 Mainboard) + + pci:v00008086d000024D7sv00001028sd00000169* +- ID_MODEL_FROM_DATABASE=Precision 470 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (Precision 470) + + pci:v00008086d000024D7sv00001028sd0000016C* +- ID_MODEL_FROM_DATABASE=PowerEdge 1850 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (PowerEdge 1850 onboard UHCI) + + pci:v00008086d000024D7sv00001028sd0000016D* +- ID_MODEL_FROM_DATABASE=PowerEdge 2850 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (PowerEdge 2850 onboard UHCI) + + pci:v00008086d000024D7sv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge 6850 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (PowerEdge 6850 onboard UHCI) + + pci:v00008086d000024D7sv00001028sd00000183* +- ID_MODEL_FROM_DATABASE=PowerEdge 1800 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (PowerEdge 1800) + + pci:v00008086d000024D7sv0000103Csd0000006A* +- ID_MODEL_FROM_DATABASE=NX9500 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (NX9500) + + pci:v00008086d000024D7sv0000103Csd000012BC* +- ID_MODEL_FROM_DATABASE=d530 CMT (DG746A) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (d530 CMT (DG746A)) + + pci:v00008086d000024D7sv00001043sd000080A6* +- ID_MODEL_FROM_DATABASE=P4P800/P5P800 series motherboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (P4P800/P5P800 series motherboard) + + pci:v00008086d000024D7sv00001458sd000024D2* +- ID_MODEL_FROM_DATABASE=GA-8IPE1000 Pro2 motherboard (865PE) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (GA-8IPE1000 Pro2 motherboard (865PE)) + + pci:v00008086d000024D7sv00001462sd00007280* +- ID_MODEL_FROM_DATABASE=865PE Neo2 (MS-6728) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (865PE Neo2 (MS-6728)) + + pci:v00008086d000024D7sv00001462sd00007650* +- ID_MODEL_FROM_DATABASE=Hetis 865GV-E (MS-7065) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (Hetis 865GV-E (MS-7065)) + + pci:v00008086d000024D7sv00001565sd00003101* +- ID_MODEL_FROM_DATABASE=P4TSV Motherboard (865G) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (P4TSV Motherboard (865G)) + + pci:v00008086d000024D7sv000015D9sd00004580* +- ID_MODEL_FROM_DATABASE=P4SCE Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (P4SCE Mainboard) + + pci:v00008086d000024D7sv00001734sd0000101C* +- ID_MODEL_FROM_DATABASE=PRIMERGY RX/TX S2 series onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (PRIMERGY RX/TX S2 series onboard UHCI) + + pci:v00008086d000024D7sv00008086sd00003427* +- ID_MODEL_FROM_DATABASE=S875WP1-E mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (S875WP1-E mainboard) + + pci:v00008086d000024D7sv00008086sd00004246* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GBF ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (Desktop Board D865GBF) + + pci:v00008086d000024D7sv00008086sd00004C43* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GLC ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (Desktop Board D865GLC) + + pci:v00008086d000024D7sv00008086sd0000524C* +- ID_MODEL_FROM_DATABASE=D865PERL mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (D865PERL mainboard) + + pci:v00008086d000024DB* + ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller + + pci:v00008086d000024DBsv00001014sd000002DD* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (eServer xSeries server mainboard) + + pci:v00008086d000024DBsv00001014sd000002ED* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (eServer xSeries server mainboard) + + pci:v00008086d000024DBsv00001028sd00000168* +- ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (Precision Workstation 670 Mainboard) + + pci:v00008086d000024DBsv00001028sd00000169* +- ID_MODEL_FROM_DATABASE=Precision 470 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (Precision 470) + + pci:v00008086d000024DBsv00001028sd0000016C* +- ID_MODEL_FROM_DATABASE=PowerEdge 1850 IDE Controller ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (PowerEdge 1850 IDE Controller) + + pci:v00008086d000024DBsv00001028sd0000016D* +- ID_MODEL_FROM_DATABASE=PowerEdge 2850 IDE Controller ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (PowerEdge 2850 IDE Controller) + + pci:v00008086d000024DBsv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge 6850 IDE Controller ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (PowerEdge 6850 IDE Controller) + + pci:v00008086d000024DBsv00001028sd0000019A* +- ID_MODEL_FROM_DATABASE=PowerEdge SC1425 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (PowerEdge SC1425) + + pci:v00008086d000024DBsv0000103Csd0000006A* +- ID_MODEL_FROM_DATABASE=NX9500 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (NX9500) + + pci:v00008086d000024DBsv0000103Csd000012BC* +- ID_MODEL_FROM_DATABASE=d530 CMT (DG746A) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (d530 CMT (DG746A)) + + pci:v00008086d000024DBsv00001043sd000080A6* +- ID_MODEL_FROM_DATABASE=P4P800/P5P800 series motherboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (P4P800/P5P800 series motherboard) + + pci:v00008086d000024DBsv00001458sd000024D2* +- ID_MODEL_FROM_DATABASE=GA-8IPE1000 Pro2 motherboard (865PE) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (GA-8IPE1000 Pro2 motherboard (865PE)) + + pci:v00008086d000024DBsv00001462sd00007280* +- ID_MODEL_FROM_DATABASE=865PE Neo2 (MS-6728) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (865PE Neo2 (MS-6728)) + + pci:v00008086d000024DBsv00001462sd00007580* +- ID_MODEL_FROM_DATABASE=MSI 875P ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (MSI 875P) + + pci:v00008086d000024DBsv00001462sd00007650* +- ID_MODEL_FROM_DATABASE=Hetis 865GV-E (MS-7065) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (Hetis 865GV-E (MS-7065)) + + pci:v00008086d000024DBsv00001565sd00003101* +- ID_MODEL_FROM_DATABASE=P4TSV Motherboard (865G) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (P4TSV Motherboard (865G)) + + pci:v00008086d000024DBsv000015D9sd00004580* +- ID_MODEL_FROM_DATABASE=P4SCE Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (P4SCE Mainboard) + + pci:v00008086d000024DBsv00001734sd0000101C* +- ID_MODEL_FROM_DATABASE=PRIMERGY RX/TX S2 series onboard IDE ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (PRIMERGY RX/TX S2 series onboard IDE) + + pci:v00008086d000024DBsv00008086sd000024DB* +- ID_MODEL_FROM_DATABASE=P4C800 Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (P4C800 Mainboard) + + pci:v00008086d000024DBsv00008086sd00003427* +- ID_MODEL_FROM_DATABASE=S875WP1-E mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (S875WP1-E mainboard) + + pci:v00008086d000024DBsv00008086sd00004246* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GBF ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (Desktop Board D865GBF) + + pci:v00008086d000024DBsv00008086sd00004C43* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GLC ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (Desktop Board D865GLC) + + pci:v00008086d000024DBsv00008086sd0000524C* +- ID_MODEL_FROM_DATABASE=D865PERL mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) IDE Controller (D865PERL mainboard) + + pci:v00008086d000024DC* + ID_MODEL_FROM_DATABASE=82801EB (ICH5) LPC Interface Bridge +@@ -62481,142 +62481,142 @@ pci:v00008086d000024DD* + ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller + + pci:v00008086d000024DDsv00001014sd000002DD* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (eServer xSeries server mainboard) + + pci:v00008086d000024DDsv00001014sd000002ED* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (eServer xSeries server mainboard) + + pci:v00008086d000024DDsv00001028sd00000168* +- ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (Precision Workstation 670 Mainboard) + + pci:v00008086d000024DDsv00001028sd00000169* +- ID_MODEL_FROM_DATABASE=Precision 470 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (Precision 470) + + pci:v00008086d000024DDsv00001028sd0000016C* +- ID_MODEL_FROM_DATABASE=PowerEdge 1850 onboard EHCI ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (PowerEdge 1850 onboard EHCI) + + pci:v00008086d000024DDsv00001028sd0000016D* +- ID_MODEL_FROM_DATABASE=PowerEdge 2850 onboard EHCI ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (PowerEdge 2850 onboard EHCI) + + pci:v00008086d000024DDsv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge 6850 onboard EHCI ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (PowerEdge 6850 onboard EHCI) + + pci:v00008086d000024DDsv00001028sd00000183* +- ID_MODEL_FROM_DATABASE=PowerEdge 1800 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (PowerEdge 1800) + + pci:v00008086d000024DDsv00001028sd0000019A* +- ID_MODEL_FROM_DATABASE=PowerEdge SC1425 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (PowerEdge SC1425) + + pci:v00008086d000024DDsv0000103Csd0000006A* +- ID_MODEL_FROM_DATABASE=NX9500 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (NX9500) + + pci:v00008086d000024DDsv0000103Csd000012BC* +- ID_MODEL_FROM_DATABASE=d530 CMT (DG746A) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (d530 CMT (DG746A)) + + pci:v00008086d000024DDsv0000103Csd00003208* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G2 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (ProLiant DL140 G2) + + pci:v00008086d000024DDsv00001043sd000080A6* +- ID_MODEL_FROM_DATABASE=P4P800/P5P800 series motherboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (P4P800/P5P800 series motherboard) + + pci:v00008086d000024DDsv00001458sd00005006* +- ID_MODEL_FROM_DATABASE=GA-8IPE1000 Pro2 motherboard (865PE) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (GA-8IPE1000 Pro2 motherboard (865PE)) + + pci:v00008086d000024DDsv00001462sd00007280* +- ID_MODEL_FROM_DATABASE=865PE Neo2 (MS-6728) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (865PE Neo2 (MS-6728)) + + pci:v00008086d000024DDsv00001462sd00007650* +- ID_MODEL_FROM_DATABASE=Hetis 865GV-E (MS-7065) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (Hetis 865GV-E (MS-7065)) + + pci:v00008086d000024DDsv00008086sd00003427* +- ID_MODEL_FROM_DATABASE=S875WP1-E mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (S875WP1-E mainboard) + + pci:v00008086d000024DDsv00008086sd00004246* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GBF ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (Desktop Board D865GBF) + + pci:v00008086d000024DDsv00008086sd00004C43* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GLC ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (Desktop Board D865GLC) + + pci:v00008086d000024DDsv00008086sd0000524C* +- ID_MODEL_FROM_DATABASE=D865PERL mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (D865PERL mainboard) + + pci:v00008086d000024DE* + ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 + + pci:v00008086d000024DEsv00001014sd000002ED* +- ID_MODEL_FROM_DATABASE=xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 (xSeries server mainboard) + + pci:v00008086d000024DEsv00001028sd00000168* +- ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 (Precision Workstation 670 Mainboard) + + pci:v00008086d000024DEsv00001028sd00000169* +- ID_MODEL_FROM_DATABASE=Precision 470 ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 (Precision 470) + + pci:v00008086d000024DEsv00001043sd000080A6* +- ID_MODEL_FROM_DATABASE=P4P800/P5P800 series motherboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 (P4P800/P5P800 series motherboard) + + pci:v00008086d000024DEsv00001458sd000024D2* +- ID_MODEL_FROM_DATABASE=GA-8IPE1000 Pro2 motherboard (865PE) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 (GA-8IPE1000 Pro2 motherboard (865PE)) + + pci:v00008086d000024DEsv00001462sd00007280* +- ID_MODEL_FROM_DATABASE=865PE Neo2 (MS-6728) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 (865PE Neo2 (MS-6728)) + + pci:v00008086d000024DEsv00001462sd00007650* +- ID_MODEL_FROM_DATABASE=Hetis 865GV-E (MS-7065) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 (Hetis 865GV-E (MS-7065)) + + pci:v00008086d000024DEsv00001565sd00003101* +- ID_MODEL_FROM_DATABASE=P4TSV Motherboard (865G) ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 (P4TSV Motherboard (865G)) + + pci:v00008086d000024DEsv000015D9sd00004580* +- ID_MODEL_FROM_DATABASE=P4SCE Mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 (P4SCE Mainboard) + + pci:v00008086d000024DEsv00001734sd0000101C* +- ID_MODEL_FROM_DATABASE=PRIMERGY RX/TX S2 series onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 (PRIMERGY RX/TX S2 series onboard UHCI) + + pci:v00008086d000024DEsv00008086sd00003427* +- ID_MODEL_FROM_DATABASE=S875WP1-E mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 (S875WP1-E mainboard) + + pci:v00008086d000024DEsv00008086sd00004246* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GBF ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 (Desktop Board D865GBF) + + pci:v00008086d000024DEsv00008086sd00004C43* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GLC ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 (Desktop Board D865GLC) + + pci:v00008086d000024DEsv00008086sd0000524C* +- ID_MODEL_FROM_DATABASE=D865PERL mainboard ++ ID_MODEL_FROM_DATABASE=82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 (D865PERL mainboard) + + pci:v00008086d000024DF* + ID_MODEL_FROM_DATABASE=82801ER (ICH5R) SATA Controller + + pci:v00008086d000024DFsv00001028sd00000168* +- ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ ID_MODEL_FROM_DATABASE=82801ER (ICH5R) SATA Controller (Precision Workstation 670 Mainboard) + + pci:v00008086d000024F3* + ID_MODEL_FROM_DATABASE=Wireless 8260 + + pci:v00008086d000024F3sv00008086sd00000010* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 8260 ++ ID_MODEL_FROM_DATABASE=Wireless 8260 (Dual Band Wireless-AC 8260) + + pci:v00008086d000024F4* + ID_MODEL_FROM_DATABASE=Wireless 8260 + + pci:v00008086d000024F4sv00008086sd00000030* +- ID_MODEL_FROM_DATABASE=Dual Band Wireless-AC 8260 ++ ID_MODEL_FROM_DATABASE=Wireless 8260 (Dual Band Wireless-AC 8260) + + pci:v00008086d00002500* + ID_MODEL_FROM_DATABASE=82820 820 (Camino) Chipset Host Bridge (MCH) + + pci:v00008086d00002500sv00001028sd00000095* +- ID_MODEL_FROM_DATABASE=Precision Workstation 220 Chipset ++ ID_MODEL_FROM_DATABASE=82820 820 (Camino) Chipset Host Bridge (MCH) (Precision Workstation 220 Chipset) + + pci:v00008086d00002500sv00001043sd0000801C* +- ID_MODEL_FROM_DATABASE=P3C-2000 system chipset ++ ID_MODEL_FROM_DATABASE=82820 820 (Camino) Chipset Host Bridge (MCH) (P3C-2000 system chipset) + + pci:v00008086d00002501* + ID_MODEL_FROM_DATABASE=82820 820 (Camino) Chipset Host Bridge (MCH) + + pci:v00008086d00002501sv00001043sd0000801C* +- ID_MODEL_FROM_DATABASE=P3C-2000 system chipset ++ ID_MODEL_FROM_DATABASE=82820 820 (Camino) Chipset Host Bridge (MCH) (P3C-2000 system chipset) + + pci:v00008086d0000250B* + ID_MODEL_FROM_DATABASE=82820 820 (Camino) Chipset Host Bridge +@@ -62634,16 +62634,16 @@ pci:v00008086d00002530* + ID_MODEL_FROM_DATABASE=82850 850 (Tehama) Chipset Host Bridge (MCH) + + pci:v00008086d00002530sv00001028sd000000C7* +- ID_MODEL_FROM_DATABASE=Dimension 8100 ++ ID_MODEL_FROM_DATABASE=82850 850 (Tehama) Chipset Host Bridge (MCH) (Dimension 8100) + + pci:v00008086d00002530sv0000147Bsd00000507* +- ID_MODEL_FROM_DATABASE=TH7II-RAID ++ ID_MODEL_FROM_DATABASE=82850 850 (Tehama) Chipset Host Bridge (MCH) (TH7II-RAID) + + pci:v00008086d00002531* + ID_MODEL_FROM_DATABASE=82860 860 (Wombat) Chipset Host Bridge (MCH) + + pci:v00008086d00002531sv00001028sd000000D8* +- ID_MODEL_FROM_DATABASE=Precision 530 ++ ID_MODEL_FROM_DATABASE=82860 860 (Wombat) Chipset Host Bridge (MCH) (Precision 530) + + pci:v00008086d00002532* + ID_MODEL_FROM_DATABASE=82850 850 (Tehama) Chipset AGP Bridge +@@ -62658,19 +62658,19 @@ pci:v00008086d00002540* + ID_MODEL_FROM_DATABASE=E7500 Memory Controller Hub + + pci:v00008086d00002540sv000015D9sd00003480* +- ID_MODEL_FROM_DATABASE=P4DP6 ++ ID_MODEL_FROM_DATABASE=E7500 Memory Controller Hub (P4DP6) + + pci:v00008086d00002541* + ID_MODEL_FROM_DATABASE=E7500/E7501 Host RASUM Controller + + pci:v00008086d00002541sv000015D9sd00003480* +- ID_MODEL_FROM_DATABASE=P4DP6 ++ ID_MODEL_FROM_DATABASE=E7500/E7501 Host RASUM Controller (P4DP6) + + pci:v00008086d00002541sv00004C53sd00001090* +- ID_MODEL_FROM_DATABASE=Cx9 / Vx9 mainboard ++ ID_MODEL_FROM_DATABASE=E7500/E7501 Host RASUM Controller (Cx9 / Vx9 mainboard) + + pci:v00008086d00002541sv00008086sd00003424* +- ID_MODEL_FROM_DATABASE=SE7501HG2 Mainboard ++ ID_MODEL_FROM_DATABASE=E7500/E7501 Host RASUM Controller (SE7501HG2 Mainboard) + + pci:v00008086d00002543* + ID_MODEL_FROM_DATABASE=E7500/E7501 Hub Interface B PCI-to-PCI Bridge +@@ -62679,7 +62679,7 @@ pci:v00008086d00002544* + ID_MODEL_FROM_DATABASE=E7500/E7501 Hub Interface B RASUM Controller + + pci:v00008086d00002544sv00004C53sd00001090* +- ID_MODEL_FROM_DATABASE=Cx9 / Vx9 mainboard ++ ID_MODEL_FROM_DATABASE=E7500/E7501 Hub Interface B RASUM Controller (Cx9 / Vx9 mainboard) + + pci:v00008086d00002545* + ID_MODEL_FROM_DATABASE=E7500/E7501 Hub Interface C PCI-to-PCI Bridge +@@ -62697,10 +62697,10 @@ pci:v00008086d0000254C* + ID_MODEL_FROM_DATABASE=E7501 Memory Controller Hub + + pci:v00008086d0000254Csv00004C53sd00001090* +- ID_MODEL_FROM_DATABASE=Cx9 / Vx9 mainboard ++ ID_MODEL_FROM_DATABASE=E7501 Memory Controller Hub (Cx9 / Vx9 mainboard) + + pci:v00008086d0000254Csv00008086sd00003424* +- ID_MODEL_FROM_DATABASE=SE7501HG2 Mainboard ++ ID_MODEL_FROM_DATABASE=E7501 Memory Controller Hub (SE7501HG2 Mainboard) + + pci:v00008086d00002550* + ID_MODEL_FROM_DATABASE=E7505 Memory Controller Hub +@@ -62724,13 +62724,13 @@ pci:v00008086d00002560* + ID_MODEL_FROM_DATABASE=82845G/GL[Brookdale-G]/GE/PE DRAM Controller/Host-Hub Interface + + pci:v00008086d00002560sv00001028sd00000126* +- ID_MODEL_FROM_DATABASE=Optiplex GX260 ++ ID_MODEL_FROM_DATABASE=82845G/GL[Brookdale-G]/GE/PE DRAM Controller/Host-Hub Interface (Optiplex GX260) + + pci:v00008086d00002560sv00001458sd00002560* +- ID_MODEL_FROM_DATABASE=GA-8PE667 Ultra ++ ID_MODEL_FROM_DATABASE=82845G/GL[Brookdale-G]/GE/PE DRAM Controller/Host-Hub Interface (GA-8PE667 Ultra) + + pci:v00008086d00002560sv00001462sd00005800* +- ID_MODEL_FROM_DATABASE=845PE Max (MS-6580) ++ ID_MODEL_FROM_DATABASE=82845G/GL[Brookdale-G]/GE/PE DRAM Controller/Host-Hub Interface (845PE Max (MS-6580)) + + pci:v00008086d00002561* + ID_MODEL_FROM_DATABASE=82845G/GL[Brookdale-G]/GE/PE Host-to-AGP Bridge +@@ -62739,31 +62739,31 @@ pci:v00008086d00002562* + ID_MODEL_FROM_DATABASE=82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device + + pci:v00008086d00002562sv00000E11sd000000B9* +- ID_MODEL_FROM_DATABASE=Evo D510 SFF ++ ID_MODEL_FROM_DATABASE=82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device (Evo D510 SFF) + + pci:v00008086d00002562sv00001014sd00000267* +- ID_MODEL_FROM_DATABASE=NetVista A30p ++ ID_MODEL_FROM_DATABASE=82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device (NetVista A30p) + + pci:v00008086d00002562sv00001734sd00001003* +- ID_MODEL_FROM_DATABASE=D1521 Mainboard (Fujitsu-Siemens) ++ ID_MODEL_FROM_DATABASE=82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device (D1521 Mainboard (Fujitsu-Siemens)) + + pci:v00008086d00002562sv00001734sd00001004* +- ID_MODEL_FROM_DATABASE=D1451 Mainboard (SCENIC N300, i845GV) ++ ID_MODEL_FROM_DATABASE=82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device (D1451 Mainboard (SCENIC N300, i845GV)) + + pci:v00008086d00002570* + ID_MODEL_FROM_DATABASE=82865G/PE/P DRAM Controller/Host-Hub Interface + + pci:v00008086d00002570sv0000103Csd0000006A* +- ID_MODEL_FROM_DATABASE=NX9500 ++ ID_MODEL_FROM_DATABASE=82865G/PE/P DRAM Controller/Host-Hub Interface (NX9500) + + pci:v00008086d00002570sv0000103Csd000012BC* +- ID_MODEL_FROM_DATABASE=d330 uT ++ ID_MODEL_FROM_DATABASE=82865G/PE/P DRAM Controller/Host-Hub Interface (d330 uT) + + pci:v00008086d00002570sv00001043sd000080F2* +- ID_MODEL_FROM_DATABASE=P4P800/P5P800 series motherboard ++ ID_MODEL_FROM_DATABASE=82865G/PE/P DRAM Controller/Host-Hub Interface (P4P800/P5P800 series motherboard) + + pci:v00008086d00002570sv00001458sd00002570* +- ID_MODEL_FROM_DATABASE=GA-8IPE1000 Pro2 motherboard (865PE) ++ ID_MODEL_FROM_DATABASE=82865G/PE/P DRAM Controller/Host-Hub Interface (GA-8IPE1000 Pro2 motherboard (865PE)) + + pci:v00008086d00002571* + ID_MODEL_FROM_DATABASE=82865G/PE/P AGP Bridge +@@ -62772,25 +62772,25 @@ pci:v00008086d00002572* + ID_MODEL_FROM_DATABASE=82865G Integrated Graphics Controller + + pci:v00008086d00002572sv00001028sd0000019D* +- ID_MODEL_FROM_DATABASE=Dimension 3000 ++ ID_MODEL_FROM_DATABASE=82865G Integrated Graphics Controller (Dimension 3000) + + pci:v00008086d00002572sv0000103Csd000012BC* +- ID_MODEL_FROM_DATABASE=D530 sff(dc578av) ++ ID_MODEL_FROM_DATABASE=82865G Integrated Graphics Controller (D530 sff(dc578av)) + + pci:v00008086d00002572sv00001043sd000080A5* +- ID_MODEL_FROM_DATABASE=P5P800-MX Mainboard ++ ID_MODEL_FROM_DATABASE=82865G Integrated Graphics Controller (P5P800-MX Mainboard) + + pci:v00008086d00002572sv00001462sd00007650* +- ID_MODEL_FROM_DATABASE=Hetis 865GV-E (MS-7065) ++ ID_MODEL_FROM_DATABASE=82865G Integrated Graphics Controller (Hetis 865GV-E (MS-7065)) + + pci:v00008086d00002572sv00001734sd0000101B* +- ID_MODEL_FROM_DATABASE=Fujitsu-Siemens Scenic E300 i865GV ++ ID_MODEL_FROM_DATABASE=82865G Integrated Graphics Controller (Fujitsu-Siemens Scenic E300 i865GV) + + pci:v00008086d00002572sv00008086sd00004246* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GBF ++ ID_MODEL_FROM_DATABASE=82865G Integrated Graphics Controller (Desktop Board D865GBF) + + pci:v00008086d00002572sv00008086sd00004C43* +- ID_MODEL_FROM_DATABASE=Desktop Board D865GLC ++ ID_MODEL_FROM_DATABASE=82865G Integrated Graphics Controller (Desktop Board D865GLC) + + pci:v00008086d00002573* + ID_MODEL_FROM_DATABASE=82865G/PE/P PCI to CSA Bridge +@@ -62802,13 +62802,13 @@ pci:v00008086d00002578* + ID_MODEL_FROM_DATABASE=82875P/E7210 Memory Controller Hub + + pci:v00008086d00002578sv00001458sd00002578* +- ID_MODEL_FROM_DATABASE=GA-8KNXP motherboard (875P) ++ ID_MODEL_FROM_DATABASE=82875P/E7210 Memory Controller Hub (GA-8KNXP motherboard (875P)) + + pci:v00008086d00002578sv00001462sd00007580* +- ID_MODEL_FROM_DATABASE=MS-6758 (875P Neo) ++ ID_MODEL_FROM_DATABASE=82875P/E7210 Memory Controller Hub (MS-6758 (875P Neo)) + + pci:v00008086d00002578sv000015D9sd00004580* +- ID_MODEL_FROM_DATABASE=P4SCE Motherboard ++ ID_MODEL_FROM_DATABASE=82875P/E7210 Memory Controller Hub (P4SCE Motherboard) + + pci:v00008086d00002579* + ID_MODEL_FROM_DATABASE=82875P Processor to AGP Controller +@@ -62823,13 +62823,13 @@ pci:v00008086d00002580* + ID_MODEL_FROM_DATABASE=82915G/P/GV/GL/PL/910GL Memory Controller Hub + + pci:v00008086d00002580sv00001458sd00002580* +- ID_MODEL_FROM_DATABASE=GA-8I915ME-G Mainboard ++ ID_MODEL_FROM_DATABASE=82915G/P/GV/GL/PL/910GL Memory Controller Hub (GA-8I915ME-G Mainboard) + + pci:v00008086d00002580sv00001462sd00007028* +- ID_MODEL_FROM_DATABASE=915P/G Neo2 ++ ID_MODEL_FROM_DATABASE=82915G/P/GV/GL/PL/910GL Memory Controller Hub (915P/G Neo2) + + pci:v00008086d00002580sv00001734sd0000105B* +- ID_MODEL_FROM_DATABASE=Scenic W620 ++ ID_MODEL_FROM_DATABASE=82915G/P/GV/GL/PL/910GL Memory Controller Hub (Scenic W620) + + pci:v00008086d00002581* + ID_MODEL_FROM_DATABASE=82915G/P/GV/GL/PL/910GL PCI Express Root Port +@@ -62838,28 +62838,28 @@ pci:v00008086d00002582* + ID_MODEL_FROM_DATABASE=82915G/GV/910GL Integrated Graphics Controller + + pci:v00008086d00002582sv00001028sd00001079* +- ID_MODEL_FROM_DATABASE=Optiplex GX280 ++ ID_MODEL_FROM_DATABASE=82915G/GV/910GL Integrated Graphics Controller (Optiplex GX280) + + pci:v00008086d00002582sv0000103Csd00003006* +- ID_MODEL_FROM_DATABASE=DC7100 SFF(DX878AV) ++ ID_MODEL_FROM_DATABASE=82915G/GV/910GL Integrated Graphics Controller (DC7100 SFF(DX878AV)) + + pci:v00008086d00002582sv00001043sd00002582* +- ID_MODEL_FROM_DATABASE=P5GD1-VW Mainboard ++ ID_MODEL_FROM_DATABASE=82915G/GV/910GL Integrated Graphics Controller (P5GD1-VW Mainboard) + + pci:v00008086d00002582sv00001458sd00002582* +- ID_MODEL_FROM_DATABASE=GA-8I915ME-G Mainboard ++ ID_MODEL_FROM_DATABASE=82915G/GV/910GL Integrated Graphics Controller (GA-8I915ME-G Mainboard) + + pci:v00008086d00002582sv00001734sd0000105B* +- ID_MODEL_FROM_DATABASE=Scenic W620 ++ ID_MODEL_FROM_DATABASE=82915G/GV/910GL Integrated Graphics Controller (Scenic W620) + + pci:v00008086d00002582sv00001849sd00002582* +- ID_MODEL_FROM_DATABASE=ASRock P4Dual-915GL ++ ID_MODEL_FROM_DATABASE=82915G/GV/910GL Integrated Graphics Controller (ASRock P4Dual-915GL) + + pci:v00008086d00002584* + ID_MODEL_FROM_DATABASE=82925X/XE Memory Controller Hub + + pci:v00008086d00002584sv00001028sd00000177* +- ID_MODEL_FROM_DATABASE=Dimension 8400 ++ ID_MODEL_FROM_DATABASE=82925X/XE Memory Controller Hub (Dimension 8400) + + pci:v00008086d00002585* + ID_MODEL_FROM_DATABASE=82925X/XE PCI Express Root Port +@@ -62877,58 +62877,58 @@ pci:v00008086d00002590* + ID_MODEL_FROM_DATABASE=Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller + + pci:v00008086d00002590sv00001014sd00000575* +- ID_MODEL_FROM_DATABASE=ThinkPad Z60t ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (ThinkPad Z60t) + + pci:v00008086d00002590sv00001028sd00000182* +- ID_MODEL_FROM_DATABASE=Dell Latitude C610 ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (Dell Latitude C610) + + pci:v00008086d00002590sv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=Compaq nw8240/nx8220 ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (Compaq nw8240/nx8220) + + pci:v00008086d00002590sv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (NX6110/NC6120) + + pci:v00008086d00002590sv0000104Dsd000081B7* +- ID_MODEL_FROM_DATABASE=Vaio VGN-S3XP ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (Vaio VGN-S3XP) + + pci:v00008086d00002590sv0000A304sd000081B7* +- ID_MODEL_FROM_DATABASE=Vaio VGN-S3XP ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (Vaio VGN-S3XP) + + pci:v00008086d00002590sv0000E4BFsd00000CCD* +- ID_MODEL_FROM_DATABASE=CCD-CALYPSO ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (CCD-CALYPSO) + + pci:v00008086d00002590sv0000E4BFsd00000CD3* +- ID_MODEL_FROM_DATABASE=CD3-JIVE ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (CD3-JIVE) + + pci:v00008086d00002590sv0000E4BFsd000058B1* +- ID_MODEL_FROM_DATABASE=XB1 ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (XB1) + + pci:v00008086d00002591* + ID_MODEL_FROM_DATABASE=Mobile 915GM/PM Express PCI Express Root Port + + pci:v00008086d00002591sv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=HP Compaq nw8240 Mobile Workstation ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/PM Express PCI Express Root Port (HP Compaq nw8240 Mobile Workstation) + + pci:v00008086d00002592* + ID_MODEL_FROM_DATABASE=Mobile 915GM/GMS/910GML Express Graphics Controller + + pci:v00008086d00002592sv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/GMS/910GML Express Graphics Controller (NX6110/NC6120) + + pci:v00008086d00002592sv0000103Csd0000308A* +- ID_MODEL_FROM_DATABASE=NC6220 ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/GMS/910GML Express Graphics Controller (NC6220) + + pci:v00008086d00002592sv00001043sd00001881* +- ID_MODEL_FROM_DATABASE=GMA 900 915GM Integrated Graphics ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/GMS/910GML Express Graphics Controller (GMA 900 915GM Integrated Graphics) + + pci:v00008086d00002592sv0000E4BFsd00000CCD* +- ID_MODEL_FROM_DATABASE=CCD-CALYPSO ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/GMS/910GML Express Graphics Controller (CCD-CALYPSO) + + pci:v00008086d00002592sv0000E4BFsd00000CD3* +- ID_MODEL_FROM_DATABASE=CD3-JIVE ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/GMS/910GML Express Graphics Controller (CD3-JIVE) + + pci:v00008086d00002592sv0000E4BFsd000058B1* +- ID_MODEL_FROM_DATABASE=XB1 ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/GMS/910GML Express Graphics Controller (XB1) + + pci:v00008086d000025A1* + ID_MODEL_FROM_DATABASE=6300ESB LPC Interface Controller +@@ -62937,79 +62937,79 @@ pci:v00008086d000025A2* + ID_MODEL_FROM_DATABASE=6300ESB PATA Storage Controller + + pci:v00008086d000025A2sv00001734sd00001073* +- ID_MODEL_FROM_DATABASE=Primergy Econel 200 D2020 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB PATA Storage Controller (Primergy Econel 200 D2020 mainboard) + + pci:v00008086d000025A2sv00001775sd000010D0* +- ID_MODEL_FROM_DATABASE=V5D Single Board Computer IDE ++ ID_MODEL_FROM_DATABASE=6300ESB PATA Storage Controller (V5D Single Board Computer IDE) + + pci:v00008086d000025A2sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=6300ESB PATA Storage Controller (CR11/VR11 Single Board Computer) + + pci:v00008086d000025A2sv00001775sd0000CE90* +- ID_MODEL_FROM_DATABASE=CE9 ++ ID_MODEL_FROM_DATABASE=6300ESB PATA Storage Controller (CE9) + + pci:v00008086d000025A2sv00004C53sd000010B0* +- ID_MODEL_FROM_DATABASE=CL9 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB PATA Storage Controller (CL9 mainboard) + + pci:v00008086d000025A2sv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=6300ESB PATA Storage Controller (PSL09 PrPMC) + + pci:v00008086d000025A3* + ID_MODEL_FROM_DATABASE=6300ESB SATA Storage Controller + + pci:v00008086d000025A3sv00001734sd00001073* +- ID_MODEL_FROM_DATABASE=Primergy Econel 200 D2020 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB SATA Storage Controller (Primergy Econel 200 D2020 mainboard) + + pci:v00008086d000025A3sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=6300ESB SATA Storage Controller (CR11/VR11 Single Board Computer) + + pci:v00008086d000025A3sv00001775sd0000CE90* +- ID_MODEL_FROM_DATABASE=CE9 ++ ID_MODEL_FROM_DATABASE=6300ESB SATA Storage Controller (CE9) + + pci:v00008086d000025A3sv00004C53sd000010B0* +- ID_MODEL_FROM_DATABASE=CL9 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB SATA Storage Controller (CL9 mainboard) + + pci:v00008086d000025A3sv00004C53sd000010D0* +- ID_MODEL_FROM_DATABASE=Telum ASLP10 Processor AMC ++ ID_MODEL_FROM_DATABASE=6300ESB SATA Storage Controller (Telum ASLP10 Processor AMC) + + pci:v00008086d000025A3sv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=6300ESB SATA Storage Controller (PSL09 PrPMC) + + pci:v00008086d000025A4* + ID_MODEL_FROM_DATABASE=6300ESB SMBus Controller + + pci:v00008086d000025A4sv00001734sd00001073* +- ID_MODEL_FROM_DATABASE=Primergy Econel 200 D2020 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB SMBus Controller (Primergy Econel 200 D2020 mainboard) + + pci:v00008086d000025A4sv00001775sd000010D0* +- ID_MODEL_FROM_DATABASE=V5D Single Board Computer ++ ID_MODEL_FROM_DATABASE=6300ESB SMBus Controller (V5D Single Board Computer) + + pci:v00008086d000025A4sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=6300ESB SMBus Controller (CR11/VR11 Single Board Computer) + + pci:v00008086d000025A4sv00001775sd0000CE90* +- ID_MODEL_FROM_DATABASE=CE9 ++ ID_MODEL_FROM_DATABASE=6300ESB SMBus Controller (CE9) + + pci:v00008086d000025A4sv00004C53sd000010B0* +- ID_MODEL_FROM_DATABASE=CL9 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB SMBus Controller (CL9 mainboard) + + pci:v00008086d000025A4sv00004C53sd000010D0* +- ID_MODEL_FROM_DATABASE=Telum ASLP10 Processor AMC ++ ID_MODEL_FROM_DATABASE=6300ESB SMBus Controller (Telum ASLP10 Processor AMC) + + pci:v00008086d000025A4sv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=6300ESB SMBus Controller (PSL09 PrPMC) + + pci:v00008086d000025A6* + ID_MODEL_FROM_DATABASE=6300ESB AC'97 Audio Controller + + pci:v00008086d000025A6sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=6300ESB AC'97 Audio Controller (CR11/VR11 Single Board Computer) + + pci:v00008086d000025A6sv00001775sd0000CE90* +- ID_MODEL_FROM_DATABASE=CE9 ++ ID_MODEL_FROM_DATABASE=6300ESB AC'97 Audio Controller (CE9) + + pci:v00008086d000025A6sv00004C53sd000010B0* +- ID_MODEL_FROM_DATABASE=CL9 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB AC'97 Audio Controller (CL9 mainboard) + + pci:v00008086d000025A7* + ID_MODEL_FROM_DATABASE=6300ESB AC'97 Modem Controller +@@ -63018,121 +63018,121 @@ pci:v00008086d000025A9* + ID_MODEL_FROM_DATABASE=6300ESB USB Universal Host Controller + + pci:v00008086d000025A9sv00001734sd00001073* +- ID_MODEL_FROM_DATABASE=Primergy Econel 200 D2020 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB USB Universal Host Controller (Primergy Econel 200 D2020 mainboard) + + pci:v00008086d000025A9sv00001775sd000010D0* +- ID_MODEL_FROM_DATABASE=V5D Single Board Computer USB ++ ID_MODEL_FROM_DATABASE=6300ESB USB Universal Host Controller (V5D Single Board Computer USB) + + pci:v00008086d000025A9sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=6300ESB USB Universal Host Controller (CR11/VR11 Single Board Computer) + + pci:v00008086d000025A9sv00001775sd0000CE90* +- ID_MODEL_FROM_DATABASE=CE9 ++ ID_MODEL_FROM_DATABASE=6300ESB USB Universal Host Controller (CE9) + + pci:v00008086d000025A9sv00004C53sd000010B0* +- ID_MODEL_FROM_DATABASE=CL9 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB USB Universal Host Controller (CL9 mainboard) + + pci:v00008086d000025A9sv00004C53sd000010D0* +- ID_MODEL_FROM_DATABASE=Telum ASLP10 Processor AMC ++ ID_MODEL_FROM_DATABASE=6300ESB USB Universal Host Controller (Telum ASLP10 Processor AMC) + + pci:v00008086d000025A9sv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=6300ESB USB Universal Host Controller (PSL09 PrPMC) + + pci:v00008086d000025AA* + ID_MODEL_FROM_DATABASE=6300ESB USB Universal Host Controller + + pci:v00008086d000025AAsv00001734sd00001073* +- ID_MODEL_FROM_DATABASE=Primergy Econel 200 D2020 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB USB Universal Host Controller (Primergy Econel 200 D2020 mainboard) + + pci:v00008086d000025AAsv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=6300ESB USB Universal Host Controller (CR11/VR11 Single Board Computer) + + pci:v00008086d000025AAsv00001775sd0000CE90* +- ID_MODEL_FROM_DATABASE=CE9 ++ ID_MODEL_FROM_DATABASE=6300ESB USB Universal Host Controller (CE9) + + pci:v00008086d000025AAsv00004C53sd000010B0* +- ID_MODEL_FROM_DATABASE=CL9 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB USB Universal Host Controller (CL9 mainboard) + + pci:v00008086d000025AAsv00004C53sd000010D0* +- ID_MODEL_FROM_DATABASE=Telum ASLP10 Processor AMC ++ ID_MODEL_FROM_DATABASE=6300ESB USB Universal Host Controller (Telum ASLP10 Processor AMC) + + pci:v00008086d000025AAsv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=6300ESB USB Universal Host Controller (PSL09 PrPMC) + + pci:v00008086d000025AB* + ID_MODEL_FROM_DATABASE=6300ESB Watchdog Timer + + pci:v00008086d000025ABsv00001734sd00001073* +- ID_MODEL_FROM_DATABASE=Primergy Econel 200 D2020 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB Watchdog Timer (Primergy Econel 200 D2020 mainboard) + + pci:v00008086d000025ABsv00001775sd000010D0* +- ID_MODEL_FROM_DATABASE=V5D Single Board Computer ++ ID_MODEL_FROM_DATABASE=6300ESB Watchdog Timer (V5D Single Board Computer) + + pci:v00008086d000025ABsv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=6300ESB Watchdog Timer (CR11/VR11 Single Board Computer) + + pci:v00008086d000025ABsv00001775sd0000CE90* +- ID_MODEL_FROM_DATABASE=CE9 ++ ID_MODEL_FROM_DATABASE=6300ESB Watchdog Timer (CE9) + + pci:v00008086d000025ABsv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=6300ESB Watchdog Timer (QEMU Virtual Machine) + + pci:v00008086d000025ABsv00004C53sd000010B0* +- ID_MODEL_FROM_DATABASE=CL9 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB Watchdog Timer (CL9 mainboard) + + pci:v00008086d000025ABsv00004C53sd000010D0* +- ID_MODEL_FROM_DATABASE=Telum ASLP10 Processor AMC ++ ID_MODEL_FROM_DATABASE=6300ESB Watchdog Timer (Telum ASLP10 Processor AMC) + + pci:v00008086d000025ABsv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=6300ESB Watchdog Timer (PSL09 PrPMC) + + pci:v00008086d000025AC* + ID_MODEL_FROM_DATABASE=6300ESB I/O Advanced Programmable Interrupt Controller + + pci:v00008086d000025ACsv00001734sd00001073* +- ID_MODEL_FROM_DATABASE=Primergy Econel 200 D2020 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB I/O Advanced Programmable Interrupt Controller (Primergy Econel 200 D2020 mainboard) + + pci:v00008086d000025ACsv00001775sd000010D0* +- ID_MODEL_FROM_DATABASE=V5D Single Board Computer ++ ID_MODEL_FROM_DATABASE=6300ESB I/O Advanced Programmable Interrupt Controller (V5D Single Board Computer) + + pci:v00008086d000025ACsv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=6300ESB I/O Advanced Programmable Interrupt Controller (CR11/VR11 Single Board Computer) + + pci:v00008086d000025ACsv00001775sd0000CE90* +- ID_MODEL_FROM_DATABASE=CE9 ++ ID_MODEL_FROM_DATABASE=6300ESB I/O Advanced Programmable Interrupt Controller (CE9) + + pci:v00008086d000025ACsv00004C53sd000010B0* +- ID_MODEL_FROM_DATABASE=CL9 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB I/O Advanced Programmable Interrupt Controller (CL9 mainboard) + + pci:v00008086d000025ACsv00004C53sd000010D0* +- ID_MODEL_FROM_DATABASE=Telum ASLP10 Processor AMC ++ ID_MODEL_FROM_DATABASE=6300ESB I/O Advanced Programmable Interrupt Controller (Telum ASLP10 Processor AMC) + + pci:v00008086d000025ACsv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=6300ESB I/O Advanced Programmable Interrupt Controller (PSL09 PrPMC) + + pci:v00008086d000025AD* + ID_MODEL_FROM_DATABASE=6300ESB USB2 Enhanced Host Controller + + pci:v00008086d000025ADsv00001734sd00001073* +- ID_MODEL_FROM_DATABASE=Primergy Econel 200 D2020 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB USB2 Enhanced Host Controller (Primergy Econel 200 D2020 mainboard) + + pci:v00008086d000025ADsv00001775sd000010D0* +- ID_MODEL_FROM_DATABASE=V5D Single Board Computer USB 2.0 ++ ID_MODEL_FROM_DATABASE=6300ESB USB2 Enhanced Host Controller (V5D Single Board Computer USB 2.0) + + pci:v00008086d000025ADsv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=6300ESB USB2 Enhanced Host Controller (CR11/VR11 Single Board Computer) + + pci:v00008086d000025ADsv00001775sd0000CE90* +- ID_MODEL_FROM_DATABASE=CE9 ++ ID_MODEL_FROM_DATABASE=6300ESB USB2 Enhanced Host Controller (CE9) + + pci:v00008086d000025ADsv00004C53sd000010B0* +- ID_MODEL_FROM_DATABASE=CL9 mainboard ++ ID_MODEL_FROM_DATABASE=6300ESB USB2 Enhanced Host Controller (CL9 mainboard) + + pci:v00008086d000025ADsv00004C53sd000010D0* +- ID_MODEL_FROM_DATABASE=Telum ASLP10 Processor AMC ++ ID_MODEL_FROM_DATABASE=6300ESB USB2 Enhanced Host Controller (Telum ASLP10 Processor AMC) + + pci:v00008086d000025ADsv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=6300ESB USB2 Enhanced Host Controller (PSL09 PrPMC) + + pci:v00008086d000025AE* + ID_MODEL_FROM_DATABASE=6300ESB 64-bit PCI-X Bridge +@@ -63141,13 +63141,13 @@ pci:v00008086d000025B0* + ID_MODEL_FROM_DATABASE=6300ESB SATA RAID Controller + + pci:v00008086d000025B0sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=6300ESB SATA RAID Controller (CR11/VR11 Single Board Computer) + + pci:v00008086d000025B0sv00004C53sd000010D0* +- ID_MODEL_FROM_DATABASE=Telum ASLP10 Processor AMC ++ ID_MODEL_FROM_DATABASE=6300ESB SATA RAID Controller (Telum ASLP10 Processor AMC) + + pci:v00008086d000025B0sv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=6300ESB SATA RAID Controller (PSL09 PrPMC) + + pci:v00008086d000025C0* + ID_MODEL_FROM_DATABASE=5000X Chipset Memory Controller Hub +@@ -63159,16 +63159,16 @@ pci:v00008086d000025D4* + ID_MODEL_FROM_DATABASE=5000V Chipset Memory Controller Hub + + pci:v00008086d000025D4sv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=5000V Chipset Memory Controller Hub (X7DVL-E-O motherboard) + + pci:v00008086d000025D8* + ID_MODEL_FROM_DATABASE=5000P Chipset Memory Controller Hub + + pci:v00008086d000025D8sv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=5000P Chipset Memory Controller Hub (X7DBN Motherboard) + + pci:v00008086d000025D8sv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=5000P Chipset Memory Controller Hub (S5000PSLSATA Server Board) + + pci:v00008086d000025E2* + ID_MODEL_FROM_DATABASE=5000 Series Chipset PCI Express x4 Port 2 +@@ -63192,79 +63192,79 @@ pci:v00008086d000025F0* + ID_MODEL_FROM_DATABASE=5000 Series Chipset FSB Registers + + pci:v00008086d000025F0sv00001028sd000001BB* +- ID_MODEL_FROM_DATABASE=PowerEdge 1955 FSB Registers ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset FSB Registers (PowerEdge 1955 FSB Registers) + + pci:v00008086d000025F0sv0000103Csd000031FD* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset FSB Registers (ProLiant DL140 G3) + + pci:v00008086d000025F0sv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset FSB Registers (X7DVL-E-O motherboard) + + pci:v00008086d000025F0sv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset FSB Registers (X7DBN Motherboard) + + pci:v00008086d000025F0sv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset FSB Registers (S5000PSLSATA Server Board) + + pci:v00008086d000025F1* + ID_MODEL_FROM_DATABASE=5000 Series Chipset Reserved Registers + + pci:v00008086d000025F1sv0000103Csd000031FD* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset Reserved Registers (ProLiant DL140 G3) + + pci:v00008086d000025F1sv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset Reserved Registers (X7DVL-E-O motherboard) + + pci:v00008086d000025F1sv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset Reserved Registers (X7DBN Motherboard) + + pci:v00008086d000025F1sv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset Reserved Registers (S5000PSLSATA Server Board) + + pci:v00008086d000025F3* + ID_MODEL_FROM_DATABASE=5000 Series Chipset Reserved Registers + + pci:v00008086d000025F3sv0000103Csd000031FD* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset Reserved Registers (ProLiant DL140 G3) + + pci:v00008086d000025F3sv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset Reserved Registers (X7DVL-E-O motherboard) + + pci:v00008086d000025F3sv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset Reserved Registers (X7DBN Motherboard) + + pci:v00008086d000025F3sv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset Reserved Registers (S5000PSLSATA Server Board) + + pci:v00008086d000025F5* + ID_MODEL_FROM_DATABASE=5000 Series Chipset FBD Registers + + pci:v00008086d000025F5sv0000103Csd000031FD* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset FBD Registers (ProLiant DL140 G3) + + pci:v00008086d000025F5sv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset FBD Registers (X7DVL-E-O motherboard) + + pci:v00008086d000025F5sv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset FBD Registers (X7DBN Motherboard) + + pci:v00008086d000025F5sv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset FBD Registers (S5000PSLSATA Server Board) + + pci:v00008086d000025F6* + ID_MODEL_FROM_DATABASE=5000 Series Chipset FBD Registers + + pci:v00008086d000025F6sv0000103Csd000031FD* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset FBD Registers (ProLiant DL140 G3) + + pci:v00008086d000025F6sv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset FBD Registers (X7DVL-E-O motherboard) + + pci:v00008086d000025F6sv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset FBD Registers (X7DBN Motherboard) + + pci:v00008086d000025F6sv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=5000 Series Chipset FBD Registers (S5000PSLSATA Server Board) + + pci:v00008086d000025F7* + ID_MODEL_FROM_DATABASE=5000 Series Chipset PCI Express x8 Port 2-3 +@@ -63282,7 +63282,7 @@ pci:v00008086d00002600* + ID_MODEL_FROM_DATABASE=E8500/E8501 Hub Interface 1.5 + + pci:v00008086d00002600sv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge 6850 Hub Interface ++ ID_MODEL_FROM_DATABASE=E8500/E8501 Hub Interface 1.5 (PowerEdge 6850 Hub Interface) + + pci:v00008086d00002601* + ID_MODEL_FROM_DATABASE=E8500/E8501 PCI Express x4 Port D +@@ -63363,76 +63363,76 @@ pci:v00008086d00002620* + ID_MODEL_FROM_DATABASE=E8500/E8501 eXternal Memory Bridge + + pci:v00008086d00002620sv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge 6850 Memory Bridge ++ ID_MODEL_FROM_DATABASE=E8500/E8501 eXternal Memory Bridge (PowerEdge 6850 Memory Bridge) + + pci:v00008086d00002621* + ID_MODEL_FROM_DATABASE=E8500/E8501 XMB Miscellaneous Registers + + pci:v00008086d00002621sv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge 6850 XMB Registers ++ ID_MODEL_FROM_DATABASE=E8500/E8501 XMB Miscellaneous Registers (PowerEdge 6850 XMB Registers) + + pci:v00008086d00002622* + ID_MODEL_FROM_DATABASE=E8500/E8501 XMB Memory Interleaving Registers + + pci:v00008086d00002622sv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge 6850 Memory Interleaving Registers ++ ID_MODEL_FROM_DATABASE=E8500/E8501 XMB Memory Interleaving Registers (PowerEdge 6850 Memory Interleaving Registers) + + pci:v00008086d00002623* + ID_MODEL_FROM_DATABASE=E8500/E8501 XMB DDR Initialization and Calibration + + pci:v00008086d00002623sv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge 6850 DDR Initialization and Calibration ++ ID_MODEL_FROM_DATABASE=E8500/E8501 XMB DDR Initialization and Calibration (PowerEdge 6850 DDR Initialization and Calibration) + + pci:v00008086d00002624* + ID_MODEL_FROM_DATABASE=E8500/E8501 XMB Reserved Registers + + pci:v00008086d00002624sv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge 6850 Reserved Registers ++ ID_MODEL_FROM_DATABASE=E8500/E8501 XMB Reserved Registers (PowerEdge 6850 Reserved Registers) + + pci:v00008086d00002625* + ID_MODEL_FROM_DATABASE=E8500/E8501 XMB Reserved Registers + + pci:v00008086d00002625sv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge 6850 Reserved Registers ++ ID_MODEL_FROM_DATABASE=E8500/E8501 XMB Reserved Registers (PowerEdge 6850 Reserved Registers) + + pci:v00008086d00002626* + ID_MODEL_FROM_DATABASE=E8500/E8501 XMB Reserved Registers + + pci:v00008086d00002626sv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge 6850 Reserved Registers ++ ID_MODEL_FROM_DATABASE=E8500/E8501 XMB Reserved Registers (PowerEdge 6850 Reserved Registers) + + pci:v00008086d00002627* + ID_MODEL_FROM_DATABASE=E8500/E8501 XMB Reserved Registers + + pci:v00008086d00002627sv00001028sd00000170* +- ID_MODEL_FROM_DATABASE=PowerEdge 6850 Reserved Registers ++ ID_MODEL_FROM_DATABASE=E8500/E8501 XMB Reserved Registers (PowerEdge 6850 Reserved Registers) + + pci:v00008086d00002640* + ID_MODEL_FROM_DATABASE=82801FB/FR (ICH6/ICH6R) LPC Interface Bridge + + pci:v00008086d00002640sv00001462sd00007028* +- ID_MODEL_FROM_DATABASE=915P/G Neo2 ++ ID_MODEL_FROM_DATABASE=82801FB/FR (ICH6/ICH6R) LPC Interface Bridge (915P/G Neo2) + + pci:v00008086d00002640sv00001734sd0000105C* +- ID_MODEL_FROM_DATABASE=Scenic W620 ++ ID_MODEL_FROM_DATABASE=82801FB/FR (ICH6/ICH6R) LPC Interface Bridge (Scenic W620) + + pci:v00008086d00002640sv0000E4BFsd00000CCD* +- ID_MODEL_FROM_DATABASE=CCD-CALYPSO ++ ID_MODEL_FROM_DATABASE=82801FB/FR (ICH6/ICH6R) LPC Interface Bridge (CCD-CALYPSO) + + pci:v00008086d00002640sv0000E4BFsd00000CD3* +- ID_MODEL_FROM_DATABASE=CD3-JIVE ++ ID_MODEL_FROM_DATABASE=82801FB/FR (ICH6/ICH6R) LPC Interface Bridge (CD3-JIVE) + + pci:v00008086d00002640sv0000E4BFsd000058B1* +- ID_MODEL_FROM_DATABASE=XB1 ++ ID_MODEL_FROM_DATABASE=82801FB/FR (ICH6/ICH6R) LPC Interface Bridge (XB1) + + pci:v00008086d00002641* + ID_MODEL_FROM_DATABASE=82801FBM (ICH6M) LPC Interface Bridge + + pci:v00008086d00002641sv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=Compaq nw8240/nx8220 ++ ID_MODEL_FROM_DATABASE=82801FBM (ICH6M) LPC Interface Bridge (Compaq nw8240/nx8220) + + pci:v00008086d00002641sv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=82801FBM (ICH6M) LPC Interface Bridge (NX6110/NC6120) + + pci:v00008086d00002642* + ID_MODEL_FROM_DATABASE=82801FW/FRW (ICH6W/ICH6RW) LPC Interface Bridge +@@ -63441,34 +63441,34 @@ pci:v00008086d00002651* + ID_MODEL_FROM_DATABASE=82801FB/FW (ICH6/ICH6W) SATA Controller + + pci:v00008086d00002651sv00001028sd00000179* +- ID_MODEL_FROM_DATABASE=Optiplex GX280 ++ ID_MODEL_FROM_DATABASE=82801FB/FW (ICH6/ICH6W) SATA Controller (Optiplex GX280) + + pci:v00008086d00002651sv00001043sd00002601* +- ID_MODEL_FROM_DATABASE=P5GD1-VW Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FW (ICH6/ICH6W) SATA Controller (P5GD1-VW Mainboard) + + pci:v00008086d00002651sv00001734sd0000105C* +- ID_MODEL_FROM_DATABASE=Scenic W620 ++ ID_MODEL_FROM_DATABASE=82801FB/FW (ICH6/ICH6W) SATA Controller (Scenic W620) + + pci:v00008086d00002651sv00008086sd00004147* +- ID_MODEL_FROM_DATABASE=D915GAG Motherboard ++ ID_MODEL_FROM_DATABASE=82801FB/FW (ICH6/ICH6W) SATA Controller (D915GAG Motherboard) + + pci:v00008086d00002651sv0000E4BFsd00000CCD* +- ID_MODEL_FROM_DATABASE=CCD-CALYPSO ++ ID_MODEL_FROM_DATABASE=82801FB/FW (ICH6/ICH6W) SATA Controller (CCD-CALYPSO) + + pci:v00008086d00002651sv0000E4BFsd00000CD3* +- ID_MODEL_FROM_DATABASE=CD3-JIVE ++ ID_MODEL_FROM_DATABASE=82801FB/FW (ICH6/ICH6W) SATA Controller (CD3-JIVE) + + pci:v00008086d00002651sv0000E4BFsd000058B1* +- ID_MODEL_FROM_DATABASE=XB1 ++ ID_MODEL_FROM_DATABASE=82801FB/FW (ICH6/ICH6W) SATA Controller (XB1) + + pci:v00008086d00002652* + ID_MODEL_FROM_DATABASE=82801FR/FRW (ICH6R/ICH6RW) SATA Controller + + pci:v00008086d00002652sv00001028sd00000177* +- ID_MODEL_FROM_DATABASE=Dimension 8400 ++ ID_MODEL_FROM_DATABASE=82801FR/FRW (ICH6R/ICH6RW) SATA Controller (Dimension 8400) + + pci:v00008086d00002652sv00001462sd00007028* +- ID_MODEL_FROM_DATABASE=915P/G Neo2 ++ ID_MODEL_FROM_DATABASE=82801FR/FRW (ICH6R/ICH6RW) SATA Controller (915P/G Neo2) + + pci:v00008086d00002653* + ID_MODEL_FROM_DATABASE=82801FBM (ICH6M) SATA Controller +@@ -63477,289 +63477,289 @@ pci:v00008086d00002658* + ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 + + pci:v00008086d00002658sv00001028sd00000177* +- ID_MODEL_FROM_DATABASE=Dimension 8400 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (Dimension 8400) + + pci:v00008086d00002658sv00001028sd00000179* +- ID_MODEL_FROM_DATABASE=Optiplex GX280 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (Optiplex GX280) + + pci:v00008086d00002658sv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=Compaq nw8240/nx8220 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (Compaq nw8240/nx8220) + + pci:v00008086d00002658sv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (NX6110/NC6120) + + pci:v00008086d00002658sv00001043sd000080A6* +- ID_MODEL_FROM_DATABASE=P5GD1-VW Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (P5GD1-VW Mainboard) + + pci:v00008086d00002658sv00001458sd00002558* +- ID_MODEL_FROM_DATABASE=GA-8I915ME-G Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (GA-8I915ME-G Mainboard) + + pci:v00008086d00002658sv00001462sd00007028* +- ID_MODEL_FROM_DATABASE=915P/G Neo2 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (915P/G Neo2) + + pci:v00008086d00002658sv00001734sd0000105C* +- ID_MODEL_FROM_DATABASE=Scenic W620 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (Scenic W620) + + pci:v00008086d00002658sv0000E4BFsd00000CCD* +- ID_MODEL_FROM_DATABASE=CCD-CALYPSO ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (CCD-CALYPSO) + + pci:v00008086d00002658sv0000E4BFsd00000CD3* +- ID_MODEL_FROM_DATABASE=CD3-JIVE ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (CD3-JIVE) + + pci:v00008086d00002658sv0000E4BFsd000058B1* +- ID_MODEL_FROM_DATABASE=XB1 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (XB1) + + pci:v00008086d00002659* + ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 + + pci:v00008086d00002659sv00001028sd00000177* +- ID_MODEL_FROM_DATABASE=Dimension 8400 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (Dimension 8400) + + pci:v00008086d00002659sv00001028sd00000179* +- ID_MODEL_FROM_DATABASE=Optiplex GX280 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (Optiplex GX280) + + pci:v00008086d00002659sv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=Compaq nw8240/nx8220 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (Compaq nw8240/nx8220) + + pci:v00008086d00002659sv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (NX6110/NC6120) + + pci:v00008086d00002659sv00001043sd000080A6* +- ID_MODEL_FROM_DATABASE=P5GD1-VW Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (P5GD1-VW Mainboard) + + pci:v00008086d00002659sv00001458sd00002659* +- ID_MODEL_FROM_DATABASE=GA-8I915ME-G Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (GA-8I915ME-G Mainboard) + + pci:v00008086d00002659sv00001462sd00007028* +- ID_MODEL_FROM_DATABASE=915P/G Neo2 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (915P/G Neo2) + + pci:v00008086d00002659sv00001734sd0000105C* +- ID_MODEL_FROM_DATABASE=Scenic W620 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (Scenic W620) + + pci:v00008086d00002659sv0000E4BFsd00000CCD* +- ID_MODEL_FROM_DATABASE=CCD-CALYPSO ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (CCD-CALYPSO) + + pci:v00008086d00002659sv0000E4BFsd00000CD3* +- ID_MODEL_FROM_DATABASE=CD3-JIVE ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (CD3-JIVE) + + pci:v00008086d00002659sv0000E4BFsd000058B1* +- ID_MODEL_FROM_DATABASE=XB1 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (XB1) + + pci:v00008086d0000265A* + ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 + + pci:v00008086d0000265Asv00001028sd00000177* +- ID_MODEL_FROM_DATABASE=Dimension 8400 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (Dimension 8400) + + pci:v00008086d0000265Asv00001028sd00000179* +- ID_MODEL_FROM_DATABASE=Optiplex GX280 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (Optiplex GX280) + + pci:v00008086d0000265Asv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=Compaq nw8240/nx8220 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (Compaq nw8240/nx8220) + + pci:v00008086d0000265Asv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (NX6110/NC6120) + + pci:v00008086d0000265Asv00001043sd000080A6* +- ID_MODEL_FROM_DATABASE=P5GD1-VW Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (P5GD1-VW Mainboard) + + pci:v00008086d0000265Asv00001458sd0000265A* +- ID_MODEL_FROM_DATABASE=GA-8I915ME-G Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (GA-8I915ME-G Mainboard) + + pci:v00008086d0000265Asv00001462sd00007028* +- ID_MODEL_FROM_DATABASE=915P/G Neo2 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (915P/G Neo2) + + pci:v00008086d0000265Asv00001734sd0000105C* +- ID_MODEL_FROM_DATABASE=Scenic W620 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (Scenic W620) + + pci:v00008086d0000265Asv0000E4BFsd00000CCD* +- ID_MODEL_FROM_DATABASE=CCD-CALYPSO ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (CCD-CALYPSO) + + pci:v00008086d0000265Asv0000E4BFsd00000CD3* +- ID_MODEL_FROM_DATABASE=CD3-JIVE ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (CD3-JIVE) + + pci:v00008086d0000265Asv0000E4BFsd000058B1* +- ID_MODEL_FROM_DATABASE=XB1 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (XB1) + + pci:v00008086d0000265B* + ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 + + pci:v00008086d0000265Bsv00001028sd00000177* +- ID_MODEL_FROM_DATABASE=Dimension 8400 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (Dimension 8400) + + pci:v00008086d0000265Bsv00001028sd00000179* +- ID_MODEL_FROM_DATABASE=Optiplex GX280 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (Optiplex GX280) + + pci:v00008086d0000265Bsv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (NX6110/NC6120) + + pci:v00008086d0000265Bsv00001043sd000080A6* +- ID_MODEL_FROM_DATABASE=P5GD1-VW Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (P5GD1-VW Mainboard) + + pci:v00008086d0000265Bsv00001458sd0000265A* +- ID_MODEL_FROM_DATABASE=GA-8I915ME-G Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (GA-8I915ME-G Mainboard) + + pci:v00008086d0000265Bsv00001462sd00007028* +- ID_MODEL_FROM_DATABASE=915P/G Neo2 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (915P/G Neo2) + + pci:v00008086d0000265Bsv00001734sd0000105C* +- ID_MODEL_FROM_DATABASE=Scenic W620 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (Scenic W620) + + pci:v00008086d0000265Bsv0000E4BFsd00000CCD* +- ID_MODEL_FROM_DATABASE=CCD-CALYPSO ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (CCD-CALYPSO) + + pci:v00008086d0000265Bsv0000E4BFsd00000CD3* +- ID_MODEL_FROM_DATABASE=CD3-JIVE ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (CD3-JIVE) + + pci:v00008086d0000265Bsv0000E4BFsd000058B1* +- ID_MODEL_FROM_DATABASE=XB1 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (XB1) + + pci:v00008086d0000265C* + ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller + + pci:v00008086d0000265Csv00001028sd00000177* +- ID_MODEL_FROM_DATABASE=Dimension 8400 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (Dimension 8400) + + pci:v00008086d0000265Csv00001028sd00000179* +- ID_MODEL_FROM_DATABASE=Optiplex GX280 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (Optiplex GX280) + + pci:v00008086d0000265Csv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=Compaq nw8240/nx8220 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (Compaq nw8240/nx8220) + + pci:v00008086d0000265Csv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (NX6110/NC6120) + + pci:v00008086d0000265Csv00001043sd000080A6* +- ID_MODEL_FROM_DATABASE=P5GD1-VW Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (P5GD1-VW Mainboard) + + pci:v00008086d0000265Csv00001458sd00005006* +- ID_MODEL_FROM_DATABASE=GA-8I915ME-G Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (GA-8I915ME-G Mainboard) + + pci:v00008086d0000265Csv00001462sd00007028* +- ID_MODEL_FROM_DATABASE=915P/G Neo2 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (915P/G Neo2) + + pci:v00008086d0000265Csv00001734sd0000105C* +- ID_MODEL_FROM_DATABASE=Scenic W620 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (Scenic W620) + + pci:v00008086d0000265Csv00008086sd0000265C* +- ID_MODEL_FROM_DATABASE=Dimension 3100 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (Dimension 3100) + + pci:v00008086d0000265Csv0000E4BFsd00000CCD* +- ID_MODEL_FROM_DATABASE=CCD-CALYPSO ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (CCD-CALYPSO) + + pci:v00008086d0000265Csv0000E4BFsd00000CD3* +- ID_MODEL_FROM_DATABASE=CD3-JIVE ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (CD3-JIVE) + + pci:v00008086d0000265Csv0000E4BFsd000058B1* +- ID_MODEL_FROM_DATABASE=XB1 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (XB1) + + pci:v00008086d00002660* + ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 + + pci:v00008086d00002660sv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=HP Compaq nw8240 Mobile Workstation ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (HP Compaq nw8240 Mobile Workstation) + + pci:v00008086d00002660sv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (NX6110/NC6120) + + pci:v00008086d00002660sv0000E4BFsd00000CCD* +- ID_MODEL_FROM_DATABASE=CCD-CALYPSO ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (CCD-CALYPSO) + + pci:v00008086d00002660sv0000E4BFsd00000CD3* +- ID_MODEL_FROM_DATABASE=CD3-JIVE ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (CD3-JIVE) + + pci:v00008086d00002660sv0000E4BFsd000058B1* +- ID_MODEL_FROM_DATABASE=XB1 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (XB1) + + pci:v00008086d00002662* + ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 2 + + pci:v00008086d00002662sv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=HP Compaq nw8240 Mobile Workstation ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 2 (HP Compaq nw8240 Mobile Workstation) + + pci:v00008086d00002662sv0000E4BFsd00000CCD* +- ID_MODEL_FROM_DATABASE=CCD-CALYPSO ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 2 (CCD-CALYPSO) + + pci:v00008086d00002662sv0000E4BFsd00000CD3* +- ID_MODEL_FROM_DATABASE=CD3-JIVE ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 2 (CD3-JIVE) + + pci:v00008086d00002662sv0000E4BFsd000058B1* +- ID_MODEL_FROM_DATABASE=XB1 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 2 (XB1) + + pci:v00008086d00002664* + ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 3 + + pci:v00008086d00002664sv0000E4BFsd00000CCD* +- ID_MODEL_FROM_DATABASE=CCD-CALYPSO ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 3 (CCD-CALYPSO) + + pci:v00008086d00002664sv0000E4BFsd00000CD3* +- ID_MODEL_FROM_DATABASE=CD3-JIVE ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 3 (CD3-JIVE) + + pci:v00008086d00002664sv0000E4BFsd000058B1* +- ID_MODEL_FROM_DATABASE=XB1 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 3 (XB1) + + pci:v00008086d00002666* + ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 4 + + pci:v00008086d00002666sv0000E4BFsd00000CCD* +- ID_MODEL_FROM_DATABASE=CCD-CALYPSO ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 4 (CCD-CALYPSO) + + pci:v00008086d00002666sv0000E4BFsd00000CD3* +- ID_MODEL_FROM_DATABASE=CD3-JIVE ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 4 (CD3-JIVE) + + pci:v00008086d00002666sv0000E4BFsd000058B1* +- ID_MODEL_FROM_DATABASE=XB1 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 4 (XB1) + + pci:v00008086d00002668* + ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller + + pci:v00008086d00002668sv00001014sd000005B7* +- ID_MODEL_FROM_DATABASE=ThinkPad Z60t ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (ThinkPad Z60t) + + pci:v00008086d00002668sv0000103Csd00002A09* +- ID_MODEL_FROM_DATABASE=PufferM-UL8E ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (PufferM-UL8E) + + pci:v00008086d00002668sv00001043sd00001173* +- ID_MODEL_FROM_DATABASE=Asus A6VC ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (Asus A6VC) + + pci:v00008086d00002668sv00001043sd0000814E* +- ID_MODEL_FROM_DATABASE=P5GD1-VW Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (P5GD1-VW Mainboard) + + pci:v00008086d00002668sv00001462sd00007028* +- ID_MODEL_FROM_DATABASE=915P/G Neo2 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (915P/G Neo2) + + pci:v00008086d00002668sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (QEMU Virtual Machine) + + pci:v00008086d0000266A* + ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller + + pci:v00008086d0000266Asv00001028sd00000177* +- ID_MODEL_FROM_DATABASE=Dimension 8400 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (Dimension 8400) + + pci:v00008086d0000266Asv00001028sd00000179* +- ID_MODEL_FROM_DATABASE=Optiplex GX280 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (Optiplex GX280) + + pci:v00008086d0000266Asv00001043sd000080A6* +- ID_MODEL_FROM_DATABASE=P5GD1-VW Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (P5GD1-VW Mainboard) + + pci:v00008086d0000266Asv00001458sd0000266A* +- ID_MODEL_FROM_DATABASE=GA-8I915ME-G Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (GA-8I915ME-G Mainboard) + + pci:v00008086d0000266Asv00001462sd00007028* +- ID_MODEL_FROM_DATABASE=915P/G Neo2 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (915P/G Neo2) + + pci:v00008086d0000266Asv00001734sd0000105C* +- ID_MODEL_FROM_DATABASE=Scenic W620 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (Scenic W620) + + pci:v00008086d0000266Asv0000E4BFsd00000CCD* +- ID_MODEL_FROM_DATABASE=CCD-CALYPSO ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (CCD-CALYPSO) + + pci:v00008086d0000266Asv0000E4BFsd00000CD3* +- ID_MODEL_FROM_DATABASE=CD3-JIVE ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (CD3-JIVE) + + pci:v00008086d0000266Asv0000E4BFsd000058B1* +- ID_MODEL_FROM_DATABASE=XB1 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (XB1) + + pci:v00008086d0000266C* + ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) LAN Controller +@@ -63768,103 +63768,103 @@ pci:v00008086d0000266D* + ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller + + pci:v00008086d0000266Dsv00001025sd0000006A* +- ID_MODEL_FROM_DATABASE=Conexant AC'97 CoDec (in Acer TravelMate 2410 serie laptop) ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller (Conexant AC'97 CoDec (in Acer TravelMate 2410 serie laptop)) + + pci:v00008086d0000266Dsv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=Compaq nw8240/nx8220 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller (Compaq nw8240/nx8220) + + pci:v00008086d0000266Dsv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller (NX6110/NC6120) + + pci:v00008086d0000266E* + ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller + + pci:v00008086d0000266Esv00001025sd0000006A* +- ID_MODEL_FROM_DATABASE=Realtek ALC 655 codec (in Acer TravelMate 2410 serie laptop) ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (Realtek ALC 655 codec (in Acer TravelMate 2410 serie laptop)) + + pci:v00008086d0000266Esv00001028sd00000177* +- ID_MODEL_FROM_DATABASE=Dimension 8400 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (Dimension 8400) + + pci:v00008086d0000266Esv00001028sd00000179* +- ID_MODEL_FROM_DATABASE=Optiplex GX280 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (Optiplex GX280) + + pci:v00008086d0000266Esv00001028sd00000182* +- ID_MODEL_FROM_DATABASE=Latitude D610 Laptop ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (Latitude D610 Laptop) + + pci:v00008086d0000266Esv00001028sd00000187* +- ID_MODEL_FROM_DATABASE=Dell Precision M70 Laptop ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (Dell Precision M70 Laptop) + + pci:v00008086d0000266Esv00001028sd00000188* +- ID_MODEL_FROM_DATABASE=Inspiron 6000 laptop ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (Inspiron 6000 laptop) + + pci:v00008086d0000266Esv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=Compaq nw8240/nx8220 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (Compaq nw8240/nx8220) + + pci:v00008086d0000266Esv0000103Csd00000944* +- ID_MODEL_FROM_DATABASE=Compaq NC6220 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (Compaq NC6220) + + pci:v00008086d0000266Esv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (NX6110/NC6120) + + pci:v00008086d0000266Esv0000103Csd00003006* +- ID_MODEL_FROM_DATABASE=DC7100 SFF(DX878AV) ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (DC7100 SFF(DX878AV)) + + pci:v00008086d0000266Esv00001458sd0000A002* +- ID_MODEL_FROM_DATABASE=GA-8I915ME-G Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (GA-8I915ME-G Mainboard) + + pci:v00008086d0000266Esv0000152Dsd00000745* +- ID_MODEL_FROM_DATABASE=Packard Bell A8550 Laptop ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (Packard Bell A8550 Laptop) + + pci:v00008086d0000266Esv00001734sd0000105A* +- ID_MODEL_FROM_DATABASE=Scenic W620 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (Scenic W620) + + pci:v00008086d0000266F* + ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller + + pci:v00008086d0000266Fsv00001028sd00000177* +- ID_MODEL_FROM_DATABASE=Dimension 8400 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (Dimension 8400) + + pci:v00008086d0000266Fsv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=Compaq nw8240/nx8220 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (Compaq nw8240/nx8220) + + pci:v00008086d0000266Fsv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (NX6110/NC6120) + + pci:v00008086d0000266Fsv00001043sd000080A6* +- ID_MODEL_FROM_DATABASE=P5GD1-VW Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (P5GD1-VW Mainboard) + + pci:v00008086d0000266Fsv00001458sd0000266F* +- ID_MODEL_FROM_DATABASE=GA-8I915ME-G Mainboard ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (GA-8I915ME-G Mainboard) + + pci:v00008086d0000266Fsv00001462sd00007028* +- ID_MODEL_FROM_DATABASE=915P/G Neo2 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (915P/G Neo2) + + pci:v00008086d0000266Fsv00001734sd0000105C* +- ID_MODEL_FROM_DATABASE=Scenic W620 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (Scenic W620) + + pci:v00008086d0000266Fsv0000E4BFsd00000CCD* +- ID_MODEL_FROM_DATABASE=CCD-CALYPSO ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (CCD-CALYPSO) + + pci:v00008086d0000266Fsv0000E4BFsd00000CD3* +- ID_MODEL_FROM_DATABASE=CD3-JIVE ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (CD3-JIVE) + + pci:v00008086d0000266Fsv0000E4BFsd000058B1* +- ID_MODEL_FROM_DATABASE=XB1 ++ ID_MODEL_FROM_DATABASE=82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (XB1) + + pci:v00008086d00002670* + ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset LPC Interface Controller + + pci:v00008086d00002670sv0000103Csd000031FE* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset LPC Interface Controller (ProLiant DL140 G3) + + pci:v00008086d00002670sv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset LPC Interface Controller (X7DVL-E-O motherboard) + + pci:v00008086d00002670sv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset LPC Interface Controller (X7DBN Motherboard) + + pci:v00008086d00002670sv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=Intel S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset LPC Interface Controller (Intel S5000PSLSATA Server Board) + + pci:v00008086d00002680* + ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset SATA IDE Controller +@@ -63873,22 +63873,22 @@ pci:v00008086d00002681* + ID_MODEL_FROM_DATABASE=631xESB/632xESB SATA AHCI Controller + + pci:v00008086d00002681sv0000103Csd000031FE* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB SATA AHCI Controller (ProLiant DL140 G3) + + pci:v00008086d00002681sv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB SATA AHCI Controller (X7DVL-E-O motherboard) + + pci:v00008086d00002681sv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB SATA AHCI Controller (X7DBN Motherboard) + + pci:v00008086d00002681sv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=Intel S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB SATA AHCI Controller (Intel S5000PSLSATA Server Board) + + pci:v00008086d00002682* + ID_MODEL_FROM_DATABASE=631xESB/632xESB SATA RAID Controller + + pci:v00008086d00002682sv0000103Csd000031FE* +- ID_MODEL_FROM_DATABASE=Adaptec Serial ATA HostRAID ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB SATA RAID Controller (Adaptec Serial ATA HostRAID) + + pci:v00008086d00002683* + ID_MODEL_FROM_DATABASE=631xESB/632xESB SATA RAID Controller +@@ -63897,109 +63897,109 @@ pci:v00008086d00002688* + ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #1 + + pci:v00008086d00002688sv00001028sd000001BB* +- ID_MODEL_FROM_DATABASE=PowerEdge 1955 onboard USB ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #1 (PowerEdge 1955 onboard USB) + + pci:v00008086d00002688sv00001028sd000001F0* +- ID_MODEL_FROM_DATABASE=PowerEdge R900 onboard USB ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #1 (PowerEdge R900 onboard USB) + + pci:v00008086d00002688sv0000103Csd000031FE* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #1 (ProLiant DL140 G3) + + pci:v00008086d00002688sv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #1 (X7DVL-E-O motherboard) + + pci:v00008086d00002688sv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #1 (X7DBN Motherboard) + + pci:v00008086d00002688sv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=Intel S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #1 (Intel S5000PSLSATA Server Board) + + pci:v00008086d00002689* + ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #2 + + pci:v00008086d00002689sv00001028sd000001BB* +- ID_MODEL_FROM_DATABASE=PowerEdge 1955 onboard USB ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #2 (PowerEdge 1955 onboard USB) + + pci:v00008086d00002689sv00001028sd000001F0* +- ID_MODEL_FROM_DATABASE=PowerEdge R900 onboard USB ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #2 (PowerEdge R900 onboard USB) + + pci:v00008086d00002689sv0000103Csd000031FE* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #2 (ProLiant DL140 G3) + + pci:v00008086d00002689sv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #2 (X7DVL-E-O motherboard) + + pci:v00008086d00002689sv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #2 (X7DBN Motherboard) + + pci:v00008086d00002689sv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=Intel S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #2 (Intel S5000PSLSATA Server Board) + + pci:v00008086d0000268A* + ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #3 + + pci:v00008086d0000268Asv00001028sd000001F0* +- ID_MODEL_FROM_DATABASE=PowerEdge R900 onboard USB ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #3 (PowerEdge R900 onboard USB) + + pci:v00008086d0000268Asv0000103Csd000031FE* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #3 (ProLiant DL140 G3) + + pci:v00008086d0000268Asv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #3 (X7DVL-E-O motherboard) + + pci:v00008086d0000268Asv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #3 (X7DBN Motherboard) + + pci:v00008086d0000268Asv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=Intel S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #3 (Intel S5000PSLSATA Server Board) + + pci:v00008086d0000268B* + ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #4 + + pci:v00008086d0000268Bsv00001028sd000001F0* +- ID_MODEL_FROM_DATABASE=PowerEdge R900 onboard USB ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #4 (PowerEdge R900 onboard USB) + + pci:v00008086d0000268Bsv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #4 (X7DVL-E-O motherboard) + + pci:v00008086d0000268Bsv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=Intel S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset UHCI USB Controller #4 (Intel S5000PSLSATA Server Board) + + pci:v00008086d0000268C* + ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset EHCI USB2 Controller + + pci:v00008086d0000268Csv00001028sd000001BB* +- ID_MODEL_FROM_DATABASE=PowerEdge 1955 onboard USB ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset EHCI USB2 Controller (PowerEdge 1955 onboard USB) + + pci:v00008086d0000268Csv00001028sd000001F0* +- ID_MODEL_FROM_DATABASE=PowerEdge R900 onboard USB ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset EHCI USB2 Controller (PowerEdge R900 onboard USB) + + pci:v00008086d0000268Csv0000103Csd000031FE* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset EHCI USB2 Controller (ProLiant DL140 G3) + + pci:v00008086d0000268Csv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset EHCI USB2 Controller (X7DVL-E-O motherboard) + + pci:v00008086d0000268Csv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset EHCI USB2 Controller (X7DBN Motherboard) + + pci:v00008086d0000268Csv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=Intel S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset EHCI USB2 Controller (Intel S5000PSLSATA Server Board) + + pci:v00008086d00002690* + ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset PCI Express Root Port 1 + + pci:v00008086d00002690sv0000103Csd000031FE* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset PCI Express Root Port 1 (ProLiant DL140 G3) + + pci:v00008086d00002690sv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset PCI Express Root Port 1 (X7DBN Motherboard) + + pci:v00008086d00002692* + ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset PCI Express Root Port 2 + + pci:v00008086d00002692sv0000103Csd000031FE* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset PCI Express Root Port 2 (ProLiant DL140 G3) + + pci:v00008086d00002694* + ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset PCI Express Root Port 3 +@@ -64020,49 +64020,49 @@ pci:v00008086d0000269B* + ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset SMBus Controller + + pci:v00008086d0000269Bsv0000103Csd000031FE* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset SMBus Controller (ProLiant DL140 G3) + + pci:v00008086d0000269Bsv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset SMBus Controller (X7DVL-E-O motherboard) + + pci:v00008086d0000269Bsv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset SMBus Controller (X7DBN Motherboard) + + pci:v00008086d0000269Bsv00008086sd00003476* +- ID_MODEL_FROM_DATABASE=Intel S5000PSLSATA Server Board ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB/3100 Chipset SMBus Controller (Intel S5000PSLSATA Server Board) + + pci:v00008086d0000269E* + ID_MODEL_FROM_DATABASE=631xESB/632xESB IDE Controller + + pci:v00008086d0000269Esv0000103Csd000031FE* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB IDE Controller (ProLiant DL140 G3) + + pci:v00008086d0000269Esv000015D9sd00008680* +- ID_MODEL_FROM_DATABASE=X7DVL-E-O motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB IDE Controller (X7DVL-E-O motherboard) + + pci:v00008086d0000269Esv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=631xESB/632xESB IDE Controller (X7DBN Motherboard) + + pci:v00008086d00002770* + ID_MODEL_FROM_DATABASE=82945G/GZ/P/PL Memory Controller Hub + + pci:v00008086d00002770sv00001028sd000001AD* +- ID_MODEL_FROM_DATABASE=OptiPlex GX620 ++ ID_MODEL_FROM_DATABASE=82945G/GZ/P/PL Memory Controller Hub (OptiPlex GX620) + + pci:v00008086d00002770sv0000103Csd00002A3B* +- ID_MODEL_FROM_DATABASE=Pavilion A1512X ++ ID_MODEL_FROM_DATABASE=82945G/GZ/P/PL Memory Controller Hub (Pavilion A1512X) + + pci:v00008086d00002770sv00001043sd0000817A* +- ID_MODEL_FROM_DATABASE=P5LD2-VM Mainboard ++ ID_MODEL_FROM_DATABASE=82945G/GZ/P/PL Memory Controller Hub (P5LD2-VM Mainboard) + + pci:v00008086d00002770sv0000107Bsd00005048* +- ID_MODEL_FROM_DATABASE=E4500 ++ ID_MODEL_FROM_DATABASE=82945G/GZ/P/PL Memory Controller Hub (E4500) + + pci:v00008086d00002770sv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=82945G/GZ/P/PL Memory Controller Hub (Wind PC MS-7418) + + pci:v00008086d00002770sv00008086sd0000544E* +- ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP ++ ID_MODEL_FROM_DATABASE=82945G/GZ/P/PL Memory Controller Hub (DeskTop Board D945GTP) + + pci:v00008086d00002771* + ID_MODEL_FROM_DATABASE=82945G/GZ/P/PL PCI Express Root Port +@@ -64071,16 +64071,16 @@ pci:v00008086d00002772* + ID_MODEL_FROM_DATABASE=82945G/GZ Integrated Graphics Controller + + pci:v00008086d00002772sv0000103Csd00002A3B* +- ID_MODEL_FROM_DATABASE=Pavilion A1512X ++ ID_MODEL_FROM_DATABASE=82945G/GZ Integrated Graphics Controller (Pavilion A1512X) + + pci:v00008086d00002772sv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=82945G/GZ Integrated Graphics Controller (Wind PC MS-7418) + + pci:v00008086d00002772sv00008086sd0000544E* +- ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP ++ ID_MODEL_FROM_DATABASE=82945G/GZ Integrated Graphics Controller (DeskTop Board D945GTP) + + pci:v00008086d00002772sv00008086sd0000D605* +- ID_MODEL_FROM_DATABASE=Intel Desktop Board D945GCCR ++ ID_MODEL_FROM_DATABASE=82945G/GZ Integrated Graphics Controller (Intel Desktop Board D945GCCR) + + pci:v00008086d00002774* + ID_MODEL_FROM_DATABASE=82955X Memory Controller Hub +@@ -64095,10 +64095,10 @@ pci:v00008086d00002778* + ID_MODEL_FROM_DATABASE=E7230/3000/3010 Memory Controller Hub + + pci:v00008086d00002778sv00001028sd000001DF* +- ID_MODEL_FROM_DATABASE=PowerEdge SC440 ++ ID_MODEL_FROM_DATABASE=E7230/3000/3010 Memory Controller Hub (PowerEdge SC440) + + pci:v00008086d00002778sv00001028sd000001E6* +- ID_MODEL_FROM_DATABASE=PowerEdge 860 ++ ID_MODEL_FROM_DATABASE=E7230/3000/3010 Memory Controller Hub (PowerEdge 860) + + pci:v00008086d00002779* + ID_MODEL_FROM_DATABASE=E7230/3000/3010 PCI Express Root Port +@@ -64110,7 +64110,7 @@ pci:v00008086d0000277C* + ID_MODEL_FROM_DATABASE=82975X Memory Controller Hub + + pci:v00008086d0000277Csv00001043sd00008178* +- ID_MODEL_FROM_DATABASE=P5WDG2 WS Professional motherboard ++ ID_MODEL_FROM_DATABASE=82975X Memory Controller Hub (P5WDG2 WS Professional motherboard) + + pci:v00008086d0000277D* + ID_MODEL_FROM_DATABASE=82975X PCI Express Root Port +@@ -64119,94 +64119,94 @@ pci:v00008086d00002782* + ID_MODEL_FROM_DATABASE=82915G Integrated Graphics Controller + + pci:v00008086d00002782sv00001043sd00002582* +- ID_MODEL_FROM_DATABASE=P5GD1-VW Mainboard ++ ID_MODEL_FROM_DATABASE=82915G Integrated Graphics Controller (P5GD1-VW Mainboard) + + pci:v00008086d00002782sv00001734sd0000105B* +- ID_MODEL_FROM_DATABASE=Scenic W620 ++ ID_MODEL_FROM_DATABASE=82915G Integrated Graphics Controller (Scenic W620) + + pci:v00008086d00002792* + ID_MODEL_FROM_DATABASE=Mobile 915GM/GMS/910GML Express Graphics Controller + + pci:v00008086d00002792sv0000103Csd0000099C* +- ID_MODEL_FROM_DATABASE=NX6110/NC6120 ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/GMS/910GML Express Graphics Controller (NX6110/NC6120) + + pci:v00008086d00002792sv00001043sd00001881* +- ID_MODEL_FROM_DATABASE=GMA 900 915GM Integrated Graphics ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/GMS/910GML Express Graphics Controller (GMA 900 915GM Integrated Graphics) + + pci:v00008086d00002792sv0000E4BFsd00000CCD* +- ID_MODEL_FROM_DATABASE=CCD-CALYPSO ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/GMS/910GML Express Graphics Controller (CCD-CALYPSO) + + pci:v00008086d00002792sv0000E4BFsd00000CD3* +- ID_MODEL_FROM_DATABASE=CD3-JIVE ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/GMS/910GML Express Graphics Controller (CD3-JIVE) + + pci:v00008086d00002792sv0000E4BFsd000058B1* +- ID_MODEL_FROM_DATABASE=XB1 ++ ID_MODEL_FROM_DATABASE=Mobile 915GM/GMS/910GML Express Graphics Controller (XB1) + + pci:v00008086d000027A0* + ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub + + pci:v00008086d000027A0sv00001025sd0000006C* +- ID_MODEL_FROM_DATABASE=9814 WKMI ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (9814 WKMI) + + pci:v00008086d000027A0sv00001028sd000001D7* +- ID_MODEL_FROM_DATABASE=XPS M1210 ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (XPS M1210) + + pci:v00008086d000027A0sv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (Compaq nx9420 Notebook) + + pci:v00008086d000027A0sv0000103Csd000030A1* +- ID_MODEL_FROM_DATABASE=NC2400 ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (NC2400) + + pci:v00008086d000027A0sv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (Compaq nw8440) + + pci:v00008086d000027A0sv00001043sd00001237* +- ID_MODEL_FROM_DATABASE=A6J-Q008 ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (A6J-Q008) + + pci:v00008086d000027A0sv000017AAsd00002015* +- ID_MODEL_FROM_DATABASE=ThinkPad T60 ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (ThinkPad T60) + + pci:v00008086d000027A0sv000017AAsd00002017* +- ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (ThinkPad R60/T60/X60 series) + + pci:v00008086d000027A1* + ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express PCI Express Root Port + + pci:v00008086d000027A1sv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express PCI Express Root Port (Compaq nx9420 Notebook) + + pci:v00008086d000027A1sv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express PCI Express Root Port (Compaq nw8440) + + pci:v00008086d000027A2* + ID_MODEL_FROM_DATABASE=Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller + + pci:v00008086d000027A2sv0000103Csd000030A1* +- ID_MODEL_FROM_DATABASE=NC2400 ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (NC2400) + + pci:v00008086d000027A2sv000017AAsd0000201A* +- ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (ThinkPad R60/T60/X60 series) + + pci:v00008086d000027A2sv00009902sd00001584* +- ID_MODEL_FROM_DATABASE=CCE MPL-D10H120F ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (CCE MPL-D10H120F) + + pci:v00008086d000027A6* + ID_MODEL_FROM_DATABASE=Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller + + pci:v00008086d000027A6sv0000103Csd000030A1* +- ID_MODEL_FROM_DATABASE=NC2400 ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (NC2400) + + pci:v00008086d000027A6sv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 integrated graphics (secondary) ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (CC11/CL11 integrated graphics (secondary)) + + pci:v00008086d000027A6sv000017AAsd0000201A* +- ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (ThinkPad R60/T60/X60 series) + + pci:v00008086d000027AC* + ID_MODEL_FROM_DATABASE=Mobile 945GSE Express Memory Controller Hub + + pci:v00008086d000027ACsv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=Mobile 945GSE Express Memory Controller Hub (CC11/CL11) + + pci:v00008086d000027AD* + ID_MODEL_FROM_DATABASE=Mobile 945GSE Express PCI Express Root Port +@@ -64215,178 +64215,178 @@ pci:v00008086d000027AE* + ID_MODEL_FROM_DATABASE=Mobile 945GSE Express Integrated Graphics Controller + + pci:v00008086d000027AEsv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 integrated graphics (primary) ++ ID_MODEL_FROM_DATABASE=Mobile 945GSE Express Integrated Graphics Controller (CC11/CL11 integrated graphics (primary)) + + pci:v00008086d000027B0* + ID_MODEL_FROM_DATABASE=82801GH (ICH7DH) LPC Interface Bridge + + pci:v00008086d000027B0sv0000103Csd00002A3B* +- ID_MODEL_FROM_DATABASE=Pavilion A1512X ++ ID_MODEL_FROM_DATABASE=82801GH (ICH7DH) LPC Interface Bridge (Pavilion A1512X) + + pci:v00008086d000027B0sv00008086sd0000544E* +- ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP ++ ID_MODEL_FROM_DATABASE=82801GH (ICH7DH) LPC Interface Bridge (DeskTop Board D945GTP) + + pci:v00008086d000027B8* + ID_MODEL_FROM_DATABASE=82801GB/GR (ICH7 Family) LPC Interface Bridge + + pci:v00008086d000027B8sv00001028sd000001E6* +- ID_MODEL_FROM_DATABASE=PowerEdge 860 ++ ID_MODEL_FROM_DATABASE=82801GB/GR (ICH7 Family) LPC Interface Bridge (PowerEdge 860) + + pci:v00008086d000027B8sv00001043sd00008179* +- ID_MODEL_FROM_DATABASE=P5KPL-VM Motherboard ++ ID_MODEL_FROM_DATABASE=82801GB/GR (ICH7 Family) LPC Interface Bridge (P5KPL-VM Motherboard) + + pci:v00008086d000027B8sv0000107Bsd00005048* +- ID_MODEL_FROM_DATABASE=E4500 ++ ID_MODEL_FROM_DATABASE=82801GB/GR (ICH7 Family) LPC Interface Bridge (E4500) + + pci:v00008086d000027B8sv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=82801GB/GR (ICH7 Family) LPC Interface Bridge (Wind PC MS-7418) + + pci:v00008086d000027B8sv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=82801GB/GR (ICH7 Family) LPC Interface Bridge (CC11/CL11) + + pci:v00008086d000027B8sv00008086sd0000544E* +- ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP ++ ID_MODEL_FROM_DATABASE=82801GB/GR (ICH7 Family) LPC Interface Bridge (DeskTop Board D945GTP) + + pci:v00008086d000027B9* + ID_MODEL_FROM_DATABASE=82801GBM (ICH7-M) LPC Interface Bridge + + pci:v00008086d000027B9sv00001028sd000001D7* +- ID_MODEL_FROM_DATABASE=XPS M1210 ++ ID_MODEL_FROM_DATABASE=82801GBM (ICH7-M) LPC Interface Bridge (XPS M1210) + + pci:v00008086d000027B9sv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=82801GBM (ICH7-M) LPC Interface Bridge (Compaq nx9420 Notebook) + + pci:v00008086d000027B9sv0000103Csd000030A1* +- ID_MODEL_FROM_DATABASE=NC2400 ++ ID_MODEL_FROM_DATABASE=82801GBM (ICH7-M) LPC Interface Bridge (NC2400) + + pci:v00008086d000027B9sv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=82801GBM (ICH7-M) LPC Interface Bridge (Compaq nw8440) + + pci:v00008086d000027B9sv000010F7sd00008338* +- ID_MODEL_FROM_DATABASE=Panasonic CF-Y5 laptop ++ ID_MODEL_FROM_DATABASE=82801GBM (ICH7-M) LPC Interface Bridge (Panasonic CF-Y5 laptop) + + pci:v00008086d000027B9sv000017AAsd00002009* +- ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series ++ ID_MODEL_FROM_DATABASE=82801GBM (ICH7-M) LPC Interface Bridge (ThinkPad R60/T60/X60 series) + + pci:v00008086d000027BC* + ID_MODEL_FROM_DATABASE=NM10 Family LPC Controller + + pci:v00008086d000027BCsv0000105Bsd00000D7C* +- ID_MODEL_FROM_DATABASE=D270S/D250S Motherboard ++ ID_MODEL_FROM_DATABASE=NM10 Family LPC Controller (D270S/D250S Motherboard) + + pci:v00008086d000027BCsv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=NM10 Family LPC Controller (Notebook N150P) + + pci:v00008086d000027BCsv00001458sd00005001* +- ID_MODEL_FROM_DATABASE=GA-D525TUD ++ ID_MODEL_FROM_DATABASE=NM10 Family LPC Controller (GA-D525TUD) + + pci:v00008086d000027BCsv00008086sd00004F4D* +- ID_MODEL_FROM_DATABASE=DeskTop Board D510MO ++ ID_MODEL_FROM_DATABASE=NM10 Family LPC Controller (DeskTop Board D510MO) + + pci:v00008086d000027BCsv00008086sd0000544B* +- ID_MODEL_FROM_DATABASE=Desktop Board D425KT ++ ID_MODEL_FROM_DATABASE=NM10 Family LPC Controller (Desktop Board D425KT) + + pci:v00008086d000027BD* + ID_MODEL_FROM_DATABASE=82801GHM (ICH7-M DH) LPC Interface Bridge + + pci:v00008086d000027BDsv00001025sd0000006C* +- ID_MODEL_FROM_DATABASE=9814 WKMI ++ ID_MODEL_FROM_DATABASE=82801GHM (ICH7-M DH) LPC Interface Bridge (9814 WKMI) + + pci:v00008086d000027C0* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [IDE mode] + + pci:v00008086d000027C0sv00001028sd000001AD* +- ID_MODEL_FROM_DATABASE=OptiPlex GX620 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [IDE mode] (OptiPlex GX620) + + pci:v00008086d000027C0sv00001028sd000001DF* +- ID_MODEL_FROM_DATABASE=PowerEdge SC440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [IDE mode] (PowerEdge SC440) + + pci:v00008086d000027C0sv00001028sd000001E6* +- ID_MODEL_FROM_DATABASE=PowerEdge 860 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [IDE mode] (PowerEdge 860) + + pci:v00008086d000027C0sv00001043sd00008179* +- ID_MODEL_FROM_DATABASE=P5KPL-VM Motherboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [IDE mode] (P5KPL-VM Motherboard) + + pci:v00008086d000027C0sv0000107Bsd00005048* +- ID_MODEL_FROM_DATABASE=E4500 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [IDE mode] (E4500) + + pci:v00008086d000027C0sv00001462sd00002310* +- ID_MODEL_FROM_DATABASE=MSI Hetis 945 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [IDE mode] (MSI Hetis 945) + + pci:v00008086d000027C0sv00001462sd00007236* +- ID_MODEL_FROM_DATABASE=945P Neo3-F Rev. 2.2 motherboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [IDE mode] (945P Neo3-F Rev. 2.2 motherboard) + + pci:v00008086d000027C0sv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [IDE mode] (Wind PC MS-7418) + + pci:v00008086d000027C0sv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [IDE mode] (CC11/CL11) + + pci:v00008086d000027C0sv00008086sd0000544B* +- ID_MODEL_FROM_DATABASE=Desktop Board D425KT ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [IDE mode] (Desktop Board D425KT) + + pci:v00008086d000027C0sv00008086sd0000544E* +- ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [IDE mode] (DeskTop Board D945GTP) + + pci:v00008086d000027C1* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [AHCI mode] + + pci:v00008086d000027C1sv00001028sd000001DF* +- ID_MODEL_FROM_DATABASE=PowerEdge SC440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [AHCI mode] (PowerEdge SC440) + + pci:v00008086d000027C1sv0000103Csd00002A3B* +- ID_MODEL_FROM_DATABASE=Pavilion A1512X ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [AHCI mode] (Pavilion A1512X) + + pci:v00008086d000027C1sv0000105Bsd00000D7C* +- ID_MODEL_FROM_DATABASE=D270S/D250S Motherboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [AHCI mode] (D270S/D250S Motherboard) + + pci:v00008086d000027C1sv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [AHCI mode] (Notebook N150P) + + pci:v00008086d000027C1sv00001458sd0000B005* +- ID_MODEL_FROM_DATABASE=GA-D525TUD ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [AHCI mode] (GA-D525TUD) + + pci:v00008086d000027C1sv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [AHCI mode] (CC11/CL11) + + pci:v00008086d000027C1sv00008086sd00004F4D* +- ID_MODEL_FROM_DATABASE=DeskTop Board D510MO ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [AHCI mode] (DeskTop Board D510MO) + + pci:v00008086d000027C1sv00008086sd00005842* +- ID_MODEL_FROM_DATABASE=DeskTop Board D975XBX ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SATA Controller [AHCI mode] (DeskTop Board D975XBX) + + pci:v00008086d000027C3* + ID_MODEL_FROM_DATABASE=82801GR/GDH (ICH7R/ICH7DH) SATA Controller [RAID mode] + + pci:v00008086d000027C3sv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=82801GR/GDH (ICH7R/ICH7DH) SATA Controller [RAID mode] (CC11/CL11) + + pci:v00008086d000027C3sv00008086sd0000544E* +- ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP ++ ID_MODEL_FROM_DATABASE=82801GR/GDH (ICH7R/ICH7DH) SATA Controller [RAID mode] (DeskTop Board D945GTP) + + pci:v00008086d000027C4* + ID_MODEL_FROM_DATABASE=82801GBM/GHM (ICH7-M Family) SATA Controller [IDE mode] + + pci:v00008086d000027C4sv00001025sd0000006C* +- ID_MODEL_FROM_DATABASE=9814 WKMI ++ ID_MODEL_FROM_DATABASE=82801GBM/GHM (ICH7-M Family) SATA Controller [IDE mode] (9814 WKMI) + + pci:v00008086d000027C4sv00001028sd000001D7* +- ID_MODEL_FROM_DATABASE=XPS M1210 ++ ID_MODEL_FROM_DATABASE=82801GBM/GHM (ICH7-M Family) SATA Controller [IDE mode] (XPS M1210) + + pci:v00008086d000027C4sv000017AAsd0000200E* +- ID_MODEL_FROM_DATABASE=ThinkPad T60 ++ ID_MODEL_FROM_DATABASE=82801GBM/GHM (ICH7-M Family) SATA Controller [IDE mode] (ThinkPad T60) + + pci:v00008086d000027C5* + ID_MODEL_FROM_DATABASE=82801GBM/GHM (ICH7-M Family) SATA Controller [AHCI mode] + + pci:v00008086d000027C5sv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=82801GBM/GHM (ICH7-M Family) SATA Controller [AHCI mode] (Compaq nx9420 Notebook) + + pci:v00008086d000027C5sv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=82801GBM/GHM (ICH7-M Family) SATA Controller [AHCI mode] (Compaq nw8440) + + pci:v00008086d000027C5sv000017AAsd0000200D* +- ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series ++ ID_MODEL_FROM_DATABASE=82801GBM/GHM (ICH7-M Family) SATA Controller [AHCI mode] (ThinkPad R60/T60/X60 series) + + pci:v00008086d000027C6* + ID_MODEL_FROM_DATABASE=82801GHM (ICH7-M DH) SATA Controller [RAID mode] +@@ -64395,553 +64395,553 @@ pci:v00008086d000027C8* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 + + pci:v00008086d000027C8sv00001025sd0000006C* +- ID_MODEL_FROM_DATABASE=9814 WKMI ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (9814 WKMI) + + pci:v00008086d000027C8sv00001028sd000001AD* +- ID_MODEL_FROM_DATABASE=OptiPlex GX620 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (OptiPlex GX620) + + pci:v00008086d000027C8sv00001028sd000001D7* +- ID_MODEL_FROM_DATABASE=XPS M1210 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (XPS M1210) + + pci:v00008086d000027C8sv00001028sd000001DF* +- ID_MODEL_FROM_DATABASE=PowerEdge SC440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (PowerEdge SC440) + + pci:v00008086d000027C8sv00001028sd000001E6* +- ID_MODEL_FROM_DATABASE=PowerEdge 860 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (PowerEdge 860) + + pci:v00008086d000027C8sv0000103Csd00002A3B* +- ID_MODEL_FROM_DATABASE=Pavilion A1512X ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (Pavilion A1512X) + + pci:v00008086d000027C8sv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (Compaq nx9420 Notebook) + + pci:v00008086d000027C8sv0000103Csd000030A1* +- ID_MODEL_FROM_DATABASE=NC2400 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (NC2400) + + pci:v00008086d000027C8sv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (Compaq nw8440) + + pci:v00008086d000027C8sv00001043sd00001237* +- ID_MODEL_FROM_DATABASE=A6J-Q008 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (A6J-Q008) + + pci:v00008086d000027C8sv00001043sd00008179* +- ID_MODEL_FROM_DATABASE=P5KPL-VM,P5LD2-VM Mainboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (P5KPL-VM,P5LD2-VM Mainboard) + + pci:v00008086d000027C8sv0000105Bsd00000D7C* +- ID_MODEL_FROM_DATABASE=D270S/D250S Motherboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (D270S/D250S Motherboard) + + pci:v00008086d000027C8sv0000107Bsd00005048* +- ID_MODEL_FROM_DATABASE=E4500 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (E4500) + + pci:v00008086d000027C8sv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (Notebook N150P) + + pci:v00008086d000027C8sv00001458sd00005004* +- ID_MODEL_FROM_DATABASE=GA-D525TUD ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (GA-D525TUD) + + pci:v00008086d000027C8sv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (Wind PC MS-7418) + + pci:v00008086d000027C8sv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (CC11/CL11) + + pci:v00008086d000027C8sv000017AAsd0000200A* +- ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (ThinkPad R60/T60/X60 series) + + pci:v00008086d000027C8sv00008086sd00004F4D* +- ID_MODEL_FROM_DATABASE=DeskTop Board D510MO ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (DeskTop Board D510MO) + + pci:v00008086d000027C8sv00008086sd0000544B* +- ID_MODEL_FROM_DATABASE=Desktop Board D425KT ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (Desktop Board D425KT) + + pci:v00008086d000027C8sv00008086sd0000544E* +- ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (DeskTop Board D945GTP) + + pci:v00008086d000027C9* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 + + pci:v00008086d000027C9sv00001025sd0000006C* +- ID_MODEL_FROM_DATABASE=9814 WKMI ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (9814 WKMI) + + pci:v00008086d000027C9sv00001028sd000001AD* +- ID_MODEL_FROM_DATABASE=OptiPlex GX620 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (OptiPlex GX620) + + pci:v00008086d000027C9sv00001028sd000001D7* +- ID_MODEL_FROM_DATABASE=XPS M1210 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (XPS M1210) + + pci:v00008086d000027C9sv00001028sd000001DF* +- ID_MODEL_FROM_DATABASE=PowerEdge SC440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (PowerEdge SC440) + + pci:v00008086d000027C9sv00001028sd000001E6* +- ID_MODEL_FROM_DATABASE=PowerEdge 860 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (PowerEdge 860) + + pci:v00008086d000027C9sv0000103Csd00002A3B* +- ID_MODEL_FROM_DATABASE=Pavilion A1512X ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (Pavilion A1512X) + + pci:v00008086d000027C9sv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (Compaq nx9420 Notebook) + + pci:v00008086d000027C9sv0000103Csd000030A1* +- ID_MODEL_FROM_DATABASE=NC2400 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (NC2400) + + pci:v00008086d000027C9sv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (Compaq nw8440) + + pci:v00008086d000027C9sv00001043sd00001237* +- ID_MODEL_FROM_DATABASE=A6J-Q008 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (A6J-Q008) + + pci:v00008086d000027C9sv00001043sd00008179* +- ID_MODEL_FROM_DATABASE=P5KPL-VM,P5LD2-VM Mainboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (P5KPL-VM,P5LD2-VM Mainboard) + + pci:v00008086d000027C9sv0000105Bsd00000D7C* +- ID_MODEL_FROM_DATABASE=D270S/D250S Motherboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (D270S/D250S Motherboard) + + pci:v00008086d000027C9sv0000107Bsd00005048* +- ID_MODEL_FROM_DATABASE=E4500 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (E4500) + + pci:v00008086d000027C9sv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (Notebook N150P) + + pci:v00008086d000027C9sv00001458sd00005004* +- ID_MODEL_FROM_DATABASE=GA-D525TUD ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (GA-D525TUD) + + pci:v00008086d000027C9sv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (Wind PC MS-7418) + + pci:v00008086d000027C9sv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (CC11/CL11) + + pci:v00008086d000027C9sv000017AAsd0000200A* +- ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (ThinkPad R60/T60/X60 series) + + pci:v00008086d000027C9sv00008086sd00004F4D* +- ID_MODEL_FROM_DATABASE=DeskTop Board D510MO ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (DeskTop Board D510MO) + + pci:v00008086d000027C9sv00008086sd0000544B* +- ID_MODEL_FROM_DATABASE=Desktop Board D425KT ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (Desktop Board D425KT) + + pci:v00008086d000027C9sv00008086sd0000544E* +- ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (DeskTop Board D945GTP) + + pci:v00008086d000027CA* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 + + pci:v00008086d000027CAsv00001025sd0000006C* +- ID_MODEL_FROM_DATABASE=9814 WKMI ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (9814 WKMI) + + pci:v00008086d000027CAsv00001028sd000001AD* +- ID_MODEL_FROM_DATABASE=OptiPlex GX620 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (OptiPlex GX620) + + pci:v00008086d000027CAsv00001028sd000001D7* +- ID_MODEL_FROM_DATABASE=XPS M1210 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (XPS M1210) + + pci:v00008086d000027CAsv00001028sd000001DF* +- ID_MODEL_FROM_DATABASE=PowerEdge SC440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (PowerEdge SC440) + + pci:v00008086d000027CAsv00001028sd000001E6* +- ID_MODEL_FROM_DATABASE=PowerEdge 860 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (PowerEdge 860) + + pci:v00008086d000027CAsv0000103Csd00002A3B* +- ID_MODEL_FROM_DATABASE=Pavilion A1512X ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (Pavilion A1512X) + + pci:v00008086d000027CAsv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (Compaq nx9420 Notebook) + + pci:v00008086d000027CAsv0000103Csd000030A1* +- ID_MODEL_FROM_DATABASE=NC2400 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (NC2400) + + pci:v00008086d000027CAsv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (Compaq nw8440) + + pci:v00008086d000027CAsv00001043sd00001237* +- ID_MODEL_FROM_DATABASE=A6J-Q008 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (A6J-Q008) + + pci:v00008086d000027CAsv00001043sd00008179* +- ID_MODEL_FROM_DATABASE=P5KPL-VM,P5LD2-VM Mainboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (P5KPL-VM,P5LD2-VM Mainboard) + + pci:v00008086d000027CAsv0000105Bsd00000D7C* +- ID_MODEL_FROM_DATABASE=D270S/D250S Motherboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (D270S/D250S Motherboard) + + pci:v00008086d000027CAsv0000107Bsd00005048* +- ID_MODEL_FROM_DATABASE=E4500 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (E4500) + + pci:v00008086d000027CAsv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (Notebook N150P) + + pci:v00008086d000027CAsv00001458sd00005004* +- ID_MODEL_FROM_DATABASE=GA-D525TUD ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (GA-D525TUD) + + pci:v00008086d000027CAsv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (Wind PC MS-7418) + + pci:v00008086d000027CAsv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (CC11/CL11) + + pci:v00008086d000027CAsv000017AAsd0000200A* +- ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (ThinkPad R60/T60/X60 series) + + pci:v00008086d000027CAsv00008086sd00004F4D* +- ID_MODEL_FROM_DATABASE=DeskTop Board D510MO ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (DeskTop Board D510MO) + + pci:v00008086d000027CAsv00008086sd0000544E* +- ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (DeskTop Board D945GTP) + + pci:v00008086d000027CB* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 + + pci:v00008086d000027CBsv00001025sd0000006C* +- ID_MODEL_FROM_DATABASE=9814 WKMI ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (9814 WKMI) + + pci:v00008086d000027CBsv00001028sd000001AD* +- ID_MODEL_FROM_DATABASE=OptiPlex GX620 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (OptiPlex GX620) + + pci:v00008086d000027CBsv00001028sd000001D7* +- ID_MODEL_FROM_DATABASE=XPS M1210 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (XPS M1210) + + pci:v00008086d000027CBsv00001028sd000001DF* +- ID_MODEL_FROM_DATABASE=PowerEdge SC440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (PowerEdge SC440) + + pci:v00008086d000027CBsv0000103Csd00002A3B* +- ID_MODEL_FROM_DATABASE=Pavilion A1512X ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (Pavilion A1512X) + + pci:v00008086d000027CBsv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (Compaq nx9420 Notebook) + + pci:v00008086d000027CBsv0000103Csd000030A1* +- ID_MODEL_FROM_DATABASE=NC2400 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (NC2400) + + pci:v00008086d000027CBsv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (Compaq nw8440) + + pci:v00008086d000027CBsv00001043sd00001237* +- ID_MODEL_FROM_DATABASE=A6J-Q008 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (A6J-Q008) + + pci:v00008086d000027CBsv00001043sd00008179* +- ID_MODEL_FROM_DATABASE=P5KPL-VM,P5LD2-VM Mainboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (P5KPL-VM,P5LD2-VM Mainboard) + + pci:v00008086d000027CBsv0000105Bsd00000D7C* +- ID_MODEL_FROM_DATABASE=D270S/D250S Motherboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (D270S/D250S Motherboard) + + pci:v00008086d000027CBsv0000107Bsd00005048* +- ID_MODEL_FROM_DATABASE=E4500 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (E4500) + + pci:v00008086d000027CBsv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (Notebook N150P) + + pci:v00008086d000027CBsv00001458sd00005004* +- ID_MODEL_FROM_DATABASE=GA-D525TUD ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (GA-D525TUD) + + pci:v00008086d000027CBsv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (Wind PC MS-7418) + + pci:v00008086d000027CBsv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (CC11/CL11) + + pci:v00008086d000027CBsv000017AAsd0000200A* +- ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (ThinkPad R60/T60/X60 series) + + pci:v00008086d000027CBsv00008086sd00004F4D* +- ID_MODEL_FROM_DATABASE=DeskTop Board D510MO ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (DeskTop Board D510MO) + + pci:v00008086d000027CBsv00008086sd0000544E* +- ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (DeskTop Board D945GTP) + + pci:v00008086d000027CC* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller + + pci:v00008086d000027CCsv00001025sd0000006C* +- ID_MODEL_FROM_DATABASE=9814 WKMI ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (9814 WKMI) + + pci:v00008086d000027CCsv00001028sd000001AD* +- ID_MODEL_FROM_DATABASE=OptiPlex GX620 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (OptiPlex GX620) + + pci:v00008086d000027CCsv00001028sd000001D7* +- ID_MODEL_FROM_DATABASE=XPS M1210 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (XPS M1210) + + pci:v00008086d000027CCsv00001028sd000001DF* +- ID_MODEL_FROM_DATABASE=PowerEdge SC440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (PowerEdge SC440) + + pci:v00008086d000027CCsv00001028sd000001E6* +- ID_MODEL_FROM_DATABASE=PowerEdge 860 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (PowerEdge 860) + + pci:v00008086d000027CCsv0000103Csd00002A3B* +- ID_MODEL_FROM_DATABASE=Pavilion A1512X ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (Pavilion A1512X) + + pci:v00008086d000027CCsv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (Compaq nx9420 Notebook) + + pci:v00008086d000027CCsv0000103Csd000030A1* +- ID_MODEL_FROM_DATABASE=NC2400 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (NC2400) + + pci:v00008086d000027CCsv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (Compaq nw8440) + + pci:v00008086d000027CCsv00001043sd00001237* +- ID_MODEL_FROM_DATABASE=A6J-Q008 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (A6J-Q008) + + pci:v00008086d000027CCsv00001043sd00008179* +- ID_MODEL_FROM_DATABASE=P5KPL-VM,P5LD2-VM Mainboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (P5KPL-VM,P5LD2-VM Mainboard) + + pci:v00008086d000027CCsv0000105Bsd00000D7C* +- ID_MODEL_FROM_DATABASE=D270S/D250S Motherboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (D270S/D250S Motherboard) + + pci:v00008086d000027CCsv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (Notebook N150P) + + pci:v00008086d000027CCsv00001458sd00005006* +- ID_MODEL_FROM_DATABASE=GA-D525TUD ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (GA-D525TUD) + + pci:v00008086d000027CCsv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (Wind PC MS-7418) + + pci:v00008086d000027CCsv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (CC11/CL11) + + pci:v00008086d000027CCsv000017AAsd0000200B* +- ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (ThinkPad R60/T60/X60 series) + + pci:v00008086d000027CCsv00008086sd00004F4D* +- ID_MODEL_FROM_DATABASE=DeskTop Board D510MO ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (DeskTop Board D510MO) + + pci:v00008086d000027CCsv00008086sd0000544B* +- ID_MODEL_FROM_DATABASE=Desktop Board D425KT ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (Desktop Board D425KT) + + pci:v00008086d000027CCsv00008086sd0000544E* +- ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (DeskTop Board D945GTP) + + pci:v00008086d000027D0* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 1 + + pci:v00008086d000027D0sv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 1 (Compaq nx9420 Notebook) + + pci:v00008086d000027D0sv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 1 (Compaq nw8440) + + pci:v00008086d000027D0sv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 1 (Notebook N150P) + + pci:v00008086d000027D0sv00001458sd00005001* +- ID_MODEL_FROM_DATABASE=GA-D525TUD ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 1 (GA-D525TUD) + + pci:v00008086d000027D0sv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 1 (Wind PC MS-7418) + + pci:v00008086d000027D0sv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 1 (CC11/CL11) + + pci:v00008086d000027D0sv00008086sd0000544B* +- ID_MODEL_FROM_DATABASE=Desktop Board D425KT ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 1 (Desktop Board D425KT) + + pci:v00008086d000027D2* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 2 + + pci:v00008086d000027D2sv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 2 (Compaq nx9420 Notebook) + + pci:v00008086d000027D2sv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 2 (Compaq nw8440) + + pci:v00008086d000027D2sv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 2 (Notebook N150P) + + pci:v00008086d000027D2sv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 2 (Wind PC MS-7418) + + pci:v00008086d000027D2sv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 2 (CC11/CL11) + + pci:v00008086d000027D2sv00008086sd0000544B* +- ID_MODEL_FROM_DATABASE=Desktop Board D425KT ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 2 (Desktop Board D425KT) + + pci:v00008086d000027D4* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 3 + + pci:v00008086d000027D4sv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 3 (Notebook N150P) + + pci:v00008086d000027D4sv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 3 (Wind PC MS-7418) + + pci:v00008086d000027D4sv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 3 (CC11/CL11) + + pci:v00008086d000027D4sv00008086sd0000544B* +- ID_MODEL_FROM_DATABASE=Desktop Board D425KT ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 3 (Desktop Board D425KT) + + pci:v00008086d000027D6* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 4 + + pci:v00008086d000027D6sv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 4 (Compaq nw8440) + + pci:v00008086d000027D6sv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 4 (Notebook N150P) + + pci:v00008086d000027D6sv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 4 (Wind PC MS-7418) + + pci:v00008086d000027D6sv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 4 (CC11/CL11) + + pci:v00008086d000027D6sv00008086sd0000544B* +- ID_MODEL_FROM_DATABASE=Desktop Board D425KT ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 4 (Desktop Board D425KT) + + pci:v00008086d000027D8* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller + + pci:v00008086d000027D8sv00001025sd0000006C* +- ID_MODEL_FROM_DATABASE=9814 WKMI ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (9814 WKMI) + + pci:v00008086d000027D8sv00001028sd000001D7* +- ID_MODEL_FROM_DATABASE=XPS M1210 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (XPS M1210) + + pci:v00008086d000027D8sv0000103Csd00002A3B* +- ID_MODEL_FROM_DATABASE=Pavilion A1512X ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (Pavilion A1512X) + + pci:v00008086d000027D8sv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (Compaq nx9420 Notebook) + + pci:v00008086d000027D8sv0000103Csd000030A1* +- ID_MODEL_FROM_DATABASE=NC2400 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (NC2400) + + pci:v00008086d000027D8sv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (Compaq nw8440) + + pci:v00008086d000027D8sv00001043sd00001123* +- ID_MODEL_FROM_DATABASE=A6J-Q008 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (A6J-Q008) + + pci:v00008086d000027D8sv00001043sd000013C4* +- ID_MODEL_FROM_DATABASE=Asus G2P ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (Asus G2P) + + pci:v00008086d000027D8sv00001043sd0000817F* +- ID_MODEL_FROM_DATABASE=P5LD2-VM Mainboard (Realtek ALC 882 codec) ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (P5LD2-VM Mainboard (Realtek ALC 882 codec)) + + pci:v00008086d000027D8sv00001043sd00008290* +- ID_MODEL_FROM_DATABASE=P5KPL-VM Motherboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (P5KPL-VM Motherboard) + + pci:v00008086d000027D8sv00001043sd000082EA* +- ID_MODEL_FROM_DATABASE=P5KPL-CM Motherboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (P5KPL-CM Motherboard) + + pci:v00008086d000027D8sv0000105Bsd00000D7C* +- ID_MODEL_FROM_DATABASE=D270S/D250S Motherboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (D270S/D250S Motherboard) + + pci:v00008086d000027D8sv0000107Bsd00005048* +- ID_MODEL_FROM_DATABASE=E4500 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (E4500) + + pci:v00008086d000027D8sv000010F7sd00008338* +- ID_MODEL_FROM_DATABASE=Panasonic CF-Y5 laptop ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (Panasonic CF-Y5 laptop) + + pci:v00008086d000027D8sv00001179sd0000FF10* +- ID_MODEL_FROM_DATABASE=Toshiba Satellite A100-796 audio (Realtek ALC861) ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (Toshiba Satellite A100-796 audio (Realtek ALC861)) + + pci:v00008086d000027D8sv00001179sd0000FF31* +- ID_MODEL_FROM_DATABASE=AC97 Data Fax SoftModem with SmartCP ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (AC97 Data Fax SoftModem with SmartCP) + + pci:v00008086d000027D8sv00001447sd00001043* +- ID_MODEL_FROM_DATABASE=Asus A8JP (Analog Devices AD1986A) ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (Asus A8JP (Analog Devices AD1986A)) + + pci:v00008086d000027D8sv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (Notebook N150P) + + pci:v00008086d000027D8sv00001458sd0000A002* +- ID_MODEL_FROM_DATABASE=GA-D525TUD (Realtek ALC887) ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (GA-D525TUD (Realtek ALC887)) + + pci:v00008086d000027D8sv00001458sd0000A102* +- ID_MODEL_FROM_DATABASE=GA-8I945PG-RH Mainboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (GA-8I945PG-RH Mainboard) + + pci:v00008086d000027D8sv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (Wind PC MS-7418) + + pci:v00008086d000027D8sv0000152Dsd00000753* +- ID_MODEL_FROM_DATABASE=Softmodem ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (Softmodem) + + pci:v00008086d000027D8sv00001734sd000010AD* +- ID_MODEL_FROM_DATABASE=Conexant softmodem SmartCP ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (Conexant softmodem SmartCP) + + pci:v00008086d000027D8sv000017AAsd00002010* +- ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (ThinkPad R60/T60/X60 series) + + pci:v00008086d000027D8sv000017AAsd00003802* +- ID_MODEL_FROM_DATABASE=Lenovo 3000 C200 audio [Realtek ALC861VD] ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (Lenovo 3000 C200 audio [Realtek ALC861VD]) + + pci:v00008086d000027D8sv00008086sd00001112* +- ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (DeskTop Board D945GTP) + + pci:v00008086d000027D8sv00008086sd000027D8* +- ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (DeskTop Board D945GTP) + + pci:v00008086d000027D8sv00008086sd0000D618* +- ID_MODEL_FROM_DATABASE=DeskTop Board D510MO ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (DeskTop Board D510MO) + + pci:v00008086d000027D8sv00008384sd00007680* +- ID_MODEL_FROM_DATABASE=STAC9221 HD Audio Codec ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (STAC9221 HD Audio Codec) + + pci:v00008086d000027DA* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller + + pci:v00008086d000027DAsv00001025sd0000006C* +- ID_MODEL_FROM_DATABASE=9814 WKMI ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (9814 WKMI) + + pci:v00008086d000027DAsv00001028sd000001AD* +- ID_MODEL_FROM_DATABASE=OptiPlex GX620 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (OptiPlex GX620) + + pci:v00008086d000027DAsv00001028sd000001D7* +- ID_MODEL_FROM_DATABASE=XPS M1210 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (XPS M1210) + + pci:v00008086d000027DAsv00001028sd000001DF* +- ID_MODEL_FROM_DATABASE=PowerEdge SC440 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (PowerEdge SC440) + + pci:v00008086d000027DAsv00001028sd000001E6* +- ID_MODEL_FROM_DATABASE=PowerEdge 860 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (PowerEdge 860) + + pci:v00008086d000027DAsv0000103Csd00002A3B* +- ID_MODEL_FROM_DATABASE=Pavilion A1512X ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (Pavilion A1512X) + + pci:v00008086d000027DAsv00001043sd00008179* +- ID_MODEL_FROM_DATABASE=P5KPL-VM Motherboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (P5KPL-VM Motherboard) + + pci:v00008086d000027DAsv0000105Bsd00000D7C* +- ID_MODEL_FROM_DATABASE=D270S/D250S Motherboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (D270S/D250S Motherboard) + + pci:v00008086d000027DAsv000010F7sd00008338* +- ID_MODEL_FROM_DATABASE=Panasonic CF-Y5 laptop ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (Panasonic CF-Y5 laptop) + + pci:v00008086d000027DAsv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (Notebook N150P) + + pci:v00008086d000027DAsv00001458sd00005001* +- ID_MODEL_FROM_DATABASE=GA-8I945PG-RH/GA-D525TUD Mainboard ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (GA-8I945PG-RH/GA-D525TUD Mainboard) + + pci:v00008086d000027DAsv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (Wind PC MS-7418) + + pci:v00008086d000027DAsv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (CC11/CL11) + + pci:v00008086d000027DAsv000017AAsd0000200F* +- ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (ThinkPad R60/T60/X60 series) + + pci:v00008086d000027DAsv00008086sd00004F4D* +- ID_MODEL_FROM_DATABASE=DeskTop Board D510MO ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (DeskTop Board D510MO) + + pci:v00008086d000027DAsv00008086sd0000544B* +- ID_MODEL_FROM_DATABASE=Desktop Board D425KT ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (Desktop Board D425KT) + + pci:v00008086d000027DAsv00008086sd0000544E* +- ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (DeskTop Board D945GTP) + + pci:v00008086d000027DAsv00008086sd00005842* +- ID_MODEL_FROM_DATABASE=DeskTop Board D975XBX ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (DeskTop Board D975XBX) + + pci:v00008086d000027DC* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family LAN Controller + + pci:v00008086d000027DCsv0000103Csd00002A3B* +- ID_MODEL_FROM_DATABASE=Pavilion A1512X ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family LAN Controller (Pavilion A1512X) + + pci:v00008086d000027DCsv00008086sd0000308D* +- ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family LAN Controller (DeskTop Board D945GTP) + + pci:v00008086d000027DD* + ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) AC'97 Modem Controller +@@ -64950,88 +64950,88 @@ pci:v00008086d000027DE* + ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) AC'97 Audio Controller + + pci:v00008086d000027DEsv00001028sd000001AD* +- ID_MODEL_FROM_DATABASE=OptiPlex GX620 ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) AC'97 Audio Controller (OptiPlex GX620) + + pci:v00008086d000027DEsv00001462sd00007267* +- ID_MODEL_FROM_DATABASE=Realtek ALC883 Audio Controller ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) AC'97 Audio Controller (Realtek ALC883 Audio Controller) + + pci:v00008086d000027DEsv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11 integrated audio (AD1981BL codec) ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) AC'97 Audio Controller (CC11 integrated audio (AD1981BL codec)) + + pci:v00008086d000027DF* + ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) IDE Controller + + pci:v00008086d000027DFsv00001028sd000001DF* +- ID_MODEL_FROM_DATABASE=PowerEdge SC440 ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) IDE Controller (PowerEdge SC440) + + pci:v00008086d000027DFsv00001028sd000001E6* +- ID_MODEL_FROM_DATABASE=PowerEdge 860 ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) IDE Controller (PowerEdge 860) + + pci:v00008086d000027DFsv0000103Csd00002A3B* +- ID_MODEL_FROM_DATABASE=Pavilion A1512X ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) IDE Controller (Pavilion A1512X) + + pci:v00008086d000027DFsv0000103Csd0000309F* +- ID_MODEL_FROM_DATABASE=Compaq nx9420 Notebook ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) IDE Controller (Compaq nx9420 Notebook) + + pci:v00008086d000027DFsv0000103Csd000030A1* +- ID_MODEL_FROM_DATABASE=NC2400 ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) IDE Controller (NC2400) + + pci:v00008086d000027DFsv0000103Csd000030A3* +- ID_MODEL_FROM_DATABASE=Compaq nw8440 ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) IDE Controller (Compaq nw8440) + + pci:v00008086d000027DFsv00001043sd00001237* +- ID_MODEL_FROM_DATABASE=A6J-Q008 ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) IDE Controller (A6J-Q008) + + pci:v00008086d000027DFsv00001043sd00008179* +- ID_MODEL_FROM_DATABASE=P5KPL-VM Motherboard ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) IDE Controller (P5KPL-VM Motherboard) + + pci:v00008086d000027DFsv0000107Bsd00005048* +- ID_MODEL_FROM_DATABASE=E4500 ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) IDE Controller (E4500) + + pci:v00008086d000027DFsv000010F7sd00008338* +- ID_MODEL_FROM_DATABASE=Panasonic CF-Y5 laptop ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) IDE Controller (Panasonic CF-Y5 laptop) + + pci:v00008086d000027DFsv00001462sd00007418* +- ID_MODEL_FROM_DATABASE=Wind PC MS-7418 ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) IDE Controller (Wind PC MS-7418) + + pci:v00008086d000027DFsv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) IDE Controller (CC11/CL11) + + pci:v00008086d000027DFsv000017AAsd0000200C* +- ID_MODEL_FROM_DATABASE=ThinkPad R60/T60/X60 series ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) IDE Controller (ThinkPad R60/T60/X60 series) + + pci:v00008086d000027DFsv00008086sd0000544E* +- ID_MODEL_FROM_DATABASE=DeskTop Board D945GTP ++ ID_MODEL_FROM_DATABASE=82801G (ICH7 Family) IDE Controller (DeskTop Board D945GTP) + + pci:v00008086d000027E0* + ID_MODEL_FROM_DATABASE=82801GR/GH/GHM (ICH7 Family) PCI Express Port 5 + + pci:v00008086d000027E0sv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=82801GR/GH/GHM (ICH7 Family) PCI Express Port 5 (CC11/CL11) + + pci:v00008086d000027E2* + ID_MODEL_FROM_DATABASE=82801GR/GH/GHM (ICH7 Family) PCI Express Port 6 + + pci:v00008086d000027E2sv00001775sd000011CC* +- ID_MODEL_FROM_DATABASE=CC11/CL11 ++ ID_MODEL_FROM_DATABASE=82801GR/GH/GHM (ICH7 Family) PCI Express Port 6 (CC11/CL11) + + pci:v00008086d00002810* + ID_MODEL_FROM_DATABASE=82801HB/HR (ICH8/R) LPC Interface Controller + + pci:v00008086d00002810sv00001043sd000081EC* +- ID_MODEL_FROM_DATABASE=P5B ++ ID_MODEL_FROM_DATABASE=82801HB/HR (ICH8/R) LPC Interface Controller (P5B) + + pci:v00008086d00002811* + ID_MODEL_FROM_DATABASE=82801HEM (ICH8M-E) LPC Interface Controller + + pci:v00008086d00002811sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=82801HEM (ICH8M-E) LPC Interface Controller (Compaq 6910p) + + pci:v00008086d00002811sv000017AAsd000020B6* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801HEM (ICH8M-E) LPC Interface Controller (ThinkPad T61/R61) + + pci:v00008086d00002811sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=82801HEM (ICH8M-E) LPC Interface Controller (CCG-RUMBA) + + pci:v00008086d00002812* + ID_MODEL_FROM_DATABASE=82801HH (ICH8DH) LPC Interface Controller +@@ -65043,34 +65043,34 @@ pci:v00008086d00002815* + ID_MODEL_FROM_DATABASE=82801HM (ICH8M) LPC Interface Controller + + pci:v00008086d00002815sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Aspire 5920G ++ ID_MODEL_FROM_DATABASE=82801HM (ICH8M) LPC Interface Controller (Aspire 5920G) + + pci:v00008086d00002815sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=82801HM (ICH8M) LPC Interface Controller (Inspiron 1420) + + pci:v00008086d00002815sv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=82801HM (ICH8M) LPC Interface Controller (Compaq 6710b) + + pci:v00008086d00002815sv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=82801HM (ICH8M) LPC Interface Controller (Pavilion dv6700) + + pci:v00008086d00002815sv0000103Csd000030D9* +- ID_MODEL_FROM_DATABASE=Presario C700 ++ ID_MODEL_FROM_DATABASE=82801HM (ICH8M) LPC Interface Controller (Presario C700) + + pci:v00008086d00002815sv0000104Dsd00009005* +- ID_MODEL_FROM_DATABASE=Vaio VGN-FZ260E ++ ID_MODEL_FROM_DATABASE=82801HM (ICH8M) LPC Interface Controller (Vaio VGN-FZ260E) + + pci:v00008086d00002815sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=82801HM (ICH8M) LPC Interface Controller (VAIO VGN-NR120E) + + pci:v00008086d00002820* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) 4 port SATA Controller [IDE mode] + + pci:v00008086d00002820sv00001028sd000001DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 745 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) 4 port SATA Controller [IDE mode] (OptiPlex 745) + + pci:v00008086d00002820sv00001462sd00007235* +- ID_MODEL_FROM_DATABASE=P965 Neo MS-7235 mainboard ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) 4 port SATA Controller [IDE mode] (P965 Neo MS-7235 mainboard) + + pci:v00008086d00002821* + ID_MODEL_FROM_DATABASE=82801HR/HO/HH (ICH8R/DO/DH) 6 port SATA Controller [AHCI mode] +@@ -65079,10 +65079,10 @@ pci:v00008086d00002822* + ID_MODEL_FROM_DATABASE=82801 SATA Controller [RAID mode] + + pci:v00008086d00002822sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801 SATA Controller [RAID mode] (Inspiron 530) + + pci:v00008086d00002822sv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=82801 SATA Controller [RAID mode] (Asus IPIBL-LB Motherboard) + + pci:v00008086d00002823* + ID_MODEL_FROM_DATABASE=Wellsburg sSATA RAID Controller +@@ -65091,16 +65091,16 @@ pci:v00008086d00002824* + ID_MODEL_FROM_DATABASE=82801HB (ICH8) 4 port SATA Controller [AHCI mode] + + pci:v00008086d00002824sv00001043sd000081EC* +- ID_MODEL_FROM_DATABASE=P5B ++ ID_MODEL_FROM_DATABASE=82801HB (ICH8) 4 port SATA Controller [AHCI mode] (P5B) + + pci:v00008086d00002825* + ID_MODEL_FROM_DATABASE=82801HR/HO/HH (ICH8R/DO/DH) 2 port SATA Controller [IDE mode] + + pci:v00008086d00002825sv00001028sd000001DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 745 ++ ID_MODEL_FROM_DATABASE=82801HR/HO/HH (ICH8R/DO/DH) 2 port SATA Controller [IDE mode] (OptiPlex 745) + + pci:v00008086d00002825sv00001462sd00007235* +- ID_MODEL_FROM_DATABASE=P965 Neo MS-7235 mainboard ++ ID_MODEL_FROM_DATABASE=82801HR/HO/HH (ICH8R/DO/DH) 2 port SATA Controller [IDE mode] (P965 Neo MS-7235 mainboard) + + pci:v00008086d00002826* + ID_MODEL_FROM_DATABASE=C600/X79 series chipset SATA RAID Controller +@@ -65112,424 +65112,424 @@ pci:v00008086d00002828* + ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [IDE mode] + + pci:v00008086d00002828sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [IDE mode] (Inspiron 1420) + + pci:v00008086d00002828sv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [IDE mode] (Compaq 6710b) + + pci:v00008086d00002828sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [IDE mode] (CCG-RUMBA) + + pci:v00008086d00002829* + ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] + + pci:v00008086d00002829sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Aspire 5920G ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (Aspire 5920G) + + pci:v00008086d00002829sv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (Compaq 6710b) + + pci:v00008086d00002829sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (Compaq 6910p) + + pci:v00008086d00002829sv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (Pavilion dv6700) + + pci:v00008086d00002829sv0000103Csd000030D9* +- ID_MODEL_FROM_DATABASE=Presario C700 ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (Presario C700) + + pci:v00008086d00002829sv0000104Dsd00009005* +- ID_MODEL_FROM_DATABASE=Vaio VGN-FZ260E ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (Vaio VGN-FZ260E) + + pci:v00008086d00002829sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (VAIO VGN-NR120E) + + pci:v00008086d00002829sv000017AAsd000020A7* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (ThinkPad T61/R61) + + pci:v00008086d00002829sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (CCG-RUMBA) + + pci:v00008086d0000282A* + ID_MODEL_FROM_DATABASE=82801 Mobile SATA Controller [RAID mode] + + pci:v00008086d0000282Asv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=82801 Mobile SATA Controller [RAID mode] (Latitude E6510) + + pci:v00008086d0000282Asv0000E4BFsd000050C1* +- ID_MODEL_FROM_DATABASE=PC1-GROOVE ++ ID_MODEL_FROM_DATABASE=82801 Mobile SATA Controller [RAID mode] (PC1-GROOVE) + + pci:v00008086d00002830* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 + + pci:v00008086d00002830sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Acer Aspire 5920G ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (Acer Aspire 5920G) + + pci:v00008086d00002830sv00001028sd000001DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 745 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (OptiPlex 745) + + pci:v00008086d00002830sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (Inspiron 1420) + + pci:v00008086d00002830sv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (Compaq 6710b) + + pci:v00008086d00002830sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (Compaq 6910p) + + pci:v00008086d00002830sv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (Pavilion dv6700) + + pci:v00008086d00002830sv0000103Csd000030D9* +- ID_MODEL_FROM_DATABASE=Presario C700 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (Presario C700) + + pci:v00008086d00002830sv00001043sd000081EC* +- ID_MODEL_FROM_DATABASE=P5B ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (P5B) + + pci:v00008086d00002830sv0000104Dsd00009005* +- ID_MODEL_FROM_DATABASE=Vaio VGN-FZ260E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (Vaio VGN-FZ260E) + + pci:v00008086d00002830sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (VAIO VGN-NR120E) + + pci:v00008086d00002830sv00001462sd00007235* +- ID_MODEL_FROM_DATABASE=P965 Neo MS-7235 mainboard ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (P965 Neo MS-7235 mainboard) + + pci:v00008086d00002830sv000017AAsd000020AA* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (ThinkPad T61/R61) + + pci:v00008086d00002830sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (CCG-RUMBA) + + pci:v00008086d00002831* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 + + pci:v00008086d00002831sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Aspire 5920G ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (Aspire 5920G) + + pci:v00008086d00002831sv00001028sd000001DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 745 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (OptiPlex 745) + + pci:v00008086d00002831sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (Inspiron 1420) + + pci:v00008086d00002831sv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (Compaq 6710b) + + pci:v00008086d00002831sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (Compaq 6910p) + + pci:v00008086d00002831sv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (Pavilion dv6700) + + pci:v00008086d00002831sv0000103Csd000030D9* +- ID_MODEL_FROM_DATABASE=Presario C700 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (Presario C700) + + pci:v00008086d00002831sv00001043sd000081EC* +- ID_MODEL_FROM_DATABASE=P5B ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (P5B) + + pci:v00008086d00002831sv0000104Dsd00009005* +- ID_MODEL_FROM_DATABASE=Vaio VGN-FZ260E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (Vaio VGN-FZ260E) + + pci:v00008086d00002831sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (VAIO VGN-NR120E) + + pci:v00008086d00002831sv00001462sd00007235* +- ID_MODEL_FROM_DATABASE=P965 Neo MS-7235 mainboard ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (P965 Neo MS-7235 mainboard) + + pci:v00008086d00002831sv000017AAsd000020AA* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (ThinkPad T61/R61) + + pci:v00008086d00002831sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (CCG-RUMBA) + + pci:v00008086d00002832* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 + + pci:v00008086d00002832sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Aspire 5920G ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (Aspire 5920G) + + pci:v00008086d00002832sv00001028sd000001DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 745 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (OptiPlex 745) + + pci:v00008086d00002832sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (Inspiron 1420) + + pci:v00008086d00002832sv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (Compaq 6710b) + + pci:v00008086d00002832sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (Compaq 6910p) + + pci:v00008086d00002832sv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (Pavilion dv6700) + + pci:v00008086d00002832sv0000103Csd000030D9* +- ID_MODEL_FROM_DATABASE=Presario C700 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (Presario C700) + + pci:v00008086d00002832sv00001043sd000081EC* +- ID_MODEL_FROM_DATABASE=P5B ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (P5B) + + pci:v00008086d00002832sv0000104Dsd00009005* +- ID_MODEL_FROM_DATABASE=Vaio VGN-FZ260E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (Vaio VGN-FZ260E) + + pci:v00008086d00002832sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (VAIO VGN-NR120E) + + pci:v00008086d00002832sv000017AAsd000020AA* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (ThinkPad T61/R61) + + pci:v00008086d00002832sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (CCG-RUMBA) + + pci:v00008086d00002833* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 + + pci:v00008086d00002833sv00001043sd000081EC* +- ID_MODEL_FROM_DATABASE=P5B ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (P5B) + + pci:v00008086d00002834* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 + + pci:v00008086d00002834sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Aspire 5920G ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (Aspire 5920G) + + pci:v00008086d00002834sv00001028sd000001DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 745 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (OptiPlex 745) + + pci:v00008086d00002834sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (Inspiron 1420) + + pci:v00008086d00002834sv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (Compaq 6710b) + + pci:v00008086d00002834sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (Compaq 6910p) + + pci:v00008086d00002834sv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (Pavilion dv6700) + + pci:v00008086d00002834sv00001043sd000081EC* +- ID_MODEL_FROM_DATABASE=P5B ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (P5B) + + pci:v00008086d00002834sv0000104Dsd00009005* +- ID_MODEL_FROM_DATABASE=Vaio VGN-FZ260E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (Vaio VGN-FZ260E) + + pci:v00008086d00002834sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (VAIO VGN-NR120E) + + pci:v00008086d00002834sv00001462sd00007235* +- ID_MODEL_FROM_DATABASE=P965 Neo MS-7235 mainboard ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (P965 Neo MS-7235 mainboard) + + pci:v00008086d00002834sv000017AAsd000020AA* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (ThinkPad T61/R61) + + pci:v00008086d00002834sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (CCG-RUMBA) + + pci:v00008086d00002835* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 + + pci:v00008086d00002835sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Acer Aspire 5920G ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (Acer Aspire 5920G) + + pci:v00008086d00002835sv00001028sd000001DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 745 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (OptiPlex 745) + + pci:v00008086d00002835sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (Inspiron 1420) + + pci:v00008086d00002835sv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (Compaq 6710b) + + pci:v00008086d00002835sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (Compaq 6910p) + + pci:v00008086d00002835sv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (Pavilion dv6700) + + pci:v00008086d00002835sv00001043sd000081EC* +- ID_MODEL_FROM_DATABASE=P5B ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (P5B) + + pci:v00008086d00002835sv0000104Dsd00009005* +- ID_MODEL_FROM_DATABASE=Vaio VGN-FZ260E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (Vaio VGN-FZ260E) + + pci:v00008086d00002835sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (VAIO VGN-NR120E) + + pci:v00008086d00002835sv000017AAsd000020AA* +- ID_MODEL_FROM_DATABASE=Thinkpad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (Thinkpad T61/R61) + + pci:v00008086d00002835sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (CCG-RUMBA) + + pci:v00008086d00002836* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 + + pci:v00008086d00002836sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Aspire 5920G ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (Aspire 5920G) + + pci:v00008086d00002836sv00001028sd000001DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 745 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (OptiPlex 745) + + pci:v00008086d00002836sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (Inspiron 1420) + + pci:v00008086d00002836sv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (Compaq 6710b) + + pci:v00008086d00002836sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (Compaq 6910p) + + pci:v00008086d00002836sv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (Pavilion dv6700) + + pci:v00008086d00002836sv0000103Csd000030D9* +- ID_MODEL_FROM_DATABASE=Presario C700 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (Presario C700) + + pci:v00008086d00002836sv00001043sd000081EC* +- ID_MODEL_FROM_DATABASE=P5B ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (P5B) + + pci:v00008086d00002836sv0000104Dsd00009005* +- ID_MODEL_FROM_DATABASE=Vaio VGN-FZ260E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (Vaio VGN-FZ260E) + + pci:v00008086d00002836sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (VAIO VGN-NR120E) + + pci:v00008086d00002836sv00001462sd00007235* +- ID_MODEL_FROM_DATABASE=P965 Neo MS-7235 mainboard ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (P965 Neo MS-7235 mainboard) + + pci:v00008086d00002836sv000017AAsd000020AB* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (ThinkPad T61/R61) + + pci:v00008086d00002836sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (CCG-RUMBA) + + pci:v00008086d0000283A* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 + + pci:v00008086d0000283Asv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Acer Aspire 5920G ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (Acer Aspire 5920G) + + pci:v00008086d0000283Asv00001028sd000001DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 745 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (OptiPlex 745) + + pci:v00008086d0000283Asv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (Inspiron 1420) + + pci:v00008086d0000283Asv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (Compaq 6710b) + + pci:v00008086d0000283Asv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (Compaq 6910p) + + pci:v00008086d0000283Asv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (Pavilion dv6700) + + pci:v00008086d0000283Asv00001043sd000081EC* +- ID_MODEL_FROM_DATABASE=P5B ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (P5B) + + pci:v00008086d0000283Asv0000104Dsd00009005* +- ID_MODEL_FROM_DATABASE=Vaio VGN-FZ260E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (Vaio VGN-FZ260E) + + pci:v00008086d0000283Asv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (VAIO VGN-NR120E) + + pci:v00008086d0000283Asv000017AAsd000020AB* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (ThinkPad T61/R61) + + pci:v00008086d0000283Asv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (CCG-RUMBA) + + pci:v00008086d0000283E* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller + + pci:v00008086d0000283Esv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Aspire 5920G ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (Aspire 5920G) + + pci:v00008086d0000283Esv00001028sd000001DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 745 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (OptiPlex 745) + + pci:v00008086d0000283Esv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (Inspiron 1420) + + pci:v00008086d0000283Esv0000103Csd000030D9* +- ID_MODEL_FROM_DATABASE=Presario C700 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (Presario C700) + + pci:v00008086d0000283Esv00001043sd000081EC* +- ID_MODEL_FROM_DATABASE=P5B ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (P5B) + + pci:v00008086d0000283Esv0000104Dsd00009005* +- ID_MODEL_FROM_DATABASE=Vaio VGN-FZ260E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (Vaio VGN-FZ260E) + + pci:v00008086d0000283Esv0000104Dsd00009008* +- ID_MODEL_FROM_DATABASE=Vaio VGN-SZ79SN_C ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (Vaio VGN-SZ79SN_C) + + pci:v00008086d0000283Esv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (VAIO VGN-NR120E) + + pci:v00008086d0000283Esv00001462sd00007235* +- ID_MODEL_FROM_DATABASE=P965 Neo MS-7235 mainboard ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (P965 Neo MS-7235 mainboard) + + pci:v00008086d0000283Esv000017AAsd000020A9* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (ThinkPad T61/R61) + + pci:v00008086d0000283Esv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (CCG-RUMBA) + + pci:v00008086d0000283F* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 1 + + pci:v00008086d0000283Fsv00001028sd000001DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 745 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 1 (OptiPlex 745) + + pci:v00008086d0000283Fsv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 1 (Compaq 6910p) + + pci:v00008086d0000283Fsv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 1 (VAIO VGN-NR120E) + + pci:v00008086d0000283Fsv000017AAsd000020AD* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 1 (ThinkPad T61/R61) + + pci:v00008086d00002841* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 2 + + pci:v00008086d00002841sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 2 (Compaq 6910p) + + pci:v00008086d00002841sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 2 (VAIO VGN-NR120E) + + pci:v00008086d00002841sv000017AAsd000020AD* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 2 (ThinkPad T61/R61) + + pci:v00008086d00002843* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 3 + + pci:v00008086d00002843sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 3 (VAIO VGN-NR120E) + + pci:v00008086d00002843sv000017AAsd000020AD* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 3 (ThinkPad T61/R61) + + pci:v00008086d00002845* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 4 + + pci:v00008086d00002845sv000017AAsd000020AD* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 4 (ThinkPad T61/R61) + + pci:v00008086d00002847* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 5 + + pci:v00008086d00002847sv00001028sd000001DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 745 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 5 (OptiPlex 745) + + pci:v00008086d00002847sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 5 (Compaq 6910p) + + pci:v00008086d00002847sv000017AAsd000020AD* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 5 (ThinkPad T61/R61) + + pci:v00008086d00002849* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 6 +@@ -65538,70 +65538,70 @@ pci:v00008086d0000284B* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller + + pci:v00008086d0000284Bsv00001025sd0000011F* +- ID_MODEL_FROM_DATABASE=Realtek ALC268 audio codec ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Realtek ALC268 audio codec) + + pci:v00008086d0000284Bsv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Aspire 5920G ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Aspire 5920G) + + pci:v00008086d0000284Bsv00001025sd00000145* +- ID_MODEL_FROM_DATABASE=Realtek ALC889 (Aspire 8920G w. Dolby Theather) ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Realtek ALC889 (Aspire 8920G w. Dolby Theather)) + + pci:v00008086d0000284Bsv00001028sd000001DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 745 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (OptiPlex 745) + + pci:v00008086d0000284Bsv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Inspiron 1420) + + pci:v00008086d0000284Bsv00001028sd000001F9* +- ID_MODEL_FROM_DATABASE=Dell Latitude D630 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Dell Latitude D630) + + pci:v00008086d0000284Bsv00001028sd000001FF* +- ID_MODEL_FROM_DATABASE=Dell Precision M4300 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Dell Precision M4300) + + pci:v00008086d0000284Bsv00001028sd00000256* +- ID_MODEL_FROM_DATABASE=Studio 1735 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Studio 1735) + + pci:v00008086d0000284Bsv0000103Csd00002802* +- ID_MODEL_FROM_DATABASE=HP Compaq dc7700p ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (HP Compaq dc7700p) + + pci:v00008086d0000284Bsv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Compaq 6710b) + + pci:v00008086d0000284Bsv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Compaq 6910p) + + pci:v00008086d0000284Bsv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Pavilion dv6700) + + pci:v00008086d0000284Bsv00001043sd00001339* +- ID_MODEL_FROM_DATABASE=Asus M51S series ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Asus M51S series) + + pci:v00008086d0000284Bsv00001043sd000081EC* +- ID_MODEL_FROM_DATABASE=P5B ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (P5B) + + pci:v00008086d0000284Bsv0000104Dsd00009005* +- ID_MODEL_FROM_DATABASE=Vaio VGN-FZ260E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Vaio VGN-FZ260E) + + pci:v00008086d0000284Bsv0000104Dsd00009008* +- ID_MODEL_FROM_DATABASE=Vaio VGN-SZ79SN_C ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Vaio VGN-SZ79SN_C) + + pci:v00008086d0000284Bsv0000104Dsd00009016* +- ID_MODEL_FROM_DATABASE=Sony VAIO VGN-AR51M ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Sony VAIO VGN-AR51M) + + pci:v00008086d0000284Bsv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (VAIO VGN-NR120E) + + pci:v00008086d0000284Bsv000014F1sd00005051* +- ID_MODEL_FROM_DATABASE=Presario C700 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Presario C700) + + pci:v00008086d0000284Bsv000017AAsd000020AC* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (ThinkPad T61/R61) + + pci:v00008086d0000284Bsv00008384sd00007616* +- ID_MODEL_FROM_DATABASE=Dell Vostro 1400 ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Dell Vostro 1400) + + pci:v00008086d0000284Bsv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (CCG-RUMBA) + + pci:v00008086d0000284F* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) Thermal Reporting Device +@@ -65610,34 +65610,34 @@ pci:v00008086d00002850* + ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller + + pci:v00008086d00002850sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Aspire 5920G ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (Aspire 5920G) + + pci:v00008086d00002850sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (Inspiron 1420) + + pci:v00008086d00002850sv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (Compaq 6710b) + + pci:v00008086d00002850sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (Compaq 6910p) + + pci:v00008086d00002850sv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (Pavilion dv6700) + + pci:v00008086d00002850sv0000103Csd000030D9* +- ID_MODEL_FROM_DATABASE=Presario C700 ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (Presario C700) + + pci:v00008086d00002850sv0000104Dsd00009005* +- ID_MODEL_FROM_DATABASE=Vaio VGN-FZ260E ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (Vaio VGN-FZ260E) + + pci:v00008086d00002850sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (VAIO VGN-NR120E) + + pci:v00008086d00002850sv000017AAsd000020A6* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (ThinkPad T61/R61) + + pci:v00008086d00002850sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (CCG-RUMBA) + + pci:v00008086d00002912* + ID_MODEL_FROM_DATABASE=82801IH (ICH9DH) LPC Interface Controller +@@ -65646,40 +65646,40 @@ pci:v00008086d00002914* + ID_MODEL_FROM_DATABASE=82801IO (ICH9DO) LPC Interface Controller + + pci:v00008086d00002914sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801IO (ICH9DO) LPC Interface Controller (Optiplex 755) + + pci:v00008086d00002916* + ID_MODEL_FROM_DATABASE=82801IR (ICH9R) LPC Interface Controller + + pci:v00008086d00002916sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801IR (ICH9R) LPC Interface Controller (Inspiron 530) + + pci:v00008086d00002916sv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=82801IR (ICH9R) LPC Interface Controller (Asus IPIBL-LB Motherboard) + + pci:v00008086d00002916sv00001043sd00008277* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801IR (ICH9R) LPC Interface Controller (P5K PRO Motherboard) + + pci:v00008086d00002916sv00008086sd00005044* +- ID_MODEL_FROM_DATABASE=Desktop Board DP35DP ++ ID_MODEL_FROM_DATABASE=82801IR (ICH9R) LPC Interface Controller (Desktop Board DP35DP) + + pci:v00008086d00002917* + ID_MODEL_FROM_DATABASE=ICH9M-E LPC Interface Controller + + pci:v00008086d00002917sv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=ICH9M-E LPC Interface Controller (CCM-BOOGIE) + + pci:v00008086d00002918* + ID_MODEL_FROM_DATABASE=82801IB (ICH9) LPC Interface Controller + + pci:v00008086d00002918sv00001028sd00000236* +- ID_MODEL_FROM_DATABASE=PowerEdge R610 82801IB (ICH9) LPC Interface Controller ++ ID_MODEL_FROM_DATABASE=82801IB (ICH9) LPC Interface Controller (PowerEdge R610 82801IB (ICH9) LPC Interface Controller) + + pci:v00008086d00002918sv00001462sd00007360* +- ID_MODEL_FROM_DATABASE=G33/P35 Neo ++ ID_MODEL_FROM_DATABASE=82801IB (ICH9) LPC Interface Controller (G33/P35 Neo) + + pci:v00008086d00002918sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82801IB (ICH9) LPC Interface Controller (QEMU Virtual Machine) + + pci:v00008086d00002919* + ID_MODEL_FROM_DATABASE=ICH9M LPC Interface Controller +@@ -65688,46 +65688,46 @@ pci:v00008086d00002920* + ID_MODEL_FROM_DATABASE=82801IR/IO/IH (ICH9R/DO/DH) 4 port SATA Controller [IDE mode] + + pci:v00008086d00002920sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801IR/IO/IH (ICH9R/DO/DH) 4 port SATA Controller [IDE mode] (Inspiron 530) + + pci:v00008086d00002920sv00001028sd0000020F* +- ID_MODEL_FROM_DATABASE=PowerEdge R300 onboard SATA Controller ++ ID_MODEL_FROM_DATABASE=82801IR/IO/IH (ICH9R/DO/DH) 4 port SATA Controller [IDE mode] (PowerEdge R300 onboard SATA Controller) + + pci:v00008086d00002920sv00001028sd00000210* +- ID_MODEL_FROM_DATABASE=PowerEdge T300 onboard SATA Controller ++ ID_MODEL_FROM_DATABASE=82801IR/IO/IH (ICH9R/DO/DH) 4 port SATA Controller [IDE mode] (PowerEdge T300 onboard SATA Controller) + + pci:v00008086d00002920sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801IR/IO/IH (ICH9R/DO/DH) 4 port SATA Controller [IDE mode] (Optiplex 755) + + pci:v00008086d00002920sv00001028sd0000023C* +- ID_MODEL_FROM_DATABASE=PowerEdge R200 onboard SATA Controller ++ ID_MODEL_FROM_DATABASE=82801IR/IO/IH (ICH9R/DO/DH) 4 port SATA Controller [IDE mode] (PowerEdge R200 onboard SATA Controller) + + pci:v00008086d00002920sv00001043sd00008277* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801IR/IO/IH (ICH9R/DO/DH) 4 port SATA Controller [IDE mode] (P5K PRO Motherboard) + + pci:v00008086d00002921* + ID_MODEL_FROM_DATABASE=82801IB (ICH9) 2 port SATA Controller [IDE mode] + + pci:v00008086d00002921sv00001028sd00000235* +- ID_MODEL_FROM_DATABASE=PowerEdge R710 SATA IDE Controller ++ ID_MODEL_FROM_DATABASE=82801IB (ICH9) 2 port SATA Controller [IDE mode] (PowerEdge R710 SATA IDE Controller) + + pci:v00008086d00002921sv00001028sd00000236* +- ID_MODEL_FROM_DATABASE=PowerEdge R610 SATA IDE Controller ++ ID_MODEL_FROM_DATABASE=82801IB (ICH9) 2 port SATA Controller [IDE mode] (PowerEdge R610 SATA IDE Controller) + + pci:v00008086d00002921sv00001028sd00000237* +- ID_MODEL_FROM_DATABASE=PowerEdge T610 SATA IDE Controller ++ ID_MODEL_FROM_DATABASE=82801IB (ICH9) 2 port SATA Controller [IDE mode] (PowerEdge T610 SATA IDE Controller) + + pci:v00008086d00002921sv00001462sd00007360* +- ID_MODEL_FROM_DATABASE=G33/P35 Neo ++ ID_MODEL_FROM_DATABASE=82801IB (ICH9) 2 port SATA Controller [IDE mode] (G33/P35 Neo) + + pci:v00008086d00002922* + ID_MODEL_FROM_DATABASE=82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA Controller [AHCI mode] + + pci:v00008086d00002922sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA Controller [AHCI mode] (QEMU Virtual Machine) + + pci:v00008086d00002922sv00008086sd00005044* +- ID_MODEL_FROM_DATABASE=Desktop Board DP35DP ++ ID_MODEL_FROM_DATABASE=82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA Controller [AHCI mode] (Desktop Board DP35DP) + + pci:v00008086d00002923* + ID_MODEL_FROM_DATABASE=82801IB (ICH9) 4 port SATA Controller [AHCI mode] +@@ -65736,31 +65736,31 @@ pci:v00008086d00002925* + ID_MODEL_FROM_DATABASE=82801IR/IO (ICH9R/DO) SATA Controller [RAID mode] + + pci:v00008086d00002925sv00001734sd000010E0* +- ID_MODEL_FROM_DATABASE=System Board D2542 ++ ID_MODEL_FROM_DATABASE=82801IR/IO (ICH9R/DO) SATA Controller [RAID mode] (System Board D2542) + + pci:v00008086d00002925sv00008086sd00002925* +- ID_MODEL_FROM_DATABASE=System Board D2542 ++ ID_MODEL_FROM_DATABASE=82801IR/IO (ICH9R/DO) SATA Controller [RAID mode] (System Board D2542) + + pci:v00008086d00002926* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) 2 port SATA Controller [IDE mode] + + pci:v00008086d00002926sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) 2 port SATA Controller [IDE mode] (Inspiron 530) + + pci:v00008086d00002926sv00001028sd0000020F* +- ID_MODEL_FROM_DATABASE=PowerEdge R300 onboard SATA Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) 2 port SATA Controller [IDE mode] (PowerEdge R300 onboard SATA Controller) + + pci:v00008086d00002926sv00001028sd00000210* +- ID_MODEL_FROM_DATABASE=PowerEdge T300 onboard SATA Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) 2 port SATA Controller [IDE mode] (PowerEdge T300 onboard SATA Controller) + + pci:v00008086d00002926sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) 2 port SATA Controller [IDE mode] (Optiplex 755) + + pci:v00008086d00002926sv00001043sd00008277* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) 2 port SATA Controller [IDE mode] (P5K PRO Motherboard) + + pci:v00008086d00002926sv00001462sd00007360* +- ID_MODEL_FROM_DATABASE=G33/P35 Neo ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) 2 port SATA Controller [IDE mode] (G33/P35 Neo) + + pci:v00008086d00002928* + ID_MODEL_FROM_DATABASE=82801IBM/IEM (ICH9M/ICH9M-E) 2 port SATA Controller [IDE mode] +@@ -65769,10 +65769,10 @@ pci:v00008086d00002929* + ID_MODEL_FROM_DATABASE=82801IBM/IEM (ICH9M/ICH9M-E) 4 port SATA Controller [AHCI mode] + + pci:v00008086d00002929sv0000103Csd00003628* +- ID_MODEL_FROM_DATABASE=dv6-1190en ++ ID_MODEL_FROM_DATABASE=82801IBM/IEM (ICH9M/ICH9M-E) 4 port SATA Controller [AHCI mode] (dv6-1190en) + + pci:v00008086d00002929sv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=82801IBM/IEM (ICH9M/ICH9M-E) 4 port SATA Controller [AHCI mode] (CCM-BOOGIE) + + pci:v00008086d0000292C* + ID_MODEL_FROM_DATABASE=82801IEM (ICH9M-E) SATA Controller [RAID mode] +@@ -65781,511 +65781,511 @@ pci:v00008086d0000292D* + ID_MODEL_FROM_DATABASE=82801IBM/IEM (ICH9M/ICH9M-E) 2 port SATA Controller [IDE mode] + + pci:v00008086d0000292Dsv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=82801IBM/IEM (ICH9M/ICH9M-E) 2 port SATA Controller [IDE mode] (CCM-BOOGIE) + + pci:v00008086d00002930* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) SMBus Controller + + pci:v00008086d00002930sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) SMBus Controller (Inspiron 530) + + pci:v00008086d00002930sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) SMBus Controller (Optiplex 755) + + pci:v00008086d00002930sv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) SMBus Controller (Asus IPIBL-LB Motherboard) + + pci:v00008086d00002930sv0000103Csd00003628* +- ID_MODEL_FROM_DATABASE=dv6-1190en ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) SMBus Controller (dv6-1190en) + + pci:v00008086d00002930sv00001043sd00008277* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) SMBus Controller (P5K PRO Motherboard) + + pci:v00008086d00002930sv00001462sd00007360* +- ID_MODEL_FROM_DATABASE=G33/P35 Neo ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) SMBus Controller (G33/P35 Neo) + + pci:v00008086d00002930sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) SMBus Controller (QEMU Virtual Machine) + + pci:v00008086d00002930sv00008086sd00005044* +- ID_MODEL_FROM_DATABASE=Desktop Board DP35DP ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) SMBus Controller (Desktop Board DP35DP) + + pci:v00008086d00002930sv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) SMBus Controller (CCM-BOOGIE) + + pci:v00008086d00002932* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) Thermal Subsystem + + pci:v00008086d00002932sv0000103Csd00003628* +- ID_MODEL_FROM_DATABASE=dv6-1190en ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) Thermal Subsystem (dv6-1190en) + + pci:v00008086d00002934* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 + + pci:v00008086d00002934sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (Inspiron 530) + + pci:v00008086d00002934sv00001028sd0000020F* +- ID_MODEL_FROM_DATABASE=PowerEdge R300 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (PowerEdge R300 onboard UHCI) + + pci:v00008086d00002934sv00001028sd00000210* +- ID_MODEL_FROM_DATABASE=PowerEdge T300 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (PowerEdge T300 onboard UHCI) + + pci:v00008086d00002934sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (Optiplex 755) + + pci:v00008086d00002934sv00001028sd00000235* +- ID_MODEL_FROM_DATABASE=PowerEdge R710 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (PowerEdge R710 USB UHCI Controller) + + pci:v00008086d00002934sv00001028sd00000236* +- ID_MODEL_FROM_DATABASE=PowerEdge R610 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (PowerEdge R610 USB UHCI Controller) + + pci:v00008086d00002934sv00001028sd00000237* +- ID_MODEL_FROM_DATABASE=PowerEdge T610 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (PowerEdge T610 USB UHCI Controller) + + pci:v00008086d00002934sv00001028sd0000023C* +- ID_MODEL_FROM_DATABASE=PowerEdge R200 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (PowerEdge R200 onboard UHCI) + + pci:v00008086d00002934sv00001028sd00000287* +- ID_MODEL_FROM_DATABASE=PowerEdge M610 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (PowerEdge M610 onboard UHCI) + + pci:v00008086d00002934sv00001028sd0000029C* +- ID_MODEL_FROM_DATABASE=PowerEdge M710 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (PowerEdge M710 USB UHCI Controller) + + pci:v00008086d00002934sv00001028sd00002011* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (Optiplex 755) + + pci:v00008086d00002934sv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (Asus IPIBL-LB Motherboard) + + pci:v00008086d00002934sv00001043sd00008277* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (P5K PRO Motherboard) + + pci:v00008086d00002934sv00001462sd00007360* +- ID_MODEL_FROM_DATABASE=G33/P35 Neo ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (G33/P35 Neo) + + pci:v00008086d00002934sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (QEMU Virtual Machine) + + pci:v00008086d00002934sv00008086sd00005044* +- ID_MODEL_FROM_DATABASE=Desktop Board DP35DP ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (Desktop Board DP35DP) + + pci:v00008086d00002934sv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #1 (CCM-BOOGIE) + + pci:v00008086d00002935* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 + + pci:v00008086d00002935sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 (Inspiron 530) + + pci:v00008086d00002935sv00001028sd0000020F* +- ID_MODEL_FROM_DATABASE=PowerEdge R300 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 (PowerEdge R300 onboard UHCI) + + pci:v00008086d00002935sv00001028sd00000210* +- ID_MODEL_FROM_DATABASE=PowerEdge T300 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 (PowerEdge T300 onboard UHCI) + + pci:v00008086d00002935sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 (Optiplex 755) + + pci:v00008086d00002935sv00001028sd00000235* +- ID_MODEL_FROM_DATABASE=PowerEdge R710 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 (PowerEdge R710 USB UHCI Controller) + + pci:v00008086d00002935sv00001028sd00000236* +- ID_MODEL_FROM_DATABASE=PowerEdge R610 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 (PowerEdge R610 USB UHCI Controller) + + pci:v00008086d00002935sv00001028sd00000237* +- ID_MODEL_FROM_DATABASE=PowerEdge T610 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 (PowerEdge T610 USB UHCI Controller) + + pci:v00008086d00002935sv00001028sd0000023C* +- ID_MODEL_FROM_DATABASE=PowerEdge R200 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 (PowerEdge R200 onboard UHCI) + + pci:v00008086d00002935sv00001028sd00000287* +- ID_MODEL_FROM_DATABASE=PowerEdge M610 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 (PowerEdge M610 onboard UHCI) + + pci:v00008086d00002935sv00001028sd0000029C* +- ID_MODEL_FROM_DATABASE=PowerEdge M710 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 (PowerEdge M710 USB UHCI Controller) + + pci:v00008086d00002935sv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 (Asus IPIBL-LB Motherboard) + + pci:v00008086d00002935sv00001043sd00008277* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 (P5K PRO Motherboard) + + pci:v00008086d00002935sv00001462sd00007360* +- ID_MODEL_FROM_DATABASE=G33/P35 Neo ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 (G33/P35 Neo) + + pci:v00008086d00002935sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 (QEMU Virtual Machine) + + pci:v00008086d00002935sv00008086sd00005044* +- ID_MODEL_FROM_DATABASE=Desktop Board DP35DP ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 (Desktop Board DP35DP) + + pci:v00008086d00002935sv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #2 (CCM-BOOGIE) + + pci:v00008086d00002936* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #3 + + pci:v00008086d00002936sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #3 (Inspiron 530) + + pci:v00008086d00002936sv00001028sd0000020F* +- ID_MODEL_FROM_DATABASE=PowerEdge R300 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #3 (PowerEdge R300 onboard UHCI) + + pci:v00008086d00002936sv00001028sd00000210* +- ID_MODEL_FROM_DATABASE=PowerEdge T300 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #3 (PowerEdge T300 onboard UHCI) + + pci:v00008086d00002936sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #3 (Optiplex 755) + + pci:v00008086d00002936sv00001028sd00000237* +- ID_MODEL_FROM_DATABASE=PowerEdge T610 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #3 (PowerEdge T610 USB UHCI Controller) + + pci:v00008086d00002936sv00001028sd0000023C* +- ID_MODEL_FROM_DATABASE=PowerEdge R200 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #3 (PowerEdge R200 onboard UHCI) + + pci:v00008086d00002936sv00001028sd00000287* +- ID_MODEL_FROM_DATABASE=PowerEdge M610 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #3 (PowerEdge M610 onboard UHCI) + + pci:v00008086d00002936sv00001028sd0000029C* +- ID_MODEL_FROM_DATABASE=PowerEdge M710 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #3 (PowerEdge M710 USB UHCI Controller) + + pci:v00008086d00002936sv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #3 (Asus IPIBL-LB Motherboard) + + pci:v00008086d00002936sv00001043sd00008277* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #3 (P5K PRO Motherboard) + + pci:v00008086d00002936sv00001462sd00007360* +- ID_MODEL_FROM_DATABASE=G33/P35 Neo ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #3 (G33/P35 Neo) + + pci:v00008086d00002936sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #3 (QEMU Virtual Machine) + + pci:v00008086d00002936sv00008086sd00005044* +- ID_MODEL_FROM_DATABASE=Desktop Board DP35DP ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #3 (Desktop Board DP35DP) + + pci:v00008086d00002936sv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #3 (CCM-BOOGIE) + + pci:v00008086d00002937* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 + + pci:v00008086d00002937sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 (Inspiron 530) + + pci:v00008086d00002937sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 (Optiplex 755) + + pci:v00008086d00002937sv00001028sd00000235* +- ID_MODEL_FROM_DATABASE=PowerEdge R710 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 (PowerEdge R710 USB UHCI Controller) + + pci:v00008086d00002937sv00001028sd00000236* +- ID_MODEL_FROM_DATABASE=PowerEdge R610 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 (PowerEdge R610 USB UHCI Controller) + + pci:v00008086d00002937sv00001028sd00000237* +- ID_MODEL_FROM_DATABASE=PowerEdge T610 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 (PowerEdge T610 USB UHCI Controller) + + pci:v00008086d00002937sv00001028sd00000287* +- ID_MODEL_FROM_DATABASE=PowerEdge M610 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 (PowerEdge M610 onboard UHCI) + + pci:v00008086d00002937sv00001028sd0000029C* +- ID_MODEL_FROM_DATABASE=PowerEdge M710 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 (PowerEdge M710 USB UHCI Controller) + + pci:v00008086d00002937sv00001028sd00002011* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 (Optiplex 755) + + pci:v00008086d00002937sv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 (Asus IPIBL-LB Motherboard) + + pci:v00008086d00002937sv00001043sd00008277* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 (P5K PRO Motherboard) + + pci:v00008086d00002937sv00001462sd00007360* +- ID_MODEL_FROM_DATABASE=G33/P35 Neo ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 (G33/P35 Neo) + + pci:v00008086d00002937sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 (QEMU Virtual Machine) + + pci:v00008086d00002937sv00008086sd00002937* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 (Optiplex 755) + + pci:v00008086d00002937sv00008086sd00002942* +- ID_MODEL_FROM_DATABASE=828011 (ICH9 Family ) USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 (828011 (ICH9 Family ) USB UHCI Controller) + + pci:v00008086d00002937sv00008086sd00005044* +- ID_MODEL_FROM_DATABASE=Desktop Board DP35DP ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 (Desktop Board DP35DP) + + pci:v00008086d00002937sv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #4 (CCM-BOOGIE) + + pci:v00008086d00002938* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #5 + + pci:v00008086d00002938sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #5 (Inspiron 530) + + pci:v00008086d00002938sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #5 (Optiplex 755) + + pci:v00008086d00002938sv00001028sd00000235* +- ID_MODEL_FROM_DATABASE=PowerEdge R710 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #5 (PowerEdge R710 USB UHCI Controller) + + pci:v00008086d00002938sv00001028sd00000236* +- ID_MODEL_FROM_DATABASE=PowerEdge R610 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #5 (PowerEdge R610 USB UHCI Controller) + + pci:v00008086d00002938sv00001028sd00000237* +- ID_MODEL_FROM_DATABASE=PowerEdge T610 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #5 (PowerEdge T610 USB UHCI Controller) + + pci:v00008086d00002938sv00001028sd00000287* +- ID_MODEL_FROM_DATABASE=PowerEdge M610 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #5 (PowerEdge M610 onboard UHCI) + + pci:v00008086d00002938sv00001028sd0000029C* +- ID_MODEL_FROM_DATABASE=PowerEdge M710 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #5 (PowerEdge M710 USB UHCI Controller) + + pci:v00008086d00002938sv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #5 (Asus IPIBL-LB Motherboard) + + pci:v00008086d00002938sv00001043sd00008277* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #5 (P5K PRO Motherboard) + + pci:v00008086d00002938sv00001462sd00007360* +- ID_MODEL_FROM_DATABASE=G33/P35 Neo ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #5 (G33/P35 Neo) + + pci:v00008086d00002938sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #5 (QEMU Virtual Machine) + + pci:v00008086d00002938sv00008086sd00002938* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #5 (Optiplex 755) + + pci:v00008086d00002938sv00008086sd00005044* +- ID_MODEL_FROM_DATABASE=Desktop Board DP35DP ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #5 (Desktop Board DP35DP) + + pci:v00008086d00002938sv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #5 (CCM-BOOGIE) + + pci:v00008086d00002939* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #6 + + pci:v00008086d00002939sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #6 (Inspiron 530) + + pci:v00008086d00002939sv00001028sd00000210* +- ID_MODEL_FROM_DATABASE=PowerEdge T300 onboard UHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #6 (PowerEdge T300 onboard UHCI) + + pci:v00008086d00002939sv00001028sd00000237* +- ID_MODEL_FROM_DATABASE=PowerEdge T610 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #6 (PowerEdge T610 USB UHCI Controller) + + pci:v00008086d00002939sv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #6 (Asus IPIBL-LB Motherboard) + + pci:v00008086d00002939sv00001043sd00008277* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #6 (P5K PRO Motherboard) + + pci:v00008086d00002939sv00001462sd00007360* +- ID_MODEL_FROM_DATABASE=G33/P35 Neo ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #6 (G33/P35 Neo) + + pci:v00008086d00002939sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #6 (QEMU Virtual Machine) + + pci:v00008086d00002939sv00008086sd00005044* +- ID_MODEL_FROM_DATABASE=Desktop Board DP35DP ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #6 (Desktop Board DP35DP) + + pci:v00008086d00002939sv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB UHCI Controller #6 (CCM-BOOGIE) + + pci:v00008086d0000293A* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 + + pci:v00008086d0000293Asv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 (Inspiron 530) + + pci:v00008086d0000293Asv00001028sd0000020F* +- ID_MODEL_FROM_DATABASE=PowerEdge R300 onboard EHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 (PowerEdge R300 onboard EHCI) + + pci:v00008086d0000293Asv00001028sd00000210* +- ID_MODEL_FROM_DATABASE=PowerEdge T300 onboard EHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 (PowerEdge T300 onboard EHCI) + + pci:v00008086d0000293Asv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 (Optiplex 755) + + pci:v00008086d0000293Asv00001028sd00000235* +- ID_MODEL_FROM_DATABASE=PowerEdge R710 USB EHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 (PowerEdge R710 USB EHCI Controller) + + pci:v00008086d0000293Asv00001028sd00000236* +- ID_MODEL_FROM_DATABASE=PowerEdge R610 USB EHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 (PowerEdge R610 USB EHCI Controller) + + pci:v00008086d0000293Asv00001028sd00000237* +- ID_MODEL_FROM_DATABASE=PowerEdge T610 USB EHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 (PowerEdge T610 USB EHCI Controller) + + pci:v00008086d0000293Asv00001028sd0000023C* +- ID_MODEL_FROM_DATABASE=PowerEdge R200 onboard EHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 (PowerEdge R200 onboard EHCI) + + pci:v00008086d0000293Asv00001028sd00000287* +- ID_MODEL_FROM_DATABASE=PowerEdge M610 onboard EHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 (PowerEdge M610 onboard EHCI) + + pci:v00008086d0000293Asv00001028sd0000029C* +- ID_MODEL_FROM_DATABASE=PowerEdge M710 USB EHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 (PowerEdge M710 USB EHCI Controller) + + pci:v00008086d0000293Asv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 (Asus IPIBL-LB Motherboard) + + pci:v00008086d0000293Asv00001043sd00008277* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 (P5K PRO Motherboard) + + pci:v00008086d0000293Asv00001462sd00007360* +- ID_MODEL_FROM_DATABASE=G33/P35 Neo ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 (G33/P35 Neo) + + pci:v00008086d0000293Asv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 (QEMU Virtual Machine) + + pci:v00008086d0000293Asv00008086sd00005044* +- ID_MODEL_FROM_DATABASE=Desktop Board DP35DP ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 (Desktop Board DP35DP) + + pci:v00008086d0000293Asv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #1 (CCM-BOOGIE) + + pci:v00008086d0000293C* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #2 + + pci:v00008086d0000293Csv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #2 (Inspiron 530) + + pci:v00008086d0000293Csv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #2 (Optiplex 755) + + pci:v00008086d0000293Csv00001028sd00000235* +- ID_MODEL_FROM_DATABASE=PowerEdge R710 USB EHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #2 (PowerEdge R710 USB EHCI Controller) + + pci:v00008086d0000293Csv00001028sd00000236* +- ID_MODEL_FROM_DATABASE=PowerEdge R610 USB EHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #2 (PowerEdge R610 USB EHCI Controller) + + pci:v00008086d0000293Csv00001028sd00000237* +- ID_MODEL_FROM_DATABASE=PowerEdge T610 USB EHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #2 (PowerEdge T610 USB EHCI Controller) + + pci:v00008086d0000293Csv00001028sd00000287* +- ID_MODEL_FROM_DATABASE=PowerEdge M610 onboard EHCI ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #2 (PowerEdge M610 onboard EHCI) + + pci:v00008086d0000293Csv00001028sd0000029C* +- ID_MODEL_FROM_DATABASE=PowerEdge M710 USB EHCI Controller ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #2 (PowerEdge M710 USB EHCI Controller) + + pci:v00008086d0000293Csv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #2 (Asus IPIBL-LB Motherboard) + + pci:v00008086d0000293Csv00001043sd00008277* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #2 (P5K PRO Motherboard) + + pci:v00008086d0000293Csv00001462sd00007360* +- ID_MODEL_FROM_DATABASE=G33/P35 Neo ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #2 (G33/P35 Neo) + + pci:v00008086d0000293Csv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #2 (QEMU Virtual Machine) + + pci:v00008086d0000293Csv00008086sd0000293C* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #2 (Optiplex 755) + + pci:v00008086d0000293Csv00008086sd00005044* +- ID_MODEL_FROM_DATABASE=Desktop Board DP35DP ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #2 (Desktop Board DP35DP) + + pci:v00008086d0000293Csv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) USB2 EHCI Controller #2 (CCM-BOOGIE) + + pci:v00008086d0000293E* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) HD Audio Controller + + pci:v00008086d0000293Esv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) HD Audio Controller (Inspiron 530) + + pci:v00008086d0000293Esv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) HD Audio Controller (Optiplex 755) + + pci:v00008086d0000293Esv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) HD Audio Controller (Asus IPIBL-LB Motherboard) + + pci:v00008086d0000293Esv0000103Csd00003628* +- ID_MODEL_FROM_DATABASE=dv6-1190en ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) HD Audio Controller (dv6-1190en) + + pci:v00008086d0000293Esv00001043sd0000829F* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) HD Audio Controller (P5K PRO Motherboard) + + pci:v00008086d0000293Esv00001462sd00007360* +- ID_MODEL_FROM_DATABASE=G33/P35 Neo ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) HD Audio Controller (G33/P35 Neo) + + pci:v00008086d0000293Esv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) HD Audio Controller (QEMU Virtual Machine) + + pci:v00008086d0000293Esv00008086sd0000293E* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) HD Audio Controller (Optiplex 755) + + pci:v00008086d0000293Esv00008086sd00002940* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) HD Audio Controller (Optiplex 755) + + pci:v00008086d0000293Esv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) HD Audio Controller (CCM-BOOGIE) + + pci:v00008086d00002940* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 1 + + pci:v00008086d00002940sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 1 (Inspiron 530) + + pci:v00008086d00002940sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 1 (Optiplex 755) + + pci:v00008086d00002940sv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 1 (Asus IPIBL-LB Motherboard) + + pci:v00008086d00002940sv00001043sd00008277* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 1 (P5K PRO Motherboard) + + pci:v00008086d00002940sv00008086sd00002940* +- ID_MODEL_FROM_DATABASE=Optiplex 755 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 1 (Optiplex 755) + + pci:v00008086d00002942* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 2 + + pci:v00008086d00002942sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 2 (Inspiron 530) + + pci:v00008086d00002944* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 3 + + pci:v00008086d00002944sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 3 (Inspiron 530) + + pci:v00008086d00002944sv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 3 (Asus IPIBL-LB Motherboard) + + pci:v00008086d00002946* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 4 + + pci:v00008086d00002946sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 4 (Inspiron 530) + + pci:v00008086d00002948* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 5 + + pci:v00008086d00002948sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 5 (Inspiron 530) + + pci:v00008086d00002948sv00001043sd00008277* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 5 (P5K PRO Motherboard) + + pci:v00008086d0000294A* + ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 6 + + pci:v00008086d0000294Asv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 6 (Inspiron 530) + + pci:v00008086d0000294Asv00001043sd00008277* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82801I (ICH9 Family) PCI Express Port 6 (P5K PRO Motherboard) + + pci:v00008086d0000294C* + ID_MODEL_FROM_DATABASE=82566DC-2 Gigabit Network Connection + + pci:v00008086d0000294Csv000017AAsd0000302E* +- ID_MODEL_FROM_DATABASE=82566DM-2 Gigabit Network Connection ++ ID_MODEL_FROM_DATABASE=82566DC-2 Gigabit Network Connection (82566DM-2 Gigabit Network Connection) + + pci:v00008086d00002970* + ID_MODEL_FROM_DATABASE=82946GZ/PL/GL Memory Controller Hub +@@ -66330,7 +66330,7 @@ pci:v00008086d00002990* + ID_MODEL_FROM_DATABASE=82Q963/Q965 Memory Controller Hub + + pci:v00008086d00002990sv00001028sd000001DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 745 ++ ID_MODEL_FROM_DATABASE=82Q963/Q965 Memory Controller Hub (OptiPlex 745) + + pci:v00008086d00002991* + ID_MODEL_FROM_DATABASE=82Q963/Q965 PCI Express Root Port +@@ -66357,10 +66357,10 @@ pci:v00008086d000029A0* + ID_MODEL_FROM_DATABASE=82P965/G965 Memory Controller Hub + + pci:v00008086d000029A0sv00001043sd000081EA* +- ID_MODEL_FROM_DATABASE=P5B ++ ID_MODEL_FROM_DATABASE=82P965/G965 Memory Controller Hub (P5B) + + pci:v00008086d000029A0sv00001462sd00007276* +- ID_MODEL_FROM_DATABASE=MS-7276 [G965MDH] ++ ID_MODEL_FROM_DATABASE=82P965/G965 Memory Controller Hub (MS-7276 [G965MDH]) + + pci:v00008086d000029A1* + ID_MODEL_FROM_DATABASE=82P965/G965 PCI Express Root Port +@@ -66369,7 +66369,7 @@ pci:v00008086d000029A2* + ID_MODEL_FROM_DATABASE=82G965 Integrated Graphics Controller + + pci:v00008086d000029A2sv00001462sd00007276* +- ID_MODEL_FROM_DATABASE=MS-7276 [G965MDH] ++ ID_MODEL_FROM_DATABASE=82G965 Integrated Graphics Controller (MS-7276 [G965MDH]) + + pci:v00008086d000029A3* + ID_MODEL_FROM_DATABASE=82G965 Integrated Graphics Controller +@@ -66390,31 +66390,31 @@ pci:v00008086d000029B0* + ID_MODEL_FROM_DATABASE=82Q35 Express DRAM Controller + + pci:v00008086d000029B0sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=OptiPlex 755 ++ ID_MODEL_FROM_DATABASE=82Q35 Express DRAM Controller (OptiPlex 755) + + pci:v00008086d000029B1* + ID_MODEL_FROM_DATABASE=82Q35 Express PCI Express Root Port + + pci:v00008086d000029B1sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=OptiPlex 755 ++ ID_MODEL_FROM_DATABASE=82Q35 Express PCI Express Root Port (OptiPlex 755) + + pci:v00008086d000029B2* + ID_MODEL_FROM_DATABASE=82Q35 Express Integrated Graphics Controller + + pci:v00008086d000029B2sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=OptiPlex 755 ++ ID_MODEL_FROM_DATABASE=82Q35 Express Integrated Graphics Controller (OptiPlex 755) + + pci:v00008086d000029B3* + ID_MODEL_FROM_DATABASE=82Q35 Express Integrated Graphics Controller + + pci:v00008086d000029B3sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=OptiPlex 755 ++ ID_MODEL_FROM_DATABASE=82Q35 Express Integrated Graphics Controller (OptiPlex 755) + + pci:v00008086d000029B4* + ID_MODEL_FROM_DATABASE=82Q35 Express MEI Controller + + pci:v00008086d000029B4sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=OptiPlex 755 ++ ID_MODEL_FROM_DATABASE=82Q35 Express MEI Controller (OptiPlex 755) + + pci:v00008086d000029B5* + ID_MODEL_FROM_DATABASE=82Q35 Express MEI Controller +@@ -66423,70 +66423,70 @@ pci:v00008086d000029B6* + ID_MODEL_FROM_DATABASE=82Q35 Express PT IDER Controller + + pci:v00008086d000029B6sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=OptiPlex 755 ++ ID_MODEL_FROM_DATABASE=82Q35 Express PT IDER Controller (OptiPlex 755) + + pci:v00008086d000029B7* + ID_MODEL_FROM_DATABASE=82Q35 Express Serial KT Controller + + pci:v00008086d000029B7sv00001028sd00000211* +- ID_MODEL_FROM_DATABASE=OptiPlex 755 ++ ID_MODEL_FROM_DATABASE=82Q35 Express Serial KT Controller (OptiPlex 755) + + pci:v00008086d000029C0* + ID_MODEL_FROM_DATABASE=82G33/G31/P35/P31 Express DRAM Controller + + pci:v00008086d000029C0sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82G33/G31/P35/P31 Express DRAM Controller (Inspiron 530) + + pci:v00008086d000029C0sv0000103Csd00002A6F* +- ID_MODEL_FROM_DATABASE=Asus IPIBL-LB Motherboard ++ ID_MODEL_FROM_DATABASE=82G33/G31/P35/P31 Express DRAM Controller (Asus IPIBL-LB Motherboard) + + pci:v00008086d000029C0sv00001043sd00008276* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82G33/G31/P35/P31 Express DRAM Controller (P5K PRO Motherboard) + + pci:v00008086d000029C0sv00001043sd000082B0* +- ID_MODEL_FROM_DATABASE=P5KPL-VM Motherboard ++ ID_MODEL_FROM_DATABASE=82G33/G31/P35/P31 Express DRAM Controller (P5KPL-VM Motherboard) + + pci:v00008086d000029C0sv00001462sd00007360* +- ID_MODEL_FROM_DATABASE=G33/P35 Neo ++ ID_MODEL_FROM_DATABASE=82G33/G31/P35/P31 Express DRAM Controller (G33/P35 Neo) + + pci:v00008086d000029C0sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82G33/G31/P35/P31 Express DRAM Controller (QEMU Virtual Machine) + + pci:v00008086d000029C0sv00008086sd00005044* +- ID_MODEL_FROM_DATABASE=Desktop Board DP35DP ++ ID_MODEL_FROM_DATABASE=82G33/G31/P35/P31 Express DRAM Controller (Desktop Board DP35DP) + + pci:v00008086d000029C1* + ID_MODEL_FROM_DATABASE=82G33/G31/P35/P31 Express PCI Express Root Port + + pci:v00008086d000029C1sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82G33/G31/P35/P31 Express PCI Express Root Port (Inspiron 530) + + pci:v00008086d000029C1sv00001043sd00008276* +- ID_MODEL_FROM_DATABASE=P5K PRO Motherboard ++ ID_MODEL_FROM_DATABASE=82G33/G31/P35/P31 Express PCI Express Root Port (P5K PRO Motherboard) + + pci:v00008086d000029C2* + ID_MODEL_FROM_DATABASE=82G33/G31 Express Integrated Graphics Controller + + pci:v00008086d000029C2sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82G33/G31 Express Integrated Graphics Controller (Inspiron 530) + + pci:v00008086d000029C2sv00001043sd000082B0* +- ID_MODEL_FROM_DATABASE=P5KPL-VM Motherboard ++ ID_MODEL_FROM_DATABASE=82G33/G31 Express Integrated Graphics Controller (P5KPL-VM Motherboard) + + pci:v00008086d000029C3* + ID_MODEL_FROM_DATABASE=82G33/G31 Express Integrated Graphics Controller + + pci:v00008086d000029C3sv00001028sd0000020D* +- ID_MODEL_FROM_DATABASE=Inspiron 530 ++ ID_MODEL_FROM_DATABASE=82G33/G31 Express Integrated Graphics Controller (Inspiron 530) + + pci:v00008086d000029C3sv00001043sd000082B0* +- ID_MODEL_FROM_DATABASE=P5KPL-VM Motherboard ++ ID_MODEL_FROM_DATABASE=82G33/G31 Express Integrated Graphics Controller (P5KPL-VM Motherboard) + + pci:v00008086d000029C4* + ID_MODEL_FROM_DATABASE=82G33/G31/P35/P31 Express MEI Controller + + pci:v00008086d000029C4sv00008086sd00005044* +- ID_MODEL_FROM_DATABASE=Desktop Board DP35DP ++ ID_MODEL_FROM_DATABASE=82G33/G31/P35/P31 Express MEI Controller (Desktop Board DP35DP) + + pci:v00008086d000029C5* + ID_MODEL_FROM_DATABASE=82G33/G31/P35/P31 Express MEI Controller +@@ -66570,37 +66570,37 @@ pci:v00008086d00002A00* + ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub + + pci:v00008086d00002A00sv00001025sd00000121* +- ID_MODEL_FROM_DATABASE=Acer Aspire 5920G ++ ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (Acer Aspire 5920G) + + pci:v00008086d00002A00sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (Inspiron 1420) + + pci:v00008086d00002A00sv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (Compaq 6710b) + + pci:v00008086d00002A00sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (Compaq 6910p) + + pci:v00008086d00002A00sv0000103Csd000030CC* +- ID_MODEL_FROM_DATABASE=Pavilion dv6700 ++ ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (Pavilion dv6700) + + pci:v00008086d00002A00sv0000103Csd000030D9* +- ID_MODEL_FROM_DATABASE=Presario C700 ++ ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (Presario C700) + + pci:v00008086d00002A00sv0000104Dsd00009005* +- ID_MODEL_FROM_DATABASE=Vaio VGN-FZ260E ++ ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (Vaio VGN-FZ260E) + + pci:v00008086d00002A00sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (VAIO VGN-NR120E) + + pci:v00008086d00002A00sv000017AAsd000020B1* +- ID_MODEL_FROM_DATABASE=ThinkPad T61 ++ ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (ThinkPad T61) + + pci:v00008086d00002A00sv000017AAsd000020B3* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (ThinkPad T61/R61) + + pci:v00008086d00002A00sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (CCG-RUMBA) + + pci:v00008086d00002A01* + ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 PCI Express Root Port +@@ -66609,52 +66609,52 @@ pci:v00008086d00002A02* + ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (primary) + + pci:v00008086d00002A02sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (primary) (Inspiron 1420) + + pci:v00008086d00002A02sv00001028sd000001F9* +- ID_MODEL_FROM_DATABASE=Latitude D630 ++ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (primary) (Latitude D630) + + pci:v00008086d00002A02sv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (primary) (Compaq 6710b) + + pci:v00008086d00002A02sv0000103Csd000030D9* +- ID_MODEL_FROM_DATABASE=Presario C700 ++ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (primary) (Presario C700) + + pci:v00008086d00002A02sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (primary) (VAIO VGN-NR120E) + + pci:v00008086d00002A02sv000017AAsd000020B5* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (primary) (ThinkPad T61/R61) + + pci:v00008086d00002A02sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (primary) (CCG-RUMBA) + + pci:v00008086d00002A03* + ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) + + pci:v00008086d00002A03sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Dell Inspiron 1420 ++ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (Dell Inspiron 1420) + + pci:v00008086d00002A03sv0000103Csd000030C0* +- ID_MODEL_FROM_DATABASE=Compaq 6710b ++ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (Compaq 6710b) + + pci:v00008086d00002A03sv0000103Csd000030D9* +- ID_MODEL_FROM_DATABASE=Presario C700 ++ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (Presario C700) + + pci:v00008086d00002A03sv0000104Dsd0000902D* +- ID_MODEL_FROM_DATABASE=VAIO VGN-NR120E ++ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (VAIO VGN-NR120E) + + pci:v00008086d00002A03sv000017AAsd000020B5* +- ID_MODEL_FROM_DATABASE=ThinkPad T61/R61 ++ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (ThinkPad T61/R61) + + pci:v00008086d00002A03sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (CCG-RUMBA) + + pci:v00008086d00002A04* + ID_MODEL_FROM_DATABASE=Mobile PM965/GM965 MEI Controller + + pci:v00008086d00002A04sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=Mobile PM965/GM965 MEI Controller (Compaq 6910p) + + pci:v00008086d00002A05* + ID_MODEL_FROM_DATABASE=Mobile PM965/GM965 MEI Controller +@@ -66663,19 +66663,19 @@ pci:v00008086d00002A06* + ID_MODEL_FROM_DATABASE=Mobile PM965/GM965 PT IDER Controller + + pci:v00008086d00002A06sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=Mobile PM965/GM965 PT IDER Controller (Compaq 6910p) + + pci:v00008086d00002A07* + ID_MODEL_FROM_DATABASE=Mobile PM965/GM965 KT Controller + + pci:v00008086d00002A07sv0000103Csd000030C1* +- ID_MODEL_FROM_DATABASE=Compaq 6910p ++ ID_MODEL_FROM_DATABASE=Mobile PM965/GM965 KT Controller (Compaq 6910p) + + pci:v00008086d00002A10* + ID_MODEL_FROM_DATABASE=Mobile GME965/GLE960 Memory Controller Hub + + pci:v00008086d00002A10sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=Mobile GME965/GLE960 Memory Controller Hub (CCG-RUMBA) + + pci:v00008086d00002A11* + ID_MODEL_FROM_DATABASE=Mobile GME965/GLE960 PCI Express Root Port +@@ -66684,13 +66684,13 @@ pci:v00008086d00002A12* + ID_MODEL_FROM_DATABASE=Mobile GME965/GLE960 Integrated Graphics Controller + + pci:v00008086d00002A12sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=Mobile GME965/GLE960 Integrated Graphics Controller (CCG-RUMBA) + + pci:v00008086d00002A13* + ID_MODEL_FROM_DATABASE=Mobile GME965/GLE960 Integrated Graphics Controller + + pci:v00008086d00002A13sv0000E4BFsd0000CC47* +- ID_MODEL_FROM_DATABASE=CCG-RUMBA ++ ID_MODEL_FROM_DATABASE=Mobile GME965/GLE960 Integrated Graphics Controller (CCG-RUMBA) + + pci:v00008086d00002A14* + ID_MODEL_FROM_DATABASE=Mobile GME965/GLE960 MEI Controller +@@ -66708,25 +66708,25 @@ pci:v00008086d00002A40* + ID_MODEL_FROM_DATABASE=Mobile 4 Series Chipset Memory Controller Hub + + pci:v00008086d00002A40sv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=Mobile 4 Series Chipset Memory Controller Hub (CCM-BOOGIE) + + pci:v00008086d00002A41* + ID_MODEL_FROM_DATABASE=Mobile 4 Series Chipset PCI Express Graphics Port + + pci:v00008086d00002A41sv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=Mobile 4 Series Chipset PCI Express Graphics Port (CCM-BOOGIE) + + pci:v00008086d00002A42* + ID_MODEL_FROM_DATABASE=Mobile 4 Series Chipset Integrated Graphics Controller + + pci:v00008086d00002A42sv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=Mobile 4 Series Chipset Integrated Graphics Controller (CCM-BOOGIE) + + pci:v00008086d00002A43* + ID_MODEL_FROM_DATABASE=Mobile 4 Series Chipset Integrated Graphics Controller + + pci:v00008086d00002A43sv0000E4BFsd0000CC4D* +- ID_MODEL_FROM_DATABASE=CCM-BOOGIE ++ ID_MODEL_FROM_DATABASE=Mobile 4 Series Chipset Integrated Graphics Controller (CCM-BOOGIE) + + pci:v00008086d00002A44* + ID_MODEL_FROM_DATABASE=Mobile 4 Series Chipset MEI Controller +@@ -67251,34 +67251,34 @@ pci:v00008086d00002E20* + ID_MODEL_FROM_DATABASE=4 Series Chipset DRAM Controller + + pci:v00008086d00002E20sv00001028sd00000283* +- ID_MODEL_FROM_DATABASE=Dell Vostro 220 ++ ID_MODEL_FROM_DATABASE=4 Series Chipset DRAM Controller (Dell Vostro 220) + + pci:v00008086d00002E20sv00001043sd000082D3* +- ID_MODEL_FROM_DATABASE=P5Q Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=4 Series Chipset DRAM Controller (P5Q Deluxe Motherboard) + + pci:v00008086d00002E20sv00001458sd00005000* +- ID_MODEL_FROM_DATABASE=GA-EP45-DS5/GA-EG45M-DS2H Motherboard ++ ID_MODEL_FROM_DATABASE=4 Series Chipset DRAM Controller (GA-EP45-DS5/GA-EG45M-DS2H Motherboard) + + pci:v00008086d00002E21* + ID_MODEL_FROM_DATABASE=4 Series Chipset PCI Express Root Port + + pci:v00008086d00002E21sv00001043sd000082D3* +- ID_MODEL_FROM_DATABASE=P5Q Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=4 Series Chipset PCI Express Root Port (P5Q Deluxe Motherboard) + + pci:v00008086d00002E21sv00001458sd00005000* +- ID_MODEL_FROM_DATABASE=GA-EP45-DS5 Motherboard ++ ID_MODEL_FROM_DATABASE=4 Series Chipset PCI Express Root Port (GA-EP45-DS5 Motherboard) + + pci:v00008086d00002E22* + ID_MODEL_FROM_DATABASE=4 Series Chipset Integrated Graphics Controller + + pci:v00008086d00002E22sv00001458sd0000D000* +- ID_MODEL_FROM_DATABASE=GA-EG45M-DS2H Mainboard ++ ID_MODEL_FROM_DATABASE=4 Series Chipset Integrated Graphics Controller (GA-EG45M-DS2H Mainboard) + + pci:v00008086d00002E23* + ID_MODEL_FROM_DATABASE=4 Series Chipset Integrated Graphics Controller + + pci:v00008086d00002E23sv00001458sd0000D000* +- ID_MODEL_FROM_DATABASE=GA-EG45M-DS2H Mainboard ++ ID_MODEL_FROM_DATABASE=4 Series Chipset Integrated Graphics Controller (GA-EG45M-DS2H Mainboard) + + pci:v00008086d00002E24* + ID_MODEL_FROM_DATABASE=4 Series Chipset HECI Controller +@@ -67917,16 +67917,16 @@ pci:v00008086d00003200* + ID_MODEL_FROM_DATABASE=GD31244 PCI-X SATA HBA + + pci:v00008086d00003200sv00001775sd0000C200* +- ID_MODEL_FROM_DATABASE=C2K onboard SATA host bus adapter ++ ID_MODEL_FROM_DATABASE=GD31244 PCI-X SATA HBA (C2K onboard SATA host bus adapter) + + pci:v00008086d00003310* + ID_MODEL_FROM_DATABASE=IOP348 I/O Processor + + pci:v00008086d00003310sv00001054sd00003030* +- ID_MODEL_FROM_DATABASE=HRA380 Hitachi RAID Adapter to PCIe ++ ID_MODEL_FROM_DATABASE=IOP348 I/O Processor (HRA380 Hitachi RAID Adapter to PCIe) + + pci:v00008086d00003310sv00001054sd00003034* +- ID_MODEL_FROM_DATABASE=HRA381 Hitachi RAID Adapter to PCIe ++ ID_MODEL_FROM_DATABASE=IOP348 I/O Processor (HRA381 Hitachi RAID Adapter to PCIe) + + pci:v00008086d00003313* + ID_MODEL_FROM_DATABASE=IOP348 I/O Processor (SL8e) in IOC Mode SAS/SATA +@@ -67944,31 +67944,31 @@ pci:v00008086d00003340* + ID_MODEL_FROM_DATABASE=82855PM Processor to I/O Controller + + pci:v00008086d00003340sv00001014sd00000529* +- ID_MODEL_FROM_DATABASE=Thinkpad T40 series ++ ID_MODEL_FROM_DATABASE=82855PM Processor to I/O Controller (Thinkpad T40 series) + + pci:v00008086d00003340sv00001025sd0000005A* +- ID_MODEL_FROM_DATABASE=TravelMate 290 ++ ID_MODEL_FROM_DATABASE=82855PM Processor to I/O Controller (TravelMate 290) + + pci:v00008086d00003340sv0000103Csd0000088C* +- ID_MODEL_FROM_DATABASE=NC8000 laptop ++ ID_MODEL_FROM_DATABASE=82855PM Processor to I/O Controller (NC8000 laptop) + + pci:v00008086d00003340sv0000103Csd00000890* +- ID_MODEL_FROM_DATABASE=NC6000 laptop ++ ID_MODEL_FROM_DATABASE=82855PM Processor to I/O Controller (NC6000 laptop) + + pci:v00008086d00003340sv0000103Csd000008B0* +- ID_MODEL_FROM_DATABASE=tc1100 tablet ++ ID_MODEL_FROM_DATABASE=82855PM Processor to I/O Controller (tc1100 tablet) + + pci:v00008086d00003340sv0000144Dsd0000C005* +- ID_MODEL_FROM_DATABASE=X10 Laptop ++ ID_MODEL_FROM_DATABASE=82855PM Processor to I/O Controller (X10 Laptop) + + pci:v00008086d00003340sv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P30/P35 notebook ++ ID_MODEL_FROM_DATABASE=82855PM Processor to I/O Controller (P30/P35 notebook) + + pci:v00008086d00003341* + ID_MODEL_FROM_DATABASE=82855PM Processor to AGP Controller + + pci:v00008086d00003341sv0000144Dsd0000C00C* +- ID_MODEL_FROM_DATABASE=P30 notebook ++ ID_MODEL_FROM_DATABASE=82855PM Processor to AGP Controller (P30 notebook) + + pci:v00008086d00003363* + ID_MODEL_FROM_DATABASE=IOC340 I/O Controller in IOC Mode SAS/SATA +@@ -67995,19 +67995,19 @@ pci:v00008086d00003403* + ID_MODEL_FROM_DATABASE=5500 I/O Hub to ESI Port + + pci:v00008086d00003403sv00001028sd00000236* +- ID_MODEL_FROM_DATABASE=PowerEdge R610 I/O Hub to ESI Port ++ ID_MODEL_FROM_DATABASE=5500 I/O Hub to ESI Port (PowerEdge R610 I/O Hub to ESI Port) + + pci:v00008086d00003403sv00001028sd00000287* +- ID_MODEL_FROM_DATABASE=PowerEdge M610 I/O Hub to ESI Port ++ ID_MODEL_FROM_DATABASE=5500 I/O Hub to ESI Port (PowerEdge M610 I/O Hub to ESI Port) + + pci:v00008086d00003403sv00001028sd0000028C* +- ID_MODEL_FROM_DATABASE=PowerEdge R410 I/O Hub to ESI Port ++ ID_MODEL_FROM_DATABASE=5500 I/O Hub to ESI Port (PowerEdge R410 I/O Hub to ESI Port) + + pci:v00008086d00003403sv00001028sd0000028D* +- ID_MODEL_FROM_DATABASE=PowerEdge T410 I/O Hub to ESI Port ++ ID_MODEL_FROM_DATABASE=5500 I/O Hub to ESI Port (PowerEdge T410 I/O Hub to ESI Port) + + pci:v00008086d00003403sv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant ML150 G6 Server ++ ID_MODEL_FROM_DATABASE=5500 I/O Hub to ESI Port (ProLiant ML150 G6 Server) + + pci:v00008086d00003404* + ID_MODEL_FROM_DATABASE=5520/5500/X58 I/O Hub to ESI Port +@@ -68019,7 +68019,7 @@ pci:v00008086d00003406* + ID_MODEL_FROM_DATABASE=5520 I/O Hub to ESI Port + + pci:v00008086d00003406sv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant G6 series ++ ID_MODEL_FROM_DATABASE=5520 I/O Hub to ESI Port (ProLiant G6 series) + + pci:v00008086d00003407* + ID_MODEL_FROM_DATABASE=5520/5500/X58 I/O Hub to ESI Port +@@ -68028,7 +68028,7 @@ pci:v00008086d00003408* + ID_MODEL_FROM_DATABASE=5520/5500/X58 I/O Hub PCI Express Root Port 1 + + pci:v00008086d00003408sv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant G6 series ++ ID_MODEL_FROM_DATABASE=5520/5500/X58 I/O Hub PCI Express Root Port 1 (ProLiant G6 series) + + pci:v00008086d00003409* + ID_MODEL_FROM_DATABASE=5520/5500/X58 I/O Hub PCI Express Root Port 2 +@@ -68037,7 +68037,7 @@ pci:v00008086d0000340A* + ID_MODEL_FROM_DATABASE=5520/5500/X58 I/O Hub PCI Express Root Port 3 + + pci:v00008086d0000340Asv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant ML150 G6 Server ++ ID_MODEL_FROM_DATABASE=5520/5500/X58 I/O Hub PCI Express Root Port 3 (ProLiant ML150 G6 Server) + + pci:v00008086d0000340B* + ID_MODEL_FROM_DATABASE=5520/X58 I/O Hub PCI Express Root Port 4 +@@ -68052,7 +68052,7 @@ pci:v00008086d0000340E* + ID_MODEL_FROM_DATABASE=5520/5500/X58 I/O Hub PCI Express Root Port 7 + + pci:v00008086d0000340Esv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant ML150 G6 Server ++ ID_MODEL_FROM_DATABASE=5520/5500/X58 I/O Hub PCI Express Root Port 7 (ProLiant ML150 G6 Server) + + pci:v00008086d0000340F* + ID_MODEL_FROM_DATABASE=5520/5500/X58 I/O Hub PCI Express Root Port 8 +@@ -68079,13 +68079,13 @@ pci:v00008086d00003422* + ID_MODEL_FROM_DATABASE=7500/5520/5500/X58 I/O Hub GPIO and Scratch Pad Registers + + pci:v00008086d00003422sv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant G6 series ++ ID_MODEL_FROM_DATABASE=7500/5520/5500/X58 I/O Hub GPIO and Scratch Pad Registers (ProLiant G6 series) + + pci:v00008086d00003423* + ID_MODEL_FROM_DATABASE=7500/5520/5500/X58 I/O Hub Control Status and RAS Registers + + pci:v00008086d00003423sv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant G6 series ++ ID_MODEL_FROM_DATABASE=7500/5520/5500/X58 I/O Hub Control Status and RAS Registers (ProLiant G6 series) + + pci:v00008086d00003425* + ID_MODEL_FROM_DATABASE=7500/5520/5500/X58 Physical and Link Layer Registers Port 0 +@@ -68118,7 +68118,7 @@ pci:v00008086d0000342E* + ID_MODEL_FROM_DATABASE=7500/5520/5500/X58 I/O Hub System Management Registers + + pci:v00008086d0000342Esv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant G6 series ++ ID_MODEL_FROM_DATABASE=7500/5520/5500/X58 I/O Hub System Management Registers (ProLiant G6 series) + + pci:v00008086d0000342F* + ID_MODEL_FROM_DATABASE=7500/5520/5500/X58 Trusted Execution Technology Registers +@@ -68142,10 +68142,10 @@ pci:v00008086d00003500* + ID_MODEL_FROM_DATABASE=6311ESB/6321ESB PCI Express Upstream Port + + pci:v00008086d00003500sv0000103Csd000031FE* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=6311ESB/6321ESB PCI Express Upstream Port (ProLiant DL140 G3) + + pci:v00008086d00003500sv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=6311ESB/6321ESB PCI Express Upstream Port (X7DBN Motherboard) + + pci:v00008086d00003501* + ID_MODEL_FROM_DATABASE=6310ESB PCI Express Upstream Port +@@ -68160,10 +68160,10 @@ pci:v00008086d0000350C* + ID_MODEL_FROM_DATABASE=6311ESB/6321ESB PCI Express to PCI-X Bridge + + pci:v00008086d0000350Csv0000103Csd000031FE* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=6311ESB/6321ESB PCI Express to PCI-X Bridge (ProLiant DL140 G3) + + pci:v00008086d0000350Csv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=6311ESB/6321ESB PCI Express to PCI-X Bridge (X7DBN Motherboard) + + pci:v00008086d0000350D* + ID_MODEL_FROM_DATABASE=6310ESB PCI Express to PCI-X Bridge +@@ -68172,10 +68172,10 @@ pci:v00008086d00003510* + ID_MODEL_FROM_DATABASE=6311ESB/6321ESB PCI Express Downstream Port E1 + + pci:v00008086d00003510sv0000103Csd000031FE* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G3 ++ ID_MODEL_FROM_DATABASE=6311ESB/6321ESB PCI Express Downstream Port E1 (ProLiant DL140 G3) + + pci:v00008086d00003510sv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=6311ESB/6321ESB PCI Express Downstream Port E1 (X7DBN Motherboard) + + pci:v00008086d00003511* + ID_MODEL_FROM_DATABASE=6310ESB PCI Express Downstream Port E1 +@@ -68190,7 +68190,7 @@ pci:v00008086d00003518* + ID_MODEL_FROM_DATABASE=6311ESB/6321ESB PCI Express Downstream Port E3 + + pci:v00008086d00003518sv000015D9sd00009680* +- ID_MODEL_FROM_DATABASE=X7DBN Motherboard ++ ID_MODEL_FROM_DATABASE=6311ESB/6321ESB PCI Express Downstream Port E3 (X7DBN Motherboard) + + pci:v00008086d00003519* + ID_MODEL_FROM_DATABASE=6310ESB PCI Express Downstream Port E3 +@@ -68199,13 +68199,13 @@ pci:v00008086d00003575* + ID_MODEL_FROM_DATABASE=82830M/MG/MP Host Bridge + + pci:v00008086d00003575sv00000E11sd00000030* +- ID_MODEL_FROM_DATABASE=Evo N600c ++ ID_MODEL_FROM_DATABASE=82830M/MG/MP Host Bridge (Evo N600c) + + pci:v00008086d00003575sv00001014sd0000021D* +- ID_MODEL_FROM_DATABASE=ThinkPad A/T/X Series ++ ID_MODEL_FROM_DATABASE=82830M/MG/MP Host Bridge (ThinkPad A/T/X Series) + + pci:v00008086d00003575sv0000104Dsd000080E7* +- ID_MODEL_FROM_DATABASE=VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP ++ ID_MODEL_FROM_DATABASE=82830M/MG/MP Host Bridge (VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP) + + pci:v00008086d00003576* + ID_MODEL_FROM_DATABASE=82830M/MP AGP Bridge +@@ -68214,7 +68214,7 @@ pci:v00008086d00003577* + ID_MODEL_FROM_DATABASE=82830M/MG Integrated Graphics Controller + + pci:v00008086d00003577sv00001014sd00000513* +- ID_MODEL_FROM_DATABASE=ThinkPad A/T/X Series ++ ID_MODEL_FROM_DATABASE=82830M/MG Integrated Graphics Controller (ThinkPad A/T/X Series) + + pci:v00008086d00003578* + ID_MODEL_FROM_DATABASE=82830M/MG/MP Host Bridge +@@ -68223,181 +68223,181 @@ pci:v00008086d00003580* + ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller + + pci:v00008086d00003580sv00001014sd0000055C* +- ID_MODEL_FROM_DATABASE=ThinkPad R50e ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (ThinkPad R50e) + + pci:v00008086d00003580sv00001028sd00000139* +- ID_MODEL_FROM_DATABASE=Latitude D400 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Latitude D400) + + pci:v00008086d00003580sv00001028sd0000014F* +- ID_MODEL_FROM_DATABASE=Latitude X300 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Latitude X300) + + pci:v00008086d00003580sv00001028sd00000152* +- ID_MODEL_FROM_DATABASE=Latitude D500 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Latitude D500) + + pci:v00008086d00003580sv00001028sd00000163* +- ID_MODEL_FROM_DATABASE=Latitude D505 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Latitude D505) + + pci:v00008086d00003580sv00001028sd0000018D* +- ID_MODEL_FROM_DATABASE=Inspiron 700m/710m ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Inspiron 700m/710m) + + pci:v00008086d00003580sv00001028sd00000196* +- ID_MODEL_FROM_DATABASE=Inspiron 5160 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Inspiron 5160) + + pci:v00008086d00003580sv0000114Asd00000582* +- ID_MODEL_FROM_DATABASE=PC8 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (PC8) + + pci:v00008086d00003580sv00001734sd00001055* +- ID_MODEL_FROM_DATABASE=Amilo M1420 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Amilo M1420) + + pci:v00008086d00003580sv00001775sd000010D0* +- ID_MODEL_FROM_DATABASE=V5D Single Board Computer ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (V5D Single Board Computer) + + pci:v00008086d00003580sv00001775sd0000CE90* +- ID_MODEL_FROM_DATABASE=CE9 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (CE9) + + pci:v00008086d00003580sv00004C53sd000010B0* +- ID_MODEL_FROM_DATABASE=CL9 mainboard ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (CL9 mainboard) + + pci:v00008086d00003580sv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (PSL09 PrPMC) + + pci:v00008086d00003580sv0000E4BFsd00000CC9* +- ID_MODEL_FROM_DATABASE=CC9-SAMBA ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (CC9-SAMBA) + + pci:v00008086d00003580sv0000E4BFsd00000CD2* +- ID_MODEL_FROM_DATABASE=CD2-BEBOP ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (CD2-BEBOP) + + pci:v00008086d00003581* + ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to AGP Controller + + pci:v00008086d00003581sv00001734sd00001055* +- ID_MODEL_FROM_DATABASE=Amilo M1420 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to AGP Controller (Amilo M1420) + + pci:v00008086d00003582* + ID_MODEL_FROM_DATABASE=82852/855GM Integrated Graphics Device + + pci:v00008086d00003582sv00001014sd00000562* +- ID_MODEL_FROM_DATABASE=ThinkPad R50e ++ ID_MODEL_FROM_DATABASE=82852/855GM Integrated Graphics Device (ThinkPad R50e) + + pci:v00008086d00003582sv00001028sd00000139* +- ID_MODEL_FROM_DATABASE=Latitude D400 ++ ID_MODEL_FROM_DATABASE=82852/855GM Integrated Graphics Device (Latitude D400) + + pci:v00008086d00003582sv00001028sd0000014F* +- ID_MODEL_FROM_DATABASE=Latitude X300 ++ ID_MODEL_FROM_DATABASE=82852/855GM Integrated Graphics Device (Latitude X300) + + pci:v00008086d00003582sv00001028sd00000152* +- ID_MODEL_FROM_DATABASE=Latitude D500 ++ ID_MODEL_FROM_DATABASE=82852/855GM Integrated Graphics Device (Latitude D500) + + pci:v00008086d00003582sv00001028sd00000163* +- ID_MODEL_FROM_DATABASE=Latitude D505 ++ ID_MODEL_FROM_DATABASE=82852/855GM Integrated Graphics Device (Latitude D505) + + pci:v00008086d00003582sv00001028sd0000018D* +- ID_MODEL_FROM_DATABASE=Inspiron 700m/710m ++ ID_MODEL_FROM_DATABASE=82852/855GM Integrated Graphics Device (Inspiron 700m/710m) + + pci:v00008086d00003582sv0000114Asd00000582* +- ID_MODEL_FROM_DATABASE=PC8 integrated graphics ++ ID_MODEL_FROM_DATABASE=82852/855GM Integrated Graphics Device (PC8 integrated graphics) + + pci:v00008086d00003582sv00001775sd000010D0* +- ID_MODEL_FROM_DATABASE=V5D Single Board Computer VGA ++ ID_MODEL_FROM_DATABASE=82852/855GM Integrated Graphics Device (V5D Single Board Computer VGA) + + pci:v00008086d00003582sv00001775sd0000CE90* +- ID_MODEL_FROM_DATABASE=CE9 ++ ID_MODEL_FROM_DATABASE=82852/855GM Integrated Graphics Device (CE9) + + pci:v00008086d00003582sv00004C53sd000010B0* +- ID_MODEL_FROM_DATABASE=CL9 mainboard ++ ID_MODEL_FROM_DATABASE=82852/855GM Integrated Graphics Device (CL9 mainboard) + + pci:v00008086d00003582sv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=82852/855GM Integrated Graphics Device (PSL09 PrPMC) + + pci:v00008086d00003582sv0000E4BFsd00000CC9* +- ID_MODEL_FROM_DATABASE=CC9-SAMBA ++ ID_MODEL_FROM_DATABASE=82852/855GM Integrated Graphics Device (CC9-SAMBA) + + pci:v00008086d00003582sv0000E4BFsd00000CD2* +- ID_MODEL_FROM_DATABASE=CD2-BEBOP ++ ID_MODEL_FROM_DATABASE=82852/855GM Integrated Graphics Device (CD2-BEBOP) + + pci:v00008086d00003584* + ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller + + pci:v00008086d00003584sv00001014sd0000055D* +- ID_MODEL_FROM_DATABASE=ThinkPad R50e ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (ThinkPad R50e) + + pci:v00008086d00003584sv00001028sd00000139* +- ID_MODEL_FROM_DATABASE=Latitude D400 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Latitude D400) + + pci:v00008086d00003584sv00001028sd0000014F* +- ID_MODEL_FROM_DATABASE=Latitude X300 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Latitude X300) + + pci:v00008086d00003584sv00001028sd00000152* +- ID_MODEL_FROM_DATABASE=Latitude D500 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Latitude D500) + + pci:v00008086d00003584sv00001028sd00000163* +- ID_MODEL_FROM_DATABASE=Latitude D505 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Latitude D505) + + pci:v00008086d00003584sv00001028sd0000018D* +- ID_MODEL_FROM_DATABASE=Inspiron 700m/710m ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Inspiron 700m/710m) + + pci:v00008086d00003584sv00001028sd00000196* +- ID_MODEL_FROM_DATABASE=Inspiron 5160 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Inspiron 5160) + + pci:v00008086d00003584sv0000114Asd00000582* +- ID_MODEL_FROM_DATABASE=PC8 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (PC8) + + pci:v00008086d00003584sv00001734sd00001055* +- ID_MODEL_FROM_DATABASE=Amilo M1420 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Amilo M1420) + + pci:v00008086d00003584sv00001775sd000010D0* +- ID_MODEL_FROM_DATABASE=V5D Single Board Computer ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (V5D Single Board Computer) + + pci:v00008086d00003584sv00001775sd0000CE90* +- ID_MODEL_FROM_DATABASE=CE9 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (CE9) + + pci:v00008086d00003584sv00004C53sd000010B0* +- ID_MODEL_FROM_DATABASE=CL9 mainboard ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (CL9 mainboard) + + pci:v00008086d00003584sv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (PSL09 PrPMC) + + pci:v00008086d00003585* + ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller + + pci:v00008086d00003585sv00001014sd0000055E* +- ID_MODEL_FROM_DATABASE=ThinkPad R50e ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (ThinkPad R50e) + + pci:v00008086d00003585sv00001028sd00000139* +- ID_MODEL_FROM_DATABASE=Latitude D400 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Latitude D400) + + pci:v00008086d00003585sv00001028sd0000014F* +- ID_MODEL_FROM_DATABASE=Latitude X300 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Latitude X300) + + pci:v00008086d00003585sv00001028sd00000152* +- ID_MODEL_FROM_DATABASE=Latitude D500 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Latitude D500) + + pci:v00008086d00003585sv00001028sd00000163* +- ID_MODEL_FROM_DATABASE=Latitude D505 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Latitude D505) + + pci:v00008086d00003585sv00001028sd0000018D* +- ID_MODEL_FROM_DATABASE=Inspiron 700m/710m ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Inspiron 700m/710m) + + pci:v00008086d00003585sv00001028sd00000196* +- ID_MODEL_FROM_DATABASE=Inspiron 5160 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Inspiron 5160) + + pci:v00008086d00003585sv0000114Asd00000582* +- ID_MODEL_FROM_DATABASE=PC8 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (PC8) + + pci:v00008086d00003585sv00001734sd00001055* +- ID_MODEL_FROM_DATABASE=Amilo M1420 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (Amilo M1420) + + pci:v00008086d00003585sv00001775sd000010D0* +- ID_MODEL_FROM_DATABASE=V5D Single Board Computer ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (V5D Single Board Computer) + + pci:v00008086d00003585sv00001775sd0000CE90* +- ID_MODEL_FROM_DATABASE=CE9 ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (CE9) + + pci:v00008086d00003585sv00004C53sd000010B0* +- ID_MODEL_FROM_DATABASE=CL9 mainboard ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (CL9 mainboard) + + pci:v00008086d00003585sv00004C53sd000010E0* +- ID_MODEL_FROM_DATABASE=PSL09 PrPMC ++ ID_MODEL_FROM_DATABASE=82852/82855 GM/GME/PM/GMV Processor to I/O Controller (PSL09 PrPMC) + + pci:v00008086d0000358C* + ID_MODEL_FROM_DATABASE=82854 GMCH +@@ -68409,70 +68409,70 @@ pci:v00008086d00003590* + ID_MODEL_FROM_DATABASE=E7520 Memory Controller Hub + + pci:v00008086d00003590sv00001014sd000002DD* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=E7520 Memory Controller Hub (eServer xSeries server mainboard) + + pci:v00008086d00003590sv00001028sd0000016C* +- ID_MODEL_FROM_DATABASE=PowerEdge 1850 Memory Controller Hub ++ ID_MODEL_FROM_DATABASE=E7520 Memory Controller Hub (PowerEdge 1850 Memory Controller Hub) + + pci:v00008086d00003590sv00001028sd0000016D* +- ID_MODEL_FROM_DATABASE=PowerEdge 2850 Memory Controller Hub ++ ID_MODEL_FROM_DATABASE=E7520 Memory Controller Hub (PowerEdge 2850 Memory Controller Hub) + + pci:v00008086d00003590sv00001028sd0000019A* +- ID_MODEL_FROM_DATABASE=PowerEdge SC1425 ++ ID_MODEL_FROM_DATABASE=E7520 Memory Controller Hub (PowerEdge SC1425) + + pci:v00008086d00003590sv00001734sd0000103E* +- ID_MODEL_FROM_DATABASE=PRIMERGY RX/TX S2 series ++ ID_MODEL_FROM_DATABASE=E7520 Memory Controller Hub (PRIMERGY RX/TX S2 series) + + pci:v00008086d00003590sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=E7520 Memory Controller Hub (CR11/VR11 Single Board Computer) + + pci:v00008086d00003590sv00004C53sd000010D0* +- ID_MODEL_FROM_DATABASE=Telum ASLP10 Processor AMC ++ ID_MODEL_FROM_DATABASE=E7520 Memory Controller Hub (Telum ASLP10 Processor AMC) + + pci:v00008086d00003591* + ID_MODEL_FROM_DATABASE=E7525/E7520 Error Reporting Registers + + pci:v00008086d00003591sv00001014sd000002DD* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=E7525/E7520 Error Reporting Registers (eServer xSeries server mainboard) + + pci:v00008086d00003591sv00001028sd00000168* +- ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ ID_MODEL_FROM_DATABASE=E7525/E7520 Error Reporting Registers (Precision Workstation 670 Mainboard) + + pci:v00008086d00003591sv00001028sd00000169* +- ID_MODEL_FROM_DATABASE=Precision 470 ++ ID_MODEL_FROM_DATABASE=E7525/E7520 Error Reporting Registers (Precision 470) + + pci:v00008086d00003591sv0000103Csd00003208* +- ID_MODEL_FROM_DATABASE=ProLiant DL140 G2 ++ ID_MODEL_FROM_DATABASE=E7525/E7520 Error Reporting Registers (ProLiant DL140 G2) + + pci:v00008086d00003591sv00004C53sd000010D0* +- ID_MODEL_FROM_DATABASE=Telum ASLP10 Processor AMC ++ ID_MODEL_FROM_DATABASE=E7525/E7520 Error Reporting Registers (Telum ASLP10 Processor AMC) + + pci:v00008086d00003592* + ID_MODEL_FROM_DATABASE=E7320 Memory Controller Hub + + pci:v00008086d00003592sv00001734sd00001073* +- ID_MODEL_FROM_DATABASE=Primergy Econel 200 D2020 mainboard ++ ID_MODEL_FROM_DATABASE=E7320 Memory Controller Hub (Primergy Econel 200 D2020 mainboard) + + pci:v00008086d00003593* + ID_MODEL_FROM_DATABASE=E7320 Error Reporting Registers + + pci:v00008086d00003593sv00001734sd00001073* +- ID_MODEL_FROM_DATABASE=Primergy Econel 200 D2020 mainboard ++ ID_MODEL_FROM_DATABASE=E7320 Error Reporting Registers (Primergy Econel 200 D2020 mainboard) + + pci:v00008086d00003594* + ID_MODEL_FROM_DATABASE=E7520 DMA Controller + + pci:v00008086d00003594sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=E7520 DMA Controller (CR11/VR11 Single Board Computer) + + pci:v00008086d00003594sv00004C53sd000010D0* +- ID_MODEL_FROM_DATABASE=Telum ASLP10 Processor AMC ++ ID_MODEL_FROM_DATABASE=E7520 DMA Controller (Telum ASLP10 Processor AMC) + + pci:v00008086d00003595* + ID_MODEL_FROM_DATABASE=E7525/E7520/E7320 PCI Express Port A + + pci:v00008086d00003595sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=E7525/E7520/E7320 PCI Express Port A (CR11/VR11 Single Board Computer) + + pci:v00008086d00003596* + ID_MODEL_FROM_DATABASE=E7525/E7520/E7320 PCI Express Port A1 +@@ -68481,19 +68481,19 @@ pci:v00008086d00003597* + ID_MODEL_FROM_DATABASE=E7525/E7520 PCI Express Port B + + pci:v00008086d00003597sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=E7525/E7520 PCI Express Port B (CR11/VR11 Single Board Computer) + + pci:v00008086d00003598* + ID_MODEL_FROM_DATABASE=E7520 PCI Express Port B1 + + pci:v00008086d00003598sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=E7520 PCI Express Port B1 (CR11/VR11 Single Board Computer) + + pci:v00008086d00003599* + ID_MODEL_FROM_DATABASE=E7520 PCI Express Port C + + pci:v00008086d00003599sv00001775sd00001100* +- ID_MODEL_FROM_DATABASE=CR11/VR11 Single Board Computer ++ ID_MODEL_FROM_DATABASE=E7520 PCI Express Port C (CR11/VR11 Single Board Computer) + + pci:v00008086d0000359A* + ID_MODEL_FROM_DATABASE=E7520 PCI Express Port C1 +@@ -68502,16 +68502,16 @@ pci:v00008086d0000359B* + ID_MODEL_FROM_DATABASE=E7525/E7520/E7320 Extended Configuration Registers + + pci:v00008086d0000359Bsv00001014sd000002DD* +- ID_MODEL_FROM_DATABASE=eServer xSeries server mainboard ++ ID_MODEL_FROM_DATABASE=E7525/E7520/E7320 Extended Configuration Registers (eServer xSeries server mainboard) + + pci:v00008086d0000359E* + ID_MODEL_FROM_DATABASE=E7525 Memory Controller Hub + + pci:v00008086d0000359Esv00001028sd00000168* +- ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ ID_MODEL_FROM_DATABASE=E7525 Memory Controller Hub (Precision Workstation 670 Mainboard) + + pci:v00008086d0000359Esv00001028sd00000169* +- ID_MODEL_FROM_DATABASE=Precision 470 ++ ID_MODEL_FROM_DATABASE=E7525 Memory Controller Hub (Precision 470) + + pci:v00008086d000035B0* + ID_MODEL_FROM_DATABASE=3100 Chipset Memory I/O Controller Hub +@@ -68562,7 +68562,7 @@ pci:v00008086d0000360C* + ID_MODEL_FROM_DATABASE=7300 Chipset FSB Registers + + pci:v00008086d0000360Csv00001028sd000001F0* +- ID_MODEL_FROM_DATABASE=PowerEdge R900 7300 Chipset FSB Registers ++ ID_MODEL_FROM_DATABASE=7300 Chipset FSB Registers (PowerEdge R900 7300 Chipset FSB Registers) + + pci:v00008086d0000360D* + ID_MODEL_FROM_DATABASE=7300 Chipset Snoop Filter Registers +@@ -68724,19 +68724,19 @@ pci:v00008086d00003A16* + ID_MODEL_FROM_DATABASE=82801JIR (ICH10R) LPC Interface Controller + + pci:v00008086d00003A16sv00001028sd0000028C* +- ID_MODEL_FROM_DATABASE=PowerEdge R410 LPC Interface Controller ++ ID_MODEL_FROM_DATABASE=82801JIR (ICH10R) LPC Interface Controller (PowerEdge R410 LPC Interface Controller) + + pci:v00008086d00003A16sv00001028sd0000028D* +- ID_MODEL_FROM_DATABASE=PowerEdge T410 LPC Interface Controller ++ ID_MODEL_FROM_DATABASE=82801JIR (ICH10R) LPC Interface Controller (PowerEdge T410 LPC Interface Controller) + + pci:v00008086d00003A16sv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant G6 series ++ ID_MODEL_FROM_DATABASE=82801JIR (ICH10R) LPC Interface Controller (ProLiant G6 series) + + pci:v00008086d00003A16sv00001043sd000082D4* +- ID_MODEL_FROM_DATABASE=P5Q Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JIR (ICH10R) LPC Interface Controller (P5Q Deluxe Motherboard) + + pci:v00008086d00003A16sv00001458sd00005001* +- ID_MODEL_FROM_DATABASE=GA-EP45-DS5 Motherboard ++ ID_MODEL_FROM_DATABASE=82801JIR (ICH10R) LPC Interface Controller (GA-EP45-DS5 Motherboard) + + pci:v00008086d00003A18* + ID_MODEL_FROM_DATABASE=82801JIB (ICH10) LPC Interface Controller +@@ -68748,52 +68748,52 @@ pci:v00008086d00003A20* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) 4 port SATA IDE Controller #1 + + pci:v00008086d00003A20sv00001028sd0000028C* +- ID_MODEL_FROM_DATABASE=PowerEdge R410 SATA IDE Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) 4 port SATA IDE Controller #1 (PowerEdge R410 SATA IDE Controller) + + pci:v00008086d00003A20sv00001028sd0000028D* +- ID_MODEL_FROM_DATABASE=PowerEdge T410 SATA IDE Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) 4 port SATA IDE Controller #1 (PowerEdge T410 SATA IDE Controller) + + pci:v00008086d00003A22* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) SATA AHCI Controller + + pci:v00008086d00003A22sv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant G6 series ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) SATA AHCI Controller (ProLiant G6 series) + + pci:v00008086d00003A22sv00001043sd000082D4* +- ID_MODEL_FROM_DATABASE=P5Q Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) SATA AHCI Controller (P5Q Deluxe Motherboard) + + pci:v00008086d00003A22sv00001458sd0000B005* +- ID_MODEL_FROM_DATABASE=GA-EP45-DS5/GA-EG45M-DS2H Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) SATA AHCI Controller (GA-EP45-DS5/GA-EG45M-DS2H Motherboard) + + pci:v00008086d00003A25* + ID_MODEL_FROM_DATABASE=82801JIR (ICH10R) SATA RAID Controller + + pci:v00008086d00003A25sv00001028sd0000028C* +- ID_MODEL_FROM_DATABASE=PERC S100 Controller (PE R410) ++ ID_MODEL_FROM_DATABASE=82801JIR (ICH10R) SATA RAID Controller (PERC S100 Controller (PE R410)) + + pci:v00008086d00003A25sv00001028sd0000028D* +- ID_MODEL_FROM_DATABASE=PERC S100 Controller (PE T410) ++ ID_MODEL_FROM_DATABASE=82801JIR (ICH10R) SATA RAID Controller (PERC S100 Controller (PE T410)) + + pci:v00008086d00003A25sv00001028sd000002F1* +- ID_MODEL_FROM_DATABASE=PERC S100 Controller (PE R510) ++ ID_MODEL_FROM_DATABASE=82801JIR (ICH10R) SATA RAID Controller (PERC S100 Controller (PE R510)) + + pci:v00008086d00003A26* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) 2 port SATA IDE Controller #2 + + pci:v00008086d00003A26sv00001028sd0000028C* +- ID_MODEL_FROM_DATABASE=PowerEdge R410 SATA IDE Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) 2 port SATA IDE Controller #2 (PowerEdge R410 SATA IDE Controller) + + pci:v00008086d00003A26sv00001028sd0000028D* +- ID_MODEL_FROM_DATABASE=PowerEdge T410 SATA IDE Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) 2 port SATA IDE Controller #2 (PowerEdge T410 SATA IDE Controller) + + pci:v00008086d00003A30* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) SMBus Controller + + pci:v00008086d00003A30sv00001043sd000082D4* +- ID_MODEL_FROM_DATABASE=P5Q Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) SMBus Controller (P5Q Deluxe Motherboard) + + pci:v00008086d00003A30sv00001458sd00005001* +- ID_MODEL_FROM_DATABASE=GA-EP45-DS5/GA-EG45M-DS2H Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) SMBus Controller (GA-EP45-DS5/GA-EG45M-DS2H Motherboard) + + pci:v00008086d00003A32* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) Thermal Subsystem +@@ -68802,178 +68802,178 @@ pci:v00008086d00003A34* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #1 + + pci:v00008086d00003A34sv00001028sd0000028C* +- ID_MODEL_FROM_DATABASE=PowerEdge R410 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #1 (PowerEdge R410 USB UHCI Controller) + + pci:v00008086d00003A34sv00001028sd0000028D* +- ID_MODEL_FROM_DATABASE=PowerEdge T410 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #1 (PowerEdge T410 USB UHCI Controller) + + pci:v00008086d00003A34sv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant G6 series ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #1 (ProLiant G6 series) + + pci:v00008086d00003A34sv00001043sd000082D4* +- ID_MODEL_FROM_DATABASE=P5Q Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #1 (P5Q Deluxe Motherboard) + + pci:v00008086d00003A34sv00001458sd00005004* +- ID_MODEL_FROM_DATABASE=GA-EP45-DS5 Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #1 (GA-EP45-DS5 Motherboard) + + pci:v00008086d00003A35* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #2 + + pci:v00008086d00003A35sv00001028sd0000028C* +- ID_MODEL_FROM_DATABASE=PowerEdge R410 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #2 (PowerEdge R410 USB UHCI Controller) + + pci:v00008086d00003A35sv00001028sd0000028D* +- ID_MODEL_FROM_DATABASE=PowerEdge T410 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #2 (PowerEdge T410 USB UHCI Controller) + + pci:v00008086d00003A35sv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant G6 series ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #2 (ProLiant G6 series) + + pci:v00008086d00003A35sv00001043sd000082D4* +- ID_MODEL_FROM_DATABASE=P5Q Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #2 (P5Q Deluxe Motherboard) + + pci:v00008086d00003A35sv00001458sd00005004* +- ID_MODEL_FROM_DATABASE=GA-EP45-DS5 Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #2 (GA-EP45-DS5 Motherboard) + + pci:v00008086d00003A36* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #3 + + pci:v00008086d00003A36sv00001028sd0000028C* +- ID_MODEL_FROM_DATABASE=PowerEdge R410 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #3 (PowerEdge R410 USB UHCI Controller) + + pci:v00008086d00003A36sv00001028sd0000028D* +- ID_MODEL_FROM_DATABASE=PowerEdge T410 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #3 (PowerEdge T410 USB UHCI Controller) + + pci:v00008086d00003A36sv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant G6 series ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #3 (ProLiant G6 series) + + pci:v00008086d00003A36sv00001043sd000082D4* +- ID_MODEL_FROM_DATABASE=P5Q Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #3 (P5Q Deluxe Motherboard) + + pci:v00008086d00003A36sv00001458sd00005004* +- ID_MODEL_FROM_DATABASE=GA-EP45-DS5 Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #3 (GA-EP45-DS5 Motherboard) + + pci:v00008086d00003A37* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #4 + + pci:v00008086d00003A37sv00001028sd0000028C* +- ID_MODEL_FROM_DATABASE=PowerEdge R410 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #4 (PowerEdge R410 USB UHCI Controller) + + pci:v00008086d00003A37sv00001028sd0000028D* +- ID_MODEL_FROM_DATABASE=PowerEdge T410 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #4 (PowerEdge T410 USB UHCI Controller) + + pci:v00008086d00003A37sv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant G6 series ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #4 (ProLiant G6 series) + + pci:v00008086d00003A37sv00001043sd000082D4* +- ID_MODEL_FROM_DATABASE=P5Q Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #4 (P5Q Deluxe Motherboard) + + pci:v00008086d00003A37sv00001458sd00005004* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #4 (Motherboard) + + pci:v00008086d00003A38* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #5 + + pci:v00008086d00003A38sv00001028sd0000028C* +- ID_MODEL_FROM_DATABASE=PowerEdge R410 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #5 (PowerEdge R410 USB UHCI Controller) + + pci:v00008086d00003A38sv00001028sd0000028D* +- ID_MODEL_FROM_DATABASE=PowerEdge T410 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #5 (PowerEdge T410 USB UHCI Controller) + + pci:v00008086d00003A38sv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant ML150 G6 Server ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #5 (ProLiant ML150 G6 Server) + + pci:v00008086d00003A38sv00001043sd000082D4* +- ID_MODEL_FROM_DATABASE=P5Q Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #5 (P5Q Deluxe Motherboard) + + pci:v00008086d00003A38sv00001458sd00005004* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #5 (Motherboard) + + pci:v00008086d00003A39* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #6 + + pci:v00008086d00003A39sv00001028sd0000028C* +- ID_MODEL_FROM_DATABASE=PowerEdge R410 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #6 (PowerEdge R410 USB UHCI Controller) + + pci:v00008086d00003A39sv00001028sd0000028D* +- ID_MODEL_FROM_DATABASE=PowerEdge T410 USB UHCI Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #6 (PowerEdge T410 USB UHCI Controller) + + pci:v00008086d00003A39sv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant ML150 G6 Server ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #6 (ProLiant ML150 G6 Server) + + pci:v00008086d00003A39sv00001043sd000082D4* +- ID_MODEL_FROM_DATABASE=P5Q Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #6 (P5Q Deluxe Motherboard) + + pci:v00008086d00003A39sv00001458sd00005004* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB UHCI Controller #6 (Motherboard) + + pci:v00008086d00003A3A* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB2 EHCI Controller #1 + + pci:v00008086d00003A3Asv00001028sd0000028C* +- ID_MODEL_FROM_DATABASE=PowerEdge R410 USB EHCI Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB2 EHCI Controller #1 (PowerEdge R410 USB EHCI Controller) + + pci:v00008086d00003A3Asv00001028sd0000028D* +- ID_MODEL_FROM_DATABASE=PowerEdge T410 USB EHCI Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB2 EHCI Controller #1 (PowerEdge T410 USB EHCI Controller) + + pci:v00008086d00003A3Asv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant G6 series ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB2 EHCI Controller #1 (ProLiant G6 series) + + pci:v00008086d00003A3Asv00001043sd000082D4* +- ID_MODEL_FROM_DATABASE=P5Q Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB2 EHCI Controller #1 (P5Q Deluxe Motherboard) + + pci:v00008086d00003A3Asv00001458sd00005006* +- ID_MODEL_FROM_DATABASE=GA-EP45-DS5 Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB2 EHCI Controller #1 (GA-EP45-DS5 Motherboard) + + pci:v00008086d00003A3C* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB2 EHCI Controller #2 + + pci:v00008086d00003A3Csv00001028sd0000028C* +- ID_MODEL_FROM_DATABASE=PowerEdge R410 USB EHCI Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB2 EHCI Controller #2 (PowerEdge R410 USB EHCI Controller) + + pci:v00008086d00003A3Csv00001028sd0000028D* +- ID_MODEL_FROM_DATABASE=PowerEdge T410 USB EHCI Controller ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB2 EHCI Controller #2 (PowerEdge T410 USB EHCI Controller) + + pci:v00008086d00003A3Csv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant G6 series ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB2 EHCI Controller #2 (ProLiant G6 series) + + pci:v00008086d00003A3Csv00001043sd000082D4* +- ID_MODEL_FROM_DATABASE=P5Q Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB2 EHCI Controller #2 (P5Q Deluxe Motherboard) + + pci:v00008086d00003A3Csv00001458sd00005006* +- ID_MODEL_FROM_DATABASE=Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) USB2 EHCI Controller #2 (Motherboard) + + pci:v00008086d00003A3E* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) HD Audio Controller + + pci:v00008086d00003A3Esv00001043sd00008311* +- ID_MODEL_FROM_DATABASE=P5Q Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) HD Audio Controller (P5Q Deluxe Motherboard) + + pci:v00008086d00003A3Esv00001458sd0000A002* +- ID_MODEL_FROM_DATABASE=GA-EP45-UD3R Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) HD Audio Controller (GA-EP45-UD3R Motherboard) + + pci:v00008086d00003A3Esv00001458sd0000A102* +- ID_MODEL_FROM_DATABASE=GA-EP45-DS5/GA-EG45M-DS2H Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) HD Audio Controller (GA-EP45-DS5/GA-EG45M-DS2H Motherboard) + + pci:v00008086d00003A40* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 1 + + pci:v00008086d00003A40sv00001028sd0000028C* +- ID_MODEL_FROM_DATABASE=PowerEdge R410 PCI Express Port 1 ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 1 (PowerEdge R410 PCI Express Port 1) + + pci:v00008086d00003A40sv00001028sd0000028D* +- ID_MODEL_FROM_DATABASE=PowerEdge T410 PCI Express Port 1 ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 1 (PowerEdge T410 PCI Express Port 1) + + pci:v00008086d00003A40sv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant ML150 G6 Server ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 1 (ProLiant ML150 G6 Server) + + pci:v00008086d00003A40sv00001043sd000082D4* +- ID_MODEL_FROM_DATABASE=P5Q Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 1 (P5Q Deluxe Motherboard) + + pci:v00008086d00003A40sv00001043sd000082EA* +- ID_MODEL_FROM_DATABASE=P6T DeLuxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 1 (P6T DeLuxe Motherboard) + + pci:v00008086d00003A40sv00001458sd00005001* +- ID_MODEL_FROM_DATABASE=GA-EP45-DS5/GA-EG45M-DS2H Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 1 (GA-EP45-DS5/GA-EG45M-DS2H Motherboard) + + pci:v00008086d00003A42* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Port 2 +@@ -68982,43 +68982,43 @@ pci:v00008086d00003A44* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 3 + + pci:v00008086d00003A44sv00001043sd000082EA* +- ID_MODEL_FROM_DATABASE=P6T DeLuxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 3 (P6T DeLuxe Motherboard) + + pci:v00008086d00003A46* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 4 + + pci:v00008086d00003A46sv00001043sd000082EA* +- ID_MODEL_FROM_DATABASE=P6T DeLuxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 4 (P6T DeLuxe Motherboard) + + pci:v00008086d00003A46sv00001458sd00005001* +- ID_MODEL_FROM_DATABASE=GA-EP45-DS5 Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 4 (GA-EP45-DS5 Motherboard) + + pci:v00008086d00003A48* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 5 + + pci:v00008086d00003A48sv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant ML150 G6 Server ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 5 (ProLiant ML150 G6 Server) + + pci:v00008086d00003A48sv00001043sd000082EA* +- ID_MODEL_FROM_DATABASE=P6T Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 5 (P6T Deluxe Motherboard) + + pci:v00008086d00003A48sv00001458sd00005001* +- ID_MODEL_FROM_DATABASE=GA-EP45-DS5 Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 5 (GA-EP45-DS5 Motherboard) + + pci:v00008086d00003A4A* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 6 + + pci:v00008086d00003A4Asv0000103Csd0000330B* +- ID_MODEL_FROM_DATABASE=ProLiant ML150 G6 Server ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 6 (ProLiant ML150 G6 Server) + + pci:v00008086d00003A4Asv00001043sd000082D4* +- ID_MODEL_FROM_DATABASE=P5Q Deluxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 6 (P5Q Deluxe Motherboard) + + pci:v00008086d00003A4Asv00001043sd000082EA* +- ID_MODEL_FROM_DATABASE=P6T DeLuxe Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 6 (P6T DeLuxe Motherboard) + + pci:v00008086d00003A4Asv00001458sd00005001* +- ID_MODEL_FROM_DATABASE=GA-EP45-DS5/GA-EG45M-DS2H Motherboard ++ ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) PCI Express Root Port 6 (GA-EP45-DS5/GA-EG45M-DS2H Motherboard) + + pci:v00008086d00003A4C* + ID_MODEL_FROM_DATABASE=82801JI (ICH10 Family) Gigabit Ethernet Controller +@@ -69108,10 +69108,10 @@ pci:v00008086d00003B07* + ID_MODEL_FROM_DATABASE=Mobile 5 Series Chipset LPC Interface Controller + + pci:v00008086d00003B07sv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=Mobile 5 Series Chipset LPC Interface Controller (Latitude E6510) + + pci:v00008086d00003B07sv0000E4BFsd000050C1* +- ID_MODEL_FROM_DATABASE=PC1-GROOVE ++ ID_MODEL_FROM_DATABASE=Mobile 5 Series Chipset LPC Interface Controller (PC1-GROOVE) + + pci:v00008086d00003B08* + ID_MODEL_FROM_DATABASE=5 Series Chipset LPC Interface Controller +@@ -69120,16 +69120,16 @@ pci:v00008086d00003B09* + ID_MODEL_FROM_DATABASE=Mobile 5 Series Chipset LPC Interface Controller + + pci:v00008086d00003B09sv00001025sd00000347* +- ID_MODEL_FROM_DATABASE=Aspire 7740G ++ ID_MODEL_FROM_DATABASE=Mobile 5 Series Chipset LPC Interface Controller (Aspire 7740G) + + pci:v00008086d00003B0A* + ID_MODEL_FROM_DATABASE=5 Series Chipset LPC Interface Controller + + pci:v00008086d00003B0Asv00001028sd000002DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 980 ++ ID_MODEL_FROM_DATABASE=5 Series Chipset LPC Interface Controller (OptiPlex 980) + + pci:v00008086d00003B0Asv000015D9sd0000060D* +- ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ ID_MODEL_FROM_DATABASE=5 Series Chipset LPC Interface Controller (C7SIM-Q Motherboard) + + pci:v00008086d00003B0B* + ID_MODEL_FROM_DATABASE=Mobile 5 Series Chipset LPC Interface Controller +@@ -69204,10 +69204,10 @@ pci:v00008086d00003B22* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 6 port SATA AHCI Controller + + pci:v00008086d00003B22sv00001028sd000002DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 980 ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 6 port SATA AHCI Controller (OptiPlex 980) + + pci:v00008086d00003B22sv000015D9sd0000060D* +- ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 6 port SATA AHCI Controller (C7SIM-Q Motherboard) + + pci:v00008086d00003B23* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA AHCI Controller +@@ -69225,7 +69225,7 @@ pci:v00008086d00003B29* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA AHCI Controller + + pci:v00008086d00003B29sv00001025sd00000347* +- ID_MODEL_FROM_DATABASE=Aspire 7740G ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA AHCI Controller (Aspire 7740G) + + pci:v00008086d00003B2C* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SATA RAID Controller +@@ -69234,64 +69234,64 @@ pci:v00008086d00003B2D* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 2 port SATA IDE Controller + + pci:v00008086d00003B2Dsv0000E4BFsd000050C1* +- ID_MODEL_FROM_DATABASE=PC1-GROOVE ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 2 port SATA IDE Controller (PC1-GROOVE) + + pci:v00008086d00003B2E* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA IDE Controller + + pci:v00008086d00003B2Esv0000E4BFsd000050C1* +- ID_MODEL_FROM_DATABASE=PC1-GROOVE ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA IDE Controller (PC1-GROOVE) + + pci:v00008086d00003B2F* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 6 port SATA AHCI Controller + + pci:v00008086d00003B2Fsv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 6 port SATA AHCI Controller (Latitude E6510) + + pci:v00008086d00003B2Fsv0000E4BFsd000050C1* +- ID_MODEL_FROM_DATABASE=PC1-GROOVE ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 6 port SATA AHCI Controller (PC1-GROOVE) + + pci:v00008086d00003B30* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SMBus Controller + + pci:v00008086d00003B30sv00001025sd00000347* +- ID_MODEL_FROM_DATABASE=Aspire 7740G ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SMBus Controller (Aspire 7740G) + + pci:v00008086d00003B30sv00001028sd000002DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 980 ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SMBus Controller (OptiPlex 980) + + pci:v00008086d00003B30sv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SMBus Controller (Latitude E6510) + + pci:v00008086d00003B30sv000015D9sd0000060D* +- ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SMBus Controller (C7SIM-Q Motherboard) + + pci:v00008086d00003B30sv0000E4BFsd000050C1* +- ID_MODEL_FROM_DATABASE=PC1-GROOVE ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SMBus Controller (PC1-GROOVE) + + pci:v00008086d00003B32* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset Thermal Subsystem + + pci:v00008086d00003B32sv00001025sd00000347* +- ID_MODEL_FROM_DATABASE=Aspire 7740G ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset Thermal Subsystem (Aspire 7740G) + + pci:v00008086d00003B34* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller + + pci:v00008086d00003B34sv00001025sd00000347* +- ID_MODEL_FROM_DATABASE=Aspire 7740G ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (Aspire 7740G) + + pci:v00008086d00003B34sv00001028sd000002DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 980 ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (OptiPlex 980) + + pci:v00008086d00003B34sv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (Latitude E6510) + + pci:v00008086d00003B34sv000015D9sd0000060D* +- ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (C7SIM-Q Motherboard) + + pci:v00008086d00003B34sv0000E4BFsd000050C1* +- ID_MODEL_FROM_DATABASE=PC1-GROOVE ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (PC1-GROOVE) + + pci:v00008086d00003B36* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB Universal Host Controller +@@ -69315,19 +69315,19 @@ pci:v00008086d00003B3C* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller + + pci:v00008086d00003B3Csv00001025sd00000347* +- ID_MODEL_FROM_DATABASE=Aspire 7740G ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (Aspire 7740G) + + pci:v00008086d00003B3Csv00001028sd000002DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 980 ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (OptiPlex 980) + + pci:v00008086d00003B3Csv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (Latitude E6510) + + pci:v00008086d00003B3Csv000015D9sd0000060D* +- ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (C7SIM-Q Motherboard) + + pci:v00008086d00003B3Csv0000E4BFsd000050C1* +- ID_MODEL_FROM_DATABASE=PC1-GROOVE ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (PC1-GROOVE) + + pci:v00008086d00003B3E* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB Universal Host Controller +@@ -69345,40 +69345,40 @@ pci:v00008086d00003B42* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 1 + + pci:v00008086d00003B42sv00001028sd000002DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 980 ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 1 (OptiPlex 980) + + pci:v00008086d00003B42sv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 1 (Latitude E6510) + + pci:v00008086d00003B42sv000015D9sd0000060D* +- ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 1 (C7SIM-Q Motherboard) + + pci:v00008086d00003B44* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 2 + + pci:v00008086d00003B44sv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 2 (Latitude E6510) + + pci:v00008086d00003B44sv000015D9sd0000060D* +- ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 2 (C7SIM-Q Motherboard) + + pci:v00008086d00003B46* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 3 + + pci:v00008086d00003B46sv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 3 (Latitude E6510) + + pci:v00008086d00003B48* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 4 + + pci:v00008086d00003B48sv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 4 (Latitude E6510) + + pci:v00008086d00003B4A* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 5 + + pci:v00008086d00003B4Asv00001028sd000002DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 980 ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 5 (OptiPlex 980) + + pci:v00008086d00003B4C* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 6 +@@ -69396,19 +69396,19 @@ pci:v00008086d00003B56* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio + + pci:v00008086d00003B56sv00001025sd00000347* +- ID_MODEL_FROM_DATABASE=Aspire 7740G ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio (Aspire 7740G) + + pci:v00008086d00003B56sv00001028sd000002DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 980 ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio (OptiPlex 980) + + pci:v00008086d00003B56sv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio (Latitude E6510) + + pci:v00008086d00003B56sv000015D9sd0000060D* +- ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio (C7SIM-Q Motherboard) + + pci:v00008086d00003B56sv0000E4BFsd000050C1* +- ID_MODEL_FROM_DATABASE=PC1-GROOVE ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio (PC1-GROOVE) + + pci:v00008086d00003B57* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio +@@ -69417,13 +69417,13 @@ pci:v00008086d00003B64* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset HECI Controller + + pci:v00008086d00003B64sv00001025sd00000347* +- ID_MODEL_FROM_DATABASE=Aspire 7740G ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset HECI Controller (Aspire 7740G) + + pci:v00008086d00003B64sv000015D9sd0000060D* +- ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset HECI Controller (C7SIM-Q Motherboard) + + pci:v00008086d00003B64sv0000E4BFsd000050C1* +- ID_MODEL_FROM_DATABASE=PC1-GROOVE ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset HECI Controller (PC1-GROOVE) + + pci:v00008086d00003B65* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset HECI Controller +@@ -69435,7 +69435,7 @@ pci:v00008086d00003B67* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset KT Controller + + pci:v00008086d00003B67sv0000E4BFsd000050C1* +- ID_MODEL_FROM_DATABASE=PC1-GROOVE ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset KT Controller (PC1-GROOVE) + + pci:v00008086d00003C00* + ID_MODEL_FROM_DATABASE=Xeon E5/Core i7 DMI2 +@@ -69765,25 +69765,25 @@ pci:v00008086d00004220* + ID_MODEL_FROM_DATABASE=PRO/Wireless 2200BG [Calexico2] Network Connection + + pci:v00008086d00004220sv0000103Csd00000934* +- ID_MODEL_FROM_DATABASE=Compaq nw8240/nx8220 ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 2200BG [Calexico2] Network Connection (Compaq nw8240/nx8220) + + pci:v00008086d00004220sv0000103Csd000012F6* +- ID_MODEL_FROM_DATABASE=nc6120/nx8220/nw8240 ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 2200BG [Calexico2] Network Connection (nc6120/nx8220/nw8240) + + pci:v00008086d00004220sv00008086sd00002701* +- ID_MODEL_FROM_DATABASE=WM3B2300BG Mini-PCI Card ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 2200BG [Calexico2] Network Connection (WM3B2300BG Mini-PCI Card) + + pci:v00008086d00004220sv00008086sd00002712* +- ID_MODEL_FROM_DATABASE=IBM ThinkPad R50e ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 2200BG [Calexico2] Network Connection (IBM ThinkPad R50e) + + pci:v00008086d00004220sv00008086sd00002721* +- ID_MODEL_FROM_DATABASE=Dell B130 laptop integrated WLAN ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 2200BG [Calexico2] Network Connection (Dell B130 laptop integrated WLAN) + + pci:v00008086d00004220sv00008086sd00002722* +- ID_MODEL_FROM_DATABASE=Dell Latitude D600 ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 2200BG [Calexico2] Network Connection (Dell Latitude D600) + + pci:v00008086d00004220sv00008086sd00002731* +- ID_MODEL_FROM_DATABASE=Samsung P35 integrated WLAN ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 2200BG [Calexico2] Network Connection (Samsung P35 integrated WLAN) + + pci:v00008086d00004222* + ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection +@@ -69792,40 +69792,40 @@ pci:v00008086d00004222sv0000103Csd0000135C* + ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection + + pci:v00008086d00004222sv00008086sd00001000* +- ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG Network Connection ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection (PRO/Wireless 3945ABG Network Connection) + + pci:v00008086d00004222sv00008086sd00001001* +- ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG Network Connection ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection (PRO/Wireless 3945ABG Network Connection) + + pci:v00008086d00004222sv00008086sd00001005* +- ID_MODEL_FROM_DATABASE=PRO/Wireless 3945BG Network Connection ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection (PRO/Wireless 3945BG Network Connection) + + pci:v00008086d00004222sv00008086sd00001034* +- ID_MODEL_FROM_DATABASE=PRO/Wireless 3945BG Network Connection ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection (PRO/Wireless 3945BG Network Connection) + + pci:v00008086d00004222sv00008086sd00001044* +- ID_MODEL_FROM_DATABASE=PRO/Wireless 3945BG Network Connection ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection (PRO/Wireless 3945BG Network Connection) + + pci:v00008086d00004222sv00008086sd00001C00* +- ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG Network Connection ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection (PRO/Wireless 3945ABG Network Connection) + + pci:v00008086d00004223* + ID_MODEL_FROM_DATABASE=PRO/Wireless 2915ABG [Calexico2] Network Connection + + pci:v00008086d00004223sv00001000sd00008086* +- ID_MODEL_FROM_DATABASE=mPCI 3B Americas/Europe ZZA ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 2915ABG [Calexico2] Network Connection (mPCI 3B Americas/Europe ZZA) + + pci:v00008086d00004223sv00001001sd00008086* +- ID_MODEL_FROM_DATABASE=mPCI 3B Europe ZZE ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 2915ABG [Calexico2] Network Connection (mPCI 3B Europe ZZE) + + pci:v00008086d00004223sv00001002sd00008086* +- ID_MODEL_FROM_DATABASE=mPCI 3B Japan ZZJ ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 2915ABG [Calexico2] Network Connection (mPCI 3B Japan ZZJ) + + pci:v00008086d00004223sv00001003sd00008086* +- ID_MODEL_FROM_DATABASE=mPCI 3B High-Band ZZH ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 2915ABG [Calexico2] Network Connection (mPCI 3B High-Band ZZH) + + pci:v00008086d00004223sv00001351sd0000103C* +- ID_MODEL_FROM_DATABASE=Compaq NC6220 ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 2915ABG [Calexico2] Network Connection (Compaq NC6220) + + pci:v00008086d00004224* + ID_MODEL_FROM_DATABASE=PRO/Wireless 2915ABG [Calexico2] Network Connection +@@ -69834,106 +69834,106 @@ pci:v00008086d00004227* + ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection + + pci:v00008086d00004227sv00008086sd00001011* +- ID_MODEL_FROM_DATABASE=ThinkPad T60/R60e/X60s ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection (ThinkPad T60/R60e/X60s) + + pci:v00008086d00004227sv00008086sd00001014* +- ID_MODEL_FROM_DATABASE=PRO/Wireless 3945BG Network Connection ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection (PRO/Wireless 3945BG Network Connection) + + pci:v00008086d00004229* + ID_MODEL_FROM_DATABASE=PRO/Wireless 4965 AG or AGN [Kedron] Network Connection + + pci:v00008086d00004229sv00008086sd00001100* +- ID_MODEL_FROM_DATABASE=Vaio VGN-SZ79SN_C ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 4965 AG or AGN [Kedron] Network Connection (Vaio VGN-SZ79SN_C) + + pci:v00008086d00004229sv00008086sd00001101* +- ID_MODEL_FROM_DATABASE=PRO/Wireless 4965 AG or AGN ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 4965 AG or AGN [Kedron] Network Connection (PRO/Wireless 4965 AG or AGN) + + pci:v00008086d0000422B* + ID_MODEL_FROM_DATABASE=Centrino Ultimate-N 6300 + + pci:v00008086d0000422Bsv00008086sd00001101* +- ID_MODEL_FROM_DATABASE=Centrino Ultimate-N 6300 3x3 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Ultimate-N 6300 (3x3 AGN) + + pci:v00008086d0000422Bsv00008086sd00001121* +- ID_MODEL_FROM_DATABASE=Centrino Ultimate-N 6300 3x3 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Ultimate-N 6300 (3x3 AGN) + + pci:v00008086d0000422C* + ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6200 + + pci:v00008086d0000422Csv00008086sd00001301* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6200 2x2 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6200 (2x2 AGN) + + pci:v00008086d0000422Csv00008086sd00001306* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6200 2x2 ABG ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6200 (2x2 ABG) + + pci:v00008086d0000422Csv00008086sd00001307* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6200 2x2 BG ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6200 (2x2 BG) + + pci:v00008086d0000422Csv00008086sd00001321* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6200 2x2 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6200 (2x2 AGN) + + pci:v00008086d0000422Csv00008086sd00001326* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6200 2x2 ABG ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6200 (2x2 ABG) + + pci:v00008086d00004230* + ID_MODEL_FROM_DATABASE=PRO/Wireless 4965 AG or AGN [Kedron] Network Connection + + pci:v00008086d00004230sv00008086sd00001110* +- ID_MODEL_FROM_DATABASE=Lenovo ThinkPad T51 ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 4965 AG or AGN [Kedron] Network Connection (Lenovo ThinkPad T51) + + pci:v00008086d00004230sv00008086sd00001111* +- ID_MODEL_FROM_DATABASE=Lenovo ThinkPad T61 ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 4965 AG or AGN [Kedron] Network Connection (Lenovo ThinkPad T61) + + pci:v00008086d00004232* + ID_MODEL_FROM_DATABASE=WiFi Link 5100 + + pci:v00008086d00004232sv00008086sd00001201* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 AGN ++ ID_MODEL_FROM_DATABASE=WiFi Link 5100 (AGN) + + pci:v00008086d00004232sv00008086sd00001204* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 AGN ++ ID_MODEL_FROM_DATABASE=WiFi Link 5100 (AGN) + + pci:v00008086d00004232sv00008086sd00001205* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 BGN ++ ID_MODEL_FROM_DATABASE=WiFi Link 5100 (BGN) + + pci:v00008086d00004232sv00008086sd00001206* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 ABG ++ ID_MODEL_FROM_DATABASE=WiFi Link 5100 (ABG) + + pci:v00008086d00004232sv00008086sd00001221* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 AGN ++ ID_MODEL_FROM_DATABASE=WiFi Link 5100 (AGN) + + pci:v00008086d00004232sv00008086sd00001224* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 AGN ++ ID_MODEL_FROM_DATABASE=WiFi Link 5100 (AGN) + + pci:v00008086d00004232sv00008086sd00001225* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 BGN ++ ID_MODEL_FROM_DATABASE=WiFi Link 5100 (BGN) + + pci:v00008086d00004232sv00008086sd00001226* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 ABG ++ ID_MODEL_FROM_DATABASE=WiFi Link 5100 (ABG) + + pci:v00008086d00004232sv00008086sd00001301* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 AGN ++ ID_MODEL_FROM_DATABASE=WiFi Link 5100 (AGN) + + pci:v00008086d00004232sv00008086sd00001304* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 AGN ++ ID_MODEL_FROM_DATABASE=WiFi Link 5100 (AGN) + + pci:v00008086d00004232sv00008086sd00001305* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 BGN ++ ID_MODEL_FROM_DATABASE=WiFi Link 5100 (BGN) + + pci:v00008086d00004232sv00008086sd00001306* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 ABG ++ ID_MODEL_FROM_DATABASE=WiFi Link 5100 (ABG) + + pci:v00008086d00004232sv00008086sd00001321* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 AGN ++ ID_MODEL_FROM_DATABASE=WiFi Link 5100 (AGN) + + pci:v00008086d00004232sv00008086sd00001324* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 AGN ++ ID_MODEL_FROM_DATABASE=WiFi Link 5100 (AGN) + + pci:v00008086d00004232sv00008086sd00001325* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 BGN ++ ID_MODEL_FROM_DATABASE=WiFi Link 5100 (BGN) + + pci:v00008086d00004232sv00008086sd00001326* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 ABG ++ ID_MODEL_FROM_DATABASE=WiFi Link 5100 (ABG) + + pci:v00008086d00004235* + ID_MODEL_FROM_DATABASE=Ultimate N WiFi Link 5300 +@@ -69945,43 +69945,43 @@ pci:v00008086d00004237* + ID_MODEL_FROM_DATABASE=PRO/Wireless 5100 AGN [Shiloh] Network Connection + + pci:v00008086d00004237sv00008086sd00001211* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 AGN ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 5100 AGN [Shiloh] Network Connection (WiFi Link 5100 AGN) + + pci:v00008086d00004237sv00008086sd00001214* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 AGN ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 5100 AGN [Shiloh] Network Connection (WiFi Link 5100 AGN) + + pci:v00008086d00004237sv00008086sd00001215* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 BGN ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 5100 AGN [Shiloh] Network Connection (WiFi Link 5100 BGN) + + pci:v00008086d00004237sv00008086sd00001216* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 ABG ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 5100 AGN [Shiloh] Network Connection (WiFi Link 5100 ABG) + + pci:v00008086d00004237sv00008086sd00001311* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 AGN ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 5100 AGN [Shiloh] Network Connection (WiFi Link 5100 AGN) + + pci:v00008086d00004237sv00008086sd00001314* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 AGN ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 5100 AGN [Shiloh] Network Connection (WiFi Link 5100 AGN) + + pci:v00008086d00004237sv00008086sd00001315* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 BGN ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 5100 AGN [Shiloh] Network Connection (WiFi Link 5100 BGN) + + pci:v00008086d00004237sv00008086sd00001316* +- ID_MODEL_FROM_DATABASE=WiFi Link 5100 ABG ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 5100 AGN [Shiloh] Network Connection (WiFi Link 5100 ABG) + + pci:v00008086d00004238* + ID_MODEL_FROM_DATABASE=Centrino Ultimate-N 6300 + + pci:v00008086d00004238sv00008086sd00001111* +- ID_MODEL_FROM_DATABASE=Centrino Ultimate-N 6300 3x3 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Ultimate-N 6300 (3x3 AGN) + + pci:v00008086d00004239* + ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6200 + + pci:v00008086d00004239sv00008086sd00001311* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6200 2x2 AGN ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6200 (2x2 AGN) + + pci:v00008086d00004239sv00008086sd00001316* +- ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6200 2x2 ABG ++ ID_MODEL_FROM_DATABASE=Centrino Advanced-N 6200 (2x2 ABG) + + pci:v00008086d0000423A* + ID_MODEL_FROM_DATABASE=PRO/Wireless 5350 AGN [Echo Peak] Network Connection +@@ -69993,37 +69993,37 @@ pci:v00008086d0000423C* + ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 + + pci:v00008086d0000423Csv00008086sd00001201* +- ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 AGN ++ ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 (AGN) + + pci:v00008086d0000423Csv00008086sd00001206* +- ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 ABG ++ ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 (ABG) + + pci:v00008086d0000423Csv00008086sd00001221* +- ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 AGN ++ ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 (AGN) + + pci:v00008086d0000423Csv00008086sd00001301* +- ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 AGN ++ ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 (AGN) + + pci:v00008086d0000423Csv00008086sd00001306* +- ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 ABG ++ ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 (ABG) + + pci:v00008086d0000423Csv00008086sd00001321* +- ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 AGN ++ ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 (AGN) + + pci:v00008086d0000423D* + ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 + + pci:v00008086d0000423Dsv00008086sd00001211* +- ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 AGN ++ ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 (AGN) + + pci:v00008086d0000423Dsv00008086sd00001216* +- ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 ABG ++ ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 (ABG) + + pci:v00008086d0000423Dsv00008086sd00001311* +- ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 AGN ++ ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 (AGN) + + pci:v00008086d0000423Dsv00008086sd00001316* +- ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 ABG ++ ID_MODEL_FROM_DATABASE=WiMAX/WiFi Link 5150 (ABG) + + pci:v00008086d0000444E* + ID_MODEL_FROM_DATABASE=Turbo Memory Controller +@@ -70176,7 +70176,7 @@ pci:v00008086d00005201* + ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Intelligent Server Fast Ethernet Controller + + pci:v00008086d00005201sv00008086sd00000001* +- ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Server Ethernet Adapter ++ ID_MODEL_FROM_DATABASE=EtherExpress PRO/100 Intelligent Server Fast Ethernet Controller (EtherExpress PRO/100 Server Ethernet Adapter) + + pci:v00008086d0000530D* + ID_MODEL_FROM_DATABASE=80310 (IOP) IO Processor +@@ -70185,7 +70185,7 @@ pci:v00008086d00005845* + ID_MODEL_FROM_DATABASE=QEMU NVM Express Controller + + pci:v00008086d00005845sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=QEMU NVM Express Controller (QEMU Virtual Machine) + + pci:v00008086d000065C0* + ID_MODEL_FROM_DATABASE=5100 Chipset Memory Controller Hub +@@ -70212,16 +70212,16 @@ pci:v00008086d000065F0* + ID_MODEL_FROM_DATABASE=5100 Chipset FSB Registers + + pci:v00008086d000065F0sv00001028sd0000020F* +- ID_MODEL_FROM_DATABASE=PowerEdge R300 ++ ID_MODEL_FROM_DATABASE=5100 Chipset FSB Registers (PowerEdge R300) + + pci:v00008086d000065F0sv00001028sd00000210* +- ID_MODEL_FROM_DATABASE=PowerEdge T300 ++ ID_MODEL_FROM_DATABASE=5100 Chipset FSB Registers (PowerEdge T300) + + pci:v00008086d000065F1* + ID_MODEL_FROM_DATABASE=5100 Chipset Reserved Registers + + pci:v00008086d000065F1sv00001028sd00000210* +- ID_MODEL_FROM_DATABASE=PowerEdge T300 ++ ID_MODEL_FROM_DATABASE=5100 Chipset Reserved Registers (PowerEdge T300) + + pci:v00008086d000065F3* + ID_MODEL_FROM_DATABASE=5100 Chipset Reserved Registers +@@ -70251,19 +70251,19 @@ pci:v00008086d00007000* + ID_MODEL_FROM_DATABASE=82371SB PIIX3 ISA [Natoma/Triton II] + + pci:v00008086d00007000sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=Qemu virtual machine ++ ID_MODEL_FROM_DATABASE=82371SB PIIX3 ISA [Natoma/Triton II] (Qemu virtual machine) + + pci:v00008086d00007010* + ID_MODEL_FROM_DATABASE=82371SB PIIX3 IDE [Natoma/Triton II] + + pci:v00008086d00007010sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=Qemu virtual machine ++ ID_MODEL_FROM_DATABASE=82371SB PIIX3 IDE [Natoma/Triton II] (Qemu virtual machine) + + pci:v00008086d00007020* + ID_MODEL_FROM_DATABASE=82371SB PIIX3 USB [Natoma/Triton II] + + pci:v00008086d00007020sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82371SB PIIX3 USB [Natoma/Triton II] (QEMU Virtual Machine) + + pci:v00008086d00007030* + ID_MODEL_FROM_DATABASE=430VX - 82437VX TVX [Triton VX] +@@ -70281,52 +70281,52 @@ pci:v00008086d00007110* + ID_MODEL_FROM_DATABASE=82371AB/EB/MB PIIX4 ISA + + pci:v00008086d00007110sv000015ADsd00001976* +- ID_MODEL_FROM_DATABASE=Virtual Machine Chipset ++ ID_MODEL_FROM_DATABASE=82371AB/EB/MB PIIX4 ISA (Virtual Machine Chipset) + + pci:v00008086d00007111* + ID_MODEL_FROM_DATABASE=82371AB/EB/MB PIIX4 IDE + + pci:v00008086d00007111sv000015ADsd00001976* +- ID_MODEL_FROM_DATABASE=Virtual Machine Chipset ++ ID_MODEL_FROM_DATABASE=82371AB/EB/MB PIIX4 IDE (Virtual Machine Chipset) + + pci:v00008086d00007112* + ID_MODEL_FROM_DATABASE=82371AB/EB/MB PIIX4 USB + + pci:v00008086d00007112sv000015ADsd00001976* +- ID_MODEL_FROM_DATABASE=Virtual Machine Chipset ++ ID_MODEL_FROM_DATABASE=82371AB/EB/MB PIIX4 USB (Virtual Machine Chipset) + + pci:v00008086d00007112sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=QEMU Virtual Machine ++ ID_MODEL_FROM_DATABASE=82371AB/EB/MB PIIX4 USB (QEMU Virtual Machine) + + pci:v00008086d00007113* + ID_MODEL_FROM_DATABASE=82371AB/EB/MB PIIX4 ACPI + + pci:v00008086d00007113sv000015ADsd00001976* +- ID_MODEL_FROM_DATABASE=Virtual Machine Chipset ++ ID_MODEL_FROM_DATABASE=82371AB/EB/MB PIIX4 ACPI (Virtual Machine Chipset) + + pci:v00008086d00007113sv00001AF4sd00001100* +- ID_MODEL_FROM_DATABASE=Qemu virtual machine ++ ID_MODEL_FROM_DATABASE=82371AB/EB/MB PIIX4 ACPI (Qemu virtual machine) + + pci:v00008086d00007120* + ID_MODEL_FROM_DATABASE=82810 GMCH (Graphics Memory Controller Hub) + + pci:v00008086d00007120sv00004C53sd00001040* +- ID_MODEL_FROM_DATABASE=CL7 mainboard ++ ID_MODEL_FROM_DATABASE=82810 GMCH (Graphics Memory Controller Hub) (CL7 mainboard) + + pci:v00008086d00007120sv00004C53sd00001060* +- ID_MODEL_FROM_DATABASE=PC7 mainboard ++ ID_MODEL_FROM_DATABASE=82810 GMCH (Graphics Memory Controller Hub) (PC7 mainboard) + + pci:v00008086d00007121* + ID_MODEL_FROM_DATABASE=82810 (CGC) Chipset Graphics Controller + + pci:v00008086d00007121sv00004C53sd00001040* +- ID_MODEL_FROM_DATABASE=CL7 mainboard ++ ID_MODEL_FROM_DATABASE=82810 (CGC) Chipset Graphics Controller (CL7 mainboard) + + pci:v00008086d00007121sv00004C53sd00001060* +- ID_MODEL_FROM_DATABASE=PC7 mainboard ++ ID_MODEL_FROM_DATABASE=82810 (CGC) Chipset Graphics Controller (PC7 mainboard) + + pci:v00008086d00007121sv00008086sd00004341* +- ID_MODEL_FROM_DATABASE=Cayman (CA810) Mainboard ++ ID_MODEL_FROM_DATABASE=82810 (CGC) Chipset Graphics Controller (Cayman (CA810) Mainboard) + + pci:v00008086d00007122* + ID_MODEL_FROM_DATABASE=82810 DC-100 (GMCH) Graphics Memory Controller Hub +@@ -70338,13 +70338,13 @@ pci:v00008086d00007124* + ID_MODEL_FROM_DATABASE=82810E DC-133 (GMCH) Graphics Memory Controller Hub + + pci:v00008086d00007124sv00001028sd000000B4* +- ID_MODEL_FROM_DATABASE=OptiPlex GX110 ++ ID_MODEL_FROM_DATABASE=82810E DC-133 (GMCH) Graphics Memory Controller Hub (OptiPlex GX110) + + pci:v00008086d00007125* + ID_MODEL_FROM_DATABASE=82810E DC-133 (CGC) Chipset Graphics Controller + + pci:v00008086d00007125sv00001028sd000000B4* +- ID_MODEL_FROM_DATABASE=OptiPlex GX110 ++ ID_MODEL_FROM_DATABASE=82810E DC-133 (CGC) Chipset Graphics Controller (OptiPlex GX110) + + pci:v00008086d00007126* + ID_MODEL_FROM_DATABASE=82810 DC-133 System and Graphics Controller +@@ -70365,73 +70365,73 @@ pci:v00008086d00007190* + ID_MODEL_FROM_DATABASE=440BX/ZX/DX - 82443BX/ZX/DX Host bridge + + pci:v00008086d00007190sv00000E11sd00000500* +- ID_MODEL_FROM_DATABASE=Armada 1750 Laptop System Chipset ++ ID_MODEL_FROM_DATABASE=440BX/ZX/DX - 82443BX/ZX/DX Host bridge (Armada 1750 Laptop System Chipset) + + pci:v00008086d00007190sv00000E11sd0000B110* +- ID_MODEL_FROM_DATABASE=Armada M700/E500 ++ ID_MODEL_FROM_DATABASE=440BX/ZX/DX - 82443BX/ZX/DX Host bridge (Armada M700/E500) + + pci:v00008086d00007190sv00001028sd0000008E* +- ID_MODEL_FROM_DATABASE=PowerEdge 1300 mainboard ++ ID_MODEL_FROM_DATABASE=440BX/ZX/DX - 82443BX/ZX/DX Host bridge (PowerEdge 1300 mainboard) + + pci:v00008086d00007190sv00001043sd0000803B* +- ID_MODEL_FROM_DATABASE=CUBX-L/E Mainboard ++ ID_MODEL_FROM_DATABASE=440BX/ZX/DX - 82443BX/ZX/DX Host bridge (CUBX-L/E Mainboard) + + pci:v00008086d00007190sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Toshiba Tecra 8100 Laptop System Chipset ++ ID_MODEL_FROM_DATABASE=440BX/ZX/DX - 82443BX/ZX/DX Host bridge (Toshiba Tecra 8100 Laptop System Chipset) + + pci:v00008086d00007190sv000015ADsd00001976* +- ID_MODEL_FROM_DATABASE=Virtual Machine Chipset ++ ID_MODEL_FROM_DATABASE=440BX/ZX/DX - 82443BX/ZX/DX Host bridge (Virtual Machine Chipset) + + pci:v00008086d00007190sv00004C53sd00001050* +- ID_MODEL_FROM_DATABASE=CT7 mainboard ++ ID_MODEL_FROM_DATABASE=440BX/ZX/DX - 82443BX/ZX/DX Host bridge (CT7 mainboard) + + pci:v00008086d00007190sv00004C53sd00001051* +- ID_MODEL_FROM_DATABASE=CE7 mainboard ++ ID_MODEL_FROM_DATABASE=440BX/ZX/DX - 82443BX/ZX/DX Host bridge (CE7 mainboard) + + pci:v00008086d00007191* + ID_MODEL_FROM_DATABASE=440BX/ZX/DX - 82443BX/ZX/DX AGP bridge + + pci:v00008086d00007191sv00001028sd0000008E* +- ID_MODEL_FROM_DATABASE=PowerEdge 1300 mainboard ++ ID_MODEL_FROM_DATABASE=440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (PowerEdge 1300 mainboard) + + pci:v00008086d00007192* + ID_MODEL_FROM_DATABASE=440BX/ZX/DX - 82443BX/ZX/DX Host bridge (AGP disabled) + + pci:v00008086d00007192sv00000E11sd00000460* +- ID_MODEL_FROM_DATABASE=Armada 1700 Laptop System Chipset ++ ID_MODEL_FROM_DATABASE=440BX/ZX/DX - 82443BX/ZX/DX Host bridge (AGP disabled) (Armada 1700 Laptop System Chipset) + + pci:v00008086d00007192sv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Satellite 4010 ++ ID_MODEL_FROM_DATABASE=440BX/ZX/DX - 82443BX/ZX/DX Host bridge (AGP disabled) (Satellite 4010) + + pci:v00008086d00007192sv00004C53sd00001000* +- ID_MODEL_FROM_DATABASE=CC7/CR7/CP7/VC7/VP7/VR7 mainboard ++ ID_MODEL_FROM_DATABASE=440BX/ZX/DX - 82443BX/ZX/DX Host bridge (AGP disabled) (CC7/CR7/CP7/VC7/VP7/VR7 mainboard) + + pci:v00008086d00007192sv00008086sd00007190* +- ID_MODEL_FROM_DATABASE=Dell PowerEdge 350 ++ ID_MODEL_FROM_DATABASE=440BX/ZX/DX - 82443BX/ZX/DX Host bridge (AGP disabled) (Dell PowerEdge 350) + + pci:v00008086d00007194* + ID_MODEL_FROM_DATABASE=82440MX Host Bridge + + pci:v00008086d00007194sv00001033sd00000000* +- ID_MODEL_FROM_DATABASE=Versa Note Vxi ++ ID_MODEL_FROM_DATABASE=82440MX Host Bridge (Versa Note Vxi) + + pci:v00008086d00007194sv00004C53sd000010A0* +- ID_MODEL_FROM_DATABASE=CA3/CR3 mainboard ++ ID_MODEL_FROM_DATABASE=82440MX Host Bridge (CA3/CR3 mainboard) + + pci:v00008086d00007195* + ID_MODEL_FROM_DATABASE=82440MX AC'97 Audio Controller + + pci:v00008086d00007195sv00001033sd000080CC* +- ID_MODEL_FROM_DATABASE=Versa Note VXi ++ ID_MODEL_FROM_DATABASE=82440MX AC'97 Audio Controller (Versa Note VXi) + + pci:v00008086d00007195sv000010CFsd00001099* +- ID_MODEL_FROM_DATABASE=QSound_SigmaTel Stac97 PCI Audio ++ ID_MODEL_FROM_DATABASE=82440MX AC'97 Audio Controller (QSound_SigmaTel Stac97 PCI Audio) + + pci:v00008086d00007195sv000011D4sd00000040* +- ID_MODEL_FROM_DATABASE=SoundMAX Integrated Digital Audio ++ ID_MODEL_FROM_DATABASE=82440MX AC'97 Audio Controller (SoundMAX Integrated Digital Audio) + + pci:v00008086d00007195sv000011D4sd00000048* +- ID_MODEL_FROM_DATABASE=SoundMAX Integrated Digital Audio ++ ID_MODEL_FROM_DATABASE=82440MX AC'97 Audio Controller (SoundMAX Integrated Digital Audio) + + pci:v00008086d00007196* + ID_MODEL_FROM_DATABASE=82440MX AC'97 Modem Controller +@@ -70452,10 +70452,10 @@ pci:v00008086d000071A0* + ID_MODEL_FROM_DATABASE=440GX - 82443GX Host bridge + + pci:v00008086d000071A0sv00004C53sd00001050* +- ID_MODEL_FROM_DATABASE=CT7 mainboard ++ ID_MODEL_FROM_DATABASE=440GX - 82443GX Host bridge (CT7 mainboard) + + pci:v00008086d000071A0sv00004C53sd00001051* +- ID_MODEL_FROM_DATABASE=CE7 mainboard ++ ID_MODEL_FROM_DATABASE=440GX - 82443GX Host bridge (CE7 mainboard) + + pci:v00008086d000071A1* + ID_MODEL_FROM_DATABASE=440GX - 82443GX AGP bridge +@@ -70464,7 +70464,7 @@ pci:v00008086d000071A2* + ID_MODEL_FROM_DATABASE=440GX - 82443GX Host bridge (AGP disabled) + + pci:v00008086d000071A2sv00004C53sd00001000* +- ID_MODEL_FROM_DATABASE=CC7/CR7/CP7/VC7/VP7/VR7 mainboard ++ ID_MODEL_FROM_DATABASE=440GX - 82443GX Host bridge (AGP disabled) (CC7/CR7/CP7/VC7/VP7/VR7 mainboard) + + pci:v00008086d00007600* + ID_MODEL_FROM_DATABASE=82372FB PIIX5 ISA +@@ -70482,25 +70482,25 @@ pci:v00008086d00007800* + ID_MODEL_FROM_DATABASE=82740 (i740) AGP Graphics Accelerator + + pci:v00008086d00007800sv0000003Dsd00000008* +- ID_MODEL_FROM_DATABASE=Starfighter AGP ++ ID_MODEL_FROM_DATABASE=82740 (i740) AGP Graphics Accelerator (Starfighter AGP) + + pci:v00008086d00007800sv0000003Dsd0000000B* +- ID_MODEL_FROM_DATABASE=Starfighter AGP ++ ID_MODEL_FROM_DATABASE=82740 (i740) AGP Graphics Accelerator (Starfighter AGP) + + pci:v00008086d00007800sv00001092sd00000100* +- ID_MODEL_FROM_DATABASE=Stealth II G460 ++ ID_MODEL_FROM_DATABASE=82740 (i740) AGP Graphics Accelerator (Stealth II G460) + + pci:v00008086d00007800sv000010B4sd0000201A* +- ID_MODEL_FROM_DATABASE=Lightspeed 740 ++ ID_MODEL_FROM_DATABASE=82740 (i740) AGP Graphics Accelerator (Lightspeed 740) + + pci:v00008086d00007800sv000010B4sd0000202F* +- ID_MODEL_FROM_DATABASE=Lightspeed 740 ++ ID_MODEL_FROM_DATABASE=82740 (i740) AGP Graphics Accelerator (Lightspeed 740) + + pci:v00008086d00007800sv00008086sd00000000* +- ID_MODEL_FROM_DATABASE=Terminator 2x/i ++ ID_MODEL_FROM_DATABASE=82740 (i740) AGP Graphics Accelerator (Terminator 2x/i) + + pci:v00008086d00007800sv00008086sd00000100* +- ID_MODEL_FROM_DATABASE=Intel740 Graphics Accelerator ++ ID_MODEL_FROM_DATABASE=82740 (i740) AGP Graphics Accelerator (Intel740 Graphics Accelerator) + + pci:v00008086d00008002* + ID_MODEL_FROM_DATABASE=Trusted Execution Technology Registers +@@ -70611,13 +70611,13 @@ pci:v00008086d00008500* + ID_MODEL_FROM_DATABASE=IXP4XX Network Processor (IXP420/421/422/425/IXC1100) + + pci:v00008086d00008500sv00001993sd00000DED* +- ID_MODEL_FROM_DATABASE=mGuard-PCI AV#2 ++ ID_MODEL_FROM_DATABASE=IXP4XX Network Processor (IXP420/421/422/425/IXC1100) (mGuard-PCI AV#2) + + pci:v00008086d00008500sv00001993sd00000DEE* +- ID_MODEL_FROM_DATABASE=mGuard-PCI AV#1 ++ ID_MODEL_FROM_DATABASE=IXP4XX Network Processor (IXP420/421/422/425/IXC1100) (mGuard-PCI AV#1) + + pci:v00008086d00008500sv00001993sd00000DEF* +- ID_MODEL_FROM_DATABASE=mGuard-PCI AV#0 ++ ID_MODEL_FROM_DATABASE=IXP4XX Network Processor (IXP420/421/422/425/IXC1100) (mGuard-PCI AV#0) + + pci:v00008086d00008800* + ID_MODEL_FROM_DATABASE=Platform Controller Hub EG20T PCI Express Port +@@ -70710,10 +70710,10 @@ pci:v00008086d00008C03* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] + + pci:v00008086d00008C03sv0000103Csd00001909* +- ID_MODEL_FROM_DATABASE=ZBook 15 ++ ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] (ZBook 15) + + pci:v00008086d00008C03sv000017AAsd0000220E* +- ID_MODEL_FROM_DATABASE=ThinkPad T440p ++ ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] (ThinkPad T440p) + + pci:v00008086d00008C04* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family SATA Controller 1 [RAID mode] +@@ -70743,7 +70743,7 @@ pci:v00008086d00008C10* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family PCI Express Root Port #1 + + pci:v00008086d00008C10sv000017AAsd0000220E* +- ID_MODEL_FROM_DATABASE=ThinkPad T440p ++ ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family PCI Express Root Port #1 (ThinkPad T440p) + + pci:v00008086d00008C11* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family PCI Express Root Port #1 +@@ -70752,7 +70752,7 @@ pci:v00008086d00008C12* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family PCI Express Root Port #2 + + pci:v00008086d00008C12sv000017AAsd0000220E* +- ID_MODEL_FROM_DATABASE=ThinkPad T440p ++ ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family PCI Express Root Port #2 (ThinkPad T440p) + + pci:v00008086d00008C13* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family PCI Express Root Port #2 +@@ -70797,10 +70797,10 @@ pci:v00008086d00008C20* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset High Definition Audio Controller + + pci:v00008086d00008C20sv0000103Csd00001909* +- ID_MODEL_FROM_DATABASE=ZBook 15 ++ ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset High Definition Audio Controller (ZBook 15) + + pci:v00008086d00008C20sv000017AAsd0000220E* +- ID_MODEL_FROM_DATABASE=ThinkPad T440p ++ ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset High Definition Audio Controller (ThinkPad T440p) + + pci:v00008086d00008C21* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset High Definition Audio Controller +@@ -70809,10 +70809,10 @@ pci:v00008086d00008C22* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family SMBus Controller + + pci:v00008086d00008C22sv0000103Csd00001909* +- ID_MODEL_FROM_DATABASE=ZBook 15 ++ ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family SMBus Controller (ZBook 15) + + pci:v00008086d00008C22sv000017AAsd0000220E* +- ID_MODEL_FROM_DATABASE=ThinkPad T440p ++ ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family SMBus Controller (ThinkPad T440p) + + pci:v00008086d00008C23* + ID_MODEL_FROM_DATABASE=8 Series Chipset Family CHAP Counters +@@ -70824,28 +70824,28 @@ pci:v00008086d00008C26* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family USB EHCI #1 + + pci:v00008086d00008C26sv0000103Csd00001909* +- ID_MODEL_FROM_DATABASE=ZBook 15 ++ ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family USB EHCI #1 (ZBook 15) + + pci:v00008086d00008C26sv000017AAsd0000220E* +- ID_MODEL_FROM_DATABASE=ThinkPad T440p ++ ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family USB EHCI #1 (ThinkPad T440p) + + pci:v00008086d00008C2D* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family USB EHCI #2 + + pci:v00008086d00008C2Dsv0000103Csd00001909* +- ID_MODEL_FROM_DATABASE=ZBook 15 ++ ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family USB EHCI #2 (ZBook 15) + + pci:v00008086d00008C2Dsv000017AAsd0000220E* +- ID_MODEL_FROM_DATABASE=ThinkPad T440p ++ ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family USB EHCI #2 (ThinkPad T440p) + + pci:v00008086d00008C31* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family USB xHCI + + pci:v00008086d00008C31sv0000103Csd00001909* +- ID_MODEL_FROM_DATABASE=ZBook 15 ++ ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family USB xHCI (ZBook 15) + + pci:v00008086d00008C31sv000017AAsd0000220E* +- ID_MODEL_FROM_DATABASE=ThinkPad T440p ++ ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family USB xHCI (ThinkPad T440p) + + pci:v00008086d00008C33* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family LAN Controller +@@ -70857,10 +70857,10 @@ pci:v00008086d00008C3A* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family MEI Controller #1 + + pci:v00008086d00008C3Asv0000103Csd00001909* +- ID_MODEL_FROM_DATABASE=ZBook 15 ++ ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family MEI Controller #1 (ZBook 15) + + pci:v00008086d00008C3Asv000017AAsd0000220E* +- ID_MODEL_FROM_DATABASE=ThinkPad T440p ++ ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family MEI Controller #1 (ThinkPad T440p) + + pci:v00008086d00008C3B* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family MEI Controller #2 +@@ -70920,10 +70920,10 @@ pci:v00008086d00008C4F* + ID_MODEL_FROM_DATABASE=QM87 Express LPC Controller + + pci:v00008086d00008C4Fsv0000103Csd00001909* +- ID_MODEL_FROM_DATABASE=ZBook 15 ++ ID_MODEL_FROM_DATABASE=QM87 Express LPC Controller (ZBook 15) + + pci:v00008086d00008C4Fsv000017AAsd0000220E* +- ID_MODEL_FROM_DATABASE=ThinkPad T440p ++ ID_MODEL_FROM_DATABASE=QM87 Express LPC Controller (ThinkPad T440p) + + pci:v00008086d00008C50* + ID_MODEL_FROM_DATABASE=B85 Express LPC Controller +@@ -70986,7 +70986,7 @@ pci:v00008086d00008D06* + ID_MODEL_FROM_DATABASE=Wellsburg SATA Controller [RAID mode] + + pci:v00008086d00008D06sv000017AAsd00001031* +- ID_MODEL_FROM_DATABASE=ThinkServer RAID 110i ++ ID_MODEL_FROM_DATABASE=Wellsburg SATA Controller [RAID mode] (ThinkServer RAID 110i) + + pci:v00008086d00008D08* + ID_MODEL_FROM_DATABASE=Wellsburg 2-port SATA Controller [IDE mode] +@@ -71196,7 +71196,7 @@ pci:v00008086d00009C03* + ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [AHCI mode] + + pci:v00008086d00009C03sv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [AHCI mode] (ThinkPad X240) + + pci:v00008086d00009C04* + ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [RAID mode] +@@ -71286,7 +71286,7 @@ pci:v00008086d00009C20* + ID_MODEL_FROM_DATABASE=Lynx Point-LP HD Audio Controller + + pci:v00008086d00009C20sv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ ID_MODEL_FROM_DATABASE=Lynx Point-LP HD Audio Controller (ThinkPad X240) + + pci:v00008086d00009C21* + ID_MODEL_FROM_DATABASE=Lynx Point-LP HD Audio Controller +@@ -71295,7 +71295,7 @@ pci:v00008086d00009C22* + ID_MODEL_FROM_DATABASE=Lynx Point-LP SMBus Controller + + pci:v00008086d00009C22sv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ ID_MODEL_FROM_DATABASE=Lynx Point-LP SMBus Controller (ThinkPad X240) + + pci:v00008086d00009C23* + ID_MODEL_FROM_DATABASE=Lynx Point-LP CHAP Counters +@@ -71307,7 +71307,7 @@ pci:v00008086d00009C26* + ID_MODEL_FROM_DATABASE=Lynx Point-LP USB EHCI #1 + + pci:v00008086d00009C26sv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ ID_MODEL_FROM_DATABASE=Lynx Point-LP USB EHCI #1 (ThinkPad X240) + + pci:v00008086d00009C2D* + ID_MODEL_FROM_DATABASE=Lynx Point-LP USB EHCI #2 +@@ -71316,7 +71316,7 @@ pci:v00008086d00009C31* + ID_MODEL_FROM_DATABASE=Lynx Point-LP USB xHCI HC + + pci:v00008086d00009C31sv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ ID_MODEL_FROM_DATABASE=Lynx Point-LP USB xHCI HC (ThinkPad X240) + + pci:v00008086d00009C35* + ID_MODEL_FROM_DATABASE=Lynx Point-LP SDIO Controller +@@ -71328,7 +71328,7 @@ pci:v00008086d00009C3A* + ID_MODEL_FROM_DATABASE=Lynx Point-LP HECI #0 + + pci:v00008086d00009C3Asv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ ID_MODEL_FROM_DATABASE=Lynx Point-LP HECI #0 (ThinkPad X240) + + pci:v00008086d00009C3B* + ID_MODEL_FROM_DATABASE=Lynx Point-LP HECI #1 +@@ -71352,7 +71352,7 @@ pci:v00008086d00009C43* + ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller + + pci:v00008086d00009C43sv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=ThinkPad X240 ++ ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller (ThinkPad X240) + + pci:v00008086d00009C44* + ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller +@@ -71496,25 +71496,25 @@ pci:v00008086d0000A000* + ID_MODEL_FROM_DATABASE=Atom Processor D4xx/D5xx/N4xx/N5xx DMI Bridge + + pci:v00008086d0000A000sv00001458sd00005000* +- ID_MODEL_FROM_DATABASE=GA-D525TUD ++ ID_MODEL_FROM_DATABASE=Atom Processor D4xx/D5xx/N4xx/N5xx DMI Bridge (GA-D525TUD) + + pci:v00008086d0000A000sv00008086sd00004F4D* +- ID_MODEL_FROM_DATABASE=DeskTop Board D510MO ++ ID_MODEL_FROM_DATABASE=Atom Processor D4xx/D5xx/N4xx/N5xx DMI Bridge (DeskTop Board D510MO) + + pci:v00008086d0000A000sv00008086sd0000544B* +- ID_MODEL_FROM_DATABASE=Desktop Board D425KT ++ ID_MODEL_FROM_DATABASE=Atom Processor D4xx/D5xx/N4xx/N5xx DMI Bridge (Desktop Board D425KT) + + pci:v00008086d0000A001* + ID_MODEL_FROM_DATABASE=Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller + + pci:v00008086d0000A001sv00001458sd0000D000* +- ID_MODEL_FROM_DATABASE=GA-D525TUD ++ ID_MODEL_FROM_DATABASE=Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller (GA-D525TUD) + + pci:v00008086d0000A001sv00008086sd00004F4D* +- ID_MODEL_FROM_DATABASE=DeskTop Board D510MO ++ ID_MODEL_FROM_DATABASE=Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller (DeskTop Board D510MO) + + pci:v00008086d0000A001sv00008086sd0000544B* +- ID_MODEL_FROM_DATABASE=Desktop Board D425KT ++ ID_MODEL_FROM_DATABASE=Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller (Desktop Board D425KT) + + pci:v00008086d0000A002* + ID_MODEL_FROM_DATABASE=Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller +@@ -71526,19 +71526,19 @@ pci:v00008086d0000A010* + ID_MODEL_FROM_DATABASE=Atom Processor D4xx/D5xx/N4xx/N5xx DMI Bridge + + pci:v00008086d0000A010sv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=Atom Processor D4xx/D5xx/N4xx/N5xx DMI Bridge (Notebook N150P) + + pci:v00008086d0000A011* + ID_MODEL_FROM_DATABASE=Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller + + pci:v00008086d0000A011sv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller (Notebook N150P) + + pci:v00008086d0000A012* + ID_MODEL_FROM_DATABASE=Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller + + pci:v00008086d0000A012sv0000144Dsd0000C072* +- ID_MODEL_FROM_DATABASE=Notebook N150P ++ ID_MODEL_FROM_DATABASE=Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller (Notebook N150P) + + pci:v00008086d0000A013* + ID_MODEL_FROM_DATABASE=Atom Processor D4xx/D5xx/N4xx/N5xx CHAPS counter +@@ -71559,22 +71559,22 @@ pci:v00008086d0000B555* + ID_MODEL_FROM_DATABASE=21555 Non transparent PCI-to-PCI Bridge + + pci:v00008086d0000B555sv000012C7sd00005005* +- ID_MODEL_FROM_DATABASE=SS7HD PCI Adaptor Card ++ ID_MODEL_FROM_DATABASE=21555 Non transparent PCI-to-PCI Bridge (SS7HD PCI Adaptor Card) + + pci:v00008086d0000B555sv000012C7sd00005006* +- ID_MODEL_FROM_DATABASE=SS7HDC cPCI Adaptor Card ++ ID_MODEL_FROM_DATABASE=21555 Non transparent PCI-to-PCI Bridge (SS7HDC cPCI Adaptor Card) + + pci:v00008086d0000B555sv000012D9sd0000000A* +- ID_MODEL_FROM_DATABASE=PCI VoIP Gateway ++ ID_MODEL_FROM_DATABASE=21555 Non transparent PCI-to-PCI Bridge (PCI VoIP Gateway) + + pci:v00008086d0000B555sv00004C53sd00001050* +- ID_MODEL_FROM_DATABASE=CT7 mainboard ++ ID_MODEL_FROM_DATABASE=21555 Non transparent PCI-to-PCI Bridge (CT7 mainboard) + + pci:v00008086d0000B555sv00004C53sd00001051* +- ID_MODEL_FROM_DATABASE=CE7 mainboard ++ ID_MODEL_FROM_DATABASE=21555 Non transparent PCI-to-PCI Bridge (CE7 mainboard) + + pci:v00008086d0000B555sv0000E4BFsd00001000* +- ID_MODEL_FROM_DATABASE=CC8-1-BLUES ++ ID_MODEL_FROM_DATABASE=21555 Non transparent PCI-to-PCI Bridge (CC8-1-BLUES) + + pci:v00008086d0000D130* + ID_MODEL_FROM_DATABASE=Core Processor DMI +@@ -71583,16 +71583,16 @@ pci:v00008086d0000D131* + ID_MODEL_FROM_DATABASE=Core Processor DMI + + pci:v00008086d0000D131sv00001028sd000002DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 980 ++ ID_MODEL_FROM_DATABASE=Core Processor DMI (OptiPlex 980) + + pci:v00008086d0000D131sv000015D9sd0000060D* +- ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ ID_MODEL_FROM_DATABASE=Core Processor DMI (C7SIM-Q Motherboard) + + pci:v00008086d0000D132* + ID_MODEL_FROM_DATABASE=Core Processor DMI + + pci:v00008086d0000D132sv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=Core Processor DMI (Latitude E6510) + + pci:v00008086d0000D133* + ID_MODEL_FROM_DATABASE=Core Processor DMI +@@ -71613,13 +71613,13 @@ pci:v00008086d0000D138* + ID_MODEL_FROM_DATABASE=Core Processor PCI Express Root Port 1 + + pci:v00008086d0000D138sv00001028sd000002DA* +- ID_MODEL_FROM_DATABASE=OptiPlex 980 ++ ID_MODEL_FROM_DATABASE=Core Processor PCI Express Root Port 1 (OptiPlex 980) + + pci:v00008086d0000D138sv00001028sd0000040B* +- ID_MODEL_FROM_DATABASE=Latitude E6510 ++ ID_MODEL_FROM_DATABASE=Core Processor PCI Express Root Port 1 (Latitude E6510) + + pci:v00008086d0000D138sv000015D9sd0000060D* +- ID_MODEL_FROM_DATABASE=C7SIM-Q Motherboard ++ ID_MODEL_FROM_DATABASE=Core Processor PCI Express Root Port 1 (C7SIM-Q Motherboard) + + pci:v00008086d0000D139* + ID_MODEL_FROM_DATABASE=Core Processor PCI Express Root Port 2 +@@ -71730,7 +71730,7 @@ pci:v00009004d00005078* + ID_MODEL_FROM_DATABASE=AIC-7850 + + pci:v00009004d00005078sv00009004sd00007850* +- ID_MODEL_FROM_DATABASE=AHA-2904/Integrated AIC-7850 ++ ID_MODEL_FROM_DATABASE=AIC-7850 (AHA-2904/Integrated AIC-7850) + + pci:v00009004d00005175* + ID_MODEL_FROM_DATABASE=AIC-755x +@@ -71766,10 +71766,10 @@ pci:v00009004d00005647* + ID_MODEL_FROM_DATABASE=ANA-7711 TCP Offload Engine + + pci:v00009004d00005647sv00009004sd00007710* +- ID_MODEL_FROM_DATABASE=ANA-7711F TCP Offload Engine - Optical ++ ID_MODEL_FROM_DATABASE=ANA-7711 TCP Offload Engine (ANA-7711F TCP Offload Engine - Optical) + + pci:v00009004d00005647sv00009004sd00007711* +- ID_MODEL_FROM_DATABASE=ANA-7711LP TCP Offload Engine - Copper ++ ID_MODEL_FROM_DATABASE=ANA-7711 TCP Offload Engine (ANA-7711LP TCP Offload Engine - Copper) + + pci:v00009004d00005675* + ID_MODEL_FROM_DATABASE=AIC-755x +@@ -71799,7 +71799,7 @@ pci:v00009004d00006075* + ID_MODEL_FROM_DATABASE=AIC-1480 / APA-1480 + + pci:v00009004d00006075sv00009004sd00007560* +- ID_MODEL_FROM_DATABASE=AIC-1480 / APA-1480 Cardbus ++ ID_MODEL_FROM_DATABASE=AIC-1480 / APA-1480 (Cardbus) + + pci:v00009004d00006078* + ID_MODEL_FROM_DATABASE=AIC-7860 +@@ -71808,7 +71808,7 @@ pci:v00009004d00006178* + ID_MODEL_FROM_DATABASE=AIC-7861 + + pci:v00009004d00006178sv00009004sd00007861* +- ID_MODEL_FROM_DATABASE=AHA-2940AU Single ++ ID_MODEL_FROM_DATABASE=AIC-7861 (AHA-2940AU Single) + + pci:v00009004d00006278* + ID_MODEL_FROM_DATABASE=AIC-7860 +@@ -71832,46 +71832,46 @@ pci:v00009004d00006915* + ID_MODEL_FROM_DATABASE=ANA620xx/ANA69011A + + pci:v00009004d00006915sv00009004sd00000008* +- ID_MODEL_FROM_DATABASE=ANA69011A/TX 10/100 ++ ID_MODEL_FROM_DATABASE=ANA620xx/ANA69011A (ANA69011A/TX 10/100) + + pci:v00009004d00006915sv00009004sd00000009* +- ID_MODEL_FROM_DATABASE=ANA69011A/TX 10/100 ++ ID_MODEL_FROM_DATABASE=ANA620xx/ANA69011A (ANA69011A/TX 10/100) + + pci:v00009004d00006915sv00009004sd00000010* +- ID_MODEL_FROM_DATABASE=ANA62022 2-port 10/100 ++ ID_MODEL_FROM_DATABASE=ANA620xx/ANA69011A (ANA62022 2-port 10/100) + + pci:v00009004d00006915sv00009004sd00000018* +- ID_MODEL_FROM_DATABASE=ANA62044 4-port 10/100 ++ ID_MODEL_FROM_DATABASE=ANA620xx/ANA69011A (ANA62044 4-port 10/100) + + pci:v00009004d00006915sv00009004sd00000019* +- ID_MODEL_FROM_DATABASE=ANA62044 4-port 10/100 ++ ID_MODEL_FROM_DATABASE=ANA620xx/ANA69011A (ANA62044 4-port 10/100) + + pci:v00009004d00006915sv00009004sd00000020* +- ID_MODEL_FROM_DATABASE=ANA62022 2-port 10/100 ++ ID_MODEL_FROM_DATABASE=ANA620xx/ANA69011A (ANA62022 2-port 10/100) + + pci:v00009004d00006915sv00009004sd00000028* +- ID_MODEL_FROM_DATABASE=ANA69011A/TX 10/100 ++ ID_MODEL_FROM_DATABASE=ANA620xx/ANA69011A (ANA69011A/TX 10/100) + + pci:v00009004d00006915sv00009004sd00008008* +- ID_MODEL_FROM_DATABASE=ANA69011A/TX 64 bit 10/100 ++ ID_MODEL_FROM_DATABASE=ANA620xx/ANA69011A (ANA69011A/TX 64 bit 10/100) + + pci:v00009004d00006915sv00009004sd00008009* +- ID_MODEL_FROM_DATABASE=ANA69011A/TX 64 bit 10/100 ++ ID_MODEL_FROM_DATABASE=ANA620xx/ANA69011A (ANA69011A/TX 64 bit 10/100) + + pci:v00009004d00006915sv00009004sd00008010* +- ID_MODEL_FROM_DATABASE=ANA62022 2-port 64 bit 10/100 ++ ID_MODEL_FROM_DATABASE=ANA620xx/ANA69011A (ANA62022 2-port 64 bit 10/100) + + pci:v00009004d00006915sv00009004sd00008018* +- ID_MODEL_FROM_DATABASE=ANA62044 4-port 64 bit 10/100 ++ ID_MODEL_FROM_DATABASE=ANA620xx/ANA69011A (ANA62044 4-port 64 bit 10/100) + + pci:v00009004d00006915sv00009004sd00008019* +- ID_MODEL_FROM_DATABASE=ANA62044 4-port 64 bit 10/100 ++ ID_MODEL_FROM_DATABASE=ANA620xx/ANA69011A (ANA62044 4-port 64 bit 10/100) + + pci:v00009004d00006915sv00009004sd00008020* +- ID_MODEL_FROM_DATABASE=ANA62022 2-port 64 bit 10/100 ++ ID_MODEL_FROM_DATABASE=ANA620xx/ANA69011A (ANA62022 2-port 64 bit 10/100) + + pci:v00009004d00006915sv00009004sd00008028* +- ID_MODEL_FROM_DATABASE=ANA69011A/TX 64 bit 10/100 ++ ID_MODEL_FROM_DATABASE=ANA620xx/ANA69011A (ANA69011A/TX 64 bit 10/100) + + pci:v00009004d00007078* + ID_MODEL_FROM_DATABASE=AHA-294x / AIC-7870 +@@ -71910,7 +71910,7 @@ pci:v00009004d00007815* + ID_MODEL_FROM_DATABASE=AIC-7815 RAID+Memory Controller IC + + pci:v00009004d00007815sv00009004sd00007815* +- ID_MODEL_FROM_DATABASE=ARO-1130U2 RAID Controller ++ ID_MODEL_FROM_DATABASE=AIC-7815 RAID+Memory Controller IC (ARO-1130U2 RAID Controller) + + pci:v00009004d00007815sv00009004sd00007840* + ID_MODEL_FROM_DATABASE=AIC-7815 RAID+Memory Controller IC +@@ -71961,25 +71961,25 @@ pci:v00009004d00007895* + ID_MODEL_FROM_DATABASE=AHA-2940U/UW / AHA-39xx / AIC-7895 + + pci:v00009004d00007895sv00009004sd00007890* +- ID_MODEL_FROM_DATABASE=AHA-2940U/2940UW Dual AHA-394xAU/AUW/AUWD AIC-7895B ++ ID_MODEL_FROM_DATABASE=AHA-2940U/UW / AHA-39xx / AIC-7895 (AHA-2940U/2940UW Dual AHA-394xAU/AUW/AUWD AIC-7895B) + + pci:v00009004d00007895sv00009004sd00007891* +- ID_MODEL_FROM_DATABASE=AHA-2940U/2940UW Dual ++ ID_MODEL_FROM_DATABASE=AHA-2940U/UW / AHA-39xx / AIC-7895 (AHA-2940U/2940UW Dual) + + pci:v00009004d00007895sv00009004sd00007892* +- ID_MODEL_FROM_DATABASE=AHA-3940AU/AUW/AUWD/UWD ++ ID_MODEL_FROM_DATABASE=AHA-2940U/UW / AHA-39xx / AIC-7895 (AHA-3940AU/AUW/AUWD/UWD) + + pci:v00009004d00007895sv00009004sd00007894* +- ID_MODEL_FROM_DATABASE=AHA-3944AUWD ++ ID_MODEL_FROM_DATABASE=AHA-2940U/UW / AHA-39xx / AIC-7895 (AHA-3944AUWD) + + pci:v00009004d00007895sv00009004sd00007895* +- ID_MODEL_FROM_DATABASE=AHA-2940U/2940UW Dual AHA-394xAU/AUW/AUWD AIC-7895B ++ ID_MODEL_FROM_DATABASE=AHA-2940U/UW / AHA-39xx / AIC-7895 (AHA-2940U/2940UW Dual AHA-394xAU/AUW/AUWD AIC-7895B) + + pci:v00009004d00007895sv00009004sd00007896* +- ID_MODEL_FROM_DATABASE=AHA-2940U/2940UW Dual AHA-394xAU/AUW/AUWD AIC-7895B ++ ID_MODEL_FROM_DATABASE=AHA-2940U/UW / AHA-39xx / AIC-7895 (AHA-2940U/2940UW Dual AHA-394xAU/AUW/AUWD AIC-7895B) + + pci:v00009004d00007895sv00009004sd00007897* +- ID_MODEL_FROM_DATABASE=AHA-2940U/2940UW Dual AHA-394xAU/AUW/AUWD AIC-7895B ++ ID_MODEL_FROM_DATABASE=AHA-2940U/UW / AHA-39xx / AIC-7895 (AHA-2940U/2940UW Dual AHA-394xAU/AUW/AUWD AIC-7895B) + + pci:v00009004d00007896* + ID_MODEL_FROM_DATABASE=AIC-789x +@@ -71991,13 +71991,13 @@ pci:v00009004d00008078* + ID_MODEL_FROM_DATABASE=AIC-7880U + + pci:v00009004d00008078sv00009004sd00007880* +- ID_MODEL_FROM_DATABASE=AIC-7880P Ultra/Ultra Wide SCSI Chipset ++ ID_MODEL_FROM_DATABASE=AIC-7880U (AIC-7880P Ultra/Ultra Wide SCSI Chipset) + + pci:v00009004d00008178* + ID_MODEL_FROM_DATABASE=AHA-2940U/UW/D / AIC-7881U + + pci:v00009004d00008178sv00009004sd00007881* +- ID_MODEL_FROM_DATABASE=AHA-2940UW SCSI Host Adapter ++ ID_MODEL_FROM_DATABASE=AHA-2940U/UW/D / AIC-7881U (AHA-2940UW SCSI Host Adapter) + + pci:v00009004d00008278* + ID_MODEL_FROM_DATABASE=AHA-3940U/UW/UWD / AIC-7882U +@@ -72018,13 +72018,13 @@ pci:v00009004d00008778* + ID_MODEL_FROM_DATABASE=AHA-2940UW Pro / AIC-788x + + pci:v00009004d00008778sv00009004sd00007887* +- ID_MODEL_FROM_DATABASE=2940UW Pro Ultra-Wide SCSI Controller ++ ID_MODEL_FROM_DATABASE=AHA-2940UW Pro / AIC-788x (2940UW Pro Ultra-Wide SCSI Controller) + + pci:v00009004d00008878* + ID_MODEL_FROM_DATABASE=AHA-2930UW / AIC-7888 + + pci:v00009004d00008878sv00009004sd00007888* +- ID_MODEL_FROM_DATABASE=AHA-2930UW SCSI Controller ++ ID_MODEL_FROM_DATABASE=AHA-2930UW / AIC-7888 (AHA-2930UW SCSI Controller) + + pci:v00009004d00008B78* + ID_MODEL_FROM_DATABASE=ABA-1030 +@@ -72039,19 +72039,19 @@ pci:v00009005d00000010* + ID_MODEL_FROM_DATABASE=AHA-2940U2/U2W + + pci:v00009005d00000010sv00009005sd00002180* +- ID_MODEL_FROM_DATABASE=AHA-2940U2 SCSI Controller ++ ID_MODEL_FROM_DATABASE=AHA-2940U2/U2W (AHA-2940U2 SCSI Controller) + + pci:v00009005d00000010sv00009005sd00008100* +- ID_MODEL_FROM_DATABASE=AHA-2940U2B SCSI Controller ++ ID_MODEL_FROM_DATABASE=AHA-2940U2/U2W (AHA-2940U2B SCSI Controller) + + pci:v00009005d00000010sv00009005sd0000A100* +- ID_MODEL_FROM_DATABASE=AHA-2940U2B SCSI Controller ++ ID_MODEL_FROM_DATABASE=AHA-2940U2/U2W (AHA-2940U2B SCSI Controller) + + pci:v00009005d00000010sv00009005sd0000A180* +- ID_MODEL_FROM_DATABASE=AHA-2940U2W SCSI Controller ++ ID_MODEL_FROM_DATABASE=AHA-2940U2/U2W (AHA-2940U2W SCSI Controller) + + pci:v00009005d00000010sv00009005sd0000E100* +- ID_MODEL_FROM_DATABASE=AHA-2950U2B SCSI Controller ++ ID_MODEL_FROM_DATABASE=AHA-2940U2/U2W (AHA-2950U2B SCSI Controller) + + pci:v00009005d00000011* + ID_MODEL_FROM_DATABASE=AHA-2930U2 +@@ -72060,19 +72060,19 @@ pci:v00009005d00000013* + ID_MODEL_FROM_DATABASE=78902 + + pci:v00009005d00000013sv00009005sd00000003* +- ID_MODEL_FROM_DATABASE=AAA-131U2 Array1000 1 Channel RAID Controller ++ ID_MODEL_FROM_DATABASE=78902 (AAA-131U2 Array1000 1 Channel RAID Controller) + + pci:v00009005d00000013sv00009005sd0000000F* +- ID_MODEL_FROM_DATABASE=AIC7890_ARO ++ ID_MODEL_FROM_DATABASE=78902 (AIC7890_ARO) + + pci:v00009005d0000001F* + ID_MODEL_FROM_DATABASE=AHA-2940U2/U2W / 7890/7891 + + pci:v00009005d0000001Fsv00009005sd0000000F* +- ID_MODEL_FROM_DATABASE=2940U2W SCSI Controller ++ ID_MODEL_FROM_DATABASE=AHA-2940U2/U2W / 7890/7891 (2940U2W SCSI Controller) + + pci:v00009005d0000001Fsv00009005sd0000A180* +- ID_MODEL_FROM_DATABASE=2940U2W SCSI Controller ++ ID_MODEL_FROM_DATABASE=AHA-2940U2/U2W / 7890/7891 (2940U2W SCSI Controller) + + pci:v00009005d00000020* + ID_MODEL_FROM_DATABASE=AIC-7890 +@@ -72090,10 +72090,10 @@ pci:v00009005d00000050* + ID_MODEL_FROM_DATABASE=AHA-3940U2x/395U2x + + pci:v00009005d00000050sv00009005sd0000F500* +- ID_MODEL_FROM_DATABASE=AHA-3950U2B ++ ID_MODEL_FROM_DATABASE=AHA-3940U2x/395U2x (AHA-3950U2B) + + pci:v00009005d00000050sv00009005sd0000FFFF* +- ID_MODEL_FROM_DATABASE=AHA-3950U2B ++ ID_MODEL_FROM_DATABASE=AHA-3940U2x/395U2x (AHA-3950U2B) + + pci:v00009005d00000051* + ID_MODEL_FROM_DATABASE=AHA-3950U2D +@@ -72105,7 +72105,7 @@ pci:v00009005d00000053* + ID_MODEL_FROM_DATABASE=AIC-7896 SCSI Controller + + pci:v00009005d00000053sv00009005sd0000FFFF* +- ID_MODEL_FROM_DATABASE=AIC-7896 SCSI Controller mainboard implementation ++ ID_MODEL_FROM_DATABASE=AIC-7896 SCSI Controller (mainboard implementation) + + pci:v00009005d0000005F* + ID_MODEL_FROM_DATABASE=AIC-7896U2/7897U2 +@@ -72114,25 +72114,25 @@ pci:v00009005d00000080* + ID_MODEL_FROM_DATABASE=AIC-7892A U160/m + + pci:v00009005d00000080sv00000E11sd0000E2A0* +- ID_MODEL_FROM_DATABASE=Compaq 64-Bit/66MHz Wide Ultra3 SCSI Adapter ++ ID_MODEL_FROM_DATABASE=AIC-7892A U160/m (Compaq 64-Bit/66MHz Wide Ultra3 SCSI Adapter) + + pci:v00009005d00000080sv00009005sd00006220* +- ID_MODEL_FROM_DATABASE=AHA-29160C ++ ID_MODEL_FROM_DATABASE=AIC-7892A U160/m (AHA-29160C) + + pci:v00009005d00000080sv00009005sd000062A0* +- ID_MODEL_FROM_DATABASE=29160N Ultra160 SCSI Controller ++ ID_MODEL_FROM_DATABASE=AIC-7892A U160/m (29160N Ultra160 SCSI Controller) + + pci:v00009005d00000080sv00009005sd0000E220* +- ID_MODEL_FROM_DATABASE=29160LP Low Profile Ultra160 SCSI Controller ++ ID_MODEL_FROM_DATABASE=AIC-7892A U160/m (29160LP Low Profile Ultra160 SCSI Controller) + + pci:v00009005d00000080sv00009005sd0000E2A0* +- ID_MODEL_FROM_DATABASE=29160 Ultra160 SCSI Controller ++ ID_MODEL_FROM_DATABASE=AIC-7892A U160/m (29160 Ultra160 SCSI Controller) + + pci:v00009005d00000081* + ID_MODEL_FROM_DATABASE=AIC-7892B U160/m + + pci:v00009005d00000081sv00009005sd000062A1* +- ID_MODEL_FROM_DATABASE=19160 Ultra160 SCSI Controller ++ ID_MODEL_FROM_DATABASE=AIC-7892B U160/m (19160 Ultra160 SCSI Controller) + + pci:v00009005d00000083* + ID_MODEL_FROM_DATABASE=AIC-7892D U160/m +@@ -72141,10 +72141,10 @@ pci:v00009005d0000008F* + ID_MODEL_FROM_DATABASE=AIC-7892P U160/m + + pci:v00009005d0000008Fsv00001179sd00000001* +- ID_MODEL_FROM_DATABASE=Magnia Z310 ++ ID_MODEL_FROM_DATABASE=AIC-7892P U160/m (Magnia Z310) + + pci:v00009005d0000008Fsv000015D9sd00009005* +- ID_MODEL_FROM_DATABASE=Onboard SCSI Host Adapter ++ ID_MODEL_FROM_DATABASE=AIC-7892P U160/m (Onboard SCSI Host Adapter) + + pci:v00009005d00000092* + ID_MODEL_FROM_DATABASE=AVC-2010 [VideoH!] +@@ -72156,10 +72156,10 @@ pci:v00009005d000000C0* + ID_MODEL_FROM_DATABASE=AHA-3960D / AIC-7899A U160/m + + pci:v00009005d000000C0sv00000E11sd0000F620* +- ID_MODEL_FROM_DATABASE=Compaq 64-Bit/66MHz Dual Channel Wide Ultra3 SCSI Adapter ++ ID_MODEL_FROM_DATABASE=AHA-3960D / AIC-7899A U160/m (Compaq 64-Bit/66MHz Dual Channel Wide Ultra3 SCSI Adapter) + + pci:v00009005d000000C0sv00009005sd0000F620* +- ID_MODEL_FROM_DATABASE=AHA-3960D U160/m ++ ID_MODEL_FROM_DATABASE=AHA-3960D / AIC-7899A U160/m (AHA-3960D U160/m) + + pci:v00009005d000000C1* + ID_MODEL_FROM_DATABASE=AIC-7899B U160/m +@@ -72171,28 +72171,28 @@ pci:v00009005d000000C5* + ID_MODEL_FROM_DATABASE=RAID subsystem HBA + + pci:v00009005d000000C5sv00001028sd000000C5* +- ID_MODEL_FROM_DATABASE=PowerEdge 2400,2500,2550,4400 ++ ID_MODEL_FROM_DATABASE=RAID subsystem HBA (PowerEdge 2400,2500,2550,4400) + + pci:v00009005d000000CF* + ID_MODEL_FROM_DATABASE=AIC-7899P U160/m + + pci:v00009005d000000CFsv00001028sd000000CE* +- ID_MODEL_FROM_DATABASE=PowerEdge 1400 ++ ID_MODEL_FROM_DATABASE=AIC-7899P U160/m (PowerEdge 1400) + + pci:v00009005d000000CFsv00001028sd000000D1* +- ID_MODEL_FROM_DATABASE=PowerEdge 2550 ++ ID_MODEL_FROM_DATABASE=AIC-7899P U160/m (PowerEdge 2550) + + pci:v00009005d000000CFsv00001028sd000000D9* +- ID_MODEL_FROM_DATABASE=PowerEdge 2500 ++ ID_MODEL_FROM_DATABASE=AIC-7899P U160/m (PowerEdge 2500) + + pci:v00009005d000000CFsv000010F1sd00002462* +- ID_MODEL_FROM_DATABASE=Thunder K7 S2462 ++ ID_MODEL_FROM_DATABASE=AIC-7899P U160/m (Thunder K7 S2462) + + pci:v00009005d000000CFsv000015D9sd00009005* +- ID_MODEL_FROM_DATABASE=Onboard SCSI Host Adapter ++ ID_MODEL_FROM_DATABASE=AIC-7899P U160/m (Onboard SCSI Host Adapter) + + pci:v00009005d000000CFsv00008086sd00003411* +- ID_MODEL_FROM_DATABASE=SDS2 Mainboard ++ ID_MODEL_FROM_DATABASE=AIC-7899P U160/m (SDS2 Mainboard) + + pci:v00009005d00000241* + ID_MODEL_FROM_DATABASE=Serial ATA II RAID 1420SA +@@ -72210,13 +72210,13 @@ pci:v00009005d00000250* + ID_MODEL_FROM_DATABASE=ServeRAID Controller + + pci:v00009005d00000250sv00001014sd00000279* +- ID_MODEL_FROM_DATABASE=ServeRAID 6M ++ ID_MODEL_FROM_DATABASE=ServeRAID Controller (ServeRAID 6M) + + pci:v00009005d00000250sv00001014sd0000028C* +- ID_MODEL_FROM_DATABASE=ServeRAID 6i/6i+ ++ ID_MODEL_FROM_DATABASE=ServeRAID Controller (ServeRAID 6i/6i+) + + pci:v00009005d00000250sv00001014sd0000028E* +- ID_MODEL_FROM_DATABASE=ServeRAID 7k ++ ID_MODEL_FROM_DATABASE=ServeRAID Controller (ServeRAID 7k) + + pci:v00009005d00000279* + ID_MODEL_FROM_DATABASE=ServeRAID 6M +@@ -72225,415 +72225,415 @@ pci:v00009005d00000283* + ID_MODEL_FROM_DATABASE=AAC-RAID + + pci:v00009005d00000283sv00009005sd00000283* +- ID_MODEL_FROM_DATABASE=Catapult ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Catapult) + + pci:v00009005d00000284* + ID_MODEL_FROM_DATABASE=AAC-RAID + + pci:v00009005d00000284sv00009005sd00000284* +- ID_MODEL_FROM_DATABASE=Tomcat ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Tomcat) + + pci:v00009005d00000285* + ID_MODEL_FROM_DATABASE=AAC-RAID + + pci:v00009005d00000285sv00000E11sd00000295* +- ID_MODEL_FROM_DATABASE=SATA 6Ch (Bearcat) ++ ID_MODEL_FROM_DATABASE=AAC-RAID (SATA 6Ch (Bearcat)) + + pci:v00009005d00000285sv00001014sd000002F2* +- ID_MODEL_FROM_DATABASE=ServeRAID 8i ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ServeRAID 8i) + + pci:v00009005d00000285sv00001028sd00000287* +- ID_MODEL_FROM_DATABASE=PowerEdge Expandable RAID Controller 320/DC ++ ID_MODEL_FROM_DATABASE=AAC-RAID (PowerEdge Expandable RAID Controller 320/DC) + + pci:v00009005d00000285sv00001028sd00000291* +- ID_MODEL_FROM_DATABASE=CERC SATA RAID 2 PCI SATA 6ch (DellCorsair) ++ ID_MODEL_FROM_DATABASE=AAC-RAID (CERC SATA RAID 2 PCI SATA 6ch (DellCorsair)) + + pci:v00009005d00000285sv0000103Csd00003227* +- ID_MODEL_FROM_DATABASE=AAR-2610SA ++ ID_MODEL_FROM_DATABASE=AAC-RAID (AAR-2610SA) + + pci:v00009005d00000285sv0000108Esd00000286* +- ID_MODEL_FROM_DATABASE=Sun StorageTek SAS RAID HBA, Internal ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Sun StorageTek SAS RAID HBA, Internal) + + pci:v00009005d00000285sv0000108Esd00000287* +- ID_MODEL_FROM_DATABASE=STK RAID EXT ++ ID_MODEL_FROM_DATABASE=AAC-RAID (STK RAID EXT) + + pci:v00009005d00000285sv0000108Esd00007AAC* +- ID_MODEL_FROM_DATABASE=STK RAID REM ++ ID_MODEL_FROM_DATABASE=AAC-RAID (STK RAID REM) + + pci:v00009005d00000285sv0000108Esd00007AAE* +- ID_MODEL_FROM_DATABASE=STK RAID EX ++ ID_MODEL_FROM_DATABASE=AAC-RAID (STK RAID EX) + + pci:v00009005d00000285sv000015D9sd000002B5* +- ID_MODEL_FROM_DATABASE=SMC AOC-USAS-S4i ++ ID_MODEL_FROM_DATABASE=AAC-RAID (SMC AOC-USAS-S4i) + + pci:v00009005d00000285sv000015D9sd000002B6* +- ID_MODEL_FROM_DATABASE=SMC AOC-USAS-S8i ++ ID_MODEL_FROM_DATABASE=AAC-RAID (SMC AOC-USAS-S8i) + + pci:v00009005d00000285sv000015D9sd000002C9* +- ID_MODEL_FROM_DATABASE=SMC AOC-USAS-S4iR ++ ID_MODEL_FROM_DATABASE=AAC-RAID (SMC AOC-USAS-S4iR) + + pci:v00009005d00000285sv000015D9sd000002CA* +- ID_MODEL_FROM_DATABASE=SMC AOC-USAS-S8iR ++ ID_MODEL_FROM_DATABASE=AAC-RAID (SMC AOC-USAS-S8iR) + + pci:v00009005d00000285sv000015D9sd000002D2* +- ID_MODEL_FROM_DATABASE=SMC AOC-USAS-S8i-LP ++ ID_MODEL_FROM_DATABASE=AAC-RAID (SMC AOC-USAS-S8i-LP) + + pci:v00009005d00000285sv000015D9sd000002D3* +- ID_MODEL_FROM_DATABASE=SMC AOC-USAS-S8iR-LP ++ ID_MODEL_FROM_DATABASE=AAC-RAID (SMC AOC-USAS-S8iR-LP) + + pci:v00009005d00000285sv000017AAsd00000286* +- ID_MODEL_FROM_DATABASE=Legend S220 (Legend Crusader) ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Legend S220 (Legend Crusader)) + + pci:v00009005d00000285sv000017AAsd00000287* +- ID_MODEL_FROM_DATABASE=Legend S230 (Legend Vulcan) ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Legend S230 (Legend Vulcan)) + + pci:v00009005d00000285sv00009005sd00000285* +- ID_MODEL_FROM_DATABASE=2200S (Vulcan) ++ ID_MODEL_FROM_DATABASE=AAC-RAID (2200S (Vulcan)) + + pci:v00009005d00000285sv00009005sd00000286* +- ID_MODEL_FROM_DATABASE=2120S (Crusader) ++ ID_MODEL_FROM_DATABASE=AAC-RAID (2120S (Crusader)) + + pci:v00009005d00000285sv00009005sd00000287* +- ID_MODEL_FROM_DATABASE=2200S (Vulcan-2m) ++ ID_MODEL_FROM_DATABASE=AAC-RAID (2200S (Vulcan-2m)) + + pci:v00009005d00000285sv00009005sd00000288* +- ID_MODEL_FROM_DATABASE=3230S (Harrier) ++ ID_MODEL_FROM_DATABASE=AAC-RAID (3230S (Harrier)) + + pci:v00009005d00000285sv00009005sd00000289* +- ID_MODEL_FROM_DATABASE=3240S (Tornado) ++ ID_MODEL_FROM_DATABASE=AAC-RAID (3240S (Tornado)) + + pci:v00009005d00000285sv00009005sd0000028A* +- ID_MODEL_FROM_DATABASE=ASR-2020ZCR ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR-2020ZCR) + + pci:v00009005d00000285sv00009005sd0000028B* +- ID_MODEL_FROM_DATABASE=ASR-2025ZCR (Terminator) ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR-2025ZCR (Terminator)) + + pci:v00009005d00000285sv00009005sd0000028E* +- ID_MODEL_FROM_DATABASE=ASR-2020SA (Skyhawk) ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR-2020SA (Skyhawk)) + + pci:v00009005d00000285sv00009005sd0000028F* +- ID_MODEL_FROM_DATABASE=ASR-2025SA ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR-2025SA) + + pci:v00009005d00000285sv00009005sd00000290* +- ID_MODEL_FROM_DATABASE=AAR-2410SA PCI SATA 4ch (Jaguar II) ++ ID_MODEL_FROM_DATABASE=AAC-RAID (AAR-2410SA PCI SATA 4ch (Jaguar II)) + + pci:v00009005d00000285sv00009005sd00000292* +- ID_MODEL_FROM_DATABASE=AAR-2810SA PCI SATA 8ch (Corsair-8) ++ ID_MODEL_FROM_DATABASE=AAC-RAID (AAR-2810SA PCI SATA 8ch (Corsair-8)) + + pci:v00009005d00000285sv00009005sd00000293* +- ID_MODEL_FROM_DATABASE=AAR-21610SA PCI SATA 16ch (Corsair-16) ++ ID_MODEL_FROM_DATABASE=AAC-RAID (AAR-21610SA PCI SATA 16ch (Corsair-16)) + + pci:v00009005d00000285sv00009005sd00000294* +- ID_MODEL_FROM_DATABASE=ESD SO-DIMM PCI-X SATA ZCR (Prowler) ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ESD SO-DIMM PCI-X SATA ZCR (Prowler)) + + pci:v00009005d00000285sv00009005sd00000296* +- ID_MODEL_FROM_DATABASE=ASR-2240S ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR-2240S) + + pci:v00009005d00000285sv00009005sd00000297* +- ID_MODEL_FROM_DATABASE=ASR-4005SAS ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR-4005SAS) + + pci:v00009005d00000285sv00009005sd00000298* +- ID_MODEL_FROM_DATABASE=ASR-4000 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR-4000) + + pci:v00009005d00000285sv00009005sd00000299* +- ID_MODEL_FROM_DATABASE=ASR-4800SAS ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR-4800SAS) + + pci:v00009005d00000285sv00009005sd0000029A* +- ID_MODEL_FROM_DATABASE=4805SAS ++ ID_MODEL_FROM_DATABASE=AAC-RAID (4805SAS) + + pci:v00009005d00000285sv00009005sd000002A4* +- ID_MODEL_FROM_DATABASE=ICP ICP9085LI ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ICP ICP9085LI) + + pci:v00009005d00000285sv00009005sd000002A5* +- ID_MODEL_FROM_DATABASE=ICP ICP5085BR ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ICP ICP5085BR) + + pci:v00009005d00000285sv00009005sd000002B5* +- ID_MODEL_FROM_DATABASE=ASR5800 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR5800) + + pci:v00009005d00000285sv00009005sd000002B6* +- ID_MODEL_FROM_DATABASE=ASR5805 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR5805) + + pci:v00009005d00000285sv00009005sd000002B7* +- ID_MODEL_FROM_DATABASE=ASR5808 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR5808) + + pci:v00009005d00000285sv00009005sd000002B8* +- ID_MODEL_FROM_DATABASE=ICP5445SL ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ICP5445SL) + + pci:v00009005d00000285sv00009005sd000002B9* +- ID_MODEL_FROM_DATABASE=ICP5085SL ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ICP5085SL) + + pci:v00009005d00000285sv00009005sd000002BA* +- ID_MODEL_FROM_DATABASE=ICP5805SL ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ICP5805SL) + + pci:v00009005d00000285sv00009005sd000002BB* +- ID_MODEL_FROM_DATABASE=3405 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (3405) + + pci:v00009005d00000285sv00009005sd000002BC* +- ID_MODEL_FROM_DATABASE=3805 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (3805) + + pci:v00009005d00000285sv00009005sd000002BD* +- ID_MODEL_FROM_DATABASE=31205 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (31205) + + pci:v00009005d00000285sv00009005sd000002BE* +- ID_MODEL_FROM_DATABASE=31605 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (31605) + + pci:v00009005d00000285sv00009005sd000002BF* +- ID_MODEL_FROM_DATABASE=ICP ICP5045BL ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ICP ICP5045BL) + + pci:v00009005d00000285sv00009005sd000002C0* +- ID_MODEL_FROM_DATABASE=ICP ICP5085BL ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ICP ICP5085BL) + + pci:v00009005d00000285sv00009005sd000002C1* +- ID_MODEL_FROM_DATABASE=ICP ICP5125BR ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ICP ICP5125BR) + + pci:v00009005d00000285sv00009005sd000002C2* +- ID_MODEL_FROM_DATABASE=ICP ICP5165BR ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ICP ICP5165BR) + + pci:v00009005d00000285sv00009005sd000002C3* +- ID_MODEL_FROM_DATABASE=51205 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (51205) + + pci:v00009005d00000285sv00009005sd000002C4* +- ID_MODEL_FROM_DATABASE=51605 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (51605) + + pci:v00009005d00000285sv00009005sd000002C5* +- ID_MODEL_FROM_DATABASE=ICP ICP5125SL ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ICP ICP5125SL) + + pci:v00009005d00000285sv00009005sd000002C6* +- ID_MODEL_FROM_DATABASE=ICP ICP5165SL ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ICP ICP5165SL) + + pci:v00009005d00000285sv00009005sd000002C7* +- ID_MODEL_FROM_DATABASE=3085 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (3085) + + pci:v00009005d00000285sv00009005sd000002C8* +- ID_MODEL_FROM_DATABASE=ICP5805BL ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ICP5805BL) + + pci:v00009005d00000285sv00009005sd000002CE* +- ID_MODEL_FROM_DATABASE=51245 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (51245) + + pci:v00009005d00000285sv00009005sd000002CF* +- ID_MODEL_FROM_DATABASE=51645 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (51645) + + pci:v00009005d00000285sv00009005sd000002D0* +- ID_MODEL_FROM_DATABASE=52445 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (52445) + + pci:v00009005d00000285sv00009005sd000002D1* +- ID_MODEL_FROM_DATABASE=5405 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (5405) + + pci:v00009005d00000285sv00009005sd000002D4* +- ID_MODEL_FROM_DATABASE=ASR-2045 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR-2045) + + pci:v00009005d00000285sv00009005sd000002D5* +- ID_MODEL_FROM_DATABASE=ASR-2405 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR-2405) + + pci:v00009005d00000285sv00009005sd000002D6* +- ID_MODEL_FROM_DATABASE=ASR-2445 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR-2445) + + pci:v00009005d00000285sv00009005sd000002D7* +- ID_MODEL_FROM_DATABASE=ASR-2805 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR-2805) + + pci:v00009005d00000285sv00009005sd000002D8* +- ID_MODEL_FROM_DATABASE=5405G ++ ID_MODEL_FROM_DATABASE=AAC-RAID (5405G) + + pci:v00009005d00000285sv00009005sd000002D9* +- ID_MODEL_FROM_DATABASE=5445G ++ ID_MODEL_FROM_DATABASE=AAC-RAID (5445G) + + pci:v00009005d00000285sv00009005sd000002DA* +- ID_MODEL_FROM_DATABASE=5805G ++ ID_MODEL_FROM_DATABASE=AAC-RAID (5805G) + + pci:v00009005d00000285sv00009005sd000002DB* +- ID_MODEL_FROM_DATABASE=5085G ++ ID_MODEL_FROM_DATABASE=AAC-RAID (5085G) + + pci:v00009005d00000285sv00009005sd000002DC* +- ID_MODEL_FROM_DATABASE=51245G ++ ID_MODEL_FROM_DATABASE=AAC-RAID (51245G) + + pci:v00009005d00000285sv00009005sd000002DD* +- ID_MODEL_FROM_DATABASE=51645G ++ ID_MODEL_FROM_DATABASE=AAC-RAID (51645G) + + pci:v00009005d00000285sv00009005sd000002DE* +- ID_MODEL_FROM_DATABASE=52445G ++ ID_MODEL_FROM_DATABASE=AAC-RAID (52445G) + + pci:v00009005d00000285sv00009005sd000002DF* +- ID_MODEL_FROM_DATABASE=ASR-2045G ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR-2045G) + + pci:v00009005d00000285sv00009005sd000002E0* +- ID_MODEL_FROM_DATABASE=ASR-2405G ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR-2405G) + + pci:v00009005d00000285sv00009005sd000002E1* +- ID_MODEL_FROM_DATABASE=ASR-2445G ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR-2445G) + + pci:v00009005d00000285sv00009005sd000002E2* +- ID_MODEL_FROM_DATABASE=ASR-2805G ++ ID_MODEL_FROM_DATABASE=AAC-RAID (ASR-2805G) + + pci:v00009005d00000286* + ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) + + pci:v00009005d00000286sv00001014sd0000034D* +- ID_MODEL_FROM_DATABASE=8s ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (8s) + + pci:v00009005d00000286sv00001014sd00009540* +- ID_MODEL_FROM_DATABASE=ServeRAID 8k/8k-l4 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ServeRAID 8k/8k-l4) + + pci:v00009005d00000286sv00001014sd00009580* +- ID_MODEL_FROM_DATABASE=ServeRAID 8k/8k-l8 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ServeRAID 8k/8k-l8) + + pci:v00009005d00000286sv00009005sd0000028C* +- ID_MODEL_FROM_DATABASE=ASR-2230S + ASR-2230SLP PCI-X (Lancer) ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ASR-2230S + ASR-2230SLP PCI-X (Lancer)) + + pci:v00009005d00000286sv00009005sd0000028D* +- ID_MODEL_FROM_DATABASE=ASR-2130S ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ASR-2130S) + + pci:v00009005d00000286sv00009005sd0000029B* +- ID_MODEL_FROM_DATABASE=ASR-2820SA ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ASR-2820SA) + + pci:v00009005d00000286sv00009005sd0000029C* +- ID_MODEL_FROM_DATABASE=ASR-2620SA ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ASR-2620SA) + + pci:v00009005d00000286sv00009005sd0000029D* +- ID_MODEL_FROM_DATABASE=ASR-2420SA ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ASR-2420SA) + + pci:v00009005d00000286sv00009005sd0000029E* +- ID_MODEL_FROM_DATABASE=ICP ICP9024R0 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ICP ICP9024R0) + + pci:v00009005d00000286sv00009005sd0000029F* +- ID_MODEL_FROM_DATABASE=ICP ICP9014R0 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ICP ICP9014R0) + + pci:v00009005d00000286sv00009005sd000002A0* +- ID_MODEL_FROM_DATABASE=ICP ICP9047MA ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ICP ICP9047MA) + + pci:v00009005d00000286sv00009005sd000002A1* +- ID_MODEL_FROM_DATABASE=ICP ICP9087MA ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ICP ICP9087MA) + + pci:v00009005d00000286sv00009005sd000002A2* +- ID_MODEL_FROM_DATABASE=3800 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (3800) + + pci:v00009005d00000286sv00009005sd000002A3* +- ID_MODEL_FROM_DATABASE=ICP ICP5445AU ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ICP ICP5445AU) + + pci:v00009005d00000286sv00009005sd000002A4* +- ID_MODEL_FROM_DATABASE=ICP ICP9085LI ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ICP ICP9085LI) + + pci:v00009005d00000286sv00009005sd000002A5* +- ID_MODEL_FROM_DATABASE=ICP ICP5085BR ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ICP ICP5085BR) + + pci:v00009005d00000286sv00009005sd000002A6* +- ID_MODEL_FROM_DATABASE=ICP9067MA ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ICP9067MA) + + pci:v00009005d00000286sv00009005sd000002A7* +- ID_MODEL_FROM_DATABASE=3805 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (3805) + + pci:v00009005d00000286sv00009005sd000002A8* +- ID_MODEL_FROM_DATABASE=3400 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (3400) + + pci:v00009005d00000286sv00009005sd000002A9* +- ID_MODEL_FROM_DATABASE=ICP ICP5085AU ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ICP ICP5085AU) + + pci:v00009005d00000286sv00009005sd000002AA* +- ID_MODEL_FROM_DATABASE=ICP ICP5045AU ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ICP ICP5045AU) + + pci:v00009005d00000286sv00009005sd000002AC* +- ID_MODEL_FROM_DATABASE=1800 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (1800) + + pci:v00009005d00000286sv00009005sd000002B3* +- ID_MODEL_FROM_DATABASE=2400 ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (2400) + + pci:v00009005d00000286sv00009005sd000002B4* +- ID_MODEL_FROM_DATABASE=ICP ICP5045AL ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (ICP ICP5045AL) + + pci:v00009005d00000286sv00009005sd00000800* +- ID_MODEL_FROM_DATABASE=Callisto ++ ID_MODEL_FROM_DATABASE=AAC-RAID (Rocket) (Callisto) + + pci:v00009005d0000028B* + ID_MODEL_FROM_DATABASE=Series 6 - 6G SAS/PCIe 2 + + pci:v00009005d0000028Bsv00009005sd00000200* +- ID_MODEL_FROM_DATABASE=Series 6 Entry Level - ASR-6405E - 4 internal 6G SAS ports ++ ID_MODEL_FROM_DATABASE=Series 6 - 6G SAS/PCIe 2 (Series 6 Entry Level - ASR-6405E - 4 internal 6G SAS ports) + + pci:v00009005d0000028Bsv00009005sd00000201* +- ID_MODEL_FROM_DATABASE=Series 6 Entry Level - ASR-6805E - 8 internal 6G SAS ports ++ ID_MODEL_FROM_DATABASE=Series 6 - 6G SAS/PCIe 2 (Series 6 Entry Level - ASR-6805E - 8 internal 6G SAS ports) + + pci:v00009005d0000028Bsv00009005sd00000300* +- ID_MODEL_FROM_DATABASE=Series 6 - ASR-6405 - 4 internal 6G SAS ports ++ ID_MODEL_FROM_DATABASE=Series 6 - 6G SAS/PCIe 2 (Series 6 - ASR-6405 - 4 internal 6G SAS ports) + + pci:v00009005d0000028Bsv00009005sd00000301* +- ID_MODEL_FROM_DATABASE=Series 6 - ASR-6805 - 8 internal 6G SAS ports ++ ID_MODEL_FROM_DATABASE=Series 6 - 6G SAS/PCIe 2 (Series 6 - ASR-6805 - 8 internal 6G SAS ports) + + pci:v00009005d0000028Bsv00009005sd00000302* +- ID_MODEL_FROM_DATABASE=Series 6 - ASR-6445 - 4 internal and 4 external 6G SAS ports ++ ID_MODEL_FROM_DATABASE=Series 6 - 6G SAS/PCIe 2 (Series 6 - ASR-6445 - 4 internal and 4 external 6G SAS ports) + + pci:v00009005d0000028Bsv00009005sd00000310* +- ID_MODEL_FROM_DATABASE=Series 6 Connectors on Top - ASR-6405T - 4 internal 6G SAS ports ++ ID_MODEL_FROM_DATABASE=Series 6 - 6G SAS/PCIe 2 (Series 6 Connectors on Top - ASR-6405T - 4 internal 6G SAS ports) + + pci:v00009005d0000028Bsv00009005sd00000311* +- ID_MODEL_FROM_DATABASE=Series 6 Connectors on Top - ASR-6805T - 8 internal 6G SAS ++ ID_MODEL_FROM_DATABASE=Series 6 - 6G SAS/PCIe 2 (Series 6 Connectors on Top - ASR-6805T - 8 internal 6G SAS) + + pci:v00009005d0000028Bsv00009005sd00000400* +- ID_MODEL_FROM_DATABASE=Series 6 - ASR-61205 - 12 internal 6G SAS ports ++ ID_MODEL_FROM_DATABASE=Series 6 - 6G SAS/PCIe 2 (Series 6 - ASR-61205 - 12 internal 6G SAS ports) + + pci:v00009005d0000028Bsv00009005sd00000401* +- ID_MODEL_FROM_DATABASE=Series 6 - ASR-61605 - 16 internal 6G SAS ports ++ ID_MODEL_FROM_DATABASE=Series 6 - 6G SAS/PCIe 2 (Series 6 - ASR-61605 - 16 internal 6G SAS ports) + + pci:v00009005d0000028Bsv00009005sd00000403* +- ID_MODEL_FROM_DATABASE=Series 6 - ASR-62405 - 24 internal 6G SAS ports ++ ID_MODEL_FROM_DATABASE=Series 6 - 6G SAS/PCIe 2 (Series 6 - ASR-62405 - 24 internal 6G SAS ports) + + pci:v00009005d0000028C* + ID_MODEL_FROM_DATABASE=Series 7 6G SAS/PCIe 3 + + pci:v00009005d0000028Csv00009005sd00000500* +- ID_MODEL_FROM_DATABASE=Series 7 - ASR-7805 - 8 internal 6G SAS Port/PCIe 3.0 ++ ID_MODEL_FROM_DATABASE=Series 7 6G SAS/PCIe 3 (Series 7 - ASR-7805 - 8 internal 6G SAS Port/PCIe 3.0) + + pci:v00009005d0000028Csv00009005sd00000501* +- ID_MODEL_FROM_DATABASE=Series 7 - ASR-71605 - 16 internal 6G SAS Port/PCIe 3.0 ++ ID_MODEL_FROM_DATABASE=Series 7 6G SAS/PCIe 3 (Series 7 - ASR-71605 - 16 internal 6G SAS Port/PCIe 3.0) + + pci:v00009005d0000028Csv00009005sd00000502* +- ID_MODEL_FROM_DATABASE=Series 7 - ASR-71685 - 16 internal 8 external 6G SAS Port/PCIe 3.0 ++ ID_MODEL_FROM_DATABASE=Series 7 6G SAS/PCIe 3 (Series 7 - ASR-71685 - 16 internal 8 external 6G SAS Port/PCIe 3.0) + + pci:v00009005d0000028Csv00009005sd00000503* +- ID_MODEL_FROM_DATABASE=Series 7 - ASR-72405 - 24 internal 0 external 6G SAS Port/PCIe 3.0 ++ ID_MODEL_FROM_DATABASE=Series 7 6G SAS/PCIe 3 (Series 7 - ASR-72405 - 24 internal 0 external 6G SAS Port/PCIe 3.0) + + pci:v00009005d0000028Csv00009005sd00000504* +- ID_MODEL_FROM_DATABASE=Series 7 - ASR-7885 - 8 internal 8 external 6G SAS Port/PCIe 3.0 ++ ID_MODEL_FROM_DATABASE=Series 7 6G SAS/PCIe 3 (Series 7 - ASR-7885 - 8 internal 8 external 6G SAS Port/PCIe 3.0) + + pci:v00009005d0000028Csv00009005sd00000505* +- ID_MODEL_FROM_DATABASE=Series 7 Entry Level - ASR-71685E - 16 internal 8 external 6G SAS Port/PCIe 3.0 ++ ID_MODEL_FROM_DATABASE=Series 7 6G SAS/PCIe 3 (Series 7 Entry Level - ASR-71685E - 16 internal 8 external 6G SAS Port/PCIe 3.0) + + pci:v00009005d0000028Csv00009005sd00000506* +- ID_MODEL_FROM_DATABASE=Series 7 Entry Level - ASR-72405E - 24 internal 0 external 6G SAS Port/PCIe 3.0 ++ ID_MODEL_FROM_DATABASE=Series 7 6G SAS/PCIe 3 (Series 7 Entry Level - ASR-72405E - 24 internal 0 external 6G SAS Port/PCIe 3.0) + + pci:v00009005d0000028D* + ID_MODEL_FROM_DATABASE=Series 8 12G SAS/PCIe 3 + + pci:v00009005d0000028Dsv00009005sd00000550* +- ID_MODEL_FROM_DATABASE=Series 8 - ASR-82405 - 24 internal 0 external 12G SAS Port/PCIe 3.0 ++ ID_MODEL_FROM_DATABASE=Series 8 12G SAS/PCIe 3 (Series 8 - ASR-82405 - 24 internal 0 external 12G SAS Port/PCIe 3.0) + + pci:v00009005d0000028Dsv00009005sd00000551* +- ID_MODEL_FROM_DATABASE=Series 8 - ASR-81605 - 16 internal 0 external 12G SAS Port/PCIe 3.0 ++ ID_MODEL_FROM_DATABASE=Series 8 12G SAS/PCIe 3 (Series 8 - ASR-81605 - 16 internal 0 external 12G SAS Port/PCIe 3.0) + + pci:v00009005d0000028Dsv00009005sd00000552* +- ID_MODEL_FROM_DATABASE=Series 8 - ASR-8805 - 8 internal 0 external 12G SAS Port/PCIe 3.0 ++ ID_MODEL_FROM_DATABASE=Series 8 12G SAS/PCIe 3 (Series 8 - ASR-8805 - 8 internal 0 external 12G SAS Port/PCIe 3.0) + + pci:v00009005d0000028Dsv00009005sd00000553* +- ID_MODEL_FROM_DATABASE=Series 8 - ASR-8085 - 0 internal 8 external 12G SAS Port/PCIe 3.0 ++ ID_MODEL_FROM_DATABASE=Series 8 12G SAS/PCIe 3 (Series 8 - ASR-8085 - 0 internal 8 external 12G SAS Port/PCIe 3.0) + + pci:v00009005d0000028Dsv00009005sd00000554* +- ID_MODEL_FROM_DATABASE=Series 8 - ASR-8885 - 8 internal 8 external 12G SAS Port/PCIe 3.0 ++ ID_MODEL_FROM_DATABASE=Series 8 12G SAS/PCIe 3 (Series 8 - ASR-8885 - 8 internal 8 external 12G SAS Port/PCIe 3.0) + + pci:v00009005d00000410* + ID_MODEL_FROM_DATABASE=AIC-9410W SAS (Razor HBA RAID) + + pci:v00009005d00000410sv00009005sd00000410* +- ID_MODEL_FROM_DATABASE=ASC-48300(Spirit RAID) ++ ID_MODEL_FROM_DATABASE=AIC-9410W SAS (Razor HBA RAID) (ASC-48300(Spirit RAID)) + + pci:v00009005d00000410sv00009005sd00000411* +- ID_MODEL_FROM_DATABASE=ASC-58300 (Oakmont RAID) ++ ID_MODEL_FROM_DATABASE=AIC-9410W SAS (Razor HBA RAID) (ASC-58300 (Oakmont RAID)) + + pci:v00009005d00000412* + ID_MODEL_FROM_DATABASE=AIC-9410W SAS (Razor HBA non-RAID) + + pci:v00009005d00000412sv00009005sd00000412* +- ID_MODEL_FROM_DATABASE=ASC-48300 (Spirit non-RAID) ++ ID_MODEL_FROM_DATABASE=AIC-9410W SAS (Razor HBA non-RAID) (ASC-48300 (Spirit non-RAID)) + + pci:v00009005d00000412sv00009005sd00000413* +- ID_MODEL_FROM_DATABASE=ASC-58300 (Oakmont non-RAID) ++ ID_MODEL_FROM_DATABASE=AIC-9410W SAS (Razor HBA non-RAID) (ASC-58300 (Oakmont non-RAID)) + + pci:v00009005d00000415* + ID_MODEL_FROM_DATABASE=ASC-58300 SAS (Razor-External HBA RAID) +@@ -72657,13 +72657,13 @@ pci:v00009005d00000430* + ID_MODEL_FROM_DATABASE=AIC-9405W SAS (Razor-Lite HBA RAID) + + pci:v00009005d00000430sv00009005sd00000430* +- ID_MODEL_FROM_DATABASE=ASC-44300 (Spirit-Lite RAID) ++ ID_MODEL_FROM_DATABASE=AIC-9405W SAS (Razor-Lite HBA RAID) (ASC-44300 (Spirit-Lite RAID)) + + pci:v00009005d00000432* + ID_MODEL_FROM_DATABASE=AIC-9405W SAS (Razor-Lite HBA non-RAID) + + pci:v00009005d00000432sv00009005sd00000432* +- ID_MODEL_FROM_DATABASE=ASC-44300 (Spirit-Lite non-RAID) ++ ID_MODEL_FROM_DATABASE=AIC-9405W SAS (Razor-Lite HBA non-RAID) (ASC-44300 (Spirit-Lite non-RAID)) + + pci:v00009005d0000043E* + ID_MODEL_FROM_DATABASE=AIC-9405W SAS (Razor-Lite ASIC non-RAID) +@@ -72678,22 +72678,22 @@ pci:v00009005d00000500* + ID_MODEL_FROM_DATABASE=Obsidian chipset SCSI controller + + pci:v00009005d00000500sv00001014sd000002C1* +- ID_MODEL_FROM_DATABASE=PCI-X DDR 3Gb SAS Adapter (572A/572C) ++ ID_MODEL_FROM_DATABASE=Obsidian chipset SCSI controller (PCI-X DDR 3Gb SAS Adapter (572A/572C)) + + pci:v00009005d00000500sv00001014sd000002C2* +- ID_MODEL_FROM_DATABASE=PCI-X DDR 3Gb SAS RAID Adapter (572B/572D) ++ ID_MODEL_FROM_DATABASE=Obsidian chipset SCSI controller (PCI-X DDR 3Gb SAS RAID Adapter (572B/572D)) + + pci:v00009005d00000503* + ID_MODEL_FROM_DATABASE=Scamp chipset SCSI controller + + pci:v00009005d00000503sv00001014sd000002BF* +- ID_MODEL_FROM_DATABASE=Quad Channel PCI-X DDR U320 SCSI RAID Adapter (571E) ++ ID_MODEL_FROM_DATABASE=Scamp chipset SCSI controller (Quad Channel PCI-X DDR U320 SCSI RAID Adapter (571E)) + + pci:v00009005d00000503sv00001014sd000002C3* +- ID_MODEL_FROM_DATABASE=PCI-X DDR 3Gb SAS RAID Adapter (572F) ++ ID_MODEL_FROM_DATABASE=Scamp chipset SCSI controller (PCI-X DDR 3Gb SAS RAID Adapter (572F)) + + pci:v00009005d00000503sv00001014sd000002D5* +- ID_MODEL_FROM_DATABASE=Quad Channel PCI-X DDR U320 SCSI RAID Adapter (571F) ++ ID_MODEL_FROM_DATABASE=Scamp chipset SCSI controller (Quad Channel PCI-X DDR U320 SCSI RAID Adapter (571F)) + + pci:v00009005d00000910* + ID_MODEL_FROM_DATABASE=AUA-3100B +@@ -72714,10 +72714,10 @@ pci:v00009005d00008011* + ID_MODEL_FROM_DATABASE=ASC-39320D + + pci:v00009005d00008011sv00000E11sd000000AC* +- ID_MODEL_FROM_DATABASE=ASC-39320D U320 ++ ID_MODEL_FROM_DATABASE=ASC-39320D (U320) + + pci:v00009005d00008011sv00009005sd00000041* +- ID_MODEL_FROM_DATABASE=ASC-39320D U320 ++ ID_MODEL_FROM_DATABASE=ASC-39320D (U320) + + pci:v00009005d00008012* + ID_MODEL_FROM_DATABASE=ASC-29320 U320 +@@ -72738,10 +72738,10 @@ pci:v00009005d00008017* + ID_MODEL_FROM_DATABASE=ASC-29320ALP U320 + + pci:v00009005d00008017sv00009005sd00000044* +- ID_MODEL_FROM_DATABASE=ASC-29320ALP PCIx U320 ++ ID_MODEL_FROM_DATABASE=ASC-29320ALP U320 (ASC-29320ALP PCIx U320) + + pci:v00009005d00008017sv00009005sd00000045* +- ID_MODEL_FROM_DATABASE=ASC-29320LPE PCIe U320 ++ ID_MODEL_FROM_DATABASE=ASC-29320ALP U320 (ASC-29320LPE PCIe U320) + + pci:v00009005d0000801C* + ID_MODEL_FROM_DATABASE=ASC-39320D U320 +@@ -72750,7 +72750,7 @@ pci:v00009005d0000801D* + ID_MODEL_FROM_DATABASE=AIC-7902B U320 + + pci:v00009005d0000801Dsv00001014sd000002CC* +- ID_MODEL_FROM_DATABASE=ServeRAID 7e ++ ID_MODEL_FROM_DATABASE=AIC-7902B U320 (ServeRAID 7e) + + pci:v00009005d0000801E* + ID_MODEL_FROM_DATABASE=AIC-7901A U320 +@@ -72759,7 +72759,7 @@ pci:v00009005d0000801F* + ID_MODEL_FROM_DATABASE=AIC-7902 U320 + + pci:v00009005d0000801Fsv00001734sd00001011* +- ID_MODEL_FROM_DATABASE=PRIMERGY RX300 onboard SCSI ++ ID_MODEL_FROM_DATABASE=AIC-7902 U320 (PRIMERGY RX300 onboard SCSI) + + pci:v00009005d00008080* + ID_MODEL_FROM_DATABASE=ASC-29320A U320 w/HostRAID +@@ -72777,7 +72777,7 @@ pci:v00009005d0000808F* + ID_MODEL_FROM_DATABASE=AIC-7901 U320 w/HostRAID + + pci:v00009005d0000808Fsv00001028sd00000168* +- ID_MODEL_FROM_DATABASE=Precision Workstation 670 Mainboard ++ ID_MODEL_FROM_DATABASE=AIC-7901 U320 w/HostRAID (Precision Workstation 670 Mainboard) + + pci:v00009005d00008090* + ID_MODEL_FROM_DATABASE=ASC-39320 U320 w/HostRAID +@@ -72810,7 +72810,7 @@ pci:v00009005d0000809D* + ID_MODEL_FROM_DATABASE=AIC-7902(B) U320 w/HostRAID + + pci:v00009005d0000809Dsv00001014sd000002CC* +- ID_MODEL_FROM_DATABASE=ServeRAID 7e ++ ID_MODEL_FROM_DATABASE=AIC-7902(B) U320 w/HostRAID (ServeRAID 7e) + + pci:v00009005d0000809E* + ID_MODEL_FROM_DATABASE=AIC-7901A U320 w/HostRAID +@@ -72858,7 +72858,7 @@ pci:v00009710d00009815* + ID_MODEL_FROM_DATABASE=PCI 9815 Multi-I/O Controller + + pci:v00009710d00009815sv00001000sd00000020* +- ID_MODEL_FROM_DATABASE=2P0S (2 port parallel adaptor) ++ ID_MODEL_FROM_DATABASE=PCI 9815 Multi-I/O Controller (2P0S (2 port parallel adaptor)) + + pci:v00009710d00009820* + ID_MODEL_FROM_DATABASE=PCI 9820 Multi-I/O Controller +@@ -72867,31 +72867,31 @@ pci:v00009710d00009835* + ID_MODEL_FROM_DATABASE=PCI 9835 Multi-I/O Controller + + pci:v00009710d00009835sv00001000sd00000002* +- ID_MODEL_FROM_DATABASE=2S (16C550 UART) ++ ID_MODEL_FROM_DATABASE=PCI 9835 Multi-I/O Controller (2S (16C550 UART)) + + pci:v00009710d00009835sv00001000sd00000012* +- ID_MODEL_FROM_DATABASE=1P2S ++ ID_MODEL_FROM_DATABASE=PCI 9835 Multi-I/O Controller (1P2S) + + pci:v00009710d00009845* + ID_MODEL_FROM_DATABASE=PCI 9845 Multi-I/O Controller + + pci:v00009710d00009845sv00001000sd00000004* +- ID_MODEL_FROM_DATABASE=0P4S (4 port 16550A serial card) ++ ID_MODEL_FROM_DATABASE=PCI 9845 Multi-I/O Controller (0P4S (4 port 16550A serial card)) + + pci:v00009710d00009845sv00001000sd00000006* +- ID_MODEL_FROM_DATABASE=0P6S (6 port 16550a serial card) ++ ID_MODEL_FROM_DATABASE=PCI 9845 Multi-I/O Controller (0P6S (6 port 16550a serial card)) + + pci:v00009710d00009845sv00001000sd00000014* +- ID_MODEL_FROM_DATABASE=1P4S (1 Parallel / 4 16550A Serial Port Adapter) ++ ID_MODEL_FROM_DATABASE=PCI 9845 Multi-I/O Controller (1P4S (1 Parallel / 4 16550A Serial Port Adapter)) + + pci:v00009710d00009855* + ID_MODEL_FROM_DATABASE=PCI 9855 Multi-I/O Controller + + pci:v00009710d00009855sv00001000sd00000014* +- ID_MODEL_FROM_DATABASE=1P4S ++ ID_MODEL_FROM_DATABASE=PCI 9855 Multi-I/O Controller (1P4S) + + pci:v00009710d00009855sv00001000sd00000022* +- ID_MODEL_FROM_DATABASE=2P2S (2 Parallel / 2 16550A Serial Port Adapter) ++ ID_MODEL_FROM_DATABASE=PCI 9855 Multi-I/O Controller (2P2S (2 Parallel / 2 16550A Serial Port Adapter)) + + pci:v00009710d00009865* + ID_MODEL_FROM_DATABASE=PCI 9865 Multi-I/O Controller +@@ -73350,40 +73350,40 @@ pci:v0000DD01d00000003* + ID_MODEL_FROM_DATABASE=Octopus DVB Adapter + + pci:v0000DD01d00000003sv0000DD01sd00000001* +- ID_MODEL_FROM_DATABASE=Octopus DVB adapter ++ ID_MODEL_FROM_DATABASE=Octopus DVB Adapter (Octopus DVB adapter) + + pci:v0000DD01d00000003sv0000DD01sd00000002* +- ID_MODEL_FROM_DATABASE=Octopus LE DVB adapter ++ ID_MODEL_FROM_DATABASE=Octopus DVB Adapter (Octopus LE DVB adapter) + + pci:v0000DD01d00000003sv0000DD01sd00000003* +- ID_MODEL_FROM_DATABASE=Octopus OEM ++ ID_MODEL_FROM_DATABASE=Octopus DVB Adapter (Octopus OEM) + + pci:v0000DD01d00000003sv0000DD01sd00000004* +- ID_MODEL_FROM_DATABASE=Octopus V3 DVB adapter ++ ID_MODEL_FROM_DATABASE=Octopus DVB Adapter (Octopus V3 DVB adapter) + + pci:v0000DD01d00000003sv0000DD01sd00000010* +- ID_MODEL_FROM_DATABASE=Octopus Mini ++ ID_MODEL_FROM_DATABASE=Octopus DVB Adapter (Octopus Mini) + + pci:v0000DD01d00000003sv0000DD01sd00000020* +- ID_MODEL_FROM_DATABASE=Cine S2 V6 DVB adapter ++ ID_MODEL_FROM_DATABASE=Octopus DVB Adapter (Cine S2 V6 DVB adapter) + + pci:v0000DD01d00000003sv0000DD01sd00000021* +- ID_MODEL_FROM_DATABASE=Cine S2 V6.5 DVB adapter ++ ID_MODEL_FROM_DATABASE=Octopus DVB Adapter (Cine S2 V6.5 DVB adapter) + + pci:v0000DD01d00000003sv0000DD01sd00000030* +- ID_MODEL_FROM_DATABASE=Cine CT V6.1 DVB adapter ++ ID_MODEL_FROM_DATABASE=Octopus DVB Adapter (Cine CT V6.1 DVB adapter) + + pci:v0000DD01d00000003sv0000DD01sd0000DB03* +- ID_MODEL_FROM_DATABASE=Mystique SaTiX-S2 V3 DVB adapter ++ ID_MODEL_FROM_DATABASE=Octopus DVB Adapter (Mystique SaTiX-S2 V3 DVB adapter) + + pci:v0000DD01d00000011* + ID_MODEL_FROM_DATABASE=Octopus CI DVB Adapter + + pci:v0000DD01d00000011sv0000DD01sd00000040* +- ID_MODEL_FROM_DATABASE=Octopus CI ++ ID_MODEL_FROM_DATABASE=Octopus CI DVB Adapter (Octopus CI) + + pci:v0000DD01d00000011sv0000DD01sd00000041* +- ID_MODEL_FROM_DATABASE=Octopus CI Single ++ ID_MODEL_FROM_DATABASE=Octopus CI DVB Adapter (Octopus CI Single) + + pci:v0000DEAD* + ID_VENDOR_FROM_DATABASE=Indigita Corporation +@@ -73416,22 +73416,22 @@ pci:v0000E159d00000001* + ID_MODEL_FROM_DATABASE=Tiger3XX Modem/ISDN interface + + pci:v0000E159d00000001sv00000059sd00000001* +- ID_MODEL_FROM_DATABASE=128k ISDN-S/T Adapter ++ ID_MODEL_FROM_DATABASE=Tiger3XX Modem/ISDN interface (128k ISDN-S/T Adapter) + + pci:v0000E159d00000001sv00000059sd00000003* +- ID_MODEL_FROM_DATABASE=128k ISDN-U Adapter ++ ID_MODEL_FROM_DATABASE=Tiger3XX Modem/ISDN interface (128k ISDN-U Adapter) + + pci:v0000E159d00000001sv000000A7sd00000001* +- ID_MODEL_FROM_DATABASE=TELES.S0/PCI 2.x ISDN Adapter ++ ID_MODEL_FROM_DATABASE=Tiger3XX Modem/ISDN interface (TELES.S0/PCI 2.x ISDN Adapter) + + pci:v0000E159d00000001sv00008086sd00000003* +- ID_MODEL_FROM_DATABASE=Digium X100P/X101P analogue PSTN FXO interface ++ ID_MODEL_FROM_DATABASE=Tiger3XX Modem/ISDN interface (Digium X100P/X101P analogue PSTN FXO interface) + + pci:v0000E159d00000001sv0000B100sd00000003* +- ID_MODEL_FROM_DATABASE=OpenVox A400P 4-port analog card ++ ID_MODEL_FROM_DATABASE=Tiger3XX Modem/ISDN interface (OpenVox A400P 4-port analog card) + + pci:v0000E159d00000001sv0000B1D9sd00000003* +- ID_MODEL_FROM_DATABASE=AX400P 4-port analog card ++ ID_MODEL_FROM_DATABASE=Tiger3XX Modem/ISDN interface (AX400P 4-port analog card) + + pci:v0000E159d00000002* + ID_MODEL_FROM_DATABASE=Tiger100APC ISDN chipset +-- +1.7.9.2 + diff --git a/0003-hwdb-Update-database-of-Bluetooth-company-identifier.patch b/0003-hwdb-Update-database-of-Bluetooth-company-identifier.patch new file mode 100644 index 00000000..5f097f39 --- /dev/null +++ b/0003-hwdb-Update-database-of-Bluetooth-company-identifier.patch @@ -0,0 +1,38 @@ +From f89b42ec0fd51feab5566d6bdbacee101023c037 Mon Sep 17 00:00:00 2001 +From: Marcel Holtmann +Date: Tue, 25 Mar 2014 20:21:23 -0700 +Subject: [PATCH] hwdb: Update database of Bluetooth company identifiers + +--- + hwdb/20-bluetooth-vendor-product.hwdb | 18 ++++++++++++++++++ + 1 file changed, 18 insertions(+) + +diff --git hwdb/20-bluetooth-vendor-product.hwdb hwdb/20-bluetooth-vendor-product.hwdb +index 7d86f10..b928f5a 100644 +--- hwdb/20-bluetooth-vendor-product.hwdb ++++ hwdb/20-bluetooth-vendor-product.hwdb +@@ -923,3 +923,21 @@ bluetooth:v0130* + + bluetooth:v0131* + ID_VENDOR_FROM_DATABASE=Cypress Semiconductor Corporation ++ ++bluetooth:v0132* ++ ID_VENDOR_FROM_DATABASE=MADS Inc ++ ++bluetooth:v0133* ++ ID_VENDOR_FROM_DATABASE=Blue Maestro Limited ++ ++bluetooth:v0134* ++ ID_VENDOR_FROM_DATABASE=Resolution Products, Inc. ++ ++bluetooth:v0135* ++ ID_VENDOR_FROM_DATABASE=Airewear LLC ++ ++bluetooth:v0136* ++ ID_VENDOR_FROM_DATABASE=ETC sp. z.o.o. ++ ++bluetooth:v0137* ++ ID_VENDOR_FROM_DATABASE=Prestigio Plaza Ltd. +-- +1.7.9.2 + diff --git a/0003-install-fix-invalid-free-in-unit_file_mask.patch b/0003-install-fix-invalid-free-in-unit_file_mask.patch new file mode 100644 index 00000000..0fe0581b --- /dev/null +++ b/0003-install-fix-invalid-free-in-unit_file_mask.patch @@ -0,0 +1,30 @@ +From 223217749e57996336d5730b0a28716cca56d45d Mon Sep 17 00:00:00 2001 +From: Andreas Henriksson +Date: Fri, 13 Jun 2014 18:48:18 +0200 +Subject: [PATCH] install: fix invalid free() in unit_file_mask() + +int unit_file_mask(...) in ./src/shared/install.c calls +get_config_path(...) which can in 4 error cases return without setting +"ret", and thus "prefix" can be uninitialized when unit_file_mask(...) +finishes (which it does directly after the error is returned from +get_config_path(...)). +--- + src/shared/install.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/shared/install.c src/shared/install.c +index 487d0f6..f562063 100644 +--- src/shared/install.c ++++ src/shared/install.c +@@ -563,7 +563,7 @@ int unit_file_mask( + unsigned *n_changes) { + + char **i; +- _cleanup_free_ char *prefix; ++ _cleanup_free_ char *prefix = NULL; + int r; + + assert(scope >= 0); +-- +1.7.9.2 + diff --git a/0003-journald-add-CAP_MAC_OVERRIDE-in-journald-for-SMACK-.patch b/0003-journald-add-CAP_MAC_OVERRIDE-in-journald-for-SMACK-.patch new file mode 100644 index 00000000..c88ed60b --- /dev/null +++ b/0003-journald-add-CAP_MAC_OVERRIDE-in-journald-for-SMACK-.patch @@ -0,0 +1,41 @@ +From f2a474aea8f82fa9b695515d4590f4f3398358a7 Mon Sep 17 00:00:00 2001 +From: Juho Son +Date: Thu, 11 Sep 2014 16:06:38 +0900 +Subject: [PATCH] journald: add CAP_MAC_OVERRIDE in journald for SMACK issue + +systemd-journald check the cgroup id to support rate limit option for +every messages. so journald should be available to access cgroup node in +each process send messages to journald. +In system using SMACK, cgroup node in proc is assigned execute label +as each process's execute label. +so if journald don't want to denied for every process, journald +should have all of access rule for all process's label. +It's too heavy. so we could give special smack label for journald te get +all accesses's permission. +'^' label. +When assign '^' execute smack label to systemd-journald, +systemd-journald need to add CAP_MAC_OVERRIDE capability to get that smack privilege. + +so I want to notice this information and set default capability to +journald whether system use SMACK or not. +because that capability affect to only smack enabled kernel +--- + units/systemd-journald.service.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git units/systemd-journald.service.in units/systemd-journald.service.in +index 7013979..4de38fa 100644 +--- units/systemd-journald.service.in ++++ units/systemd-journald.service.in +@@ -20,7 +20,7 @@ Restart=always + RestartSec=0 + NotifyAccess=all + StandardOutput=null +-CapabilityBoundingSet=CAP_SYS_ADMIN CAP_DAC_OVERRIDE CAP_SYS_PTRACE CAP_SYSLOG CAP_AUDIT_CONTROL CAP_CHOWN CAP_DAC_READ_SEARCH CAP_FOWNER CAP_SETUID CAP_SETGID ++CapabilityBoundingSet=CAP_SYS_ADMIN CAP_DAC_OVERRIDE CAP_SYS_PTRACE CAP_SYSLOG CAP_AUDIT_CONTROL CAP_CHOWN CAP_DAC_READ_SEARCH CAP_FOWNER CAP_SETUID CAP_SETGID CAP_MAC_OVERRIDE + WatchdogSec=1min + + # Increase the default a bit in order to allow many simultaneous +-- +1.7.9.2 + diff --git a/0003-keymap-Adjust-for-more-Samsung-900X4-series.patch b/0003-keymap-Adjust-for-more-Samsung-900X4-series.patch new file mode 100644 index 00000000..c9ab5e0e --- /dev/null +++ b/0003-keymap-Adjust-for-more-Samsung-900X4-series.patch @@ -0,0 +1,29 @@ +From e512e8a255ef29d5a8eb605f8849202ea3d3e4cb Mon Sep 17 00:00:00 2001 +From: Martin Pitt +Date: Wed, 27 Aug 2014 08:41:10 +0200 +Subject: [PATCH] keymap: Adjust for more Samsung 900X4 series + +Reportedly also applies to NP900X4B, so relax the match to apply to all models +of this series. + +https://launchpad.net/bugs/902332 +--- + hwdb/60-keyboard.hwdb | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index ef0ebc5..0ffcb83 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -939,7 +939,7 @@ keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*550P*:pvr* + # Series 7 / 9 + keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*700Z*:pvr* + keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*700G*:pvr* +-keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*900X[34][CDEFG]*:pvr* ++keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*900X[34]*:pvr* + keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*940X3G*:pvr* + KEYBOARD_KEY_ce=!prog1 # Fn+F1 launch settings + KEYBOARD_KEY_a0=!mute # Fn+F6 mute +-- +1.7.9.2 + diff --git a/0003-keymap-Annotate-all-micmute-workarounds.patch b/0003-keymap-Annotate-all-micmute-workarounds.patch new file mode 100644 index 00000000..00f1e431 --- /dev/null +++ b/0003-keymap-Annotate-all-micmute-workarounds.patch @@ -0,0 +1,54 @@ +From d946bb53f94713241004810de92cc37f1e19c2d2 Mon Sep 17 00:00:00 2001 +From: Martin Pitt +Date: Wed, 30 Jul 2014 10:54:23 +0200 +Subject: [PATCH] keymap: Annotate all micmute workarounds + +Add a comment to all assignments to f20 that this actually should be "micmute" +in a future when we aren't limited by X.org's key code limiations any more. +--- + hwdb/60-keyboard.hwdb | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index 70e372b..cbbbf2c 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -231,7 +231,7 @@ keyboard:dmi:bvn*:bvr*:bd*:svnDell*:pnXPS*:pvr* + + # Dell Latitude microphone mute + keyboard:name:Dell WMI hotkeys:dmi:bvn*:bvr*:bd*:svnDell*:pnLatitude* +- KEYBOARD_KEY_150=f20 # Mic mute toggle ++ KEYBOARD_KEY_150=f20 # Mic mute toggle, should be micmute + + ########################################################### + # Everex +@@ -505,7 +505,7 @@ keyboard:name:ThinkPad Extra Buttons:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn* + KEYBOARD_KEY_15=volumedown + KEYBOARD_KEY_16=mute + KEYBOARD_KEY_17=prog1 +- KEYBOARD_KEY_1a=f20 ++ KEYBOARD_KEY_1a=f20 # Microphone mute button; should be micmute + + # ThinkPad Keyboard with TrackPoint + keyboard:usb:v17EFp6009* +@@ -573,7 +573,7 @@ keyboard:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*IdeaPad*Y550*:pvr* + + keyboard:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*IdeaPad*U300s*:pvr* + KEYBOARD_KEY_f1=f21 +- KEYBOARD_KEY_ce=f20 ++ KEYBOARD_KEY_ce=f20 # micmute + + keyboard:dmi:bvn*:bvr*:svnLENOVO*:pn*IdeaPad*Z370*:pvr* + KEYBOARD_KEY_a0=!mute +@@ -809,7 +809,7 @@ keyboard:dmi:bvn*:bvr*:bd*:svnOLPC:pnXO:* + KEYBOARD_KEY_f3=f17 + KEYBOARD_KEY_f2=f18 + KEYBOARD_KEY_f1=f19 +- KEYBOARD_KEY_f0=f20 ++ KEYBOARD_KEY_f0=f20 # micmute + KEYBOARD_KEY_ef=f21 + KEYBOARD_KEY_ee=chat + KEYBOARD_KEY_e4=chat +-- +1.7.9.2 + diff --git a/0003-keymap-Fix-HP-Pavillon-DV7.patch b/0003-keymap-Fix-HP-Pavillon-DV7.patch new file mode 100644 index 00000000..33908a82 --- /dev/null +++ b/0003-keymap-Fix-HP-Pavillon-DV7.patch @@ -0,0 +1,28 @@ +From efb4bf4e419e14a13eead6289ea40165579a816f Mon Sep 17 00:00:00 2001 +From: Martin Pitt +Date: Tue, 5 Aug 2014 12:29:27 +0200 +Subject: [PATCH] keymap: Fix HP Pavillon DV7 + +Properly disable scan code 94 instead of producing KEY_0. + +https://launchpad.net/bugs/1322770 +--- + hwdb/60-keyboard.hwdb | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index cbbbf2c..5c3d4ca 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -368,7 +368,7 @@ keyboard:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHP*Pavilion*dv7*Notebook*PC:pvr + KEYBOARD_KEY_b7=print + KEYBOARD_KEY_c2=media # FIXME: quick play + KEYBOARD_KEY_c6=break +- KEYBOARD_KEY_94=0 ++ KEYBOARD_KEY_94=reserved + + # Elitebook + keyboard:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*Compaq*:pvr* +-- +1.7.9.2 + diff --git a/0003-localed-consider-an-unset-model-as-a-wildcard.patch b/0003-localed-consider-an-unset-model-as-a-wildcard.patch new file mode 100644 index 00000000..3fbdb74e --- /dev/null +++ b/0003-localed-consider-an-unset-model-as-a-wildcard.patch @@ -0,0 +1,39 @@ +From 387066c2e5bda159201896b194711965b52f34a9 Mon Sep 17 00:00:00 2001 +From: Michal Sekletar +Date: Fri, 30 May 2014 18:20:16 +0200 +Subject: [PATCH] localed: consider an unset model as a wildcard + +--- + src/locale/localed.c | 13 +++++++------ + 1 file changed, 7 insertions(+), 6 deletions(-) + +diff --git src/locale/localed.c src/locale/localed.c +index e3061c8..358f6c2 100644 +--- src/locale/localed.c ++++ src/locale/localed.c +@@ -712,15 +712,16 @@ static int find_legacy_keymap(Context *c, char **new_keymap) { + } + } + +- if (matching > 0 && +- streq_ptr(c->x11_model, a[2])) { +- matching++; +- +- if (streq_ptr(c->x11_variant, a[3])) { ++ if (matching > 0) { ++ if (isempty(c->x11_model) || streq_ptr(c->x11_model, a[2])) { + matching++; + +- if (streq_ptr(c->x11_options, a[4])) ++ if (streq_ptr(c->x11_variant, a[3])) { + matching++; ++ ++ if (streq_ptr(c->x11_options, a[4])) ++ matching++; ++ } + } + } + +-- +1.7.9.2 + diff --git a/0003-login-Allow-calling-org.freedesktop.login1.Seat.Swit.patch b/0003-login-Allow-calling-org.freedesktop.login1.Seat.Swit.patch new file mode 100644 index 00000000..e4752edc --- /dev/null +++ b/0003-login-Allow-calling-org.freedesktop.login1.Seat.Swit.patch @@ -0,0 +1,35 @@ +From 9c413373d2112055a0142ef522bf95af9b491b4a Mon Sep 17 00:00:00 2001 +From: "Jasper St. Pierre" +Date: Fri, 21 Feb 2014 18:23:17 -0500 +Subject: [PATCH] login: Allow calling org.freedesktop.login1.Seat.SwitchTo + +--- + src/login/org.freedesktop.login1.conf | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +diff --git src/login/org.freedesktop.login1.conf src/login/org.freedesktop.login1.conf +index d677f61..1318328 100644 +--- src/login/org.freedesktop.login1.conf ++++ src/login/org.freedesktop.login1.conf +@@ -141,6 +141,18 @@ + send_member="ActivateSession"/> + + ++ ++ ++ ++ ++ ++ + +-- +1.7.9.2 + diff --git a/0003-logind-ignore-lid-switch-events-for-30s-after-each-s.patch b/0003-logind-ignore-lid-switch-events-for-30s-after-each-s.patch new file mode 100644 index 00000000..596702d6 --- /dev/null +++ b/0003-logind-ignore-lid-switch-events-for-30s-after-each-s.patch @@ -0,0 +1,174 @@ +From f9cd6be10ece07e10488c05e270a0b5860779864 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 3 Mar 2014 20:49:33 +0100 +Subject: [PATCH] logind: ignore lid switch events for 30s after each suspend + and 3min after startup + +This is needed to give USB docking stations and suchlike time to settle, +so that a display connected to an USB docking station can actually act +as a lid swith inhibitor correctly. + +With this change we should have somewhat reliable docking station +support in place. +--- + src/login/logind-action.c | 15 ++++++++++++++- + src/login/logind-dbus.c | 3 +++ + src/login/logind.c | 45 +++++++++++++++++++++++++++++++++++++++++++++ + src/login/logind.h | 7 +++++++ + 4 files changed, 69 insertions(+), 1 deletion(-) + +diff --git src/login/logind-action.c src/login/logind-action.c +index c9d8bc5..ae7b350 100644 +--- src/login/logind-action.c ++++ src/login/logind-action.c +@@ -70,20 +70,33 @@ int manager_handle_action( + return 0; + } + +- /* If we are docked don't react to lid closing */ + if (inhibit_key == INHIBIT_HANDLE_LID_SWITCH) { + int n; + ++ /* If we are docked don't react to lid closing */ + if (manager_is_docked(m)) { + log_debug("Ignoring lid switch request, system is docked."); + return 0; + } + ++ /* If we have more than one or no displays connected, ++ * don't react to lid closing. The no display case we ++ * treat like this under the assumption that there is ++ * no modern drm driver available. */ + n = manager_count_displays(m); + if (n != 1) { + log_debug("Ignoring lid switch request, %i displays connected.", n); + return 0; + } ++ ++ /* If the last system suspend or startup is too close, ++ * let's not suspend for now, to give USB docking ++ * stations some time to settle so that we can ++ * properly watch its displays. */ ++ if (m->lid_switch_ignore_event_source) { ++ log_debug("Ignoring lid switch request, system startup or resume too close."); ++ return 0; ++ } + } + + /* If the key handling is inhibited, don't do anything */ +diff --git src/login/logind-dbus.c src/login/logind-dbus.c +index fc89531..c9c58f3 100644 +--- src/login/logind-dbus.c ++++ src/login/logind-dbus.c +@@ -1337,6 +1337,9 @@ static int execute_shutdown_or_sleep( + m->action_job = c; + m->action_what = w; + ++ /* Make sure the lid switch is ignored for a while */ ++ manager_set_lid_switch_ignore(m, now(CLOCK_MONOTONIC) + IGNORE_LID_SWITCH_SUSPEND_USEC); ++ + return 0; + } + +diff --git src/login/logind.c src/login/logind.c +index 10f61ab..fd113b3 100644 +--- src/login/logind.c ++++ src/login/logind.c +@@ -144,6 +144,7 @@ void manager_free(Manager *m) { + sd_event_source_unref(m->udev_device_event_source); + sd_event_source_unref(m->udev_vcsa_event_source); + sd_event_source_unref(m->udev_button_event_source); ++ sd_event_source_unref(m->lid_switch_ignore_event_source); + + if (m->console_active_fd >= 0) + close_nointr_nofail(m->console_active_fd); +@@ -959,6 +960,46 @@ static int manager_dispatch_idle_action(sd_event_source *s, uint64_t t, void *us + return 0; + } + ++static int lid_switch_ignore_handler(sd_event_source *e, uint64_t usec, void *userdata) { ++ Manager *m = userdata; ++ ++ assert(e); ++ assert(m); ++ ++ m->lid_switch_ignore_event_source = sd_event_source_unref(m->lid_switch_ignore_event_source); ++ return 0; ++} ++ ++int manager_set_lid_switch_ignore(Manager *m, usec_t until) { ++ int r; ++ ++ assert(m); ++ ++ if (until <= now(CLOCK_MONOTONIC)) ++ return 0; ++ ++ /* We want to ignore the lid switch for a while after each ++ * suspend, and after boot-up. Hence let's install a timer for ++ * this. As long as the event source exists we ignore the lid ++ * switch. */ ++ ++ if (m->lid_switch_ignore_event_source) { ++ usec_t u; ++ ++ r = sd_event_source_get_time(m->lid_switch_ignore_event_source, &u); ++ if (r < 0) ++ return r; ++ ++ if (until <= u) ++ return 0; ++ ++ r = sd_event_source_set_time(m->lid_switch_ignore_event_source, until); ++ } else ++ r = sd_event_add_monotonic(m->event, &m->lid_switch_ignore_event_source, until, 0, lid_switch_ignore_handler, m); ++ ++ return r; ++} ++ + int manager_startup(Manager *m) { + int r; + Seat *seat; +@@ -994,6 +1035,10 @@ int manager_startup(Manager *m) { + return r; + } + ++ r = manager_set_lid_switch_ignore(m, 0 + IGNORE_LID_SWITCH_STARTUP_USEC); ++ if (r < 0) ++ log_warning("Failed to set up lid switch ignore event source: %s", strerror(-r)); ++ + /* Deserialize state */ + r = manager_enumerate_devices(m); + if (r < 0) +diff --git src/login/logind.h src/login/logind.h +index 74d6641..4bb8e7b 100644 +--- src/login/logind.h ++++ src/login/logind.h +@@ -42,6 +42,9 @@ typedef struct Manager Manager; + #include "logind-button.h" + #include "logind-action.h" + ++#define IGNORE_LID_SWITCH_STARTUP_USEC (3 * USEC_PER_MINUTE) ++#define IGNORE_LID_SWITCH_SUSPEND_USEC (30 * USEC_PER_SEC) ++ + struct Manager { + sd_event *event; + sd_bus *bus; +@@ -118,6 +121,8 @@ struct Manager { + bool lid_switch_ignore_inhibited; + + Hashmap *polkit_registry; ++ ++ sd_event_source *lid_switch_ignore_event_source; + }; + + Manager *manager_new(void); +@@ -178,3 +183,5 @@ const struct ConfigPerfItem* logind_gperf_lookup(const char *key, unsigned lengt + + int manager_watch_busname(Manager *manager, const char *name); + void manager_drop_busname(Manager *manager, const char *name); ++ ++int manager_set_lid_switch_ignore(Manager *m, usec_t until); +-- +1.7.9.2 + diff --git a/0003-man-mention-XDG_CONFIG_HOME-in-systemd.unit.patch b/0003-man-mention-XDG_CONFIG_HOME-in-systemd.unit.patch new file mode 100644 index 00000000..070a9100 --- /dev/null +++ b/0003-man-mention-XDG_CONFIG_HOME-in-systemd.unit.patch @@ -0,0 +1,40 @@ +From 05a2f6fefedd7254fd799502191d025d2908cf74 Mon Sep 17 00:00:00 2001 +From: Tanu Kaskinen +Date: Sat, 12 Apr 2014 08:37:38 +0300 +Subject: [PATCH] man: mention XDG_CONFIG_HOME in systemd.unit + +--- + man/systemd.unit.xml | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +diff --git man/systemd.unit.xml man/systemd.unit.xml +index 07a73fd..bcd4ba8 100644 +--- man/systemd.unit.xml ++++ man/systemd.unit.xml +@@ -70,7 +70,8 @@ + ... + + +- $HOME/.config/systemd/user/* ++ $XDG_CONFIG_HOME/systemd/user/* ++$HOME/.config/systemd/user/* + /etc/systemd/user/* + /run/systemd/user/* + /usr/lib/systemd/user/* +@@ -320,8 +321,12 @@ + + + ++ $XDG_CONFIG_HOME/systemd/user ++ User configuration (only used when $XDG_CONFIG_HOME is set) ++ ++ + $HOME/.config/systemd/user +- User configuration ++ User configuration (only used when $XDG_CONFIG_HOME is not set) + + + /etc/systemd/user +-- +1.7.9.2 + diff --git a/0003-man-we-don-t-have-Wanted-dependency.patch b/0003-man-we-don-t-have-Wanted-dependency.patch new file mode 100644 index 00000000..6ab1a897 --- /dev/null +++ b/0003-man-we-don-t-have-Wanted-dependency.patch @@ -0,0 +1,29 @@ +From 3e883473a0f36c220fc45ecf61d6878c9ac308b4 Mon Sep 17 00:00:00 2001 +From: Lukas Nykryn +Date: Wed, 15 Oct 2014 09:28:31 +0200 +Subject: [PATCH] man: we don't have 'Wanted' dependency + +--- + man/systemd.unit.xml | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git man/systemd.unit.xml man/systemd.unit.xml +index e9395ff..88c9d7f 100644 +--- man/systemd.unit.xml ++++ man/systemd.unit.xml +@@ -181,10 +181,10 @@ + foo.service.wants/ may exist. All + unit files symlinked from such a directory are + implicitly added as dependencies of type +- Wanted= to the unit. This is useful ++ Wants= to the unit. This is useful + to hook units into the start-up of other units, + without having to modify their unit files. For details +- about the semantics of Wanted=, see ++ about the semantics of Wants=, see + below. The preferred way to create symlinks in the + .wants/ directory of a unit file + is with the enable command of the +-- +1.7.9.2 + diff --git a/0003-mount-order-options-before-other-arguments-to-mount.patch b/0003-mount-order-options-before-other-arguments-to-mount.patch new file mode 100644 index 00000000..d777869d --- /dev/null +++ b/0003-mount-order-options-before-other-arguments-to-mount.patch @@ -0,0 +1,39 @@ +Based on 141a1ceaa62578f1ed14f04cae2113dd0f49fd7f Mon Sep 17 00:00:00 2001 +From: Emil Renner Berthing +Date: Thu, 18 Sep 2014 15:24:59 +0200 +Subject: [PATCH] mount: order options before other arguments to mount + +--- + src/core/mount.c | 10 ++++++---- + 1 file changed, 6 insertions(+), 4 deletions(-) + +--- src/core/mount.c ++++ src/core/mount.c 2014-09-25 13:43:44.926563278 +0000 +@@ -947,10 +947,11 @@ static void mount_enter_mounting(Mount * + r = exec_command_set( + m->control_command, + "/bin/mount", ++ "-n", ++ "-t", m->parameters_fragment.fstype ? m->parameters_fragment.fstype : "auto", ++ "-o", m->parameters_fragment.options ? m->parameters_fragment.options : "defaults", + m->parameters_fragment.what, + m->where, +- "-t", m->parameters_fragment.fstype ? m->parameters_fragment.fstype : "auto", +- m->parameters_fragment.options ? "-o" : NULL, m->parameters_fragment.options, + NULL); + else + r = -ENOENT; +@@ -994,10 +995,11 @@ static void mount_enter_remounting(Mount + r = exec_command_set( + m->control_command, + "/bin/mount", +- m->parameters_fragment.what, +- m->where, ++ "-n", + "-t", m->parameters_fragment.fstype ? m->parameters_fragment.fstype : "auto", + "-o", o, ++ m->parameters_fragment.what, ++ m->where, + NULL); + } else + r = -ENOENT; diff --git a/0003-namespace-make-sure-tmp-var-tmp-and-dev-are-writable.patch b/0003-namespace-make-sure-tmp-var-tmp-and-dev-are-writable.patch new file mode 100644 index 00000000..a8e538e2 --- /dev/null +++ b/0003-namespace-make-sure-tmp-var-tmp-and-dev-are-writable.patch @@ -0,0 +1,34 @@ +Based on 664064d60c36e1f62c7e9177e4c7498035467e07 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 3 Jul 2014 16:27:57 +0200 +Subject: [PATCH] namespace: make sure /tmp, /var/tmp and /dev are writable in + namespaces we set up + +--- + src/core/namespace.c | 11 +++++++---- + 1 file changed, 7 insertions(+), 4 deletions(-) + +--- src/core/namespace.c ++++ src/core/namespace.c 2014-07-04 09:55:21.582234949 +0000 +@@ -263,14 +263,17 @@ static int make_read_only(BindMount *m) + + assert(m); + +- if (m->mode != INACCESSIBLE && m->mode != READONLY) +- return 0; ++ if (IN_SET(m->mode, INACCESSIBLE, READONLY)) ++ r = mount(NULL, m->path, NULL, MS_BIND|MS_REMOUNT|MS_RDONLY|MS_REC, NULL); ++ else if (IN_SET(m->mode, READWRITE, PRIVATE_TMP, PRIVATE_VAR_TMP, PRIVATE_DEV)) ++ r = mount(NULL, m->path, NULL, MS_BIND|MS_REMOUNT|MS_REC, NULL); ++ else ++ r = 0; + +- r = mount(NULL, m->path, NULL, MS_BIND|MS_REMOUNT|MS_RDONLY|MS_REC, NULL); + if (r < 0 && !(m->ignore && errno == ENOENT)) + return -errno; + +- return 0; ++ return r; + } + + int setup_namespace( diff --git a/0003-sd-bus-check-return-value-of-vasprintf.patch b/0003-sd-bus-check-return-value-of-vasprintf.patch new file mode 100644 index 00000000..c908f074 --- /dev/null +++ b/0003-sd-bus-check-return-value-of-vasprintf.patch @@ -0,0 +1,35 @@ +From 8bf13eb1e02b9977ae1cd331ae5dc7305a305a09 Mon Sep 17 00:00:00 2001 +From: Daniel Mack +Date: Tue, 7 Oct 2014 12:10:06 +0200 +Subject: [PATCH] sd-bus: check return value of vasprintf + +Check for OOM situations when vasprintf() returns < 0 in bus_error_setfv(). + +Spotted by coverity. +--- + src/libsystemd/sd-bus/bus-error.c | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +diff --git src/libsystemd/sd-bus/bus-error.c src/libsystemd/sd-bus/bus-error.c +index abdfd73..5ca974a 100644 +--- src/libsystemd/sd-bus/bus-error.c ++++ src/libsystemd/sd-bus/bus-error.c +@@ -194,8 +194,13 @@ int bus_error_setfv(sd_bus_error *e, const char *name, const char *format, va_li + return -ENOMEM; + } + +- if (format) +- vasprintf((char**) &e->message, format, ap); ++ if (format) { ++ int r; ++ ++ r = vasprintf((char**) &e->message, format, ap); ++ if (r < 0) ++ return -ENOMEM; ++ } + + e->_need_free = 1; + +-- +1.7.9.2 + diff --git a/0003-sd-bus-don-t-use-assert_return-to-check-for-disconne.patch b/0003-sd-bus-don-t-use-assert_return-to-check-for-disconne.patch new file mode 100644 index 00000000..72455f2c --- /dev/null +++ b/0003-sd-bus-don-t-use-assert_return-to-check-for-disconne.patch @@ -0,0 +1,498 @@ +From a3d59cd1b0a2738d06893948492113f2c35be0af Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 19 Mar 2014 21:41:21 +0100 +Subject: [PATCH] sd-bus: don't use assert_return() to check for disconnected + bus connections + +A terminated connection is a runtime error and not a developer mistake, +hence don't use assert_return() to check for it. +--- + src/libsystemd/sd-bus/bus-control.c | 20 +++++++++++++----- + src/libsystemd/sd-bus/bus-convenience.c | 58 +++++++++++++++++++++++++++++++++++++++++------------- + src/libsystemd/sd-bus/bus-objects.c | 23 +++++++++++++++------ + src/libsystemd/sd-bus/sd-bus.c | 49 +++++++++++++++++++++++++++++++++------------ + 4 files changed, 113 insertions(+), 37 deletions(-) + +--- src/libsystemd/sd-bus/bus-control.c ++++ src/libsystemd/sd-bus/bus-control.c 2014-03-28 00:00:00.000000000 +0000 +@@ -128,12 +128,14 @@ _public_ int sd_bus_request_name(sd_bus + assert_return(bus, -EINVAL); + assert_return(name, -EINVAL); + assert_return(bus->bus_client, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + assert_return(!(flags & ~(SD_BUS_NAME_ALLOW_REPLACEMENT|SD_BUS_NAME_REPLACE_EXISTING|SD_BUS_NAME_QUEUE)), -EINVAL); + assert_return(service_name_is_valid(name), -EINVAL); + assert_return(name[0] != ':', -EINVAL); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + if (bus->is_kernel) + return bus_request_name_kernel(bus, name, flags); + else +@@ -201,11 +203,13 @@ _public_ int sd_bus_release_name(sd_bus + assert_return(bus, -EINVAL); + assert_return(name, -EINVAL); + assert_return(bus->bus_client, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + assert_return(service_name_is_valid(name), -EINVAL); + assert_return(name[0] != ':', -EINVAL); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + if (bus->is_kernel) + return bus_release_name_kernel(bus, name); + else +@@ -344,9 +348,11 @@ static int bus_list_names_dbus1(sd_bus * + _public_ int sd_bus_list_names(sd_bus *bus, char ***acquired, char ***activatable) { + assert_return(bus, -EINVAL); + assert_return(acquired || activatable, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + if (bus->is_kernel) + return bus_list_names_kernel(bus, acquired, activatable); + else +@@ -737,11 +743,13 @@ _public_ int sd_bus_get_owner( + assert_return(name, -EINVAL); + assert_return(mask <= _SD_BUS_CREDS_ALL, -ENOTSUP); + assert_return(mask == 0 || creds, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + assert_return(service_name_is_valid(name), -EINVAL); + assert_return(bus->bus_client, -ENODATA); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + if (bus->is_kernel) + return bus_get_owner_kdbus(bus, name, mask, creds); + else +@@ -1198,10 +1206,12 @@ _public_ int sd_bus_get_owner_machine_id + assert_return(bus, -EINVAL); + assert_return(name, -EINVAL); + assert_return(machine, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + assert_return(service_name_is_valid(name), -EINVAL); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + if (streq_ptr(name, bus->unique_name)) + return sd_id128_get_machine(machine); + +--- src/libsystemd/sd-bus/bus-convenience.c ++++ src/libsystemd/sd-bus/bus-convenience.c 2014-03-28 00:00:00.000000000 +0000 +@@ -36,9 +36,11 @@ _public_ int sd_bus_emit_signal( + int r; + + assert_return(bus, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + r = sd_bus_message_new_signal(bus, &m, path, interface, member); + if (r < 0) + return r; +@@ -70,9 +72,11 @@ _public_ int sd_bus_call_method( + int r; + + assert_return(bus, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + r = sd_bus_message_new_method_call(bus, &m, destination, path, interface, member); + if (r < 0) + return r; +@@ -100,9 +104,12 @@ _public_ int sd_bus_reply_method_return( + assert_return(call, -EINVAL); + assert_return(call->sealed, -EPERM); + assert_return(call->header->type == SD_BUS_MESSAGE_METHOD_CALL, -EINVAL); +- assert_return(call->bus && BUS_IS_OPEN(call->bus->state), -ENOTCONN); ++ assert_return(call->bus, -EINVAL); + assert_return(!bus_pid_changed(call->bus), -ECHILD); + ++ if (!BUS_IS_OPEN(call->bus->state)) ++ return -ENOTCONN; ++ + if (call->header->flags & BUS_MESSAGE_NO_REPLY_EXPECTED) + return 0; + +@@ -134,9 +141,12 @@ _public_ int sd_bus_reply_method_error( + assert_return(call->sealed, -EPERM); + assert_return(call->header->type == SD_BUS_MESSAGE_METHOD_CALL, -EINVAL); + assert_return(sd_bus_error_is_set(e), -EINVAL); +- assert_return(call->bus && BUS_IS_OPEN(call->bus->state), -ENOTCONN); ++ assert_return(call->bus, -EINVAL); + assert_return(!bus_pid_changed(call->bus), -ECHILD); + ++ if (!BUS_IS_OPEN(call->bus->state)) ++ return -ENOTCONN; ++ + if (call->header->flags & BUS_MESSAGE_NO_REPLY_EXPECTED) + return 0; + +@@ -159,9 +169,12 @@ _public_ int sd_bus_reply_method_errorf( + assert_return(call, -EINVAL); + assert_return(call->sealed, -EPERM); + assert_return(call->header->type == SD_BUS_MESSAGE_METHOD_CALL, -EINVAL); +- assert_return(call->bus && BUS_IS_OPEN(call->bus->state), -ENOTCONN); ++ assert_return(call->bus, -EINVAL); + assert_return(!bus_pid_changed(call->bus), -ECHILD); + ++ if (!BUS_IS_OPEN(call->bus->state)) ++ return -ENOTCONN; ++ + if (call->header->flags & BUS_MESSAGE_NO_REPLY_EXPECTED) + return 0; + +@@ -182,9 +195,12 @@ _public_ int sd_bus_reply_method_errno( + assert_return(call, -EINVAL); + assert_return(call->sealed, -EPERM); + assert_return(call->header->type == SD_BUS_MESSAGE_METHOD_CALL, -EINVAL); +- assert_return(call->bus && BUS_IS_OPEN(call->bus->state), -ENOTCONN); ++ assert_return(call->bus, -EINVAL); + assert_return(!bus_pid_changed(call->bus), -ECHILD); + ++ if (!BUS_IS_OPEN(call->bus->state)) ++ return -ENOTCONN; ++ + if (call->header->flags & BUS_MESSAGE_NO_REPLY_EXPECTED) + return 0; + +@@ -208,9 +224,12 @@ _public_ int sd_bus_reply_method_errnof( + assert_return(call, -EINVAL); + assert_return(call->sealed, -EPERM); + assert_return(call->header->type == SD_BUS_MESSAGE_METHOD_CALL, -EINVAL); +- assert_return(call->bus && BUS_IS_OPEN(call->bus->state), -ENOTCONN); ++ assert_return(call->bus, -EINVAL); + assert_return(!bus_pid_changed(call->bus), -ECHILD); + ++ if (!BUS_IS_OPEN(call->bus->state)) ++ return -ENOTCONN; ++ + if (call->header->flags & BUS_MESSAGE_NO_REPLY_EXPECTED) + return 0; + +@@ -239,9 +258,11 @@ _public_ int sd_bus_get_property( + assert_return(member_name_is_valid(member), -EINVAL); + assert_return(reply, -EINVAL); + assert_return(signature_is_single(type, false), -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + r = sd_bus_call_method(bus, destination, path, "org.freedesktop.DBus.Properties", "Get", error, &rep, "ss", strempty(interface), member); + if (r < 0) + return r; +@@ -273,9 +294,11 @@ _public_ int sd_bus_get_property_trivial + assert_return(member_name_is_valid(member), -EINVAL); + assert_return(bus_type_is_trivial(type), -EINVAL); + assert_return(ptr, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + r = sd_bus_call_method(bus, destination, path, "org.freedesktop.DBus.Properties", "Get", error, &reply, "ss", strempty(interface), member); + if (r < 0) + return r; +@@ -309,9 +332,11 @@ _public_ int sd_bus_get_property_string( + assert_return(isempty(interface) || interface_name_is_valid(interface), -EINVAL); + assert_return(member_name_is_valid(member), -EINVAL); + assert_return(ret, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + r = sd_bus_call_method(bus, destination, path, "org.freedesktop.DBus.Properties", "Get", error, &reply, "ss", strempty(interface), member); + if (r < 0) + return r; +@@ -348,9 +373,11 @@ _public_ int sd_bus_get_property_strv( + assert_return(isempty(interface) || interface_name_is_valid(interface), -EINVAL); + assert_return(member_name_is_valid(member), -EINVAL); + assert_return(ret, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + r = sd_bus_call_method(bus, destination, path, "org.freedesktop.DBus.Properties", "Get", error, &reply, "ss", strempty(interface), member); + if (r < 0) + return r; +@@ -383,9 +410,11 @@ _public_ int sd_bus_set_property( + assert_return(isempty(interface) || interface_name_is_valid(interface), -EINVAL); + assert_return(member_name_is_valid(member), -EINVAL); + assert_return(signature_is_single(type, false), -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + r = sd_bus_message_new_method_call(bus, &m, destination, path, "org.freedesktop.DBus.Properties", "Set"); + if (r < 0) + return r; +@@ -416,9 +445,12 @@ _public_ int sd_bus_query_sender_creds(s + + assert_return(call, -EINVAL); + assert_return(call->sealed, -EPERM); +- assert_return(call->bus && BUS_IS_OPEN(call->bus->state), -ENOTCONN); ++ assert_return(call->bus, -EINVAL); + assert_return(!bus_pid_changed(call->bus), -ECHILD); + ++ if (!BUS_IS_OPEN(call->bus->state)) ++ return -ENOTCONN; ++ + c = sd_bus_message_get_creds(call); + + /* All data we need? */ +--- src/libsystemd/sd-bus/bus-objects.c ++++ src/libsystemd/sd-bus/bus-objects.c 2014-03-28 00:00:00.000000000 +0000 +@@ -2196,9 +2196,10 @@ _public_ int sd_bus_emit_properties_chan + assert_return(bus, -EINVAL); + assert_return(object_path_is_valid(path), -EINVAL); + assert_return(interface_name_is_valid(interface), -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; + + /* A non-NULL but empty names list means nothing needs to be + generated. A NULL list OTOH indicates that all properties +@@ -2241,9 +2242,11 @@ _public_ int sd_bus_emit_properties_chan + assert_return(bus, -EINVAL); + assert_return(object_path_is_valid(path), -EINVAL); + assert_return(interface_name_is_valid(interface), -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + if (!name) + return 0; + +@@ -2361,9 +2364,11 @@ _public_ int sd_bus_emit_interfaces_adde + + assert_return(bus, -EINVAL); + assert_return(object_path_is_valid(path), -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + if (strv_isempty(interfaces)) + return 0; + +@@ -2421,9 +2426,11 @@ _public_ int sd_bus_emit_interfaces_adde + + assert_return(bus, -EINVAL); + assert_return(object_path_is_valid(path), -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + interfaces = strv_from_stdarg_alloca(interface); + + return sd_bus_emit_interfaces_added_strv(bus, path, interfaces); +@@ -2435,9 +2442,11 @@ _public_ int sd_bus_emit_interfaces_remo + + assert_return(bus, -EINVAL); + assert_return(object_path_is_valid(path), -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + if (strv_isempty(interfaces)) + return 0; + +@@ -2461,9 +2470,11 @@ _public_ int sd_bus_emit_interfaces_remo + + assert_return(bus, -EINVAL); + assert_return(object_path_is_valid(path), -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + interfaces = strv_from_stdarg_alloca(interface); + + return sd_bus_emit_interfaces_removed_strv(bus, path, interfaces); +--- src/libsystemd/sd-bus/sd-bus.c ++++ src/libsystemd/sd-bus/sd-bus.c 2014-03-28 12:19:27.146736146 +0000 +@@ -1592,10 +1592,12 @@ static int bus_send_internal(sd_bus *bus + int r; + + assert_return(bus, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(m, -EINVAL); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + if (m->n_fds > 0) { + r = sd_bus_can_send(bus, SD_BUS_TYPE_UNIX_FD); + if (r < 0) +@@ -1671,10 +1673,12 @@ _public_ int sd_bus_send_to(sd_bus *bus, + int r; + + assert_return(bus, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(m, -EINVAL); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + if (!streq_ptr(m->destination, destination)) { + + if (!destination) +@@ -1726,13 +1730,15 @@ _public_ int sd_bus_call_async( + int r; + + assert_return(bus, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(m, -EINVAL); + assert_return(m->header->type == SD_BUS_MESSAGE_METHOD_CALL, -EINVAL); + assert_return(!(m->header->flags & BUS_MESSAGE_NO_REPLY_EXPECTED), -EINVAL); + assert_return(callback, -EINVAL); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + r = hashmap_ensure_allocated(&bus->reply_callbacks, uint64_hash_func, uint64_compare_func); + if (r < 0) + return r; +@@ -1839,13 +1845,15 @@ _public_ int sd_bus_call( + int r; + + assert_return(bus, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(m, -EINVAL); + assert_return(m->header->type == SD_BUS_MESSAGE_METHOD_CALL, -EINVAL); + assert_return(!(m->header->flags & BUS_MESSAGE_NO_REPLY_EXPECTED), -EINVAL); + assert_return(!bus_error_is_dirty(error), -EINVAL); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; ++ + r = bus_ensure_running(bus); + if (r < 0) + return r; +@@ -1971,9 +1979,11 @@ _public_ int sd_bus_get_events(sd_bus *b + int flags = 0; + + assert_return(bus, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state) || bus->state == BUS_CLOSING, -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state) && bus->state != BUS_CLOSING) ++ return -ENOTCONN; ++ + if (bus->state == BUS_OPENING) + flags |= POLLOUT; + else if (bus->state == BUS_AUTHENTICATING) { +@@ -1998,9 +2008,11 @@ _public_ int sd_bus_get_timeout(sd_bus * + + assert_return(bus, -EINVAL); + assert_return(timeout_usec, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state) || bus->state == BUS_CLOSING, -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); + ++ if (!BUS_IS_OPEN(bus->state) && bus->state != BUS_CLOSING) ++ return -ENOTCONN; ++ + if (bus->state == BUS_CLOSING) { + *timeout_usec = 0; + return 1; +@@ -2510,7 +2522,8 @@ static int bus_poll(sd_bus *bus, bool ne + if (bus->state == BUS_CLOSING) + return 1; + +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; + + e = sd_bus_get_events(bus); + if (e < 0) +@@ -2565,7 +2578,8 @@ _public_ int sd_bus_wait(sd_bus *bus, ui + if (bus->state == BUS_CLOSING) + return 0; + +- assert_return(BUS_IS_OPEN(bus->state) , -ENOTCONN); ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; + + if (bus->rqueue_size > 0) + return 0; +@@ -2582,7 +2596,8 @@ _public_ int sd_bus_flush(sd_bus *bus) { + if (bus->state == BUS_CLOSING) + return 0; + +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; + + r = bus_ensure_running(bus); + if (r < 0) +@@ -3058,9 +3073,13 @@ _public_ int sd_bus_get_peer_creds(sd_bu + assert_return(bus, -EINVAL); + assert_return(mask <= _SD_BUS_CREDS_ALL, -ENOTSUP); + assert_return(ret, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); +- assert_return(!bus->is_kernel, -ENOTSUP); ++ ++ if (!bus->is_kernel) ++ return -ENOTSUP; ++ ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; + + if (!bus->ucred_valid && !isempty(bus->label)) + return -ENODATA; +@@ -3099,9 +3118,13 @@ _public_ int sd_bus_try_close(sd_bus *bu + int r; + + assert_return(bus, -EINVAL); +- assert_return(BUS_IS_OPEN(bus->state), -ENOTCONN); + assert_return(!bus_pid_changed(bus), -ECHILD); +- assert_return(bus->is_kernel, -ENOTSUP); ++ ++ if (!bus->is_kernel) ++ return -ENOTSUP; ++ ++ if (!BUS_IS_OPEN(bus->state)) ++ return -ENOTCONN; + + if (bus->rqueue_size > 0) + return -EBUSY; diff --git a/0003-sd-bus-refuse-properties-that-claim-to-be-both-writa.patch b/0003-sd-bus-refuse-properties-that-claim-to-be-both-writa.patch new file mode 100644 index 00000000..13b0da4b --- /dev/null +++ b/0003-sd-bus-refuse-properties-that-claim-to-be-both-writa.patch @@ -0,0 +1,29 @@ +From 9b772efb41c2d9f743ba5e96804bdf89b12630d8 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 19 Nov 2014 20:52:47 +0100 +Subject: [PATCH] sd-bus: refuse properties that claim to be both writable and + constant at the same time + +--- + src/libsystemd/sd-bus/bus-objects.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git src/libsystemd/sd-bus/bus-objects.c src/libsystemd/sd-bus/bus-objects.c +index 0ab1119..7981d65 100644 +--- src/libsystemd/sd-bus/bus-objects.c ++++ src/libsystemd/sd-bus/bus-objects.c +@@ -1682,6 +1682,11 @@ static int add_object_vtable_internal( + goto fail; + } + ++ if (v->flags & SD_BUS_VTABLE_PROPERTY_CONST) { ++ r = -EINVAL; ++ goto fail; ++ } ++ + /* Fall through */ + + case _SD_BUS_VTABLE_PROPERTY: { +-- +1.7.9.2 + diff --git a/0003-sd-event-always-call-epoll_ctl-on-mask-updates-if-ed.patch b/0003-sd-event-always-call-epoll_ctl-on-mask-updates-if-ed.patch new file mode 100644 index 00000000..f401411e --- /dev/null +++ b/0003-sd-event-always-call-epoll_ctl-on-mask-updates-if-ed.patch @@ -0,0 +1,46 @@ +From b63c8d4f0364457b0ead8793504012bb7113974f Mon Sep 17 00:00:00 2001 +From: David Herrmann +Date: Thu, 10 Jul 2014 00:47:23 +0200 +Subject: [PATCH] sd-event: always call epoll_ctl() on mask-updates if + edge-triggered + +A call to sd_event_source_set_io_events() skipps calling into the kernel +if the new event-mask matches the old one. This is safe for +level-triggered sources as the kernel moves them onto the ready-list +automatically if events change. However, edge-triggered sources might not +be on the ready-list even though events are present. + +A call to sd_event_source_set_io_events() with EPOLLET set might thus be +used to just move the io-source onto the ready-list so the next poll +will return it again. This is very useful to avoid starvation in +priority-based event queues. + +Imagine a read() loop on an edge-triggered fd. If we cannot read data fast +enough to drain the receive queue, we might decide to skip reading for now +and schedule it for later. On edge-triggered io-sources we have to make +sure it's put on the ready-list so the next dispatch-round will return it +again if it's still the highest priority task. We could make sd-event +handle edge-triggered sources directly and allow marking them ready again. +However, it's much simpler to let the kernel do that for now via +EPOLL_CTL_MOD. +--- + src/libsystemd/sd-event/sd-event.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git src/libsystemd/sd-event/sd-event.c src/libsystemd/sd-event/sd-event.c +index 53f1904..a21f7db 100644 +--- src/libsystemd/sd-event/sd-event.c ++++ src/libsystemd/sd-event/sd-event.c +@@ -1282,7 +1282,8 @@ _public_ int sd_event_source_set_io_events(sd_event_source *s, uint32_t events) + assert_return(s->event->state != SD_EVENT_FINISHED, -ESTALE); + assert_return(!event_pid_changed(s->event), -ECHILD); + +- if (s->io.events == events) ++ /* edge-triggered updates are never skipped, so we can reset edges */ ++ if (s->io.events == events && !(events & EPOLLET)) + return 0; + + if (s->enabled != SD_EVENT_OFF) { +-- +1.7.9.2 + diff --git a/0003-sd-journal-properly-convert-object-size-on-big-endia.patch b/0003-sd-journal-properly-convert-object-size-on-big-endia.patch new file mode 100644 index 00000000..40e8d57c --- /dev/null +++ b/0003-sd-journal-properly-convert-object-size-on-big-endia.patch @@ -0,0 +1,39 @@ +From 57cd09acf2c63a414aa2131c00a2b3f600eb0133 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sat, 23 Aug 2014 22:35:03 -0400 +Subject: [PATCH] sd-journal: properly convert object->size on big endian + +mmap code crashes when attempting to map an object of zero size. + +https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=758392 +https://bugs.freedesktop.org/show_bug.cgi?id=82894 +--- + src/journal/journal-file.h | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git src/journal/journal-file.h src/journal/journal-file.h +index 3d41682..da2ef3b 100644 +--- src/journal/journal-file.h ++++ src/journal/journal-file.h +@@ -214,14 +214,15 @@ static unsigned type_to_context(int type) { + + static inline int journal_file_object_keep(JournalFile *f, Object *o, uint64_t offset) { + unsigned context = type_to_context(o->object.type); ++ uint64_t s = le64toh(o->object.size); + + return mmap_cache_get(f->mmap, f->fd, f->prot, context, true, +- offset, o->object.size, &f->last_stat, NULL); ++ offset, s, &f->last_stat, NULL); + } + + static inline int journal_file_object_release(JournalFile *f, Object *o, uint64_t offset) { + unsigned context = type_to_context(o->object.type); ++ uint64_t s = le64toh(o->object.size); + +- return mmap_cache_release(f->mmap, f->fd, f->prot, context, +- offset, o->object.size); ++ return mmap_cache_release(f->mmap, f->fd, f->prot, context, offset, s); + } +-- +1.7.9.2 + diff --git a/0003-shared-install-avoid-prematurely-rejecting-missing-u.patch b/0003-shared-install-avoid-prematurely-rejecting-missing-u.patch new file mode 100644 index 00000000..7aa3506a --- /dev/null +++ b/0003-shared-install-avoid-prematurely-rejecting-missing-u.patch @@ -0,0 +1,39 @@ +From 0ffce503cd6e5a5ff5ba5cd1cc23684cfb8bb9e3 Mon Sep 17 00:00:00 2001 +From: Dave Reisner +Date: Thu, 30 Oct 2014 20:12:05 -0400 +Subject: [PATCH] shared/install: avoid prematurely rejecting "missing" units + +f7101b7368df copied some logic to prevent enabling masked units, but +also added a check which causes attempts to enable templated units to +fail. Since we know the logic beyond this check will properly handle +units which truly do not exist, we can rely on the unit file state +comparison to suffice for expressing the intent of f7101b7368df. + +ref: https://bugs.archlinux.org/task/42616 +--- + src/shared/install.c | 8 +++----- + 1 file changed, 3 insertions(+), 5 deletions(-) + +diff --git src/shared/install.c src/shared/install.c +index 035b44c..cab93e8 100644 +--- src/shared/install.c ++++ src/shared/install.c +@@ -1620,12 +1620,10 @@ int unit_file_enable( + STRV_FOREACH(i, files) { + UnitFileState state; + ++ /* We only want to know if this unit is masked, so we ignore ++ * errors from unit_file_get_state, deferring other checks. ++ * This allows templated units to be enabled on the fly. */ + state = unit_file_get_state(scope, root_dir, *i); +- if (state < 0) { +- log_error("Failed to get unit file state for %s: %s", *i, strerror(-state)); +- return state; +- } +- + if (state == UNIT_FILE_MASKED || state == UNIT_FILE_MASKED_RUNTIME) { + log_error("Failed to enable unit: Unit %s is masked", *i); + return -ENOTSUP; +-- +1.7.9.2 + diff --git a/0003-systemd-use-pager-for-test-and-help.patch b/0003-systemd-use-pager-for-test-and-help.patch new file mode 100644 index 00000000..a22e0b9d --- /dev/null +++ b/0003-systemd-use-pager-for-test-and-help.patch @@ -0,0 +1,111 @@ +From b87c2aa6bf1247c298c9bd9f56b9b56a87836b2d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Tue, 7 Jan 2014 00:00:05 -0500 +Subject: [PATCH] systemd: use pager for --test and --help + +--- + src/core/main.c | 25 +++++++++++++++++++++++++ + 1 file changed, 25 insertions(+) + +diff --git src/core/main.c src/core/main.c +index f9ee297..ae38b43 100644 +--- src/core/main.c ++++ src/core/main.c +@@ -50,6 +50,7 @@ + #include "conf-parser.h" + #include "missing.h" + #include "label.h" ++#include "pager.h" + #include "build.h" + #include "strv.h" + #include "def.h" +@@ -94,6 +95,7 @@ static int arg_crash_chvt = -1; + static bool arg_confirm_spawn = false; + static ShowStatus arg_show_status = _SHOW_STATUS_UNSET; + static bool arg_switched_root = false; ++static int arg_no_pager = -1; + static char ***arg_join_controllers = NULL; + static ExecOutput arg_default_std_output = EXEC_OUTPUT_JOURNAL; + static ExecOutput arg_default_std_error = EXEC_OUTPUT_INHERIT; +@@ -117,6 +119,14 @@ static bool arg_default_memory_accounting = false; + + static void nop_handler(int sig) {} + ++static void pager_open_if_enabled(void) { ++ ++ if (arg_no_pager <= 0) ++ return; ++ ++ pager_open(false); ++} ++ + noreturn static void crash(int sig) { + + if (getpid() != 1) +@@ -704,6 +714,7 @@ static int parse_argv(int argc, char *argv[]) { + ARG_SYSTEM, + ARG_USER, + ARG_TEST, ++ ARG_NO_PAGER, + ARG_VERSION, + ARG_DUMP_CONFIGURATION_ITEMS, + ARG_DUMP_CORE, +@@ -725,6 +736,7 @@ static int parse_argv(int argc, char *argv[]) { + { "system", no_argument, NULL, ARG_SYSTEM }, + { "user", no_argument, NULL, ARG_USER }, + { "test", no_argument, NULL, ARG_TEST }, ++ { "no-pager", no_argument, NULL, ARG_NO_PAGER }, + { "help", no_argument, NULL, 'h' }, + { "version", no_argument, NULL, ARG_VERSION }, + { "dump-configuration-items", no_argument, NULL, ARG_DUMP_CONFIGURATION_ITEMS }, +@@ -832,6 +844,12 @@ static int parse_argv(int argc, char *argv[]) { + + case ARG_TEST: + arg_action = ACTION_TEST; ++ if (arg_no_pager < 0) ++ arg_no_pager = true; ++ break; ++ ++ case ARG_NO_PAGER: ++ arg_no_pager = true; + break; + + case ARG_VERSION: +@@ -912,6 +930,8 @@ static int parse_argv(int argc, char *argv[]) { + + case 'h': + arg_action = ACTION_HELP; ++ if (arg_no_pager < 0) ++ arg_no_pager = true; + break; + + case 'D': +@@ -984,6 +1004,7 @@ static int help(void) { + "Starts up and maintains the system or user services.\n\n" + " -h --help Show this help\n" + " --test Determine startup sequence, dump it and exit\n" ++ " --no-pager Do not pipe output into a pager\n" + " --dump-configuration-items Dump understood unit configuration items\n" + " --unit=UNIT Set default unit\n" + " --system Run a system instance, even if PID != 1\n" +@@ -1452,6 +1473,8 @@ int main(int argc, char *argv[]) { + goto finish; + } + ++ pager_open_if_enabled(); ++ + if (arg_action == ACTION_HELP) { + retval = help(); + goto finish; +@@ -1798,6 +1821,8 @@ int main(int argc, char *argv[]) { + } + + finish: ++ pager_close(); ++ + if (m) { + manager_free(m); + m = NULL; +-- +1.7.9.2 + diff --git a/0003-time-earlier-exit-from-format_timestamp_relative-on-.patch b/0003-time-earlier-exit-from-format_timestamp_relative-on-.patch new file mode 100644 index 00000000..17cd7d1a --- /dev/null +++ b/0003-time-earlier-exit-from-format_timestamp_relative-on-.patch @@ -0,0 +1,25 @@ +Based on 65de0395ffe1cfb0f9af86504e8588fb31bb0fbc Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 24 Oct 2014 19:08:22 +0200 +Subject: [PATCH] time: earlier exit from format_timestamp_relative() on + special times + +--- + src/shared/time-util.c | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +--- src/shared/time-util.c ++++ src/shared/time-util.c 2014-10-29 14:07:28.479838096 +0000 +@@ -194,11 +194,10 @@ char *format_timestamp_relative(char *bu + const char *s; + usec_t n, d; + +- n = now(CLOCK_REALTIME); +- + if (t <= 0 || (t == (usec_t) -1)) + return NULL; + ++ n = now(CLOCK_REALTIME); + if (n > t) { + d = n - t; + s = "ago"; diff --git a/0003-tty-ask-password-agent-return-negative-errno.patch b/0003-tty-ask-password-agent-return-negative-errno.patch new file mode 100644 index 00000000..9f839a7f --- /dev/null +++ b/0003-tty-ask-password-agent-return-negative-errno.patch @@ -0,0 +1,29 @@ +From ee0e4cca5ac37a094dfe1074907dae70c7b7701c Mon Sep 17 00:00:00 2001 +From: Florian Albrechtskirchinger +Date: Thu, 3 Apr 2014 21:17:20 +0200 +Subject: [PATCH] tty-ask-password-agent: return negative errno + +Return negative errno in wall_tty_block(). get_ctty_devnr() already +returns a negative errno in case of failure, no need to negate it again. + +Reported-by: Simon +--- + .../tty-ask-password-agent.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/tty-ask-password-agent/tty-ask-password-agent.c src/tty-ask-password-agent/tty-ask-password-agent.c +index 1d067af..3203474 100644 +--- src/tty-ask-password-agent/tty-ask-password-agent.c ++++ src/tty-ask-password-agent/tty-ask-password-agent.c +@@ -432,7 +432,7 @@ static int wall_tty_block(void) { + + r = get_ctty_devnr(0, &devnr); + if (r < 0) +- return -r; ++ return r; + + if (asprintf(&p, "/run/systemd/ask-password-block/%u:%u", major(devnr), minor(devnr)) < 0) + return -ENOMEM; +-- +1.7.9.2 + diff --git a/0003-udev-event-explicitly-don-t-read-from-invalid-fd.patch b/0003-udev-event-explicitly-don-t-read-from-invalid-fd.patch new file mode 100644 index 00000000..bad29c52 --- /dev/null +++ b/0003-udev-event-explicitly-don-t-read-from-invalid-fd.patch @@ -0,0 +1,27 @@ +From 3f796750b192e62701e91a95f85389f876d1059b Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Wed, 17 Sep 2014 21:44:56 +0200 +Subject: [PATCH] udev: event - explicitly don't read() from invalid fd + +This fixes CID #1237641. +--- + src/udev/udev-event.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git src/udev/udev-event.c src/udev/udev-event.c +index 6b8b5a8..c8b1420 100644 +--- src/udev/udev-event.c ++++ src/udev/udev-event.c +@@ -494,6 +494,9 @@ static void spawn_read(struct udev_event *event, + for (i = 0; i < fdcount; i++) { + int *fd = (int *)ev[i].data.ptr; + ++ if (*fd < 0) ++ continue; ++ + if (ev[i].events & EPOLLIN) { + ssize_t count; + char buf[4096]; +-- +1.7.9.2 + diff --git a/0003-units-order-systemd-tmpfiles-clean.service-after-tim.patch b/0003-units-order-systemd-tmpfiles-clean.service-after-tim.patch new file mode 100644 index 00000000..5f466ea6 --- /dev/null +++ b/0003-units-order-systemd-tmpfiles-clean.service-after-tim.patch @@ -0,0 +1,26 @@ +Based on 497d1986c13032f1ef8f4592bb7ed8d3aa321a47 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 20 Jun 2014 00:15:39 +0200 +Subject: [PATCH] units: order systemd-tmpfiles-clean.service after + time-sync.target + +That way, on systems lacking an RTC we don't false start removing aged +files too early. +--- + units/systemd-tmpfiles-clean.service.in | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +--- units/systemd-tmpfiles-clean.service.in ++++ units/systemd-tmpfiles-clean.service.in 2014-06-24 10:47:57.398235644 +0000 +@@ -10,8 +10,9 @@ Description=Cleanup of Temporary Directo + Documentation=man:tmpfiles.d(5) man:systemd-tmpfiles(8) + DefaultDependencies=no + Wants=local-fs.target +-After=systemd-readahead-collect.service systemd-readahead-replay.service local-fs.target +-Before=sysinit.target shutdown.target ++Conflicts=shutdown.target ++After=systemd-readahead-collect.service systemd-readahead-replay.service local-fs.target time-sync.target ++Before=shutdown.target + ConditionDirectoryNotEmpty=|/usr/lib/tmpfiles.d + ConditionDirectoryNotEmpty=|/usr/local/lib/tmpfiles.d + ConditionDirectoryNotEmpty=|/etc/tmpfiles.d diff --git a/0003-units-remove-RefuseManualStart-from-units-which-are-.patch b/0003-units-remove-RefuseManualStart-from-units-which-are-.patch new file mode 100644 index 00000000..d9ffedbf --- /dev/null +++ b/0003-units-remove-RefuseManualStart-from-units-which-are-.patch @@ -0,0 +1,65 @@ +Based on 0fdeb6e011dfdb17636c81e2d7e0d632186359ce Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sat, 28 Jun 2014 00:06:30 -0400 +Subject: [PATCH] units: remove RefuseManualStart from units which are always + around + +In a normal running system, non-passive targets and units used during +early bootup are always started. So refusing "manual start" for them +doesn't make any difference, because a "start" command doesn't cause +any action. + +In early boot however, the administrator might want to start on +of those targets or services by hand. We shouldn't interfere with that. + +Note: in case of systemd-tmpfiles-setup.service, really running the +unit after system is up would break the system. So e.g. restarting +should not be allowed. The unit has "RefuseManualStop=yes", which +prevents restart too. +--- + units/basic.target | 1 - + units/sysinit.target | 1 - + units/systemd-tmpfiles-setup.service.in | 1 - + units/user/basic.target | 1 - + 4 files changed, 4 deletions(-) + +diff --git units/basic.target units/basic.target +index d7c68f4..b890d48 100644 +--- units/basic.target ++++ units/basic.target +@@ -11,4 +11,3 @@ Documentation=man:systemd.special(7) + Requires=sysinit.target + Wants=sockets.target timers.target paths.target slices.target + After=sysinit.target sockets.target timers.target paths.target slices.target +-RefuseManualStart=yes +diff --git units/sysinit.target units/sysinit.target +index 8f4fb8f..ec33503 100644 +--- units/sysinit.target ++++ units/sysinit.target +@@ -11,4 +11,3 @@ Documentation=man:systemd.special(7) + Conflicts=emergency.service emergency.target + Wants=local-fs.target swap.target + After=local-fs.target swap.target emergency.service emergency.target +-RefuseManualStart=yes +--- units/systemd-tmpfiles-setup.service.in ++++ units/systemd-tmpfiles-setup.service.in 2014-07-01 12:17:48.154235348 +0000 +@@ -18,7 +18,6 @@ ConditionDirectoryNotEmpty=|/lib/tmpfile + ConditionDirectoryNotEmpty=|/usr/local/lib/tmpfiles.d + ConditionDirectoryNotEmpty=|/etc/tmpfiles.d + ConditionDirectoryNotEmpty=|/run/tmpfiles.d +-RefuseManualStart=yes + RefuseManualStop=yes + + [Service] +diff --git units/user/basic.target units/user/basic.target +index b74d13c..afc6e93 100644 +--- units/user/basic.target ++++ units/user/basic.target +@@ -10,4 +10,3 @@ Description=Basic System + Documentation=man:systemd.special(7) + Wants=sockets.target timers.target paths.target + After=sockets.target timers.target paths.target +-RefuseManualStart=yes +-- +1.7.9.2 + diff --git a/0003-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch b/0003-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch new file mode 100644 index 00000000..15c8d7f5 --- /dev/null +++ b/0003-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch @@ -0,0 +1,26 @@ +From d8e40d62ab871a87fde421c4b246bb45bc3cbe2d Mon Sep 17 00:00:00 2001 +From: Jonathan Liu +Date: Thu, 29 May 2014 01:17:25 +1000 +Subject: [PATCH] units: use KillMode=mixed for systemd-nspawn@.service + +This causes the container to shut down cleanly when the service is +stopped. +--- + units/systemd-nspawn@.service.in | 1 + + 1 file changed, 1 insertion(+) + +diff --git units/systemd-nspawn@.service.in units/systemd-nspawn@.service.in +index ff36e90..e373628 100644 +--- units/systemd-nspawn@.service.in ++++ units/systemd-nspawn@.service.in +@@ -11,6 +11,7 @@ Documentation=man:systemd-nspawn(1) + + [Service] + ExecStart=@bindir@/systemd-nspawn --quiet --keep-unit --boot --link-journal=guest --directory=/var/lib/container/%i ++KillMode=mixed + Type=notify + + [Install] +-- +1.7.9.2 + diff --git a/0003-utf8-when-looking-at-the-next-unichar-honour-the-siz.patch b/0003-utf8-when-looking-at-the-next-unichar-honour-the-siz.patch new file mode 100644 index 00000000..bc69be20 --- /dev/null +++ b/0003-utf8-when-looking-at-the-next-unichar-honour-the-siz.patch @@ -0,0 +1,29 @@ +Based on 144b3d9e093dd9310cd9590bec039dc43a7e2ad6 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 7 Nov 2014 16:34:00 +0100 +Subject: [PATCH] utf8: when looking at the next unichar, honour the size + parameter, in utf8_is_printable_newline() + +--- + src/shared/utf8.c | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +--- src/shared/utf8.c ++++ src/shared/utf8.c 2014-11-10 14:20:28.094539264 +0000 +@@ -143,9 +143,14 @@ bool utf8_is_printable_newline(const cha + + for (p = (const uint8_t*) str; length;) { + int encoded_len = utf8_encoded_valid_unichar((const char *)p); +- int val = utf8_encoded_to_unichar((const char*)p); ++ int val; + +- if (encoded_len < 0 || val < 0 || is_unicode_control(val) || ++ if (encoded_len < 0 || ++ (size_t) encoded_len > length) ++ return false; ++ ++ val = utf8_encoded_to_unichar((const char*)p); ++ if (val < 0 || is_unicode_control(val) || + (!newline && val == '\n')) + return false; + diff --git a/0004-Raise-level-of-Found-dependency.-lines.patch b/0004-Raise-level-of-Found-dependency.-lines.patch new file mode 100644 index 00000000..3ae2e49e --- /dev/null +++ b/0004-Raise-level-of-Found-dependency.-lines.patch @@ -0,0 +1,42 @@ +From 14fe721b5f6d8457cc8737fa75f2ed79e7fa534b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sun, 2 Nov 2014 12:10:42 -0500 +Subject: [PATCH] Raise level of 'Found dependency...' lines + +This way they always show up together with 'Found ordering cycle...'. +Ordering cycles are a serious error and a major pain to debug. If +quiet is enabled, only the first and the last line of output are +shown: + +systemd[1]: Found ordering cycle on basic.target/start +systemd[1]: Breaking ordering cycle by deleting job timers.target/start +systemd[1]: Job timers.target/start deleted to break ordering cycle starting with basic.target/start + +which isn't particularly enlightening. So just show the whole message +at the same level. + +https://bugzilla.redhat.com/show_bug.cgi?id=1158206 +--- + src/core/transaction.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git src/core/transaction.c src/core/transaction.c +index 488cb86..bbaa6da 100644 +--- src/core/transaction.c ++++ src/core/transaction.c +@@ -376,9 +376,9 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi + for (k = from; k; k = ((k->generation == generation && k->marker != k) ? k->marker : NULL)) { + + /* logging for j not k here here to provide consistent narrative */ +- log_info_unit(j->unit->id, +- "Found dependency on %s/%s", +- k->unit->id, job_type_to_string(k->type)); ++ log_warning_unit(j->unit->id, ++ "Found dependency on %s/%s", ++ k->unit->id, job_type_to_string(k->type)); + + if (!delete && hashmap_get(tr->jobs, k->unit) && + !unit_matters_to_anchor(k->unit, k)) { +-- +1.7.9.2 + diff --git a/0004-architecture-remove-cris-from-uname-list.patch b/0004-architecture-remove-cris-from-uname-list.patch new file mode 100644 index 00000000..dc1aa466 --- /dev/null +++ b/0004-architecture-remove-cris-from-uname-list.patch @@ -0,0 +1,27 @@ +From bc4bc52bc3de56405045b0437e145a7067fb085d Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 3 Jul 2014 22:52:44 +0200 +Subject: [PATCH] architecture: remove "cris" from uname list + +the only correct name appears to be "crisv32"... + +http://lists.freedesktop.org/archives/systemd-devel/2014-July/020899.html +--- + src/shared/architecture.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git src/shared/architecture.c src/shared/architecture.c +index 7dd049a..6cdca4e 100644 +--- src/shared/architecture.c ++++ src/shared/architecture.c +@@ -115,7 +115,6 @@ Architecture uname_architecture(void) { + #elif defined(__tilegx__) + { "tilegx", ARCHITECTURE_TILEGX }, + #elif defined(__cris__) +- { "cris", ARCHITECTURE_CRIS }, + { "crisv32", ARCHITECTURE_CRIS }, + #else + #error "Please register your architecture here!" +-- +1.7.9.2 + diff --git a/0004-backlight-Avoid-error-when-state-restore-is-disabled.patch b/0004-backlight-Avoid-error-when-state-restore-is-disabled.patch new file mode 100644 index 00000000..281f7b5c --- /dev/null +++ b/0004-backlight-Avoid-error-when-state-restore-is-disabled.patch @@ -0,0 +1,33 @@ +From b76388e123e8d73ded1fd53937d816b314948517 Mon Sep 17 00:00:00 2001 +From: Michael Biebl +Date: Thu, 11 Sep 2014 00:49:36 +0200 +Subject: [PATCH] backlight: Avoid error when state restore is disabled + +When the state restore is disabled, we would print: +"Unknown verb: load" instead of simply skipping loading the +state. +--- + src/backlight/backlight.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git src/backlight/backlight.c src/backlight/backlight.c +index 4d94ebf..0a2bac6 100644 +--- src/backlight/backlight.c ++++ src/backlight/backlight.c +@@ -372,9 +372,12 @@ int main(int argc, char *argv[]) { + * device probing should be complete), so that the validity + * check at boot time doesn't have to be reliable. */ + +- if (streq(argv[1], "load") && shall_restore_state()) { ++ if (streq(argv[1], "load")) { + _cleanup_free_ char *value = NULL; + ++ if (!shall_restore_state()) ++ return EXIT_SUCCESS; ++ + if (!validate_device(udev, device)) + return EXIT_SUCCESS; + +-- +1.7.9.2 + diff --git a/0004-backlight-warn-if-kernel-exposes-backlight-device-wi.patch b/0004-backlight-warn-if-kernel-exposes-backlight-device-wi.patch new file mode 100644 index 00000000..d0ec9ec8 --- /dev/null +++ b/0004-backlight-warn-if-kernel-exposes-backlight-device-wi.patch @@ -0,0 +1,40 @@ +From c7fdf44d08e1217d40dc092fb90a65978a0f541f Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 23 Apr 2014 06:55:54 +0200 +Subject: [PATCH] backlight: warn if kernel exposes backlight device with + bogus max_brightness + +We shouldn't silently tape over broken kernel drivers. +--- + src/backlight/backlight.c | 10 +++++++--- + 1 file changed, 7 insertions(+), 3 deletions(-) + +diff --git src/backlight/backlight.c src/backlight/backlight.c +index 754a646..c708391 100644 +--- src/backlight/backlight.c ++++ src/backlight/backlight.c +@@ -205,14 +205,18 @@ static unsigned get_max_brightness(struct udev_device *device) { + + max_brightness_str = udev_device_get_sysattr_value(device, "max_brightness"); + if (!max_brightness_str) { +- log_warning("Failed to read 'max_brightness' attribute"); ++ log_warning("Failed to read 'max_brightness' attribute."); + return 0; + } + + r = safe_atou(max_brightness_str, &max_brightness); + if (r < 0) { +- log_warning("Failed to parse 'max_brightness' \"%s\": %s", +- max_brightness_str, strerror(-r)); ++ log_warning("Failed to parse 'max_brightness' \"%s\": %s", max_brightness_str, strerror(-r)); ++ return 0; ++ } ++ ++ if (max_brightness <= 0) { ++ log_warning("Maximum brightness is 0, ignoring device."); + return 0; + } + +-- +1.7.9.2 + diff --git a/0004-bash-completion-use-list-unit-files-to-get-all-units.patch b/0004-bash-completion-use-list-unit-files-to-get-all-units.patch new file mode 100644 index 00000000..b5ab5359 --- /dev/null +++ b/0004-bash-completion-use-list-unit-files-to-get-all-units.patch @@ -0,0 +1,39 @@ +Based on c6a373a26348544d944b08bf0c5dea4f72f6980b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sat, 26 Jul 2014 20:11:58 -0400 +Subject: [PATCH] bash-completion: use list-unit-files to get "all" units + +I think that it is better to return good results slightly more slowly, +than partial quickly. Also reading from disk seems fast enough. Even +the delay on first try with completely cold cache is acceptable. + +This is just for bash, 'cause zsh was already doing this. + +https://bugzilla.redhat.com/show_bug.cgi?id=790768 +--- + shell-completion/bash/systemctl.in | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git shell-completion/bash/systemctl.in shell-completion/bash/systemctl.in +index c5950cc..69ef04b 100644 +--- shell-completion/bash/systemctl ++++ shell-completion/bash/systemctl +@@ -51,11 +51,13 @@ __filter_units_by_property () { + done + } + +-__get_all_units () { __systemctl $1 list-units --all \ ++__get_all_units () { { __systemctl $1 list-unit-files; __systemctl $1 list-units --all; } \ + | { while read -r a b; do echo " $a"; done; }; } + __get_active_units () { __systemctl $1 list-units \ + | { while read -r a b; do echo " $a"; done; }; } +-__get_startable_units () { __systemctl $1 list-units --all -t service,timer,socket,mount,automount,path,snapshot,swap \ ++__get_startable_units () { { ++ __systemctl $1 list-units --all -t service,timer,socket,mount,automount,path,snapshot,swap ++ __systemctl $1 list-unit-files -t service,timer,socket,mount,automount,path,snapshot,swap; } \ + | { while read -r a b c d; do [[ $c == "inactive" || $c == "failed" ]] && echo " $a"; done; }; } + __get_failed_units () { __systemctl $1 list-units \ + | { while read -r a b c d; do [[ $c == "failed" ]] && echo " $a"; done; }; } +-- +1.7.9.2 + diff --git a/0004-bootchart-check-return-of-strftime.patch b/0004-bootchart-check-return-of-strftime.patch new file mode 100644 index 00000000..a629c9e9 --- /dev/null +++ b/0004-bootchart-check-return-of-strftime.patch @@ -0,0 +1,63 @@ +From e931d3f4241231e4102eda06adaf7cbfd68c6a5d Mon Sep 17 00:00:00 2001 +From: Thomas Hindoe Paaboel Andersen +Date: Sat, 27 Sep 2014 22:25:07 +0200 +Subject: [PATCH] bootchart: check return of strftime + +Found by coverity. Fixes: CID#996314 and #996312 +--- + src/bootchart/bootchart.c | 8 ++++++-- + src/bootchart/svg.c | 5 +++-- + 2 files changed, 9 insertions(+), 4 deletions(-) + +diff --git src/bootchart/bootchart.c src/bootchart/bootchart.c +index 8ef5ad1..366a5ab 100644 +--- src/bootchart/bootchart.c ++++ src/bootchart/bootchart.c +@@ -389,7 +389,9 @@ int main(int argc, char *argv[]) { + + if (!of && (access(arg_output_path, R_OK|W_OK|X_OK) == 0)) { + t = time(NULL); +- strftime(datestr, sizeof(datestr), "%Y%m%d-%H%M", localtime(&t)); ++ r = strftime(datestr, sizeof(datestr), "%Y%m%d-%H%M", localtime(&t)); ++ assert_se(r > 0); ++ + snprintf(output_file, PATH_MAX, "%s/bootchart-%s.svg", arg_output_path, datestr); + of = fopen(output_file, "we"); + } +@@ -457,7 +459,9 @@ int main(int argc, char *argv[]) { + + if (!of) { + t = time(NULL); +- strftime(datestr, sizeof(datestr), "%Y%m%d-%H%M", localtime(&t)); ++ r = strftime(datestr, sizeof(datestr), "%Y%m%d-%H%M", localtime(&t)); ++ assert_se(r > 0); ++ + snprintf(output_file, PATH_MAX, "%s/bootchart-%s.svg", arg_output_path, datestr); + of = fopen(output_file, "we"); + } +diff --git src/bootchart/svg.c src/bootchart/svg.c +index 135883f..faf377e 100644 +--- src/bootchart/svg.c ++++ src/bootchart/svg.c +@@ -162,7 +162,7 @@ static void svg_title(const char *build) { + char *c; + FILE *f; + time_t t; +- int fd; ++ int fd, r; + struct utsname uts; + + /* grab /proc/cmdline */ +@@ -196,7 +196,8 @@ static void svg_title(const char *build) { + + /* date */ + t = time(NULL); +- strftime(date, sizeof(date), "%a, %d %b %Y %H:%M:%S %z", localtime(&t)); ++ r = strftime(date, sizeof(date), "%a, %d %b %Y %H:%M:%S %z", localtime(&t)); ++ assert_se(r > 0); + + /* CPU type */ + fd = openat(procfd, "cpuinfo", O_RDONLY); +-- +1.7.9.2 + diff --git a/0004-config-parser-fix-mem-leak.patch b/0004-config-parser-fix-mem-leak.patch new file mode 100644 index 00000000..b45d89c0 --- /dev/null +++ b/0004-config-parser-fix-mem-leak.patch @@ -0,0 +1,24 @@ +From 9e60277835e61597011358afcdbfb3dd712ce128 Mon Sep 17 00:00:00 2001 +From: Thomas Hindoe Paaboel Andersen +Date: Sun, 31 Aug 2014 23:13:12 +0200 +Subject: [PATCH] config-parser: fix mem leak + +--- + src/shared/conf-parser.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git src/shared/conf-parser.c src/shared/conf-parser.c +index 439cfc5..ee6de65 100644 +--- src/shared/conf-parser.c ++++ src/shared/conf-parser.c +@@ -710,6 +710,7 @@ int config_parse_strv(const char *unit, + + if (!utf8_is_valid(n)) { + log_invalid_utf8(unit, LOG_ERR, filename, line, EINVAL, rvalue); ++ free(n); + continue; + } + +-- +1.7.9.2 + diff --git a/0004-core-Added-support-for-ERRNO-NOTIFY_SOCKET-message-p.patch b/0004-core-Added-support-for-ERRNO-NOTIFY_SOCKET-message-p.patch new file mode 100644 index 00000000..3ae99a64 --- /dev/null +++ b/0004-core-Added-support-for-ERRNO-NOTIFY_SOCKET-message-p.patch @@ -0,0 +1,67 @@ +Based on 4774e357268e4a1e9fa82adb0563a538932a4c8e Mon Sep 17 00:00:00 2001 +From: Miguel Angel Ajo +Date: Mon, 7 Jul 2014 14:20:36 +0200 +Subject: [PATCH] core: Added support for ERRNO NOTIFY_SOCKET message parsing, + and added StatusErrno dbus property along StatusText to + allow notification of numeric status condition while + degraded service operation or any other special situation. + +--- + src/core/dbus-service.c | 1 + + src/core/service.c | 17 +++++++++++++++++ + src/core/service.h | 1 + + 3 files changed, 19 insertions(+) + +diff --git src/core/dbus-service.c src/core/dbus-service.c +index 093289f..5a881e8 100644 +--- src/core/dbus-service.c ++++ src/core/dbus-service.c +@@ -60,6 +60,7 @@ const sd_bus_vtable bus_service_vtable[] = { + SD_BUS_PROPERTY("ControlPID", "u", bus_property_get_pid, offsetof(Service, control_pid), SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), + SD_BUS_PROPERTY("BusName", "s", NULL, offsetof(Service, bus_name), SD_BUS_VTABLE_PROPERTY_CONST), + SD_BUS_PROPERTY("StatusText", "s", NULL, offsetof(Service, status_text), SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), ++ SD_BUS_PROPERTY("StatusErrno", "i", NULL, offsetof(Service, status_errno), SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), + SD_BUS_PROPERTY("Result", "s", property_get_result, offsetof(Service, result), SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), + BUS_EXEC_STATUS_VTABLE("ExecMain", offsetof(Service, main_exec_status), SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), + BUS_EXEC_COMMAND_LIST_VTABLE("ExecStartPre", offsetof(Service, exec_command[SERVICE_EXEC_START_PRE]), SD_BUS_VTABLE_PROPERTY_EMITS_INVALIDATION), +diff --git src/core/service.c src/core/service.c +index 0b19767..ace45e2 100644 +--- src/core/service.c ++++ src/core/service.c +@@ -2637,6 +2637,23 @@ static void service_notify_message(Unit *u, pid_t pid, char **tags) { + free(t); + } + ++ /* Interpret ERRNO= */ ++ e = strv_find_prefix(tags, "ERRNO="); ++ if (e) { ++ int status_errno; ++ ++ if (safe_atoi(e + 6, &status_errno) < 0) ++ log_warning_unit(u->id, "Failed to parse ERRNO= field in notification message: %s", e); ++ else { ++ log_debug_unit(u->id, "%s: got %s", u->id, e); ++ ++ if (s->status_errno != status_errno) { ++ s->status_errno = status_errno; ++ notify_dbus = true; ++ } ++ } ++ } ++ + /* Interpret WATCHDOG= */ + if (strv_find(tags, "WATCHDOG=1")) { + log_debug_unit(u->id, "%s: got WATCHDOG=1", u->id); +--- src/core/service.h ++++ src/core/service.h 2014-07-08 12:54:39.238736046 +0200 +@@ -187,6 +187,7 @@ struct Service { + char *bus_name; + + char *status_text; ++ int status_errno; + + RateLimit start_limit; + StartLimitAction start_limit_action; +-- +1.7.9.2 + diff --git a/0004-core-don-t-try-to-relabel-mounts-before-we-loaded-th.patch b/0004-core-don-t-try-to-relabel-mounts-before-we-loaded-th.patch new file mode 100644 index 00000000..17d7f268 --- /dev/null +++ b/0004-core-don-t-try-to-relabel-mounts-before-we-loaded-th.patch @@ -0,0 +1,29 @@ +From c4bfd1691f4d3e26d6d7f34dbca941e119956e8a Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 24 Mar 2014 21:04:02 +0100 +Subject: [PATCH] core: don't try to relabel mounts before we loaded the + policy + +--- + src/core/mount-setup.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git src/core/mount-setup.c src/core/mount-setup.c +index 147333a..0a45b24 100644 +--- src/core/mount-setup.c ++++ src/core/mount-setup.c +@@ -172,7 +172,10 @@ static int mount_one(const MountPoint *p, bool relabel) { + + /* The access mode here doesn't really matter too much, since + * the mounted file system will take precedence anyway. */ +- mkdir_p_label(p->where, 0755); ++ if (relabel) ++ mkdir_p_label(p->where, 0755); ++ else ++ mkdir_p(p->where, 0755); + + log_debug("Mounting %s to %s of type %s with options %s.", + p->what, +-- +1.7.9.2 + diff --git a/0004-core-fix-transaction-destructiveness-check-once-more.patch b/0004-core-fix-transaction-destructiveness-check-once-more.patch new file mode 100644 index 00000000..843200c5 --- /dev/null +++ b/0004-core-fix-transaction-destructiveness-check-once-more.patch @@ -0,0 +1,32 @@ +Based on e0312f4db08c7100bd00299614e87bedc759b366 Mon Sep 17 00:00:00 2001 +Based on c21b92ffe7ef939dd32502ac912cf8ad1c5638fd Mon Sep 17 00:00:00 2001 +From: Michal Schmidt +Date: Thu, 27 Nov 2014 15:23:58 +0100 +Subject: [PATCH] core: fix transaction destructiveness check once more + +The previous fix e0312f4db "core: fix check for transaction +destructiveness" broke test-engine (noticed by Zbyszek). +Apparently I had a wrong idea of the intended semantics of --fail. + +The manpage says the operation should fail if it "conflicts with a +pending job (more specifically: causes an already pending start job to +be reversed into a stop job or vice versa)". + +So let's check job_type_is_conflicting, instead of !is_superset. + +This makes both test-engine and TEST-03-JOBS pass again. +--- + src/core/transaction.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- src/core/transaction.c ++++ src/core/transaction.c 2014-12-15 12:06:11.721518136 +0000 +@@ -510,7 +510,7 @@ static int transaction_is_destructive(Tr + assert(!j->transaction_next); + + if (j->unit->job && (mode == JOB_FAIL || j->unit->job->irreversible) && +- !job_type_is_superset(j->type, j->unit->job->type)) { ++ job_type_is_conflicting(j->unit->job->type, j->type)) { + + sd_bus_error_setf(e, BUS_ERROR_TRANSACTION_IS_DESTRUCTIVE, "Transaction is destructive."); + return -EEXIST; diff --git a/0004-core-map-the-rescue-argument-to-rescue.target.patch b/0004-core-map-the-rescue-argument-to-rescue.target.patch new file mode 100644 index 00000000..6b639305 --- /dev/null +++ b/0004-core-map-the-rescue-argument-to-rescue.target.patch @@ -0,0 +1,27 @@ +From 5329ab10ffaf5b4a3fd6ebd9380b1ec09d05cfc8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Mantas=20Mikul=C4=97nas?= +Date: Tue, 7 Oct 2014 14:55:21 +0300 +Subject: [PATCH] core: map the 'rescue' argument to rescue.target + +Even though the 'emergency' and 'single' aliases come from sysvinit, the +lack of 'rescue' is still quite confusing (caught me by surprise for the +9th time yet) and inconsistent with `systemctl rescue` as well. +--- + src/core/main.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git src/core/main.c src/core/main.c +index 1a62e04..44373cc 100644 +--- src/core/main.c ++++ src/core/main.c +@@ -272,6 +272,7 @@ static int parse_proc_cmdline_item(const char *key, const char *value) { + static const char * const rlmap[] = { + "emergency", SPECIAL_EMERGENCY_TARGET, + "-b", SPECIAL_EMERGENCY_TARGET, ++ "rescue", SPECIAL_RESCUE_TARGET, + "single", SPECIAL_RESCUE_TARGET, + "-s", SPECIAL_RESCUE_TARGET, + "s", SPECIAL_RESCUE_TARGET, +-- +1.7.9.2 + diff --git a/0004-cryptsetup-don-t-add-unit-dependency-on-dev-null-dev.patch b/0004-cryptsetup-don-t-add-unit-dependency-on-dev-null-dev.patch new file mode 100644 index 00000000..4bed22a5 --- /dev/null +++ b/0004-cryptsetup-don-t-add-unit-dependency-on-dev-null-dev.patch @@ -0,0 +1,53 @@ +Based on bde29068aa3815c88190a91e9867605a0aeaf9c4 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 23 Jun 2014 19:18:44 +0200 +Subject: [PATCH] cryptsetup: don't add unit dependency on /dev/null devices + when it is listed as password file + +As special magic, don't create device dependencies for /dev/null. Of +course, there might be similar devices we might want to include, but +given that none of them really make sense to specify as password source +there's really no point in checking for anything else here. + +https://bugs.freedesktop.org/show_bug.cgi?id=75816 +--- + src/cryptsetup/cryptsetup-generator.c | 21 +++++++++++++-------- + 1 file changed, 13 insertions(+), 8 deletions(-) + +--- src/cryptsetup/cryptsetup-generator.c ++++ src/cryptsetup/cryptsetup-generator.c 2014-06-25 17:24:14.338237375 +0000 +@@ -29,6 +29,7 @@ + #include "mkdir.h" + #include "strv.h" + #include "fileio.h" ++#include "path-util.h" + + static const char *arg_dest = "/tmp"; + static bool arg_enabled = true; +@@ -141,14 +142,18 @@ static int create_disk( + if (uu == NULL) + return log_oom(); + +- if (is_device_path(uu)) { +- _cleanup_free_ char *dd = unit_name_from_path(uu, ".device"); +- if (dd == NULL) +- return log_oom(); +- +- fprintf(f, "After=%1$s\nRequires=%1$s\n", dd); +- } else +- fprintf(f, "RequiresMountsFor=%s\n", password); ++ if (!path_equal(uu, "/dev/null")) { ++ if (is_device_path(uu)) { ++ _cleanup_free_ char *dd; ++ ++ dd = unit_name_from_path(uu, ".device"); ++ if (!dd) ++ return log_oom(); ++ ++ fprintf(f, "After=%1$s\nRequires=%1$s\n", dd); ++ } else ++ fprintf(f, "RequiresMountsFor=%s\n", password); ++ } + } + } + diff --git a/0004-fileio-quote-more-shell-characters-in-envfiles.patch b/0004-fileio-quote-more-shell-characters-in-envfiles.patch new file mode 100644 index 00000000..b4cd3e96 --- /dev/null +++ b/0004-fileio-quote-more-shell-characters-in-envfiles.patch @@ -0,0 +1,54 @@ +From 0ce5a80601597fe4d1a715a8f70ce8d5ccaa2d86 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Mantas=20Mikul=C4=97nas?= +Date: Sun, 13 Jul 2014 18:49:00 +0300 +Subject: [PATCH] fileio: quote more shell characters in envfiles + +Turns out, making strings shell-proof is harder than expected: + + # machinectl set-hostname "foo|poweroff" && . /etc/machine-info + +(This could be simplified by quoting *and* escaping all characters, +which is harmless in shell but unnecessary.) +--- + src/shared/fileio.c | 4 ++-- + src/shared/util.h | 6 ++++++ + 2 files changed, 8 insertions(+), 2 deletions(-) + +diff --git src/shared/fileio.c src/shared/fileio.c +index b0ab780..cbb40c2 100644 +--- src/shared/fileio.c ++++ src/shared/fileio.c +@@ -738,11 +738,11 @@ static void write_env_var(FILE *f, const char *v) { + p++; + fwrite(v, 1, p-v, f); + +- if (string_has_cc(p, NULL) || chars_intersect(p, WHITESPACE "\'\"\\`$")) { ++ if (string_has_cc(p, NULL) || chars_intersect(p, WHITESPACE SHELL_NEED_QUOTES)) { + fputc('\"', f); + + for (; *p; p++) { +- if (strchr("\'\"\\`$", *p)) ++ if (strchr(SHELL_NEED_ESCAPE, *p)) + fputc('\\', f); + + fputc(*p, f); +diff --git src/shared/util.h src/shared/util.h +index c5eadc9..b3187a9 100644 +--- src/shared/util.h ++++ src/shared/util.h +@@ -93,6 +93,12 @@ + #define COMMENTS "#;" + #define GLOB_CHARS "*?[" + ++/* What characters are special in the shell? */ ++/* must be escaped outside and inside double-quotes */ ++#define SHELL_NEED_ESCAPE "\"\\`$" ++/* can be escaped or double-quoted */ ++#define SHELL_NEED_QUOTES SHELL_NEED_ESCAPE GLOB_CHARS "'()<>|&;" ++ + #define FORMAT_BYTES_MAX 8 + + #define ANSI_HIGHLIGHT_ON "\x1B[1;39m" +-- +1.7.9.2 + diff --git a/0004-fix-off-by-one-error-in-array-index-assertion.patch b/0004-fix-off-by-one-error-in-array-index-assertion.patch new file mode 100644 index 00000000..9b718e05 --- /dev/null +++ b/0004-fix-off-by-one-error-in-array-index-assertion.patch @@ -0,0 +1,35 @@ +From 26abdc73a212b90f7c4b71808a1028d2e87ab09f Mon Sep 17 00:00:00 2001 +From: Dave Reisner +Date: Sat, 8 Mar 2014 17:32:53 -0500 +Subject: [PATCH] fix off by one error in array index assertion + +Since the index is already post-incremented when the array is appended +to, this assertion can be wrongly reached when the array is at capacity +(with the NULL terminator). The bug is reproducible on shutdown with +the following settings in /etc/systemd/system.conf: + + LogTarget=journal-or-kmsg + LogColor=yes + LogLocation=yes + +Reported by Thermi on IRC. +--- + src/core/main.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/core/main.c src/core/main.c +index 6ebfe64..f1b06d8 100644 +--- src/core/main.c ++++ src/core/main.c +@@ -1994,7 +1994,7 @@ finish: + if (log_get_show_location()) + command_line[pos++] = "--log-location"; + +- assert(pos + 1 < ELEMENTSOF(command_line)); ++ assert(pos < ELEMENTSOF(command_line)); + + if (arm_reboot_watchdog && arg_shutdown_watchdog > 0) { + char *e; +-- +1.7.9.2 + diff --git a/0004-fix-typo-in-iDRAC-network-interface-name-irdac-idrac.patch b/0004-fix-typo-in-iDRAC-network-interface-name-irdac-idrac.patch new file mode 100644 index 00000000..065c0ea9 --- /dev/null +++ b/0004-fix-typo-in-iDRAC-network-interface-name-irdac-idrac.patch @@ -0,0 +1,22 @@ +From b3e4387351c835766f96796a20d94971afea7d3b Mon Sep 17 00:00:00 2001 +From: Tomasz Torcz +Date: Tue, 25 Feb 2014 12:43:55 +0100 +Subject: [PATCH] fix typo in iDRAC network interface name: irdac->idrac + +--- + hwdb/20-net-ifname.hwdb | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git hwdb/20-net-ifname.hwdb hwdb/20-net-ifname.hwdb +index 29d2633..2408dc1 100644 +--- hwdb/20-net-ifname.hwdb ++++ hwdb/20-net-ifname.hwdb +@@ -2,4 +2,4 @@ + + # Dell iDRAC Virtual USB NIC + usb:v413CpA102* +- ID_NET_NAME_FROM_DATABASE=irdac ++ ID_NET_NAME_FROM_DATABASE=idrac +-- +1.7.9.2 + diff --git a/0004-getty-generator-properly-escape-instance-names.patch b/0004-getty-generator-properly-escape-instance-names.patch new file mode 100644 index 00000000..26feb694 --- /dev/null +++ b/0004-getty-generator-properly-escape-instance-names.patch @@ -0,0 +1,39 @@ +From a2ae516a25dafe41e0cd296ab7b5d022fa62b95f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Thu, 19 Jun 2014 22:02:55 -0400 +Subject: [PATCH] getty-generator: properly escape instance names + +Otherwise the add_symlink() function tries to make directories for +each slash even for the slash after the @ symbol in the final link +name, failing for /dev/3270/tty1. + +Based on a patch by Werner Fink . +--- + src/getty-generator/getty-generator.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git src/getty-generator/getty-generator.c src/getty-generator/getty-generator.c +index 35cd858..7d4b546 100644 +--- src/getty-generator/getty-generator.c ++++ src/getty-generator/getty-generator.c +@@ -67,7 +67,7 @@ static int add_serial_getty(const char *tty) { + + log_debug("Automatically adding serial getty for /dev/%s.", tty); + +- n = unit_name_replace_instance("serial-getty@.service", tty); ++ n = unit_name_from_path_instance("serial-getty", tty, ".service"); + if (!n) + return log_oom(); + +@@ -81,7 +81,7 @@ static int add_container_getty(const char *tty) { + + log_debug("Automatically adding container getty for /dev/pts/%s.", tty); + +- n = unit_name_replace_instance("container-getty@.service", tty); ++ n = unit_name_from_path_instance("container-getty", tty, ".service"); + if (!n) + return log_oom(); + +-- +1.7.9.2 + diff --git a/0004-hwdb-Update-database-of-Bluetooth-company-identifier.patch b/0004-hwdb-Update-database-of-Bluetooth-company-identifier.patch new file mode 100644 index 00000000..7ae03b91 --- /dev/null +++ b/0004-hwdb-Update-database-of-Bluetooth-company-identifier.patch @@ -0,0 +1,50 @@ +From b189101727e80a09864c5e5880663ef565467f19 Mon Sep 17 00:00:00 2001 +From: Marcel Holtmann +Date: Sat, 12 Apr 2014 10:38:16 -0700 +Subject: [PATCH] hwdb: Update database of Bluetooth company identifiers + +--- + hwdb/20-bluetooth-vendor-product.hwdb | 23 ++++++++++++++++++++++- + 1 file changed, 22 insertions(+), 1 deletion(-) + +diff --git hwdb/20-bluetooth-vendor-product.hwdb hwdb/20-bluetooth-vendor-product.hwdb +index b928f5a..28aa2a7 100644 +--- hwdb/20-bluetooth-vendor-product.hwdb ++++ hwdb/20-bluetooth-vendor-product.hwdb +@@ -733,7 +733,7 @@ bluetooth:v00F1* + ID_VENDOR_FROM_DATABASE=Witron Technology Limited + + bluetooth:v00F2* +- ID_VENDOR_FROM_DATABASE=Morse Project Inc. ++ ID_VENDOR_FROM_DATABASE=Aether Things Inc. (formerly Morse Project Inc.) + + bluetooth:v00F3* + ID_VENDOR_FROM_DATABASE=Kent Displays Inc. +@@ -941,3 +941,24 @@ bluetooth:v0136* + + bluetooth:v0137* + ID_VENDOR_FROM_DATABASE=Prestigio Plaza Ltd. ++ ++bluetooth:v0138* ++ ID_VENDOR_FROM_DATABASE=NTEO Inc. ++ ++bluetooth:v0139* ++ ID_VENDOR_FROM_DATABASE=Focus Systems Corporation ++ ++bluetooth:v013A* ++ ID_VENDOR_FROM_DATABASE=Tencent Holdings Limited ++ ++bluetooth:v013B* ++ ID_VENDOR_FROM_DATABASE=Allegion ++ ++bluetooth:v013C* ++ ID_VENDOR_FROM_DATABASE=Murata Manufacuring Co., Ltd. ++ ++bluetooth:v013D* ++ ID_VENDOR_FROM_DATABASE=WirelessWERX ++ ++bluetooth:v013E* ++ ID_VENDOR_FROM_DATABASE=nimai +-- +1.7.9.2 + diff --git a/0004-hwdb-update-format-description-and-document-reloadin.patch b/0004-hwdb-update-format-description-and-document-reloadin.patch new file mode 100644 index 00000000..a65a46f0 --- /dev/null +++ b/0004-hwdb-update-format-description-and-document-reloadin.patch @@ -0,0 +1,60 @@ +From fa9d4be3f1f4a792b2f3624c2a08fe9cc6ce6e54 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Thu, 7 Aug 2014 21:48:57 -0400 +Subject: [PATCH] hwdb: update format description and document reloading + +https://bugs.freedesktop.org/show_bug.cgi?id=82311 +--- + hwdb/60-keyboard.hwdb | 32 +++++++++++++++++++++++--------- + 1 file changed, 23 insertions(+), 9 deletions(-) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index 5c3d4ca..ef0ebc5 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -28,19 +28,33 @@ + # driver, is the firmware-provided string exported + # by the kernel DMI modalias. + # +-# Scan codes are specified as: +-# KEYBOARD_KEY_= +-# The scan code should be expressed in hex lowercase and in +-# full bytes, a multiple of 2 digits. The key codes are retrieved +-# and normalized from the kernel input API header. ++# Scan codes are specified as: ++# KEYBOARD_KEY_= ++# The scan code should be expressed in hex lowercase. The key codes ++# are retrieved and normalized from the kernel input API header. + # +-# A '!' as the first charcter of the key identifier string +-# will add the scan code to the AT keyboard's list of scan codes +-# where the driver will synthesize a release event and not expect +-# it to be generated by the hardware. ++# An '!' as the first character of the key identifier string ++# will add the scan code to the AT keyboard's list of scan codes ++# where the driver will synthesize a release event and not expect ++# it to be generated by the hardware. + # + # To debug key presses and access scan code mapping data of + # an input device use the commonly available tool: evtest(1). ++# ++# To update this file, create a new file ++# /etc/udev/hwdb.d/70-keyboad.hwdb ++# and add your rules there. To load the new rules execute (as root): ++# udevadm hwdb --update ++# udevadm trigger /dev/input/eventXX ++# where /dev/input/eventXX is the keyboard in question. If in ++# doubt, simply use /dev/input/event* to reload all input rules. ++# ++# If your changes are generally applicable, open a bug report on ++# http://bugs.freedesktop.org/enter_bug.cgi?product=systemd ++# and include your new rules, a description of the device, and the ++# output of ++# udevadm info /dev/input/eventXX ++# (or /dev/input/event*). + + ########################################## + # Acer +-- +1.7.9.2 + diff --git a/0004-hwdb-update.patch b/0004-hwdb-update.patch new file mode 100644 index 00000000..572bcd32 --- /dev/null +++ b/0004-hwdb-update.patch @@ -0,0 +1,3964 @@ +From 61fb23db45c626d92b4e33f09b9287f58a3625a5 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Mon, 5 May 2014 14:23:10 +0200 +Subject: [PATCH] hwdb: update + +--- + hwdb/20-OUI.hwdb | 295 +++++++++++- + hwdb/20-pci-vendor-model.hwdb | 174 ++++++-- + hwdb/20-usb-vendor-model.hwdb | 992 +++++++++++++++++++++++++++++++++++++++-- + 3 files changed, 1368 insertions(+), 93 deletions(-) + +diff --git hwdb/20-OUI.hwdb hwdb/20-OUI.hwdb +index 17794ed..afc0d90 100644 +--- hwdb/20-OUI.hwdb ++++ hwdb/20-OUI.hwdb +@@ -13940,7 +13940,7 @@ OUI:000063* + ID_OUI_FROM_DATABASE=BARCO CONTROL ROOMS GMBH + + OUI:000064* +- ID_OUI_FROM_DATABASE=YOKOGAWA DIGITAL COMPUTER CORP ++ ID_OUI_FROM_DATABASE=Yokogawa Electric Corporation + + OUI:000065* + ID_OUI_FROM_DATABASE=Network General Corporation +@@ -14927,7 +14927,7 @@ OUI:0001AE* + ID_OUI_FROM_DATABASE=Trex Enterprises + + OUI:0001AF* +- ID_OUI_FROM_DATABASE=Emerson Network Power ++ ID_OUI_FROM_DATABASE=Artesyn Embedded Technologies + + OUI:0001B0* + ID_OUI_FROM_DATABASE=Fulltek Technology Co., Ltd. +@@ -18272,7 +18272,7 @@ OUI:00060A* + ID_OUI_FROM_DATABASE=Blue2space + + OUI:00060B* +- ID_OUI_FROM_DATABASE=Emerson Network Power ++ ID_OUI_FROM_DATABASE=Artesyn Embedded Technologies + + OUI:00060C* + ID_OUI_FROM_DATABASE=Melco Industries, Inc. +@@ -20441,7 +20441,7 @@ OUI:0008F8* + ID_OUI_FROM_DATABASE=UTC CCS + + OUI:0008F9* +- ID_OUI_FROM_DATABASE=Emerson Network Power ++ ID_OUI_FROM_DATABASE=Artesyn Embedded Technologies + + OUI:0008FA* + ID_OUI_FROM_DATABASE=Karl E.Brinkmann GmbH +@@ -46612,6 +46612,9 @@ OUI:0064A6* + OUI:00664B* + ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd + ++OUI:006B8E* ++ ID_OUI_FROM_DATABASE=Shanghai Feixun Communication Co.,Ltd. ++ + OUI:006B9E* + ID_OUI_FROM_DATABASE=VIZIO Inc + +@@ -46850,7 +46853,7 @@ OUI:008041* + ID_OUI_FROM_DATABASE=VEB KOMBINAT ROBOTRON + + OUI:008042* +- ID_OUI_FROM_DATABASE=Emerson Network Power ++ ID_OUI_FROM_DATABASE=Artesyn Embedded Technologies + + OUI:008043* + ID_OUI_FROM_DATABASE=NETWORLD, INC. +@@ -49919,7 +49922,7 @@ OUI:00C0F8* + ID_OUI_FROM_DATABASE=ABOUT COMPUTING INC. + + OUI:00C0F9* +- ID_OUI_FROM_DATABASE=Emerson Network Power ++ ID_OUI_FROM_DATABASE=Artesyn Embedded Technologies + + OUI:00C0FA* + ID_OUI_FROM_DATABASE=CANARY COMMUNICATIONS, INC. +@@ -50957,7 +50960,7 @@ OUI:00E034* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + + OUI:00E035* +- ID_OUI_FROM_DATABASE=Emerson Network Power ++ ID_OUI_FROM_DATABASE=Artesyn Embedded Technologies + + OUI:00E036* + ID_OUI_FROM_DATABASE=PIONEER CORPORATION +@@ -52477,6 +52480,9 @@ OUI:0838A5* + OUI:083AB8* + ID_OUI_FROM_DATABASE=Shinoda Plasma Co., Ltd. + ++OUI:083D88* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:083E0C* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + +@@ -52495,9 +52501,6 @@ OUI:084027* + OUI:08482C* + ID_OUI_FROM_DATABASE=Raycore Taiwan Co., LTD. + +-OUI:084929* +- ID_OUI_FROM_DATABASE=CYBATI +- + OUI:084E1C* + ID_OUI_FROM_DATABASE=H2A Systems, LLC + +@@ -52867,6 +52870,9 @@ OUI:0C8910* + OUI:0C8BFD* + ID_OUI_FROM_DATABASE=Intel Corporate + ++OUI:0C8C8F* ++ ID_OUI_FROM_DATABASE=Kamo Technology Limited ++ + OUI:0C8CDC* + ID_OUI_FROM_DATABASE=Suunto Oy + +@@ -53515,6 +53521,9 @@ OUI:1499E2* + OUI:149FE8* + ID_OUI_FROM_DATABASE=Lenovo Mobile Communication Technology Ltd. + ++OUI:14A364* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:14A62C* + ID_OUI_FROM_DATABASE=S.M. Dezac S.A. + +@@ -54403,6 +54412,9 @@ OUI:20918A* + OUI:2091D9* + ID_OUI_FROM_DATABASE=I'M SPA + ++OUI:20934D* ++ ID_OUI_FROM_DATABASE=Fujian Star-net Communication Co., Ltd ++ + OUI:209AE9* + ID_OUI_FROM_DATABASE=Volacomm Co., Ltd + +@@ -54598,6 +54610,9 @@ OUI:24470E* + OUI:24497B* + ID_OUI_FROM_DATABASE=Innovative Converged Devices Inc + ++OUI:244F1D* ++ ID_OUI_FROM_DATABASE=iRule LLC ++ + OUI:245FDF* + ID_OUI_FROM_DATABASE=KYOCERA Corporation + +@@ -54751,6 +54766,9 @@ OUI:24DEC6* + OUI:24E271* + ID_OUI_FROM_DATABASE=Qingdao Hisense Communications Co.,Ltd + ++OUI:24E314* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:24E6BA* + ID_OUI_FROM_DATABASE=JSC Zavod im. Kozitsky + +@@ -54829,6 +54847,9 @@ OUI:2826A6* + OUI:28285D* + ID_OUI_FROM_DATABASE=ZyXEL Communications Corporation + ++OUI:2829CC* ++ ID_OUI_FROM_DATABASE=Corsa Technology Incorporated ++ + OUI:2829D9* + ID_OUI_FROM_DATABASE=GlobalBeiMing technology (Beijing)Co. Ltd + +@@ -55087,12 +55108,18 @@ OUI:28E14C* + OUI:28E297* + ID_OUI_FROM_DATABASE=Shanghai InfoTM Microelectronics Co.,Ltd. + ++OUI:28E31F* ++ ID_OUI_FROM_DATABASE=Xiaomi inc. ++ + OUI:28E347* + ID_OUI_FROM_DATABASE=Liteon Technology Corporation + + OUI:28E608* + ID_OUI_FROM_DATABASE=Tokheim + ++OUI:28E6E9* ++ ID_OUI_FROM_DATABASE=SIS Sat Internet Services GmbH ++ + OUI:28E794* + ID_OUI_FROM_DATABASE=Microtime Computer Inc. + +@@ -55225,6 +55252,9 @@ OUI:2C534A* + OUI:2C542D* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + ++OUI:2C54CF* ++ ID_OUI_FROM_DATABASE=LG Electronics ++ + OUI:2C553C* + ID_OUI_FROM_DATABASE=Gainspeed, Inc. + +@@ -55330,6 +55360,9 @@ OUI:2CA835* + OUI:2CAB25* + ID_OUI_FROM_DATABASE=Shenzhen Gongjin Electronics Co.,Ltd + ++OUI:2CABA4* ++ ID_OUI_FROM_DATABASE=Cisco SPVTG ++ + OUI:2CB05D* + ID_OUI_FROM_DATABASE=NETGEAR + +@@ -55456,6 +55489,9 @@ OUI:303294* + OUI:3032D4* + ID_OUI_FROM_DATABASE=Hanilstm Co., Ltd. + ++OUI:303335* ++ ID_OUI_FROM_DATABASE=Boosty ++ + OUI:3037A6* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -55888,6 +55924,9 @@ OUI:34BA9A* + OUI:34BB1F* + ID_OUI_FROM_DATABASE=Research In Motion + ++OUI:34BB26* ++ ID_OUI_FROM_DATABASE=Motorola Mobility LLC ++ + OUI:34BCA6* + ID_OUI_FROM_DATABASE=Beijing Ding Qing Technology, Ltd. + +@@ -55975,6 +56014,9 @@ OUI:34EF44* + OUI:34EF8B* + ID_OUI_FROM_DATABASE=NTT Communications Corporation + ++OUI:34F0CA* ++ ID_OUI_FROM_DATABASE=Shenzhen Linghangyuan Digital Technology Co.,Ltd. ++ + OUI:34F39B* + ID_OUI_FROM_DATABASE=WizLAN Ltd. + +@@ -56023,6 +56065,9 @@ OUI:381766* + OUI:38192F* + ID_OUI_FROM_DATABASE=Nokia Corporation + ++OUI:381C1A* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:381C4A* + ID_OUI_FROM_DATABASE=SIMCom Wireless Solutions Co.,Ltd. + +@@ -56236,6 +56281,9 @@ OUI:38F597* + OUI:38F708* + ID_OUI_FROM_DATABASE=National Resource Management, Inc. + ++OUI:38F889* ++ ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd ++ + OUI:38F8B7* + ID_OUI_FROM_DATABASE=V2COM PARTICIPACOES S.A. + +@@ -56287,6 +56335,9 @@ OUI:3C15C2* + OUI:3C15EA* + ID_OUI_FROM_DATABASE=TESCOM CO., LTD. + ++OUI:3C189F* ++ ID_OUI_FROM_DATABASE=Nokia Corporation ++ + OUI:3C18A0* + ID_OUI_FROM_DATABASE=Luxshare Precision Industry Co.,Ltd. + +@@ -56521,6 +56572,9 @@ OUI:3CD7DA* + OUI:3CD92B* + ID_OUI_FROM_DATABASE=Hewlett-Packard Company + ++OUI:3CD9CE* ++ ID_OUI_FROM_DATABASE=Eclipse WiFi ++ + OUI:3CDF1E* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -56725,6 +56779,9 @@ OUI:407A80* + OUI:407B1B* + ID_OUI_FROM_DATABASE=Mettle Networks Inc. + ++OUI:408256* ++ ID_OUI_FROM_DATABASE=Continental Automotive GmbH ++ + OUI:4083DE* + ID_OUI_FROM_DATABASE=Motorola + +@@ -56818,6 +56875,9 @@ OUI:40C245* + OUI:40C4D6* + ID_OUI_FROM_DATABASE=ChongQing Camyu Technology Development Co.,Ltd. + ++OUI:40C62A* ++ ID_OUI_FROM_DATABASE=Shanghai Jing Ren Electronic Technology Co., Ltd. ++ + OUI:40C7C9* + ID_OUI_FROM_DATABASE=Naviit Inc. + +@@ -57001,6 +57061,9 @@ OUI:446132* + OUI:44619C* + ID_OUI_FROM_DATABASE=FONsystem co. ltd. + ++OUI:44666E* ++ ID_OUI_FROM_DATABASE=IP-LINE ++ + OUI:446755* + ID_OUI_FROM_DATABASE=Orbit Irrigation + +@@ -57019,6 +57082,9 @@ OUI:44700B* + OUI:447098* + ID_OUI_FROM_DATABASE=MING HONG TECHNOLOGY (SHEN ZHEN) LIMITED + ++OUI:44746C* ++ ID_OUI_FROM_DATABASE=Sony Mobile Communications AB ++ + OUI:447BC4* + ID_OUI_FROM_DATABASE=DualShine Technology(SZ)Co.,Ltd + +@@ -57079,6 +57145,9 @@ OUI:44A42D* + OUI:44A689* + ID_OUI_FROM_DATABASE=PROMAX ELECTRONICA SA + ++OUI:44A6E5* ++ ID_OUI_FROM_DATABASE=THINKING TECHNOLOGY CO.,LTD ++ + OUI:44A7CF* + ID_OUI_FROM_DATABASE=Murata Manufacturing Co., Ltd. + +@@ -57178,6 +57247,9 @@ OUI:48022A* + OUI:480362* + ID_OUI_FROM_DATABASE=DESAY ELECTRONICS(HUIZHOU)CO.,LTD + ++OUI:480C49* ++ ID_OUI_FROM_DATABASE=NAKAYO TELECOMMUNICATIONS,INC ++ + OUI:481249* + ID_OUI_FROM_DATABASE=Luxcom Technologies Inc. + +@@ -57463,6 +57535,9 @@ OUI:4C2258* + OUI:4C2578* + ID_OUI_FROM_DATABASE=Nokia Corporation + ++OUI:4C26E7* ++ ID_OUI_FROM_DATABASE=Welgate Co., Ltd. ++ + OUI:4C2C80* + ID_OUI_FROM_DATABASE=Beijing Skyway Technologies Co.,Ltd + +@@ -57535,6 +57610,9 @@ OUI:4C63EB* + OUI:4C64D9* + ID_OUI_FROM_DATABASE=Guangdong Leawin Group Co., Ltd + ++OUI:4C6E6E* ++ ID_OUI_FROM_DATABASE=Comnect Technology CO.,LTD ++ + OUI:4C72B9* + ID_OUI_FROM_DATABASE=Pegatron Corporation + +@@ -57565,6 +57643,9 @@ OUI:4C8093* + OUI:4C82CF* + ID_OUI_FROM_DATABASE=Echostar Technologies + ++OUI:4C83DE* ++ ID_OUI_FROM_DATABASE=Cisco SPVTG ++ + OUI:4C8B30* + ID_OUI_FROM_DATABASE=Actiontec Electronics, Inc + +@@ -57592,6 +57673,9 @@ OUI:4C9E80* + OUI:4C9EE4* + ID_OUI_FROM_DATABASE=Hanyang Navicom Co.,Ltd. + ++OUI:4C9EFF* ++ ID_OUI_FROM_DATABASE=ZyXEL Communications Corp ++ + OUI:4CA56D* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -57775,6 +57859,9 @@ OUI:504A6E* + OUI:504F94* + ID_OUI_FROM_DATABASE=Loxone Electronics GmbH + ++OUI:505065* ++ ID_OUI_FROM_DATABASE=TAKT Corporation ++ + OUI:505663* + ID_OUI_FROM_DATABASE=Texas Instruments + +@@ -57808,6 +57895,9 @@ OUI:506313* + OUI:506441* + ID_OUI_FROM_DATABASE=Greenlee + ++OUI:506787* ++ ID_OUI_FROM_DATABASE=iTellus ++ + OUI:5067F0* + ID_OUI_FROM_DATABASE=ZyXEL Communications Corporation + +@@ -58693,6 +58783,12 @@ OUI:5CAC4C* + OUI:5CB524* + ID_OUI_FROM_DATABASE=Sony Ericsson Mobile Communications AB + ++OUI:5CB6CC* ++ ID_OUI_FROM_DATABASE=NovaComm Technologies Inc. ++ ++OUI:5CB8CB* ++ ID_OUI_FROM_DATABASE=Allis Communications ++ + OUI:5CBD9E* + ID_OUI_FROM_DATABASE=HONGKONG MIRACLE EAGLE TECHNOLOGY(GROUP) LIMITED + +@@ -58789,6 +58885,9 @@ OUI:5CF8A1* + OUI:5CF938* + ID_OUI_FROM_DATABASE=Apple, Inc + ++OUI:5CF96A* ++ ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd ++ + OUI:5CF9DD* + ID_OUI_FROM_DATABASE=Dell Inc + +@@ -58927,6 +59026,9 @@ OUI:60748D* + OUI:607688* + ID_OUI_FROM_DATABASE=Velodyne + ++OUI:6077E2* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:60812B* + ID_OUI_FROM_DATABASE=Custom Control Concepts + +@@ -59074,6 +59176,9 @@ OUI:60E00E* + OUI:60E327* + ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. + ++OUI:60E701* ++ ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd ++ + OUI:60E956* + ID_OUI_FROM_DATABASE=Ayla Networks, Inc + +@@ -59131,6 +59236,9 @@ OUI:6405BE* + OUI:64094C* + ID_OUI_FROM_DATABASE=Beijing Superbee Wireless Technology Co.,Ltd + ++OUI:640980* ++ ID_OUI_FROM_DATABASE=XIAOMI Electronics,CO.,LTD ++ + OUI:640B4A* + ID_OUI_FROM_DATABASE=Digital Telecom Technology Limited + +@@ -59254,6 +59362,9 @@ OUI:645FFF* + OUI:646223* + ID_OUI_FROM_DATABASE=Cellient Co., Ltd. + ++OUI:64649B* ++ ID_OUI_FROM_DATABASE=juniper networks ++ + OUI:6465C0* + ID_OUI_FROM_DATABASE=Nuvon, Inc + +@@ -59680,6 +59791,9 @@ OUI:689C5E* + OUI:689C70* + ID_OUI_FROM_DATABASE=Apple + ++OUI:68A0F6* ++ ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd ++ + OUI:68A1B7* + ID_OUI_FROM_DATABASE=Honghao Mingchuan Technology (Beijing) CO.,Ltd. + +@@ -60130,6 +60244,9 @@ OUI:702B1D* + OUI:702C1F* + ID_OUI_FROM_DATABASE=Wisol + ++OUI:702DD1* ++ ID_OUI_FROM_DATABASE=Newings Communication CO., LTD. ++ + OUI:702F4B* + ID_OUI_FROM_DATABASE=PolyVision Inc. + +@@ -60211,6 +60328,9 @@ OUI:705986* + OUI:705AB6* + ID_OUI_FROM_DATABASE=COMPAL INFORMATION (KUNSHAN) CO., LTD. + ++OUI:705B2E* ++ ID_OUI_FROM_DATABASE=M2Communication Inc. ++ + OUI:705CAD* + ID_OUI_FROM_DATABASE=Konami Gaming Inc + +@@ -60568,6 +60688,9 @@ OUI:748EF8* + OUI:748F1B* + ID_OUI_FROM_DATABASE=MasterImage 3D + ++OUI:748F4D* ++ ID_OUI_FROM_DATABASE=MEN Mikro Elektronik GmbH ++ + OUI:749050* + ID_OUI_FROM_DATABASE=Renesas Electronics Corporation + +@@ -60694,6 +60817,9 @@ OUI:74F07D* + OUI:74F102* + ID_OUI_FROM_DATABASE=Beijing HCHCOM Technology Co., Ltd + ++OUI:74F413* ++ ID_OUI_FROM_DATABASE=Maxwell Forest ++ + OUI:74F612* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + +@@ -61582,6 +61708,9 @@ OUI:806CBC* + OUI:80711F* + ID_OUI_FROM_DATABASE=Juniper Networks + ++OUI:80717A* ++ ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd ++ + OUI:807693* + ID_OUI_FROM_DATABASE=Newag SA + +@@ -61633,6 +61762,9 @@ OUI:80946C* + OUI:8096B1* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + ++OUI:8096CA* ++ ID_OUI_FROM_DATABASE=Hon Hai Precision Ind Co.,Ltd ++ + OUI:80971B* + ID_OUI_FROM_DATABASE=Altenergy Power System,Inc. + +@@ -61699,6 +61831,9 @@ OUI:80D019* + OUI:80D18B* + ID_OUI_FROM_DATABASE=Hangzhou I'converge Technology Co.,Ltd + ++OUI:80D21D* ++ ID_OUI_FROM_DATABASE=AzureWave Technologies, Inc ++ + OUI:80D433* + ID_OUI_FROM_DATABASE=LzLabs GmbH + +@@ -62356,6 +62491,9 @@ OUI:8C2F39* + OUI:8C3330* + ID_OUI_FROM_DATABASE=EmFirst Co., Ltd. + ++OUI:8C3357* ++ ID_OUI_FROM_DATABASE=HiteVision Digital Media Technology Co.,Ltd. ++ + OUI:8C3AE3* + ID_OUI_FROM_DATABASE=LG Electronics + +@@ -62842,6 +62980,9 @@ OUI:90B134* + OUI:90B21F* + ID_OUI_FROM_DATABASE=Apple + ++OUI:90B686* ++ ID_OUI_FROM_DATABASE=Murata Manufacturing Co., Ltd. ++ + OUI:90B8D0* + ID_OUI_FROM_DATABASE=Joyent, Inc. + +@@ -62887,6 +63028,9 @@ OUI:90D92C* + OUI:90DA4E* + ID_OUI_FROM_DATABASE=AVANU + ++OUI:90DA6A* ++ ID_OUI_FROM_DATABASE=MCC System Co., Ltd. ++ + OUI:90DB46* + ID_OUI_FROM_DATABASE=E-LEAD ELECTRONIC CO., LTD + +@@ -63100,6 +63244,9 @@ OUI:94ACCA* + OUI:94AE61* + ID_OUI_FROM_DATABASE=Alcatel Lucent + ++OUI:94AEE3* ++ ID_OUI_FROM_DATABASE=Belden Hirschmann Industries (Suzhou) Ltd. ++ + OUI:94B8C5* + ID_OUI_FROM_DATABASE=RuggedCom Inc. + +@@ -63151,6 +63298,9 @@ OUI:94CE2C* + OUI:94D019* + ID_OUI_FROM_DATABASE=Cydle Corp. + ++OUI:94D60E* ++ ID_OUI_FROM_DATABASE=shenzhen yunmao information technologies co., ltd ++ + OUI:94D723* + ID_OUI_FROM_DATABASE=Shanghai DareGlobal Technologies Co., Ltd + +@@ -63730,6 +63880,9 @@ OUI:9CC077* + OUI:9CC0D2* + ID_OUI_FROM_DATABASE=Conductix-Wampfler AG + ++OUI:9CC172* ++ ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd ++ + OUI:9CC7A6* + ID_OUI_FROM_DATABASE=AVM GmbH + +@@ -63799,6 +63952,9 @@ OUI:A002DC* + OUI:A00363* + ID_OUI_FROM_DATABASE=Robert Bosch Healthcare GmbH + ++OUI:A00627* ++ ID_OUI_FROM_DATABASE=NEXPA System ++ + OUI:A00798* + ID_OUI_FROM_DATABASE=Samsung Electronics + +@@ -63898,6 +64054,9 @@ OUI:A051C6* + OUI:A055DE* + ID_OUI_FROM_DATABASE=Pace plc + ++OUI:A056B2* ++ ID_OUI_FROM_DATABASE=Harman/Becker Automotive Systems GmbH ++ + OUI:A0593A* + ID_OUI_FROM_DATABASE=V.D.S. Video Display Systems srl + +@@ -64234,6 +64393,9 @@ OUI:A45C27* + OUI:A45D36* + ID_OUI_FROM_DATABASE=Hewlett Packard + ++OUI:A45DA1* ++ ID_OUI_FROM_DATABASE=ADB Broadband Italia ++ + OUI:A46032* + ID_OUI_FROM_DATABASE=MRV Communications (Networks) LTD + +@@ -64312,6 +64474,9 @@ OUI:A49F89* + OUI:A4A24A* + ID_OUI_FROM_DATABASE=Cisco SPVTG + ++OUI:A4A4D3* ++ ID_OUI_FROM_DATABASE=Bluebank Communication Technology Co.Ltd ++ + OUI:A4A80F* + ID_OUI_FROM_DATABASE=Shenzhen Coship Electronics Co., Ltd. + +@@ -64462,6 +64627,9 @@ OUI:A80600* + OUI:A80C0D* + ID_OUI_FROM_DATABASE=Cisco + ++OUI:A81374* ++ ID_OUI_FROM_DATABASE=Panasonic Corporation AVC Networks Company ++ + OUI:A8154D* + ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. + +@@ -64495,6 +64663,9 @@ OUI:A82BD6* + OUI:A830AD* + ID_OUI_FROM_DATABASE=Wei Fang Goertek Electronics Co.,Ltd + ++OUI:A8329A* ++ ID_OUI_FROM_DATABASE=Digicom Futuristic Technologies Ltd. ++ + OUI:A83944* + ID_OUI_FROM_DATABASE=Actiontec Electronics, Inc + +@@ -64582,6 +64753,9 @@ OUI:A88CEE* + OUI:A88D7B* + ID_OUI_FROM_DATABASE=SunDroid Global limited. + ++OUI:A88E24* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:A8922C* + ID_OUI_FROM_DATABASE=LG Electronics + +@@ -64903,6 +65077,9 @@ OUI:AC9CE4* + OUI:ACA016* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + ++OUI:ACA213* ++ ID_OUI_FROM_DATABASE=Shenzhen Bilian electronic CO.,LTD ++ + OUI:ACA22C* + ID_OUI_FROM_DATABASE=Baycity Technologies Ltd + +@@ -65068,6 +65245,9 @@ OUI:B01B7C* + OUI:B01C91* + ID_OUI_FROM_DATABASE=Elim Co + ++OUI:B01F81* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ + OUI:B024F3* + ID_OUI_FROM_DATABASE=Progeny Systems + +@@ -65113,6 +65293,9 @@ OUI:B058C4* + OUI:B05B1F* + ID_OUI_FROM_DATABASE=THERMO FISHER SCIENTIFIC S.P.A. + ++OUI:B05B67* ++ ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd ++ + OUI:B05CE5* + ID_OUI_FROM_DATABASE=Nokia Corporation + +@@ -65338,6 +65521,9 @@ OUI:B407F9* + OUI:B40832* + ID_OUI_FROM_DATABASE=TC Communications + ++OUI:B40AC6* ++ ID_OUI_FROM_DATABASE=DEXON Systems Ltd. ++ + OUI:B40B44* + ID_OUI_FROM_DATABASE=Smartisan Technology Co., Ltd. + +@@ -65533,6 +65719,9 @@ OUI:B4AA4D* + OUI:B4AB2C* + ID_OUI_FROM_DATABASE=MtM Technology Corporation + ++OUI:B4AE6F* ++ ID_OUI_FROM_DATABASE=Circle Reliance, Inc. ++ + OUI:B4B017* + ID_OUI_FROM_DATABASE=Avaya, Inc + +@@ -65566,6 +65755,9 @@ OUI:B4C810* + OUI:B4CCE9* + ID_OUI_FROM_DATABASE=PROSYST + ++OUI:B4CEF6* ++ ID_OUI_FROM_DATABASE=HTC Corporation ++ + OUI:B4CFDB* + ID_OUI_FROM_DATABASE=Shenzhen Jiuzhou Electric Co.,LTD + +@@ -65812,6 +66004,9 @@ OUI:B898B0* + OUI:B898F7* + ID_OUI_FROM_DATABASE=Gionee Communication Equipment Co,Ltd.ShenZhen + ++OUI:B89919* ++ ID_OUI_FROM_DATABASE=7signal Solutions, Inc ++ + OUI:B89AED* + ID_OUI_FROM_DATABASE=OceanServer Technology, Inc + +@@ -66160,6 +66355,9 @@ OUI:BC9889* + OUI:BC99BC* + ID_OUI_FROM_DATABASE=FonSee Technology Inc. + ++OUI:BC9CC5* ++ ID_OUI_FROM_DATABASE=Beijing Huafei Technology Co., Ltd. ++ + OUI:BC9DA5* + ID_OUI_FROM_DATABASE=DASCOM Europe GmbH + +@@ -66511,6 +66709,9 @@ OUI:C0EAE4* + OUI:C0F1C4* + ID_OUI_FROM_DATABASE=Pacidal Corporation Ltd. + ++OUI:C0F2FB* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:C0F79D* + ID_OUI_FROM_DATABASE=Powercode + +@@ -66613,6 +66814,9 @@ OUI:C43C3C* + OUI:C43DC7* + ID_OUI_FROM_DATABASE=NETGEAR + ++OUI:C44202* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:C4438F* + ID_OUI_FROM_DATABASE=LG Electronics + +@@ -66634,6 +66838,9 @@ OUI:C44AD0* + OUI:C44B44* + ID_OUI_FROM_DATABASE=Omniprint Inc. + ++OUI:C44BD1* ++ ID_OUI_FROM_DATABASE=Wallys Communications Teachnologies Co.,Ltd. ++ + OUI:C44E1F* + ID_OUI_FROM_DATABASE=BlueN + +@@ -66835,6 +67042,9 @@ OUI:C4F57C* + OUI:C4FCE4* + ID_OUI_FROM_DATABASE=DishTV NZ Ltd + ++OUI:C80210* ++ ID_OUI_FROM_DATABASE=LG Innotek ++ + OUI:C80258* + ID_OUI_FROM_DATABASE=ITW GSE ApS + +@@ -67363,6 +67573,9 @@ OUI:CC9F35* + OUI:CCA0E5* + ID_OUI_FROM_DATABASE=DZG Metering GmbH + ++OUI:CCA223* ++ ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd ++ + OUI:CCA374* + ID_OUI_FROM_DATABASE=Guangdong Guanglian Electronic Technology Co.Ltd + +@@ -67498,6 +67711,9 @@ OUI:CCFE3C* + OUI:D00790* + ID_OUI_FROM_DATABASE=Texas Instruments + ++OUI:D00AAB* ++ ID_OUI_FROM_DATABASE=Yokogawa Digital Computer Corporation ++ + OUI:D00EA4* + ID_OUI_FROM_DATABASE=Porsche Cars North America + +@@ -67576,6 +67792,9 @@ OUI:D05875* + OUI:D059C3* + ID_OUI_FROM_DATABASE=CeraMicro Technology Corporation + ++OUI:D059E4* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:D05A0F* + ID_OUI_FROM_DATABASE=I-BT DIGITAL CO.,LTD + +@@ -68248,6 +68467,9 @@ OUI:D86595* + OUI:D866C6* + ID_OUI_FROM_DATABASE=Shenzhen Daystar Technology Co.,ltd + ++OUI:D866EE* ++ ID_OUI_FROM_DATABASE=BOXIN COMMUNICATION CO.,LTD. ++ + OUI:D867D9* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -68542,6 +68764,9 @@ OUI:DC49C9* + OUI:DC4EDE* + ID_OUI_FROM_DATABASE=SHINYEI TECHNOLOGY CO., LTD. + ++OUI:DC537C* ++ ID_OUI_FROM_DATABASE=Compal Broadband Networks, Inc. ++ + OUI:DC5726* + ID_OUI_FROM_DATABASE=Power-One + +@@ -69112,6 +69337,9 @@ OUI:E45614* + OUI:E457A8* + ID_OUI_FROM_DATABASE=Stuart Manufacturing, Inc. + ++OUI:E45D52* ++ ID_OUI_FROM_DATABASE=Avaya, Inc ++ + OUI:E46449* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + +@@ -69298,6 +69526,9 @@ OUI:E81132* + OUI:E81324* + ID_OUI_FROM_DATABASE=GuangZhou Bonsoninfo System CO.,LTD + ++OUI:E8150E* ++ ID_OUI_FROM_DATABASE=Nokia Corporation ++ + OUI:E817FC* + ID_OUI_FROM_DATABASE=NIFTY Corporation + +@@ -69373,6 +69604,9 @@ OUI:E85B5B* + OUI:E85BF0* + ID_OUI_FROM_DATABASE=Imaging Diagnostics + ++OUI:E85D6B* ++ ID_OUI_FROM_DATABASE=Luminate Wireless ++ + OUI:E85E53* + ID_OUI_FROM_DATABASE=Infratec Datentechnik GmbH + +@@ -69409,6 +69643,9 @@ OUI:E878A1* + OUI:E87AF3* + ID_OUI_FROM_DATABASE=S5 Tech S.r.l. + ++OUI:E8802E* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:E880D8* + ID_OUI_FROM_DATABASE=GNTEK Electronics Co.,Ltd. + +@@ -69719,7 +69956,7 @@ OUI:EC9B5B* + ID_OUI_FROM_DATABASE=Nokia Corporation + + OUI:EC9ECD* +- ID_OUI_FROM_DATABASE=Emerson Network Power and Embedded Computing ++ ID_OUI_FROM_DATABASE=Artesyn Embedded Technologies + + OUI:ECA29B* + ID_OUI_FROM_DATABASE=Kemppi Oy +@@ -69745,6 +69982,9 @@ OUI:ECC38A* + OUI:ECC882* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + ++OUI:ECCB30* ++ ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd ++ + OUI:ECCD6D* + ID_OUI_FROM_DATABASE=Allied Telesis, Inc. + +@@ -69763,6 +70003,9 @@ OUI:ECD925* + OUI:ECD950* + ID_OUI_FROM_DATABASE=IRT SA + ++OUI:ECD9D1* ++ ID_OUI_FROM_DATABASE=Shenzhen TG-NET Botone Technology Co.,Ltd. ++ + OUI:ECDE3D* + ID_OUI_FROM_DATABASE=Lamprey Networks, Inc. + +@@ -70144,6 +70387,12 @@ OUI:F406A5* + OUI:F40B93* + ID_OUI_FROM_DATABASE=Research In Motion + ++OUI:F40E11* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ ++OUI:F40F1B* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:F40F9B* + ID_OUI_FROM_DATABASE=WAVELINK + +@@ -70165,6 +70414,9 @@ OUI:F41FC2* + OUI:F42012* + ID_OUI_FROM_DATABASE=Cuciniale GmbH + ++OUI:F42833* ++ ID_OUI_FROM_DATABASE=MMPC Inc. ++ + OUI:F42896* + ID_OUI_FROM_DATABASE=SPECTO PAINEIS ELETRONICOS LTDA + +@@ -70294,6 +70546,9 @@ OUI:F499AC* + OUI:F49F54* + ID_OUI_FROM_DATABASE=Samsung Electronics + ++OUI:F49FF3* ++ ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd ++ + OUI:F4A294* + ID_OUI_FROM_DATABASE=EAGLE WORLD DEVELOPMENT CO., LIMITED + +@@ -70351,6 +70606,9 @@ OUI:F4CE46* + OUI:F4CFE2* + ID_OUI_FROM_DATABASE=Cisco + ++OUI:F4D032* ++ ID_OUI_FROM_DATABASE=Yunnan Ideal Information&Technology.,Ltd ++ + OUI:F4D261* + ID_OUI_FROM_DATABASE=SEMOCON Co., Ltd + +@@ -70390,12 +70648,18 @@ OUI:F4F5A5* + OUI:F4F5E8* + ID_OUI_FROM_DATABASE=Google + ++OUI:F4F646* ++ ID_OUI_FROM_DATABASE=Dediprog Technology Co. Ltd. ++ + OUI:F4F951* + ID_OUI_FROM_DATABASE=Apple + + OUI:F4FC32* + ID_OUI_FROM_DATABASE=Texas Instruments + ++OUI:F4FD2B* ++ ID_OUI_FROM_DATABASE=ZOYI Company ++ + OUI:F80113* + ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd + +@@ -70798,6 +71062,9 @@ OUI:FC1607* + OUI:FC1794* + ID_OUI_FROM_DATABASE=InterCreative Co., Ltd + ++OUI:FC1910* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:FC19D0* + ID_OUI_FROM_DATABASE=Cloud Vision Networks Technology Co.,Ltd. + +@@ -70906,6 +71173,9 @@ OUI:FC7516* + OUI:FC75E6* + ID_OUI_FROM_DATABASE=Handreamnet + ++OUI:FC790B* ++ ID_OUI_FROM_DATABASE=Hitachi High Technologies America, Inc. ++ + OUI:FC7CE7* + ID_OUI_FROM_DATABASE=FCI USA LLC + +@@ -70948,6 +71218,9 @@ OUI:FCA841* + OUI:FCA9B0* + ID_OUI_FROM_DATABASE=MIARTECH (SHANGHAI),INC. + ++OUI:FCAA14* ++ ID_OUI_FROM_DATABASE=GIGA-BYTE TECHNOLOGY CO.,LTD. ++ + OUI:FCAD0F* + ID_OUI_FROM_DATABASE=QTS NETWORKS + +diff --git hwdb/20-pci-vendor-model.hwdb hwdb/20-pci-vendor-model.hwdb +index 14637d3..2957774 100644 +--- hwdb/20-pci-vendor-model.hwdb ++++ hwdb/20-pci-vendor-model.hwdb +@@ -1673,6 +1673,9 @@ pci:v00001002d00001306* + pci:v00001002d00001307* + ID_MODEL_FROM_DATABASE=Kaveri + ++pci:v00001002d00001308* ++ ID_MODEL_FROM_DATABASE=Kaveri HDMI/DP Audio Controller ++ + pci:v00001002d00001309* + ID_MODEL_FROM_DATABASE=Kaveri [Radeon R7 Graphics] + +@@ -4268,6 +4271,9 @@ pci:v00001002d00006611sv00001B0Asd000090D3* + pci:v00001002d00006613* + ID_MODEL_FROM_DATABASE=Oland PRO [Radeon R7 240] + ++pci:v00001002d00006613sv00001682sd00007240* ++ ID_MODEL_FROM_DATABASE=Oland PRO [Radeon R7 240] (R7 240 2048 MB) ++ + pci:v00001002d00006620* + ID_MODEL_FROM_DATABASE=Mars + +@@ -6024,31 +6030,31 @@ pci:v00001002d00006819sv0000174Bsd0000E221* + ID_MODEL_FROM_DATABASE=Pitcairn PRO [Radeon HD 7850] (Radeon HD 7850 2GB GDDR5 DVI-I/DVI-D/HDMI/DP) + + pci:v00001002d00006820* +- ID_MODEL_FROM_DATABASE=Venus XTX [Radeon HD 8890M] ++ ID_MODEL_FROM_DATABASE=Venus XTX [Radeon HD 8890M / R9 M275X] + + pci:v00001002d00006820sv0000103Csd00001851* +- ID_MODEL_FROM_DATABASE=Venus XTX [Radeon HD 8890M] (Radeon HD 7750M) ++ ID_MODEL_FROM_DATABASE=Venus XTX [Radeon HD 8890M / R9 M275X] (Radeon HD 7750M) + + pci:v00001002d00006820sv000017AAsd00003801* +- ID_MODEL_FROM_DATABASE=Venus XTX [Radeon HD 8890M] (Radeon R9 M275) ++ ID_MODEL_FROM_DATABASE=Venus XTX [Radeon HD 8890M / R9 M275X] (Radeon R9 M275) + + pci:v00001002d00006821* +- ID_MODEL_FROM_DATABASE=Venus XT [Radeon HD 8870M] ++ ID_MODEL_FROM_DATABASE=Venus XT [Radeon HD 8870M / R9 M270X] + + pci:v00001002d00006821sv00001002sd0000031E* +- ID_MODEL_FROM_DATABASE=Venus XT [Radeon HD 8870M] (FirePro SX4000) ++ ID_MODEL_FROM_DATABASE=Venus XT [Radeon HD 8870M / R9 M270X] (FirePro SX4000) + + pci:v00001002d00006821sv00001028sd000005CC* +- ID_MODEL_FROM_DATABASE=Venus XT [Radeon HD 8870M] (FirePro M5100) ++ ID_MODEL_FROM_DATABASE=Venus XT [Radeon HD 8870M / R9 M270X] (FirePro M5100) + + pci:v00001002d00006821sv00001028sd000015CC* +- ID_MODEL_FROM_DATABASE=Venus XT [Radeon HD 8870M] (FirePro M5100) ++ ID_MODEL_FROM_DATABASE=Venus XT [Radeon HD 8870M / R9 M270X] (FirePro M5100) + + pci:v00001002d00006822* + ID_MODEL_FROM_DATABASE=Venus PRO [Radeon E8860] + + pci:v00001002d00006823* +- ID_MODEL_FROM_DATABASE=Venus PRO [Radeon HD 8850M] ++ ID_MODEL_FROM_DATABASE=Venus PRO [Radeon HD 8850M / R9 M265X] + + pci:v00001002d00006825* + ID_MODEL_FROM_DATABASE=Heathrow XT [Radeon HD 7870M] +@@ -7770,64 +7776,73 @@ pci:v00001002d000068F9sv000017AFsd00003014* + ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 5000/6000/7350/8350 Series] (Radeon HD 6350) + + pci:v00001002d000068FA* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] + + pci:v00001002d000068FAsv00001019sd00000019* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 7350) + + pci:v00001002d000068FAsv00001019sd00000021* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 7350) + + pci:v00001002d000068FAsv00001019sd00000022* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 7350) + + pci:v00001002d000068FAsv00001019sd00000026* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 8350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 8350) + + pci:v00001002d000068FAsv0000103Csd00002ADF* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350A) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 7350A) + + pci:v00001002d000068FAsv0000103Csd00002AE8* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350A) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 7350A) + + pci:v00001002d000068FAsv00001043sd00008350* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 8350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 8350) + + pci:v00001002d000068FAsv00001462sd00002128* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 7350) + + pci:v00001002d000068FAsv00001462sd00002184* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 7350) + + pci:v00001002d000068FAsv00001462sd00002186* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 7350) + + pci:v00001002d000068FAsv00001462sd00002495* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 7350) + + pci:v00001002d000068FAsv00001462sd0000B490* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 7350) + + pci:v00001002d000068FAsv00001642sd00003985* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 7350) ++ ++pci:v00001002d000068FAsv0000174Bsd00003510* ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 8350) ++ ++pci:v00001002d000068FAsv0000174Bsd00003521* ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon R5 220) ++ ++pci:v00001002d000068FAsv0000174Bsd00003522* ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon R5 220) + + pci:v00001002d000068FAsv0000174Bsd00007350* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 7350) + + pci:v00001002d000068FAsv0000174Bsd00008153* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 8350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 8350) + + pci:v00001002d000068FAsv0000174Bsd0000E127* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 7350) + + pci:v00001002d000068FAsv0000174Bsd0000E153* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 7350) + + pci:v00001002d000068FAsv0000174Bsd0000E180* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 7350) + + pci:v00001002d000068FAsv000017AFsd00003015* +- ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350] (Radeon HD 7350) ++ ID_MODEL_FROM_DATABASE=Cedar [Radeon HD 7350/8350 / R5 220] (Radeon HD 7350) + + pci:v00001002d000068FE* + ID_MODEL_FROM_DATABASE=Cedar LE +@@ -8886,7 +8901,7 @@ pci:v00001002d0000980A* + ID_MODEL_FROM_DATABASE=Wrestler [Radeon HD 7290] + + pci:v00001002d00009830* +- ID_MODEL_FROM_DATABASE=Kabini [Radeon HD 8400] ++ ID_MODEL_FROM_DATABASE=Kabini [Radeon HD 8400 / R3 Series] + + pci:v00001002d00009831* + ID_MODEL_FROM_DATABASE=Kabini [Radeon HD 8400E] +@@ -8904,13 +8919,13 @@ pci:v00001002d00009835* + ID_MODEL_FROM_DATABASE=Kabini [Radeon HD 8310E] + + pci:v00001002d00009836* +- ID_MODEL_FROM_DATABASE=Kabini [Radeon HD 8280] ++ ID_MODEL_FROM_DATABASE=Kabini [Radeon HD 8280 / R3 Series] + + pci:v00001002d00009837* + ID_MODEL_FROM_DATABASE=Kabini [Radeon HD 8280E] + + pci:v00001002d00009838* +- ID_MODEL_FROM_DATABASE=Kabini [Radeon HD 8240] ++ ID_MODEL_FROM_DATABASE=Kabini [Radeon HD 8240 / R3 Series] + + pci:v00001002d00009839* + ID_MODEL_FROM_DATABASE=Kabini [Radeon HD 8180] +@@ -10724,6 +10739,33 @@ pci:v00001022d00001418* + pci:v00001022d00001419* + ID_MODEL_FROM_DATABASE=Family 15h (Models 10h-1fh) I/O Memory Management Unit + ++pci:v00001022d0000141A* ++ ID_MODEL_FROM_DATABASE=Family 15h (Models 30h-3fh) Processor Function 0 ++ ++pci:v00001022d0000141B* ++ ID_MODEL_FROM_DATABASE=Family 15h (Models 30h-3fh) Processor Function 1 ++ ++pci:v00001022d0000141C* ++ ID_MODEL_FROM_DATABASE=Family 15h (Models 30h-3fh) Processor Function 2 ++ ++pci:v00001022d0000141D* ++ ID_MODEL_FROM_DATABASE=Family 15h (Models 30h-3fh) Processor Function 3 ++ ++pci:v00001022d0000141E* ++ ID_MODEL_FROM_DATABASE=Family 15h (Models 30h-3fh) Processor Function 4 ++ ++pci:v00001022d0000141F* ++ ID_MODEL_FROM_DATABASE=Family 15h (Models 30h-3fh) Processor Function 5 ++ ++pci:v00001022d00001422* ++ ID_MODEL_FROM_DATABASE=Family 15h (Models 30h-3fh) Processor Root Complex ++ ++pci:v00001022d00001423* ++ ID_MODEL_FROM_DATABASE=Family 15h (Models 30h-3fh) I/O Memory Management Unit ++ ++pci:v00001022d00001426* ++ ID_MODEL_FROM_DATABASE=Family 15h (Models 30h-3fh) Processor Root Port ++ + pci:v00001022d00001439* + ID_MODEL_FROM_DATABASE=Family 16h Processor Functions 5:1 + +@@ -17621,6 +17663,9 @@ pci:v00001093d000071BC* + pci:v00001093d000071D0* + ID_MODEL_FROM_DATABASE=PXI-6143 + ++pci:v00001093d000071DC* ++ ID_MODEL_FROM_DATABASE=PCI-1588 ++ + pci:v00001093d00007260* + ID_MODEL_FROM_DATABASE=PXI-5142 + +@@ -17639,6 +17684,9 @@ pci:v00001093d000072AA* + pci:v00001093d000072AB* + ID_MODEL_FROM_DATABASE=PCI-5105 + ++pci:v00001093d000072B8* ++ ID_MODEL_FROM_DATABASE=PXI-6682 ++ + pci:v00001093d0000730F* + ID_MODEL_FROM_DATABASE=PXI-5922EX + +@@ -17708,6 +17756,9 @@ pci:v00001093d000073F0* + pci:v00001093d000073F1* + ID_MODEL_FROM_DATABASE=PCI-5153 + ++pci:v00001093d00007405* ++ ID_MODEL_FROM_DATABASE=PXIe-6674T ++ + pci:v00001093d0000745E* + ID_MODEL_FROM_DATABASE=PXI-5153EX + +@@ -17726,6 +17777,12 @@ pci:v00001093d00007539* + pci:v00001093d0000753A* + ID_MODEL_FROM_DATABASE=NI 9159 + ++pci:v00001093d000075E5* ++ ID_MODEL_FROM_DATABASE=PXI-6683 ++ ++pci:v00001093d000075E6* ++ ID_MODEL_FROM_DATABASE=PXI-6683H ++ + pci:v00001093d00007626* + ID_MODEL_FROM_DATABASE=NI 9154 + +@@ -28100,6 +28157,9 @@ pci:v000010EC* + pci:v000010ECd00000139* + ID_MODEL_FROM_DATABASE=RTL-8139/8139C/8139C+ Ethernet Controller + ++pci:v000010ECd00005208* ++ ID_MODEL_FROM_DATABASE=RTS5208 PCI Express Card Reader ++ + pci:v000010ECd00005209* + ID_MODEL_FROM_DATABASE=RTS5209 PCI Express Card Reader + +@@ -28128,7 +28188,7 @@ pci:v000010ECd00005249sv0000103Csd00001909* + ID_MODEL_FROM_DATABASE=RTS5249 PCI Express Card Reader (ZBook 15) + + pci:v000010ECd00005288* +- ID_MODEL_FROM_DATABASE=Barossa PCI Express Card Reader ++ ID_MODEL_FROM_DATABASE=RTS5288 PCI Express Card Reader + + pci:v000010ECd00008029* + ID_MODEL_FROM_DATABASE=RTL-8029(AS) +@@ -32153,6 +32213,9 @@ pci:v00001131d00007160* + pci:v00001131d00007160sv00001458sd00009009* + ID_MODEL_FROM_DATABASE=SAA7160 (E8000 DVB-T/Analog TV/FM tuner) + ++pci:v00001131d00007160sv00001461sd00001455* ++ ID_MODEL_FROM_DATABASE=SAA7160 (AVerTV Hybrid Speedy PCI-E (H788)) ++ + pci:v00001131d00007162* + ID_MODEL_FROM_DATABASE=SAA7162 + +@@ -34691,6 +34754,9 @@ pci:v000011ABd00002A42* + pci:v000011ABd00002A43* + ID_MODEL_FROM_DATABASE=88W8366 [TopDog] 802.11n Wireless + ++pci:v000011ABd00002A55* ++ ID_MODEL_FROM_DATABASE=88W8864 [Avastar] 802.11ac Wireless ++ + pci:v000011ABd00002B36* + ID_MODEL_FROM_DATABASE=88W8764 [Avastar] 802.11n Wireless + +@@ -36536,6 +36602,9 @@ pci:v00001217d00008120* + pci:v00001217d00008130* + ID_MODEL_FROM_DATABASE=Integrated MS/MSPRO/xD Controller + ++pci:v00001217d00008221* ++ ID_MODEL_FROM_DATABASE=SD/MMC Card Reader Controller ++ + pci:v00001217d00008320* + ID_MODEL_FROM_DATABASE=OZ600 MMC/SD Controller + +@@ -43278,7 +43347,13 @@ pci:v00001469* + ID_VENDOR_FROM_DATABASE=Cleveland Motion Controls + + pci:v0000146A* +- ID_VENDOR_FROM_DATABASE=IFR ++ ID_VENDOR_FROM_DATABASE=Aeroflex ++ ++pci:v0000146Ad00003010* ++ ID_MODEL_FROM_DATABASE=3010 RF Synthesizer ++ ++pci:v0000146Ad00003A11* ++ ID_MODEL_FROM_DATABASE=3011A PXI RF Synthesizer + + pci:v0000146B* + ID_VENDOR_FROM_DATABASE=Parascan Technologies Ltd +@@ -52409,6 +52484,9 @@ pci:v00001AB8d00004006* + pci:v00001AB9* + ID_VENDOR_FROM_DATABASE=Espia Srl + ++pci:v00001AC8* ++ ID_VENDOR_FROM_DATABASE=Aeroflex Gaisler ++ + pci:v00001ACC* + ID_VENDOR_FROM_DATABASE=Point of View BV + +@@ -52724,9 +52802,15 @@ pci:v00001B4Bd000091A0* + pci:v00001B4Bd000091A4* + ID_MODEL_FROM_DATABASE=88SE912x IDE Controller + ++pci:v00001B4Bd00009220* ++ ID_MODEL_FROM_DATABASE=88SE9220 PCIe 2.0 x2 2-port SATA 6 Gb/s RAID Controller ++ + pci:v00001B4Bd00009230* + ID_MODEL_FROM_DATABASE=88SE9230 PCIe SATA 6Gb/s Controller + ++pci:v00001B4Bd00009235* ++ ID_MODEL_FROM_DATABASE=88SE9235 PCIe 2.0 x2 4-port SATA 6 Gb/s Controller ++ + pci:v00001B4Bd00009445* + ID_MODEL_FROM_DATABASE=88SE9445 PCIe 2.0 x4 4-Port SAS/SATA 6 Gbps RAID Controller + +@@ -54693,7 +54777,7 @@ pci:v00006688* + ID_VENDOR_FROM_DATABASE=Zycoo Co., Ltd + + pci:v00006688d00001200* +- ID_MODEL_FROM_DATABASE=CooVOX TDM Analog Module ++ ID_MODEL_FROM_DATABASE=CooVox TDM Analog Module + + pci:v00006688d00001400* + ID_MODEL_FROM_DATABASE=CooVOX TDM GSM Module +@@ -59066,8 +59150,11 @@ pci:v00008086d00001522sv00008086sd000000A4* + pci:v00008086d00001523* + ID_MODEL_FROM_DATABASE=I350 Gigabit Backplane Connection + ++pci:v00008086d00001523sv00001028sd00000060* ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Backplane Connection (Gigabit 2P I350 LOM) ++ + pci:v00008086d00001523sv00001028sd00001F9B* +- ID_MODEL_FROM_DATABASE=I350 Gigabit Backplane Connection (Gigabit 4P I350 bNDC) ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Backplane Connection (Gigabit 4P I350-t bNDC) + + pci:v00008086d00001523sv0000103Csd00001784* + ID_MODEL_FROM_DATABASE=I350 Gigabit Backplane Connection (Ethernet 1Gb 2-port 361FLB Adapter) +@@ -59183,9 +59270,6 @@ pci:v00008086d00001536* + pci:v00008086d00001537* + ID_MODEL_FROM_DATABASE=I210 Gigabit Backplane Connection + +-pci:v00008086d00001538* +- ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection +- + pci:v00008086d00001539* + ID_MODEL_FROM_DATABASE=I211 Gigabit Network Connection + +@@ -59270,6 +59354,12 @@ pci:v00008086d0000155Dsv00008086sd00000002* + pci:v00008086d00001560* + ID_MODEL_FROM_DATABASE=Ethernet Controller X540 + ++pci:v00008086d0000156F* ++ ID_MODEL_FROM_DATABASE=Ethernet Connection I219-LM ++ ++pci:v00008086d00001570* ++ ID_MODEL_FROM_DATABASE=Ethernet Connection I219-V ++ + pci:v00008086d00001571* + ID_MODEL_FROM_DATABASE=XL710 X710 Virtual Function + +@@ -59316,16 +59406,16 @@ pci:v00008086d00001581sv00001028sd00001F98* + ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10Gbe backplane (Ethernet 10G 4P X710-k bNDC) + + pci:v00008086d00001583* +- ID_MODEL_FROM_DATABASE=Ethernet Controller LX710 for 40GbE QSFP+ ++ ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ + + pci:v00008086d00001583sv00008086sd00000001* +- ID_MODEL_FROM_DATABASE=Ethernet Controller LX710 for 40GbE QSFP+ (Ethernet Converged Network Adapter XL710-Q2) ++ ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ (Ethernet Converged Network Adapter XL710-Q2) + + pci:v00008086d00001583sv00008086sd00000002* +- ID_MODEL_FROM_DATABASE=Ethernet Controller LX710 for 40GbE QSFP+ (Ethernet Converged Network Adapter XL710-Q2) ++ ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ (Ethernet Converged Network Adapter XL710-Q2) + + pci:v00008086d00001583sv00008086sd00000003* +- ID_MODEL_FROM_DATABASE=Ethernet Controller LX710 for 40GbE QSFP+ (Ethernet I/O Module XL710-Q2) ++ ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ (Ethernet I/O Module XL710-Q2) + + pci:v00008086d00001584* + ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ +diff --git hwdb/20-usb-vendor-model.hwdb hwdb/20-usb-vendor-model.hwdb +index 014c628..52586bc 100644 +--- hwdb/20-usb-vendor-model.hwdb ++++ hwdb/20-usb-vendor-model.hwdb +@@ -21,7 +21,7 @@ usb:v0004* + ID_VENDOR_FROM_DATABASE=Nebraska Furniture Mart + + usb:v0011* +- ID_VENDOR_FROM_DATABASE=Unknown manufacturer ++ ID_VENDOR_FROM_DATABASE=Unknown + + usb:v0011p7788* + ID_MODEL_FROM_DATABASE=Flash mass storage drive +@@ -275,6 +275,9 @@ usb:v03EBp2110* + usb:v03EBp2122* + ID_MODEL_FROM_DATABASE=XMEGA-A1 Explained evaluation kit + ++usb:v03EBp2141* ++ ID_MODEL_FROM_DATABASE=ICE debugger ++ + usb:v03EBp2310* + ID_MODEL_FROM_DATABASE=EVK11xx evaluation board + +@@ -455,6 +458,9 @@ usb:v03F0p0121* + usb:v03F0p0122* + ID_MODEL_FROM_DATABASE=HID Internet Keyboard + ++usb:v03F0p0139* ++ ID_MODEL_FROM_DATABASE=Barcode Scanner 4430 ++ + usb:v03F0p0201* + ID_MODEL_FROM_DATABASE=ScanJet 6200c + +@@ -782,6 +788,9 @@ usb:v03F0p1517* + usb:v03F0p1524* + ID_MODEL_FROM_DATABASE=Smart Card Keyboard - KR + ++usb:v03F0p1539* ++ ID_MODEL_FROM_DATABASE=Mini Magnetic Stripe Reader ++ + usb:v03F0p1602* + ID_MODEL_FROM_DATABASE=PhotoSmart 330 series + +@@ -893,6 +902,9 @@ usb:v03F0p1D02* + usb:v03F0p1D17* + ID_MODEL_FROM_DATABASE=LaserJet 1320 + ++usb:v03F0p1D24* ++ ID_MODEL_FROM_DATABASE=Barcode scanner ++ + usb:v03F0p1E02* + ID_MODEL_FROM_DATABASE=PhotoSmart A320 Printer series + +@@ -935,6 +947,9 @@ usb:v03F0p2012* + usb:v03F0p201D* + ID_MODEL_FROM_DATABASE=un2400 Gobi Wireless Modem (QDL mode) + ++usb:v03F0p2039* ++ ID_MODEL_FROM_DATABASE=Cashdrawer ++ + usb:v03F0p2102* + ID_MODEL_FROM_DATABASE=PhotoSmart 7345 + +@@ -1008,7 +1023,7 @@ usb:v03F0p2505* + ID_MODEL_FROM_DATABASE=ScanJet 3770 + + usb:v03F0p2512* +- ID_MODEL_FROM_DATABASE=OfficeJet Pro L7300 ++ ID_MODEL_FROM_DATABASE=OfficeJet Pro L7300 / Compaq LA2405 series monitor + + usb:v03F0p2514* + ID_MODEL_FROM_DATABASE=4-port hub +@@ -1046,6 +1061,9 @@ usb:v03F0p2704* + usb:v03F0p2717* + ID_MODEL_FROM_DATABASE=Color LaserJet 2830 + ++usb:v03F0p2724* ++ ID_MODEL_FROM_DATABASE=Magnetic Stripe Reader IDRA-334133-HP ++ + usb:v03F0p2811* + ID_MODEL_FROM_DATABASE=PSC-2100 + +@@ -1424,6 +1442,9 @@ usb:v03F0p5817* + usb:v03F0p5911* + ID_MODEL_FROM_DATABASE=PhotoSmart C6180 + ++usb:v03F0p5912* ++ ID_MODEL_FROM_DATABASE=Officejet Pro 8600 ++ + usb:v03F0p5A11* + ID_MODEL_FROM_DATABASE=PhotoSmart C7100 series + +@@ -1532,6 +1553,9 @@ usb:v03F0p6B02* + usb:v03F0p6B11* + ID_MODEL_FROM_DATABASE=Photosmart C4500 series + ++usb:v03F0p6C11* ++ ID_MODEL_FROM_DATABASE=Photosmart C4480 ++ + usb:v03F0p6C17* + ID_MODEL_FROM_DATABASE=Color LaserJet 4610 + +@@ -1913,6 +1937,9 @@ usb:v03FC* + usb:v03FD* + ID_VENDOR_FROM_DATABASE=Xilinx, Inc. + ++usb:v03FDp0008* ++ ID_MODEL_FROM_DATABASE=Platform Cable USB II ++ + usb:v03FE* + ID_VENDOR_FROM_DATABASE=Farallon Comunications + +@@ -2012,6 +2039,9 @@ usb:v0403p0232* + usb:v0403p1060* + ID_MODEL_FROM_DATABASE=JTAG adapter + ++usb:v0403p1234* ++ ID_MODEL_FROM_DATABASE=IronLogic RFID Adapter [Z-2 USB] ++ + usb:v0403p6001* + ID_MODEL_FROM_DATABASE=FT232 USB-Serial (UART) IC + +@@ -2084,12 +2114,18 @@ usb:v0403p8B2B* + usb:v0403p8B2C* + ID_MODEL_FROM_DATABASE=Alpermann+Velte TCC70 + ++usb:v0403p9132* ++ ID_MODEL_FROM_DATABASE=LCD and Temperature Interface ++ + usb:v0403p9133* + ID_MODEL_FROM_DATABASE=CallerID + + usb:v0403p9135* + ID_MODEL_FROM_DATABASE=Rotary Pub alarm + ++usb:v0403p9136* ++ ID_MODEL_FROM_DATABASE=Pulsecounter ++ + usb:v0403p9E90* + ID_MODEL_FROM_DATABASE=Marvell OpenRD Base/Client + +@@ -2291,6 +2327,9 @@ usb:v0403pEF10* + usb:v0403pF070* + ID_MODEL_FROM_DATABASE=Serial Converter 422/485 [Vardaan VEUSB422R3] + ++usb:v0403pF0E9* ++ ID_MODEL_FROM_DATABASE=Tagsys L-P101 ++ + usb:v0403pF1A0* + ID_MODEL_FROM_DATABASE=Asix PRESTO Programmer + +@@ -2999,6 +3038,9 @@ usb:v040Ap4021* + usb:v040Ap4022* + ID_MODEL_FROM_DATABASE=1400 Digital Photo Printer + ++usb:v040Ap402B* ++ ID_MODEL_FROM_DATABASE=Photo Printer 6850 ++ + usb:v040Ap402E* + ID_MODEL_FROM_DATABASE=605 Photo Printer + +@@ -4379,6 +4421,9 @@ usb:v0424p7500* + usb:v0424p9512* + ID_MODEL_FROM_DATABASE=SMC9512/9514 USB Hub + ++usb:v0424p9514* ++ ID_MODEL_FROM_DATABASE=SMC9514 Hub ++ + usb:v0424pA700* + ID_MODEL_FROM_DATABASE=2 Port Hub + +@@ -5219,6 +5264,9 @@ usb:v0451p2046* + usb:v0451p2077* + ID_MODEL_FROM_DATABASE=TUSB2077 Hub + ++usb:v0451p2F90* ++ ID_MODEL_FROM_DATABASE=SM-USB-DIG ++ + usb:v0451p3410* + ID_MODEL_FROM_DATABASE=TUSB3410 Microcontroller + +@@ -5534,6 +5582,9 @@ usb:v0458p5003* + usb:v0458p5004* + ID_MODEL_FROM_DATABASE=G-pen Tablet + ++usb:v0458p505E* ++ ID_MODEL_FROM_DATABASE=Genius iSlim 330 ++ + usb:v0458p6001* + ID_MODEL_FROM_DATABASE=GF3000F Ethernet Adapter + +@@ -5600,6 +5651,24 @@ usb:v0458p705A* + usb:v0458p705C* + ID_MODEL_FROM_DATABASE=Genius iSlim 1300AF + ++usb:v0458p7061* ++ ID_MODEL_FROM_DATABASE=Genius iLook 1321 V2 ++ ++usb:v0458p7066* ++ ID_MODEL_FROM_DATABASE=Acer Crystal Eye Webcam ++ ++usb:v0458p7067* ++ ID_MODEL_FROM_DATABASE=Genius iSlim 1300AF V2 ++ ++usb:v0458p7068* ++ ID_MODEL_FROM_DATABASE=Genius eFace 1325R ++ ++usb:v0458p706D* ++ ID_MODEL_FROM_DATABASE=Genius iSlim 2000AF V2 ++ ++usb:v0458p7076* ++ ID_MODEL_FROM_DATABASE=Genius FaceCam 312 ++ + usb:v0458p7079* + ID_MODEL_FROM_DATABASE=FaceCam 2025R + +@@ -5609,6 +5678,12 @@ usb:v0458p707F* + usb:v0458p7088* + ID_MODEL_FROM_DATABASE=WideCam 1050 + ++usb:v0458p7089* ++ ID_MODEL_FROM_DATABASE=Genius FaceCam 320 ++ ++usb:v0458p708C* ++ ID_MODEL_FROM_DATABASE=Genius WideCam F100 ++ + usb:v0459* + ID_VENDOR_FROM_DATABASE=Adobe Systems, Inc. + +@@ -6017,6 +6092,15 @@ usb:v045Ep02B0* + usb:v045Ep02B6* + ID_MODEL_FROM_DATABASE=Xbox 360 / Bluetooth Wireless Headset + ++usb:v045Ep02BE* ++ ID_MODEL_FROM_DATABASE=Kinect for Windows NUI Audio ++ ++usb:v045Ep02BF* ++ ID_MODEL_FROM_DATABASE=Kinect for Windows NUI Camera ++ ++usb:v045Ep02C2* ++ ID_MODEL_FROM_DATABASE=Kinect for Windows NUI Motor ++ + usb:v045Ep0400* + ID_MODEL_FROM_DATABASE=Windows Powered Pocket PC 2002 + +@@ -6866,6 +6950,9 @@ usb:v046Dp0830* + usb:v046Dp0840* + ID_MODEL_FROM_DATABASE=QuickCam Express + ++usb:v046Dp0843* ++ ID_MODEL_FROM_DATABASE=Webcam C930e ++ + usb:v046Dp0850* + ID_MODEL_FROM_DATABASE=QuickCam Web + +@@ -7169,6 +7256,12 @@ usb:v046Dp0A1F* + usb:v046Dp0A29* + ID_MODEL_FROM_DATABASE=H600 [Wireless Headset] + ++usb:v046Dp0A38* ++ ID_MODEL_FROM_DATABASE=Headset H340 ++ ++usb:v046Dp0A4D* ++ ID_MODEL_FROM_DATABASE=G430 Surround Sound Gaming Headset ++ + usb:v046Dp0B02* + ID_MODEL_FROM_DATABASE=C-UV35 [Bluetooth Mini-Receiver] (HID proxy mode) + +@@ -7650,7 +7743,7 @@ usb:v046DpC31B* + ID_MODEL_FROM_DATABASE=Compact Keyboard K300 + + usb:v046DpC31C* +- ID_MODEL_FROM_DATABASE=Keyboard K120 for Business ++ ID_MODEL_FROM_DATABASE=Keyboard K120 + + usb:v046DpC31D* + ID_MODEL_FROM_DATABASE=Media Keyboard K200 +@@ -7751,6 +7844,9 @@ usb:v046DpC529* + usb:v046DpC52B* + ID_MODEL_FROM_DATABASE=Unifying Receiver + ++usb:v046DpC52D* ++ ID_MODEL_FROM_DATABASE=R700 Remote Presenter receiver ++ + usb:v046DpC52E* + ID_MODEL_FROM_DATABASE=MK260 Wireless Combo Receiver + +@@ -7760,6 +7856,18 @@ usb:v046DpC52F* + usb:v046DpC532* + ID_MODEL_FROM_DATABASE=Unifying Receiver + ++usb:v046DpC603* ++ ID_MODEL_FROM_DATABASE=3Dconnexion Spacemouse Plus XT ++ ++usb:v046DpC605* ++ ID_MODEL_FROM_DATABASE=3Dconnexion CADman ++ ++usb:v046DpC606* ++ ID_MODEL_FROM_DATABASE=3Dconnexion Spacemouse Classic ++ ++usb:v046DpC621* ++ ID_MODEL_FROM_DATABASE=3Dconnexion Spaceball 5000 ++ + usb:v046DpC623* + ID_MODEL_FROM_DATABASE=3Dconnexion Space Traveller 3D Mouse + +@@ -7772,9 +7880,18 @@ usb:v046DpC626* + usb:v046DpC627* + ID_MODEL_FROM_DATABASE=3Dconnexion Space Explorer 3D Mouse + ++usb:v046DpC628* ++ ID_MODEL_FROM_DATABASE=3Dconnexion Space Navigator for Notebooks ++ + usb:v046DpC629* + ID_MODEL_FROM_DATABASE=3Dconnexion SpacePilot Pro 3D Mouse + ++usb:v046DpC62B* ++ ID_MODEL_FROM_DATABASE=3Dconnexion Space Mouse Pro ++ ++usb:v046DpC640* ++ ID_MODEL_FROM_DATABASE=NuLOOQ navigator ++ + usb:v046DpC702* + ID_MODEL_FROM_DATABASE=Cordless Presenter + +@@ -8609,6 +8726,9 @@ usb:v0480p0011* + usb:v0480p0014* + ID_MODEL_FROM_DATABASE=InTouch Module + ++usb:v0480p0100* ++ ID_MODEL_FROM_DATABASE=Stor.E Slim USB 3.0 ++ + usb:v0480pA006* + ID_MODEL_FROM_DATABASE=External Disk 1.5TB + +@@ -10043,6 +10163,9 @@ usb:v04A9p2225* + usb:v04A9p2228* + ID_MODEL_FROM_DATABASE=CanoScan 4400F + ++usb:v04A9p2229* ++ ID_MODEL_FROM_DATABASE=CanoScan 8600F ++ + usb:v04A9p2602* + ID_MODEL_FROM_DATABASE=MultiPASS C555 + +@@ -10988,6 +11111,9 @@ usb:v04A9p3233* + usb:v04A9p3234* + ID_MODEL_FROM_DATABASE=PowerShot SX150 IS + ++usb:v04A9p3235* ++ ID_MODEL_FROM_DATABASE=PowerShot ELPH 510 HS / IXUS 1100 HS ++ + usb:v04A9p3236* + ID_MODEL_FROM_DATABASE=PowerShot S100 + +@@ -11057,12 +11183,18 @@ usb:v04A9p325B* + usb:v04A9p325C* + ID_MODEL_FROM_DATABASE=PowerShot SX500 IS + ++usb:v04A9p325E* ++ ID_MODEL_FROM_DATABASE=PowerShot N ++ + usb:v04A9p325F* + ID_MODEL_FROM_DATABASE=PowerShot SX280 HS + + usb:v04A9p3260* + ID_MODEL_FROM_DATABASE=PowerShot SX270 HS + ++usb:v04A9p3261* ++ ID_MODEL_FROM_DATABASE=PowerShot A3500 IS ++ + usb:v04A9p3262* + ID_MODEL_FROM_DATABASE=PowerShot A2600 + +@@ -11087,6 +11219,15 @@ usb:v04A9p3277* + usb:v04A9p327D* + ID_MODEL_FROM_DATABASE=Powershot ELPH 115 IS / IXUS 132 + ++usb:v04A9p3288* ++ ID_MODEL_FROM_DATABASE=Powershot ELPH 135 / IXUS 145 ++ ++usb:v04A9p3289* ++ ID_MODEL_FROM_DATABASE=PowerShot ELPH 340 HS / IXUS 265 HS ++ ++usb:v04A9p328A* ++ ID_MODEL_FROM_DATABASE=PowerShot ELPH 150 IS / IXUS 155 ++ + usb:v04AA* + ID_VENDOR_FROM_DATABASE=DaeWoo Telecom, Ltd + +@@ -11471,6 +11612,9 @@ usb:v04B4p2050* + usb:v04B4p2830* + ID_MODEL_FROM_DATABASE=Opera1 DVB-S (cold state) + ++usb:v04B4p4235* ++ ID_MODEL_FROM_DATABASE=Monitor 02 Driver ++ + usb:v04B4p4381* + ID_MODEL_FROM_DATABASE=SCAPS USC-1 Scanner Controller + +@@ -12407,6 +12551,9 @@ usb:v04C5p10AE* + usb:v04C5p10AF* + ID_MODEL_FROM_DATABASE=fi-4220C2 + ++usb:v04C5p10C7* ++ ID_MODEL_FROM_DATABASE=fi-60f scanner ++ + usb:v04C5p10E0* + ID_MODEL_FROM_DATABASE=fi-5120c Scanner + +@@ -12981,7 +13128,7 @@ usb:v04D9p2519* + ID_MODEL_FROM_DATABASE=Shenzhen LogoTech 2.4GHz receiver + + usb:v04D9p2832* +- ID_MODEL_FROM_DATABASE=1channel Telephone line recorder ++ ID_MODEL_FROM_DATABASE=HT82A832R Audio MCU + + usb:v04D9p2834* + ID_MODEL_FROM_DATABASE=HT82A834R Audio MCU +@@ -13070,6 +13217,9 @@ usb:v04DAp2374* + usb:v04DAp2451* + ID_MODEL_FROM_DATABASE=HDC-SD9 + ++usb:v04DAp245B* ++ ID_MODEL_FROM_DATABASE=HC-X920K (3MOS Full HD video camcorder) ++ + usb:v04DAp2497* + ID_MODEL_FROM_DATABASE=HDC-TM700 + +@@ -13535,6 +13685,9 @@ usb:v04E8p1006* + usb:v04E8p130C* + ID_MODEL_FROM_DATABASE=NX100 + ++usb:v04E8p1F05* ++ ID_MODEL_FROM_DATABASE=S2 Portable [JMicron] (500GB) ++ + usb:v04E8p1F06* + ID_MODEL_FROM_DATABASE=HX-MU064DA portable harddisk + +@@ -13670,6 +13823,9 @@ usb:v04E8p3310* + usb:v04E8p3315* + ID_MODEL_FROM_DATABASE=ML-2540 Series Laser Printer + ++usb:v04E8p331E* ++ ID_MODEL_FROM_DATABASE=M262x/M282x Xpress Series Laser Printer ++ + usb:v04E8p3409* + ID_MODEL_FROM_DATABASE=SCX-4216F Scanner + +@@ -13718,6 +13874,9 @@ usb:v04E8p3420* + usb:v04E8p3426* + ID_MODEL_FROM_DATABASE=SCX-4500 Laser Printer + ++usb:v04E8p342D* ++ ID_MODEL_FROM_DATABASE=SCX-4x28 Series ++ + usb:v04E8p344F* + ID_MODEL_FROM_DATABASE=SCX-3400 Series + +@@ -14058,7 +14217,7 @@ usb:v04E8p685B* + ID_MODEL_FROM_DATABASE=GT-I9100 Phone [Galaxy S II] (mass storage mode) + + usb:v04E8p685C* +- ID_MODEL_FROM_DATABASE=GT-I9250 Phone [Galaxy Nexus] ++ ID_MODEL_FROM_DATABASE=GT-I9250 Phone [Galaxy Nexus] (Mass storage mode) + + usb:v04E8p685D* + ID_MODEL_FROM_DATABASE=GT-I9100 Phone [Galaxy S II] (Download mode) +@@ -14067,7 +14226,10 @@ usb:v04E8p685E* + ID_MODEL_FROM_DATABASE=GT-I9100 / GT-C3350 Phones (USB Debugging mode) + + usb:v04E8p6860* +- ID_MODEL_FROM_DATABASE=GT-I9100 Phone [Galaxy S II], GT-I9300 Phone [Galaxy S III], GT-P7500 [Galaxy Tab 10.1] ++ ID_MODEL_FROM_DATABASE=GT-I9100 Phone [Galaxy S II], GT-I9300 Phone [Galaxy S III], GT-P7500 [Galaxy Tab 10.1] , GT-I9500 [Galaxy S 4] ++ ++usb:v04E8p6863* ++ ID_MODEL_FROM_DATABASE=GT-I9500 [Galaxy S4] / GT-I9250 [Galaxy Nexus] (network tethering) + + usb:v04E8p6865* + ID_MODEL_FROM_DATABASE=GT-I9300 Phone [Galaxy S III] (PTP mode) +@@ -14075,6 +14237,9 @@ usb:v04E8p6865* + usb:v04E8p6866* + ID_MODEL_FROM_DATABASE=GT-I9300 Phone [Galaxy S III] (debugging mode) + ++usb:v04E8p6868* ++ ID_MODEL_FROM_DATABASE=Escape Composite driver for Android Phones: Modem+Diagnostic+ADB ++ + usb:v04E8p6875* + ID_MODEL_FROM_DATABASE=GT-B3710 Standalone LTE device (Commercial) + +@@ -14342,6 +14507,12 @@ usb:v04F2pB057* + usb:v04F2pB059* + ID_MODEL_FROM_DATABASE=CKF7037 HP webcam + ++usb:v04F2pB064* ++ ID_MODEL_FROM_DATABASE=CNA7137 Integrated Webcam ++ ++usb:v04F2pB070* ++ ID_MODEL_FROM_DATABASE=Camera ++ + usb:v04F2pB071* + ID_MODEL_FROM_DATABASE=2.0M UVC Webcam / CNF7129 + +@@ -14411,6 +14582,9 @@ usb:v04F2pB2B0* + usb:v04F2pB2B9* + ID_MODEL_FROM_DATABASE=Lenovo Integrated Camera UVC + ++usb:v04F2pB2DA* ++ ID_MODEL_FROM_DATABASE=thinkpad t430s camera ++ + usb:v04F2pB2EA* + ID_MODEL_FROM_DATABASE=Integrated Camera [ThinkPad] + +@@ -14420,6 +14594,9 @@ usb:v04F2pB330* + usb:v04F2pB354* + ID_MODEL_FROM_DATABASE=UVC 1.00 device HD UVC WebCam + ++usb:v04F2pB394* ++ ID_MODEL_FROM_DATABASE=Integrated Camera ++ + usb:v04F3* + ID_VENDOR_FROM_DATABASE=Elan Microelectronics Corp. + +@@ -15038,6 +15215,9 @@ usb:v04F9p01EB* + usb:v04F9p01F4* + ID_MODEL_FROM_DATABASE=MFC-5890CN + ++usb:v04F9p0217* ++ ID_MODEL_FROM_DATABASE=MFC-8480DN ++ + usb:v04F9p0223* + ID_MODEL_FROM_DATABASE=DCP-365CN + +@@ -15158,9 +15338,15 @@ usb:v04FCp5331* + usb:v04FCp5360* + ID_MODEL_FROM_DATABASE=Sunplus Generic Digital Camera + ++usb:v04FCp5563* ++ ID_MODEL_FROM_DATABASE=Digital Media Player MP3/WMA [The Sharper Image] ++ + usb:v04FCp5720* + ID_MODEL_FROM_DATABASE=Card Reader Driver + ++usb:v04FCp6333* ++ ID_MODEL_FROM_DATABASE=Siri A9 UVC chipset ++ + usb:v04FCp7333* + ID_MODEL_FROM_DATABASE=Finet Technology Palmpix DC-85 + +@@ -15239,6 +15425,18 @@ usb:v0502p3325* + usb:v0502p3341* + ID_MODEL_FROM_DATABASE=Iconia tablet A500 + ++usb:v0502p33C3* ++ ID_MODEL_FROM_DATABASE=Liquid Gallant Duo E350 ++ ++usb:v0502p33C4* ++ ID_MODEL_FROM_DATABASE=Liquid Gallant Duo E350 (debug mode) ++ ++usb:v0502p33C7* ++ ID_MODEL_FROM_DATABASE=Liquid Gallant Duo E350 (USB tethering) ++ ++usb:v0502p33C8* ++ ID_MODEL_FROM_DATABASE=Liquid Gallant Duo E350 (debug mode, USB tethering) ++ + usb:v0502pD001* + ID_MODEL_FROM_DATABASE=Divio NW801/DVC-V6+ Digital Camera + +@@ -15446,6 +15644,9 @@ usb:v050Dp0416* + usb:v050Dp0551* + ID_MODEL_FROM_DATABASE=F6C550-AVR UPS + ++usb:v050Dp065A* ++ ID_MODEL_FROM_DATABASE=F8T065BF Mini Bluetooth 4.0 Adapter ++ + usb:v050Dp0706* + ID_MODEL_FROM_DATABASE=2-N-1 7-Port Hub (Lower half) + +@@ -15497,6 +15698,9 @@ usb:v050Dp2103* + usb:v050Dp21F1* + ID_MODEL_FROM_DATABASE=N300 WLAN N Adapter [ISY] + ++usb:v050Dp21F2* ++ ID_MODEL_FROM_DATABASE=RTL8192CU 802.11n WLAN Adapter [ISY IWL 4000] ++ + usb:v050Dp258A* + ID_MODEL_FROM_DATABASE=F5U258 Host to Host cable + +@@ -15728,6 +15932,9 @@ usb:v0525p1200* + usb:v0525p1265* + ID_MODEL_FROM_DATABASE=File-backed Storage Gadget + ++usb:v0525p3424* ++ ID_MODEL_FROM_DATABASE=Lumidigm Venus fingerprint sensor ++ + usb:v0525pA0F0* + ID_MODEL_FROM_DATABASE=Cambridge Electronic Devices Power1401 mk 2 + +@@ -16655,6 +16862,9 @@ usb:v054Cp035B* + usb:v054Cp035C* + ID_MODEL_FROM_DATABASE=NWZ-A726/A728/A729 + ++usb:v054Cp035F* ++ ID_MODEL_FROM_DATABASE=UP-DR200 Photo Printer ++ + usb:v054Cp0382* + ID_MODEL_FROM_DATABASE=Memory Stick PRO-HG Duo Adaptor (MSAC-UAH1) + +@@ -16694,9 +16904,18 @@ usb:v054Cp0485* + usb:v054Cp04CB* + ID_MODEL_FROM_DATABASE=WALKMAN NWZ-E354 + ++usb:v054Cp0541* ++ ID_MODEL_FROM_DATABASE=DSC-HX100V [Cybershot Digital Still Camera] ++ ++usb:v054Cp0689* ++ ID_MODEL_FROM_DATABASE=Walkman NWZ-B173F ++ + usb:v054Cp06BB* + ID_MODEL_FROM_DATABASE=WALKMAN NWZ-F805 + ++usb:v054Cp088C* ++ ID_MODEL_FROM_DATABASE=Portable Headphone Amplifier ++ + usb:v054Cp1000* + ID_MODEL_FROM_DATABASE=Wireless Buzz! Receiver + +@@ -16721,6 +16940,12 @@ usb:v0550p0004* + usb:v0550p0005* + ID_MODEL_FROM_DATABASE=InkJet Color Printer + ++usb:v0550p000B* ++ ID_MODEL_FROM_DATABASE=Workcentre 24 ++ ++usb:v0550p014E* ++ ID_MODEL_FROM_DATABASE=CM215b Printer ++ + usb:v0551* + ID_VENDOR_FROM_DATABASE=CompuTrend Systems, Inc. + +@@ -17306,6 +17531,9 @@ usb:v056Ap0069* + usb:v056Ap0081* + ID_MODEL_FROM_DATABASE=Graphire Wireless 6x8 + ++usb:v056Ap0084* ++ ID_MODEL_FROM_DATABASE=Wireless adapter for Bamboo tablets ++ + usb:v056Ap0090* + ID_MODEL_FROM_DATABASE=TPC90 + +@@ -17372,6 +17600,9 @@ usb:v056Ap00D1* + usb:v056Ap00D3* + ID_MODEL_FROM_DATABASE=Bamboo Fun (CTH-661) + ++usb:v056Ap00D4* ++ ID_MODEL_FROM_DATABASE=Bamboo Pen (CTL-460) ++ + usb:v056Ap00D6* + ID_MODEL_FROM_DATABASE=Bamboo Pen & Touch (CTH-460) + +@@ -17390,6 +17621,12 @@ usb:v056Ap00F6* + usb:v056Ap00F8* + ID_MODEL_FROM_DATABASE=Cintiq 24HD touch (DTH-2400) tablet + ++usb:v056Ap0307* ++ ID_MODEL_FROM_DATABASE=Cintiq Companion Hybrid 13HD (DTH-A1300) tablet ++ ++usb:v056Ap0309* ++ ID_MODEL_FROM_DATABASE=Cintiq Companion Hybrid 13HD (DTH-A1300) touchscreen ++ + usb:v056Ap0400* + ID_MODEL_FROM_DATABASE=PenPartner 4x5 + +@@ -18719,6 +18956,9 @@ usb:v0586p341E* + usb:v0586p341F* + ID_MODEL_FROM_DATABASE=NWD2205 802.11n Wireless N Adapter [Realtek RTL8192CU] + ++usb:v0586p3425* ++ ID_MODEL_FROM_DATABASE=NWD6505 802.11a/b/g/n/ac Wireless Adapter [MediaTek MT7610U] ++ + usb:v0586p343E* + ID_MODEL_FROM_DATABASE=N220 802.11bgn Wireless Adapter + +@@ -18737,9 +18977,15 @@ usb:v058A* + usb:v058B* + ID_VENDOR_FROM_DATABASE=Infineon Technologies + ++usb:v058Bp0015* ++ ID_MODEL_FROM_DATABASE=Flash Loader utility ++ + usb:v058Bp001C* + ID_MODEL_FROM_DATABASE=Flash Drive + ++usb:v058Bp0041* ++ ID_MODEL_FROM_DATABASE=Flash Loader utility ++ + usb:v058C* + ID_VENDOR_FROM_DATABASE=In Focus Systems + +@@ -18855,7 +19101,7 @@ usb:v058Fp6366* + ID_MODEL_FROM_DATABASE=Multi Flash Reader + + usb:v058Fp6377* +- ID_MODEL_FROM_DATABASE=Multimedia Card Reader ++ ID_MODEL_FROM_DATABASE=AU6375 4-LUN card reader + + usb:v058Fp6386* + ID_MODEL_FROM_DATABASE=Memory Card +@@ -18926,12 +19172,18 @@ usb:v058Fp9510* + usb:v058Fp9520* + ID_MODEL_FROM_DATABASE=EMV Certified Smart Card Reader + ++usb:v058Fp9540* ++ ID_MODEL_FROM_DATABASE=AU9540 Smartcard Reader ++ + usb:v058Fp9720* + ID_MODEL_FROM_DATABASE=USB-Serial Adapter + + usb:v058FpA014* + ID_MODEL_FROM_DATABASE=Asus Integrated Webcam + ++usb:v058FpB002* ++ ID_MODEL_FROM_DATABASE=Acer Integrated Webcam ++ + usb:v0590* + ID_VENDOR_FROM_DATABASE=Omron Corp. + +@@ -18983,6 +19235,9 @@ usb:v0596p0002* + usb:v0596p0500* + ID_MODEL_FROM_DATABASE=PCT Multitouch HID Controller + ++usb:v0596p0543* ++ ID_MODEL_FROM_DATABASE=DELL XPS touchscreen ++ + usb:v0597* + ID_VENDOR_FROM_DATABASE=Trisignal Communications + +@@ -19055,6 +19310,9 @@ usb:v059Bp0061* + usb:v059Bp006D* + ID_MODEL_FROM_DATABASE=HipZip MP3 Player + ++usb:v059Bp0070* ++ ID_MODEL_FROM_DATABASE=eGo Portable Hard Drive ++ + usb:v059Bp007C* + ID_MODEL_FROM_DATABASE=Ultra Max USB/1394 + +@@ -19163,9 +19421,15 @@ usb:v059Fp0323* + usb:v059Fp0421* + ID_MODEL_FROM_DATABASE=Big Disk G465 + ++usb:v059Fp0525* ++ ID_MODEL_FROM_DATABASE=BigDisk Extreme 500 ++ + usb:v059Fp0641* + ID_MODEL_FROM_DATABASE=Mobile Hard Drive + ++usb:v059Fp0829* ++ ID_MODEL_FROM_DATABASE=BigDisk Extreme+ ++ + usb:v059Fp100C* + ID_MODEL_FROM_DATABASE=Rugged Triple Interface Mobile Hard Drive + +@@ -19190,6 +19454,9 @@ usb:v059Fp1049* + usb:v059Fp1052* + ID_MODEL_FROM_DATABASE=P'9220 Mobile Drive + ++usb:v059Fp1064* ++ ID_MODEL_FROM_DATABASE=Rugged 16 and 32 GB ++ + usb:v059FpA601* + ID_MODEL_FROM_DATABASE=HardDrive + +@@ -19464,7 +19731,7 @@ usb:v05ACp0225* + ID_MODEL_FROM_DATABASE=Internal Keyboard/Trackpad (JIS) + + usb:v05ACp0229* +- ID_MODEL_FROM_DATABASE=Internal Keyboard/Trackpad (MacBook Pro) (ANSI) ++ ID_MODEL_FROM_DATABASE=Internal Keyboard/Trackpad (ANSI) + + usb:v05ACp022A* + ID_MODEL_FROM_DATABASE=Internal Keyboard/Trackpad (MacBook Pro) (ISO) +@@ -19545,7 +19812,7 @@ usb:v05ACp0302* + ID_MODEL_FROM_DATABASE=Optical Mouse [Fujitsu] + + usb:v05ACp0304* +- ID_MODEL_FROM_DATABASE=Optical USB Mouse [Mitsumi] ++ ID_MODEL_FROM_DATABASE=Mighty Mouse [Mitsumi, M1152] + + usb:v05ACp0306* + ID_MODEL_FROM_DATABASE=Optical USB Mouse [Fujitsu] +@@ -19577,6 +19844,9 @@ usb:v05ACp1003* + usb:v05ACp1006* + ID_MODEL_FROM_DATABASE=Hub in Aluminum Keyboard + ++usb:v05ACp1008* ++ ID_MODEL_FROM_DATABASE=Mini DisplayPort to Dual-Link DVI Adapter ++ + usb:v05ACp1101* + ID_MODEL_FROM_DATABASE=Speakers + +@@ -19670,6 +19940,9 @@ usb:v05ACp1265* + usb:v05ACp1266* + ID_MODEL_FROM_DATABASE=iPod Nano 6.Gen + ++usb:v05ACp1267* ++ ID_MODEL_FROM_DATABASE=iPod Nano 7.Gen ++ + usb:v05ACp1281* + ID_MODEL_FROM_DATABASE=Apple Mobile Device [Recovery Mode] + +@@ -19700,6 +19973,9 @@ usb:v05ACp1299* + usb:v05ACp129A* + ID_MODEL_FROM_DATABASE=iPad + ++usb:v05ACp129C* ++ ID_MODEL_FROM_DATABASE=iPhone 4(CDMA) ++ + usb:v05ACp129E* + ID_MODEL_FROM_DATABASE=iPod Touch 4.Gen + +@@ -19712,15 +19988,30 @@ usb:v05ACp12A0* + usb:v05ACp12A2* + ID_MODEL_FROM_DATABASE=iPad 2 (3G; 64GB) + ++usb:v05ACp12A3* ++ ID_MODEL_FROM_DATABASE=iPad 2 (CDMA) ++ ++usb:v05ACp12A4* ++ ID_MODEL_FROM_DATABASE=iPad 3 (wifi) ++ ++usb:v05ACp12A5* ++ ID_MODEL_FROM_DATABASE=iPad 3 (CDMA) ++ + usb:v05ACp12A6* + ID_MODEL_FROM_DATABASE=iPad 3 (3G, 16 GB) + ++usb:v05ACp12A8* ++ ID_MODEL_FROM_DATABASE=iPhone5/5C/5S ++ + usb:v05ACp12A9* + ID_MODEL_FROM_DATABASE=iPad 2 + + usb:v05ACp12AA* + ID_MODEL_FROM_DATABASE=iPod Touch 5.Gen [A1421] + ++usb:v05ACp12AB* ++ ID_MODEL_FROM_DATABASE=iPad 4 (WiFi, 32GB) ++ + usb:v05ACp1300* + ID_MODEL_FROM_DATABASE=iPod Shuffle + +@@ -19742,6 +20033,15 @@ usb:v05ACp1402* + usb:v05ACp1500* + ID_MODEL_FROM_DATABASE=SuperDrive [A1379] + ++usb:v05ACp8005* ++ ID_MODEL_FROM_DATABASE=OHCI Root Hub Simulation ++ ++usb:v05ACp8006* ++ ID_MODEL_FROM_DATABASE=EHCI Root Hub Simulation ++ ++usb:v05ACp8007* ++ ID_MODEL_FROM_DATABASE=XHCI Root Hub USB 2.0 Simulation ++ + usb:v05ACp8202* + ID_MODEL_FROM_DATABASE=HCF V.90 Data/Fax Modem + +@@ -19838,6 +20138,9 @@ usb:v05ACp8510* + usb:v05ACp911C* + ID_MODEL_FROM_DATABASE=Hub in A1082 [Cinema HD Display 23"] + ++usb:v05ACp9127* ++ ID_MODEL_FROM_DATABASE=Hub in Thunderbolt Display ++ + usb:v05ACp912F* + ID_MODEL_FROM_DATABASE=Hub in 30" Cinema Display + +@@ -20042,6 +20345,9 @@ usb:v05C6p9202* + usb:v05C6p9203* + ID_MODEL_FROM_DATABASE=Gobi Wireless Modem + ++usb:v05C6p9205* ++ ID_MODEL_FROM_DATABASE=Gobi 2000 ++ + usb:v05C6p9211* + ID_MODEL_FROM_DATABASE=Acer Gobi Wireless Modem (QDL mode) + +@@ -20123,9 +20429,18 @@ usb:v05C8p021A* + usb:v05C8p0318* + ID_MODEL_FROM_DATABASE=Webcam + ++usb:v05C8p0361* ++ ID_MODEL_FROM_DATABASE=SunplusIT INC. HP Truevision HD Webcam ++ ++usb:v05C8p036E* ++ ID_MODEL_FROM_DATABASE=Webcam ++ + usb:v05C8p0403* + ID_MODEL_FROM_DATABASE=Webcam + ++usb:v05C8p041B* ++ ID_MODEL_FROM_DATABASE=HP 2.0MP High Definition Webcam ++ + usb:v05C9* + ID_VENDOR_FROM_DATABASE=Semtech Corp. + +@@ -20861,6 +21176,9 @@ usb:v05DCp4D12* + usb:v05DCp4D30* + ID_MODEL_FROM_DATABASE=MP3 Player + ++usb:v05DCpA209* ++ ID_MODEL_FROM_DATABASE=JumpDrive S70 ++ + usb:v05DCpA300* + ID_MODEL_FROM_DATABASE=JumpDrive2 + +@@ -20921,6 +21239,9 @@ usb:v05DCpA701* + usb:v05DCpA731* + ID_MODEL_FROM_DATABASE=JumpDrive FireFly + ++usb:v05DCpA768* ++ ID_MODEL_FROM_DATABASE=JumpDrive Retrax ++ + usb:v05DCpA790* + ID_MODEL_FROM_DATABASE=JumpDrive 2GB + +@@ -20930,6 +21251,9 @@ usb:v05DCpA811* + usb:v05DCpA813* + ID_MODEL_FROM_DATABASE=16gB flash thumb drive + ++usb:v05DCpA815* ++ ID_MODEL_FROM_DATABASE=JumpDrive V10 ++ + usb:v05DCpB002* + ID_MODEL_FROM_DATABASE=USB CF Reader + +@@ -20939,6 +21263,9 @@ usb:v05DCpB018* + usb:v05DCpB047* + ID_MODEL_FROM_DATABASE=SDHC Reader [RW047-7000] + ++usb:v05DCpBA02* ++ ID_MODEL_FROM_DATABASE=Workflow CFR1 ++ + usb:v05DCpC753* + ID_MODEL_FROM_DATABASE=JumpDrive TwistTurn + +@@ -21084,7 +21411,7 @@ usb:v05E3p0607* + ID_MODEL_FROM_DATABASE=Logitech G110 Hub + + usb:v05E3p0608* +- ID_MODEL_FROM_DATABASE=USB-2.0 4-Port HUB ++ ID_MODEL_FROM_DATABASE=Hub + + usb:v05E3p0610* + ID_MODEL_FROM_DATABASE=4-port hub +@@ -21158,6 +21485,9 @@ usb:v05E3p0718* + usb:v05E3p0719* + ID_MODEL_FROM_DATABASE=SATA adapter + ++usb:v05E3p0722* ++ ID_MODEL_FROM_DATABASE=SD/MMC card reader ++ + usb:v05E3p0723* + ID_MODEL_FROM_DATABASE=GL827L SD/MMC/MS Flash Card Reader + +@@ -21170,9 +21500,18 @@ usb:v05E3p0727* + usb:v05E3p0731* + ID_MODEL_FROM_DATABASE=GL3310 SATA 3Gb/s Bridge Controller + ++usb:v05E3p0732* ++ ID_MODEL_FROM_DATABASE=All-in-One Cardreader ++ + usb:v05E3p0736* + ID_MODEL_FROM_DATABASE=microSD Reader/Writer + ++usb:v05E3p0741* ++ ID_MODEL_FROM_DATABASE=microSD Card Reader ++ ++usb:v05E3p0743* ++ ID_MODEL_FROM_DATABASE=SDXC and microSDXC CardReader ++ + usb:v05E3p0760* + ID_MODEL_FROM_DATABASE=USB 2.0 Card Reader/Writer + +@@ -21296,6 +21635,9 @@ usb:v05F3p0081* + usb:v05F3p00FF* + ID_MODEL_FROM_DATABASE=VEC Footpedal + ++usb:v05F3p0203* ++ ID_MODEL_FROM_DATABASE=Y-mouse Keyboard & Mouse Adapter ++ + usb:v05F3p020B* + ID_MODEL_FROM_DATABASE=PS2 Adapter + +@@ -21410,6 +21752,9 @@ usb:v05FEp0014* + usb:v05FEp1010* + ID_MODEL_FROM_DATABASE=Optical Wireless + ++usb:v05FEp2001* ++ ID_MODEL_FROM_DATABASE=Microsoft Wireless Receiver 700 ++ + usb:v05FF* + ID_VENDOR_FROM_DATABASE=LeCroy Corp. + +@@ -21434,6 +21779,9 @@ usb:v0603* + usb:v0603p00F1* + ID_MODEL_FROM_DATABASE=Keyboard + ++usb:v0603p00F2* ++ ID_MODEL_FROM_DATABASE=Keyboard (Labtec Ultra Flat Keyboard) ++ + usb:v0603p6871* + ID_MODEL_FROM_DATABASE=Mouse + +@@ -21491,6 +21839,9 @@ usb:v060Bp2231* + usb:v060Bp2270* + ID_MODEL_FROM_DATABASE=Gigabyte K8100 Aivia Gaming Keyboard + ++usb:v060Bp5253* ++ ID_MODEL_FROM_DATABASE=Thermaltake MEKA G-Unit Gaming Keyboard ++ + usb:v060Bp5811* + ID_MODEL_FROM_DATABASE=ACK-571U Wireless Keyboard + +@@ -21911,6 +22262,9 @@ usb:v064EpA110* + usb:v064EpA114* + ID_MODEL_FROM_DATABASE=Lemote Webcam + ++usb:v064EpA116* ++ ID_MODEL_FROM_DATABASE=UVC 1.3MPixel WebCam ++ + usb:v064EpA136* + ID_MODEL_FROM_DATABASE=Asus Integrated Webcam [CN031B] + +@@ -22893,7 +23247,7 @@ usb:v068Ep00F4* + ID_MODEL_FROM_DATABASE=Combatstick + + usb:v068Ep00FA* +- ID_MODEL_FROM_DATABASE=Flight Sim Pedals ++ ID_MODEL_FROM_DATABASE=Ch Throttle Quadrant + + usb:v068Ep00FF* + ID_MODEL_FROM_DATABASE=Flight Sim Yoke +@@ -22955,6 +23309,9 @@ usb:v0698p9999* + usb:v0699* + ID_VENDOR_FROM_DATABASE=Tektronix, Inc. + ++usb:v0699p0347* ++ ID_MODEL_FROM_DATABASE=AFG 3022B ++ + usb:v069A* + ID_VENDOR_FROM_DATABASE=Askey Computer Corp. + +@@ -23486,6 +23843,9 @@ usb:v06C2* + usb:v06C2p0030* + ID_MODEL_FROM_DATABASE=PhidgetRFID + ++usb:v06C2p0031* ++ ID_MODEL_FROM_DATABASE=RFID reader ++ + usb:v06C2p0038* + ID_MODEL_FROM_DATABASE=4-Motor PhidgetServo v3.0 + +@@ -23789,6 +24149,12 @@ usb:v06D3p0394* + usb:v06D3p03A1* + ID_MODEL_FROM_DATABASE=CP9550D/DW Port + ++usb:v06D3p3B30* ++ ID_MODEL_FROM_DATABASE=CP-D70DW / CP-D707DW ++ ++usb:v06D3p3B31* ++ ID_MODEL_FROM_DATABASE=CP-K60DW-S ++ + usb:v06D4* + ID_VENDOR_FROM_DATABASE=Cisco Systems + +@@ -24575,6 +24941,9 @@ usb:v072Fp1000* + usb:v072Fp1001* + ID_MODEL_FROM_DATABASE=PLDT Drive + ++usb:v072Fp2200* ++ ID_MODEL_FROM_DATABASE=ACR122U ++ + usb:v072Fp8002* + ID_MODEL_FROM_DATABASE=AET63 BioTRUSTKey + +@@ -25046,6 +25415,12 @@ usb:v0765* + usb:v0765p5001* + ID_MODEL_FROM_DATABASE=Huey PRO Colorimeter + ++usb:v0765p5020* ++ ID_MODEL_FROM_DATABASE=i1 Display Pro ++ ++usb:v0765p6003* ++ ID_MODEL_FROM_DATABASE=ColorMunki Smile ++ + usb:v0765pD094* + ID_MODEL_FROM_DATABASE=X-Rite DTP94 [Quato Silver Haze Pro] + +@@ -25325,12 +25700,24 @@ usb:v0781p5530* + usb:v0781p5567* + ID_MODEL_FROM_DATABASE=Cruzer Blade + ++usb:v0781p556C* ++ ID_MODEL_FROM_DATABASE=Ultra ++ ++usb:v0781p556D* ++ ID_MODEL_FROM_DATABASE=Memory Vault ++ + usb:v0781p5571* + ID_MODEL_FROM_DATABASE=Cruzer Fit + ++usb:v0781p5576* ++ ID_MODEL_FROM_DATABASE=Cruzer Facet ++ + usb:v0781p5580* + ID_MODEL_FROM_DATABASE=SDCZ80 Flash Drive + ++usb:v0781p5581* ++ ID_MODEL_FROM_DATABASE=Ultra ++ + usb:v0781p5E10* + ID_MODEL_FROM_DATABASE=Encrypted + +@@ -25830,7 +26217,7 @@ usb:v07AAp001A* + ID_MODEL_FROM_DATABASE=ULUSB-11 Key + + usb:v07AAp001C* +- ID_MODEL_FROM_DATABASE=CG-WLUSB2GTST 802.11g Wireless Adapter [Intersil ISL3887] ++ ID_MODEL_FROM_DATABASE=CG-WLUSB2GT 802.11g Wireless Adapter [Intersil ISL3880] + + usb:v07AAp002E* + ID_MODEL_FROM_DATABASE=CG-WLUSB2GPX [Ralink RT2571W] +@@ -26114,6 +26501,9 @@ usb:v07B4p0114* + usb:v07B4p0118* + ID_MODEL_FROM_DATABASE=Mju Mini Digital/Mju Digital 500 Camera / Stylus 850 SW + ++usb:v07B4p0125* ++ ID_MODEL_FROM_DATABASE=Tough TG-1 Camera ++ + usb:v07B4p0184* + ID_MODEL_FROM_DATABASE=P-S100 port + +@@ -26441,6 +26831,9 @@ usb:v07C4pA400* + usb:v07C4pA600* + ID_MODEL_FROM_DATABASE=Card Reader + ++usb:v07C4pA604* ++ ID_MODEL_FROM_DATABASE=12-in-1 Card Reader ++ + usb:v07C4pAD01* + ID_MODEL_FROM_DATABASE=Mass Storage Device + +@@ -26474,6 +26867,9 @@ usb:v07C4pC010* + usb:v07C5* + ID_VENDOR_FROM_DATABASE=APG Cash Drawer + ++usb:v07C5p0500* ++ ID_MODEL_FROM_DATABASE=Cash Drawer ++ + usb:v07C6* + ID_VENDOR_FROM_DATABASE=ShareWave, Inc. + +@@ -27140,6 +27536,9 @@ usb:v0803* + usb:v0803p1300* + ID_MODEL_FROM_DATABASE=V92 Faxmodem + ++usb:v0803p3095* ++ ID_MODEL_FROM_DATABASE=V.92 56K Mini External Modem Model 3095 ++ + usb:v0803p4310* + ID_MODEL_FROM_DATABASE=4410a Wireless-G Adapter [Intersil ISL3887] + +@@ -27713,6 +28112,9 @@ usb:v0846p9018* + usb:v0846p9020* + ID_MODEL_FROM_DATABASE=WNA3100(v1) Wireless-N 300 [Broadcom BCM43231] + ++usb:v0846p9021* ++ ID_MODEL_FROM_DATABASE=WNA3100M(v1) Wireless-N 300 [Realtek RTL8192CU] ++ + usb:v0846p9030* + ID_MODEL_FROM_DATABASE=WNA1100 Wireless-N 150 [Atheros AR9271] + +@@ -27722,9 +28124,21 @@ usb:v0846p9040* + usb:v0846p9041* + ID_MODEL_FROM_DATABASE=WNA1000M 802.11bgn [Realtek RTL8188CUS] + ++usb:v0846p9042* ++ ID_MODEL_FROM_DATABASE=On Networks N150MA 802.11bgn [Realtek RTL8188CUS] ++ ++usb:v0846p9050* ++ ID_MODEL_FROM_DATABASE=A6200 802.11a/b/g/n/ac Wireless Adapter [Broadcom BCM43526] ++ ++usb:v0846p9052* ++ ID_MODEL_FROM_DATABASE=A6100 AC600 DB Wireless Adapter [Realtek RTL8811AU] ++ + usb:v0846pA001* + ID_MODEL_FROM_DATABASE=PA101 10 Mbps HPNA Home Phoneline RJ-1 + ++usb:v0846pF001* ++ ID_MODEL_FROM_DATABASE=On Networks N300MA 802.11bgn [Realtek RTL8192CU] ++ + usb:v084D* + ID_VENDOR_FROM_DATABASE=Minton Optic Industry Co., Inc. + +@@ -27875,8 +28289,17 @@ usb:v085Ap8027* + usb:v085C* + ID_VENDOR_FROM_DATABASE=ColorVision, Inc. + ++usb:v085Cp0100* ++ ID_MODEL_FROM_DATABASE=Spyder 1 ++ + usb:v085Cp0200* +- ID_MODEL_FROM_DATABASE=Monitor Spyder ++ ID_MODEL_FROM_DATABASE=Spyder 2 ++ ++usb:v085Cp0300* ++ ID_MODEL_FROM_DATABASE=Spyder 3 ++ ++usb:v085Cp0400* ++ ID_MODEL_FROM_DATABASE=Spyder 4 + + usb:v0862* + ID_VENDOR_FROM_DATABASE=Teletrol Systems, Inc. +@@ -28127,6 +28550,12 @@ usb:v0892* + usb:v0892p0101* + ID_MODEL_FROM_DATABASE=Smartdio Reader/Writer + ++usb:v0894* ++ ID_VENDOR_FROM_DATABASE=TSI Incorporated ++ ++usb:v0894p0010* ++ ID_MODEL_FROM_DATABASE=Remote NDIS Network Device ++ + usb:v0897* + ID_VENDOR_FROM_DATABASE=Lauterbach + +@@ -28181,6 +28610,18 @@ usb:v08A9p0015* + usb:v08AE* + ID_VENDOR_FROM_DATABASE=Macally (Mace Group, Inc.) + ++usb:v08B0* ++ ID_VENDOR_FROM_DATABASE=Metrohm ++ ++usb:v08B0p0006* ++ ID_MODEL_FROM_DATABASE=814 Sample Processor ++ ++usb:v08B0p0015* ++ ID_MODEL_FROM_DATABASE=857 Titrando ++ ++usb:v08B0p001A* ++ ID_MODEL_FROM_DATABASE=852 Titrando ++ + usb:v08B4* + ID_VENDOR_FROM_DATABASE=Sorenson Vision, Inc. + +@@ -29036,6 +29477,12 @@ usb:v0906* + usb:v0908* + ID_VENDOR_FROM_DATABASE=Siemens AG + ++usb:v0908p01F4* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET CP 5711 ++ ++usb:v0908p01FE* ++ ID_MODEL_FROM_DATABASE=SIMATIC NET PC Adapter A2 ++ + usb:v0908p2701* + ID_MODEL_FROM_DATABASE=ShenZhen SANZHAI Technology Co.,Ltd Spy Pen VGA + +@@ -29285,12 +29732,18 @@ usb:v091Ep23CC* + usb:v091Ep2459* + ID_MODEL_FROM_DATABASE=GPSmap 62/78 series + ++usb:v091Ep2491* ++ ID_MODEL_FROM_DATABASE=Edge 800 ++ + usb:v091Ep2519* + ID_MODEL_FROM_DATABASE=eTrex 30 + + usb:v091Ep2535* + ID_MODEL_FROM_DATABASE=Edge 800 + ++usb:v091Ep253C* ++ ID_MODEL_FROM_DATABASE=GPSmap 62sc ++ + usb:v091Ep255B* + ID_MODEL_FROM_DATABASE=Nuvi 2505LM + +@@ -29315,12 +29768,18 @@ usb:v0922p0007* + usb:v0922p0009* + ID_MODEL_FROM_DATABASE=LabelWriter 310 + ++usb:v0922p0019* ++ ID_MODEL_FROM_DATABASE=LabelWriter 400 ++ + usb:v0922p001A* + ID_MODEL_FROM_DATABASE=LabelWriter 400 Turbo + + usb:v0922p0020* + ID_MODEL_FROM_DATABASE=LabelWriter 450 + ++usb:v0922p1001* ++ ID_MODEL_FROM_DATABASE=LabelManager PnP ++ + usb:v0923* + ID_VENDOR_FROM_DATABASE=IC Media Corp. + +@@ -29363,6 +29822,9 @@ usb:v0925* + usb:v0925p0005* + ID_MODEL_FROM_DATABASE=Gamtec.,Ltd SmartJoy PLUS Adapter + ++usb:v0925p03E8* ++ ID_MODEL_FROM_DATABASE=Wii Classic Controller Adapter ++ + usb:v0925p3881* + ID_MODEL_FROM_DATABASE=Saleae Logic + +@@ -29417,6 +29879,9 @@ usb:v0930p000C* + usb:v0930p0010* + ID_MODEL_FROM_DATABASE=Gigabeat S (mtp) + ++usb:v0930p0200* ++ ID_MODEL_FROM_DATABASE=Integrated Bluetooth (Taiyo Yuden) ++ + usb:v0930p0301* + ID_MODEL_FROM_DATABASE=PCX1100U Cable Modem (WDM) + +@@ -29483,6 +29948,9 @@ usb:v0930p070B* + usb:v0930p0A07* + ID_MODEL_FROM_DATABASE=WLM-10U1 802.11abgn Wireless Adapter [Ralink RT3572] + ++usb:v0930p0A13* ++ ID_MODEL_FROM_DATABASE=AX88179 Gigabit Ethernet [Toshiba] ++ + usb:v0930p0B05* + ID_MODEL_FROM_DATABASE=PX1220E-1G25 External hard drive + +@@ -29691,7 +30159,7 @@ usb:v0939* + ID_VENDOR_FROM_DATABASE=Lumberg, Inc. + + usb:v0939p0B15* +- ID_MODEL_FROM_DATABASE=Toshiba Stor.E Alu 2 1TB (PX1710E-1HJ0) ++ ID_MODEL_FROM_DATABASE=Toshiba Stor.E Alu 2 + + usb:v093A* + ID_VENDOR_FROM_DATABASE=Pixart Imaging, Inc. +@@ -29753,6 +30221,9 @@ usb:v093Ap260F* + usb:v093Ap2621* + ID_MODEL_FROM_DATABASE=PAC731x Trust Webcam + ++usb:v093Ap2622* ++ ID_MODEL_FROM_DATABASE=Webcam Genius ++ + usb:v093Ap2624* + ID_MODEL_FROM_DATABASE=Webcam + +@@ -29951,6 +30422,9 @@ usb:v0951p1653* + usb:v0951p1656* + ID_MODEL_FROM_DATABASE=DataTraveler Ultimate G2 + ++usb:v0951p1665* ++ ID_MODEL_FROM_DATABASE=Digital DataTraveler SE9 64GB ++ + usb:v0951p1689* + ID_MODEL_FROM_DATABASE=DataTraveler SE9 + +@@ -29993,6 +30467,9 @@ usb:v0957p0200* + usb:v0957p0202* + ID_MODEL_FROM_DATABASE=E-Video DC-350 Camera + ++usb:v0957p0407* ++ ID_MODEL_FROM_DATABASE=33220A Waveform Generator ++ + usb:v0957p0518* + ID_MODEL_FROM_DATABASE=82357B GPIB Interface + +@@ -30033,7 +30510,7 @@ usb:v095Dp0001* + ID_MODEL_FROM_DATABASE=Polycom ViaVideo + + usb:v0967* +- ID_VENDOR_FROM_DATABASE=Acer (??) ++ ID_VENDOR_FROM_DATABASE=Acer NeWeb Corp. + + usb:v0967p0204* + ID_MODEL_FROM_DATABASE=WarpLink 802.11b Adapter +@@ -30056,6 +30533,12 @@ usb:v096Ep0807* + usb:v0971* + ID_VENDOR_FROM_DATABASE=Gretag-Macbeth AG + ++usb:v0971p2000* ++ ID_MODEL_FROM_DATABASE=i1 Pro ++ ++usb:v0971p2001* ++ ID_MODEL_FROM_DATABASE=i1 Monitor ++ + usb:v0971p2003* + ID_MODEL_FROM_DATABASE=Eye-One display + +@@ -30063,7 +30546,7 @@ usb:v0971p2005* + ID_MODEL_FROM_DATABASE=Huey + + usb:v0971p2007* +- ID_MODEL_FROM_DATABASE=ColorMunki ++ ID_MODEL_FROM_DATABASE=ColorMunki Photo + + usb:v0973* + ID_VENDOR_FROM_DATABASE=Schlumberger +@@ -30182,6 +30665,9 @@ usb:v099Ap0638* + usb:v099Ap610C* + ID_MODEL_FROM_DATABASE=EL-610 Super Mini Electron luminescent Keyboard + ++usb:v099Ap713A* ++ ID_MODEL_FROM_DATABASE=WK-713 Multimedia Keyboard ++ + usb:v099Ap7160* + ID_MODEL_FROM_DATABASE=Hyper Slim Keyboard + +@@ -30375,7 +30861,10 @@ usb:v09D3* + ID_VENDOR_FROM_DATABASE=Com One + + usb:v09D3p0001* +- ID_MODEL_FROM_DATABASE=ISDN TA ++ ID_MODEL_FROM_DATABASE=ISDN TA / Light Rider 128K ++ ++usb:v09D3p000B* ++ ID_MODEL_FROM_DATABASE=Bluetooth Adapter class 1 [BlueLight] + + usb:v09D7* + ID_VENDOR_FROM_DATABASE=Novatel Wireless +@@ -30596,6 +31085,12 @@ usb:v0A07p00DA* + usb:v0A0B* + ID_VENDOR_FROM_DATABASE=Cybex Computer Products Co. + ++usb:v0A0D* ++ ID_VENDOR_FROM_DATABASE=Servergy, Inc ++ ++usb:v0A0Dp2514* ++ ID_MODEL_FROM_DATABASE=CTS-1000 Internal Hub ++ + usb:v0A11* + ID_VENDOR_FROM_DATABASE=Xentec, Inc. + +@@ -30887,6 +31382,9 @@ usb:v0A48p5024* + usb:v0A48p5025* + ID_MODEL_FROM_DATABASE=Mass Storage Device + ++usb:v0A4A* ++ ID_VENDOR_FROM_DATABASE=Ploytec GmbH ++ + usb:v0A4B* + ID_VENDOR_FROM_DATABASE=Fujitsu Media Devices, Ltd + +@@ -31217,6 +31715,9 @@ usb:v0A5CpBD11* + usb:v0A5CpBD13* + ID_MODEL_FROM_DATABASE=BCM4323 802.11abgn Wireless Adapter + ++usb:v0A5CpBD16* ++ ID_MODEL_FROM_DATABASE=BCM4319 802.11bgn Wireless Adapter ++ + usb:v0A5CpBD17* + ID_MODEL_FROM_DATABASE=BCM43236 802.11abgn Wireless Adapter + +@@ -31775,6 +32276,9 @@ usb:v0AC8pC33F* + usb:v0AC8pC429* + ID_MODEL_FROM_DATABASE=Lenovo ThinkCentre Web Camera + ++usb:v0AC8pC42D* ++ ID_MODEL_FROM_DATABASE=Lenovo IdeaCentre Web Camera ++ + usb:v0AC9* + ID_VENDOR_FROM_DATABASE=Micro Solutions, Inc. + +@@ -31823,6 +32327,9 @@ usb:v0ACDp0630* + usb:v0ACDp0810* + ID_MODEL_FROM_DATABASE=SecurePIN (IDPA-506100Y) PIN Pad + ++usb:v0ACDp2030* ++ ID_MODEL_FROM_DATABASE=ValueMag Magnetic Stripe Reader ++ + usb:v0ACE* + ID_VENDOR_FROM_DATABASE=ZyDAS + +@@ -32024,6 +32531,12 @@ usb:v0AF9p0010* + usb:v0AF9p0011* + ID_MODEL_FROM_DATABASE=Micro Innovations IC50C Webcam + ++usb:v0AFA* ++ ID_VENDOR_FROM_DATABASE=DMC Co., Ltd. ++ ++usb:v0AFAp07D2* ++ ID_MODEL_FROM_DATABASE=Controller Board for Projected Capacitive Touch Screen DUS3000 ++ + usb:v0AFC* + ID_VENDOR_FROM_DATABASE=Zaptronix Ltd + +@@ -32042,6 +32555,9 @@ usb:v0B00* + usb:v0B05* + ID_VENDOR_FROM_DATABASE=ASUSTek Computer, Inc. + ++usb:v0B05p0001* ++ ID_MODEL_FROM_DATABASE=MeMO Pad HD 7 (CD-ROM mode) ++ + usb:v0B05p1101* + ID_MODEL_FROM_DATABASE=Mass Storage (UISDMC4S) + +@@ -32147,6 +32663,9 @@ usb:v0B05p1784* + usb:v0B05p1786* + ID_MODEL_FROM_DATABASE=USB-N10 802.11n Network Adapter [Realtek RTL8188SU] + ++usb:v0B05p1788* ++ ID_MODEL_FROM_DATABASE=BT-270 Bluetooth Adapter ++ + usb:v0B05p1791* + ID_MODEL_FROM_DATABASE=WL-167G v3 802.11n Adapter [Realtek RTL8188SU] + +@@ -32159,12 +32678,18 @@ usb:v0B05p179E* + usb:v0B05p179F* + ID_MODEL_FROM_DATABASE=Eee Note EA800 (tablet mode) + ++usb:v0B05p17A0* ++ ID_MODEL_FROM_DATABASE=Xonar U3 sound card ++ + usb:v0B05p17A1* + ID_MODEL_FROM_DATABASE=Eee Note EA800 (mass storage mode) + + usb:v0B05p17AB* + ID_MODEL_FROM_DATABASE=USB-N13 802.11n Network Adapter (rev. B1) [Realtek RTL8192CU] + ++usb:v0B05p17C9* ++ ID_MODEL_FROM_DATABASE=USB-AC53 802.11a/b/g/n/ac Wireless Adapter [Broadcom BCM43526] ++ + usb:v0B05p4C80* + ID_MODEL_FROM_DATABASE=Transformer Pad TF300TG + +@@ -32183,6 +32708,12 @@ usb:v0B05p4D01* + usb:v0B05p4DAF* + ID_MODEL_FROM_DATABASE=Transformer Pad Infinity TF700 (Fastboot) + ++usb:v0B05p5410* ++ ID_MODEL_FROM_DATABASE=MeMO Pad HD 7 (MTP mode) ++ ++usb:v0B05p5412* ++ ID_MODEL_FROM_DATABASE=MeMO Pad HD 7 (PTP mode) ++ + usb:v0B05p6101* + ID_MODEL_FROM_DATABASE=Cable Modem + +@@ -32228,9 +32759,15 @@ usb:v0B0E* + usb:v0B0Ep0420* + ID_MODEL_FROM_DATABASE=Jabra SPEAK 510 + ++usb:v0B0Ep094D* ++ ID_MODEL_FROM_DATABASE=GN Netcom / Jabra REVO Wireless ++ + usb:v0B0Ep1022* + ID_MODEL_FROM_DATABASE=Jabra PRO 9450, Type 9400BS (DECT Headset) + ++usb:v0B0Ep2007* ++ ID_MODEL_FROM_DATABASE=GN 2000 Stereo Corded Headset ++ + usb:v0B0Ep620C* + ID_MODEL_FROM_DATABASE=Jabra BT620s + +@@ -32291,6 +32828,9 @@ usb:v0B33* + usb:v0B33p0020* + ID_MODEL_FROM_DATABASE=ShuttleXpress + ++usb:v0B33p0700* ++ ID_MODEL_FROM_DATABASE=RollerMouse Pro ++ + usb:v0B37* + ID_VENDOR_FROM_DATABASE=Hitachi ULSI Systems Co., Ltd + +@@ -32687,6 +33227,9 @@ usb:v0B95p1720* + usb:v0B95p1780* + ID_MODEL_FROM_DATABASE=AX88178 + ++usb:v0B95p1790* ++ ID_MODEL_FROM_DATABASE=AX88179 Gigabit Ethernet ++ + usb:v0B95p7720* + ID_MODEL_FROM_DATABASE=AX88772 + +@@ -32786,6 +33329,9 @@ usb:v0BAFp011B* + usb:v0BAFp0121* + ID_MODEL_FROM_DATABASE=USR5423 802.11bg Wireless Adapter [ZyDAS ZD1211B] + ++usb:v0BAFp0303* ++ ID_MODEL_FROM_DATABASE=USR5637 56K Faxmodem ++ + usb:v0BAFp6112* + ID_MODEL_FROM_DATABASE=FaxModem Model 5633 + +@@ -33332,6 +33878,9 @@ usb:v0BB4p0C01* + usb:v0BB4p0C02* + ID_MODEL_FROM_DATABASE=Dream / ADP1 / G1 / Magic / Tattoo (Debug) + ++usb:v0BB4p0C03* ++ ID_MODEL_FROM_DATABASE=Android Phone [Fairphone First Edition (FP1)] ++ + usb:v0BB4p0C13* + ID_MODEL_FROM_DATABASE=Diamond + +@@ -33371,6 +33920,12 @@ usb:v0BB4p0CA2* + usb:v0BB4p0CA5* + ID_MODEL_FROM_DATABASE=Android Phone [Evo Shift 4G] + ++usb:v0BB4p0CAE* ++ ID_MODEL_FROM_DATABASE=T-Mobile MyTouch 4G Slide [Doubleshot] ++ ++usb:v0BB4p0DEA* ++ ID_MODEL_FROM_DATABASE=M7_UL [HTC One] ++ + usb:v0BB4p0FF8* + ID_MODEL_FROM_DATABASE=Desire HD (Tethering Mode) + +@@ -33443,18 +33998,33 @@ usb:v0BC2p2320* + usb:v0BC2p3008* + ID_MODEL_FROM_DATABASE=FreeAgent Desk 1TB + ++usb:v0BC2p3101* ++ ID_MODEL_FROM_DATABASE=FreeAgent XTreme 640GB ++ ++usb:v0BC2p3312* ++ ID_MODEL_FROM_DATABASE=SRD00F2 [Expansion Desktop Drive 2TB] ++ + usb:v0BC2p3320* + ID_MODEL_FROM_DATABASE=SRD00F2 [Expansion Desktop Drive] + + usb:v0BC2p3332* + ID_MODEL_FROM_DATABASE=Expansion + ++usb:v0BC2p5020* ++ ID_MODEL_FROM_DATABASE=FreeAgent GoFlex ++ + usb:v0BC2p5021* + ID_MODEL_FROM_DATABASE=FreeAgent GoFlex USB 2.0 + ++usb:v0BC2p5030* ++ ID_MODEL_FROM_DATABASE=FreeAgent GoFlex Upgrade Cable STAE104 ++ + usb:v0BC2p5031* + ID_MODEL_FROM_DATABASE=FreeAgent GoFlex USB 3.0 + ++usb:v0BC2p5070* ++ ID_MODEL_FROM_DATABASE=FreeAgent GoFlex Desk ++ + usb:v0BC2p50A1* + ID_MODEL_FROM_DATABASE=FreeAgent GoFlex Desk + +@@ -33476,6 +34046,9 @@ usb:v0BC2pA0A1* + usb:v0BC2pA0A4* + ID_MODEL_FROM_DATABASE=Backup Plus Desktop Drive + ++usb:v0BC2pAB00* ++ ID_MODEL_FROM_DATABASE=Slim Portable Drive ++ + usb:v0BC3* + ID_VENDOR_FROM_DATABASE=IPWireless, Inc. + +@@ -33650,6 +34223,12 @@ usb:v0BDAp0184* + usb:v0BDAp0186* + ID_MODEL_FROM_DATABASE=Card Reader + ++usb:v0BDAp0301* ++ ID_MODEL_FROM_DATABASE=multicard reader ++ ++usb:v0BDAp1724* ++ ID_MODEL_FROM_DATABASE=RTL8723AU 802.11n WLAN Adapter ++ + usb:v0BDAp2831* + ID_MODEL_FROM_DATABASE=RTL2831U DVB-T + +@@ -33707,6 +34286,9 @@ usb:v0BDAp8198* + usb:v0BDAp8199* + ID_MODEL_FROM_DATABASE=RTL8187SU 802.11g WLAN Adapter + ++usb:v0BDAp8812* ++ ID_MODEL_FROM_DATABASE=RTL8812AU 802.11a/b/g/n/ac WLAN Adapter ++ + usb:v0BDB* + ID_VENDOR_FROM_DATABASE=Ericsson Business Mobile Networks BV + +@@ -34038,7 +34620,7 @@ usb:v0C24p0019* + ID_MODEL_FROM_DATABASE=Bluetooth Device + + usb:v0C24p0021* +- ID_MODEL_FROM_DATABASE=Bluetooth Device ++ ID_MODEL_FROM_DATABASE=Bluetooth Device (V2.1+EDR) + + usb:v0C24p0C24* + ID_MODEL_FROM_DATABASE=Bluetooth Device(SAMPLE) +@@ -34142,6 +34724,9 @@ usb:v0C45* + usb:v0C45p0011* + ID_MODEL_FROM_DATABASE=EBUDDY + ++usb:v0C45p0520* ++ ID_MODEL_FROM_DATABASE=MaxTrack Wireless Mouse ++ + usb:v0C45p1018* + ID_MODEL_FROM_DATABASE=Compact Flash storage memory card reader + +@@ -34496,9 +35081,15 @@ usb:v0C45p62C0* + usb:v0C45p62E0* + ID_MODEL_FROM_DATABASE=MSI Starcam Racer + ++usb:v0C45p6300* ++ ID_MODEL_FROM_DATABASE=PC Microscope camera ++ + usb:v0C45p6310* + ID_MODEL_FROM_DATABASE=Sonix USB 2.0 Camera + ++usb:v0C45p6340* ++ ID_MODEL_FROM_DATABASE=Camera ++ + usb:v0C45p6341* + ID_MODEL_FROM_DATABASE=Defender G-Lens 2577 HD720p Camera + +@@ -34526,6 +35117,12 @@ usb:v0C45p6419* + usb:v0C45p641D* + ID_MODEL_FROM_DATABASE=1.3 MPixel Integrated Webcam + ++usb:v0C45p643F* ++ ID_MODEL_FROM_DATABASE=Dell Integrated HD Webcam ++ ++usb:v0C45p644D* ++ ID_MODEL_FROM_DATABASE=1.3 MPixel Integrated Webcam ++ + usb:v0C45p6480* + ID_MODEL_FROM_DATABASE=Sonix 1.3 MP Laptop Integrated Webcam + +@@ -34535,6 +35132,9 @@ usb:v0C45p648B* + usb:v0C45p64BD* + ID_MODEL_FROM_DATABASE=Sony Visual Communication Camera + ++usb:v0C45p7401* ++ ID_MODEL_FROM_DATABASE=TEMPer Temperature Sensor ++ + usb:v0C45p7402* + ID_MODEL_FROM_DATABASE=TEMPerHUM Temperature & Humidity Sensor + +@@ -35390,6 +35990,9 @@ usb:v0CF3p3000* + usb:v0CF3p3002* + ID_MODEL_FROM_DATABASE=AR3011 Bluetooth + ++usb:v0CF3p3004* ++ ID_MODEL_FROM_DATABASE=AR3012 Bluetooth 4.0 ++ + usb:v0CF3p3005* + ID_MODEL_FROM_DATABASE=AR3011 Bluetooth + +@@ -35564,6 +36167,15 @@ usb:v0D35* + usb:v0D3A* + ID_VENDOR_FROM_DATABASE=Posiflex Technologies, Inc. + ++usb:v0D3Ap0206* ++ ID_MODEL_FROM_DATABASE=Series 3xxx Cash Drawer ++ ++usb:v0D3Ap0207* ++ ID_MODEL_FROM_DATABASE=Series 3xxx Cash Drawer ++ ++usb:v0D3Ap0500* ++ ID_MODEL_FROM_DATABASE=Magnetic Stripe Reader ++ + usb:v0D3C* + ID_VENDOR_FROM_DATABASE=Sri Cable Technology, Ltd + +@@ -35573,6 +36185,9 @@ usb:v0D3D* + usb:v0D3Dp0001* + ID_MODEL_FROM_DATABASE=HID Keyboard + ++usb:v0D3Dp0040* ++ ID_MODEL_FROM_DATABASE=PS/2 Adapter ++ + usb:v0D3E* + ID_VENDOR_FROM_DATABASE=Fitcom, inc. + +@@ -35651,6 +36266,9 @@ usb:v0D49p7010* + usb:v0D49p7100* + ID_MODEL_FROM_DATABASE=OneTouch II 300GB External Hard Disk + ++usb:v0D49p7310* ++ ID_MODEL_FROM_DATABASE=OneTouch 4 ++ + usb:v0D49p7410* + ID_MODEL_FROM_DATABASE=Mobile Hard Disk Drive (1TB) + +@@ -35858,6 +36476,9 @@ usb:v0D78* + usb:v0D7A* + ID_VENDOR_FROM_DATABASE=MARX Datentechnik GmbH + ++usb:v0D7Ap0001* ++ ID_MODEL_FROM_DATABASE=CrypToken ++ + usb:v0D7B* + ID_VENDOR_FROM_DATABASE=Wellco Technology Co., Ltd + +@@ -36404,6 +37025,12 @@ usb:v0DB7* + usb:v0DB7p0002* + ID_MODEL_FROM_DATABASE=Goldpfeil P-LAN + ++usb:v0DBA* ++ ID_VENDOR_FROM_DATABASE=Digidesign ++ ++usb:v0DBAp3000* ++ ID_MODEL_FROM_DATABASE=Mbox 2 ++ + usb:v0DBC* + ID_VENDOR_FROM_DATABASE=A&D Medical + +@@ -36776,6 +37403,9 @@ usb:v0DF6p0060* + usb:v0DF6p0062* + ID_MODEL_FROM_DATABASE=WLA-5000 802.11abgn [Ralink RT3572] + ++usb:v0DF6p0072* ++ ID_MODEL_FROM_DATABASE=AX88179 Gigabit Ethernet [Sitecom] ++ + usb:v0DF6p061C* + ID_MODEL_FROM_DATABASE=LN-028 Network USB 2.0 Adapter + +@@ -37253,6 +37883,9 @@ usb:v0E79p14AD* + usb:v0E79p150E* + ID_MODEL_FROM_DATABASE=80 G9 + ++usb:v0E79p3001* ++ ID_MODEL_FROM_DATABASE=40 Titanium ++ + usb:v0E7B* + ID_VENDOR_FROM_DATABASE=On-Tech Industry Co., Ltd + +@@ -37292,9 +37925,15 @@ usb:v0E8Dp1806* + usb:v0E8Dp1836* + ID_MODEL_FROM_DATABASE=Samsung SE-S084 Super WriteMaster Slim External DVD writer + ++usb:v0E8Dp2000* ++ ID_MODEL_FROM_DATABASE=MT65xx Preloader ++ + usb:v0E8Dp3329* + ID_MODEL_FROM_DATABASE=Qstarz BT-Q1000XT + ++usb:v0E8Dp763E* ++ ID_MODEL_FROM_DATABASE=MT7630e Bluetooth Adapter ++ + usb:v0E8F* + ID_VENDOR_FROM_DATABASE=GreenAsia Inc. + +@@ -37302,7 +37941,7 @@ usb:v0E8Fp0003* + ID_MODEL_FROM_DATABASE=MaxFire Blaze2 + + usb:v0E8Fp0012* +- ID_MODEL_FROM_DATABASE=USB Wireless 2.4GHz Gamepad ++ ID_MODEL_FROM_DATABASE=Joystick/Gamepad + + usb:v0E8Fp0016* + ID_MODEL_FROM_DATABASE=4 port USB 1.1 hub UH-174 +@@ -37436,9 +38075,18 @@ usb:v0EB7* + usb:v0EB8* + ID_VENDOR_FROM_DATABASE=Mettler Toledo + ++usb:v0EB8p2200* ++ ID_MODEL_FROM_DATABASE=Ariva Scale ++ + usb:v0EB8pF000* + ID_MODEL_FROM_DATABASE=PS60 Scale + ++usb:v0EBB* ++ ID_VENDOR_FROM_DATABASE=Thermo Fisher Scientific ++ ++usb:v0EBBp0002* ++ ID_MODEL_FROM_DATABASE=FT-IR Spectrometer ++ + usb:v0EBE* + ID_VENDOR_FROM_DATABASE=VWeb Corp. + +@@ -37559,6 +38207,12 @@ usb:v0EEFp0001* + usb:v0EEFp0002* + ID_MODEL_FROM_DATABASE=Touchscreen Controller(Professional) + ++usb:v0EEFp7200* ++ ID_MODEL_FROM_DATABASE=Touchscreen Controller ++ ++usb:v0EEFpA802* ++ ID_MODEL_FROM_DATABASE=eGalaxTouch EXC7920 ++ + usb:v0EF0* + ID_VENDOR_FROM_DATABASE=Hitachi Cable, Ltd + +@@ -37670,6 +38324,12 @@ usb:v0F12* + usb:v0F13* + ID_VENDOR_FROM_DATABASE=Acetek Technology Co., Ltd + ++usb:v0F14* ++ ID_VENDOR_FROM_DATABASE=Ingenico ++ ++usb:v0F14p0012* ++ ID_MODEL_FROM_DATABASE=Vital'Act 3S ++ + usb:v0F18* + ID_VENDOR_FROM_DATABASE=Finger Lakes Instrumentation + +@@ -37754,6 +38414,12 @@ usb:v0F37* + usb:v0F38* + ID_VENDOR_FROM_DATABASE=Nien-Yi Industrial Corp. + ++usb:v0F39* ++ ID_VENDOR_FROM_DATABASE=TG3 Electronics ++ ++usb:v0F39p0876* ++ ID_MODEL_FROM_DATABASE=Keyboard [87 Francium Pro] ++ + usb:v0F3D* + ID_VENDOR_FROM_DATABASE=Airprime, Incorporated + +@@ -37841,6 +38507,9 @@ usb:v0F63* + usb:v0F63p0010* + ID_MODEL_FROM_DATABASE=Leapster Explorer + ++usb:v0F63p0022* ++ ID_MODEL_FROM_DATABASE=Leap Reader ++ + usb:v0F63p0500* + ID_MODEL_FROM_DATABASE=Fly Fusion + +@@ -37928,6 +38597,9 @@ usb:v0F6Ep0404* + usb:v0F73* + ID_VENDOR_FROM_DATABASE=DFI + ++usb:v0F78* ++ ID_VENDOR_FROM_DATABASE=Guntermann & Drunck GmbH ++ + usb:v0F7C* + ID_VENDOR_FROM_DATABASE=DQ Technology, Inc. + +@@ -38064,7 +38736,7 @@ usb:v0FCAp8001* + ID_MODEL_FROM_DATABASE=Blackberry Handheld + + usb:v0FCAp8004* +- ID_MODEL_FROM_DATABASE=Blackberry Handheld ++ ID_MODEL_FROM_DATABASE=Blackberry + + usb:v0FCAp8007* + ID_MODEL_FROM_DATABASE=Blackberry Handheld +@@ -38147,6 +38819,12 @@ usb:v0FCEp3138* + usb:v0FCEp3149* + ID_MODEL_FROM_DATABASE=Xperia X8 + ++usb:v0FCEp514F* ++ ID_MODEL_FROM_DATABASE=Xperia arc S [Adb-Enable Mode] ++ ++usb:v0FCEp5169* ++ ID_MODEL_FROM_DATABASE=Xperia S [Adb-Enable Mode] ++ + usb:v0FCEp5177* + ID_MODEL_FROM_DATABASE=Xperia Ion [Debug Mode] + +@@ -38309,6 +38987,9 @@ usb:v0FCEpE166* + usb:v0FCEpE167* + ID_MODEL_FROM_DATABASE=XPERIA mini + ++usb:v0FCEpF0FA* ++ ID_MODEL_FROM_DATABASE=Liveview micro display MN800 in DFU mode ++ + usb:v0FCF* + ID_VENDOR_FROM_DATABASE=Dynastream Innovations, Inc. + +@@ -38316,13 +38997,16 @@ usb:v0FCFp1003* + ID_MODEL_FROM_DATABASE=ANT Development Board + + usb:v0FCFp1004* +- ID_MODEL_FROM_DATABASE=ANT2USB ++ ID_MODEL_FROM_DATABASE=ANTUSB Stick + + usb:v0FCFp1006* + ID_MODEL_FROM_DATABASE=ANT Development Board + + usb:v0FCFp1008* +- ID_MODEL_FROM_DATABASE=Mini stick Suunto ++ ID_MODEL_FROM_DATABASE=ANTUSB2 Stick ++ ++usb:v0FCFp1009* ++ ID_MODEL_FROM_DATABASE=ANTUSB-m Stick + + usb:v0FD0* + ID_VENDOR_FROM_DATABASE=Tulip Computers B.V. +@@ -38378,6 +39062,12 @@ usb:v0FDAp0100* + usb:v0FDC* + ID_VENDOR_FROM_DATABASE=Micro Plus + ++usb:v0FDE* ++ ID_VENDOR_FROM_DATABASE=Oregon Scientific ++ ++usb:v0FDEpCA01* ++ ID_MODEL_FROM_DATABASE=WMRS200 weather station ++ + usb:v0FE0* + ID_VENDOR_FROM_DATABASE=Osterhout Design Group + +@@ -38471,6 +39161,9 @@ usb:v0FFF* + usb:v1000* + ID_VENDOR_FROM_DATABASE=Speed Tech Corp. + ++usb:v1000p153B* ++ ID_MODEL_FROM_DATABASE=TerraTec Electronic GmbH ++ + usb:v1001* + ID_VENDOR_FROM_DATABASE=Ritronics Components (S) Pte., Ltd + +@@ -38504,6 +39197,9 @@ usb:v1004p618E* + usb:v1004p618F* + ID_MODEL_FROM_DATABASE=Ally/Optimus One + ++usb:v1004p61C5* ++ ID_MODEL_FROM_DATABASE=P880 / Charge only ++ + usb:v1004p61C6* + ID_MODEL_FROM_DATABASE=Vortex (msc) + +@@ -38514,7 +39210,7 @@ usb:v1004p61F1* + ID_MODEL_FROM_DATABASE=Optimus Android Phone [LG Software mode] + + usb:v1004p61F9* +- ID_MODEL_FROM_DATABASE=V909 G-Slate ++ ID_MODEL_FROM_DATABASE=Optimus (Various Models) MTP Mode + + usb:v1004p61FC* + ID_MODEL_FROM_DATABASE=Optimus 3 +@@ -38528,9 +39224,15 @@ usb:v1004p6300* + usb:v1004p631C* + ID_MODEL_FROM_DATABASE=Optimus Android Phone [MTP mode] + ++usb:v1004p631D* ++ ID_MODEL_FROM_DATABASE=Optimus Android Phone (Camera/PTP Mode) ++ + usb:v1004p631E* + ID_MODEL_FROM_DATABASE=Optimus Android Phone [Camera/PTP mode] + ++usb:v1004p631F* ++ ID_MODEL_FROM_DATABASE=Optimus Android Phone (Charge Mode) ++ + usb:v1004p6356* + ID_MODEL_FROM_DATABASE=Optimus Android Phone [Virtual CD mode] + +@@ -38540,6 +39242,9 @@ usb:v1004p6800* + usb:v1004p7000* + ID_MODEL_FROM_DATABASE=LG LDP-7024D(LD)USB + ++usb:v1004p91C8* ++ ID_MODEL_FROM_DATABASE=P880 / USB tethering ++ + usb:v1004pA400* + ID_MODEL_FROM_DATABASE=Renoir (KC910) + +@@ -38742,13 +39447,13 @@ usb:v1033p0068* + ID_MODEL_FROM_DATABASE=3,5'' HDD case MD-231 + + usb:v1038* +- ID_VENDOR_FROM_DATABASE=Ideazon, Inc. ++ ID_VENDOR_FROM_DATABASE=SteelSeries ApS + + usb:v1038p0100* +- ID_MODEL_FROM_DATABASE=Zboard ++ ID_MODEL_FROM_DATABASE=Ideazon Zboard + + usb:v1038p1361* +- ID_MODEL_FROM_DATABASE=Sensei ++ ID_MODEL_FROM_DATABASE=Ideazon Sensei + + usb:v1039* + ID_VENDOR_FROM_DATABASE=devolo AG +@@ -38946,28 +39651,37 @@ usb:v1058p0704* + ID_MODEL_FROM_DATABASE=Passport External HDD + + usb:v1058p070A* +- ID_MODEL_FROM_DATABASE=My Passport Essential SE ++ ID_MODEL_FROM_DATABASE=My Passport Essential SE, My Passport for Mac (WDBAAB) + + usb:v1058p071A* + ID_MODEL_FROM_DATABASE=My Passport + + usb:v1058p0730* +- ID_MODEL_FROM_DATABASE=My Passport ++ ID_MODEL_FROM_DATABASE=My Passport Essential (WDBACY) + + usb:v1058p0740* + ID_MODEL_FROM_DATABASE=My Passport + ++usb:v1058p0741* ++ ID_MODEL_FROM_DATABASE=My Passport Ultra ++ + usb:v1058p0742* + ID_MODEL_FROM_DATABASE=My Passport Essential SE + + usb:v1058p0748* +- ID_MODEL_FROM_DATABASE=My Passport 1TB USB 3.0 ++ ID_MODEL_FROM_DATABASE=My Passport (WDBKXH) ++ ++usb:v1058p0810* ++ ID_MODEL_FROM_DATABASE=My Passport Ultra + + usb:v1058p0900* + ID_MODEL_FROM_DATABASE=MyBook Essential External HDD + + usb:v1058p0901* +- ID_MODEL_FROM_DATABASE=MyBook External HDD ++ ID_MODEL_FROM_DATABASE=My Book Essential Edition (Green Ring) ++ ++usb:v1058p0902* ++ ID_MODEL_FROM_DATABASE=My Book Pro Edition + + usb:v1058p0903* + ID_MODEL_FROM_DATABASE=My Book Premium Edition +@@ -38976,20 +39690,32 @@ usb:v1058p0910* + ID_MODEL_FROM_DATABASE=MyBook Essential External HDD + + usb:v1058p1001* +- ID_MODEL_FROM_DATABASE=External Hard Disk [Elements] ++ ID_MODEL_FROM_DATABASE=Elements Desktop (WDE1U) + + usb:v1058p1003* + ID_MODEL_FROM_DATABASE=Elements 1000 GB + + usb:v1058p1010* +- ID_MODEL_FROM_DATABASE=Elements External HDD ++ ID_MODEL_FROM_DATABASE=Elements Portable (WDBAAR) + + usb:v1058p1021* +- ID_MODEL_FROM_DATABASE=Elements 2TB ++ ID_MODEL_FROM_DATABASE=Elements Desktop (WDBAAU) + + usb:v1058p1023* + ID_MODEL_FROM_DATABASE=Elements SE + ++usb:v1058p1048* ++ ID_MODEL_FROM_DATABASE=Elements Portable (WDBU6Y) ++ ++usb:v1058p10A2* ++ ID_MODEL_FROM_DATABASE=Elements SE Portable (WDBPCK) ++ ++usb:v1058p10A8* ++ ID_MODEL_FROM_DATABASE=Elements Portable (WDBUZG) ++ ++usb:v1058p1100* ++ ID_MODEL_FROM_DATABASE=My Book Essential Edition 2.0 (WDH1U) ++ + usb:v1058p1103* + ID_MODEL_FROM_DATABASE=My Book Studio + +@@ -39272,6 +39998,9 @@ usb:v106Fp0009* + usb:v106Fp000A* + ID_MODEL_FROM_DATABASE=CR10x Coin Recycler + ++usb:v106Fp000C* ++ ID_MODEL_FROM_DATABASE=Xchange ++ + usb:v1076* + ID_VENDOR_FROM_DATABASE=GCT Semiconductor, Inc. + +@@ -39335,6 +40064,12 @@ usb:v1099* + usb:v109A* + ID_VENDOR_FROM_DATABASE=DATASOFT Systems GmbH + ++usb:v109B* ++ ID_VENDOR_FROM_DATABASE=Hisense ++ ++usb:v109Bp9118* ++ ID_MODEL_FROM_DATABASE=Medion P4013 Mobile ++ + usb:v109F* + ID_VENDOR_FROM_DATABASE=eSOL Co., Ltd + +@@ -39458,6 +40193,15 @@ usb:v10BF* + usb:v10BFp0001* + ID_MODEL_FROM_DATABASE=SmartHome PowerLinc + ++usb:v10C3* ++ ID_VENDOR_FROM_DATABASE=Universal Laser Systems, Inc. ++ ++usb:v10C3p00A4* ++ ID_MODEL_FROM_DATABASE=ULS PLS Series Laser Engraver Firmware Loader ++ ++usb:v10C3p00A5* ++ ID_MODEL_FROM_DATABASE=ULS Print Support ++ + usb:v10C4* + ID_VENDOR_FROM_DATABASE=Cygnal Integrated Products, Inc. + +@@ -39509,6 +40253,12 @@ usb:v10C4p8461* + usb:v10C4p8477* + ID_MODEL_FROM_DATABASE=Balluff RFID Reader + ++usb:v10C4p8496* ++ ID_MODEL_FROM_DATABASE=SiLabs Cypress FW downloader ++ ++usb:v10C4p8497* ++ ID_MODEL_FROM_DATABASE=SiLabs Cypress EVB ++ + usb:v10C4p8605* + ID_MODEL_FROM_DATABASE=dilitronics ESoLUX solar lighting controller + +@@ -39527,6 +40277,9 @@ usb:v10C4p8863* + usb:v10C4p8897* + ID_MODEL_FROM_DATABASE=C8051F38x HDMI Splitter [UHBX] + ++usb:v10C4p8918* ++ ID_MODEL_FROM_DATABASE=C8051F38x HDMI Audio Extractor [VSA-HA-DP] ++ + usb:v10C4pEA60* + ID_MODEL_FROM_DATABASE=CP210x UART Bridge / myAVR mySmartUSB light + +@@ -39908,6 +40661,9 @@ usb:v1141* + usb:v1142* + ID_VENDOR_FROM_DATABASE=CyberScan Technologies, Inc. + ++usb:v1142p0709* ++ ID_MODEL_FROM_DATABASE=Cyberview High Speed Scanner ++ + usb:v1145* + ID_VENDOR_FROM_DATABASE=Japan Radio Company + +@@ -39938,6 +40694,9 @@ usb:v114D* + usb:v114F* + ID_VENDOR_FROM_DATABASE=Wavecom + ++usb:v114Fp1234* ++ ID_MODEL_FROM_DATABASE=Fastrack Xtend FXT001 Modem ++ + usb:v115B* + ID_VENDOR_FROM_DATABASE=Salix Technology Co., Ltd. + +@@ -40128,7 +40887,7 @@ usb:v1199p683A* + ID_MODEL_FROM_DATABASE=MC8785 Device + + usb:v1199p683C* +- ID_MODEL_FROM_DATABASE=MC8790 Device ++ ID_MODEL_FROM_DATABASE=Mobile Broadband 3G/UMTS (MC8790 Device) + + usb:v1199p6850* + ID_MODEL_FROM_DATABASE=AirCard 880 Device +@@ -40196,6 +40955,12 @@ usb:v1199p9009* + usb:v1199p900A* + ID_MODEL_FROM_DATABASE=Gobi 2000 Wireless Modem + ++usb:v1199p9055* ++ ID_MODEL_FROM_DATABASE=Gobi 9x15 Multimode 3G/4G LTE Modem (NAT mode) ++ ++usb:v1199p9057* ++ ID_MODEL_FROM_DATABASE=Gobi 9x15 Multimode 3G/4G LTE Modem (IP passthrough mode) ++ + usb:v119A* + ID_VENDOR_FROM_DATABASE=ZHAN QI Technology Co., Ltd + +@@ -40238,12 +41003,30 @@ usb:v11ACp6565* + usb:v11B0* + ID_VENDOR_FROM_DATABASE=ATECH FLASH TECHNOLOGY + ++usb:v11B0p6208* ++ ID_MODEL_FROM_DATABASE=PRO-28U ++ ++usb:v11BE* ++ ID_VENDOR_FROM_DATABASE=R&D International NV ++ ++usb:v11BEpF0A0* ++ ID_MODEL_FROM_DATABASE=Martin Maxxyz DMX ++ + usb:v11C5* + ID_VENDOR_FROM_DATABASE=Inmax + + usb:v11C5p0521* + ID_MODEL_FROM_DATABASE=IMT-0521 Smartcard Reader + ++usb:v11CA* ++ ID_VENDOR_FROM_DATABASE=VeriFone Inc ++ ++usb:v11CAp0207* ++ ID_MODEL_FROM_DATABASE=PIN Pad VX 810 ++ ++usb:v11CAp0220* ++ ID_MODEL_FROM_DATABASE=PIN Pad VX 805 ++ + usb:v11DB* + ID_VENDOR_FROM_DATABASE=Topfield Co., Ltd. + +@@ -40274,6 +41057,9 @@ usb:v11F5p0005* + usb:v11F5p0008* + ID_MODEL_FROM_DATABASE=UMTS/HSDPA Data Card + ++usb:v11F5p0101* ++ ID_MODEL_FROM_DATABASE=RCU Connect ++ + usb:v11F6* + ID_VENDOR_FROM_DATABASE=Prolific + +@@ -40284,7 +41070,7 @@ usb:v11F7* + ID_VENDOR_FROM_DATABASE=Alcatel (?) + + usb:v11F7p02DF* +- ID_MODEL_FROM_DATABASE=TD10 Mobile phone USB cable ++ ID_MODEL_FROM_DATABASE=Serial cable (v2) for TD-10 Mobile Phone + + usb:v1203* + ID_VENDOR_FROM_DATABASE=TSC Auto ID Technology Co., Ltd +@@ -40352,6 +41138,9 @@ usb:v1228p0012* + usb:v1228p0015* + ID_MODEL_FROM_DATABASE=TPaq21/MPaq21 Datalogger + ++usb:v1228p584C* ++ ID_MODEL_FROM_DATABASE=XL2 Logger ++ + usb:v1230* + ID_VENDOR_FROM_DATABASE=Chipidea-Microelectronica, S.A. + +@@ -40377,20 +41166,110 @@ usb:v1235* + ID_VENDOR_FROM_DATABASE=Novation EMS + + usb:v1235p0001* +- ID_MODEL_FROM_DATABASE=ReMOTE Audio/XStation ++ ID_MODEL_FROM_DATABASE=ReMOTE Audio/XStation First Edition + + usb:v1235p0002* + ID_MODEL_FROM_DATABASE=Speedio + + usb:v1235p0003* +- ID_MODEL_FROM_DATABASE=ReMOTE ZeRO SL ++ ID_MODEL_FROM_DATABASE=RemoteSL + ZeroSL ++ ++usb:v1235p0004* ++ ID_MODEL_FROM_DATABASE=ReMOTE LE ++ ++usb:v1235p0005* ++ ID_MODEL_FROM_DATABASE=XIOSynth [First Edition] ++ ++usb:v1235p0006* ++ ID_MODEL_FROM_DATABASE=XStation ++ ++usb:v1235p0007* ++ ID_MODEL_FROM_DATABASE=XIOSynth ++ ++usb:v1235p0008* ++ ID_MODEL_FROM_DATABASE=ReMOTE SL Compact ++ ++usb:v1235p0009* ++ ID_MODEL_FROM_DATABASE=nIO ++ ++usb:v1235p000A* ++ ID_MODEL_FROM_DATABASE=Nocturn ++ ++usb:v1235p000B* ++ ID_MODEL_FROM_DATABASE=ReMOTE SL MkII ++ ++usb:v1235p000C* ++ ID_MODEL_FROM_DATABASE=ZeRO MkII ++ ++usb:v1235p000E* ++ ID_MODEL_FROM_DATABASE=Launchpad ++ ++usb:v1235p0010* ++ ID_MODEL_FROM_DATABASE=Saffire 6 ++ ++usb:v1235p0011* ++ ID_MODEL_FROM_DATABASE=Ultranova ++ ++usb:v1235p0012* ++ ID_MODEL_FROM_DATABASE=Nocturn Keyboard ++ ++usb:v1235p0013* ++ ID_MODEL_FROM_DATABASE=VRM Box ++ ++usb:v1235p0014* ++ ID_MODEL_FROM_DATABASE=VRM Box Audio Class (2-out) ++ ++usb:v1235p0015* ++ ID_MODEL_FROM_DATABASE=Dicer ++ ++usb:v1235p0016* ++ ID_MODEL_FROM_DATABASE=Ultranova ++ ++usb:v1235p0018* ++ ID_MODEL_FROM_DATABASE=Twitch ++ ++usb:v1235p0019* ++ ID_MODEL_FROM_DATABASE=Impulse 25 ++ ++usb:v1235p001A* ++ ID_MODEL_FROM_DATABASE=Impulse 49 ++ ++usb:v1235p001B* ++ ID_MODEL_FROM_DATABASE=Impulse 61 + + usb:v1235p4661* + ID_MODEL_FROM_DATABASE=ReMOTE25 + ++usb:v1235p8000* ++ ID_MODEL_FROM_DATABASE=Scarlett 18i6 ++ ++usb:v1235p8002* ++ ID_MODEL_FROM_DATABASE=Scarlett 8i6 ++ + usb:v1235p8006* + ID_MODEL_FROM_DATABASE=Focusrite Scarlett 2i2 + ++usb:v1235p8008* ++ ID_MODEL_FROM_DATABASE=Saffire 6 ++ ++usb:v1235p800A* ++ ID_MODEL_FROM_DATABASE=Scarlett 2i4 ++ ++usb:v1235p800C* ++ ID_MODEL_FROM_DATABASE=Scarlett 18i20 ++ ++usb:v1235p800E* ++ ID_MODEL_FROM_DATABASE=iTrack Solo ++ ++usb:v1235p8010* ++ ID_MODEL_FROM_DATABASE=Forte ++ ++usb:v1235p8012* ++ ID_MODEL_FROM_DATABASE=Scarlett 6i6 ++ ++usb:v1235p8014* ++ ID_MODEL_FROM_DATABASE=Scarlett 18i8 ++ + usb:v1241* + ID_VENDOR_FROM_DATABASE=Belkin + +@@ -40410,7 +41289,7 @@ usb:v1241p1166* + ID_MODEL_FROM_DATABASE=MI-2150 Trust Mouse + + usb:v1241p1177* +- ID_MODEL_FROM_DATABASE=F8E842-DL Mouse ++ ID_MODEL_FROM_DATABASE=Mouse [HT82M21A] + + usb:v1241p1503* + ID_MODEL_FROM_DATABASE=Keyboard +@@ -40463,6 +41342,9 @@ usb:v125Fp312A* + usb:v125Fp312B* + ID_MODEL_FROM_DATABASE=Superior S102 Pro + ++usb:v125FpA22A* ++ ID_MODEL_FROM_DATABASE=DashDrive Elite HE720 500GB ++ + usb:v125FpA91A* + ID_MODEL_FROM_DATABASE=Portable HDD CH91 + +@@ -40478,6 +41360,9 @@ usb:v125FpC93A* + usb:v125FpC96A* + ID_MODEL_FROM_DATABASE=C906 Flash Drive + ++usb:v125FpCB10* ++ ID_MODEL_FROM_DATABASE=Dash Drive UV100 ++ + usb:v1260* + ID_VENDOR_FROM_DATABASE=Standard Microsystems Corp. + +@@ -40637,6 +41522,9 @@ usb:v1283p0150* + usb:v1286* + ID_VENDOR_FROM_DATABASE=Marvell Semiconductor, Inc. + ++usb:v1286p00BC* ++ ID_MODEL_FROM_DATABASE=Marvell JTAG Probe ++ + usb:v1286p1FAB* + ID_MODEL_FROM_DATABASE=88W8338 [Libertas] 802.11g + +@@ -40733,6 +41621,12 @@ usb:v12C4p0006* + usb:v12C4p0008* + ID_MODEL_FROM_DATABASE=Teleprompter Foot Control (v1) + ++usb:v12CF* ++ ID_VENDOR_FROM_DATABASE=DEXIN ++ ++usb:v12CFp0170* ++ ID_MODEL_FROM_DATABASE=Tt eSPORTS BLACK Gaming mouse ++ + usb:v12D1* + ID_VENDOR_FROM_DATABASE=Huawei Technologies Co., Ltd. + +@@ -40802,9 +41696,15 @@ usb:v12D1p14CF* + usb:v12D1p14D1* + ID_MODEL_FROM_DATABASE=K3770 3G Modem (Mass Storage Mode) + ++usb:v12D1p14DB* ++ ID_MODEL_FROM_DATABASE=E353/E3131 ++ + usb:v12D1p14F1* + ID_MODEL_FROM_DATABASE=Gobi 3000 HSPA+ Modem + ++usb:v12D1p14FE* ++ ID_MODEL_FROM_DATABASE=Modem (Mass Storage Mode) ++ + usb:v12D1p1501* + ID_MODEL_FROM_DATABASE=Pulse + +@@ -40826,6 +41726,9 @@ usb:v12D1p1521* + usb:v12D1p155A* + ID_MODEL_FROM_DATABASE=R205 Mobile WiFi (CD-ROM mode) + ++usb:v12D1p1575* ++ ID_MODEL_FROM_DATABASE=K5150 LTE modem ++ + usb:v12D1p1805* + ID_MODEL_FROM_DATABASE=AT&T Go Phone U2800A phone + +@@ -41376,7 +42279,7 @@ usb:v13BA* + ID_VENDOR_FROM_DATABASE=PCPlay + + usb:v13BAp0001* +- ID_MODEL_FROM_DATABASE=König Electronic CMP-KEYPAD12 Numeric Keypad ++ ID_MODEL_FROM_DATABASE=Konig Electronic CMP-KEYPAD12 Numeric Keypad + + usb:v13BAp0017* + ID_MODEL_FROM_DATABASE=PS/2 Keyboard+Mouse Adapter +@@ -44096,6 +44999,9 @@ usb:v1740p9801* + usb:v1743* + ID_VENDOR_FROM_DATABASE=General Atomics + ++usb:v1748* ++ ID_VENDOR_FROM_DATABASE=MQP Electronics ++ + usb:v174C* + ID_VENDOR_FROM_DATABASE=ASMedia Technology Inc. + +@@ -46569,7 +47475,7 @@ usb:v1C7B* + ID_VENDOR_FROM_DATABASE=LUXSHARE PRECISION INDUSTRY (SHENZHEN) CO., LTD. + + usb:v1C83* +- ID_VENDOR_FROM_DATABASE=Schomäcker GmbH ++ ID_VENDOR_FROM_DATABASE=Schomaecker GmbH + + usb:v1C83p0001* + ID_MODEL_FROM_DATABASE=RS150 V2 +@@ -47678,6 +48584,12 @@ usb:v2047* + usb:v2047p0200* + ID_MODEL_FROM_DATABASE=MSP430 USB HID Bootstrap Loader + ++usb:v2047p0855* ++ ID_MODEL_FROM_DATABASE=Invensense Embedded MotionApp HID Sensor ++ ++usb:v2047p0964* ++ ID_MODEL_FROM_DATABASE=Inventio Software MSP430 ++ + usb:v2080* + ID_VENDOR_FROM_DATABASE=Barnes & Noble + +-- +1.7.9.2 + diff --git a/0004-implement-a-union-to-pad-out-file_handle.patch b/0004-implement-a-union-to-pad-out-file_handle.patch new file mode 100644 index 00000000..cbb924cc --- /dev/null +++ b/0004-implement-a-union-to-pad-out-file_handle.patch @@ -0,0 +1,117 @@ +From 370c860f748d149097710dc7952a64f627db9de7 Mon Sep 17 00:00:00 2001 +From: Dave Reisner +Date: Sat, 19 Apr 2014 13:22:35 -0400 +Subject: [PATCH] implement a union to pad out file_handle + +Cases where name_to_handle_at is used allocated the full struct to be +MAX_HANDLE_SZ, and assigned this size to handle_bytes. This is wrong +since handle_bytes should describe the length of the flexible array +member and not the whole struct. + +Define a union type which includes sufficient padding to allow +assignment of MAX_HANDLE_SZ to be correct. +--- + src/libudev/libudev-monitor.c | 6 ++---- + src/readahead/readahead-common.c | 6 ++---- + src/shared/util.h | 6 ++++++ + src/tmpfiles/tmpfiles.c | 11 ++++------- + 4 files changed, 14 insertions(+), 15 deletions(-) + +diff --git src/libudev/libudev-monitor.c src/libudev/libudev-monitor.c +index 3f7436b..0a2ab82 100644 +--- src/libudev/libudev-monitor.c ++++ src/libudev/libudev-monitor.c +@@ -108,15 +108,13 @@ static struct udev_monitor *udev_monitor_new(struct udev *udev) + + /* we consider udev running when /dev is on devtmpfs */ + static bool udev_has_devtmpfs(struct udev *udev) { +- struct file_handle *h; ++ union file_handle_union h = { .handle.handle_bytes = MAX_HANDLE_SZ, }; + int mount_id; + _cleanup_fclose_ FILE *f = NULL; + char line[LINE_MAX], *e; + int r; + +- h = alloca(MAX_HANDLE_SZ); +- h->handle_bytes = MAX_HANDLE_SZ; +- r = name_to_handle_at(AT_FDCWD, "/dev", h, &mount_id, 0); ++ r = name_to_handle_at(AT_FDCWD, "/dev", &h.handle, &mount_id, 0); + if (r < 0) + return false; + +diff --git src/readahead/readahead-common.c src/readahead/readahead-common.c +index 5ffa88b..49679fc 100644 +--- src/readahead/readahead-common.c ++++ src/readahead/readahead-common.c +@@ -75,7 +75,7 @@ int fs_on_ssd(const char *p) { + if (major(st.st_dev) == 0) { + _cleanup_fclose_ FILE *f = NULL; + int mount_id; +- struct file_handle *h; ++ union file_handle_union h = { .handle.handle_bytes = MAX_HANDLE_SZ, }; + + /* Might be btrfs, which exposes "ssd" as mount flag if it is on ssd. + * +@@ -83,9 +83,7 @@ int fs_on_ssd(const char *p) { + * and then lookup the mount ID in mountinfo to find + * the mount options. */ + +- h = alloca(MAX_HANDLE_SZ); +- h->handle_bytes = MAX_HANDLE_SZ; +- r = name_to_handle_at(AT_FDCWD, p, h, &mount_id, AT_SYMLINK_FOLLOW); ++ r = name_to_handle_at(AT_FDCWD, p, &h.handle, &mount_id, AT_SYMLINK_FOLLOW); + if (r < 0) + return false; + +diff --git src/shared/util.h src/shared/util.h +index 900f1cf..891848a 100644 +--- src/shared/util.h ++++ src/shared/util.h +@@ -22,6 +22,7 @@ + ***/ + + #include ++#include + #include + #include + #include +@@ -883,3 +884,8 @@ int fd_warn_permissions(const char *path + + unsigned long personality_from_string(const char *p); + const char *personality_to_string(unsigned long); ++ ++union file_handle_union { ++ struct file_handle handle; ++ char padding[sizeof(struct file_handle) + MAX_HANDLE_SZ]; ++}; +diff --git src/tmpfiles/tmpfiles.c src/tmpfiles/tmpfiles.c +index 33e7cbc..04b472d 100644 +--- src/tmpfiles/tmpfiles.c ++++ src/tmpfiles/tmpfiles.c +@@ -217,19 +217,16 @@ static bool unix_socket_alive(const char *fn) { + } + + static int dir_is_mount_point(DIR *d, const char *subdir) { +- struct file_handle *h; ++ union file_handle_union h = { .handle.handle_bytes = MAX_HANDLE_SZ }; + int mount_id_parent, mount_id; + int r_p, r; + +- h = alloca(MAX_HANDLE_SZ); +- +- h->handle_bytes = MAX_HANDLE_SZ; +- r_p = name_to_handle_at(dirfd(d), ".", h, &mount_id_parent, 0); ++ r_p = name_to_handle_at(dirfd(d), ".", &h.handle, &mount_id_parent, 0); + if (r_p < 0) + r_p = -errno; + +- h->handle_bytes = MAX_HANDLE_SZ; +- r = name_to_handle_at(dirfd(d), subdir, h, &mount_id, 0); ++ h.handle.handle_bytes = MAX_HANDLE_SZ; ++ r = name_to_handle_at(dirfd(d), subdir, &h.handle, &mount_id, 0); + if (r < 0) + r = -errno; + +-- +1.7.9.2 + diff --git a/0004-job-add-waiting-jobs-to-run-queue-in-unit_coldplug.patch b/0004-job-add-waiting-jobs-to-run-queue-in-unit_coldplug.patch new file mode 100644 index 00000000..0358d8cc --- /dev/null +++ b/0004-job-add-waiting-jobs-to-run-queue-in-unit_coldplug.patch @@ -0,0 +1,30 @@ +Based on 20a83d7bf4542875f8033b68682a4da4993010e8 Mon Sep 17 00:00:00 2001 +From: Brandon Philips +Date: Fri, 25 Apr 2014 09:31:59 -0600 +Subject: [PATCH] job: add waiting jobs to run queue in unit_coldplug + +When we have job installed and added to run queue for service which is +still in dead state and systemd initiates reload then after reload we +never add deserialized job to the run queue again. This is caused by +check in service_coldplug() where we check if deserialized state is +something else than dead state, which is not the case thus we never call +service_set_state() and finally unit_notify() where we would have added +job to the run queue. + +Thanks to Michal Sekletar for the original patch. +--- + src/core/job.c | 3 +++ + 1 file changed, 3 insertions(+) + +--- src/core/job.c ++++ src/core/job.c 2014-05-12 12:58:30.354235531 +0000 +@@ -1057,6 +1057,9 @@ int job_coldplug(Job *j) { + if (j->timer_event_source) + j->timer_event_source = sd_event_source_unref(j->timer_event_source); + ++ if (j->state == JOB_WAITING) ++ job_add_to_run_queue(j); ++ + r = sd_event_add_monotonic(j->manager->event, &j->timer_event_source, j->begin_usec + j->unit->job_timeout, 0, job_dispatch_timer, j); + if (r < 0) + log_debug("Failed to restart timeout for job: %s", strerror(-r)); diff --git a/0004-journal-do-server_vacuum-for-sigusr1.patch b/0004-journal-do-server_vacuum-for-sigusr1.patch new file mode 100644 index 00000000..530a5397 --- /dev/null +++ b/0004-journal-do-server_vacuum-for-sigusr1.patch @@ -0,0 +1,30 @@ +From 3bfd4e0c6341b0ef946d2198f089743fa99e0a97 Mon Sep 17 00:00:00 2001 +From: WaLyong Cho +Date: Thu, 28 Aug 2014 21:33:03 +0900 +Subject: [PATCH] journal: do server_vacuum for sigusr1 + +runtime journal is migrated to system journal when only +"/run/systemd/journal/flushed" exist. It's ok but according to this +the system journal directory size(max use) can be over the config. If +journal is not rotated during some time the journal directory can be +remained as over the config(or default) size. To avoid, do +server_vacuum just after the system journal migration from runtime. +--- + src/journal/journald-server.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git src/journal/journald-server.c src/journal/journald-server.c +index 52111f7..bf9cfcc 100644 +--- src/journal/journald-server.c ++++ src/journal/journald-server.c +@@ -1224,6 +1224,7 @@ static int dispatch_sigusr1(sd_event_source *es, const struct signalfd_siginfo * + touch("/run/systemd/journal/flushed"); + server_flush_to_var(s); + server_sync(s); ++ server_vacuum(s); + + return 0; + } +-- +1.7.9.2 + diff --git a/0004-login-set_controller-should-fail-if-prepare_vt-fails.patch b/0004-login-set_controller-should-fail-if-prepare_vt-fails.patch new file mode 100644 index 00000000..848a73d3 --- /dev/null +++ b/0004-login-set_controller-should-fail-if-prepare_vt-fails.patch @@ -0,0 +1,134 @@ +Based on baccf3e40bab6c0b69992ae29c396930de4660c9 Mon Sep 17 00:00:00 2001 +From: Olivier Brunel +Date: Fri, 8 Aug 2014 20:45:43 +0200 +Subject: [PATCH] login: set_controller should fail if prepare_vt fails + +If controllers can expect logind to have "prepared" the VT (e.g. set it to +graphics mode, etc) then TakeControl() should fail if said preparation +failed (and session_restore_vt() was called). + +(David: fixed up !CONFIG_VT case and errno-numbers) +--- + src/login/logind-session.c | 47 +++++++++++++++++++++++++++++++++------------ + src/login/logind-session.h | 2 - + 2 files changed, 36 insertions(+), 13 deletions(-) + +--- src/login/logind-session.c ++++ src/login/logind-session.c 2014-08-26 10:14:21.014235811 +0000 +@@ -950,8 +950,8 @@ int session_kill(Session *s, KillWho who + static int session_open_vt(Session *s) { + char path[sizeof("/dev/tty") + DECIMAL_STR_MAX(s->vtnr)]; + +- if (!s->vtnr) +- return -1; ++ if (s->vtnr < 1) ++ return -ENODEV; + + if (s->vtfd >= 0) + return s->vtfd; +@@ -975,22 +975,38 @@ static int session_vt_fn(sd_event_source + return 0; + } + +-void session_mute_vt(Session *s) { ++int session_mute_vt(Session *s) { + int vt, r; + struct vt_mode mode = { 0 }; + sigset_t mask; + ++ if (s->vtnr < 1) ++ return 0; ++ + vt = session_open_vt(s); + if (vt < 0) +- return; ++ return vt; ++ ++ r = fchown(vt, s->user->uid, -1); ++ if (r < 0) { ++ r = -errno; ++ log_error("Cannot change owner of /dev/tty%u: %m", s->vtnr); ++ goto error; ++ } + + r = ioctl(vt, KDSKBMODE, K_OFF); +- if (r < 0) ++ if (r < 0) { ++ r = -errno; ++ log_error("Cannot set K_OFF on /dev/tty%u: %m", s->vtnr); + goto error; ++ } + + r = ioctl(vt, KDSETMODE, KD_GRAPHICS); +- if (r < 0) ++ if (r < 0) { ++ r = -errno; ++ log_error("Cannot set KD_GRAPHICS on /dev/tty%u: %m", s->vtnr); + goto error; ++ } + + sigemptyset(&mask); + sigaddset(&mask, SIGUSR1); +@@ -1007,14 +1023,17 @@ void session_mute_vt(Session *s) { + mode.relsig = SIGUSR1; + mode.acqsig = SIGUSR1; + r = ioctl(vt, VT_SETMODE, &mode); +- if (r < 0) ++ if (r < 0) { ++ r = -errno; ++ log_error("Cannot set VT_PROCESS on /dev/tty%u: %m", s->vtnr); + goto error; ++ } + +- return; ++ return 0; + + error: +- log_error("cannot mute VT %u for session %s (%d/%d)", s->vtnr, s->id, r, errno); + session_restore_vt(s); ++ return r; + } + + void session_restore_vt(Session *s) { +@@ -1037,6 +1056,8 @@ void session_restore_vt(Session *s) { + mode.mode = VT_AUTO; + ioctl(vt, VT_SETMODE, &mode); + ++ fchown(vt, 0, -1); ++ + close_nointr_nofail(vt); + s->vtfd = -1; + } +@@ -1091,8 +1112,6 @@ int session_set_controller(Session *s, c + return r; + } + +- session_swap_controller(s, t); +- + /* When setting a session controller, we forcibly mute the VT and set + * it into graphics-mode. Applications can override that by changing + * VT state after calling TakeControl(). However, this serves as a good +@@ -1101,7 +1120,11 @@ int session_set_controller(Session *s, c + * exits. + * If logind crashes/restarts, we restore the controller during restart + * or reset the VT in case it crashed/exited, too. */ +- session_mute_vt(s); ++ r = session_mute_vt(s); ++ if (r < 0) ++ return r; ++ ++ session_swap_controller(s, t); + + return 0; + } +--- src/login/logind-session.h ++++ src/login/logind-session.h 2014-08-25 17:19:29.042236429 +0000 +@@ -172,7 +172,7 @@ SessionClass session_class_from_string(c + const char *kill_who_to_string(KillWho k) _const_; + KillWho kill_who_from_string(const char *s) _pure_; + +-void session_mute_vt(Session *s); ++int session_mute_vt(Session *s); + void session_restore_vt(Session *s); + + bool session_is_controller(Session *s, const char *sender); diff --git a/0004-logind-Do-not-fail-display-count-if-a-device-has-no-.patch b/0004-logind-Do-not-fail-display-count-if-a-device-has-no-.patch new file mode 100644 index 00000000..c19bfcee --- /dev/null +++ b/0004-logind-Do-not-fail-display-count-if-a-device-has-no-.patch @@ -0,0 +1,45 @@ +From 94036de887ad5b0dc805abe38b5c1c58b57d9465 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Mantas=20Mikul=C4=97nas?= +Date: Tue, 11 Mar 2014 17:49:00 +0200 +Subject: [PATCH] logind: Do not fail display count if a device has no parent + +udev_device_get_parent() may return NULL when the device doesn't have a +parent, as is the case with (for example) /sys/devices/virtual/drm/ttm. + +Also, log an actual error message instead of "-12 displays connected". +--- + src/login/logind-action.c | 4 +++- + src/login/logind-core.c | 2 +- + 2 files changed, 4 insertions(+), 2 deletions(-) + +diff --git src/login/logind-action.c src/login/logind-action.c +index ae7b350..1928f43 100644 +--- src/login/logind-action.c ++++ src/login/logind-action.c +@@ -84,7 +84,9 @@ int manager_handle_action( + * treat like this under the assumption that there is + * no modern drm driver available. */ + n = manager_count_displays(m); +- if (n != 1) { ++ if (n < 0) ++ log_warning("Display counting failed: %s", strerror(-n)); ++ else if (n != 1) { + log_debug("Ignoring lid switch request, %i displays connected.", n); + return 0; + } +diff --git src/login/logind-core.c src/login/logind-core.c +index ca34d37..053d2ed 100644 +--- src/login/logind-core.c ++++ src/login/logind-core.c +@@ -520,7 +520,7 @@ int manager_count_displays(Manager *m) { + + p = udev_device_get_parent(d); + if (!p) +- return -ENOMEM; ++ continue; + + /* If the parent shares the same subsystem as the + * device we are looking at then it is a connector, +-- +1.7.9.2 + diff --git a/0004-machined-make-sure-GetMachineAddresses-is-available-.patch b/0004-machined-make-sure-GetMachineAddresses-is-available-.patch new file mode 100644 index 00000000..20b625ba --- /dev/null +++ b/0004-machined-make-sure-GetMachineAddresses-is-available-.patch @@ -0,0 +1,38 @@ +From d3152a09ac5804ec8603daee12f98cf03523cce0 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 19 May 2014 00:47:26 +0900 +Subject: [PATCH] machined: make sure GetMachineAddresses() is available for + unprivileged processes + +--- + src/machine/org.freedesktop.machine1.conf | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git src/machine/org.freedesktop.machine1.conf src/machine/org.freedesktop.machine1.conf +index 970ccd8..ab349a5 100644 +--- src/machine/org.freedesktop.machine1.conf ++++ src/machine/org.freedesktop.machine1.conf +@@ -42,12 +42,20 @@ + + ++ ++ + + + ++ ++ + + + +-- +1.7.9.2 + diff --git a/0004-man-document-missing-options-of-systemd-run.patch b/0004-man-document-missing-options-of-systemd-run.patch new file mode 100644 index 00000000..a6e6551d --- /dev/null +++ b/0004-man-document-missing-options-of-systemd-run.patch @@ -0,0 +1,113 @@ +From 981ee551945f4e00de52fcbb7780fd7476bcd47e Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 5 Mar 2014 03:37:48 +0100 +Subject: [PATCH] man: document missing options of systemd-run + +--- + man/systemd-run.xml | 71 +++++++++++++++++++++++++++++++++++++++++++-------- + 1 file changed, 60 insertions(+), 11 deletions(-) + +diff --git man/systemd-run.xml man/systemd-run.xml +index 95c1cb7..81d41dc 100644 +--- man/systemd-run.xml ++++ man/systemd-run.xml +@@ -121,9 +121,9 @@ along with systemd; If not, see . + + + +- Provide description for the unit. If not +- specified, the command itself will be used as a description. +- See Description= in ++ Provide description for the service or scope ++ unit. If not specified, the command itself will be used as a ++ description. See Description= in + systemd.unit5. + + +@@ -140,10 +140,10 @@ along with systemd; If not, see . + + + +- After the service's process has terminated, keep +- the service around until it is explicitly stopped. This is +- useful to collect runtime information about the service after +- it finished running. Also see ++ After the service or scope process has ++ terminated, keep the service around until it is explicitly ++ stopped. This is useful to collect runtime information about ++ the service after it finished running. Also see + RemainAfterExit= in + systemd.service5. + +@@ -153,15 +153,64 @@ along with systemd; If not, see . + + + +- When terminating the scope unit, send a SIGHUP +- immediately after SIGTERM. This is useful to indicate to +- shells and shell-like processes that the connection has been +- severed. Also see SendSIGHUP= in ++ When terminating the scope or service unit, ++ send a SIGHUP immediately after SIGTERM. This is useful to ++ indicate to shells and shell-like processes that the ++ connection has been severed. Also see ++ SendSIGHUP= in + systemd.kill5. + + + + ++ ++ ++ ++ Sets the service type. Also see ++ Type= in ++ systemd.service5. This ++ option has no effect in conjunction with ++ . Defaults to ++ simple. ++ ++ ++ ++ ++ ++ ++ ++ Runs the service process under the UNIX user ++ and group. Also see User= and ++ Group= in ++ systemd.exec5. This ++ option has no effect in conjunction with ++ . ++ ++ ++ ++ ++ ++ ++ Runs the service process with the specified ++ nice level. Also see Nice= in ++ systemd.exec5. This ++ option has no effect in conjunction with ++ . ++ ++ ++ ++ ++ ++ ++ Runs the service process with the specified ++ environment variables set. Also see ++ Environment= in ++ systemd.exec5. This ++ option has no effect in conjunction with ++ . ++ ++ ++ + + + +-- +1.7.9.2 + diff --git a/0004-sd-bus-if-we-don-t-manage-to-properly-allocate-the-e.patch b/0004-sd-bus-if-we-don-t-manage-to-properly-allocate-the-e.patch new file mode 100644 index 00000000..9ab7a2da --- /dev/null +++ b/0004-sd-bus-if-we-don-t-manage-to-properly-allocate-the-e.patch @@ -0,0 +1,43 @@ +From 455cd8b137b8ef45d04889f2d967c562a097f1e6 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 24 Oct 2014 19:24:53 +0200 +Subject: [PATCH] sd-bus: if we don't manage to properly allocate the error + message for an sd_bus_error, just go on + +sd_bus_error_setfv() must initialize the sd_bus_error value to some +sensible value and then return a good errno code matching that. If it +cannot work at all it should set the error statically to the OOM error. +But if it can work half-way (i.e. initialize the name, but not the +message) it should do so and still return the correct errno number for +it. + +This effectively reverts 8bf13eb1e02b9977ae1cd331ae5dc7305a305a09 +--- + src/libsystemd/sd-bus/bus-error.c | 11 ++++------- + 1 file changed, 4 insertions(+), 7 deletions(-) + +diff --git src/libsystemd/sd-bus/bus-error.c src/libsystemd/sd-bus/bus-error.c +index 5ca974a..af83c12 100644 +--- src/libsystemd/sd-bus/bus-error.c ++++ src/libsystemd/sd-bus/bus-error.c +@@ -194,13 +194,10 @@ int bus_error_setfv(sd_bus_error *e, const char *name, const char *format, va_li + return -ENOMEM; + } + +- if (format) { +- int r; +- +- r = vasprintf((char**) &e->message, format, ap); +- if (r < 0) +- return -ENOMEM; +- } ++ /* Of we hit OOM on formatting the pretty message, we ignore ++ * this, since we at least managed to write the error name */ ++ if (format) ++ (void) vasprintf((char**) &e->message, format, ap); + + e->_need_free = 1; + +-- +1.7.9.2 + diff --git a/0004-sd-bus-when-an-event-loop-terminates-explicitly-clos.patch b/0004-sd-bus-when-an-event-loop-terminates-explicitly-clos.patch new file mode 100644 index 00000000..51b46fb4 --- /dev/null +++ b/0004-sd-bus-when-an-event-loop-terminates-explicitly-clos.patch @@ -0,0 +1,27 @@ +From 7bb4d371af5ec6b8c50b71d2a80c2866d8134d9a Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 2 Jul 2014 17:36:47 +0200 +Subject: [PATCH] sd-bus: when an event loop terminates, explicitly close the + bus + +This makes sure we actually release the bus and all the messages it +references. +--- + src/libsystemd/sd-bus/sd-bus.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git src/libsystemd/sd-bus/sd-bus.c src/libsystemd/sd-bus/sd-bus.c +index d52afe8..eb267d4 100644 +--- src/libsystemd/sd-bus/sd-bus.c ++++ src/libsystemd/sd-bus/sd-bus.c +@@ -2940,6 +2940,7 @@ static int quit_callback(sd_event_source *event, void *userdata) { + assert(event); + + sd_bus_flush(bus); ++ sd_bus_close(bus); + + return 1; + } +-- +1.7.9.2 + diff --git a/0004-sd-event-check-the-value-of-received-signal.patch b/0004-sd-event-check-the-value-of-received-signal.patch new file mode 100644 index 00000000..9c4662a9 --- /dev/null +++ b/0004-sd-event-check-the-value-of-received-signal.patch @@ -0,0 +1,46 @@ +From 7057bd993110c1eff0cd3a8776902ca66417634e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Fri, 3 Oct 2014 18:49:45 -0400 +Subject: [PATCH] sd-event: check the value of received signal + +Appease coverity report #1237775. + +Also rename ss to n, to make it visually different from ss. +--- + src/libsystemd/sd-event/sd-event.c | 10 ++++++---- + 1 file changed, 6 insertions(+), 4 deletions(-) + +diff --git src/libsystemd/sd-event/sd-event.c src/libsystemd/sd-event/sd-event.c +index b56182d..4c67ee8 100644 +--- src/libsystemd/sd-event/sd-event.c ++++ src/libsystemd/sd-event/sd-event.c +@@ -1973,20 +1973,22 @@ static int process_signal(sd_event *e, uint32_t events) { + + for (;;) { + struct signalfd_siginfo si; +- ssize_t ss; ++ ssize_t n; + sd_event_source *s = NULL; + +- ss = read(e->signal_fd, &si, sizeof(si)); +- if (ss < 0) { ++ n = read(e->signal_fd, &si, sizeof(si)); ++ if (n < 0) { + if (errno == EAGAIN || errno == EINTR) + return read_one; + + return -errno; + } + +- if (_unlikely_(ss != sizeof(si))) ++ if (_unlikely_(n != sizeof(si))) + return -EIO; + ++ assert(si.ssi_signo < _NSIG); ++ + read_one = true; + + if (si.ssi_signo == SIGCHLD) { +-- +1.7.9.2 + diff --git a/0004-sd-journal-verify-that-object-start-with-the-field-n.patch b/0004-sd-journal-verify-that-object-start-with-the-field-n.patch new file mode 100644 index 00000000..e3ee663d --- /dev/null +++ b/0004-sd-journal-verify-that-object-start-with-the-field-n.patch @@ -0,0 +1,41 @@ +Based on 0f99f74a14ef193c1ebde687c5cc76e1d67b85ef Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Tue, 26 Aug 2014 23:54:31 -0400 +Subject: [PATCH] sd-journal: verify that object start with the field name + +If the journal is corrupted, we might return an object that does +not start with the expected field name and/or is shorter than it +should. +--- + src/journal/sd-journal.c | 15 +++++++++++++++ + 1 file changed, 15 insertions(+) + +diff --git src/journal/sd-journal.c src/journal/sd-journal.c +index 80ff8fe..693707c 100644 +--- src/journal/sd-journal.c ++++ src/journal/sd-journal.c +@@ -2571,6 +2571,21 @@ _public_ int sd_journal_enumerate_unique(sd_journal *j, const void **data, size_ + if (r < 0) + return r; + ++ /* Check if we have at least the field name and "=". */ ++ if (ol <= k) { ++ log_debug("%s:offset " OFSfmt ": object has size %zu, expected at least %zu", ++ j->unique_file->path, j->unique_offset, ++ ol, k + 1); ++ return -EBADMSG; ++ } ++ ++ if (memcmp(odata, j->unique_field, k) || ((const char*) odata)[k] != '=') { ++ log_debug("%s:offset " OFSfmt ": object does not start with \"%s=\"", ++ j->unique_file->path, j->unique_offset, ++ j->unique_field); ++ return -EBADMSG; ++ } ++ + /* OK, now let's see if we already returned this data + * object by checking if it exists in the earlier + * traversed files. */ +-- +1.7.9.2 + diff --git a/0004-selinux-fix-potential-double-free-crash-in-child-pro.patch b/0004-selinux-fix-potential-double-free-crash-in-child-pro.patch new file mode 100644 index 00000000..ba22748a --- /dev/null +++ b/0004-selinux-fix-potential-double-free-crash-in-child-pro.patch @@ -0,0 +1,38 @@ +From 5e78424f4a27c07be50e246308035c877f204038 Mon Sep 17 00:00:00 2001 +From: Michal Sekletar +Date: Mon, 13 Oct 2014 15:25:09 +0200 +Subject: [PATCH] selinux: fix potential double free crash in child process + +Before returning from function we should reset ret to NULL, thus cleanup +function is nop. + +Also context_str() returns pointer to a string containing context but not a +copy, hence we must make copy it explicitly. +--- + src/shared/label.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git src/shared/label.c src/shared/label.c +index b6af38d..69d4616 100644 +--- src/shared/label.c ++++ src/shared/label.c +@@ -334,7 +334,7 @@ int label_get_child_mls_label(int socket_fd, const char *exe, char **label) { + } + + freecon(mycon); +- mycon = context_str(bcon); ++ mycon = strdup(context_str(bcon)); + if (!mycon) { + r = -errno; + goto out; +@@ -348,6 +348,7 @@ int label_get_child_mls_label(int socket_fd, const char *exe, char **label) { + } + + *label = ret; ++ ret = NULL; + r = 0; + + out: +-- +1.7.9.2 + diff --git a/0004-shared-conf-parser.patch b/0004-shared-conf-parser.patch new file mode 100644 index 00000000..8a03d9d5 --- /dev/null +++ b/0004-shared-conf-parser.patch @@ -0,0 +1,31 @@ +Based on 83e341a637b75f7f592a5dc717c34d8b67ed4ffa Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Wed, 17 Sep 2014 22:17:53 +0200 +Subject: [PATCH] shared: conf-parser + +Check memory allocation. Found by Coverity. + +Fixes CID #1237644. +--- + src/shared/conf-parser.h | 4 ++++ + 1 file changed, 4 insertions(+) + +--- src/shared/conf-parser.h ++++ src/shared/conf-parser.h 2014-09-18 13:07:07.314735514 +0000 +@@ -181,6 +181,8 @@ int log_syntax_internal(const char *unit + assert(data); \ + \ + xs = new0(type, 1); \ ++ if(!xs) \ ++ return -ENOMEM; \ + *xs = invalid; \ + \ + FOREACH_WORD(w, l, rvalue, state) { \ +@@ -213,6 +215,7 @@ int log_syntax_internal(const char *unit + xs = realloc(xs, (++i + 1) * sizeof(type)); \ + if (!xs) \ + return -ENOMEM; \ ++ \ + *(xs + i) = invalid; \ + } \ + \ diff --git a/0004-shared-wtmp-utmp-don-t-clear-store_wtmp-in-utmp_put_.patch b/0004-shared-wtmp-utmp-don-t-clear-store_wtmp-in-utmp_put_.patch new file mode 100644 index 00000000..596aa557 --- /dev/null +++ b/0004-shared-wtmp-utmp-don-t-clear-store_wtmp-in-utmp_put_.patch @@ -0,0 +1,106 @@ +From 863f3ce0d050f005839f6aa41fe7bac5478a7b5e Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Fri, 19 Sep 2014 08:03:31 +0200 +Subject: [PATCH] shared: wtmp-utmp - don't clear store_wtmp in + utmp_put_dead_process() + +Also modernize a few other things and add comments to explain CID #1237503 +and CID #1237504. +--- + src/shared/utmp-wtmp.c | 28 ++++++++++++++-------------- + 1 file changed, 14 insertions(+), 14 deletions(-) + +diff --git src/shared/utmp-wtmp.c src/shared/utmp-wtmp.c +index 30a0c03..31f13ec 100644 +--- src/shared/utmp-wtmp.c ++++ src/shared/utmp-wtmp.c +@@ -92,8 +92,6 @@ int utmp_get_runlevel(int *runlevel, int *previous) { + static void init_timestamp(struct utmpx *store, usec_t t) { + assert(store); + +- zero(*store); +- + if (t <= 0) + t = now(CLOCK_REALTIME); + +@@ -143,7 +141,7 @@ static int write_entry_wtmp(const struct utmpx *store) { + assert(store); + + /* wtmp is a simple append-only file where each entry is +- simply appended to * the end; i.e. basically a log. */ ++ simply appended to the end; i.e. basically a log. */ + + errno = 0; + updwtmpx(_PATH_WTMPX, store); +@@ -172,7 +170,7 @@ static int write_entry_both(const struct utmpx *store) { + } + + int utmp_put_shutdown(void) { +- struct utmpx store; ++ struct utmpx store = {}; + + init_entry(&store, 0); + +@@ -183,7 +181,7 @@ int utmp_put_shutdown(void) { + } + + int utmp_put_reboot(usec_t t) { +- struct utmpx store; ++ struct utmpx store = {}; + + init_entry(&store, t); + +@@ -206,16 +204,17 @@ _pure_ static const char *sanitize_id(const char *id) { + } + + int utmp_put_init_process(const char *id, pid_t pid, pid_t sid, const char *line) { +- struct utmpx store; ++ struct utmpx store = { ++ .ut_type = INIT_PROCESS, ++ .ut_pid = pid, ++ .ut_session = sid, ++ }; + + assert(id); + + init_timestamp(&store, 0); + +- store.ut_type = INIT_PROCESS; +- store.ut_pid = pid; +- store.ut_session = sid; +- ++ /* ut_id needs only be nul-terminated if it is shorter than sizeof(ut_id) */ + strncpy(store.ut_id, sanitize_id(id), sizeof(store.ut_id)); + + if (line) +@@ -225,14 +224,15 @@ int utmp_put_init_process(const char *id, pid_t pid, pid_t sid, const char *line + } + + int utmp_put_dead_process(const char *id, pid_t pid, int code, int status) { +- struct utmpx lookup, store, store_wtmp, *found; ++ struct utmpx lookup = { ++ .ut_type = INIT_PROCESS /* looks for DEAD_PROCESS, LOGIN_PROCESS, USER_PROCESS, too */ ++ }, store, store_wtmp, *found; + + assert(id); + + setutxent(); + +- zero(lookup); +- lookup.ut_type = INIT_PROCESS; /* looks for DEAD_PROCESS, LOGIN_PROCESS, USER_PROCESS, too */ ++ /* ut_id needs only be nul-terminated if it is shorter than sizeof(ut_id) */ + strncpy(lookup.ut_id, sanitize_id(id), sizeof(lookup.ut_id)); + + found = getutxid(&lookup); +@@ -260,7 +260,7 @@ int utmp_put_dead_process(const char *id, pid_t pid, int code, int status) { + + + int utmp_put_runlevel(int runlevel, int previous) { +- struct utmpx store; ++ struct utmpx store = {}; + int r; + + assert(runlevel > 0); +-- +1.7.9.2 + diff --git a/0004-socket-properly-handle-if-our-service-vanished-durin.patch b/0004-socket-properly-handle-if-our-service-vanished-durin.patch new file mode 100644 index 00000000..b119ad24 --- /dev/null +++ b/0004-socket-properly-handle-if-our-service-vanished-durin.patch @@ -0,0 +1,30 @@ +From 640ace4a8de907994a1b95f6d368c3e6a8fcf60f Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 22 May 2014 16:56:21 +0900 +Subject: [PATCH] socket: properly handle if our service vanished during + runtime + +--- + src/core/socket.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git src/core/socket.c src/core/socket.c +index 05af8fe..aca20fd 100644 +--- src/core/socket.c ++++ src/core/socket.c +@@ -1503,6 +1503,12 @@ static void socket_enter_running(Socket *s, int cfd) { + } + + if (!pending) { ++ if (!UNIT_ISSET(s->service)) { ++ log_error_unit(UNIT(s)->id, "%s: service to activate vanished, refusing activation.", UNIT(s)->id); ++ r = -ENOENT; ++ goto fail; ++ } ++ + r = manager_add_job(UNIT(s)->manager, JOB_START, UNIT_DEREF(s->service), JOB_REPLACE, true, &error, NULL); + if (r < 0) + goto fail; +-- +1.7.9.2 + diff --git a/0004-systemd-detect-virt-only-discover-Xen-domU.patch b/0004-systemd-detect-virt-only-discover-Xen-domU.patch new file mode 100644 index 00000000..246e09b3 --- /dev/null +++ b/0004-systemd-detect-virt-only-discover-Xen-domU.patch @@ -0,0 +1,79 @@ +From 37287585b6ba9a55065c8f94458f6db3c0abe0af Mon Sep 17 00:00:00 2001 +From: Thomas Blume +Date: Fri, 6 Jun 2014 16:36:45 +0200 +Subject: [PATCH] systemd-detect-virt: only discover Xen domU + +The current vm detection lacks the distinction between Xen dom0 and Xen domU. +Both, dom0 and domU are running inside the hypervisor. +Therefore systemd-detect-virt and the ConditionVirtualization directive detect +dom0 as a virtual machine. + +dom0 is not using virtual devices but is accessing the real hardware. +Therefore dom0 should be considered the virtualisation host and not a virtual +machine. + +https://bugs.freedesktop.org/show_bug.cgi?id=77271 +--- + src/shared/virt.c | 34 +++++++++++++++++++++++++++------- + 1 file changed, 27 insertions(+), 7 deletions(-) + +diff --git src/shared/virt.c src/shared/virt.c +index 1e227c5..774915f 100644 +--- src/shared/virt.c ++++ src/shared/virt.c +@@ -148,7 +148,7 @@ static int detect_vm_dmi(const char **_id) { + + /* Returns a short identifier for the various VM implementations */ + int detect_vm(const char **id) { +- _cleanup_free_ char *hvtype = NULL, *cpuinfo_contents = NULL; ++ _cleanup_free_ char *domcap = NULL, *cpuinfo_contents = NULL; + static thread_local int cached_found = -1; + static thread_local const char *cached_id = NULL; + const char *_id = NULL; +@@ -162,17 +162,37 @@ int detect_vm(const char **id) { + return cached_found; + } + +- /* Try high-level hypervisor sysfs file first: ++ /* Try xen capabilities file first, if not found try high-level hypervisor sysfs file: + * +- * https://bugs.freedesktop.org/show_bug.cgi?id=61491 */ +- r = read_one_line_file("/sys/hypervisor/type", &hvtype); ++ * https://bugs.freedesktop.org/show_bug.cgi?id=77271 */ ++ r = read_one_line_file("/proc/xen/capabilities", &domcap); + if (r >= 0) { +- if (streq(hvtype, "xen")) { ++ char *cap, *i = domcap; ++ ++ while ((cap = strsep(&i, ","))) ++ if (streq(cap, "control_d")) ++ break; ++ ++ if (!i) { + _id = "xen"; + r = 1; +- goto finish; + } +- } else if (r != -ENOENT) ++ ++ goto finish; ++ ++ } else if (r == -ENOENT) { ++ _cleanup_free_ char *hvtype = NULL; ++ ++ r = read_one_line_file("/sys/hypervisor/type", &hvtype); ++ if (r >= 0) { ++ if (streq(hvtype, "xen")) { ++ _id = "xen"; ++ r = 1; ++ goto finish; ++ } ++ } else if (r != -ENOENT) ++ return r; ++ } else + return r; + + /* this will set _id to "other" and return 0 for unknown hypervisors */ +-- +1.7.9.2 + diff --git a/0004-systemd-python-use-.hex-instead-of-.get_hex.patch b/0004-systemd-python-use-.hex-instead-of-.get_hex.patch new file mode 100644 index 00000000..4ddad20e --- /dev/null +++ b/0004-systemd-python-use-.hex-instead-of-.get_hex.patch @@ -0,0 +1,46 @@ +From b532cf3722e04adb0bd075666eb9989a9390d0a2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sat, 5 Apr 2014 13:23:25 -0400 +Subject: [PATCH] systemd-python: use .hex instead of .get_hex() + +It turns out the latter got removed in Python 3. + +https://bugs.freedesktop.org/show_bug.cgi?id=77086 +--- + src/python-systemd/journal.py | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git src/python-systemd/journal.py src/python-systemd/journal.py +index 9c7e004..dd1f229 100644 +--- src/python-systemd/journal.py ++++ src/python-systemd/journal.py +@@ -293,7 +293,7 @@ class Reader(_Reader): + monotonic = monotonic.totalseconds() + monotonic = int(monotonic * 1000000) + if isinstance(bootid, _uuid.UUID): +- bootid = bootid.get_hex() ++ bootid = bootid.hex + return super(Reader, self).seek_monotonic(monotonic, bootid) + + def log_level(self, level): +@@ -314,7 +314,7 @@ class Reader(_Reader): + Equivalent to add_match(MESSAGE_ID=`messageid`). + """ + if isinstance(messageid, _uuid.UUID): +- messageid = messageid.get_hex() ++ messageid = messageid.hex + self.add_match(MESSAGE_ID=messageid) + + def this_boot(self, bootid=None): +@@ -346,7 +346,7 @@ class Reader(_Reader): + + def get_catalog(mid): + if isinstance(mid, _uuid.UUID): +- mid = mid.get_hex() ++ mid = mid.hex + return _get_catalog(mid) + + def _make_line(field, value): +-- +1.7.9.2 + diff --git a/0004-systemd-return-the-first-error-from-manager_startup.patch b/0004-systemd-return-the-first-error-from-manager_startup.patch new file mode 100644 index 00000000..0db56a17 --- /dev/null +++ b/0004-systemd-return-the-first-error-from-manager_startup.patch @@ -0,0 +1,57 @@ +From 1cd974edfd7cd91dcdf321e7202bd220bac50a2d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Fri, 18 Jul 2014 17:05:18 -0400 +Subject: [PATCH] systemd: return the first error from manager_startup() + +--- + src/core/manager.c | 15 +++++++-------- + 1 file changed, 7 insertions(+), 8 deletions(-) + +diff --git src/core/manager.c src/core/manager.c +index 2e63c5e..0653d7e 100644 +--- src/core/manager.c ++++ src/core/manager.c +@@ -1005,11 +1005,8 @@ int manager_startup(Manager *m, FILE *serialization, FDSet *fds) { + dual_timestamp_get(&m->units_load_finish_timestamp); + + /* Second, deserialize if there is something to deserialize */ +- if (serialization) { +- q = manager_deserialize(m, serialization, fds); +- if (q < 0) +- r = q; +- } ++ if (serialization) ++ r = manager_deserialize(m, serialization, fds); + + /* Any fds left? Find some unit which wants them. This is + * useful to allow container managers to pass some file +@@ -1017,13 +1014,15 @@ int manager_startup(Manager *m, FILE *serialization, FDSet *fds) { + * socket-based activation of entire containers. */ + if (fdset_size(fds) > 0) { + q = manager_distribute_fds(m, fds); +- if (q < 0) ++ if (q < 0 && r == 0) + r = q; + } + + /* We might have deserialized the notify fd, but if we didn't + * then let's create the bus now */ +- manager_setup_notify(m); ++ q = manager_setup_notify(m); ++ if (q < 0 && r == 0) ++ r = q; + + /* We might have deserialized the kdbus control fd, but if we + * didn't, then let's create the bus now. */ +@@ -1033,7 +1032,7 @@ int manager_startup(Manager *m, FILE *serialization, FDSet *fds) { + + /* Third, fire things up! */ + q = manager_coldplug(m); +- if (q < 0) ++ if (q < 0 && r == 0) + r = q; + + if (serialization) { +-- +1.7.9.2 + diff --git a/0004-util-ignore_file-should-not-allow-files-ending-with.patch b/0004-util-ignore_file-should-not-allow-files-ending-with.patch new file mode 100644 index 00000000..a30b4c4f --- /dev/null +++ b/0004-util-ignore_file-should-not-allow-files-ending-with.patch @@ -0,0 +1,28 @@ +From 93f1a06374e335e8508d89e1bdaadf45be6ab777 Mon Sep 17 00:00:00 2001 +From: Thomas Hindoe Paaboel Andersen +Date: Sat, 31 May 2014 21:36:23 +0200 +Subject: [PATCH] util: ignore_file should not allow files ending with '~' + +ignore_file currently allows any file ending with '~' while it +seems that the opposite was intended: +a228a22fda4faa9ecb7c5a5e499980c8ae5d2a08 +--- + src/shared/util.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/shared/util.c src/shared/util.c +index 0c27394..17b0ae1 100644 +--- src/shared/util.c ++++ src/shared/util.c +@@ -1371,7 +1371,7 @@ bool ignore_file(const char *filename) { + assert(filename); + + if (endswith(filename, "~")) +- return false; ++ return true; + + return ignore_file_allow_backup(filename); + } +-- +1.7.9.2 + diff --git a/0004-util-refuse-considering-UID-0xFFFF-and-0xFFFFFFFF-va.patch b/0004-util-refuse-considering-UID-0xFFFF-and-0xFFFFFFFF-va.patch new file mode 100644 index 00000000..23ccc1d5 --- /dev/null +++ b/0004-util-refuse-considering-UID-0xFFFF-and-0xFFFFFFFF-va.patch @@ -0,0 +1,31 @@ +From 306a55c86360a7ae7b2509771d5ea6ab0d166d85 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Sun, 29 Jun 2014 22:15:33 +0200 +Subject: [PATCH] util: refuse considering UID 0xFFFF and 0xFFFFFFFF valid + +--- + src/shared/util.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git src/shared/util.c src/shared/util.c +index e7ff0f8..1709bb7 100644 +--- src/shared/util.c ++++ src/shared/util.c +@@ -280,6 +280,14 @@ int parse_uid(const char *s, uid_t* ret_uid) { + if ((unsigned long) uid != ul) + return -ERANGE; + ++ /* Some libc APIs use (uid_t) -1 as special placeholder */ ++ if (uid == (uid_t) 0xFFFFFFFF) ++ return -EINVAL; ++ ++ /* A long time ago UIDs where 16bit, hence explicitly avoid the 16bit -1 too */ ++ if (uid == (uid_t) 0xFFFF) ++ return -EINVAL; ++ + *ret_uid = uid; + return 0; + } +-- +1.7.9.2 + diff --git a/0005-Replace-var-run-with-run-in-remaining-places.patch b/0005-Replace-var-run-with-run-in-remaining-places.patch new file mode 100644 index 00000000..67c35e18 --- /dev/null +++ b/0005-Replace-var-run-with-run-in-remaining-places.patch @@ -0,0 +1,89 @@ +From 41a55c46ab8fb4ef6727434227071321fc762cce Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Tue, 25 Feb 2014 20:11:04 -0500 +Subject: [PATCH] Replace /var/run with /run in remaining places + +/run was already used almost everywhere, fix the remaining places +for consistency. +--- + man/daemon.xml | 2 +- + man/runlevel.xml | 2 +- + man/tmpfiles.d.xml | 4 ++-- + src/libsystemd/sd-bus/sd-bus.c | 4 ++-- + src/systemctl/systemctl.c | 4 ++-- + 5 files changed, 8 insertions(+), 8 deletions(-) + +diff --git man/daemon.xml man/daemon.xml +index 88dd082..fd29ba7 100644 +--- man/daemon.xml ++++ man/daemon.xml +@@ -149,7 +149,7 @@ + write the daemon PID (as returned by + getpid()) to a + PID file, for example +- /var/run/foobar.pid ++ /run/foobar.pid + (for a hypothetical daemon "foobar") + to ensure that the daemon cannot be + started more than once. This must be +diff --git man/runlevel.xml man/runlevel.xml +index 976753a..4db06dc 100644 +--- man/runlevel.xml ++++ man/runlevel.xml +@@ -124,7 +124,7 @@ + + + +- /var/run/utmp ++ /run/utmp + + The utmp database + runlevel reads the +diff --git man/tmpfiles.d.xml man/tmpfiles.d.xml +index 812129f..0a006d1 100644 +--- man/tmpfiles.d.xml ++++ man/tmpfiles.d.xml +@@ -441,8 +441,8 @@ r! /tmp/.X[0-9]*-lock + /etc/tmpfiles.d/screen.conf example + screen needs two directories created at boot with specific modes and ownership. + +- d /var/run/screens 1777 root root 10d +-d /var/run/uscreens 0755 root root 10d12h ++ d /run/screens 1777 root root 10d ++d /run/uscreens 0755 root root 10d12h + + + /etc/tmpfiles.d/abrt.conf example +diff --git src/libsystemd/sd-bus/sd-bus.c src/libsystemd/sd-bus/sd-bus.c +index 20f540d..1318272 100644 +--- src/libsystemd/sd-bus/sd-bus.c ++++ src/libsystemd/sd-bus/sd-bus.c +@@ -794,8 +794,8 @@ static int parse_container_unix_address(sd_bus *b, const char **p, char **guid) + machine = NULL; + + b->sockaddr.un.sun_family = AF_UNIX; +- strncpy(b->sockaddr.un.sun_path, "/var/run/dbus/system_bus_socket", sizeof(b->sockaddr.un.sun_path)); +- b->sockaddr_size = offsetof(struct sockaddr_un, sun_path) + sizeof("/var/run/dbus/system_bus_socket") - 1; ++ strncpy(b->sockaddr.un.sun_path, "/run/dbus/system_bus_socket", sizeof(b->sockaddr.un.sun_path)); ++ b->sockaddr_size = offsetof(struct sockaddr_un, sun_path) + strlen("/run/dbus/system_bus_socket"); + + return 0; + } +diff --git src/systemctl/systemctl.c src/systemctl/systemctl.c +index 34d7079..8692716 100644 +--- src/systemctl/systemctl.c ++++ src/systemctl/systemctl.c +@@ -3758,8 +3758,8 @@ static int show_one( + streq(verb, "status")) { + /* According to LSB: "program not running" */ + /* 0: program is running or service is OK +- * 1: program is dead and /var/run pid file exists +- * 2: program is dead and /var/lock lock file exists ++ * 1: program is dead and /run PID file exists ++ * 2: program is dead and /run/lock lock file exists + * 3: program is not running + * 4: program or service status is unknown + */ +-- +1.7.9.2 + diff --git a/0005-backlight-Do-not-clamp-brightness-for-LEDs.patch b/0005-backlight-Do-not-clamp-brightness-for-LEDs.patch new file mode 100644 index 00000000..37c42d2e --- /dev/null +++ b/0005-backlight-Do-not-clamp-brightness-for-LEDs.patch @@ -0,0 +1,60 @@ +From 4cd2b2cf8ca585d15ebc859701b346658262b5bb Mon Sep 17 00:00:00 2001 +From: Denis Tikhomirov +Date: Thu, 5 Jun 2014 23:59:40 +0400 +Subject: [PATCH] backlight: Do not clamp brightness for LEDs + +https://bugs.freedesktop.org/show_bug.cgi?id=77092 + +On Thu, Jun 05, 2014 at 08:37:20AM +0200, Lennart Poettering wrote: +> The patch is line-broken, please send an uncorrupted patch! +I am very sorry, I forgot that my client limits line width. I will use +mutt now on. +> clamp_brightness() clamps the brightness value to the range of the +> actual device. This is a recent addition that was added to deal with +> driver updates where the resolution is changed. I don't think this part +> should be dropped for LED devices. The clamp_brightness() call hence +> should be called unconditionally, however, internally it should use a +> different min_brightness value if something is an !backlight devices... +Thank you for explanation, this sounds very reasonable to me. Please, +see updated patch: +--- + src/backlight/backlight.c | 13 ++++++++++--- + 1 file changed, 10 insertions(+), 3 deletions(-) + +diff --git src/backlight/backlight.c src/backlight/backlight.c +index 691472c..4d94ebf 100644 +--- src/backlight/backlight.c ++++ src/backlight/backlight.c +@@ -225,11 +225,13 @@ static unsigned get_max_brightness(struct udev_device *device) { + + /* Some systems turn the backlight all the way off at the lowest levels. + * clamp_brightness clamps the saved brightness to at least 1 or 5% of +- * max_brightness. This avoids preserving an unreadably dim screen, which +- * would otherwise force the user to disable state restoration. */ ++ * max_brightness in case of 'backlight' subsystem. This avoids preserving ++ * an unreadably dim screen, which would otherwise force the user to ++ * disable state restoration. */ + static void clamp_brightness(struct udev_device *device, char **value, unsigned max_brightness) { + int r; + unsigned brightness, new_brightness, min_brightness; ++ const char *subsystem; + + r = safe_atou(*value, &brightness); + if (r < 0) { +@@ -237,7 +239,12 @@ static void clamp_brightness(struct udev_device *device, char **value, unsigned + return; + } + +- min_brightness = MAX(1U, max_brightness/20); ++ subsystem = udev_device_get_subsystem(device); ++ if (streq_ptr(subsystem, "backlight")) ++ min_brightness = MAX(1U, max_brightness/20); ++ else ++ min_brightness = 0; ++ + new_brightness = CLAMP(brightness, min_brightness, max_brightness); + if (new_brightness != brightness) { + char *old_value = *value; +-- +1.7.9.2 + diff --git a/0005-backlight-handle-saved-brightness-exceeding-max-brig.patch b/0005-backlight-handle-saved-brightness-exceeding-max-brig.patch new file mode 100644 index 00000000..bee5ed1a --- /dev/null +++ b/0005-backlight-handle-saved-brightness-exceeding-max-brig.patch @@ -0,0 +1,64 @@ +From 0c9d8f1d4b5018199cb5a9b57580dc1480a7f915 Mon Sep 17 00:00:00 2001 +From: Jani Nikula +Date: Wed, 7 May 2014 12:01:01 +0300 +Subject: [PATCH] backlight: handle saved brightness exceeding max brightness + +If too high a brightness value has been saved (e.g. due to kernel +mechanism changing from one kernel version to another, or booting the +userspace on another system), the brightness update fails and the +process exits. + +Clamp saved brightness between the policy minimum introduced in + +commit 7b909d7407965c03caaba30daae7aee113627a83 +Author: Josh Triplett +Date: Tue Mar 11 21:16:33 2014 -0700 + + backlight: Avoid restoring brightness to an unreadably dim level + +and the absolute maximum. + +https://bugs.freedesktop.org/show_bug.cgi?id=78200 +--- + src/backlight/backlight.c | 11 ++++++++--- + 1 file changed, 8 insertions(+), 3 deletions(-) + +diff --git src/backlight/backlight.c src/backlight/backlight.c +index c708391..691472c 100644 +--- src/backlight/backlight.c ++++ src/backlight/backlight.c +@@ -229,7 +229,7 @@ static unsigned get_max_brightness(struct udev_device *device) { + * would otherwise force the user to disable state restoration. */ + static void clamp_brightness(struct udev_device *device, char **value, unsigned max_brightness) { + int r; +- unsigned brightness, new_brightness; ++ unsigned brightness, new_brightness, min_brightness; + + r = safe_atou(*value, &brightness); + if (r < 0) { +@@ -237,7 +237,8 @@ static void clamp_brightness(struct udev_device *device, char **value, unsigned + return; + } + +- new_brightness = MAX3(brightness, 1U, max_brightness/20); ++ min_brightness = MAX(1U, max_brightness/20); ++ new_brightness = CLAMP(brightness, min_brightness, max_brightness); + if (new_brightness != brightness) { + char *old_value = *value; + +@@ -247,7 +248,11 @@ static void clamp_brightness(struct udev_device *device, char **value, unsigned + return; + } + +- log_debug("Saved brightness %s too low; increasing to %s.", old_value, *value); ++ log_info("Saved brightness %s %s to %s.", old_value, ++ new_brightness > brightness ? ++ "too low; increasing" : "too high; decreasing", ++ *value); ++ + free(old_value); + } + } +-- +1.7.9.2 + diff --git a/0005-bootchart-Do-not-try-to-access-data-for-non-existing.patch b/0005-bootchart-Do-not-try-to-access-data-for-non-existing.patch new file mode 100644 index 00000000..119d1108 --- /dev/null +++ b/0005-bootchart-Do-not-try-to-access-data-for-non-existing.patch @@ -0,0 +1,29 @@ +From c119700c06b248b1c2a082b40b1a346f58d89da0 Mon Sep 17 00:00:00 2001 +From: Philippe De Swert +Date: Sun, 28 Sep 2014 18:12:51 +0300 +Subject: [PATCH] bootchart: Do not try to access data for non-existing CPU's + +Cpu's are assigned normally, so starting at 0, so the MAX_CPU index will +always be one smaller than the actual number. + +Found with Coverity. +--- + src/bootchart/store.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/bootchart/store.c src/bootchart/store.c +index 3099ff1..9ea1b27 100644 +--- src/bootchart/store.c ++++ src/bootchart/store.c +@@ -199,7 +199,7 @@ vmstat_next: + + if (strstr(key, "cpu")) { + r = safe_atoi((const char*)(key+3), &c); +- if (r < 0 || c > MAXCPUS) ++ if (r < 0 || c > MAXCPUS -1) + /* Oops, we only have room for MAXCPUS data */ + break; + sampledata->runtime[c] = atoll(rt); +-- +1.7.9.2 + diff --git a/0005-bus-avoid-using-m-kdbus-after-freeing-it.patch b/0005-bus-avoid-using-m-kdbus-after-freeing-it.patch new file mode 100644 index 00000000..93f4711e --- /dev/null +++ b/0005-bus-avoid-using-m-kdbus-after-freeing-it.patch @@ -0,0 +1,35 @@ +Based on fd989a0bc999d79719408ac28b126d9c9016bcb5 Mon Sep 17 00:00:00 2001 +From: Philippe De Swert +Date: Wed, 10 Sep 2014 12:20:38 +0300 +Subject: [PATCH] bus: avoid using m->kdbus after freeing it + +m->kdbus could be freed before it is released. Changing the +order fixes the issue. + +Found with Coverity. Fixes: CID#1237798 +--- + src/libsystemd/sd-bus/bus-message.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +--- src/libsystemd/sd-bus/bus-message.c ++++ src/libsystemd/sd-bus/bus-message.c 2014-09-16 10:31:37.538735664 +0000 +@@ -126,9 +126,6 @@ static void message_free(sd_bus_message + + message_reset_parts(m); + +- if (m->free_kdbus) +- free(m->kdbus); +- + if (m->release_kdbus) { + uint64_t off; + +@@ -136,6 +133,9 @@ static void message_free(sd_bus_message + ioctl(m->bus->input_fd, KDBUS_CMD_FREE, &off); + } + ++ if (m->free_kdbus) ++ free(m->kdbus); ++ + if (m->bus) + sd_bus_unref(m->bus); + diff --git a/0005-bus-close-a-bus-that-failed-to-connect.patch b/0005-bus-close-a-bus-that-failed-to-connect.patch new file mode 100644 index 00000000..9633317f --- /dev/null +++ b/0005-bus-close-a-bus-that-failed-to-connect.patch @@ -0,0 +1,28 @@ +From db9bb83fa5ec72da38eb5bd0c259ef8c76a71858 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 3 Jul 2014 01:19:21 +0200 +Subject: [PATCH] bus: close a bus that failed to connect + +--- + src/libsystemd/sd-bus/sd-bus.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git src/libsystemd/sd-bus/sd-bus.c src/libsystemd/sd-bus/sd-bus.c +index c25375c..28fc19e 100644 +--- src/libsystemd/sd-bus/sd-bus.c ++++ src/libsystemd/sd-bus/sd-bus.c +@@ -1033,8 +1033,10 @@ _public_ int sd_bus_start(sd_bus *bus) { + else + return -EINVAL; + +- if (r < 0) ++ if (r < 0) { ++ sd_bus_close(bus); + return r; ++ } + + return bus_send_hello(bus); + } +-- +1.7.9.2 + diff --git a/0005-core-Filter-by-state-behind-the-D-Bus-API-not-in-the.patch b/0005-core-Filter-by-state-behind-the-D-Bus-API-not-in-the.patch new file mode 100644 index 00000000..361a1713 --- /dev/null +++ b/0005-core-Filter-by-state-behind-the-D-Bus-API-not-in-the.patch @@ -0,0 +1,137 @@ +From cdc06ed7b6120c1049305fa7033f228ee9d86043 Mon Sep 17 00:00:00 2001 +From: David Strauss +Date: Mon, 28 Apr 2014 12:08:32 -0700 +Subject: [PATCH] core: Filter by state behind the D-Bus API, not in the + systemctl client. + +--- + src/core/dbus-manager.c | 24 +++++++++++++++++++++++- + src/core/org.freedesktop.systemd1.conf | 4 ++++ + src/systemctl/systemctl.c | 24 +++++++++++++----------- + 3 files changed, 40 insertions(+), 12 deletions(-) + +diff --git src/core/dbus-manager.c src/core/dbus-manager.c +index 58e484d..d5fab0a 100644 +--- src/core/dbus-manager.c ++++ src/core/dbus-manager.c +@@ -728,7 +728,7 @@ static int method_reset_failed(sd_bus *bus, sd_bus_message *message, void *userd + return sd_bus_reply_method_return(message, NULL); + } + +-static int method_list_units(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error) { ++static int list_units_filtered(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error, char **states) { + _cleanup_bus_message_unref_ sd_bus_message *reply = NULL; + Manager *m = userdata; + const char *k; +@@ -761,6 +761,12 @@ static int method_list_units(sd_bus *bus, sd_bus_message *message, void *userdat + + following = unit_following(u); + ++ if (!strv_isempty(states) && ++ !strv_contains(states, unit_load_state_to_string(u->load_state)) && ++ !strv_contains(states, unit_active_state_to_string(unit_active_state(u))) && ++ !strv_contains(states, unit_sub_state_to_string(u))) ++ continue; ++ + unit_path = unit_dbus_path(u); + if (!unit_path) + return -ENOMEM; +@@ -794,6 +800,21 @@ static int method_list_units(sd_bus *bus, sd_bus_message *message, void *userdat + return sd_bus_send(bus, reply, NULL); + } + ++static int method_list_units(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error) { ++ return list_units_filtered(bus, message, userdata, error, NULL); ++} ++ ++static int method_list_units_filtered(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error) { ++ _cleanup_strv_free_ char **states = NULL; ++ int r; ++ ++ r = sd_bus_message_read_strv(message, &states); ++ if (r < 0) ++ return r; ++ ++ return list_units_filtered(bus, message, userdata, error, states); ++} ++ + static int method_list_jobs(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error) { + _cleanup_bus_message_unref_ sd_bus_message *reply = NULL; + Manager *m = userdata; +@@ -1670,6 +1691,7 @@ const sd_bus_vtable bus_manager_vtable[] = { + SD_BUS_METHOD("ClearJobs", NULL, NULL, method_clear_jobs, 0), + SD_BUS_METHOD("ResetFailed", NULL, NULL, method_reset_failed, 0), + SD_BUS_METHOD("ListUnits", NULL, "a(ssssssouso)", method_list_units, SD_BUS_VTABLE_UNPRIVILEGED), ++ SD_BUS_METHOD("ListUnitsFiltered", "as", "a(ssssssouso)", method_list_units_filtered, SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD("ListJobs", NULL, "a(usssoo)", method_list_jobs, SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD("Subscribe", NULL, NULL, method_subscribe, SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD("Unsubscribe", NULL, NULL, method_unsubscribe, SD_BUS_VTABLE_UNPRIVILEGED), +diff --git src/core/org.freedesktop.systemd1.conf src/core/org.freedesktop.systemd1.conf +index a375dce..9dfca81 100644 +--- src/core/org.freedesktop.systemd1.conf ++++ src/core/org.freedesktop.systemd1.conf +@@ -64,6 +64,10 @@ + + ++ ++ + + load_state) || +- strv_contains(arg_states, u->sub_state) || +- strv_contains(arg_states, u->active_state); +- + if (!strv_isempty(patterns)) { + char **pattern; + +@@ -467,6 +461,7 @@ static int get_unit_list( + UnitInfo **_unit_infos, + char **patterns) { + ++ _cleanup_bus_message_unref_ sd_bus_message *m = NULL; + _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL; + _cleanup_bus_message_unref_ sd_bus_message *reply = NULL; + _cleanup_free_ UnitInfo *unit_infos = NULL; +@@ -478,15 +473,22 @@ static int get_unit_list( + assert(_reply); + assert(_unit_infos); + +- r = sd_bus_call_method( ++ r = sd_bus_message_new_method_call( + bus, ++ &m, + "org.freedesktop.systemd1", + "/org/freedesktop/systemd1", + "org.freedesktop.systemd1.Manager", +- "ListUnits", +- &error, +- &reply, +- NULL); ++ "ListUnitsFiltered"); ++ ++ if (r < 0) ++ return bus_log_create_error(r); ++ ++ r = sd_bus_message_append_strv(m, arg_states); ++ if (r < 0) ++ return bus_log_create_error(r); ++ ++ r = sd_bus_call(bus, m, 0, &error, &reply); + if (r < 0) { + log_error("Failed to list units: %s", bus_error_message(&error, r)); + return r; +-- +1.7.9.2 + diff --git a/0005-core-only-set-the-kernel-s-timezone-when-the-RTC-run.patch b/0005-core-only-set-the-kernel-s-timezone-when-the-RTC-run.patch new file mode 100644 index 00000000..05d6edc1 --- /dev/null +++ b/0005-core-only-set-the-kernel-s-timezone-when-the-RTC-run.patch @@ -0,0 +1,121 @@ +Based on c264aeab4b0e7b69f469e12e78d4a48b3ed7a66e Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Sun, 27 Jul 2014 00:11:08 +0200 +Subject: [PATCH] core: only set the kernel's timezone when the RTC runs in + local time + +We can not reliably manage any notion of local time. Every daylight +saving time change or time zone change by traveling will make the +time jump, and the local time might jump backwards which creates +unsolvable problems with file timestamps. + +We will no longer tell the kernel our local time zone and leave +everything set to UTC. This will effectively turn FAT timestamps +into UTC timestamps. + +If and only if the machine is configured to read the RTC in local +time mode, the kernel's time zone will be configured, but +systemd-timesysnc will disable the kernel's system time to RTC +syncing. In this mode, the RTC will not be managed, and external +tools like Windows bootups are expected to manage the RTC's time. + +https://bugs.freedesktop.org/show_bug.cgi?id=81538 +--- + src/core/main.c | 23 +++++++++++++++-------- + src/shared/hwclock.c | 15 ++++++++------- + src/shared/hwclock.h | 2 +- + 3 files changed, 24 insertions(+), 16 deletions(-) + +--- src/core/main.c ++++ src/core/main.c 2014-07-28 09:59:35.778235585 +0000 +@@ -1349,7 +1349,14 @@ int main(int argc, char *argv[]) { + if (hwclock_is_localtime() > 0) { + int min; + +- /* The first-time call to settimeofday() does a time warp in the kernel */ ++ /* ++ * The very first call of settimeofday() also does a time warp in the kernel. ++ * ++ * In the rtc-in-local time mode, we set the kernel's timezone, and rely on ++ * external tools to take care of maintaining the RTC and do all adjustments. ++ * This matches the behavior of Windows, which leaves the RTC alone if the ++ * registry tells that the RTC runs in UTC. ++ */ + r = hwclock_set_timezone(&min); + if (r < 0) + log_error("Failed to apply local time delta, ignoring: %s", strerror(-r)); +@@ -1357,19 +1364,19 @@ int main(int argc, char *argv[]) { + log_info("RTC configured in localtime, applying delta of %i minutes to system time.", min); + } else if (!in_initrd()) { + /* +- * Do dummy first-time call to seal the kernel's time warp magic ++ * Do a dummy very first call to seal the kernel's time warp magic. + * + * Do not call this this from inside the initrd. The initrd might not + * carry /etc/adjtime with LOCAL, but the real system could be set up + * that way. In such case, we need to delay the time-warp or the sealing + * until we reach the real system. ++ * ++ * Do no set the kernel's timezone. The concept of local time cannot ++ * be supported reliably, the time will jump or be incorrect at every daylight ++ * saving time change. All kernel local time concepts will be treated ++ * as UTC that way. + */ +- hwclock_reset_timezone(); +- +- /* Tell the kernel our timezone */ +- r = hwclock_set_timezone(NULL); +- if (r < 0) +- log_error("Failed to set the kernel's timezone, ignoring: %s", strerror(-r)); ++ hwclock_reset_timewarp(); + } + } + +--- src/shared/hwclock.c ++++ src/shared/hwclock.c 2014-07-28 09:59:12.914235566 +0000 +@@ -124,9 +124,10 @@ int hwclock_set_timezone(int *min) { + tz.tz_dsttime = 0; /* DST_NONE*/ + + /* +- * If the hardware clock does not run in UTC, but in local time: +- * The very first time we set the kernel's timezone, it will warp +- * the clock so that it runs in UTC instead of local time. ++ * If the RTC does not run in UTC but in local time, the very first ++ * call to settimeofday() will set the kernel's timezone and will warp the ++ * system clock, so that it runs in UTC instead of the local time we ++ * have read from the RTC. + */ + if (settimeofday(tv_null, &tz) < 0) + return -errno; +@@ -135,7 +136,7 @@ int hwclock_set_timezone(int *min) { + return 0; + } + +-int hwclock_reset_timezone(void) { ++int hwclock_reset_timewarp(void) { + const struct timeval *tv_null = NULL; + struct timezone tz; + +@@ -143,9 +144,9 @@ int hwclock_reset_timezone(void) { + tz.tz_dsttime = 0; /* DST_NONE*/ + + /* +- * The very first time we set the kernel's timezone, it will warp +- * the clock. Do a dummy call here, so the time warping is sealed +- * and we set only the timezone with next call. ++ * The very first call to settimeofday() does time warp magic. Do a ++ * dummy call here, so the time warping is sealed and all later calls ++ * behave as expected. + */ + if (settimeofday(tv_null, &tz) < 0) + return -errno; +--- src/shared/hwclock.h ++++ src/shared/hwclock.h 2014-07-28 09:59:25.034736002 +0000 +@@ -23,6 +23,6 @@ + + int hwclock_is_localtime(void); + int hwclock_set_timezone(int *min); +-int hwclock_reset_timezone(void); ++int hwclock_reset_timewarp(void); + int hwclock_get_time(struct tm *tm); + int hwclock_set_time(const struct tm *tm); diff --git a/0005-cryptsetup-fix-an-OOM-check.patch b/0005-cryptsetup-fix-an-OOM-check.patch new file mode 100644 index 00000000..23b39bb5 --- /dev/null +++ b/0005-cryptsetup-fix-an-OOM-check.patch @@ -0,0 +1,25 @@ +From 0e2f14014c65b4d8b30146e414579154cfa932da Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 23 Oct 2014 00:30:04 +0200 +Subject: [PATCH] cryptsetup: fix an OOM check + +--- + src/cryptsetup/cryptsetup-generator.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/cryptsetup/cryptsetup-generator.c src/cryptsetup/cryptsetup-generator.c +index 137b787..c7f30f6 100644 +--- src/cryptsetup/cryptsetup-generator.c ++++ src/cryptsetup/cryptsetup-generator.c +@@ -387,7 +387,7 @@ int main(int argc, char *argv[]) { + if (k == 2 && streq(proc_uuid, device + 5)) { + free(options); + options = strdup(p); +- if (!proc_options) { ++ if (!options) { + log_oom(); + goto cleanup; + } +-- +1.7.9.2 + diff --git a/0005-hwdb-Update-database-of-Bluetooth-company-identifier.patch b/0005-hwdb-Update-database-of-Bluetooth-company-identifier.patch new file mode 100644 index 00000000..a309f6b9 --- /dev/null +++ b/0005-hwdb-Update-database-of-Bluetooth-company-identifier.patch @@ -0,0 +1,73 @@ +From 24e29480bd800d3acdb3087e5863440bd0dd1d80 Mon Sep 17 00:00:00 2001 +From: Marcel Holtmann +Date: Fri, 16 May 2014 15:57:35 -0700 +Subject: [PATCH] hwdb: Update database of Bluetooth company identifiers + +--- + hwdb/20-bluetooth-vendor-product.hwdb | 53 ++++++++++++++++++++++++++++++++- + 1 file changed, 52 insertions(+), 1 deletion(-) + +diff --git hwdb/20-bluetooth-vendor-product.hwdb hwdb/20-bluetooth-vendor-product.hwdb +index 28aa2a7..a65c7db 100644 +--- hwdb/20-bluetooth-vendor-product.hwdb ++++ hwdb/20-bluetooth-vendor-product.hwdb +@@ -961,4 +961,55 @@ bluetooth:v013D* + ID_VENDOR_FROM_DATABASE=WirelessWERX + + bluetooth:v013E* +- ID_VENDOR_FROM_DATABASE=nimai ++ ID_VENDOR_FROM_DATABASE=Nod, Inc. ++ ++bluetooth:v013F* ++ ID_VENDOR_FROM_DATABASE=B&B Manufacturing Company ++ ++bluetooth:v0140* ++ ID_VENDOR_FROM_DATABASE=Alpine Electronics (China) Co., Ltd ++ ++bluetooth:v0141* ++ ID_VENDOR_FROM_DATABASE=FedEx Services ++ ++bluetooth:v0142* ++ ID_VENDOR_FROM_DATABASE=Grape Systems Inc. ++ ++bluetooth:v0143* ++ ID_VENDOR_FROM_DATABASE=Bkon Connect ++ ++bluetooth:v0144* ++ ID_VENDOR_FROM_DATABASE=Lintech GmbH ++ ++bluetooth:v0145* ++ ID_VENDOR_FROM_DATABASE=Novatel Wireless ++ ++bluetooth:v0146* ++ ID_VENDOR_FROM_DATABASE=Ciright ++ ++bluetooth:v0147* ++ ID_VENDOR_FROM_DATABASE=Mighty Cast, Inc. ++ ++bluetooth:v0148* ++ ID_VENDOR_FROM_DATABASE=Ambimat Electronics ++ ++bluetooth:v0149* ++ ID_VENDOR_FROM_DATABASE=Perytons Ltd. ++ ++bluetooth:v014A* ++ ID_VENDOR_FROM_DATABASE=Tivoli Audio, LLC ++ ++bluetooth:v014B* ++ ID_VENDOR_FROM_DATABASE=Master Lock ++ ++bluetooth:v014C* ++ ID_VENDOR_FROM_DATABASE=Mesh-Net Ltd ++ ++bluetooth:v014D* ++ ID_VENDOR_FROM_DATABASE=HUIZHOU DESAY SV AUTOMOTIVE CO., LTD. ++ ++bluetooth:v014E* ++ ID_VENDOR_FROM_DATABASE=Tangerine, Inc. ++ ++bluetooth:v014F* ++ ID_VENDOR_FROM_DATABASE=B&W Group Ltd. +-- +1.7.9.2 + diff --git a/0005-hwdb-update.patch b/0005-hwdb-update.patch new file mode 100644 index 00000000..e97da5f5 --- /dev/null +++ b/0005-hwdb-update.patch @@ -0,0 +1,1560 @@ +From 7ba52a1283a0864b56947fa091048e8fe31a5899 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Wed, 21 May 2014 18:19:24 +0900 +Subject: [PATCH] hwdb: update + +--- + hwdb/20-OUI.hwdb | 155 ++++++++++++++++++++- + hwdb/20-pci-vendor-model.hwdb | 141 ++++++++++++++++--- + hwdb/20-usb-vendor-model.hwdb | 302 ++++++++++++++++++++++++++++++++++++++++- + 3 files changed, 572 insertions(+), 26 deletions(-) + +diff --git hwdb/20-OUI.hwdb hwdb/20-OUI.hwdb +index afc0d90..6188bfc 100644 +--- hwdb/20-OUI.hwdb ++++ hwdb/20-OUI.hwdb +@@ -52915,6 +52915,9 @@ OUI:0CA42A* + OUI:0CA694* + ID_OUI_FROM_DATABASE=Sunitec Enterprise Co.,Ltd + ++OUI:0CAC05* ++ ID_OUI_FROM_DATABASE=Unitend Technologies Inc. ++ + OUI:0CAF5A* + ID_OUI_FROM_DATABASE=GENUS POWER INFRASTRUCTURES LIMITED + +@@ -53164,6 +53167,9 @@ OUI:1048B1* + OUI:104D77* + ID_OUI_FROM_DATABASE=Innovative Computer Engineering + ++OUI:105172* ++ ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD ++ + OUI:1056CA* + ID_OUI_FROM_DATABASE=Peplink International Ltd. + +@@ -53488,6 +53494,9 @@ OUI:147373* + OUI:147411* + ID_OUI_FROM_DATABASE=RIM + ++OUI:147590* ++ ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. ++ + OUI:147DB3* + ID_OUI_FROM_DATABASE=JOA TELECOM.CO.,LTD + +@@ -53899,6 +53908,9 @@ OUI:18C8E7* + OUI:18CC23* + ID_OUI_FROM_DATABASE=Philio Technology Corporation + ++OUI:18CF5E* ++ ID_OUI_FROM_DATABASE=Liteon Technology Corporation ++ + OUI:18D071* + ID_OUI_FROM_DATABASE=DASAN SMC, Inc. + +@@ -54517,6 +54529,9 @@ OUI:20E791* + OUI:20EAC7* + ID_OUI_FROM_DATABASE=SHENZHEN RIOPINE ELECTRONICS CO., LTD + ++OUI:20ED74* ++ ID_OUI_FROM_DATABASE=Ability enterprise co.,Ltd. ++ + OUI:20EEC6* + ID_OUI_FROM_DATABASE=Elefirst Science & Tech Co ., ltd + +@@ -54742,6 +54757,9 @@ OUI:24CBE7* + OUI:24CF21* + ID_OUI_FROM_DATABASE=Shenzhen State Micro Technology Co., Ltd + ++OUI:24D13F* ++ ID_OUI_FROM_DATABASE=MEXUS CO.,LTD ++ + OUI:24D2CC* + ID_OUI_FROM_DATABASE=SmartDrive Systems Inc. + +@@ -55438,6 +55456,9 @@ OUI:2CF203* + OUI:2CF4C5* + ID_OUI_FROM_DATABASE=Avaya, Inc + ++OUI:2CFAA2* ++ ID_OUI_FROM_DATABASE=Alcatel-Lucent ++ + OUI:30055C* + ID_OUI_FROM_DATABASE=Brother industries, LTD. + +@@ -55708,6 +55729,9 @@ OUI:30F9ED* + OUI:30FD11* + ID_OUI_FROM_DATABASE=MACROTECH (USA) INC. + ++OUI:3400A3* ++ ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD ++ + OUI:340286* + ID_OUI_FROM_DATABASE=Intel Corporate + +@@ -56077,6 +56101,9 @@ OUI:38229D* + OUI:3822D6* + ID_OUI_FROM_DATABASE=H3C Technologies Co., Limited + ++OUI:38262B* ++ ID_OUI_FROM_DATABASE=UTran Technology ++ + OUI:3826CD* + ID_OUI_FROM_DATABASE=ANDTEK + +@@ -56395,6 +56422,9 @@ OUI:3C404F* + OUI:3C438E* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + ++OUI:3C46D8* ++ ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. ++ + OUI:3C4A92* + ID_OUI_FROM_DATABASE=Hewlett-Packard Company + +@@ -56710,6 +56740,9 @@ OUI:404A18* + OUI:404D8E* + ID_OUI_FROM_DATABASE=Shenzhen Huawei Communication Technologies Co., Ltd + ++OUI:404EEB* ++ ID_OUI_FROM_DATABASE=Higher Way Electronic Co., Ltd. ++ + OUI:4050E0* + ID_OUI_FROM_DATABASE=Milton Security Group LLC + +@@ -57709,6 +57742,9 @@ OUI:4CB9C8* + OUI:4CBAA3* + ID_OUI_FROM_DATABASE=Bison Electronics Inc. + ++OUI:4CBB58* ++ ID_OUI_FROM_DATABASE=Chicony Electronics Co., Ltd. ++ + OUI:4CBCA5* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -57757,6 +57793,9 @@ OUI:4CEDDE* + OUI:4CF02E* + ID_OUI_FROM_DATABASE=Vifa Denmark A/S + ++OUI:4CF2BF* ++ ID_OUI_FROM_DATABASE=Cambridge Industries(Group) Co.,Ltd. ++ + OUI:4CF45B* + ID_OUI_FROM_DATABASE=Blue Clover Devices + +@@ -57994,6 +58033,9 @@ OUI:50B888* + OUI:50B8A2* + ID_OUI_FROM_DATABASE=ImTech Technologies LLC, + ++OUI:50BD5F* ++ ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. ++ + OUI:50C006* + ID_OUI_FROM_DATABASE=Carmanah Signs + +@@ -58285,6 +58327,9 @@ OUI:54D1B0* + OUI:54D46F* + ID_OUI_FROM_DATABASE=Cisco SPVTG + ++OUI:54DF00* ++ ID_OUI_FROM_DATABASE=Ulterius Technologies, LLC ++ + OUI:54DF63* + ID_OUI_FROM_DATABASE=Intrakey technologies GmbH + +@@ -58597,6 +58642,9 @@ OUI:58F6BF* + OUI:58F98E* + ID_OUI_FROM_DATABASE=SECUDOS GmbH + ++OUI:58FCDB* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ + OUI:58FD20* + ID_OUI_FROM_DATABASE=Bravida Sakerhet AB + +@@ -58621,6 +58669,9 @@ OUI:5C1193* + OUI:5C1437* + ID_OUI_FROM_DATABASE=Thyssenkrupp Aufzugswerke GmbH + ++OUI:5C1515* ++ ID_OUI_FROM_DATABASE=ADVAN ++ + OUI:5C15E1* + ID_OUI_FROM_DATABASE=AIDC TECHNOLOGY (S) PTE LTD + +@@ -58891,12 +58942,18 @@ OUI:5CF96A* + OUI:5CF9DD* + ID_OUI_FROM_DATABASE=Dell Inc + ++OUI:5CF9F0* ++ ID_OUI_FROM_DATABASE=Atomos Engineering P/L ++ + OUI:5CFF35* + ID_OUI_FROM_DATABASE=Wistron Corporation + + OUI:5CFFFF* + ID_OUI_FROM_DATABASE=Shenzhen Kezhonglong Optoelectronic Technology Co., Ltd + ++OUI:600292* ++ ID_OUI_FROM_DATABASE=PEGATRON CORPORATION ++ + OUI:6002B4* + ID_OUI_FROM_DATABASE=Wistron NeWeb Corp. + +@@ -59323,6 +59380,9 @@ OUI:644F74* + OUI:644FB0* + ID_OUI_FROM_DATABASE=Hyunjin.com + ++OUI:645106* ++ ID_OUI_FROM_DATABASE=Hewlett Packard ++ + OUI:64517E* + ID_OUI_FROM_DATABASE=LONG BEN (DONGGUAN) ELECTRONIC TECHNOLOGY CO.,LTD. + +@@ -59902,6 +59962,9 @@ OUI:68FB95* + OUI:68FCB3* + ID_OUI_FROM_DATABASE=Next Level Security Systems, Inc. + ++OUI:6C0273* ++ ID_OUI_FROM_DATABASE=Shenzhen Jin Yun Video Equipment Co., Ltd. ++ + OUI:6C0460* + ID_OUI_FROM_DATABASE=RBH Access Technologies Inc. + +@@ -60874,6 +60937,9 @@ OUI:781FDB* + OUI:78223D* + ID_OUI_FROM_DATABASE=Affirmed Networks + ++OUI:7824AF* ++ ID_OUI_FROM_DATABASE=ASUSTek COMPUTER INC. ++ + OUI:782544* + ID_OUI_FROM_DATABASE=Omnima Limited + +@@ -60919,6 +60985,9 @@ OUI:784405* + OUI:784476* + ID_OUI_FROM_DATABASE=Zioncom technology co.,ltd + ++OUI:784561* ++ ID_OUI_FROM_DATABASE=CyberTAN Technology Inc. ++ + OUI:7845C4* + ID_OUI_FROM_DATABASE=Dell Inc + +@@ -61024,6 +61093,9 @@ OUI:789966* + OUI:78998F* + ID_OUI_FROM_DATABASE=MEDILINE ITALIA SRL + ++OUI:789CE7* ++ ID_OUI_FROM_DATABASE=Shenzhen Aikede Technology Co., Ltd ++ + OUI:789ED0* + ID_OUI_FROM_DATABASE=Samsung Electronics + +@@ -61480,6 +61552,9 @@ OUI:7CC8D7* + OUI:7CCB0D* + ID_OUI_FROM_DATABASE=Antaira Technologies, LLC + ++OUI:7CCCB8* ++ ID_OUI_FROM_DATABASE=Intel Corporate ++ + OUI:7CCD11* + ID_OUI_FROM_DATABASE=MS-Magnet + +@@ -61945,6 +62020,9 @@ OUI:842F75* + OUI:8430E5* + ID_OUI_FROM_DATABASE=SkyHawke Technologies, LLC + ++OUI:8432EA* ++ ID_OUI_FROM_DATABASE=ANHUI WANZTEN P&T CO., LTD ++ + OUI:843497* + ID_OUI_FROM_DATABASE=Hewlett Packard + +@@ -63295,6 +63373,9 @@ OUI:94CDAC* + OUI:94CE2C* + ID_OUI_FROM_DATABASE=Sony Mobile Communications AB + ++OUI:94CE31* ++ ID_OUI_FROM_DATABASE=CTS Limited ++ + OUI:94D019* + ID_OUI_FROM_DATABASE=Cydle Corp. + +@@ -63409,6 +63490,9 @@ OUI:982CBE* + OUI:982D56* + ID_OUI_FROM_DATABASE=Resolution Audio + ++OUI:982F3C* ++ ID_OUI_FROM_DATABASE=Sichuan Changhong Electric Ltd. ++ + OUI:983000* + ID_OUI_FROM_DATABASE=Beijing KEMACOM Technologies Co., Ltd. + +@@ -63508,6 +63592,9 @@ OUI:9876B6* + OUI:987770* + ID_OUI_FROM_DATABASE=Pep Digital Technology (Guangzhou) Co., Ltd + ++OUI:987E46* ++ ID_OUI_FROM_DATABASE=Emizon Networks Limited ++ + OUI:988217* + ID_OUI_FROM_DATABASE=Disruptive Ltd + +@@ -64303,6 +64390,9 @@ OUI:A40BED* + OUI:A40CC3* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + ++OUI:A41242* ++ ID_OUI_FROM_DATABASE=NEC AccessTechnica, Ltd. ++ + OUI:A4134E* + ID_OUI_FROM_DATABASE=Luxul + +@@ -65740,6 +65830,9 @@ OUI:B4B5AF* + OUI:B4B676* + ID_OUI_FROM_DATABASE=Intel Corporate + ++OUI:B4B859* ++ ID_OUI_FROM_DATABASE=Texa Spa ++ + OUI:B4B88D* + ID_OUI_FROM_DATABASE=Thuh Company + +@@ -65815,6 +65908,9 @@ OUI:B80305* + OUI:B80415* + ID_OUI_FROM_DATABASE=Bayan Audio + ++OUI:B808CF* ++ ID_OUI_FROM_DATABASE=Intel Corporate ++ + OUI:B80B9D* + ID_OUI_FROM_DATABASE=ROPEX Industrie-Elektronik GmbH + +@@ -66277,6 +66373,9 @@ OUI:BC5FF4* + OUI:BC629F* + ID_OUI_FROM_DATABASE=Telenet Systems P. Ltd. + ++OUI:BC671C* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:BC6778* + ID_OUI_FROM_DATABASE=Apple + +@@ -66412,6 +66511,9 @@ OUI:BCCFCC* + OUI:BCD177* + ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. + ++OUI:BCD1D3* ++ ID_OUI_FROM_DATABASE=Tinno Mobile Technology Corp ++ + OUI:BCD5B6* + ID_OUI_FROM_DATABASE=d2d technologies + +@@ -66706,6 +66808,9 @@ OUI:C0E54E* + OUI:C0EAE4* + ID_OUI_FROM_DATABASE=Sonicwall + ++OUI:C0EEFB* ++ ID_OUI_FROM_DATABASE=OnePlus Tech (Shenzhen) Ltd ++ + OUI:C0F1C4* + ID_OUI_FROM_DATABASE=Pacidal Corporation Ltd. + +@@ -66721,6 +66826,9 @@ OUI:C0F8DA* + OUI:C0F991* + ID_OUI_FROM_DATABASE=GME Standard Communications P/L + ++OUI:C40006* ++ ID_OUI_FROM_DATABASE=Lipi Data Systems Ltd. ++ + OUI:C40142* + ID_OUI_FROM_DATABASE=MaxMedia Technology Limited + +@@ -67885,6 +67993,9 @@ OUI:D09C30* + OUI:D09D0A* + ID_OUI_FROM_DATABASE=LINKCOM + ++OUI:D0A0D6* ++ ID_OUI_FROM_DATABASE=Chengdu TD Tech Ltd. ++ + OUI:D0A311* + ID_OUI_FROM_DATABASE=Neuberger Gebäudeautomation GmbH + +@@ -68126,7 +68237,7 @@ OUI:D45AB2* + ID_OUI_FROM_DATABASE=Galleon Systems + + OUI:D45C70* +- ID_OUI_FROM_DATABASE=Wireless Gigabit Alliance ++ ID_OUI_FROM_DATABASE=Wi-Fi Alliance + + OUI:D45D42* + ID_OUI_FROM_DATABASE=Nokia Corporation +@@ -68359,6 +68470,9 @@ OUI:D808F5* + OUI:D809C3* + ID_OUI_FROM_DATABASE=Cercacor Labs + ++OUI:D80CCF* ++ ID_OUI_FROM_DATABASE=C.G.V. S.A.S. ++ + OUI:D80DE3* + ID_OUI_FROM_DATABASE=FXI TECHNOLOGIES AS + +@@ -68386,6 +68500,9 @@ OUI:D81EDE* + OUI:D824BD* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + ++OUI:D82522* ++ ID_OUI_FROM_DATABASE=Pace plc ++ + OUI:D826B9* + ID_OUI_FROM_DATABASE=Guangdong Coagent Electronics S &T Co., Ltd. + +@@ -68521,6 +68638,9 @@ OUI:D89685* + OUI:D89695* + ID_OUI_FROM_DATABASE=Apple + ++OUI:D896E0* ++ ID_OUI_FROM_DATABASE=Alibaba Cloud Computing Ltd. ++ + OUI:D8973B* + ID_OUI_FROM_DATABASE=Artesyn Embedded Technologies + +@@ -68941,6 +69061,9 @@ OUI:E01C41* + OUI:E01CEE* + ID_OUI_FROM_DATABASE=Bravo Tech, Inc. + ++OUI:E01D38* ++ ID_OUI_FROM_DATABASE=Beijing HuaqinWorld Technology Co.,Ltd ++ + OUI:E01D3B* + ID_OUI_FROM_DATABASE=Cambridge Industries(Group) Co.,Ltd + +@@ -69373,6 +69496,9 @@ OUI:E47CF9* + OUI:E47D5A* + ID_OUI_FROM_DATABASE=Beijing Hanbang Technology Corp. + ++OUI:E47FB2* ++ ID_OUI_FROM_DATABASE=Fujitsu Limited ++ + OUI:E48184* + ID_OUI_FROM_DATABASE=Alcatel-Lucent + +@@ -69829,6 +69955,9 @@ OUI:EC219F* + OUI:EC2257* + ID_OUI_FROM_DATABASE=JiangSu NanJing University Electronic Information Technology Co.,Ltd + ++OUI:EC2280* ++ ID_OUI_FROM_DATABASE=D-Link International ++ + OUI:EC233D* + ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd + +@@ -69970,6 +70099,9 @@ OUI:ECB106* + OUI:ECB541* + ID_OUI_FROM_DATABASE=SHINANO E and E Co.Ltd. + ++OUI:ECB907* ++ ID_OUI_FROM_DATABASE=CloudGenix Inc ++ + OUI:ECBBAE* + ID_OUI_FROM_DATABASE=Digivoice Tecnologia em Eletronica Ltda + +@@ -70189,6 +70321,9 @@ OUI:F0728C* + OUI:F073AE* + ID_OUI_FROM_DATABASE=PEAK-System Technik + ++OUI:F0761C* ++ ID_OUI_FROM_DATABASE=COMPAL INFORMATION (KUNSHAN) CO., LTD. ++ + OUI:F07765* + ID_OUI_FROM_DATABASE=Sourcefire, Inc + +@@ -70378,6 +70513,9 @@ OUI:F40321* + OUI:F4044C* + ID_OUI_FROM_DATABASE=ValenceTech Limited + ++OUI:F40669* ++ ID_OUI_FROM_DATABASE=Intel Corporate ++ + OUI:F4068D* + ID_OUI_FROM_DATABASE=devolo AG + +@@ -70642,6 +70780,9 @@ OUI:F4EC38* + OUI:F4F15A* + ID_OUI_FROM_DATABASE=Apple + ++OUI:F4F26D* ++ ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. ++ + OUI:F4F5A5* + ID_OUI_FROM_DATABASE=Nokia corporation + +@@ -70825,6 +70966,9 @@ OUI:F871FE* + OUI:F872EA* + ID_OUI_FROM_DATABASE=Cisco + ++OUI:F87394* ++ ID_OUI_FROM_DATABASE=NETGEAR INC., ++ + OUI:F8769B* + ID_OUI_FROM_DATABASE=Neopis Co., Ltd. + +@@ -70915,6 +71059,9 @@ OUI:F8C001* + OUI:F8C091* + ID_OUI_FROM_DATABASE=Highgates Technology + ++OUI:F8C288* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:F8C678* + ID_OUI_FROM_DATABASE=Carefusion + +@@ -71167,6 +71314,9 @@ OUI:FC683E* + OUI:FC6C31* + ID_OUI_FROM_DATABASE=LXinstruments GmbH + ++OUI:FC6DC0* ++ ID_OUI_FROM_DATABASE=BME CORPORATION ++ + OUI:FC7516* + ID_OUI_FROM_DATABASE=D-Link International + +@@ -71319,3 +71469,6 @@ OUI:FCFBFB* + + OUI:FCFE77* + ID_OUI_FROM_DATABASE=Hitachi Reftechno, Inc. ++ ++OUI:FCFFAA* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAL public listing for more information. +diff --git hwdb/20-pci-vendor-model.hwdb hwdb/20-pci-vendor-model.hwdb +index 2957774..62941b9 100644 +--- hwdb/20-pci-vendor-model.hwdb ++++ hwdb/20-pci-vendor-model.hwdb +@@ -4205,6 +4205,9 @@ pci:v00001002d00005F57* + pci:v00001002d00006600* + ID_MODEL_FROM_DATABASE=Mars [Radeon HD 8670A/8670M/8750M] + ++pci:v00001002d00006600sv0000103Csd00001952* ++ ID_MODEL_FROM_DATABASE=Mars [Radeon HD 8670A/8670M/8750M] (ProBook 455 G1) ++ + pci:v00001002d00006601* + ID_MODEL_FROM_DATABASE=Mars [Radeon HD 8730M] + +@@ -4292,6 +4295,12 @@ pci:v00001002d00006640* + pci:v00001002d00006641* + ID_MODEL_FROM_DATABASE=Saturn PRO [Radeon HD 8930M] + ++pci:v00001002d00006646* ++ ID_MODEL_FROM_DATABASE=Bonaire XT [Radeon R9 M280X] ++ ++pci:v00001002d00006647* ++ ID_MODEL_FROM_DATABASE=Bonaire PRO [Radeon R9 M270X] ++ + pci:v00001002d00006649* + ID_MODEL_FROM_DATABASE=Bonaire [FirePro W5100] + +@@ -6137,6 +6146,9 @@ pci:v00001002d0000683Dsv0000103Csd00006890* + pci:v00001002d0000683Dsv00001043sd00008760* + ID_MODEL_FROM_DATABASE=Cape Verde XT [Radeon HD 7770/8760 / R7 250X] (Radeon HD 8760 OEM) + ++pci:v00001002d0000683Dsv00001462sd00002710* ++ ID_MODEL_FROM_DATABASE=Cape Verde XT [Radeon HD 7770/8760 / R7 250X] (R7770-PMD1GD5) ++ + pci:v00001002d0000683Dsv0000174Bsd00008304* + ID_MODEL_FROM_DATABASE=Cape Verde XT [Radeon HD 7770/8760 / R7 250X] (Radeon HD 8760 OEM) + +@@ -7856,6 +7868,15 @@ pci:v00001002d00006901* + pci:v00001002d00006920* + ID_MODEL_FROM_DATABASE=Tonga + ++pci:v00001002d00006921* ++ ID_MODEL_FROM_DATABASE=Amethyst XT [Radeon R9 M295X] ++ ++pci:v00001002d0000692B* ++ ID_MODEL_FROM_DATABASE=Tonga XT GL [FirePro W8100] ++ ++pci:v00001002d0000692F* ++ ID_MODEL_FROM_DATABASE=Tonga XT GL [FirePro W8100] ++ + pci:v00001002d0000700F* + ID_MODEL_FROM_DATABASE=RS100 AGP Bridge + +@@ -24470,6 +24491,9 @@ pci:v000010DEd00000640* + pci:v000010DEd00000641* + ID_MODEL_FROM_DATABASE=G96 [GeForce 9400 GT] + ++pci:v000010DEd00000641sv00001682sd00004009* ++ ID_MODEL_FROM_DATABASE=G96 [GeForce 9400 GT] (PV-T94G-ZAFG) ++ + pci:v000010DEd00000643* + ID_MODEL_FROM_DATABASE=G96 [GeForce 9500 GT] + +@@ -26306,6 +26330,9 @@ pci:v000010DEd00000FD8* + pci:v000010DEd00000FD9* + ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 645M] + ++pci:v000010DEd00000FDB* ++ ID_MODEL_FROM_DATABASE=GK107M ++ + pci:v000010DEd00000FDF* + ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 740M] + +@@ -26861,6 +26888,12 @@ pci:v000010DEd00001140sv00001028sd000005E8* + pci:v000010DEd00001140sv00001028sd000005F4* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + ++pci:v000010DEd00001140sv00001028sd0000064E* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001028sd0000068D* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ + pci:v000010DEd00001140sv0000103Csd000018EF* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + +@@ -27185,6 +27218,36 @@ pci:v000010DEd00001140sv000017AAsd00003803* + pci:v000010DEd00001140sv000017AAsd00003804* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + ++pci:v000010DEd00001140sv000017AAsd00003806* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) ++ ++pci:v000010DEd00001140sv000017AAsd00003808* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) ++ ++pci:v000010DEd00001140sv000017AAsd0000380D* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv000017AAsd0000380E* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv000017AAsd0000380F* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv000017AAsd00003811* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv000017AAsd00003812* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv000017AAsd00003813* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv000017AAsd00003816* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv000017AAsd00003818* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ + pci:v000010DEd00001140sv000017AAsd00003901* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 610M / GT 620M) + +@@ -27260,12 +27323,27 @@ pci:v000010DEd00001140sv000017AAsd0000502E* + pci:v000010DEd00001140sv000017AAsd0000502F* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + ++pci:v000010DEd00001140sv000017AAsd00005030* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 705M) ++ ++pci:v000010DEd00001140sv000017AAsd00005031* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 705M) ++ ++pci:v000010DEd00001140sv000017AAsd00005032* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv000017AAsd00005033* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ + pci:v000010DEd00001140sv000017AAsd0000503E* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + + pci:v000010DEd00001140sv000017AAsd0000503F* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + ++pci:v000010DEd00001140sv000017AAsd00005040* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ + pci:v000010DEd00001140sv00001854sd00000177* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + +@@ -28443,7 +28521,7 @@ pci:v000010ECd00008168sv00001043sd00008432* + ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (P8P67 and other motherboards) + + pci:v000010ECd00008168sv00001043sd00008505* +- ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (P8H77-I Motherboard) ++ ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (P8 series motherboard) + + pci:v000010ECd00008168sv0000105Bsd00000D7C* + ID_MODEL_FROM_DATABASE=RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (D270S/D250S Motherboard) +@@ -35300,6 +35378,9 @@ pci:v000011ABd00007810* + pci:v000011ABd00007820* + ID_MODEL_FROM_DATABASE=MV78200 [Discovery Innovation] ARM SoC + ++pci:v000011ABd00007823* ++ ID_MODEL_FROM_DATABASE=MV78230 [Armada XP] ARM SoC ++ + pci:v000011ABd0000F003* + ID_MODEL_FROM_DATABASE=GT-64010 Primary Image Piranha Image Generator + +@@ -36602,17 +36683,20 @@ pci:v00001217d00008120* + pci:v00001217d00008130* + ID_MODEL_FROM_DATABASE=Integrated MS/MSPRO/xD Controller + ++pci:v00001217d00008220* ++ ID_MODEL_FROM_DATABASE=OZ600FJ1/OZ900FJ1 SD/MMC Card Reader Controller ++ + pci:v00001217d00008221* +- ID_MODEL_FROM_DATABASE=SD/MMC Card Reader Controller ++ ID_MODEL_FROM_DATABASE=OZ600FJ0/OZ900FJ0/OZ600FJS SD/MMC Card Reader Controller + + pci:v00001217d00008320* +- ID_MODEL_FROM_DATABASE=OZ600 MMC/SD Controller ++ ID_MODEL_FROM_DATABASE=OZ600RJ1/OZ900RJ1 SD/MMC Card Reader Controller + + pci:v00001217d00008320sv00001028sd000004A3* +- ID_MODEL_FROM_DATABASE=OZ600 MMC/SD Controller (Precision M4600) ++ ID_MODEL_FROM_DATABASE=OZ600RJ1/OZ900RJ1 SD/MMC Card Reader Controller (Precision M4600) + + pci:v00001217d00008321* +- ID_MODEL_FROM_DATABASE=Integrated MMC/SD controller ++ ID_MODEL_FROM_DATABASE=OZ600RJ0/OZ900RJ0/OZ600RJS SD/MMC Card Reader Controller + + pci:v00001217d00008330* + ID_MODEL_FROM_DATABASE=OZ600 MS/xD Controller +@@ -46403,6 +46487,9 @@ pci:v000014F1d00008800sv00000070sd00009802* + pci:v000014F1d00008800sv00001002sd000000F8* + ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (ATI TV Wonder Pro) + ++pci:v000014F1d00008800sv00001002sd000000F9* ++ ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (ATI TV Wonder) ++ + pci:v000014F1d00008800sv00001002sd0000A101* + ID_MODEL_FROM_DATABASE=CX23880/1/2/3 PCI Video and Audio Decoder (HDTV Wonder) + +@@ -50978,6 +51065,12 @@ pci:v000018F4d00000125* + pci:v000018F4d00000135* + ID_MODEL_FROM_DATABASE=NT20E2-PTP Network Adapter 2x10Gb + ++pci:v000018F4d00000145* ++ ID_MODEL_FROM_DATABASE=NT40E3-4-PTP Network Adapter 4x10Gb ++ ++pci:v000018F4d00000155* ++ ID_MODEL_FROM_DATABASE=NT100E3-1-PTP Network Adapter 1x100Gb ++ + pci:v000018F6* + ID_VENDOR_FROM_DATABASE=NextIO + +@@ -55143,7 +55236,7 @@ pci:v00008086d00000150* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller + + pci:v00008086d00000150sv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (P8H77-I Motherboard) ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (P8 series motherboard) + + pci:v00008086d00000150sv00001849sd00000150* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (Motherboard) +@@ -55229,6 +55322,9 @@ pci:v00008086d0000015E* + pci:v00008086d00000162* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller + ++pci:v00008086d00000162sv00001043sd000084CA* ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller (P8 series motherboard) ++ + pci:v00008086d00000162sv00001849sd00000162* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller (Motherboard) + +@@ -59061,10 +59157,10 @@ pci:v00008086d00001521sv00001028sd00000602* + ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Gigabit 2P I350-t LOM) + + pci:v00008086d00001521sv00001028sd00001F60* +- ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Intel GbE 4P I350crNDC) ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Gigabit 4P I350-t rNDC) + + pci:v00008086d00001521sv00001028sd00001F62* +- ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Intel GbE 2P I350crNDC) ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Gigabit 4P X540/I350 rNDC) + + pci:v00008086d00001521sv00001028sd0000FF9A* + ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Gigabit 4P X710/I350 rNDC) +@@ -59250,7 +59346,10 @@ pci:v00008086d00001533* + ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection + + pci:v00008086d00001533sv0000103Csd00000003* +- ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection (Ethernet Server Adapter I210-T1) ++ ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection (Ethernet I210-T1 GbE NIC) ++ ++pci:v00008086d00001533sv000010A9sd0000802C* ++ ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection (UV300 BaseIO single-port GbE) + + pci:v00008086d00001533sv000017AAsd00001100* + ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection (ThinkServer Ethernet Server Adapter) +@@ -59261,15 +59360,15 @@ pci:v00008086d00001533sv00008086sd00000001* + pci:v00008086d00001533sv00008086sd00000002* + ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection (Ethernet Server Adapter I210-T1) + +-pci:v00008086d00001534* +- ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection +- + pci:v00008086d00001536* + ID_MODEL_FROM_DATABASE=I210 Gigabit Fiber Network Connection + + pci:v00008086d00001537* + ID_MODEL_FROM_DATABASE=I210 Gigabit Backplane Connection + ++pci:v00008086d00001538* ++ ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection ++ + pci:v00008086d00001539* + ID_MODEL_FROM_DATABASE=I211 Gigabit Network Connection + +@@ -60267,7 +60366,7 @@ pci:v00008086d00001E02* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family 6-port SATA Controller [AHCI mode] + + pci:v00008086d00001E02sv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family 6-port SATA Controller [AHCI mode] (P8H77-I Motherboard) ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family 6-port SATA Controller [AHCI mode] (P8 series motherboard) + + pci:v00008086d00001E02sv00001849sd00001E02* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family 6-port SATA Controller [AHCI mode] (Motherboard) +@@ -60374,6 +60473,9 @@ pci:v00008086d00001E20sv00001043sd00001517* + pci:v00008086d00001E20sv00001043sd00008415* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family High Definition Audio Controller (P8H77-I Motherboard) + ++pci:v00008086d00001E20sv00001043sd00008445* ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family High Definition Audio Controller (ASUS P8Z77-V LX Motherboard) ++ + pci:v00008086d00001E20sv00001849sd00001898* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family High Definition Audio Controller (Z77 Extreme4 motherboard) + +@@ -60387,7 +60489,7 @@ pci:v00008086d00001E22sv00001043sd00001517* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family SMBus Controller (Zenbook Prime UX31A) + + pci:v00008086d00001E22sv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family SMBus Controller (P8H77-I Motherboard) ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family SMBus Controller (P8 series motherboard) + + pci:v00008086d00001E22sv00001849sd00001E22* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family SMBus Controller (Motherboard) +@@ -60411,7 +60513,7 @@ pci:v00008086d00001E26sv00001043sd00001517* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (Zenbook Prime UX31A) + + pci:v00008086d00001E26sv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (P8H77-I Motherboard) ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (P8 series motherboard) + + pci:v00008086d00001E26sv00001849sd00001E26* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (Motherboard) +@@ -60426,7 +60528,7 @@ pci:v00008086d00001E2Dsv00001043sd00001517* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (Zenbook Prime UX31A) + + pci:v00008086d00001E2Dsv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (P8H77-I Motherboard) ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (P8 series motherboard) + + pci:v00008086d00001E2Dsv00001849sd00001E2D* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (Motherboard) +@@ -60444,7 +60546,7 @@ pci:v00008086d00001E31sv00001043sd00001517* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB xHCI Host Controller (Zenbook Prime UX31A) + + pci:v00008086d00001E31sv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB xHCI Host Controller (P8H77-I Motherboard) ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB xHCI Host Controller (P8 series motherboard) + + pci:v00008086d00001E31sv00001849sd00001E31* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family USB xHCI Host Controller (Motherboard) +@@ -60462,7 +60564,7 @@ pci:v00008086d00001E3Asv00001043sd00001517* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family MEI Controller #1 (Zenbook Prime UX31A) + + pci:v00008086d00001E3Asv00001043sd000084CA* +- ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family MEI Controller #1 (P8H77-I Motherboard) ++ ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family MEI Controller #1 (P8 series motherboard) + + pci:v00008086d00001E3Asv00001849sd00001E3A* + ID_MODEL_FROM_DATABASE=7 Series/C210 Series Chipset Family MEI Controller #1 (Motherboard) +@@ -60488,6 +60590,9 @@ pci:v00008086d00001E43* + pci:v00008086d00001E44* + ID_MODEL_FROM_DATABASE=Z77 Express Chipset LPC Controller + ++pci:v00008086d00001E44sv00001043sd000084CA* ++ ID_MODEL_FROM_DATABASE=Z77 Express Chipset LPC Controller (P8 series motherboard) ++ + pci:v00008086d00001E44sv00001849sd00001E44* + ID_MODEL_FROM_DATABASE=Z77 Express Chipset LPC Controller (Motherboard) + +diff --git hwdb/20-usb-vendor-model.hwdb hwdb/20-usb-vendor-model.hwdb +index 52586bc..05f267d 100644 +--- hwdb/20-usb-vendor-model.hwdb ++++ hwdb/20-usb-vendor-model.hwdb +@@ -41163,7 +41163,7 @@ usb:v1234pED02* + ID_MODEL_FROM_DATABASE=Emotiv EPOC Developer Headset Wireless Dongle + + usb:v1235* +- ID_VENDOR_FROM_DATABASE=Novation EMS ++ ID_VENDOR_FROM_DATABASE=Focusrite-Novation + + usb:v1235p0001* + ID_MODEL_FROM_DATABASE=ReMOTE Audio/XStation First Edition +@@ -41729,6 +41729,9 @@ usb:v12D1p155A* + usb:v12D1p1575* + ID_MODEL_FROM_DATABASE=K5150 LTE modem + ++usb:v12D1p15CA* ++ ID_MODEL_FROM_DATABASE=E3131 3G/UMTS/HSPA+ Modem (Mass Storage Mode) ++ + usb:v12D1p1805* + ID_MODEL_FROM_DATABASE=AT&T Go Phone U2800A phone + +@@ -41744,6 +41747,12 @@ usb:v12D1p1C20* + usb:v12D1p1D50* + ID_MODEL_FROM_DATABASE=ET302s TD-SCDMA/TD-HSDPA Mobile Broadband + ++usb:v12D1p1F01* ++ ID_MODEL_FROM_DATABASE=E353/E3131 (Mass storage mode) ++ ++usb:v12D1p1F16* ++ ID_MODEL_FROM_DATABASE=K5150 LTE modem (Mass Storage Mode) ++ + usb:v12D1p380B* + ID_MODEL_FROM_DATABASE=WiMAX USB modem(s) + +@@ -41762,6 +41771,12 @@ usb:v12D6p0888* + usb:v12D7* + ID_VENDOR_FROM_DATABASE=BETTER WIRE FACTORY CO., LTD. + ++usb:v12D8* ++ ID_VENDOR_FROM_DATABASE=Araneus Information Systems Oy ++ ++usb:v12D8p0001* ++ ID_MODEL_FROM_DATABASE=Alea I True Random Number Generator ++ + usb:v12E6* + ID_VENDOR_FROM_DATABASE=Waldorf Music GmbH + +@@ -41805,7 +41820,7 @@ usb:v1307p0163* + ID_MODEL_FROM_DATABASE=256MB/512MB/1GB Flash Drive + + usb:v1307p0165* +- ID_MODEL_FROM_DATABASE=2GB/4GB Flash Drive ++ ID_MODEL_FROM_DATABASE=2GB/4GB/8GB Flash Drive + + usb:v1307p0190* + ID_MODEL_FROM_DATABASE=Ut190 8 GB Flash Drive with MicroSD reader +@@ -41846,6 +41861,51 @@ usb:v1312* + usb:v1313* + ID_VENDOR_FROM_DATABASE=ThorLabs + ++usb:v1313p0010* ++ ID_MODEL_FROM_DATABASE=LC1 Linear Camera (Jungo) ++ ++usb:v1313p0011* ++ ID_MODEL_FROM_DATABASE=SP1 Spectrometer (Jungo) ++ ++usb:v1313p0012* ++ ID_MODEL_FROM_DATABASE=SP2 Spectrometer (Jungo) ++ ++usb:v1313p0110* ++ ID_MODEL_FROM_DATABASE=LC1 Linear Camera (VISA) ++ ++usb:v1313p0111* ++ ID_MODEL_FROM_DATABASE=SP1 Spectrometer (VISA) ++ ++usb:v1313p0112* ++ ID_MODEL_FROM_DATABASE=SP2 Spectrometer (VISA) ++ ++usb:v1313p8001* ++ ID_MODEL_FROM_DATABASE=TXP-Series Slot (TXP5001, TXP5004) ++ ++usb:v1313p8012* ++ ID_MODEL_FROM_DATABASE=BC106 Camera Beam Profiler ++ ++usb:v1313p8013* ++ ID_MODEL_FROM_DATABASE=WFS10 Wavefront Sensor ++ ++usb:v1313p8017* ++ ID_MODEL_FROM_DATABASE=BC206 Camera Beam Profiler ++ ++usb:v1313p8019* ++ ID_MODEL_FROM_DATABASE=BP2 Multi Slit Beam Profiler ++ ++usb:v1313p8020* ++ ID_MODEL_FROM_DATABASE=PM300 Optical Power Meter ++ ++usb:v1313p8021* ++ ID_MODEL_FROM_DATABASE=PM300E Optical Power and Energy Meter ++ ++usb:v1313p8022* ++ ID_MODEL_FROM_DATABASE=PM320E Optical Power and Energy Meter ++ ++usb:v1313p8030* ++ ID_MODEL_FROM_DATABASE=ER100 Extinction Ratio Meter ++ + usb:v1313p8070* + ID_MODEL_FROM_DATABASE=PM100D + +@@ -41975,6 +42035,18 @@ usb:v1342p0204* + usb:v1342p0304* + ID_MODEL_FROM_DATABASE=EasiDock Ethernet + ++usb:v1343* ++ ID_VENDOR_FROM_DATABASE=Citizen Systems ++ ++usb:v1343p0003* ++ ID_MODEL_FROM_DATABASE=CX / DNP DS40 ++ ++usb:v1343p0004* ++ ID_MODEL_FROM_DATABASE=CX-W / DNP DS80 ++ ++usb:v1343p0005* ++ ID_MODEL_FROM_DATABASE=CY / DNP DSRX ++ + usb:v1345* + ID_VENDOR_FROM_DATABASE=Sino Lite Technology Corp. + +@@ -42002,6 +42074,12 @@ usb:v1347p0403* + usb:v1347p0404* + ID_MODEL_FROM_DATABASE=G2/G3/G4 CCD-F KAF CCD + ++usb:v1347p0405* ++ ID_MODEL_FROM_DATABASE=Gx CCD-I CCD ++ ++usb:v1347p0406* ++ ID_MODEL_FROM_DATABASE=Gx CCD-F CCD ++ + usb:v1347p0410* + ID_MODEL_FROM_DATABASE=G1-0400 CCD + +@@ -42149,6 +42227,9 @@ usb:v138Ap003C* + usb:v138Ap003D* + ID_MODEL_FROM_DATABASE=VFS491 + ++usb:v138Ap0050* ++ ID_MODEL_FROM_DATABASE=Swipe Fingerprint Sensor ++ + usb:v138E* + ID_VENDOR_FROM_DATABASE=Jungo LTD + +@@ -42161,6 +42242,9 @@ usb:v1390* + usb:v1390p0001* + ID_MODEL_FROM_DATABASE=GO 520 T/GO 630/ONE XL (v9) + ++usb:v1390p5454* ++ ID_MODEL_FROM_DATABASE=Blue & Me 2 ++ + usb:v1391* + ID_VENDOR_FROM_DATABASE=IdealTEK, Inc. + +@@ -42263,6 +42347,15 @@ usb:v13B1p0039* + usb:v13B1p003A* + ID_MODEL_FROM_DATABASE=AE2500 802.11abgn Wireless Adapter [Broadcom BCM43236] + ++usb:v13B1p003B* ++ ID_MODEL_FROM_DATABASE=AE3000 802.11abgn (3x3) Wireless Adapter [Ralink RT3573] ++ ++usb:v13B1p003E* ++ ID_MODEL_FROM_DATABASE=AE6000 802.11a/b/g/n/ac Wireless Adapter [MediaTek MT7610U] ++ ++usb:v13B1p003F* ++ ID_MODEL_FROM_DATABASE=WUSB6300 802.11a/b/g/n/ac Wireless Adapter [Realtek RTL8812AU] ++ + usb:v13B1p13B1* + ID_MODEL_FROM_DATABASE=WUSB200: Wireless-G Business Network Adapter with Rangebooster + +@@ -42446,6 +42539,12 @@ usb:v13D3p3315* + usb:v13D3p3375* + ID_MODEL_FROM_DATABASE=Atheros AR3012 Bluetooth 4.0 Adapter + ++usb:v13D3p3392* ++ ID_MODEL_FROM_DATABASE=Azurewave 43228+20702 ++ ++usb:v13D3p3394* ++ ID_MODEL_FROM_DATABASE=Bluetooth ++ + usb:v13D3p5070* + ID_MODEL_FROM_DATABASE=Webcam + +@@ -42458,6 +42557,9 @@ usb:v13D3p5115* + usb:v13D3p5116* + ID_MODEL_FROM_DATABASE=Integrated Webcam + ++usb:v13D3p5122* ++ ID_MODEL_FROM_DATABASE=2M Integrated Webcam ++ + usb:v13D3p5126* + ID_MODEL_FROM_DATABASE=PC Cam + +@@ -42524,6 +42626,9 @@ usb:v13FDp0840* + usb:v13FDp0841* + ID_MODEL_FROM_DATABASE=Samsung SE-T084M DVD-RW + ++usb:v13FDp1040* ++ ID_MODEL_FROM_DATABASE=INIC-1511L PATA Bridge ++ + usb:v13FDp1340* + ID_MODEL_FROM_DATABASE=Hi-Speed USB to SATA Bridge + +@@ -42533,9 +42638,15 @@ usb:v13FDp160F* + usb:v13FDp1640* + ID_MODEL_FROM_DATABASE=INIC-1610L SATA Bridge + ++usb:v13FDp1669* ++ ID_MODEL_FROM_DATABASE=INIC-1609PN ++ + usb:v13FDp1840* + ID_MODEL_FROM_DATABASE=INIC-1608 SATA bridge + ++usb:v13FDp1E40* ++ ID_MODEL_FROM_DATABASE=INIC-1610P SATA bridge ++ + usb:v13FE* + ID_VENDOR_FROM_DATABASE=Kingston Technology Company Inc. + +@@ -42555,10 +42666,10 @@ usb:v13FEp1E50* + ID_MODEL_FROM_DATABASE=U3 Smart Drive + + usb:v13FEp1F00* +- ID_MODEL_FROM_DATABASE=DataTraveler 2.0 4GB Flash Drive / Patriot Xporter 32GB (PEF32GUSB) Flash Drive ++ ID_MODEL_FROM_DATABASE=Kingston DataTraveler / Patriot Xporter + + usb:v13FEp1F23* +- ID_MODEL_FROM_DATABASE=2Gb ++ ID_MODEL_FROM_DATABASE=PS2232 flash drive controller + + usb:v13FEp2240* + ID_MODEL_FROM_DATABASE=microSD card reader +@@ -42569,12 +42680,18 @@ usb:v13FEp3100* + usb:v13FEp3123* + ID_MODEL_FROM_DATABASE=Verbatim STORE N GO 4GB + ++usb:v13FEp3600* ++ ID_MODEL_FROM_DATABASE=flash drive (4GB, EMTEC) ++ + usb:v13FEp3800* + ID_MODEL_FROM_DATABASE=Rage XT Flash Drive + + usb:v13FEp3E00* + ID_MODEL_FROM_DATABASE=Flash Drive + ++usb:v13FEp5000* ++ ID_MODEL_FROM_DATABASE=USB flash drive (32 GB SHARKOON Accelerate) ++ + usb:v13FEp5100* + ID_MODEL_FROM_DATABASE=Flash Drive + +@@ -42674,6 +42791,12 @@ usb:v1415p2000* + usb:v1419* + ID_VENDOR_FROM_DATABASE=ABILITY ENTERPRISE CO., LTD. + ++usb:v1421* ++ ID_VENDOR_FROM_DATABASE=Sensor Technology ++ ++usb:v1421p0605* ++ ID_MODEL_FROM_DATABASE=Sentech Camera ++ + usb:v1429* + ID_VENDOR_FROM_DATABASE=Vega Technologies Industrial (Austria) Co. + +@@ -42776,6 +42899,18 @@ usb:v1457p5118* + usb:v1457p5119* + ID_MODEL_FROM_DATABASE=OpenMoko Neo1973 u-boot cdc_acm serial port + ++usb:v1457p511A* ++ ID_MODEL_FROM_DATABASE=HXD8 u-boot usbtty CDC ACM Mode ++ ++usb:v1457p511B* ++ ID_MODEL_FROM_DATABASE=SMDK2440 u-boot usbtty CDC ACM mode ++ ++usb:v1457p511C* ++ ID_MODEL_FROM_DATABASE=SMDK2443 u-boot usbtty CDC ACM mode ++ ++usb:v1457p511D* ++ ID_MODEL_FROM_DATABASE=QT2410 u-boot usbtty CDC ACM mode ++ + usb:v1457p5120* + ID_MODEL_FROM_DATABASE=OpenMoko Neo1973 u-boot usbtty generic serial + +@@ -42935,6 +43070,9 @@ usb:v148E* + usb:v148F* + ID_VENDOR_FROM_DATABASE=Ralink Technology, Corp. + ++usb:v148Fp1000* ++ ID_MODEL_FROM_DATABASE=Motorola BC4 Bluetooth 3.0+HS Adapter ++ + usb:v148Fp1706* + ID_MODEL_FROM_DATABASE=RT2500USB Wireless Adapter + +@@ -42983,6 +43121,9 @@ usb:v148Fp5372* + usb:v148Fp5572* + ID_MODEL_FROM_DATABASE=RT5572 Wireless Adapter + ++usb:v148Fp7601* ++ ID_MODEL_FROM_DATABASE=MT7601U Wireless Adapter ++ + usb:v148Fp9020* + ID_MODEL_FROM_DATABASE=RT2500USB Wireless Adapter + +@@ -42998,6 +43139,15 @@ usb:v1491p0020* + usb:v1493* + ID_VENDOR_FROM_DATABASE=Suunto + ++usb:v1493p0010* ++ ID_MODEL_FROM_DATABASE=Bluebird [Ambit] ++ ++usb:v1493p0019* ++ ID_MODEL_FROM_DATABASE=Duck [Ambit2] ++ ++usb:v1493p001A* ++ ID_MODEL_FROM_DATABASE=Colibri [Ambit2 S] ++ + usb:v1497* + ID_VENDOR_FROM_DATABASE=Panstrong Company Ltd. + +@@ -43118,6 +43268,9 @@ usb:v14CD* + usb:v14CDp121C* + ID_MODEL_FROM_DATABASE=microSD card reader + ++usb:v14CDp121F* ++ ID_MODEL_FROM_DATABASE=microSD CardReader SY-T18 ++ + usb:v14CDp123A* + ID_MODEL_FROM_DATABASE=SD/MMC/RS-MMC Card Reader + +@@ -43131,7 +43284,7 @@ usb:v14CDp6116* + ID_MODEL_FROM_DATABASE=M6116 SATA Bridge + + usb:v14CDp6600* +- ID_MODEL_FROM_DATABASE=USB 2.0 IDE DEVICE ++ ID_MODEL_FROM_DATABASE=M110E PATA bridge + + usb:v14CDp6700* + ID_MODEL_FROM_DATABASE=Card Reader +@@ -43166,6 +43319,9 @@ usb:v14E1* + usb:v14E1p5000* + ID_MODEL_FROM_DATABASE=PenMount 5000 Touch Controller + ++usb:v14E4* ++ ID_VENDOR_FROM_DATABASE=Broadcom Corp. ++ + usb:v14E5* + ID_VENDOR_FROM_DATABASE=SAIN Information & Communications Co., Ltd. + +@@ -43214,6 +43370,15 @@ usb:v1501* + usb:v1509* + ID_VENDOR_FROM_DATABASE=First International Computer, Inc. + ++usb:v1509p0A01* ++ ID_MODEL_FROM_DATABASE=LI-3100 Area Meter ++ ++usb:v1509p0A02* ++ ID_MODEL_FROM_DATABASE=LI-7000 CO2/H2O Gas Analyzer ++ ++usb:v1509p0A03* ++ ID_MODEL_FROM_DATABASE=C-DiGit Blot Scanner ++ + usb:v1509p9242* + ID_MODEL_FROM_DATABASE=eHome Infrared Transceiver + +@@ -43253,6 +43418,12 @@ usb:v1518p0001* + usb:v1518p0002* + ID_MODEL_FROM_DATABASE=HDReye (before firmware loads) + ++usb:v1519* ++ ID_VENDOR_FROM_DATABASE=Comneon ++ ++usb:v1519p0020* ++ ID_MODEL_FROM_DATABASE=HSIC Device ++ + usb:v1520* + ID_VENDOR_FROM_DATABASE=Bitwire Corp. + +@@ -43280,6 +43451,15 @@ usb:v1529p3100* + usb:v152A* + ID_VENDOR_FROM_DATABASE=Thesycon Systemsoftware & Consulting GmbH + ++usb:v152Ap8400* ++ ID_MODEL_FROM_DATABASE=INI DVS128 ++ ++usb:v152Ap840D* ++ ID_MODEL_FROM_DATABASE=INI DAViS ++ ++usb:v152Ap841A* ++ ID_MODEL_FROM_DATABASE=INI DAViS FX3 ++ + usb:v152D* + ID_VENDOR_FROM_DATABASE=JMicron Technology Corp. / JMicron USA Technology Corp. + +@@ -43337,6 +43517,9 @@ usb:v1532p0007* + usb:v1532p0013* + ID_MODEL_FROM_DATABASE=Orochi mouse + ++usb:v1532p0015* ++ ID_MODEL_FROM_DATABASE=Naga Mouse ++ + usb:v1532p0016* + ID_MODEL_FROM_DATABASE=DeathAdder Mouse + +@@ -43364,9 +43547,21 @@ usb:v1532p0102* + usb:v1532p0109* + ID_MODEL_FROM_DATABASE=Lycosa Keyboard + ++usb:v1532p0113* ++ ID_MODEL_FROM_DATABASE=RZ07-0074 Gaming Keypad [Orbweaver] ++ + usb:v1532p0300* + ID_MODEL_FROM_DATABASE=RZ06-0063 Motion Sensing Controllers [Hydra] + ++usb:v153B* ++ ID_VENDOR_FROM_DATABASE=TerraTec Electronic GmbH ++ ++usb:v153Bp1181* ++ ID_MODEL_FROM_DATABASE=Cinergy S2 PCIe Dual Port 1 ++ ++usb:v153Bp1182* ++ ID_MODEL_FROM_DATABASE=Cinergy S2 PCIe Dual Port 2 ++ + usb:v1546* + ID_VENDOR_FROM_DATABASE=U-Blox AG + +@@ -43388,12 +43583,18 @@ usb:v154B* + usb:v154Bp0010* + ID_MODEL_FROM_DATABASE=USB 2.0 Flash Drive + ++usb:v154Bp0048* ++ ID_MODEL_FROM_DATABASE=Flash Drive ++ + usb:v154Bp004D* + ID_MODEL_FROM_DATABASE=8 GB Flash Drive + + usb:v154Bp0057* + ID_MODEL_FROM_DATABASE=32GB Micro Slide Attache Flash Drive + ++usb:v154Bp007A* ++ ID_MODEL_FROM_DATABASE=8GB Classic Attache Flash Drive ++ + usb:v154Bp6545* + ID_MODEL_FROM_DATABASE=FD Device + +@@ -43530,7 +43731,10 @@ usb:v15A2p0052* + ID_MODEL_FROM_DATABASE=i.MX50 SystemOnChip in RecoveryMode + + usb:v15A2p0054* +- ID_MODEL_FROM_DATABASE=i.MX6Q SystemOnChip in RecoveryMode ++ ID_MODEL_FROM_DATABASE=i.MX 6Dual/6Quad SystemOnChip in RecoveryMode ++ ++usb:v15A2p0061* ++ ID_MODEL_FROM_DATABASE=i.MX 6Solo/6DualLite SystemOnChip in RecoveryMode + + usb:v15A4* + ID_VENDOR_FROM_DATABASE=Afatech Technologies, Inc. +@@ -43640,6 +43844,9 @@ usb:v15C2p0036* + usb:v15C2p0038* + ID_MODEL_FROM_DATABASE=GD01 MX LCD Display/IR Receiver + ++usb:v15C2p0042* ++ ID_MODEL_FROM_DATABASE=Antec Veris Multimedia Station E-Z IR Receiver ++ + usb:v15C2pFFDA* + ID_MODEL_FROM_DATABASE=iMON PAD Remote Controller + +@@ -43724,6 +43931,9 @@ usb:v15D9p0A4C* + usb:v15D9p0A4D* + ID_MODEL_FROM_DATABASE=Optical Mouse + ++usb:v15D9p0A4F* ++ ID_MODEL_FROM_DATABASE=Optical Mouse ++ + usb:v15DC* + ID_VENDOR_FROM_DATABASE=Hynix Semiconductor Inc. + +@@ -44507,6 +44717,15 @@ usb:v1690p0740* + usb:v1690p0901* + ID_MODEL_FROM_DATABASE=Voyager 205 ADSL Router + ++usb:v1690p2000* ++ ID_MODEL_FROM_DATABASE=naturaSign Pad Standard ++ ++usb:v1690p2001* ++ ID_MODEL_FROM_DATABASE=naturaSign Pad Standard ++ ++usb:v1690pFE12* ++ ID_MODEL_FROM_DATABASE=Bootloader ++ + usb:v1696* + ID_VENDOR_FROM_DATABASE=Hitachi Video and Information System, Inc. + +@@ -44669,6 +44888,9 @@ usb:v16C0p06B4* + usb:v16C0p06B5* + ID_MODEL_FROM_DATABASE=USB2LPT with 3 interfaces (native, HID, printer) + ++usb:v16C0p0762* ++ ID_MODEL_FROM_DATABASE=Osmocom SIMtrace ++ + usb:v16C0p076B* + ID_MODEL_FROM_DATABASE=OpenPCD 13.56MHz RFID Reader + +@@ -44759,6 +44981,15 @@ usb:v16D0p075D* + usb:v16D0p080A* + ID_MODEL_FROM_DATABASE=S2E1 Interface + ++usb:v16D0p0870* ++ ID_MODEL_FROM_DATABASE=Kaufmann Automotive GmbH, RKS+CAN Interface ++ ++usb:v16D1* ++ ID_VENDOR_FROM_DATABASE=Suprema Inc. ++ ++usb:v16D1p0401* ++ ID_MODEL_FROM_DATABASE=SUP-SFR400(A) BioMini Fingerprint Reader ++ + usb:v16D3* + ID_VENDOR_FROM_DATABASE=Frontline Test Equipment, Inc. + +@@ -44774,6 +45005,9 @@ usb:v16D5p6501* + usb:v16D5p6502* + ID_MODEL_FROM_DATABASE=CDMA/UMTS/GPRS modem + ++usb:v16D5p6603* ++ ID_MODEL_FROM_DATABASE=ADU-890WH modem ++ + usb:v16D6* + ID_VENDOR_FROM_DATABASE=JABLOCOM s.r.o. + +@@ -44870,6 +45104,18 @@ usb:v170Bp0011* + usb:v170D* + ID_VENDOR_FROM_DATABASE=Avnera + ++usb:v1711* ++ ID_VENDOR_FROM_DATABASE=Leica Microsystems ++ ++usb:v1711p3020* ++ ID_MODEL_FROM_DATABASE=IC80 HD Camera ++ ++usb:v1724* ++ ID_VENDOR_FROM_DATABASE=Meyer Instruments (MIS) ++ ++usb:v1724p0115* ++ ID_MODEL_FROM_DATABASE=PAXcam5 ++ + usb:v1725* + ID_VENDOR_FROM_DATABASE=Vitesse Semiconductor + +@@ -44957,9 +45203,21 @@ usb:v1737p0078* + usb:v1737p0079* + ID_MODEL_FROM_DATABASE=WUSB600N v2 Dual-Band Wireless-N Network Adapter [Ralink RT3572] + ++usb:v173D* ++ ID_VENDOR_FROM_DATABASE=QSENN ++ ++usb:v173Dp0002* ++ ID_MODEL_FROM_DATABASE=GP-K7000 keyboard ++ + usb:v1740* + ID_VENDOR_FROM_DATABASE=Senao + ++usb:v1740p0100* ++ ID_MODEL_FROM_DATABASE=EUB1200AC AC1200 DB Wireless Adapter [Realtek RTL8812AU] ++ ++usb:v1740p0600* ++ ID_MODEL_FROM_DATABASE=EUB600v1 802.11abgn Wireless Adapter [Ralink RT3572] ++ + usb:v1740p0605* + ID_MODEL_FROM_DATABASE=LevelOne WUA-0605 N_Max Wireless USB Adapter + +@@ -45002,14 +45260,20 @@ usb:v1743* + usb:v1748* + ID_VENDOR_FROM_DATABASE=MQP Electronics + ++usb:v1748p0101* ++ ID_MODEL_FROM_DATABASE=Packet-Master USB12 ++ + usb:v174C* + ID_VENDOR_FROM_DATABASE=ASMedia Technology Inc. + + usb:v174Cp5106* + ID_MODEL_FROM_DATABASE=Transcend StoreJet 25M3 + ++usb:v174Cp5136* ++ ID_MODEL_FROM_DATABASE=ASM1053 SATA 6Gb/s bridge ++ + usb:v174Cp55AA* +- ID_MODEL_FROM_DATABASE=ASMedia 2105 SATA bridge ++ ID_MODEL_FROM_DATABASE=ASM1051 SATA 3Gb/s bridge + + usb:v174F* + ID_VENDOR_FROM_DATABASE=Syntek +@@ -45137,6 +45401,9 @@ usb:v1781p0C31* + usb:v1781p0C9F* + ID_MODEL_FROM_DATABASE=USBtiny + ++usb:v1781p1EEF* ++ ID_MODEL_FROM_DATABASE=OpenAPC SecuKey ++ + usb:v1782* + ID_VENDOR_FROM_DATABASE=Spreadtrum Communications Inc. + +@@ -45206,6 +45473,9 @@ usb:v17A0p0100* + usb:v17A0p0101* + ID_MODEL_FROM_DATABASE=UB1 boundary microphone + ++usb:v17A0p0120* ++ ID_MODEL_FROM_DATABASE=Meteorite condenser microphone ++ + usb:v17A0p0200* + ID_MODEL_FROM_DATABASE=StudioDock monitors (internal hub) + +@@ -45221,6 +45491,9 @@ usb:v17A0p0301* + usb:v17A0p0302* + ID_MODEL_FROM_DATABASE=GoMic compact condenser microphone + ++usb:v17A0p0303* ++ ID_MODEL_FROM_DATABASE=C01U Pro condenser microphone ++ + usb:v17A0p0304* + ID_MODEL_FROM_DATABASE=Q2U handheld mic with XLR + +@@ -45371,6 +45644,9 @@ usb:v17E9p037C* + usb:v17E9p037D* + ID_MODEL_FROM_DATABASE=Plugable USB2-HDMI-165 + ++usb:v17E9p410A* ++ ID_MODEL_FROM_DATABASE=HDMI Adapter ++ + usb:v17E9p430A* + ID_MODEL_FROM_DATABASE=HP Port Replicator (Composite Device) + +@@ -45383,6 +45659,9 @@ usb:v17EB* + usb:v17EF* + ID_VENDOR_FROM_DATABASE=Lenovo + ++usb:v17EFp1000* ++ ID_MODEL_FROM_DATABASE=Hub ++ + usb:v17EFp1003* + ID_MODEL_FROM_DATABASE=Integrated Smart Card Reader + +@@ -45395,6 +45674,9 @@ usb:v17EFp1008* + usb:v17EFp100A* + ID_MODEL_FROM_DATABASE=ThinkPad Mini Dock Plus Series 3 + ++usb:v17EFp304B* ++ ID_MODEL_FROM_DATABASE=AX88179 Gigabit Ethernet [ThinkPad OneLink GigaLAN] ++ + usb:v17EFp3815* + ID_MODEL_FROM_DATABASE=ChipsBnk 2GB USB Stick + +@@ -45455,6 +45737,12 @@ usb:v17EFp6009* + usb:v17EFp6014* + ID_MODEL_FROM_DATABASE=Mini Wireless Keyboard N5901 + ++usb:v17EFp6025* ++ ID_MODEL_FROM_DATABASE=ThinkPad Travel Mouse ++ ++usb:v17EFp7203* ++ ID_MODEL_FROM_DATABASE=Ethernet adapter [U2L 100P-Y1] ++ + usb:v17EFp7423* + ID_MODEL_FROM_DATABASE=IdeaPad A1 Tablet + +-- +1.7.9.2 + diff --git a/0005-job-always-add-waiting-jobs-to-run-queue-during-cold.patch b/0005-job-always-add-waiting-jobs-to-run-queue-during-cold.patch new file mode 100644 index 00000000..ea295af2 --- /dev/null +++ b/0005-job-always-add-waiting-jobs-to-run-queue-during-cold.patch @@ -0,0 +1,34 @@ +Based on 1727a595225132eb73ec134b6979d9c713b42e8c Mon Sep 17 00:00:00 2001 +From: Michael Marineau +Date: Mon, 12 May 2014 09:26:16 +0200 +Subject: [PATCH] job: always add waiting jobs to run queue during coldplug + +commit 20a83d7bf was not equivalent to the original bug fix proposed by +Michal Sekletar . The committed version only added +the job to the run queue if the job had a timeout, which most jobs do +not have. Just re-ordering the code gets us the intended functionality +--- + src/core/job.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +--- src/core/job.c ++++ src/core/job.c 2014-05-12 13:11:24.918735646 +0000 +@@ -1051,15 +1051,15 @@ int job_coldplug(Job *j) { + + assert(j); + ++ if (j->state == JOB_WAITING) ++ job_add_to_run_queue(j); ++ + if (j->begin_usec == 0 || j->unit->job_timeout == 0) + return 0; + + if (j->timer_event_source) + j->timer_event_source = sd_event_source_unref(j->timer_event_source); + +- if (j->state == JOB_WAITING) +- job_add_to_run_queue(j); +- + r = sd_event_add_monotonic(j->manager->event, &j->timer_event_source, j->begin_usec + j->unit->job_timeout, 0, job_dispatch_timer, j); + if (r < 0) + log_debug("Failed to restart timeout for job: %s", strerror(-r)); diff --git a/0005-journalctl-correct-help-text-for-until.patch b/0005-journalctl-correct-help-text-for-until.patch new file mode 100644 index 00000000..77563faf --- /dev/null +++ b/0005-journalctl-correct-help-text-for-until.patch @@ -0,0 +1,21 @@ +Based on 7558251eef610e71595a0aa48952479906cb899a Mon Sep 17 00:00:00 2001 +From: Santiago Vila +Date: Sat, 25 Oct 2014 10:40:30 -0400 +Subject: [PATCH] journalctl: correct help text for --until + +http://bugs.debian.org/766598 +--- + src/journal/journalctl.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- src/journal/journalctl.c ++++ src/journal/journalctl.c 2014-10-29 14:10:18.863838313 +0000 +@@ -171,7 +171,7 @@ static int help(void) { + " --user Show only the user journal for the current user\n" + " -M --machine=CONTAINER Operate on local container\n" + " --since=DATE Start showing entries on or newer than the specified date\n" +- " --until=DATE Stop showing entries on or older than the specified date\n" ++ " --until=DATE Stop showing entries on or newer than the specified date\n" + " -c --cursor=CURSOR Start showing entries from the specified cursor\n" + " --after-cursor=CURSOR Start showing entries from after the specified cursor\n" + " --show-cursor Print the cursor after all the entries\n" diff --git a/0005-login-fix-mem-leak.patch b/0005-login-fix-mem-leak.patch new file mode 100644 index 00000000..69206fd5 --- /dev/null +++ b/0005-login-fix-mem-leak.patch @@ -0,0 +1,23 @@ +Based on 13f493dc9ace9861c1f27c4d37e8cd6d52fe6a32 Mon Sep 17 00:00:00 2001 +From: Thomas Hindoe Paaboel Andersen +Date: Sun, 31 Aug 2014 23:34:01 +0200 +Subject: [PATCH] login: fix mem leak + +--- + src/login/logind-session.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +--- src/login/logind-session.c ++++ src/login/logind-session.c 2014-09-01 12:59:27.870235647 +0000 +@@ -1101,8 +1101,10 @@ int session_set_controller(Session *s, c + * If logind crashes/restarts, we restore the controller during restart + * or reset the VT in case it crashed/exited, too. */ + r = session_mute_vt(s); +- if (r < 0) ++ if (r < 0) { ++ free(t); + return r; ++ } + + session_swap_controller(s, t); + diff --git a/0005-logind-fix-policykit-checks.patch b/0005-logind-fix-policykit-checks.patch new file mode 100644 index 00000000..69cf61a6 --- /dev/null +++ b/0005-logind-fix-policykit-checks.patch @@ -0,0 +1,43 @@ +From 055d406624cb9e01963558767420b71e5f75d2d3 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Mon, 10 Mar 2014 08:25:15 -0400 +Subject: [PATCH] logind: fix policykit checks + +--- + src/login/logind-dbus.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git src/login/logind-dbus.c src/login/logind-dbus.c +index c9c58f3..235b131 100644 +--- src/login/logind-dbus.c ++++ src/login/logind-dbus.c +@@ -1480,6 +1480,8 @@ static int method_do_shutdown_or_sleep( + action_multiple_sessions, interactive, error, method, m); + if (r < 0) + return r; ++ if (r == 0) ++ return 1; /* No authorization for now, but the async polkit stuff will call us again when it has it */ + } + + if (blocked) { +@@ -1487,6 +1489,8 @@ static int method_do_shutdown_or_sleep( + action_ignore_inhibit, interactive, error, method, m); + if (r < 0) + return r; ++ if (r == 0) ++ return 1; /* No authorization for now, but the async polkit stuff will call us again when it has it */ + } + + if (!multiple_sessions && !blocked) { +@@ -1494,6 +1498,8 @@ static int method_do_shutdown_or_sleep( + action, interactive, error, method, m); + if (r < 0) + return r; ++ if (r == 0) ++ return 1; /* No authorization for now, but the async polkit stuff will call us again when it has it */ + } + + r = bus_manager_shutdown_or_sleep_now_or_later(m, unit_name, w, error); +-- +1.7.9.2 + diff --git a/0005-logind-fix-typo.patch b/0005-logind-fix-typo.patch new file mode 100644 index 00000000..79916e75 --- /dev/null +++ b/0005-logind-fix-typo.patch @@ -0,0 +1,25 @@ +From 2b2332856bafe25c4aa17db2a90bdcddef1fec1a Mon Sep 17 00:00:00 2001 +From: Ronny Chevalier +Date: Wed, 17 Sep 2014 20:10:44 +0200 +Subject: [PATCH] logind: fix typo + +--- + src/login/logind-session-dbus.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/login/logind-session-dbus.c src/login/logind-session-dbus.c +index 7d81500..58836fc 100644 +--- src/login/logind-session-dbus.c ++++ src/login/logind-session-dbus.c +@@ -249,7 +249,7 @@ static int method_set_idle_hint(sd_bus *bus, sd_bus_message *message, void *user + return r; + + if (uid != 0 && uid != s->user->uid) +- return sd_bus_error_setf(error, SD_BUS_ERROR_ACCESS_DENIED, "Only owner of session my set idle hint"); ++ return sd_bus_error_setf(error, SD_BUS_ERROR_ACCESS_DENIED, "Only owner of session may set idle hint"); + + session_set_idle_hint(s, b); + +-- +1.7.9.2 + diff --git a/0005-logind-move-lid-switch-handling-from-logind-main-to-.patch b/0005-logind-move-lid-switch-handling-from-logind-main-to-.patch new file mode 100644 index 00000000..aaae9d12 --- /dev/null +++ b/0005-logind-move-lid-switch-handling-from-logind-main-to-.patch @@ -0,0 +1,119 @@ +From b5d3e1688133077ca20542a20dcd8919147e72e1 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Tue, 11 Mar 2014 22:38:54 +0100 +Subject: [PATCH] logind: move lid switch handling from logind-main to + logind-core + +../src/login/logind-dbus.c:1352: error: undefined reference to 'manager_set_lid_switch_ignore' +collect2: error: ld returned 1 exit status +make[2]: *** [test-login-tables] +--- + src/login/logind-dbus.c | 40 ++++++++++++++++++++++++++++++++++++++++ + src/login/logind.c | 40 ---------------------------------------- + 2 files changed, 40 insertions(+), 40 deletions(-) + +diff --git src/login/logind-dbus.c src/login/logind-dbus.c +index c5f9cb3..2ef87f7 100644 +--- src/login/logind-dbus.c ++++ src/login/logind-dbus.c +@@ -1305,6 +1305,46 @@ static int bus_manager_log_shutdown( + q, NULL); + } + ++static int lid_switch_ignore_handler(sd_event_source *e, uint64_t usec, void *userdata) { ++ Manager *m = userdata; ++ ++ assert(e); ++ assert(m); ++ ++ m->lid_switch_ignore_event_source = sd_event_source_unref(m->lid_switch_ignore_event_source); ++ return 0; ++} ++ ++int manager_set_lid_switch_ignore(Manager *m, usec_t until) { ++ int r; ++ ++ assert(m); ++ ++ if (until <= now(CLOCK_MONOTONIC)) ++ return 0; ++ ++ /* We want to ignore the lid switch for a while after each ++ * suspend, and after boot-up. Hence let's install a timer for ++ * this. As long as the event source exists we ignore the lid ++ * switch. */ ++ ++ if (m->lid_switch_ignore_event_source) { ++ usec_t u; ++ ++ r = sd_event_source_get_time(m->lid_switch_ignore_event_source, &u); ++ if (r < 0) ++ return r; ++ ++ if (until <= u) ++ return 0; ++ ++ r = sd_event_source_set_time(m->lid_switch_ignore_event_source, until); ++ } else ++ r = sd_event_add_monotonic(m->event, &m->lid_switch_ignore_event_source, until, 0, lid_switch_ignore_handler, m); ++ ++ return r; ++} ++ + static int execute_shutdown_or_sleep( + Manager *m, + InhibitWhat w, +diff --git src/login/logind.c src/login/logind.c +index 03b7753..2d734ff 100644 +--- src/login/logind.c ++++ src/login/logind.c +@@ -962,46 +962,6 @@ static int manager_dispatch_idle_action(sd_event_source *s, uint64_t t, void *us + return 0; + } + +-static int lid_switch_ignore_handler(sd_event_source *e, uint64_t usec, void *userdata) { +- Manager *m = userdata; +- +- assert(e); +- assert(m); +- +- m->lid_switch_ignore_event_source = sd_event_source_unref(m->lid_switch_ignore_event_source); +- return 0; +-} +- +-int manager_set_lid_switch_ignore(Manager *m, usec_t until) { +- int r; +- +- assert(m); +- +- if (until <= now(CLOCK_MONOTONIC)) +- return 0; +- +- /* We want to ignore the lid switch for a while after each +- * suspend, and after boot-up. Hence let's install a timer for +- * this. As long as the event source exists we ignore the lid +- * switch. */ +- +- if (m->lid_switch_ignore_event_source) { +- usec_t u; +- +- r = sd_event_source_get_time(m->lid_switch_ignore_event_source, &u); +- if (r < 0) +- return r; +- +- if (until <= u) +- return 0; +- +- r = sd_event_source_set_time(m->lid_switch_ignore_event_source, until); +- } else +- r = sd_event_add_monotonic(m->event, &m->lid_switch_ignore_event_source, until, 0, lid_switch_ignore_handler, m); +- +- return r; +-} +- + int manager_startup(Manager *m) { + int r; + Seat *seat; +-- +1.7.9.2 + diff --git a/0005-man-fix-path-in-crypttab-5.patch b/0005-man-fix-path-in-crypttab-5.patch new file mode 100644 index 00000000..d0aef604 --- /dev/null +++ b/0005-man-fix-path-in-crypttab-5.patch @@ -0,0 +1,26 @@ +From 9fcdf32294e66f91d2a177f73a77049832768311 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Mon, 23 Jun 2014 23:07:53 -0400 +Subject: [PATCH] man: fix path in crypttab(5) + +https://bugs.freedesktop.org/show_bug.cgi?id=75816 +--- + man/crypttab.xml | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git man/crypttab.xml man/crypttab.xml +index 668e51d..9030015 100644 +--- man/crypttab.xml ++++ man/crypttab.xml +@@ -369,7 +369,7 @@ + luks UUID=2505567a-9e27-4efe-a4d5-15ad146c258b + swap /dev/sda7 /dev/urandom swap + truecrypt /dev/sda2 /etc/container_password tcrypt +-hidden /mnt/tc_hidden /null tcrypt-hidden,tcrypt-keyfile=/etc/keyfile ++hidden /mnt/tc_hidden /dev/null tcrypt-hidden,tcrypt-keyfile=/etc/keyfile + + + +-- +1.7.9.2 + diff --git a/0005-nspawn-block-open_by_handle_at-and-others-via-seccom.patch b/0005-nspawn-block-open_by_handle_at-and-others-via-seccom.patch new file mode 100644 index 00000000..e5b6706d --- /dev/null +++ b/0005-nspawn-block-open_by_handle_at-and-others-via-seccom.patch @@ -0,0 +1,94 @@ +From 28650077f36466d9c5ee27ef2006fae3171a2430 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 30 Jun 2014 16:22:12 +0200 +Subject: [PATCH] nspawn: block open_by_handle_at() and others via seccomp + +Let's protect ourselves against the recently reported docker security +issue. Our man page makes clear that we do not make any security +promises anyway, but well, this one is easy to mitigate, so let's do it. +While we are at it block a couple of more syscalls that are no good in +containers, too. +--- + src/nspawn/nspawn.c | 47 +++++++++++++++++++++++++++++++++++------------ + 1 file changed, 35 insertions(+), 12 deletions(-) + +diff --git src/nspawn/nspawn.c src/nspawn/nspawn.c +index fd61d07..656c1bf 100644 +--- src/nspawn/nspawn.c ++++ src/nspawn/nspawn.c +@@ -1864,22 +1864,25 @@ static int setup_macvlan(pid_t pid) { + return 0; + } + +-static int audit_still_doesnt_work_in_containers(void) { ++static int setup_seccomp(void) { + + #ifdef HAVE_SECCOMP ++ static const int blacklist[] = { ++ SCMP_SYS(kexec_load), ++ SCMP_SYS(open_by_handle_at), ++ SCMP_SYS(init_module), ++ SCMP_SYS(finit_module), ++ SCMP_SYS(delete_module), ++ SCMP_SYS(iopl), ++ SCMP_SYS(ioperm), ++ SCMP_SYS(swapon), ++ SCMP_SYS(swapoff), ++ }; ++ + scmp_filter_ctx seccomp; ++ unsigned i; + int r; + +- /* +- Audit is broken in containers, much of the userspace audit +- hookup will fail if running inside a container. We don't +- care and just turn off creation of audit sockets. +- +- This will make socket(AF_NETLINK, *, NETLINK_AUDIT) fail +- with EAFNOSUPPORT which audit userspace uses as indication +- that audit is disabled in the kernel. +- */ +- + seccomp = seccomp_init(SCMP_ACT_ALLOW); + if (!seccomp) + return log_oom(); +@@ -1890,6 +1893,26 @@ static int audit_still_doesnt_work_in_containers(void) { + goto finish; + } + ++ for (i = 0; i < ELEMENTSOF(blacklist); i++) { ++ r = seccomp_rule_add(seccomp, SCMP_ACT_ERRNO(EPERM), blacklist[i], 0); ++ if (r == -EFAULT) ++ continue; /* unknown syscall */ ++ if (r < 0) { ++ log_error("Failed to block syscall: %s", strerror(-r)); ++ goto finish; ++ } ++ } ++ ++ /* ++ Audit is broken in containers, much of the userspace audit ++ hookup will fail if running inside a container. We don't ++ care and just turn off creation of audit sockets. ++ ++ This will make socket(AF_NETLINK, *, NETLINK_AUDIT) fail ++ with EAFNOSUPPORT which audit userspace uses as indication ++ that audit is disabled in the kernel. ++ */ ++ + r = seccomp_rule_add( + seccomp, + SCMP_ACT_ERRNO(EAFNOSUPPORT), +@@ -3050,7 +3073,7 @@ int main(int argc, char *argv[]) { + + dev_setup(arg_directory); + +- if (audit_still_doesnt_work_in_containers() < 0) ++ if (setup_seccomp() < 0) + goto child_fail; + + if (setup_dev_console(arg_directory, console) < 0) +-- +1.7.9.2 + diff --git a/0005-po-add-Greek-translation.patch b/0005-po-add-Greek-translation.patch new file mode 100644 index 00000000..029ce4fa --- /dev/null +++ b/0005-po-add-Greek-translation.patch @@ -0,0 +1,436 @@ +From 3d89c35c2ae08c3fbf1a037c4df54c8e5ae56faf Mon Sep 17 00:00:00 2001 +From: Dimitris Spingos +Date: Wed, 7 May 2014 18:27:02 +0200 +Subject: [PATCH] po: add Greek translation + +https://bugs.freedesktop.org/show_bug.cgi?id=78064 +--- + po/LINGUAS | 3 +- + po/el.po | 404 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 406 insertions(+), 1 deletion(-) + create mode 100644 po/el.po + +diff --git po/LINGUAS po/LINGUAS +index 0301751..820ca82 100644 +--- po/LINGUAS ++++ po/LINGUAS +@@ -1,4 +1,5 @@ ++el + fr ++it + pl + ru +-it +diff --git po/el.po po/el.po +new file mode 100644 +index 0000000..1570565 +--- /dev/null ++++ po/el.po +@@ -0,0 +1,404 @@ ++# Greek translation for systemd. ++# Copyright (C) 2014 systemd's COPYRIGHT HOLDER ++# This file is distributed under the same license as the systemd package. ++# Dimitris Spingos , 2014. ++# Dimitris Spingos (Δημήτρης Σπίγγος) , 2014. ++msgid "" ++msgstr "" ++"Project-Id-Version: systemd master\n" ++"Report-Msgid-Bugs-To: https://bugs.freedesktop.org/enter_bug.cgi?product=sys" ++"temd&keywords=I18N+L10N&component=general\n" ++"POT-Creation-Date: 2014-04-25 15:51+0000\n" ++"PO-Revision-Date: 2014-04-29 09:17+0300\n" ++"Last-Translator: Dimitris Spingos (Δημήτρης Σπίγγος) \n" ++"Language-Team: team@lists.gnome.gr\n" ++"Language: el\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Virtaal 0.7.0\n" ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:1 ++msgid "Set host name" ++msgstr "Ορισμός ονόματος οικοδεσπότη" ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:2 ++msgid "Authentication is required to set the local host name." ++msgstr "Απαιτείται πιστοποίηση για να ορίσετε τοπικά όνομα οικοδεσπότη." ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:3 ++msgid "Set static host name" ++msgstr "Ορισμός στατικού ονόματος οικοδεσπότη" ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:4 ++msgid "" ++"Authentication is required to set the statically configured local host name, " ++"as well as the pretty host name." ++msgstr "" ++"Απαιτείται πιστοποίηση για να ορίσετε το στατικά ρυθμισμένο όνομα τοπικού " ++"οικοδεσπότη, καθώς και το pretty όνομα οικοδεσπότη." ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:5 ++msgid "Set machine information" ++msgstr "Ορισμός πληροφοριών μηχανής" ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:6 ++msgid "Authentication is required to set local machine information." ++msgstr "Απαιτείται πιστοποίηση για να ορίσετε πληροφορίες τοπικής μηχανής." ++ ++#: ../src/locale/org.freedesktop.locale1.policy.in.h:1 ++msgid "Set system locale" ++msgstr "Ορισμός τοπικών ρυθμίσεων συστήματος" ++ ++#: ../src/locale/org.freedesktop.locale1.policy.in.h:2 ++msgid "Authentication is required to set the system locale." ++msgstr "" ++"Απαιτείται πιστοποίηση για να ορίσετε τις τοπικές ρυθμίσεις του συστήματος." ++ ++#: ../src/locale/org.freedesktop.locale1.policy.in.h:3 ++msgid "Set system keyboard settings" ++msgstr "Ορισμός ρυθμίσεων πληκτρολογίου συστήματος" ++ ++#: ../src/locale/org.freedesktop.locale1.policy.in.h:4 ++msgid "Authentication is required to set the system keyboard settings." ++msgstr "" ++"Απαιτείται πιστοποίηση για να ορίσετε τις ρυθμίσεις πληκτρολογίου του " ++"συστήματος." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:1 ++msgid "Allow applications to inhibit system shutdown" ++msgstr "" ++"Να επιτρέπεται στις εφαρμογές να αποτρέπουν τον τερματισμό του συστήματος" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:2 ++msgid "" ++"Authentication is required to allow an application to inhibit system " ++"shutdown." ++msgstr "" ++"Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να αποτρέψει τον " ++"τερματισμό του συστήματος." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:3 ++msgid "Allow applications to delay system shutdown" ++msgstr "" ++"Να επιτρέπεται στις εφαρμογές να καθυστερούν τον τερματισμό του συστήματος" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:4 ++msgid "" ++"Authentication is required to allow an application to delay system shutdown." ++msgstr "" ++"Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να καθυστερήσει " ++"τον τερματισμό του συστήματος." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:5 ++msgid "Allow applications to inhibit system sleep" ++msgstr "Να επιτρέπεται στις εφαρμογές να αποτρέπουν την ύπνωση του συστήματος" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:6 ++msgid "" ++"Authentication is required to allow an application to inhibit system sleep." ++msgstr "" ++"Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να αποτρέψει την " ++"ύπνωση του συστήματος." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:7 ++msgid "Allow applications to delay system sleep" ++msgstr "Να επιτρέπεται στις εφαρμογές να καθυστερούν την ύπνωση του συστήματος" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:8 ++msgid "" ++"Authentication is required to allow an application to delay system sleep." ++msgstr "" ++"Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να καθυστερήσει " ++"την ύπνωση του συστήματος." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:9 ++msgid "Allow applications to inhibit automatic system suspend" ++msgstr "" ++"Να επιτρέπεται στις εφαρμογές να αποτρέπουν την αυτόματη αναστολή του " ++"συστήματος" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:10 ++msgid "" ++"Authentication is required to allow an application to inhibit automatic " ++"system suspend." ++msgstr "" ++"Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να αποτρέψει την " ++"αυτόματη αναστολή του συστήματος." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:11 ++msgid "Allow applications to inhibit system handling of the power key" ++msgstr "" ++"Να επιτρέπεται στις εφαρμογές να αποτρέπουν τη διαχείριση του πλήκτρου " ++"ενεργοποίησης του συστήματος" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:12 ++msgid "" ++"Authentication is required to allow an application to inhibit system " ++"handling of the power key." ++msgstr "" ++"Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να αποτρέψει την " ++"διαχείριση του πλήκτρου ενεργοποίησης του συστήματος." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:13 ++msgid "Allow applications to inhibit system handling of the suspend key" ++msgstr "" ++"Να επιτρέπεται στις εφαρμογές να αποτρέπουν τη διαχείριση του πλήκτρου " ++"αναστολής του συστήματος." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:14 ++msgid "" ++"Authentication is required to allow an application to inhibit system " ++"handling of the suspend key." ++msgstr "" ++"Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να αποτρέψει την " ++"διαχείριση του πλήκτρου αναστολής του συστήματος." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:15 ++msgid "Allow applications to inhibit system handling of the hibernate key" ++msgstr "" ++"Να επιτρέπεται στις εφαρμογές να αποτρέπουν τη διαχείριση του πλήκτρου " ++"αδρανοποίησης του συστήματος" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:16 ++msgid "" ++"Authentication is required to allow an application to inhibit system " ++"handling of the hibernate key." ++msgstr "" ++"Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να αποτρέψει την " ++"διαχείριση του πλήκτρου αδρανοποίησης του συστήματος." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:17 ++msgid "Allow applications to inhibit system handling of the lid switch" ++msgstr "" ++"Να επιτρέπεται στις εφαρμογές να αποτρέπουν τη διαχείριση του διακόπτη " ++"καλύμματος του συστήματος" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:18 ++msgid "" ++"Authentication is required to allow an application to inhibit system " ++"handling of the lid switch." ++msgstr "" ++"Απαιτείται πιστοποίηση για να επιτρέπεται σε μια εφαρμογή να αποτρέψει την " ++"διαχείριση του διακόπτη καλύμματος του συστήματος." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:19 ++msgid "Allow non-logged-in users to run programs" ++msgstr "Να επιτρέπεται σε μη συνδεμένους χρήστες να εκτελούν προγράμματα" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:20 ++msgid "" ++"Authentication is required to allow a non-logged-in user to run programs." ++msgstr "" ++"Απαιτείται πιστοποίηση για να επιτρέπεται σε μη συνδεμένους χρήστες να " ++"εκτελούν προγράμματα." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:21 ++msgid "Allow attaching devices to seats" ++msgstr "Να επιτρέπεται η προσάρτηση συσκευών στους σταθμούς εργασίας" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:22 ++msgid "Authentication is required for attaching a device to a seat." ++msgstr "" ++"Απαιτείται πιστοποίηση για προσάρτηση μιας συσκευής σε έναν σταθμό εργασίας." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:23 ++msgid "Flush device to seat attachments" ++msgstr "Αφαίρεση συσκευής από προσαρτήσεις σταθμού εργασίας" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:24 ++msgid "" ++"Authentication is required for resetting how devices are attached to seats." ++msgstr "" ++"Απαιτείται πιστοποίηση για επαναφορά του τρόπου που οι συσκευές προσαρτώνται " ++"στους σταθμούς εργασίας." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:25 ++msgid "Power off the system" ++msgstr "Σβήσιμο του συστήματος" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:26 ++msgid "Authentication is required for powering off the system." ++msgstr "Απαιτείται πιστοποίηση για την σβήσιμο του συστήματος." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:27 ++msgid "Power off the system while other users are logged in" ++msgstr "Σβήσιμο του συστήματος ενώ άλλοι χρήστες είναι συνδεμένοι" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:28 ++msgid "" ++"Authentication is required for powering off the system while other users are " ++"logged in." ++msgstr "" ++"Απαιτείται πιστοποίηση για σβήσιμο του συστήματος ενώ άλλοι χρήστες είναι " ++"συνδεμένοι." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:29 ++msgid "Power off the system while an application asked to inhibit it" ++msgstr "Απενεργοποίηση του συστήματος ενώ μια εφαρμογή ζήτησε να αποτραπεί." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:30 ++msgid "" ++"Authentication is required for powering off the system while an application " ++"asked to inhibit it." ++msgstr "" ++"Απαιτείται πιστοποίηση για απενεργοποίηση του συστήματος ενώ μια εφαρμογή " ++"ζήτησε να αποτραπεί." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:31 ++msgid "Reboot the system" ++msgstr "Επανεκκίνηση του συστήματος" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:32 ++msgid "Authentication is required for rebooting the system." ++msgstr "Απαιτείται πιστοποίηση για επανεκκίνηση του συστήματος." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:33 ++msgid "Reboot the system while other users are logged in" ++msgstr "Επανεκκίνηση του συστήματος ενώ άλλοι χρήστες είναι συνδεμένοι" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:34 ++msgid "" ++"Authentication is required for rebooting the system while other users are " ++"logged in." ++msgstr "" ++"Απαιτείται πιστοποίηση για επανεκκίνηση του συστήματος ενώ άλλοι χρήστες " ++"είναι συνδεμένοι." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:35 ++msgid "Reboot the system while an application asked to inhibit it" ++msgstr "Επανεκκίνηση του συστήματος ενώ μια εφαρμογή ζήτησε να αποτραπεί" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:36 ++msgid "" ++"Authentication is required for rebooting the system while an application " ++"asked to inhibit it." ++msgstr "" ++"Απαιτείται πιστοποίηση για επανεκκίνηση του συστήματος ενώ μια εφαρμογή " ++"ζήτησε να αποτραπεί." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:37 ++msgid "Suspend the system" ++msgstr "Αναστολή του συστήματος" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:38 ++msgid "Authentication is required for suspending the system." ++msgstr "Απαιτείται πιστοποίηση για την αναστολή του συστήματος." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:39 ++msgid "Suspend the system while other users are logged in" ++msgstr "Αναστολή του συστήματος ενώ άλλοι χρήστες είναι συνδεμένοι" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:40 ++msgid "" ++"Authentication is required for suspending the system while other users are " ++"logged in." ++msgstr "" ++"Απαιτείται πιστοποίηση για αναστολή του συστήματος ενώ άλλοι χρήστες είναι " ++"συνδεμένοι." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:41 ++msgid "Suspend the system while an application asked to inhibit it" ++msgstr "Αναστολή του συστήματος ενώ μια εφαρμογή ζήτησε να αποτραπεί" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:42 ++msgid "" ++"Authentication is required for suspending the system while an application " ++"asked to inhibit it." ++msgstr "" ++"Απαιτείται πιστοποίηση για αναστολή του συστήματος ενώ μια εφαρμογή ζήτησε " ++"να αποτραπεί." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:43 ++msgid "Hibernate the system" ++msgstr "Αδρανοποίηση του συτήματος" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:44 ++msgid "Authentication is required for hibernating the system." ++msgstr "Απαιτείται πιστοποίηση για αδρανοποίηση του συστήματος." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:45 ++msgid "Hibernate the system while other users are logged in" ++msgstr "Αδρανοποίηση του συστήματος ενώ άλλοι χρήστες είναι συνδεμένοι" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:46 ++msgid "" ++"Authentication is required for hibernating the system while other users are " ++"logged in." ++msgstr "" ++"Απαιτείται πιστοποίηση για αδρανοποίηση του συστήματος ενώ άλλοι χρήστες " ++"είναι συνδεμένοι." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:47 ++msgid "Hibernate the system while an application asked to inhibit it" ++msgstr "Αδρανοποίηση του συστήματος ενώ μια εφαρμογή ζήτησε να αποτραπεί" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:48 ++msgid "" ++"Authentication is required for hibernating the system while an application " ++"asked to inhibit it." ++msgstr "" ++"Απαιτείται πιστοποίηση για αδρανοποίηση του συστήματος ενώ μια εφαρμογή " ++"ζήτησε να αποτραπεί." ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:1 ++msgid "Set system time" ++msgstr "Ορισμός ώρας συστήματος" ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:2 ++msgid "Authentication is required to set the system time." ++msgstr "Απαιτείται πιστοποίηση για να ορίσετε την ώρα του συστήματος." ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:3 ++msgid "Set system timezone" ++msgstr "Ορισμός ζώνης ώρας συστήματος" ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:4 ++msgid "Authentication is required to set the system timezone." ++msgstr "Απαιτείται πιστοποίηση για να ορίσετε την ώρα ζώνης του συστήματος." ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:5 ++msgid "Set RTC to local timezone or UTC" ++msgstr "Ορισμός RTC στην τοπική ζώνη ώρας ή UTC" ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:6 ++msgid "" ++"Authentication is required to control whether the RTC stores the local or " ++"UTC time." ++msgstr "" ++"Απαιτείται πιστοποίηση για να ελέγξετε αν το RTC αποθηκεύει την τοπική ή την " ++"ώρα UTC." ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:7 ++msgid "Turn network time synchronization on or off" ++msgstr "Ενεργοποίηση/Απενεργοποίηση συγχρονισμού ώρας δικτύου" ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:8 ++msgid "" ++"Authentication is required to control whether network time synchronization " ++"shall be enabled." ++msgstr "" ++"Απαιτείται πιστοποίηση για να ελέγξετε αν ο συγχρονισμός ώρας δικτύου θα " ++"ενεργοποιηθεί." ++ ++#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:1 ++msgid "Send passphrase back to system" ++msgstr "Αποστολή του συνθηματικού πίσω στο σύστημα" ++ ++#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:2 ++msgid "" ++"Authentication is required to send the entered passphrase back to the system." ++msgstr "" ++"Απαιτείται πιστοποίηση για αποστολή του εισερχόμενου συνθηματικού πίσω στο " ++"σύστημα." ++ ++#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:3 ++msgid "Privileged system and service manager access" ++msgstr "Προνομιούχος πρόσβαση διαχειριστή συστήματος και υπηρεσίας" ++ ++#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:4 ++msgid "Authentication is required to access the system and service manager." ++msgstr "" ++"Απαιτείται πιστοποίηση για να προσπελάσετε τον διαχειριστή συστήματος και " ++"υπηρεσιών." +-- +1.7.9.2 + diff --git a/0005-sd-daemon-fix-incorrect-variable-access.patch b/0005-sd-daemon-fix-incorrect-variable-access.patch new file mode 100644 index 00000000..99a923b2 --- /dev/null +++ b/0005-sd-daemon-fix-incorrect-variable-access.patch @@ -0,0 +1,25 @@ +From 56dc9aec21ab23f76fadf45585adf88e71aa8078 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 24 Mar 2014 23:54:14 +0100 +Subject: [PATCH] sd-daemon: fix incorrect variable access + +--- + src/libsystemd/sd-daemon/sd-daemon.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/libsystemd/sd-daemon/sd-daemon.c src/libsystemd/sd-daemon/sd-daemon.c +index 21fb346..b013438 100644 +--- src/libsystemd/sd-daemon/sd-daemon.c ++++ src/libsystemd/sd-daemon/sd-daemon.c +@@ -517,7 +517,7 @@ _public_ int sd_watchdog_enabled(int unset_environment, uint64_t *usec) { + r = -errno; + goto finish; + } +- if (!p || p == e || *p || l <= 0) { ++ if (!p || p == e || *p || ll <= 0) { + r = -EINVAL; + goto finish; + } +-- +1.7.9.2 + diff --git a/0005-sd-id128-do-stricter-checking-of-random-boot-id.patch b/0005-sd-id128-do-stricter-checking-of-random-boot-id.patch new file mode 100644 index 00000000..3c3d9e50 --- /dev/null +++ b/0005-sd-id128-do-stricter-checking-of-random-boot-id.patch @@ -0,0 +1,37 @@ +From cef3566998fcae6936d781e678c309950a8a5787 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Fri, 3 Oct 2014 20:57:30 -0400 +Subject: [PATCH] sd-id128: do stricter checking of random boot id + +If we are bothering to check whether the kernel is not feeding us +bad data, we might as well do it properly. + +CID #1237692. +--- + src/libsystemd/sd-id128/sd-id128.c | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git src/libsystemd/sd-id128/sd-id128.c src/libsystemd/sd-id128/sd-id128.c +index a1e44e6..233ffa0 100644 +--- src/libsystemd/sd-id128/sd-id128.c ++++ src/libsystemd/sd-id128/sd-id128.c +@@ -183,11 +183,14 @@ _public_ int sd_id128_get_boot(sd_id128_t *ret) { + for (j = 0, p = buf; j < 16; j++) { + int a, b; + +- if (p >= buf + k) ++ if (p >= buf + k - 1) + return -EIO; + +- if (*p == '-') ++ if (*p == '-') { + p++; ++ if (p >= buf + k - 1) ++ return -EIO; ++ } + + a = unhexchar(p[0]); + b = unhexchar(p[1]); +-- +1.7.9.2 + diff --git a/0005-sd-resolve-fix-allocation-if-query-ids-never-reuse-t.patch b/0005-sd-resolve-fix-allocation-if-query-ids-never-reuse-t.patch new file mode 100644 index 00000000..5dfa4ed5 --- /dev/null +++ b/0005-sd-resolve-fix-allocation-if-query-ids-never-reuse-t.patch @@ -0,0 +1,45 @@ +Based on 85529c815b47c22839e0f148af67fd37e977cbfa Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Tue, 12 Aug 2014 19:29:27 +0200 +Subject: [PATCH] sd-resolve: fix allocation if query ids, never reuse them + +--- + src/libsystemd/sd-resolve/sd-resolve.c | 12 ++++-------- + 1 file changed, 4 insertions(+), 8 deletions(-) + +--- src/libsystemd/sd-resolve/sd-resolve.c ++++ src/libsystemd/sd-resolve/sd-resolve.c 2014-08-22 14:18:24.838235343 +0000 +@@ -81,7 +81,7 @@ struct sd_resolve { + pthread_t workers[WORKERS_MAX]; + unsigned n_valid_workers; + +- unsigned current_id, current_index; ++ unsigned current_id; + sd_resolve_query* queries[QUERIES_MAX]; + unsigned n_queries; + +@@ -892,21 +892,17 @@ static int alloc_query(sd_resolve *resol + if (r < 0) + return r; + +- while (resolve->queries[resolve->current_index]) { +- resolve->current_index++; ++ while (resolve->queries[resolve->current_id % QUERIES_MAX]) + resolve->current_id++; + +- resolve->current_index %= QUERIES_MAX; +- } +- +- q = resolve->queries[resolve->current_index] = new0(sd_resolve_query, 1); ++ q = resolve->queries[resolve->current_id % QUERIES_MAX] = new0(sd_resolve_query, 1); + if (!q) + return -ENOMEM; + + resolve->n_queries++; + + q->resolve = resolve; +- q->id = resolve->current_id; ++ q->id = resolve->current_id++; + + *_q = q; + return 0; diff --git a/0005-service-don-t-accept-negative-ERRNO-notification-mes.patch b/0005-service-don-t-accept-negative-ERRNO-notification-mes.patch new file mode 100644 index 00000000..ed5997e0 --- /dev/null +++ b/0005-service-don-t-accept-negative-ERRNO-notification-mes.patch @@ -0,0 +1,25 @@ +From 2040ccf171404b709acb0ecf1d1f17b87c5d05f0 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 7 Jul 2014 17:32:44 +0200 +Subject: [PATCH] service: don't accept negative ERRNO= notification messages + +--- + src/core/service.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/core/service.c src/core/service.c +index 5c54a34..d5aff99 100644 +--- src/core/service.c ++++ src/core/service.c +@@ -2637,7 +2637,7 @@ static void service_notify_message(Unit *u, pid_t pid, char **tags) { + if (e) { + int status_errno; + +- if (safe_atoi(e + 6, &status_errno) < 0) ++ if (safe_atoi(e + 6, &status_errno) < 0 || status_errno < 0) + log_warning_unit(u->id, "Failed to parse ERRNO= field in notification message: %s", e); + else { + log_debug_unit(u->id, "%s: got %s", u->id, e); +-- +1.7.9.2 + diff --git a/0005-shared-label.h-add-missing-stdio.h-include.patch b/0005-shared-label.h-add-missing-stdio.h-include.patch new file mode 100644 index 00000000..1c75aacc --- /dev/null +++ b/0005-shared-label.h-add-missing-stdio.h-include.patch @@ -0,0 +1,24 @@ +From 45f15021e3524b04d574b9ff4e801cb3219daf3f Mon Sep 17 00:00:00 2001 +From: Emil Renner Berthing +Date: Thu, 18 Sep 2014 15:24:42 +0200 +Subject: [PATCH] shared/label.h: add missing stdio.h include + +--- + src/shared/label.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git src/shared/label.h src/shared/label.h +index 7294820..cb2ec79 100644 +--- src/shared/label.h ++++ src/shared/label.h +@@ -24,6 +24,7 @@ + #include + #include + #include ++#include + + int label_init(const char *prefix); + void label_finish(void); +-- +1.7.9.2 + diff --git a/0005-systemd-python-fix-failing-assert.patch b/0005-systemd-python-fix-failing-assert.patch new file mode 100644 index 00000000..9b0290d3 --- /dev/null +++ b/0005-systemd-python-fix-failing-assert.patch @@ -0,0 +1,26 @@ +From b65f24238b0627143916a9c7f8315483a9666676 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sat, 5 Apr 2014 13:29:50 -0400 +Subject: [PATCH] systemd-python: fix failing assert + +A parameter which was always null before, now get's set to +the module. +--- + src/python-systemd/_reader.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git src/python-systemd/_reader.c src/python-systemd/_reader.c +index 059b904..9a19a10 100644 +--- src/python-systemd/_reader.c ++++ src/python-systemd/_reader.c +@@ -902,7 +902,6 @@ static PyObject* get_catalog(PyObject *self, PyObject *args) { + sd_id128_t id; + _cleanup_free_ char *msg = NULL; + +- assert(!self); + assert(args); + + if (!PyArg_ParseTuple(args, "z:get_catalog", &id_)) +-- +1.7.9.2 + diff --git a/0005-systemd-run-add-some-extra-safety-checks.patch b/0005-systemd-run-add-some-extra-safety-checks.patch new file mode 100644 index 00000000..22d41889 --- /dev/null +++ b/0005-systemd-run-add-some-extra-safety-checks.patch @@ -0,0 +1,34 @@ +From 1ac67edb7c4d31a287fa98c0b554ae98bd34e71b Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 5 Mar 2014 03:38:36 +0100 +Subject: [PATCH] systemd-run: add some extra safety checks + +--- + src/run/run.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git src/run/run.c src/run/run.c +index 81763c9..e71ca7d 100644 +--- src/run/run.c ++++ src/run/run.c +@@ -37,7 +37,7 @@ static const char *arg_description = NULL; + static const char *arg_slice = NULL; + static bool arg_send_sighup = false; + static BusTransport arg_transport = BUS_TRANSPORT_LOCAL; +-static char *arg_host = NULL; ++static const char *arg_host = NULL; + static bool arg_user = false; + static const char *arg_service_type = NULL; + static const char *arg_exec_user = NULL; +@@ -186,7 +186,7 @@ static int parse_argv(int argc, char *argv[]) { + + case ARG_NICE: + r = safe_atoi(optarg, &arg_nice); +- if (r < 0) { ++ if (r < 0 || arg_nice < PRIO_MIN || arg_nice >= PRIO_MAX) { + log_error("Failed to parse nice value"); + return -EINVAL; + } +-- +1.7.9.2 + diff --git a/0005-units-order-sd-journal-flush-after-sd-remount-fs.patch b/0005-units-order-sd-journal-flush-after-sd-remount-fs.patch new file mode 100644 index 00000000..875c905e --- /dev/null +++ b/0005-units-order-sd-journal-flush-after-sd-remount-fs.patch @@ -0,0 +1,38 @@ +Based on 1f1926aa5e836caa3bd6df43704aecd606135103 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sun, 2 Nov 2014 21:45:42 -0500 +Subject: [PATCH] units: order sd-journal-flush after sd-remount-fs + +Otherwise we could attempt to flush the journal while /var/log/ was +still ro, and silently skip journal flushing. + +The way that errors in flushing are handled should still be changed to +be more transparent and robust. + +Based on 919699ec301ea507edce4a619141ed22e789ac0d Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 31 Oct 2014 16:22:36 +0100 +Subject: [PATCH] units: don't order journal flushing afte remote-fs.target + +Instead, only depend on the actual file systems we need. + +This should solve dep loops on setups where remote-fs.target is moved +into late boot. +--- + units/systemd-journal-flush.service.in | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +--- units/systemd-journal-flush.service.in ++++ units/systemd-journal-flush.service.in 2014-11-10 11:46:22.885518923 +0000 +@@ -10,8 +10,9 @@ Description=Trigger Flushing of Journal + Documentation=man:systemd-journald.service(8) man:journald.conf(5) + DefaultDependencies=no + Requires=systemd-journald.service +-After=systemd-journald.service local-fs.target remote-fs.target +-Before=systemd-user-sessions.service ++After=systemd-journald.service local-fs.target ++After=systemd-remount-fs.service ++Before=systemd-user-sessions.service systemd-tmpfiles-setup.service + + [Service] + ExecStart=@rootbindir@/systemctl kill --kill-who=main --signal=SIGUSR1 systemd-journald.service diff --git a/0005-util-avoid-double-close-of-fd.patch b/0005-util-avoid-double-close-of-fd.patch new file mode 100644 index 00000000..e1b5dacc --- /dev/null +++ b/0005-util-avoid-double-close-of-fd.patch @@ -0,0 +1,28 @@ +Based on 6f53e671aa7539cab02c9f739d84d28a343ca5bc Mon Sep 17 00:00:00 2001 +From: Thomas Hindoe Paaboel Andersen +Date: Wed, 8 Oct 2014 23:57:32 +0200 +Subject: [PATCH] util: avoid double close of fd + +We could end with a double close if we close the fd loop and flush_fd +fails. That would make us goto fail and there we close the fd once +again. This patch sets the fd to the return value for safe_close: -1 +A fd with negative value will be ignored by the next call to +safe_close. + +CID#996223 +--- + src/shared/util.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +--- src/shared/util.c ++++ src/shared/util.c 2014-10-14 15:42:22.515839157 +0000 +@@ -1969,7 +1969,8 @@ int acquire_terminal( + * ended our handle will be dead. It's important that + * we do this after sleeping, so that we don't enter + * an endless loop. */ +- close_nointr_nofail(fd); ++ if (fd >= 0) close_nointr_nofail(fd); ++ fd = -1; + } + + if (notify >= 0) diff --git a/0006-Do-not-return-1-EINVAL-on-allocation-error.patch b/0006-Do-not-return-1-EINVAL-on-allocation-error.patch new file mode 100644 index 00000000..bf1db2c6 --- /dev/null +++ b/0006-Do-not-return-1-EINVAL-on-allocation-error.patch @@ -0,0 +1,35 @@ +From 315db1a8aed226a51a4cf700172249cfd10ae115 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Fri, 14 Mar 2014 09:05:56 -0400 +Subject: [PATCH] Do not return -1 (EINVAL) on allocation error + +--- + src/core/socket.c | 8 +++----- + +diff --git src/core/socket.c src/core/socket.c +index 8ecc9f9..b39bec2 100644 +--- src/core/socket.c ++++ src/core/socket.c +@@ -198,16 +198,14 @@ static int socket_instantiate_service(Socket *s) { + + assert(s->accept); + +- if (!(prefix = unit_name_to_prefix(UNIT(s)->id))) ++ prefix = unit_name_to_prefix(UNIT(s)->id); ++ if (!prefix) + return -ENOMEM; + +- r = asprintf(&name, "%s@%u.service", prefix, s->n_accepted); +- +- if (r < 0) ++ if (asprintf(&name, "%s@%u.service", prefix, s->n_accepted) < 0) + return -ENOMEM; + + r = manager_load_unit(UNIT(s)->manager, name, NULL, NULL, &u); +- + if (r < 0) + return r; + +-- +1.7.9.2 + diff --git a/0006-Revert-back-to-var-run-at-a-couple-of-problems.patch b/0006-Revert-back-to-var-run-at-a-couple-of-problems.patch new file mode 100644 index 00000000..ed9a7a79 --- /dev/null +++ b/0006-Revert-back-to-var-run-at-a-couple-of-problems.patch @@ -0,0 +1,60 @@ +From df1e02046144f41176c32ed011369fd8dba36b76 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 26 Feb 2014 02:47:43 +0100 +Subject: [PATCH] Revert back to /var/run at a couple of problems +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This partially reverts 41a55c46ab8fb4ef6727434227071321fc762cce + +Some specifications we want to stay compatibility actually document +/var/run, not /run, and we should stay compatible with that. In order to +make sure our D-Bus implementation works on any system, regardless if +running systemd or not, we should always use /var/run which is the +only path mandated by the D-Bus spec. + +Similar, glibc hardcodes the utmp location to /var/run, and this is +exposed in _UTMP_PATH in limits.h, hence let's stay in sync with this +public API, too. + +We simply do not support systems where /var/run is not a symlink → /run. +Hence both are equivalent. Staying compatible with upstream +specifications hence weighs more than cleaning up superficial +appearance. +--- + man/runlevel.xml | 2 +- + src/libsystemd/sd-bus/sd-bus.c | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git man/runlevel.xml man/runlevel.xml +index 4db06dc..976753a 100644 +--- man/runlevel.xml ++++ man/runlevel.xml +@@ -124,7 +124,7 @@ + + + +- /run/utmp ++ /var/run/utmp + + The utmp database + runlevel reads the +diff --git src/libsystemd/sd-bus/sd-bus.c src/libsystemd/sd-bus/sd-bus.c +index 1318272..636715f 100644 +--- src/libsystemd/sd-bus/sd-bus.c ++++ src/libsystemd/sd-bus/sd-bus.c +@@ -794,8 +794,8 @@ static int parse_container_unix_address(sd_bus *b, const char **p, char **guid) + machine = NULL; + + b->sockaddr.un.sun_family = AF_UNIX; +- strncpy(b->sockaddr.un.sun_path, "/run/dbus/system_bus_socket", sizeof(b->sockaddr.un.sun_path)); +- b->sockaddr_size = offsetof(struct sockaddr_un, sun_path) + strlen("/run/dbus/system_bus_socket"); ++ strncpy(b->sockaddr.un.sun_path, "/var/run/dbus/system_bus_socket", sizeof(b->sockaddr.un.sun_path)); ++ b->sockaddr_size = offsetof(struct sockaddr_un, sun_path) + strlen("/var/run/dbus/system_bus_socket"); + + return 0; + } +-- +1.7.9.2 + diff --git a/0006-bus-unref-buscreds-on-failure.patch b/0006-bus-unref-buscreds-on-failure.patch new file mode 100644 index 00000000..d6ec9ccd --- /dev/null +++ b/0006-bus-unref-buscreds-on-failure.patch @@ -0,0 +1,32 @@ +From 2b347169b9046ff2d735ef23e62a8c74f5151600 Mon Sep 17 00:00:00 2001 +From: Philippe De Swert +Date: Wed, 10 Sep 2014 12:20:42 +0300 +Subject: [PATCH] bus: unref buscreds on failure + +Actually unref the buscreds when we are not going to return a +pointer to them. As when bus_creds_add_more fails we immediately +return the error code otherwise and leak the new buscreds. +Found with coverity. Fixes: CID#1237761 +--- + src/libsystemd/sd-bus/sd-bus.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git src/libsystemd/sd-bus/sd-bus.c src/libsystemd/sd-bus/sd-bus.c +index 78e91b9..83b3aa1 100644 +--- src/libsystemd/sd-bus/sd-bus.c ++++ src/libsystemd/sd-bus/sd-bus.c +@@ -3339,8 +3339,10 @@ _public_ int sd_bus_get_peer_creds(sd_bus *bus, uint64_t mask, sd_bus_creds **re + } + + r = bus_creds_add_more(c, mask, pid, 0); +- if (r < 0) ++ if (r < 0) { ++ sd_bus_creds_unref(c); + return r; ++ } + + *ret = c; + return 0; +-- +1.7.9.2 + diff --git a/0006-calendarspec-fix-typo-in-annually.patch b/0006-calendarspec-fix-typo-in-annually.patch new file mode 100644 index 00000000..7e695966 --- /dev/null +++ b/0006-calendarspec-fix-typo-in-annually.patch @@ -0,0 +1,27 @@ +From e90efc70900f8e69cfbafd9e9508bdeb4d40dad7 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sat, 25 Oct 2014 11:59:36 -0400 +Subject: [PATCH] calendarspec: fix typo in "annually" + +https://bugs.freedesktop.org/show_bug.cgi?id=85447 +--- + src/shared/calendarspec.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git src/shared/calendarspec.c src/shared/calendarspec.c +index 4ac74ab..64d0dec 100644 +--- src/shared/calendarspec.c ++++ src/shared/calendarspec.c +@@ -688,7 +688,8 @@ int calendar_spec_from_string(const char *p, CalendarSpec **spec) { + if (r < 0) + goto fail; + +- } else if (strcaseeq(p, "anually") || strcaseeq(p, "yearly")) { ++ } else if (strcaseeq(p, "annually") || strcaseeq(p, "yearly") ++ || strcaseeq(p, "anually") /* backwards compatibility */ ) { + r = const_chain(1, &c->month); + if (r < 0) + goto fail; +-- +1.7.9.2 + diff --git a/0006-hwdb-Update-database-of-Bluetooth-company-identifier.patch b/0006-hwdb-Update-database-of-Bluetooth-company-identifier.patch new file mode 100644 index 00000000..c4e89bb1 --- /dev/null +++ b/0006-hwdb-Update-database-of-Bluetooth-company-identifier.patch @@ -0,0 +1,82 @@ +From 7cfa80f07e94c3e48703d145ef03a73dd6e7b983 Mon Sep 17 00:00:00 2001 +From: Marcel Holtmann +Date: Wed, 18 Jun 2014 13:55:32 +0200 +Subject: [PATCH] hwdb: Update database of Bluetooth company identifiers + +--- + hwdb/20-bluetooth-vendor-product.hwdb | 42 ++++++++++++++++++++++++++++++--- + 1 file changed, 39 insertions(+), 3 deletions(-) + +diff --git hwdb/20-bluetooth-vendor-product.hwdb hwdb/20-bluetooth-vendor-product.hwdb +index a65c7db..377748a 100644 +--- hwdb/20-bluetooth-vendor-product.hwdb ++++ hwdb/20-bluetooth-vendor-product.hwdb +@@ -115,7 +115,7 @@ bluetooth:v0024* + ID_VENDOR_FROM_DATABASE=Alcatel + + bluetooth:v0025* +- ID_VENDOR_FROM_DATABASE=Philips Semiconductors ++ ID_VENDOR_FROM_DATABASE=NXP Semiconductors (formerly Philips Semiconductors) + + bluetooth:v0026* + ID_VENDOR_FROM_DATABASE=C Technologies +@@ -427,7 +427,7 @@ bluetooth:v008B* + ID_VENDOR_FROM_DATABASE=Topcorn Positioning Systems, LLC + + bluetooth:v008C* +- ID_VENDOR_FROM_DATABASE=Qualcomm Retail Solutions, Inc. (formerly Qualcomm Labs, Inc.) ++ ID_VENDOR_FROM_DATABASE=Gimbal Inc. (formerly Qualcomm Labs, Inc. and Qualcomm Retail Solutions, Inc.) + + bluetooth:v008D* + ID_VENDOR_FROM_DATABASE=Zscan Software +@@ -1006,10 +1006,46 @@ bluetooth:v014C* + ID_VENDOR_FROM_DATABASE=Mesh-Net Ltd + + bluetooth:v014D* +- ID_VENDOR_FROM_DATABASE=HUIZHOU DESAY SV AUTOMOTIVE CO., LTD. ++ ID_VENDOR_FROM_DATABASE=Huizhou Desay SV Automotive CO., LTD. + + bluetooth:v014E* + ID_VENDOR_FROM_DATABASE=Tangerine, Inc. + + bluetooth:v014F* + ID_VENDOR_FROM_DATABASE=B&W Group Ltd. ++ ++bluetooth:v0150* ++ ID_VENDOR_FROM_DATABASE=Pioneer Corporation ++ ++bluetooth:v0151* ++ ID_VENDOR_FROM_DATABASE=OnBeep ++ ++bluetooth:v0152* ++ ID_VENDOR_FROM_DATABASE=Vernier Software & Technology ++ ++bluetooth:v0153* ++ ID_VENDOR_FROM_DATABASE=ROL Ergo ++ ++bluetooth:v0154* ++ ID_VENDOR_FROM_DATABASE=Pebble Technology ++ ++bluetooth:v0155* ++ ID_VENDOR_FROM_DATABASE=NETATMO ++ ++bluetooth:v0156* ++ ID_VENDOR_FROM_DATABASE=Accumulate AB ++ ++bluetooth:v0157* ++ ID_VENDOR_FROM_DATABASE=Anhui Huami Information Technology Co., Ltd. ++ ++bluetooth:v0158* ++ ID_VENDOR_FROM_DATABASE=Inmite s.r.o. ++ ++bluetooth:v0159* ++ ID_VENDOR_FROM_DATABASE=ChefSteps, Inc. ++ ++bluetooth:v015A* ++ ID_VENDOR_FROM_DATABASE=micus AG ++ ++bluetooth:v015B* ++ ID_VENDOR_FROM_DATABASE=Biomedical Research Ltd. +-- +1.7.9.2 + diff --git a/0006-hwdb-update.patch b/0006-hwdb-update.patch new file mode 100644 index 00000000..080bd96c --- /dev/null +++ b/0006-hwdb-update.patch @@ -0,0 +1,4392 @@ +From 98be1a746ac0d7a17e69ccb05936a4d6b3223e97 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Thu, 3 Jul 2014 16:28:40 +0200 +Subject: [PATCH] hwdb: update + +--- + hwdb/20-OUI.hwdb | 543 +++++++++++++++++++-- + hwdb/20-pci-classes.hwdb | 27 ++ + hwdb/20-pci-vendor-model.hwdb | 1071 +++++++++++++++++++++++++++-------------- + hwdb/20-usb-classes.hwdb | 3 + + hwdb/20-usb-vendor-model.hwdb | 102 +++- + 5 files changed, 1362 insertions(+), 384 deletions(-) + +diff --git hwdb/20-OUI.hwdb hwdb/20-OUI.hwdb +index 6188bfc..97f1e6b 100644 +--- hwdb/20-OUI.hwdb ++++ hwdb/20-OUI.hwdb +@@ -6446,7 +6446,7 @@ OUI:0050C2871* + ID_OUI_FROM_DATABASE=R-S-I Elektrotechnik GmbH & Co. KG + + OUI:0050C2872* +- ID_OUI_FROM_DATABASE=Oliotalo - Objecthouse Oy ++ ID_OUI_FROM_DATABASE=Oliotalo Oy + + OUI:0050C2873* + ID_OUI_FROM_DATABASE=XRONET Corporation +@@ -37139,76 +37139,76 @@ OUI:001EC7* + ID_OUI_FROM_DATABASE=2Wire, Inc. + + OUI:001EC8* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=Rapid Mobile (Pty) Ltd + + OUI:001EC9* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=Dell Inc + + OUI:001ECA* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=Nortel + + OUI:001ECB* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE="RPC "Energoautomatika" Ltd + + OUI:001ECC* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=CDVI + + OUI:001ECD* + ID_OUI_FROM_DATABASE=KYLAND Technology Co. LTD + + OUI:001ECE* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=BISA Technologies (Hong Kong) Limited + + OUI:001ECF* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=PHILIPS ELECTRONICS UK LTD + + OUI:001ED0* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=Ingespace + + OUI:001ED1* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=Keyprocessor B.V. + + OUI:001ED2* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=Ray Shine Video Technology Inc + + OUI:001ED3* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=Dot Technology Int'l Co., Ltd. + + OUI:001ED4* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=Doble Engineering + + OUI:001ED5* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=Tekon-Automatics + + OUI:001ED6* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=Alentec & Orion AB + + OUI:001ED7* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=H-Stream Wireless, Inc. + + OUI:001ED8* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=Digital United Inc. + + OUI:001ED9* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=Mitsubishi Precision Co.,LTd. + + OUI:001EDA* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=Wesemann Elektrotechniek B.V. + + OUI:001EDB* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=Giken Trastem Co., Ltd. + + OUI:001EDC* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=Sony Ericsson Mobile Communications AB + + OUI:001EDD* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=WASKO S.A. + + OUI:001EDE* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=BYD COMPANY LIMITED + + OUI:001EDF* +- ID_OUI_FROM_DATABASE=2Wire, Inc. ++ ID_OUI_FROM_DATABASE=Master Industrialization Center Kista + + OUI:001EE0* + ID_OUI_FROM_DATABASE=Urmet Domus SpA +@@ -45800,7 +45800,7 @@ OUI:0050F8* + ID_OUI_FROM_DATABASE=ENTREGA TECHNOLOGIES, INC. + + OUI:0050F9* +- ID_OUI_FROM_DATABASE=SENSORMATIC ACD ++ ID_OUI_FROM_DATABASE=Sensormatic Electronics LLC + + OUI:0050FA* + ID_OUI_FROM_DATABASE=OXTEL, LTD. +@@ -45829,6 +45829,9 @@ OUI:0054AF* + OUI:005907* + ID_OUI_FROM_DATABASE=LenovoEMC Products USA, LLC + ++OUI:005A39* ++ ID_OUI_FROM_DATABASE=SHENZHEN FAST TECHNOLOGIES CO., LTD. ++ + OUI:005CB1* + ID_OUI_FROM_DATABASE=Gospell DIGITAL TECHNOLOGY CO., LTD + +@@ -46603,6 +46606,9 @@ OUI:0060FE* + OUI:0060FF* + ID_OUI_FROM_DATABASE=QuVis, Inc. + ++OUI:006171* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:006440* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -48238,6 +48244,9 @@ OUI:009C02* + OUI:009D8E* + ID_OUI_FROM_DATABASE=CARDIAC RECORDERS, INC. + ++OUI:009EC8* ++ ID_OUI_FROM_DATABASE=Beijing Xiaomi Electronic Products Co., Ltd. ++ + OUI:00A000* + ID_OUI_FROM_DATABASE=CENTILLION NETWORKS, INC. + +@@ -50740,6 +50749,9 @@ OUI:00D38D* + OUI:00D632* + ID_OUI_FROM_DATABASE=GE Energy + ++OUI:00D9D1* ++ ID_OUI_FROM_DATABASE=Sony Computer Entertainment Inc. ++ + OUI:00DB1E* + ID_OUI_FROM_DATABASE=Albedo Telecom SL + +@@ -51778,6 +51790,9 @@ OUI:0462D7* + OUI:0463E0* + ID_OUI_FROM_DATABASE=Nome Oy + ++OUI:046785* ++ ID_OUI_FROM_DATABASE=scemtec Hard- und Software fuer Mess- und Steuerungstechnik GmbH ++ + OUI:046D42* + ID_OUI_FROM_DATABASE=Bryston Ltd. + +@@ -51901,6 +51916,9 @@ OUI:04DB8A* + OUI:04DD4C* + ID_OUI_FROM_DATABASE=Velocytech + ++OUI:04DEDB* ++ ID_OUI_FROM_DATABASE=Rockport Networks Inc ++ + OUI:04DF69* + ID_OUI_FROM_DATABASE=Car Connectivity Consortium + +@@ -52498,6 +52516,9 @@ OUI:083F76* + OUI:084027* + ID_OUI_FROM_DATABASE=Gridstore Inc. + ++OUI:084656* ++ ID_OUI_FROM_DATABASE=VODALYS Ingénierie ++ + OUI:08482C* + ID_OUI_FROM_DATABASE=Raycore Taiwan Co., LTD. + +@@ -52966,6 +52987,9 @@ OUI:0CCDD3* + OUI:0CCDFB* + ID_OUI_FROM_DATABASE=EDIC Systems Inc. + ++OUI:0CCFD1* ++ ID_OUI_FROM_DATABASE=SPRINGWAVE Co., Ltd ++ + OUI:0CD292* + ID_OUI_FROM_DATABASE=Intel Corporate + +@@ -53089,6 +53113,9 @@ OUI:1010B6* + OUI:101212* + ID_OUI_FROM_DATABASE=Vivo International Corporation Pty Ltd + ++OUI:101218* ++ ID_OUI_FROM_DATABASE=Korins Inc. ++ + OUI:101248* + ID_OUI_FROM_DATABASE=ITG, Inc. + +@@ -53128,6 +53155,9 @@ OUI:102D96* + OUI:102EAF* + ID_OUI_FROM_DATABASE=Texas Instruments + ++OUI:102F6B* ++ ID_OUI_FROM_DATABASE=Microsoft Corporation ++ + OUI:103047* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -53164,6 +53194,9 @@ OUI:104780* + OUI:1048B1* + ID_OUI_FROM_DATABASE=Beijing Duokan Technology Limited + ++OUI:104B46* ++ ID_OUI_FROM_DATABASE=Mitsubishi Electric Corporation ++ + OUI:104D77* + ID_OUI_FROM_DATABASE=Innovative Computer Engineering + +@@ -53242,6 +53275,9 @@ OUI:10880F* + OUI:1088CE* + ID_OUI_FROM_DATABASE=Fiberhome Telecommunication Tech.Co.,Ltd. + ++OUI:108A1B* ++ ID_OUI_FROM_DATABASE=RAONIX Inc. ++ + OUI:108CCF* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -53458,6 +53494,9 @@ OUI:144319* + OUI:1446E4* + ID_OUI_FROM_DATABASE=AVISTEL + ++OUI:14488B* ++ ID_OUI_FROM_DATABASE=Shenzhen Doov Technology Co.,Ltd ++ + OUI:144978* + ID_OUI_FROM_DATABASE=Digital Control Incorporated + +@@ -53473,6 +53512,9 @@ OUI:145412* + OUI:145645* + ID_OUI_FROM_DATABASE=Savitech Corp. + ++OUI:1458D0* ++ ID_OUI_FROM_DATABASE=Hewlett Packard ++ + OUI:145A05* + ID_OUI_FROM_DATABASE=Apple + +@@ -53608,6 +53650,9 @@ OUI:14EB33* + OUI:14EDA5* + ID_OUI_FROM_DATABASE=Wächter GmbH Sicherheitssysteme + ++OUI:14EDE4* ++ ID_OUI_FROM_DATABASE=Kaiam Corporation ++ + OUI:14EE9D* + ID_OUI_FROM_DATABASE=AirNav Systems LLC + +@@ -53794,6 +53839,9 @@ OUI:1867B0* + OUI:186D99* + ID_OUI_FROM_DATABASE=Adanis Inc. + ++OUI:187117* ++ ID_OUI_FROM_DATABASE=eta plus electronic gmbh ++ + OUI:1879A2* + ID_OUI_FROM_DATABASE=GMJ ELECTRIC LIMITED + +@@ -53812,6 +53860,9 @@ OUI:1880CE* + OUI:1880F5* + ID_OUI_FROM_DATABASE=Alcatel-Lucent Shanghai Bell Co., Ltd + ++OUI:188219* ++ ID_OUI_FROM_DATABASE=Alibaba Cloud Computing Ltd. ++ + OUI:188331* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -53857,6 +53908,9 @@ OUI:189EFC* + OUI:18A905* + ID_OUI_FROM_DATABASE=Hewlett-Packard Company + ++OUI:18A958* ++ ID_OUI_FROM_DATABASE=PROVISION THAI CO., LTD. ++ + OUI:18A99B* + ID_OUI_FROM_DATABASE=Dell Inc + +@@ -54049,6 +54103,9 @@ OUI:1C43EC* + OUI:1C4593* + ID_OUI_FROM_DATABASE=Texas Instruments + ++OUI:1C4840* ++ ID_OUI_FROM_DATABASE=IMS Messsysteme GmbH ++ + OUI:1C48F9* + ID_OUI_FROM_DATABASE=GN Netcom A/S + +@@ -54064,6 +54121,9 @@ OUI:1C4BD6* + OUI:1C51B5* + ID_OUI_FROM_DATABASE=Techaya LTD + ++OUI:1C5216* ++ ID_OUI_FROM_DATABASE=DONGGUAN HELE ELECTRONICS CO., LTD ++ + OUI:1C52D6* + ID_OUI_FROM_DATABASE=FLAT DISPLAY TECHNOLOGY CORPORATION + +@@ -54100,6 +54160,9 @@ OUI:1C66AA* + OUI:1C69A5* + ID_OUI_FROM_DATABASE=Research In Motion + ++OUI:1C6A7A* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:1C6BCA* + ID_OUI_FROM_DATABASE=Mitsunami Co., Ltd. + +@@ -54163,6 +54226,12 @@ OUI:1C973D* + OUI:1C994C* + ID_OUI_FROM_DATABASE=Murata Manufactuaring Co.,Ltd. + ++OUI:1C9C26* ++ ID_OUI_FROM_DATABASE=Zoovel Technologies ++ ++OUI:1CA2B1* ++ ID_OUI_FROM_DATABASE=ruwido austria gmbh ++ + OUI:1CA770* + ID_OUI_FROM_DATABASE=SHENZHEN CHUANGWEI-RGB ELECTRONICS CO.,LT + +@@ -54217,6 +54286,9 @@ OUI:1CC63C* + OUI:1CD40C* + ID_OUI_FROM_DATABASE=Kriwan Industrie-Elektronik GmbH + ++OUI:1CDEA7* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:1CDF0F* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -54286,6 +54358,9 @@ OUI:20107A* + OUI:201257* + ID_OUI_FROM_DATABASE=Most Lucky Trading Ltd + ++OUI:2012D5* ++ ID_OUI_FROM_DATABASE=Scientech Materials Corporation ++ + OUI:2013E0* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -54370,6 +54445,9 @@ OUI:205A00* + OUI:205B5E* + ID_OUI_FROM_DATABASE=Shenzhen Wonhe Technology Co., Ltd + ++OUI:205CFA* ++ ID_OUI_FROM_DATABASE=Yangzhou ChangLian Network Technology Co,ltd. ++ + OUI:206432* + ID_OUI_FROM_DATABASE=SAMSUNG ELECTRO MECHANICS CO.,LTD. + +@@ -54439,6 +54517,9 @@ OUI:20A2E7* + OUI:20A787* + ID_OUI_FROM_DATABASE=Bointec Taiwan Corporation Limited + ++OUI:20A99B* ++ ID_OUI_FROM_DATABASE=Microsoft Corporation ++ + OUI:20AA25* + ID_OUI_FROM_DATABASE=IP-NET LLC + +@@ -54469,6 +54550,9 @@ OUI:20BFDB* + OUI:20C1AF* + ID_OUI_FROM_DATABASE=i Wit Digital Co., Limited + ++OUI:20C38F* ++ ID_OUI_FROM_DATABASE=Texas Instruments Inc ++ + OUI:20C60D* + ID_OUI_FROM_DATABASE=Shanghai annijie Information technology Co.,LTD + +@@ -54616,6 +54700,9 @@ OUI:2437EF* + OUI:243C20* + ID_OUI_FROM_DATABASE=Dynamode Group + ++OUI:2442BC* ++ ID_OUI_FROM_DATABASE=Alinco,incorporated ++ + OUI:244597* + ID_OUI_FROM_DATABASE=GEMUE Gebr. Mueller Apparatebau + +@@ -55027,6 +55114,9 @@ OUI:28A241* + OUI:28A574* + ID_OUI_FROM_DATABASE=Miller Electric Mfg. Co. + ++OUI:28A5EE* ++ ID_OUI_FROM_DATABASE=Shenzhen SDGI CATV Co., Ltd ++ + OUI:28AF0A* + ID_OUI_FROM_DATABASE=Sirius XM Radio Inc + +@@ -55177,6 +55267,9 @@ OUI:2C0033* + OUI:2C00F7* + ID_OUI_FROM_DATABASE=XOS + ++OUI:2C010B* ++ ID_OUI_FROM_DATABASE=NASCENT Technology, LLC - RemKon ++ + OUI:2C0623* + ID_OUI_FROM_DATABASE=Win Leader Inc. + +@@ -55192,6 +55285,9 @@ OUI:2C18AE* + OUI:2C1984* + ID_OUI_FROM_DATABASE=IDN Telecom, Inc. + ++OUI:2C1A31* ++ ID_OUI_FROM_DATABASE=Electronics Company Limited ++ + OUI:2C1EEA* + ID_OUI_FROM_DATABASE=AERODEV + +@@ -55369,6 +55465,9 @@ OUI:2C9EFC* + OUI:2CA157* + ID_OUI_FROM_DATABASE=acromate, Inc. + ++OUI:2CA30E* ++ ID_OUI_FROM_DATABASE=POWER DRAGON DEVELOPMENT LIMITED ++ + OUI:2CA780* + ID_OUI_FROM_DATABASE=True Technologies Inc. + +@@ -55540,6 +55639,9 @@ OUI:303EAD* + OUI:304174* + ID_OUI_FROM_DATABASE=ALTEC LANSING LLC + ++OUI:304225* ++ ID_OUI_FROM_DATABASE=BURG-WÄCHTER KG ++ + OUI:304449* + ID_OUI_FROM_DATABASE=PLATH GmbH + +@@ -55603,6 +55705,9 @@ OUI:306E5C* + OUI:3071B2* + ID_OUI_FROM_DATABASE=Hangzhou Prevail Optoelectronic Equipment Co.,LTD. + ++OUI:307512* ++ ID_OUI_FROM_DATABASE=Sony Mobile Communications AB ++ + OUI:30766F* + ID_OUI_FROM_DATABASE=LG Electronics + +@@ -55735,6 +55840,9 @@ OUI:3400A3* + OUI:340286* + ID_OUI_FROM_DATABASE=Intel Corporate + ++OUI:34029B* ++ ID_OUI_FROM_DATABASE=CloudBerry Technologies Private Limited ++ + OUI:3407FB* + ID_OUI_FROM_DATABASE=Ericsson AB + +@@ -55774,6 +55882,9 @@ OUI:3423BA* + OUI:34255D* + ID_OUI_FROM_DATABASE=Shenzhen Loadcom Technology Co.,Ltd + ++OUI:3428F0* ++ ID_OUI_FROM_DATABASE=ATN International Limited ++ + OUI:3429EA* + ID_OUI_FROM_DATABASE=MCD ELECTRONICS SP. Z O.O. + +@@ -55798,6 +55909,9 @@ OUI:344B3D* + OUI:344B50* + ID_OUI_FROM_DATABASE=ZTE Corporation + ++OUI:344DF7* ++ ID_OUI_FROM_DATABASE=LG Electronics ++ + OUI:344F3F* + ID_OUI_FROM_DATABASE=IO-Power Technology Co., Ltd. + +@@ -55825,6 +55939,9 @@ OUI:345D10* + OUI:346178* + ID_OUI_FROM_DATABASE=The Boeing Company + ++OUI:346288* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:34684A* + ID_OUI_FROM_DATABASE=Teraworks Co., Ltd. + +@@ -55939,6 +56056,9 @@ OUI:34B1F7* + OUI:34B571* + ID_OUI_FROM_DATABASE=PLDS + ++OUI:34B7FD* ++ ID_OUI_FROM_DATABASE=Guangzhou Younghead Electronic Technology Co.,Ltd ++ + OUI:34BA51* + ID_OUI_FROM_DATABASE=Se-Kure Controls, Inc. + +@@ -56047,6 +56167,9 @@ OUI:34F39B* + OUI:34F62D* + ID_OUI_FROM_DATABASE=SHARP Corporation + ++OUI:34F6D2* ++ ID_OUI_FROM_DATABASE=Panasonic Taiwan Co.,Ltd. ++ + OUI:34F968* + ID_OUI_FROM_DATABASE=ATEK Products, LLC + +@@ -56062,6 +56185,9 @@ OUI:380197* + OUI:3806B4* + ID_OUI_FROM_DATABASE=A.D.C. GmbH + ++OUI:3808FD* ++ ID_OUI_FROM_DATABASE=Silca Spa ++ + OUI:380A0A* + ID_OUI_FROM_DATABASE=Sky-City Communication and Electronics Limited Company + +@@ -56137,6 +56263,9 @@ OUI:384608* + OUI:38484C* + ID_OUI_FROM_DATABASE=Apple + ++OUI:384B76* ++ ID_OUI_FROM_DATABASE=AIRTAME ApS ++ + OUI:384FF0* + ID_OUI_FROM_DATABASE=Azurewave Technologies, Inc. + +@@ -56227,6 +56356,9 @@ OUI:38AA3C* + OUI:38B12D* + ID_OUI_FROM_DATABASE=Sonotronic Nagel GmbH + ++OUI:38B1DB* ++ ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. ++ + OUI:38B5BD* + ID_OUI_FROM_DATABASE=E.G.O. Elektro-Ger + +@@ -56302,6 +56434,9 @@ OUI:38EE9D* + OUI:38F098* + ID_OUI_FROM_DATABASE=Vapor Stone Rail Systems + ++OUI:38F33F* ++ ID_OUI_FROM_DATABASE=TATSUNO CORPORATION ++ + OUI:38F597* + ID_OUI_FROM_DATABASE=home2net GmbH + +@@ -56443,6 +56578,9 @@ OUI:3C57D5* + OUI:3C5A37* + ID_OUI_FROM_DATABASE=Samsung Electronics + ++OUI:3C5AB4* ++ ID_OUI_FROM_DATABASE=Google ++ + OUI:3C5F01* + ID_OUI_FROM_DATABASE=Synerchip Co., Ltd. + +@@ -56803,6 +56941,9 @@ OUI:407074* + OUI:407496* + ID_OUI_FROM_DATABASE=aFUN TECHNOLOGY INC. + ++OUI:40786A* ++ ID_OUI_FROM_DATABASE=Motorola Mobility LLC ++ + OUI:407875* + ID_OUI_FROM_DATABASE=IMBEL - Industria de Material Belico do Brasil + +@@ -56929,6 +57070,9 @@ OUI:40D40E* + OUI:40D559* + ID_OUI_FROM_DATABASE=MICRO S.E.R.I. + ++OUI:40E230* ++ ID_OUI_FROM_DATABASE=AzureWave Technologies, Inc. ++ + OUI:40E730* + ID_OUI_FROM_DATABASE=DEY Storage Systems, Inc. + +@@ -57145,6 +57289,9 @@ OUI:4486C1* + OUI:4487FC* + ID_OUI_FROM_DATABASE=ELITEGROUP COMPUTER SYSTEM CO., LTD. + ++OUI:4488CB* ++ ID_OUI_FROM_DATABASE=Camco Technologies NV ++ + OUI:448A5B* + ID_OUI_FROM_DATABASE=Micro-Star INT'L CO., LTD. + +@@ -57337,6 +57484,9 @@ OUI:4851B7* + OUI:485261* + ID_OUI_FROM_DATABASE=SOREEL + ++OUI:4857DD* ++ ID_OUI_FROM_DATABASE=Facebook ++ + OUI:485929* + ID_OUI_FROM_DATABASE=LG Electronics + +@@ -57361,6 +57511,9 @@ OUI:4861A3* + OUI:486276* + ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD + ++OUI:486B2C* ++ ID_OUI_FROM_DATABASE=BBK Electronics Corp., Ltd., ++ + OUI:486B91* + ID_OUI_FROM_DATABASE=Fleetwood Group Inc. + +@@ -57391,6 +57544,9 @@ OUI:4891F6* + OUI:489BE2* + ID_OUI_FROM_DATABASE=SCI Innovations Ltd + ++OUI:489D18* ++ ID_OUI_FROM_DATABASE=Flashbay Limited ++ + OUI:489D24* + ID_OUI_FROM_DATABASE=Research In Motion + +@@ -57655,6 +57811,9 @@ OUI:4C7367* + OUI:4C73A5* + ID_OUI_FROM_DATABASE=KOVE + ++OUI:4C7403* ++ ID_OUI_FROM_DATABASE=Mundo Reader (bq) ++ + OUI:4C774F* + ID_OUI_FROM_DATABASE=Embedded Wireless Labs + +@@ -57745,6 +57904,9 @@ OUI:4CBAA3* + OUI:4CBB58* + ID_OUI_FROM_DATABASE=Chicony Electronics Co., Ltd. + ++OUI:4CBC42* ++ ID_OUI_FROM_DATABASE=Shenzhen Hangsheng Electronics Co.,Ltd. ++ + OUI:4CBCA5* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -57784,6 +57946,9 @@ OUI:4CE1BB* + OUI:4CE676* + ID_OUI_FROM_DATABASE=Buffalo Inc. + ++OUI:4CE933* ++ ID_OUI_FROM_DATABASE=RailComm, LLC ++ + OUI:4CEB42* + ID_OUI_FROM_DATABASE=Intel Corporate + +@@ -57799,6 +57964,9 @@ OUI:4CF2BF* + OUI:4CF45B* + ID_OUI_FROM_DATABASE=Blue Clover Devices + ++OUI:4CF5A0* ++ ID_OUI_FROM_DATABASE=Scalable Network Technologies Inc ++ + OUI:4CF737* + ID_OUI_FROM_DATABASE=SamJi Electronics Co., Ltd + +@@ -57823,6 +57991,9 @@ OUI:500E6D* + OUI:5011EB* + ID_OUI_FROM_DATABASE=SilverNet Ltd + ++OUI:5014B5* ++ ID_OUI_FROM_DATABASE=Richfit Information Technology Co., Ltd ++ + OUI:5017FF* + ID_OUI_FROM_DATABASE=Cisco + +@@ -57847,6 +58018,9 @@ OUI:502690* + OUI:5027C7* + ID_OUI_FROM_DATABASE=TECHNART Co.,Ltd + ++OUI:50294D* ++ ID_OUI_FROM_DATABASE=NANJING IOT SENSOR TECHNOLOGY CO,LTD ++ + OUI:502A7E* + ID_OUI_FROM_DATABASE=Smart electronic GmbH + +@@ -57937,6 +58111,9 @@ OUI:506441* + OUI:506787* + ID_OUI_FROM_DATABASE=iTellus + ++OUI:5067AE* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:5067F0* + ID_OUI_FROM_DATABASE=ZyXEL Communications Corporation + +@@ -58276,6 +58453,9 @@ OUI:549B12* + OUI:549D85* + ID_OUI_FROM_DATABASE=EnerAccess inc + ++OUI:549F35* ++ ID_OUI_FROM_DATABASE=Dell Inc. ++ + OUI:54A04F* + ID_OUI_FROM_DATABASE=t-mac Technologies Ltd + +@@ -58366,6 +58546,9 @@ OUI:54F5B6* + OUI:54F666* + ID_OUI_FROM_DATABASE=Berthold Technologies GmbH and Co.KG + ++OUI:54F876* ++ ID_OUI_FROM_DATABASE=ABB AG ++ + OUI:54FA3E* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,LTD + +@@ -58375,6 +58558,9 @@ OUI:54FB58* + OUI:54FDBF* + ID_OUI_FROM_DATABASE=Scheidt & Bachmann GmbH + ++OUI:54FFCF* ++ ID_OUI_FROM_DATABASE=Mopria Alliance ++ + OUI:580528* + ID_OUI_FROM_DATABASE=LABRIS NETWORKS + +@@ -58390,6 +58576,9 @@ OUI:5809E5* + OUI:580A20* + ID_OUI_FROM_DATABASE=Cisco + ++OUI:58108C* ++ ID_OUI_FROM_DATABASE=Intelbras ++ + OUI:581243* + ID_OUI_FROM_DATABASE=AcSiP Technology Corp. + +@@ -58504,9 +58693,15 @@ OUI:587521* + OUI:587675* + ID_OUI_FROM_DATABASE=Beijing ECHO Technologies Co.,Ltd + ++OUI:5876C5* ++ ID_OUI_FROM_DATABASE=DIGI I'S LTD ++ + OUI:587A4D* + ID_OUI_FROM_DATABASE=Stonesoft Corporation + ++OUI:587BE9* ++ ID_OUI_FROM_DATABASE=AirPro Technology India Pvt. Ltd ++ + OUI:587E61* + ID_OUI_FROM_DATABASE=Hisense Electric Co., Ltd + +@@ -58633,6 +58828,9 @@ OUI:58EECE* + OUI:58F387* + ID_OUI_FROM_DATABASE=HCCP + ++OUI:58F39C* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:58F67B* + ID_OUI_FROM_DATABASE=Xia Men UnionCore Technology LTD. + +@@ -58810,6 +59008,12 @@ OUI:5C89D4* + OUI:5C8D4E* + ID_OUI_FROM_DATABASE=Apple + ++OUI:5C8FE0* ++ ID_OUI_FROM_DATABASE=ARRIS Group, Inc. ++ ++OUI:5C93A2* ++ ID_OUI_FROM_DATABASE=Liteon Technology Corporation ++ + OUI:5C95AE* + ID_OUI_FROM_DATABASE=Apple + +@@ -59011,6 +59215,9 @@ OUI:60334B* + OUI:603553* + ID_OUI_FROM_DATABASE=Buwon Technology + ++OUI:603696* ++ ID_OUI_FROM_DATABASE=The Sapling Company ++ + OUI:6036DD* + ID_OUI_FROM_DATABASE=Intel Corporate + +@@ -59038,9 +59245,18 @@ OUI:604616* + OUI:6047D4* + ID_OUI_FROM_DATABASE=FORICS Electronic Technology Co., Ltd. + ++OUI:604826* ++ ID_OUI_FROM_DATABASE=Newbridge Technologies Int. Ltd. ++ + OUI:604A1C* + ID_OUI_FROM_DATABASE=SUYIN Corporation + ++OUI:6050C1* ++ ID_OUI_FROM_DATABASE=Kinetek Sports ++ ++OUI:60512C* ++ ID_OUI_FROM_DATABASE=TCT mobile limited ++ + OUI:6052D0* + ID_OUI_FROM_DATABASE=FACTS Engineering + +@@ -59125,6 +59341,9 @@ OUI:609084* + OUI:609217* + ID_OUI_FROM_DATABASE=Apple + ++OUI:6099D1* ++ ID_OUI_FROM_DATABASE=Vuzix / Lenovo ++ + OUI:609AA4* + ID_OUI_FROM_DATABASE=GVI SECURITY INC. + +@@ -59284,6 +59503,9 @@ OUI:60FEF9* + OUI:60FFDD* + ID_OUI_FROM_DATABASE=C.E. ELECTRONICS, INC + ++OUI:64002D* ++ ID_OUI_FROM_DATABASE=Powerlinq Co., LTD ++ + OUI:6400F1* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -59557,6 +59779,9 @@ OUI:64B310* + OUI:64B370* + ID_OUI_FROM_DATABASE=PowerComm Solutons LLC + ++OUI:64B473* ++ ID_OUI_FROM_DATABASE=Xiaomi inc. ++ + OUI:64B64A* + ID_OUI_FROM_DATABASE=ViVOtech, Inc. + +@@ -59917,6 +60142,9 @@ OUI:68D247* + OUI:68D925* + ID_OUI_FROM_DATABASE=ProSys Development Services + ++OUI:68D93C* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:68DB67* + ID_OUI_FROM_DATABASE=Nantong Coship Electronics Co., Ltd + +@@ -59950,6 +60178,9 @@ OUI:68EE96* + OUI:68EFBD* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + ++OUI:68F06D* ++ ID_OUI_FROM_DATABASE=ALONG INDUSTRIAL CO., LIMITED ++ + OUI:68F125* + ID_OUI_FROM_DATABASE=Data Controls Inc. + +@@ -60079,6 +60310,9 @@ OUI:6C626D* + OUI:6C641A* + ID_OUI_FROM_DATABASE=Penguin Computing + ++OUI:6C6EFE* ++ ID_OUI_FROM_DATABASE=Core Logic Inc. ++ + OUI:6C6F18* + ID_OUI_FROM_DATABASE=Stereotaxis, Inc. + +@@ -60091,6 +60325,9 @@ OUI:6C709F* + OUI:6C71D9* + ID_OUI_FROM_DATABASE=AzureWave Technologies, Inc + ++OUI:6C7660* ++ ID_OUI_FROM_DATABASE=KYOCERA Corporation ++ + OUI:6C81FE* + ID_OUI_FROM_DATABASE=Mitsuba Corporation + +@@ -60122,7 +60359,7 @@ OUI:6C92BF* + ID_OUI_FROM_DATABASE=Inspur Electronic Information Industry Co.,Ltd. + + OUI:6C98EB* +- ID_OUI_FROM_DATABASE=Xyne GmbH ++ ID_OUI_FROM_DATABASE=Ocedo GmbH + + OUI:6C9989* + ID_OUI_FROM_DATABASE=Cisco +@@ -60187,6 +60424,9 @@ OUI:6CB7F4* + OUI:6CBEE9* + ID_OUI_FROM_DATABASE=Alcatel-Lucent-IPD + ++OUI:6CBFB5* ++ ID_OUI_FROM_DATABASE=Noon Technology Co., Ltd ++ + OUI:6CC1D2* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + +@@ -60514,6 +60754,9 @@ OUI:70A8E3* + OUI:70AAB2* + ID_OUI_FROM_DATABASE=Research In Motion + ++OUI:70AF25* ++ ID_OUI_FROM_DATABASE=Nishiyama Industry Co.,LTD. ++ + OUI:70B035* + ID_OUI_FROM_DATABASE=Shenzhen Zowee Technology Co., Ltd + +@@ -60535,6 +60778,9 @@ OUI:70B599* + OUI:70B921* + ID_OUI_FROM_DATABASE=FiberHome Telecommunication Technologies CO.,LTD + ++OUI:70BAEF* ++ ID_OUI_FROM_DATABASE=Hangzhou H3C Technologies Co., Limited ++ + OUI:70C6AC* + ID_OUI_FROM_DATABASE=Bosch Automotive Aftermarket + +@@ -60586,6 +60832,9 @@ OUI:70EE50* + OUI:70F176* + ID_OUI_FROM_DATABASE=Data Modul AG + ++OUI:70F196* ++ ID_OUI_FROM_DATABASE=Actiontec Electronics, Inc ++ + OUI:70F1A1* + ID_OUI_FROM_DATABASE=Liteon Technology Corporation + +@@ -60796,6 +61045,9 @@ OUI:74B00C* + OUI:74B9EB* + ID_OUI_FROM_DATABASE=Fujian JinQianMao Electronic Technology Co.,Ltd + ++OUI:74BADB* ++ ID_OUI_FROM_DATABASE=Longconn Electornics(shenzhen)Co.,Ltd ++ + OUI:74BE08* + ID_OUI_FROM_DATABASE=ATEK Products, LLC + +@@ -60844,6 +61096,9 @@ OUI:74DE2B* + OUI:74E06E* + ID_OUI_FROM_DATABASE=Ergophone GmbH + ++OUI:74E14A* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ + OUI:74E1B6* + ID_OUI_FROM_DATABASE=Apple + +@@ -61318,6 +61573,9 @@ OUI:7C092B* + OUI:7C0A50* + ID_OUI_FROM_DATABASE=J-MEX Inc. + ++OUI:7C0ECE* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:7C11BE* + ID_OUI_FROM_DATABASE=Apple + +@@ -61345,6 +61603,9 @@ OUI:7C2048* + OUI:7C2064* + ID_OUI_FROM_DATABASE=Alcatel Lucent IPD + ++OUI:7C2587* ++ ID_OUI_FROM_DATABASE=chaowifi.com ++ + OUI:7C2CF3* + ID_OUI_FROM_DATABASE=Secure Electrans Ltd + +@@ -61504,6 +61765,9 @@ OUI:7CAD74* + OUI:7CB03E* + ID_OUI_FROM_DATABASE=OSRAM GmbH + ++OUI:7CB177* ++ ID_OUI_FROM_DATABASE=Satelco AG ++ + OUI:7CB21B* + ID_OUI_FROM_DATABASE=Cisco SPVTG + +@@ -61774,6 +62038,9 @@ OUI:8065E9* + OUI:806629* + ID_OUI_FROM_DATABASE=Prescope Technologies CO.,LTD. + ++OUI:806C1B* ++ ID_OUI_FROM_DATABASE=Motorola Mobility LLC ++ + OUI:806C8B* + ID_OUI_FROM_DATABASE=KAESER KOMPRESSOREN AG + +@@ -61918,9 +62185,15 @@ OUI:80D733* + OUI:80DB31* + ID_OUI_FROM_DATABASE=Power Quotient International Co., Ltd. + ++OUI:80E650* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:80EA96* + ID_OUI_FROM_DATABASE=Apple + ++OUI:80EACA* ++ ID_OUI_FROM_DATABASE=Dialog Semiconductor Hellas SA ++ + OUI:80EE73* + ID_OUI_FROM_DATABASE=Shuttle Inc. + +@@ -61933,6 +62206,9 @@ OUI:80F593* + OUI:80F62E* + ID_OUI_FROM_DATABASE=Hangzhou H3C Technologies Co., Limited + ++OUI:80F8EB* ++ ID_OUI_FROM_DATABASE=RayTight ++ + OUI:80FA5B* + ID_OUI_FROM_DATABASE=CLEVO CO. + +@@ -62116,6 +62392,9 @@ OUI:848506* + OUI:84850A* + ID_OUI_FROM_DATABASE=Hella Sonnen- und Wetterschutztechnik GmbH + ++OUI:8486F3* ++ ID_OUI_FROM_DATABASE=Greenvity Communications ++ + OUI:848D84* + ID_OUI_FROM_DATABASE=Rajant Corporation + +@@ -62134,9 +62413,15 @@ OUI:848F69* + OUI:849000* + ID_OUI_FROM_DATABASE=Arnold & Richter Cine Technik + ++OUI:84930C* ++ ID_OUI_FROM_DATABASE=InCoax Networks Europe AB ++ + OUI:84948C* + ID_OUI_FROM_DATABASE=Hitron Technologies. Inc + ++OUI:849681* ++ ID_OUI_FROM_DATABASE=Cathay Communication Co.,Ltd ++ + OUI:8496D8* + ID_OUI_FROM_DATABASE=Pace plc + +@@ -62206,6 +62491,9 @@ OUI:84DE3D* + OUI:84DF0C* + ID_OUI_FROM_DATABASE=NET2GRID BV + ++OUI:84E058* ++ ID_OUI_FROM_DATABASE=Pace plc ++ + OUI:84E4D9* + ID_OUI_FROM_DATABASE=Shenzhen NEED technology Ltd. + +@@ -62545,6 +62833,9 @@ OUI:8C0EE3* + OUI:8C11CB* + ID_OUI_FROM_DATABASE=ABUS Security-Center GmbH & Co. KG + ++OUI:8C18D9* ++ ID_OUI_FROM_DATABASE=Shenzhen RF Technology Co., Ltd ++ + OUI:8C1F94* + ID_OUI_FROM_DATABASE=RF Surgical System Inc. + +@@ -62632,6 +62923,9 @@ OUI:8C5AF0* + OUI:8C5CA1* + ID_OUI_FROM_DATABASE=d-broad,INC + ++OUI:8C5D60* ++ ID_OUI_FROM_DATABASE=UCI Corporation Co.,Ltd. ++ + OUI:8C5FDF* + ID_OUI_FROM_DATABASE=Beijing Railway Signal Factory + +@@ -62683,6 +62977,9 @@ OUI:8C7CFF* + OUI:8C7EB3* + ID_OUI_FROM_DATABASE=Lytro, Inc. + ++OUI:8C7F3B* ++ ID_OUI_FROM_DATABASE=ARRIS Group, Inc. ++ + OUI:8C82A8* + ID_OUI_FROM_DATABASE=Insigma Technology Co.,Ltd + +@@ -62716,6 +63013,9 @@ OUI:8CAE4C* + OUI:8CAE89* + ID_OUI_FROM_DATABASE=Y-cam Solutions Ltd + ++OUI:8CB094* ++ ID_OUI_FROM_DATABASE=Airtech I&C Co., Ltd ++ + OUI:8CB64F* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -62770,6 +63070,9 @@ OUI:8CD628* + OUI:8CDB25* + ID_OUI_FROM_DATABASE=ESG Solutions + ++OUI:8CDCD4* ++ ID_OUI_FROM_DATABASE=Hewlett Packard ++ + OUI:8CDD8D* + ID_OUI_FROM_DATABASE=Wifly-City System Inc. + +@@ -62788,6 +63091,9 @@ OUI:8CE7B3* + OUI:8CEEC6* + ID_OUI_FROM_DATABASE=Precepscion Pty. Ltd. + ++OUI:8CF813* ++ ID_OUI_FROM_DATABASE=ORANGE POLSKA ++ + OUI:8CF945* + ID_OUI_FROM_DATABASE=Power Automation pte Ltd + +@@ -62851,6 +63157,9 @@ OUI:901D27* + OUI:901EDD* + ID_OUI_FROM_DATABASE=GREAT COMPUTER CORPORATION + ++OUI:90203A* ++ ID_OUI_FROM_DATABASE=BYD Precision Manufacture Co.,Ltd ++ + OUI:902083* + ID_OUI_FROM_DATABASE=General Engine Management Systems Ltd. + +@@ -63127,6 +63436,9 @@ OUI:90E6BA* + OUI:90EA60* + ID_OUI_FROM_DATABASE=SPI Lasers Ltd + ++OUI:90EF68* ++ ID_OUI_FROM_DATABASE=ZyXEL Communications Corporation ++ + OUI:90F1AA* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,LTD + +@@ -63154,6 +63466,9 @@ OUI:90FB5B* + OUI:90FBA6* + ID_OUI_FROM_DATABASE=Hon Hai Precision Ind.Co.Ltd + ++OUI:90FD61* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:90FF79* + ID_OUI_FROM_DATABASE=Metro Ethernet Forum + +@@ -63247,6 +63562,9 @@ OUI:945103* + OUI:9451BF* + ID_OUI_FROM_DATABASE=Hyundai ESG + ++OUI:945493* ++ ID_OUI_FROM_DATABASE=Rigado, LLC ++ + OUI:94592D* + ID_OUI_FROM_DATABASE=EKE Building Technology Systems Ltd + +@@ -63256,6 +63574,9 @@ OUI:945B7E* + OUI:946124* + ID_OUI_FROM_DATABASE=Pason Systems + ++OUI:946269* ++ ID_OUI_FROM_DATABASE=Arris Group, Inc. ++ + OUI:9463D1* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -63622,6 +63943,9 @@ OUI:988EDD* + OUI:989080* + ID_OUI_FROM_DATABASE=Linkpower Network System Inc Ltd. + ++OUI:989096* ++ ID_OUI_FROM_DATABASE=Dell Inc ++ + OUI:9893CC* + ID_OUI_FROM_DATABASE=LG Electronics Inc. + +@@ -63781,6 +64105,9 @@ OUI:9C3178* + OUI:9C31B6* + ID_OUI_FROM_DATABASE=Kulite Semiconductor Products Inc + ++OUI:9C3583* ++ ID_OUI_FROM_DATABASE=Nipro Diagnostics, Inc ++ + OUI:9C3AAF* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -64234,6 +64561,9 @@ OUI:A08C9B* + OUI:A090DE* + ID_OUI_FROM_DATABASE=VEEDIMS,LLC + ++OUI:A09347* ++ ID_OUI_FROM_DATABASE=GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP.,LTD. ++ + OUI:A09805* + ID_OUI_FROM_DATABASE=OpenVox Communication Co Ltd + +@@ -64336,6 +64666,9 @@ OUI:A0E534* + OUI:A0E5E9* + ID_OUI_FROM_DATABASE=enimai Inc + ++OUI:A0E6F8* ++ ID_OUI_FROM_DATABASE=Texas Instruments Inc ++ + OUI:A0E9DB* + ID_OUI_FROM_DATABASE=Ningbo FreeWings Technologies Co.,Ltd + +@@ -64498,6 +64831,9 @@ OUI:A46CC1* + OUI:A46E79* + ID_OUI_FROM_DATABASE=DFT System Co.Ltd + ++OUI:A470D6* ++ ID_OUI_FROM_DATABASE=Motorola Mobility LLC ++ + OUI:A47733* + ID_OUI_FROM_DATABASE=Google + +@@ -64643,7 +64979,7 @@ OUI:A4D3B5* + ID_OUI_FROM_DATABASE=GLITEL Stropkov, s.r.o. + + OUI:A4D856* +- ID_OUI_FROM_DATABASE=Qualcomm Labs Inc. ++ ID_OUI_FROM_DATABASE=Gimbal, Inc + + OUI:A4DA3F* + ID_OUI_FROM_DATABASE=Bionics Corp. +@@ -64732,6 +65068,9 @@ OUI:A81758* + OUI:A81B18* + ID_OUI_FROM_DATABASE=XTS CORP + ++OUI:A81B5D* ++ ID_OUI_FROM_DATABASE=Foxtel Management Pty Ltd ++ + OUI:A81FAF* + ID_OUI_FROM_DATABASE=KRYPTON POLSKA + +@@ -64984,6 +65323,9 @@ OUI:AC0A61* + OUI:AC0DFE* + ID_OUI_FROM_DATABASE=Ekon GmbH - myGEKKO + ++OUI:AC11D3* ++ ID_OUI_FROM_DATABASE=Suzhou HOTEK Video Technology Co. Ltd ++ + OUI:AC1461* + ID_OUI_FROM_DATABASE=ATAW Co., Ltd. + +@@ -65023,6 +65365,9 @@ OUI:AC34CB* + OUI:AC3613* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:AC3870* ++ ID_OUI_FROM_DATABASE=Lenovo Mobile Communication Technology Ltd. ++ + OUI:AC3C0B* + ID_OUI_FROM_DATABASE=Apple + +@@ -65191,6 +65536,9 @@ OUI:ACAB8D* + OUI:ACB313* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + ++OUI:ACB74F* ++ ID_OUI_FROM_DATABASE=METEL s.r.o. ++ + OUI:ACB859* + ID_OUI_FROM_DATABASE=Uniband Electronic Corp, + +@@ -65356,6 +65704,9 @@ OUI:B03850* + OUI:B0435D* + ID_OUI_FROM_DATABASE=NuLEDs, Inc. + ++OUI:B04515* ++ ID_OUI_FROM_DATABASE=mira fitness,LLC. ++ + OUI:B04545* + ID_OUI_FROM_DATABASE=YACOUB Automation GmbH + +@@ -65635,6 +65986,9 @@ OUI:B41489* + OUI:B41513* + ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD + ++OUI:B41780* ++ ID_OUI_FROM_DATABASE=DTI Group Ltd ++ + OUI:B418D1* + ID_OUI_FROM_DATABASE=Apple + +@@ -65746,6 +66100,12 @@ OUI:B4749F* + OUI:B4750E* + ID_OUI_FROM_DATABASE=Belkin International Inc. + ++OUI:B479A7* ++ ID_OUI_FROM_DATABASE=Samsung Electro Mechanics co., LTD. ++ ++OUI:B47C29* ++ ID_OUI_FROM_DATABASE=Shenzhen Guzidi Technology Co.,Ltd ++ + OUI:B47F5E* + ID_OUI_FROM_DATABASE=Foresight Manufacture (S) Pte Ltd + +@@ -65923,6 +66283,9 @@ OUI:B81619* + OUI:B817C2* + ID_OUI_FROM_DATABASE=Apple + ++OUI:B8186F* ++ ID_OUI_FROM_DATABASE=ORIENTAL MOTOR CO., LTD. ++ + OUI:B81999* + ID_OUI_FROM_DATABASE=Nesys + +@@ -65989,6 +66352,9 @@ OUI:B843E4* + OUI:B847C6* + ID_OUI_FROM_DATABASE=SanJet Technology Corp. + ++OUI:B84FD5* ++ ID_OUI_FROM_DATABASE=Microsoft Corporation ++ + OUI:B85510* + ID_OUI_FROM_DATABASE=Zioncom Electronics (Shenzhen) Ltd. + +@@ -66109,6 +66475,9 @@ OUI:B89AED* + OUI:B89BC9* + ID_OUI_FROM_DATABASE=SMC Networks Inc + ++OUI:B89BE4* ++ ID_OUI_FROM_DATABASE=ABB Power Systems Power Generation ++ + OUI:B8A386* + ID_OUI_FROM_DATABASE=D-Link International + +@@ -66151,6 +66520,9 @@ OUI:B8BA72* + OUI:B8BB6D* + ID_OUI_FROM_DATABASE=ENERES Co.,Ltd. + ++OUI:B8BD79* ++ ID_OUI_FROM_DATABASE=TrendPoint Systems ++ + OUI:B8BEBF* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + +@@ -66226,6 +66598,9 @@ OUI:B8EE65* + OUI:B8EE79* + ID_OUI_FROM_DATABASE=YWire Technologies, Inc. + ++OUI:B8F317* ++ ID_OUI_FROM_DATABASE=iSun Smasher Communications Private Limited ++ + OUI:B8F4D0* + ID_OUI_FROM_DATABASE=Herrmann Ultraschalltechnik GmbH & Co. Kg + +@@ -66373,6 +66748,9 @@ OUI:BC5FF4* + OUI:BC629F* + ID_OUI_FROM_DATABASE=Telenet Systems P. Ltd. + ++OUI:BC6641* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ + OUI:BC671C* + ID_OUI_FROM_DATABASE=Cisco + +@@ -66838,6 +67216,9 @@ OUI:C4017C* + OUI:C401B1* + ID_OUI_FROM_DATABASE=SeekTech INC + ++OUI:C401CE* ++ ID_OUI_FROM_DATABASE=PRESITION (2000) CO., LTD. ++ + OUI:C40415* + ID_OUI_FROM_DATABASE=NETGEAR INC., + +@@ -66970,6 +67351,12 @@ OUI:C455C2* + OUI:C45600* + ID_OUI_FROM_DATABASE=Galleon Embedded Computing + ++OUI:C456FE* ++ ID_OUI_FROM_DATABASE=Lava International Ltd. ++ ++OUI:C4576E* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,LTD ++ + OUI:C458C2* + ID_OUI_FROM_DATABASE=Shenzhen TATFOOK Technology Co., Ltd. + +@@ -67081,6 +67468,9 @@ OUI:C4B512* + OUI:C4BA99* + ID_OUI_FROM_DATABASE=I+ME Actia Informatik und Mikro-Elektronik GmbH + ++OUI:C4BD6A* ++ ID_OUI_FROM_DATABASE=SKF GmbH ++ + OUI:C4C0AE* + ID_OUI_FROM_DATABASE=MIDORI ELECTRONIC CO., LTD. + +@@ -67429,6 +67819,9 @@ OUI:C8E1A7* + OUI:C8E42F* + ID_OUI_FROM_DATABASE=Technical Research Design and Development + ++OUI:C8E7D8* ++ ID_OUI_FROM_DATABASE=SHENZHEN MERCURY COMMUNICATION TECHNOLOGIES CO.,LTD. ++ + OUI:C8EE08* + ID_OUI_FROM_DATABASE=TANGTOP TECHNOLOGY CO.,LTD + +@@ -67480,6 +67873,9 @@ OUI:C8FF77* + OUI:CC0080* + ID_OUI_FROM_DATABASE=BETTINI SRL + ++OUI:CC03FA* ++ ID_OUI_FROM_DATABASE=Technicolor CH USA ++ + OUI:CC047C* + ID_OUI_FROM_DATABASE=G-WAY Microwave + +@@ -67507,6 +67903,9 @@ OUI:CC0CDA* + OUI:CC0DEC* + ID_OUI_FROM_DATABASE=Cisco SPVTG + ++OUI:CC10A3* ++ ID_OUI_FROM_DATABASE=Beijing Nan Bao Technology Co., Ltd. ++ + OUI:CC14A6* + ID_OUI_FROM_DATABASE=Yichun MyEnergy Domain, Inc + +@@ -67531,6 +67930,9 @@ OUI:CC2A80* + OUI:CC2D8C* + ID_OUI_FROM_DATABASE=LG ELECTRONICS INC + ++OUI:CC3080* ++ ID_OUI_FROM_DATABASE=VAIO Corporation ++ + OUI:CC33BB* + ID_OUI_FROM_DATABASE=SAGEMCOM SAS + +@@ -67756,9 +68158,15 @@ OUI:CCD539* + OUI:CCD811* + ID_OUI_FROM_DATABASE=Aiconn Technology Corporation + ++OUI:CCD8C1* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:CCD9E9* + ID_OUI_FROM_DATABASE=SCR Engineers Ltd. + ++OUI:CCE17F* ++ ID_OUI_FROM_DATABASE=juniper networks ++ + OUI:CCE1D5* + ID_OUI_FROM_DATABASE=Buffalo Inc. + +@@ -67786,6 +68194,9 @@ OUI:CCF3A5* + OUI:CCF407* + ID_OUI_FROM_DATABASE=EUKREA ELECTROMATIQUE SARL + ++OUI:CCF538* ++ ID_OUI_FROM_DATABASE=3isysnetworks ++ + OUI:CCF67A* + ID_OUI_FROM_DATABASE=Ayecka Communication Systems LTD + +@@ -67825,6 +68236,9 @@ OUI:D00AAB* + OUI:D00EA4* + ID_OUI_FROM_DATABASE=Porsche Cars North America + ++OUI:D01242* ++ ID_OUI_FROM_DATABASE=BIOS Corporation ++ + OUI:D0131E* + ID_OUI_FROM_DATABASE=Sunrex Technology Corp + +@@ -67915,6 +68329,9 @@ OUI:D05FB8* + OUI:D05FCE* + ID_OUI_FROM_DATABASE=Hitachi Data Systems + ++OUI:D062A0* ++ ID_OUI_FROM_DATABASE=China Essence Technology (Zhumadian) Co., Ltd. ++ + OUI:D0634D* + ID_OUI_FROM_DATABASE=Meiko Maschinenbau GmbH & Co. KG + +@@ -67963,6 +68380,9 @@ OUI:D07E28* + OUI:D07E35* + ID_OUI_FROM_DATABASE=Intel Corporate + ++OUI:D084B0* ++ ID_OUI_FROM_DATABASE=Sagemcom ++ + OUI:D08999* + ID_OUI_FROM_DATABASE=APCON, Inc. + +@@ -68110,6 +68530,9 @@ OUI:D0F27F* + OUI:D0F73B* + ID_OUI_FROM_DATABASE=Helmut Mauell GmbH + ++OUI:D0FA1D* ++ ID_OUI_FROM_DATABASE=Qihoo 360 Technology Co.,Ltd ++ + OUI:D0FF50* + ID_OUI_FROM_DATABASE=Texas Instruments, Inc + +@@ -68191,6 +68614,9 @@ OUI:D42F23* + OUI:D4319D* + ID_OUI_FROM_DATABASE=Sinwatec + ++OUI:D437D7* ++ ID_OUI_FROM_DATABASE=zte corporation ++ + OUI:D43A65* + ID_OUI_FROM_DATABASE=IGRS Engineering Lab Ltd. + +@@ -68278,6 +68704,9 @@ OUI:D46F42* + OUI:D479C3* + ID_OUI_FROM_DATABASE=Cameronet GmbH & Co. KG + ++OUI:D47B35* ++ ID_OUI_FROM_DATABASE=NEO Monitors AS ++ + OUI:D47B75* + ID_OUI_FROM_DATABASE=HARTING Electronics GmbH + +@@ -68299,6 +68728,9 @@ OUI:D48890* + OUI:D48CB5* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + ++OUI:D48F33* ++ ID_OUI_FROM_DATABASE=Microsoft Corporation ++ + OUI:D48FAA* + ID_OUI_FROM_DATABASE=Sogecam Industrial, S.A. + +@@ -68440,6 +68872,9 @@ OUI:D4EA0E* + OUI:D4EC0C* + ID_OUI_FROM_DATABASE=Harley-Davidson Motor Company + ++OUI:D4EC86* ++ ID_OUI_FROM_DATABASE=LinkedHope Intelligent Technologies Co., Ltd ++ + OUI:D4EE07* + ID_OUI_FROM_DATABASE=HIWIFI Co., Ltd. + +@@ -68551,6 +68986,9 @@ OUI:D8490B* + OUI:D8492F* + ID_OUI_FROM_DATABASE=CANON INC. + ++OUI:D84A87* ++ ID_OUI_FROM_DATABASE=OI ELECTRIC CO.,LTD ++ + OUI:D84B2A* + ID_OUI_FROM_DATABASE=Cognitas Technologies, Inc. + +@@ -68860,6 +69298,9 @@ OUI:DC37D2* + OUI:DC38E1* + ID_OUI_FROM_DATABASE=Juniper networks + ++OUI:DC3979* ++ ID_OUI_FROM_DATABASE=Skyport Systems ++ + OUI:DC3A5E* + ID_OUI_FROM_DATABASE=Roku, Inc + +@@ -69199,6 +69640,9 @@ OUI:E09467* + OUI:E09579* + ID_OUI_FROM_DATABASE=ORTHOsoft inc, d/b/a Zimmer CAS + ++OUI:E09796* ++ ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD ++ + OUI:E097F2* + ID_OUI_FROM_DATABASE=Atomax Inc. + +@@ -69226,6 +69670,9 @@ OUI:E0AAB0* + OUI:E0ABFE* + ID_OUI_FROM_DATABASE=Orb Networks, Inc. + ++OUI:E0ACF1* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:E0AE5E* + ID_OUI_FROM_DATABASE=ALPS Co,. Ltd. + +@@ -69523,6 +69970,9 @@ OUI:E492E7* + OUI:E492FB* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:E4956E* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ + OUI:E496AE* + ID_OUI_FROM_DATABASE=ALTOGRAPHICS Inc. + +@@ -69553,6 +70003,9 @@ OUI:E4B021* + OUI:E4C146* + ID_OUI_FROM_DATABASE=Objetivos y Servicios de Valor A + ++OUI:E4C62B* ++ ID_OUI_FROM_DATABASE=Airware ++ + OUI:E4C63D* + ID_OUI_FROM_DATABASE=Apple, Inc. + +@@ -69910,6 +70363,9 @@ OUI:E8EA6A* + OUI:E8EADA* + ID_OUI_FROM_DATABASE=Denkovi Assembly Electroncs LTD + ++OUI:E8ED05* ++ ID_OUI_FROM_DATABASE=ARRIS Group, Inc. ++ + OUI:E8EDF3* + ID_OUI_FROM_DATABASE=Cisco + +@@ -69931,6 +70387,9 @@ OUI:E8FC60* + OUI:E8FCAF* + ID_OUI_FROM_DATABASE=NETGEAR INC., + ++OUI:EC0EC4* ++ ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. ++ + OUI:EC0ED6* + ID_OUI_FROM_DATABASE=ITECH INSTRUMENTS SAS + +@@ -69949,6 +70408,9 @@ OUI:EC1766* + OUI:EC1A59* + ID_OUI_FROM_DATABASE=Belkin International Inc. + ++OUI:EC1D7F* ++ ID_OUI_FROM_DATABASE=zte corporation ++ + OUI:EC219F* + ID_OUI_FROM_DATABASE=VidaBox LLC + +@@ -69982,6 +70444,9 @@ OUI:EC3586* + OUI:EC3BF0* + ID_OUI_FROM_DATABASE=NovelSat + ++OUI:EC3C5A* ++ ID_OUI_FROM_DATABASE=SHEN ZHEN HENG SHENG HUI DIGITAL TECHNOLOGY CO.,LTD ++ + OUI:EC3E09* + ID_OUI_FROM_DATABASE=PERFORMANCE DESIGNED PRODUCTS, LLC + +@@ -70522,6 +70987,9 @@ OUI:F4068D* + OUI:F406A5* + ID_OUI_FROM_DATABASE=Hangzhou Bianfeng Networking Technology Co., Ltd. + ++OUI:F409D8* ++ ID_OUI_FROM_DATABASE=Samsung Electro Mechanics co., LTD. ++ + OUI:F40B93* + ID_OUI_FROM_DATABASE=Research In Motion + +@@ -70555,6 +71023,9 @@ OUI:F42012* + OUI:F42833* + ID_OUI_FROM_DATABASE=MMPC Inc. + ++OUI:F42853* ++ ID_OUI_FROM_DATABASE=Zioncom Electronics (Shenzhen) Ltd. ++ + OUI:F42896* + ID_OUI_FROM_DATABASE=SPECTO PAINEIS ELETRONICOS LTDA + +@@ -70780,6 +71251,9 @@ OUI:F4EC38* + OUI:F4F15A* + ID_OUI_FROM_DATABASE=Apple + ++OUI:F4F1E1* ++ ID_OUI_FROM_DATABASE=Motorola Mobility LLC ++ + OUI:F4F26D* + ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. + +@@ -70855,6 +71329,9 @@ OUI:F81EDF* + OUI:F82285* + ID_OUI_FROM_DATABASE=Cypress Technology CO., LTD. + ++OUI:F82441* ++ ID_OUI_FROM_DATABASE=Yeelink ++ + OUI:F82793* + ID_OUI_FROM_DATABASE=Apple, Inc + +@@ -71119,6 +71596,9 @@ OUI:F8E4FB* + OUI:F8E7B5* + ID_OUI_FROM_DATABASE=µTech Tecnologia LTDA + ++OUI:F8E811* ++ ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD ++ + OUI:F8E968* + ID_OUI_FROM_DATABASE=Egker Kft. + +@@ -71221,6 +71701,9 @@ OUI:FC1BFF* + OUI:FC1D59* + ID_OUI_FROM_DATABASE=I Smart Cities HK Ltd + ++OUI:FC1D84* ++ ID_OUI_FROM_DATABASE=Autobase ++ + OUI:FC1E16* + ID_OUI_FROM_DATABASE=IPEVO corp + +@@ -71359,6 +71842,9 @@ OUI:FC9947* + OUI:FC9FAE* + ID_OUI_FROM_DATABASE=Fidus Systems Inc + ++OUI:FC9FE1* ++ ID_OUI_FROM_DATABASE=CONWIN.Tech. Ltd ++ + OUI:FCA13E* + ID_OUI_FROM_DATABASE=Samsung Electronics + +@@ -71419,6 +71905,9 @@ OUI:FCD817* + OUI:FCDB96* + ID_OUI_FROM_DATABASE=ENERVALLEY CO., LTD + ++OUI:FCDBB3* ++ ID_OUI_FROM_DATABASE=Murata Manufacturing Co., Ltd. ++ + OUI:FCDD55* + ID_OUI_FROM_DATABASE=Shenzhen WeWins wireless Co.,Ltd + +diff --git hwdb/20-pci-classes.hwdb hwdb/20-pci-classes.hwdb +index fd1d5d0..5702c40 100644 +--- hwdb/20-pci-classes.hwdb ++++ hwdb/20-pci-classes.hwdb +@@ -47,12 +47,24 @@ pci:v*d*sv*sd*bc01sc06i00* + pci:v*d*sv*sd*bc01sc06i01* + ID_PCI_INTERFACE_FROM_DATABASE=AHCI 1.0 + ++pci:v*d*sv*sd*bc01sc06i02* ++ ID_PCI_INTERFACE_FROM_DATABASE=Serial Storage Bus ++ + pci:v*d*sv*sd*bc01sc07* + ID_PCI_SUBCLASS_FROM_DATABASE=Serial Attached SCSI controller + ++pci:v*d*sv*sd*bc01sc07i01* ++ ID_PCI_INTERFACE_FROM_DATABASE=Serial Storage Bus ++ + pci:v*d*sv*sd*bc01sc08* + ID_PCI_SUBCLASS_FROM_DATABASE=Non-Volatile memory controller + ++pci:v*d*sv*sd*bc01sc08i01* ++ ID_PCI_INTERFACE_FROM_DATABASE=NVMHCI ++ ++pci:v*d*sv*sd*bc01sc08i02* ++ ID_PCI_INTERFACE_FROM_DATABASE=NVM Express ++ + pci:v*d*sv*sd*bc01sc80* + ID_PCI_SUBCLASS_FROM_DATABASE=Mass storage controller + +@@ -80,6 +92,9 @@ pci:v*d*sv*sd*bc02sc05* + pci:v*d*sv*sd*bc02sc06* + ID_PCI_SUBCLASS_FROM_DATABASE=PICMG controller + ++pci:v*d*sv*sd*bc02sc07* ++ ID_PCI_SUBCLASS_FROM_DATABASE=Infiniband controller ++ + pci:v*d*sv*sd*bc02sc80* + ID_PCI_SUBCLASS_FROM_DATABASE=Network controller + +@@ -311,6 +326,9 @@ pci:v*d*sv*sd*bc08sc02i01* + pci:v*d*sv*sd*bc08sc02i02* + ID_PCI_INTERFACE_FROM_DATABASE=EISA Timers + ++pci:v*d*sv*sd*bc08sc02i03* ++ ID_PCI_INTERFACE_FROM_DATABASE=HPET ++ + pci:v*d*sv*sd*bc08sc03* + ID_PCI_SUBCLASS_FROM_DATABASE=RTC + +@@ -527,5 +545,14 @@ pci:v*d*sv*sd*bc11sc20* + pci:v*d*sv*sd*bc11sc80* + ID_PCI_SUBCLASS_FROM_DATABASE=Signal processing controller + ++pci:v*d*sv*sd*bc12* ++ ID_PCI_CLASS_FROM_DATABASE=Processing accelerators ++ ++pci:v*d*sv*sd*bc12sc00* ++ ID_PCI_SUBCLASS_FROM_DATABASE=Processing accelerators ++ ++pci:v*d*sv*sd*bc13* ++ ID_PCI_CLASS_FROM_DATABASE=Non-Essential Instrumentation ++ + pci:v*d*sv*sd*bcFF* + ID_PCI_CLASS_FROM_DATABASE=Unassigned class +diff --git hwdb/20-pci-vendor-model.hwdb hwdb/20-pci-vendor-model.hwdb +index 62941b9..77c727d 100644 +--- hwdb/20-pci-vendor-model.hwdb ++++ hwdb/20-pci-vendor-model.hwdb +@@ -959,6 +959,15 @@ pci:v00001000d0000005Dsv00001028sd00001F49* + pci:v00001000d0000005Dsv00001028sd00001F4A* + ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (PERC H730 Mini (for blades)) + ++pci:v00001000d0000005Dsv00001028sd00001F4D* ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (PERC FS33xS) ++ ++pci:v00001000d0000005Dsv00001028sd00001F4F* ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (PERC H730P Slim) ++ ++pci:v00001000d0000005Dsv00001028sd00001F54* ++ ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (PERC FS33xD) ++ + pci:v00001000d0000005Dsv000017AAsd00001052* + ID_MODEL_FROM_DATABASE=MegaRAID SAS-3 3108 [Invader] (ThinkServer RAID 720i) + +@@ -1677,7 +1686,7 @@ pci:v00001002d00001308* + ID_MODEL_FROM_DATABASE=Kaveri HDMI/DP Audio Controller + + pci:v00001002d00001309* +- ID_MODEL_FROM_DATABASE=Kaveri [Radeon R7 Graphics] ++ ID_MODEL_FROM_DATABASE=Kaveri [Radeon R6/R7 Graphics] + + pci:v00001002d0000130A* + ID_MODEL_FROM_DATABASE=Kaveri [Radeon R6 Graphics] +@@ -3003,7 +3012,7 @@ pci:v00001002d00004C57sv00001014sd00000517* + ID_MODEL_FROM_DATABASE=RV200/M7 [Mobility Radeon 7500] (ThinkPad T30) + + pci:v00001002d00004C57sv00001014sd00000530* +- ID_MODEL_FROM_DATABASE=RV200/M7 [Mobility Radeon 7500] (ThinkPad T42 2373-4WU) ++ ID_MODEL_FROM_DATABASE=RV200/M7 [Mobility Radeon 7500] (ThinkPad T4x Series) + + pci:v00001002d00004C57sv00001028sd000000E6* + ID_MODEL_FROM_DATABASE=RV200/M7 [Mobility Radeon 7500] (Radeon Mobility M7 LW (Dell Inspiron 8100)) +@@ -4362,7 +4371,7 @@ pci:v00001002d00006667* + ID_MODEL_FROM_DATABASE=Jet ULT [Radeon R5 M230] + + pci:v00001002d0000666F* +- ID_MODEL_FROM_DATABASE=Sun LE [Radeon HD 8550M] ++ ID_MODEL_FROM_DATABASE=Sun LE [Radeon HD 8550M / R5 M230] + + pci:v00001002d00006670* + ID_MODEL_FROM_DATABASE=Hainan +@@ -5937,10 +5946,10 @@ pci:v00001002d0000679F* + ID_MODEL_FROM_DATABASE=Tahiti + + pci:v00001002d000067A0* +- ID_MODEL_FROM_DATABASE=Hawaii XT GL ++ ID_MODEL_FROM_DATABASE=Hawaii XT GL [FirePro W9100] + + pci:v00001002d000067A1* +- ID_MODEL_FROM_DATABASE=Hawaii GL ++ ID_MODEL_FROM_DATABASE=Hawaii PRO GL [FirePro W8100] + + pci:v00001002d000067A2* + ID_MODEL_FROM_DATABASE=Hawaii GL +@@ -5961,7 +5970,7 @@ pci:v00001002d000067B1* + ID_MODEL_FROM_DATABASE=Hawaii PRO [Radeon R9 290] + + pci:v00001002d000067B9* +- ID_MODEL_FROM_DATABASE=Vesuvius [Radeon R9 295 X2] ++ ID_MODEL_FROM_DATABASE=Vesuvius [Radeon R9 295X2] + + pci:v00001002d000067BE* + ID_MODEL_FROM_DATABASE=Hawaii LE +@@ -7860,7 +7869,13 @@ pci:v00001002d000068FE* + ID_MODEL_FROM_DATABASE=Cedar LE + + pci:v00001002d00006900* +- ID_MODEL_FROM_DATABASE=Topaz XT [Radeon R7 M260] ++ ID_MODEL_FROM_DATABASE=Topaz XT [Radeon R7 M260/M265] ++ ++pci:v00001002d00006900sv00001028sd00000640* ++ ID_MODEL_FROM_DATABASE=Topaz XT [Radeon R7 M260/M265] (Radeon R7 M265) ++ ++pci:v00001002d00006900sv00001179sd0000F934* ++ ID_MODEL_FROM_DATABASE=Topaz XT [Radeon R7 M260/M265] (Radeon R7 M260) + + pci:v00001002d00006901* + ID_MODEL_FROM_DATABASE=Topaz PRO [Radeon R5 M255] +@@ -8027,6 +8042,9 @@ pci:v00001002d0000718A* + pci:v00001002d0000718B* + ID_MODEL_FROM_DATABASE=RV516/M62 [Mobility Radeon X1350] + ++pci:v00001002d0000718Bsv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=RV516/M62 [Mobility Radeon X1350] (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00001002d0000718C* + ID_MODEL_FROM_DATABASE=RV516/M62-CSP64 [Mobility Radeon X1350] + +@@ -8969,26 +8987,29 @@ pci:v00001002d0000983E* + pci:v00001002d0000983F* + ID_MODEL_FROM_DATABASE=Kabini + ++pci:v00001002d00009840* ++ ID_MODEL_FROM_DATABASE=Kabini HDMI/DP Audio ++ + pci:v00001002d00009850* +- ID_MODEL_FROM_DATABASE=Mullins [Radeon APU A6-6200 with R3 Graphics] ++ ID_MODEL_FROM_DATABASE=Mullins [Radeon R3 Graphics] + + pci:v00001002d00009851* +- ID_MODEL_FROM_DATABASE=Mullins [Radeon APU A4-6000 with R2 Graphics] ++ ID_MODEL_FROM_DATABASE=Mullins [Radeon R4/R5 Graphics] + + pci:v00001002d00009852* +- ID_MODEL_FROM_DATABASE=Mullins [Radeon APU A4-6000 with R2 Graphics] ++ ID_MODEL_FROM_DATABASE=Mullins [Radeon R2 Graphics] + + pci:v00001002d00009853* +- ID_MODEL_FROM_DATABASE=Mullins [Radeon APU E2-4000 with R2 Graphics] ++ ID_MODEL_FROM_DATABASE=Mullins [Radeon R2 Graphics] + + pci:v00001002d00009854* +- ID_MODEL_FROM_DATABASE=Mullins [Radeon APU E2-3700 with R2 Graphics] ++ ID_MODEL_FROM_DATABASE=Mullins [Radeon R3 Graphics] + + pci:v00001002d00009855* +- ID_MODEL_FROM_DATABASE=Mullins [Radeon APU XX-2450M with R3 Graphics] ++ ID_MODEL_FROM_DATABASE=Mullins [Radeon R6 Graphics] + + pci:v00001002d00009856* +- ID_MODEL_FROM_DATABASE=Mullins [Radeon APU XX-2200M with R2 Graphics] ++ ID_MODEL_FROM_DATABASE=Mullins [Radeon R2 Graphics] + + pci:v00001002d00009857* + ID_MODEL_FROM_DATABASE=Mullins [Radeon APU XX-2200M with R2 Graphics] +@@ -12347,6 +12368,9 @@ pci:v0000102Bd00000532sv00001028sd0000029C* + pci:v0000102Bd00000532sv00001028sd000002A4* + ID_MODEL_FROM_DATABASE=MGA G200eW WPCM450 (PowerEdge T310 MGA G200eW WPCM450) + ++pci:v0000102Bd00000532sv000015D9sd00000624* ++ ID_MODEL_FROM_DATABASE=MGA G200eW WPCM450 (X9SCM-F Motherboard) ++ + pci:v0000102Bd00000532sv000015D9sd0000A811* + ID_MODEL_FROM_DATABASE=MGA G200eW WPCM450 (H8DGU) + +@@ -13169,6 +13193,9 @@ pci:v00001039d00000016* + pci:v00001039d00000018* + ID_MODEL_FROM_DATABASE=SiS85C503/5513 (LPC Bridge) + ++pci:v00001039d00000163* ++ ID_MODEL_FROM_DATABASE=163 802.11b/g Wireless LAN Adapter ++ + pci:v00001039d00000180* + ID_MODEL_FROM_DATABASE=RAID bus controller 180 SATA/PATA [SiS] + +@@ -14141,6 +14168,9 @@ pci:v00001042d00003020* + pci:v00001043* + ID_VENDOR_FROM_DATABASE=ASUSTeK Computer Inc. + ++pci:v00001043d00000464* ++ ID_MODEL_FROM_DATABASE=Radeon R9 270x GPU ++ + pci:v00001043d00000675* + ID_MODEL_FROM_DATABASE=ISDNLink P-IN100-ST-D + +@@ -17978,6 +18008,9 @@ pci:v00001095d00003512sv00001095sd00006512* + pci:v00001095d00003531* + ID_MODEL_FROM_DATABASE=SiI 3531 [SATALink/SATARaid] Serial ATA Controller + ++pci:v00001095d00003531sv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=SiI 3531 [SATALink/SATARaid] Serial ATA Controller (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00001096* + ID_VENDOR_FROM_DATABASE=Alacron + +@@ -26261,6 +26294,9 @@ pci:v000010DEd00000F00* + pci:v000010DEd00000F01* + ID_MODEL_FROM_DATABASE=GF108 [GeForce GT 620] + ++pci:v000010DEd00000F02* ++ ID_MODEL_FROM_DATABASE=GF108 [GeForce GT 730] ++ + pci:v000010DEd00000FC0* + ID_MODEL_FROM_DATABASE=GK107 [GeForce GT 640 OEM] + +@@ -26276,6 +26312,9 @@ pci:v000010DEd00000FC6* + pci:v000010DEd00000FC6sv00001043sd00008428* + ID_MODEL_FROM_DATABASE=GK107 [GeForce GTX 650] (GTX650-DC-1GD5) + ++pci:v000010DEd00000FC8* ++ ID_MODEL_FROM_DATABASE=GK107 [GeForce GT 740] ++ + pci:v000010DEd00000FCD* + ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 755M] + +@@ -26420,6 +26459,9 @@ pci:v000010DEd00000FFE* + pci:v000010DEd00000FFF* + ID_MODEL_FROM_DATABASE=GK107GL [Quadro 410] + ++pci:v000010DEd00001001* ++ ID_MODEL_FROM_DATABASE=GK110B [GeForce GTX TITAN Z] ++ + pci:v000010DEd00001003* + ID_MODEL_FROM_DATABASE=GK110 [GeForce GTX Titan LE] + +@@ -26828,9 +26870,57 @@ pci:v000010DEd00001140sv00001025sd00000830* + pci:v000010DEd00001140sv00001025sd00000837* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + ++pci:v000010DEd00001140sv00001025sd0000083E* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ + pci:v000010DEd00001140sv00001025sd00000841* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + ++pci:v000010DEd00001140sv00001025sd00000854* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001025sd00000855* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001025sd00000856* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001025sd00000857* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001025sd00000858* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001025sd00000868* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001025sd00000869* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 810M) ++ ++pci:v000010DEd00001140sv00001025sd00000873* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001025sd00000878* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001025sd0000087B* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001025sd0000087C* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 810M) ++ ++pci:v000010DEd00001140sv00001025sd00000881* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001025sd0000088A* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001025sd0000090F* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001025sd00000921* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ + pci:v000010DEd00001140sv00001028sd0000054D* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + +@@ -26966,6 +27056,18 @@ pci:v000010DEd00001140sv00001043sd000016DD* + pci:v000010DEd00001140sv00001043sd0000170D* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + ++pci:v000010DEd00001140sv00001043sd0000176D* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001043sd0000178D* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001043sd0000179D* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001043sd000017DD* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ + pci:v000010DEd00001140sv00001043sd00002132* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 620M) + +@@ -27713,6 +27815,9 @@ pci:v000010DEd00001284* + pci:v000010DEd00001286* + ID_MODEL_FROM_DATABASE=GK208 [GeForce GT 720] + ++pci:v000010DEd00001287* ++ ID_MODEL_FROM_DATABASE=GK208 [GeForce GT 730] ++ + pci:v000010DEd00001290* + ID_MODEL_FROM_DATABASE=GK208M [GeForce GT 730M] + +@@ -27749,6 +27854,21 @@ pci:v000010DEd00001294* + pci:v000010DEd00001295* + ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] + ++pci:v000010DEd00001295sv0000103Csd00002B0D* ++ ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] (GeForce GT 710A) ++ ++pci:v000010DEd00001295sv0000103Csd00002B0F* ++ ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] (GeForce GT 710A) ++ ++pci:v000010DEd00001295sv0000103Csd00002B11* ++ ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] (GeForce GT 710A) ++ ++pci:v000010DEd00001295sv0000103Csd00002B21* ++ ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] (GeForce GT 810A) ++ ++pci:v000010DEd00001295sv0000103Csd00002B22* ++ ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] (GeForce GT 810A) ++ + pci:v000010DEd00001296* + ID_MODEL_FROM_DATABASE=GK208M [GeForce 825M] + +@@ -28302,7 +28422,7 @@ pci:v000010ECd00008136* + ID_MODEL_FROM_DATABASE=RTL8101E/RTL8102E PCI Express Fast Ethernet controller + + pci:v000010ECd00008136sv0000103Csd00002AB1* +- ID_MODEL_FROM_DATABASE=RTL8101E/RTL8102E PCI Express Fast Ethernet controller (Pavillion p6774) ++ ID_MODEL_FROM_DATABASE=RTL8101E/RTL8102E PCI Express Fast Ethernet controller (Pavilion p6774) + + pci:v000010ECd00008136sv0000103Csd000030CC* + ID_MODEL_FROM_DATABASE=RTL8101E/RTL8102E PCI Express Fast Ethernet controller (Pavilion dv6700) +@@ -28310,6 +28430,9 @@ pci:v000010ECd00008136sv0000103Csd000030CC* + pci:v000010ECd00008136sv00001179sd0000FF64* + ID_MODEL_FROM_DATABASE=RTL8101E/RTL8102E PCI Express Fast Ethernet controller (RTL8102E PCI-E Fast Ethernet NIC) + ++pci:v000010ECd00008136sv000017C0sd00001053* ++ ID_MODEL_FROM_DATABASE=RTL8101E/RTL8102E PCI Express Fast Ethernet controller (AzureWave AW-NE766 802.11B/G/N Mini PCIe Card Model RT2700E) ++ + pci:v000010ECd00008138* + ID_MODEL_FROM_DATABASE=RT8139 (B/C) Cardbus Fast Ethernet Adapter + +@@ -29036,6 +29159,9 @@ pci:v00001102d0000000B* + pci:v00001102d0000000Bsv00001102sd00000041* + ID_MODEL_FROM_DATABASE=EMU20k2 [X-Fi Titanium Series] (SB0880 [SoundBlaster X-Fi Titanium PCI-e]) + ++pci:v00001102d00000012* ++ ID_MODEL_FROM_DATABASE=SB Recon3D ++ + pci:v00001102d00004001* + ID_MODEL_FROM_DATABASE=SB Audigy FireWire Port + +@@ -30878,6 +31004,9 @@ pci:v00001106d0000E340* + pci:v00001106d0000E353* + ID_MODEL_FROM_DATABASE=VX800/VX820 PCI Express Root Port + ++pci:v00001106d0000E410* ++ ID_MODEL_FROM_DATABASE=VX900 PCI Express Physical Layer Electrical Sub-block ++ + pci:v00001106d0000F208* + ID_MODEL_FROM_DATABASE=PT890 PCI to PCI Bridge Controller + +@@ -35045,6 +35174,9 @@ pci:v000011ABd00004353sv0000104Dsd0000902D* + pci:v000011ABd00004354* + ID_MODEL_FROM_DATABASE=88E8040 PCI-E Fast Ethernet Controller + ++pci:v000011ABd00004354sv0000144Dsd0000C06A* ++ ID_MODEL_FROM_DATABASE=88E8040 PCI-E Fast Ethernet Controller (R730 Laptop) ++ + pci:v000011ABd00004354sv0000144Dsd0000C072* + ID_MODEL_FROM_DATABASE=88E8040 PCI-E Fast Ethernet Controller (Notebook N150P) + +@@ -36557,6 +36689,9 @@ pci:v00001217* + pci:v00001217d000000F7* + ID_MODEL_FROM_DATABASE=Firewire (IEEE 1394) + ++pci:v00001217d000000F7sv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=Firewire (IEEE 1394) (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00001217d000000F7sv00001179sd0000FF50* + ID_MODEL_FROM_DATABASE=Firewire (IEEE 1394) (Satellite P305D-S8995E) + +@@ -36635,12 +36770,18 @@ pci:v00001217d00007114* + pci:v00001217d00007120* + ID_MODEL_FROM_DATABASE=Integrated MMC/SD Controller + ++pci:v00001217d00007120sv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=Integrated MMC/SD Controller (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00001217d00007120sv00001179sd0000FF50* + ID_MODEL_FROM_DATABASE=Integrated MMC/SD Controller (Satellite P305D-S8995E) + + pci:v00001217d00007130* + ID_MODEL_FROM_DATABASE=Integrated MS/xD Controller + ++pci:v00001217d00007130sv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=Integrated MS/xD Controller (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00001217d00007130sv00001179sd0000FF50* + ID_MODEL_FROM_DATABASE=Integrated MS/xD Controller (Satellite P305D-S8995E) + +@@ -42276,7 +42417,7 @@ pci:v00001425d00004083* + ID_MODEL_FROM_DATABASE=T420X-4083 Unified Wire Ethernet Controller + + pci:v00001425d00004084* +- ID_MODEL_FROM_DATABASE=T420-4084 Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T440-4084 Unified Wire Ethernet Controller + + pci:v00001425d00004085* + ID_MODEL_FROM_DATABASE=T420-4085 SFP+ Unified Wire Ethernet Controller +@@ -42348,7 +42489,7 @@ pci:v00001425d00004483* + ID_MODEL_FROM_DATABASE=T420X-4083 Unified Wire Ethernet Controller + + pci:v00001425d00004484* +- ID_MODEL_FROM_DATABASE=T420-4084 Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T440-4084 Unified Wire Ethernet Controller + + pci:v00001425d00004485* + ID_MODEL_FROM_DATABASE=T420-4085 SFP+ Unified Wire Ethernet Controller +@@ -42420,7 +42561,7 @@ pci:v00001425d00004583* + ID_MODEL_FROM_DATABASE=T420X-4083 Unified Wire Storage Controller + + pci:v00001425d00004584* +- ID_MODEL_FROM_DATABASE=T420-4084 Unified Wire Storage Controller ++ ID_MODEL_FROM_DATABASE=T440-4084 Unified Wire Storage Controller + + pci:v00001425d00004585* + ID_MODEL_FROM_DATABASE=T420-4085 SFP+ Unified Wire Storage Controller +@@ -42492,7 +42633,7 @@ pci:v00001425d00004683* + ID_MODEL_FROM_DATABASE=T420X-4083 Unified Wire Storage Controller + + pci:v00001425d00004684* +- ID_MODEL_FROM_DATABASE=T420-4084 Unified Wire Storage Controller ++ ID_MODEL_FROM_DATABASE=T440-4084 Unified Wire Storage Controller + + pci:v00001425d00004685* + ID_MODEL_FROM_DATABASE=T420-4085 SFP+ Unified Wire Storage Controller +@@ -42564,7 +42705,7 @@ pci:v00001425d00004783* + ID_MODEL_FROM_DATABASE=T420X-4083 Unified Wire Ethernet Controller + + pci:v00001425d00004784* +- ID_MODEL_FROM_DATABASE=T420-4084 Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T440-4084 Unified Wire Ethernet Controller + + pci:v00001425d00004785* + ID_MODEL_FROM_DATABASE=T420-4085 SFP+ Unified Wire Ethernet Controller +@@ -42579,76 +42720,76 @@ pci:v00001425d00004788* + ID_MODEL_FROM_DATABASE=T440-4088 Unified Wire Ethernet Controller + + pci:v00001425d00004801* +- ID_MODEL_FROM_DATABASE=T420-CR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T420-CR Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004802* +- ID_MODEL_FROM_DATABASE=T422-CR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T422-CR Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004803* +- ID_MODEL_FROM_DATABASE=T440-CR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T440-CR Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004804* +- ID_MODEL_FROM_DATABASE=T420-BCH Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T420-BCH Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004805* +- ID_MODEL_FROM_DATABASE=T440-BCH Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T440-BCH Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004806* +- ID_MODEL_FROM_DATABASE=T440-CH Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T440-CH Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004807* +- ID_MODEL_FROM_DATABASE=T420-SO Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T420-SO Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004808* +- ID_MODEL_FROM_DATABASE=T420-CX Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T420-CX Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004809* +- ID_MODEL_FROM_DATABASE=T420-BT Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T420-BT Unified Wire Ethernet Controller [VF] + + pci:v00001425d0000480A* +- ID_MODEL_FROM_DATABASE=T404-BT Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T404-BT Unified Wire Ethernet Controller [VF] + + pci:v00001425d0000480B* +- ID_MODEL_FROM_DATABASE=B420-SR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=B420-SR Unified Wire Ethernet Controller [VF] + + pci:v00001425d0000480C* +- ID_MODEL_FROM_DATABASE=B404-BT Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=B404-BT Unified Wire Ethernet Controller [VF] + + pci:v00001425d0000480D* +- ID_MODEL_FROM_DATABASE=T480 Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T480 Unified Wire Ethernet Controller [VF] + + pci:v00001425d0000480E* +- ID_MODEL_FROM_DATABASE=T440-LP-CR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T440-LP-CR Unified Wire Ethernet Controller [VF] + + pci:v00001425d0000480F* +- ID_MODEL_FROM_DATABASE=T440 [Amsterdam] Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T440 [Amsterdam] Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004880* +- ID_MODEL_FROM_DATABASE=T480-4080 T480 Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T480-4080 T480 Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004881* +- ID_MODEL_FROM_DATABASE=T440F-4081 T440-FCoE Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T440F-4081 T440-FCoE Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004882* +- ID_MODEL_FROM_DATABASE=T420-4082 Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T420-4082 Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004883* +- ID_MODEL_FROM_DATABASE=T420X-4083 Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T420X-4083 Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004884* +- ID_MODEL_FROM_DATABASE=T420-4084 Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T440-4084 Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004885* +- ID_MODEL_FROM_DATABASE=T420-4085 SFP+ Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T420-4085 SFP+ Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004886* +- ID_MODEL_FROM_DATABASE=T440-4086 10Gbase-T Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T440-4086 10Gbase-T Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004887* +- ID_MODEL_FROM_DATABASE=T440T-4087 Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T440T-4087 Unified Wire Ethernet Controller [VF] + + pci:v00001425d00004888* +- ID_MODEL_FROM_DATABASE=T440-4088 Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T440-4088 Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005001* + ID_MODEL_FROM_DATABASE=T520-CR Unified Wire Ethernet Controller +@@ -43041,82 +43182,82 @@ pci:v00001425d00005785* + ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Ethernet Controller + + pci:v00001425d00005801* +- ID_MODEL_FROM_DATABASE=T520-CR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T520-CR Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005802* +- ID_MODEL_FROM_DATABASE=T522-CR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T522-CR Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005803* +- ID_MODEL_FROM_DATABASE=T540-CR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T540-CR Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005804* +- ID_MODEL_FROM_DATABASE=T520-BCH Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T520-BCH Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005805* +- ID_MODEL_FROM_DATABASE=T540-BCH Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T540-BCH Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005806* +- ID_MODEL_FROM_DATABASE=T540-CH Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T540-CH Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005807* +- ID_MODEL_FROM_DATABASE=T520-SO Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T520-SO Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005808* +- ID_MODEL_FROM_DATABASE=T520-CX Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T520-CX Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005809* +- ID_MODEL_FROM_DATABASE=T520-BT Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T520-BT Unified Wire Ethernet Controller [VF] + + pci:v00001425d0000580A* +- ID_MODEL_FROM_DATABASE=T504-BT Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T504-BT Unified Wire Ethernet Controller [VF] + + pci:v00001425d0000580B* +- ID_MODEL_FROM_DATABASE=B520-SR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=B520-SR Unified Wire Ethernet Controller [VF] + + pci:v00001425d0000580C* +- ID_MODEL_FROM_DATABASE=B504-BT Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=B504-BT Unified Wire Ethernet Controller [VF] + + pci:v00001425d0000580D* +- ID_MODEL_FROM_DATABASE=T580-CR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T580-CR Unified Wire Ethernet Controller [VF] + + pci:v00001425d0000580E* +- ID_MODEL_FROM_DATABASE=T540-LP-CR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T540-LP-CR Unified Wire Ethernet Controller [VF] + + pci:v00001425d0000580F* +- ID_MODEL_FROM_DATABASE=T540 [Amsterdam] Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T540 [Amsterdam] Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005810* +- ID_MODEL_FROM_DATABASE=T580-LP-CR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T580-LP-CR Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005811* +- ID_MODEL_FROM_DATABASE=T520-LL-CR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T520-LL-CR Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005812* +- ID_MODEL_FROM_DATABASE=T560-CR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T560-CR Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005813* +- ID_MODEL_FROM_DATABASE=T580-CR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T580-CR Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005814* +- ID_MODEL_FROM_DATABASE=T580-LP-SO-CR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T580-LP-SO-CR Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005815* +- ID_MODEL_FROM_DATABASE=T502-BT Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T502-BT Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005880* +- ID_MODEL_FROM_DATABASE=T540-5080 Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T540-5080 Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005881* +- ID_MODEL_FROM_DATABASE=T540-5081 Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T540-5081 Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005883* +- ID_MODEL_FROM_DATABASE=T540-5083 Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T540-5083 Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005884* +- ID_MODEL_FROM_DATABASE=T580-5084 Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T580-5084 Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005885* +- ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Ethernet Controller [VF] + + pci:v00001425d0000A000* + ID_MODEL_FROM_DATABASE=PE10K Unified Wire Ethernet Controller +@@ -43562,6 +43703,9 @@ pci:v0000148E* + pci:v0000148F* + ID_VENDOR_FROM_DATABASE=Plant Equipment, Inc. + ++pci:v0000148Fd00005370* ++ ID_MODEL_FROM_DATABASE=Dexlink AUWL15I1 ++ + pci:v00001490* + ID_VENDOR_FROM_DATABASE=Stone Microsystems PTY Ltd. + +@@ -44885,6 +45029,9 @@ pci:v000014E4d000016A2sv0000103Csd00001916* + pci:v000014E4d000016A2sv0000103Csd00001917* + ID_MODEL_FROM_DATABASE=BCM57840 NetXtreme II 10/20-Gigabit Ethernet (HP FlexFabric 20Gb 2-port 630M Adapter) + ++pci:v000014E4d000016A3* ++ ID_MODEL_FROM_DATABASE=NetXtreme BCM57786 Gigabit Ethernet PCIe ++ + pci:v000014E4d000016A4* + ID_MODEL_FROM_DATABASE=BCM57840 NetXtreme II Ethernet Multi Function + +@@ -47796,7 +47943,7 @@ pci:v000015B3d00001003* + ID_MODEL_FROM_DATABASE=MT27500 Family [ConnectX-3] + + pci:v000015B3d00001004* +- ID_MODEL_FROM_DATABASE=MT27500 Family [ConnectX-3 Virtual Function] ++ ID_MODEL_FROM_DATABASE=MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function] + + pci:v000015B3d00001005* + ID_MODEL_FROM_DATABASE=MT27510 Family +@@ -47807,9 +47954,6 @@ pci:v000015B3d00001006* + pci:v000015B3d00001007* + ID_MODEL_FROM_DATABASE=MT27520 Family [ConnectX-3 Pro] + +-pci:v000015B3d00001008* +- ID_MODEL_FROM_DATABASE=MT27520 Family [ConnectX-3 Pro Virtual Function] +- + pci:v000015B3d00001009* + ID_MODEL_FROM_DATABASE=MT27530 Family + +@@ -49187,6 +49331,9 @@ pci:v0000168Cd0000002Bsv0000105Bsd0000E017* + pci:v0000168Cd0000002Bsv0000105Bsd0000E023* + ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (T77H121.04 802.11bgn Wireless Half-size Mini PCIe Card) + ++pci:v0000168Cd0000002Bsv0000105Bsd0000E025* ++ ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (T77H121.05 802.11bgn Wireless Half-size Mini PCIe Card) ++ + pci:v0000168Cd0000002Bsv00001113sd0000E811* + ID_MODEL_FROM_DATABASE=AR9285 Wireless Network Adapter (PCI-Express) (WN7811A (Toshiba PA3722U-1MPC) 802.11bgn Wireless Half-size Mini PCIe Card) + +@@ -50471,6 +50618,9 @@ pci:v00001814d00000701sv00001737sd00000074* + pci:v00001814d00000781* + ID_MODEL_FROM_DATABASE=RT2790 Wireless 802.11n 1T/2R PCIe + ++pci:v00001814d00000781sv00001814sd00002790* ++ ID_MODEL_FROM_DATABASE=RT2790 Wireless 802.11n 1T/2R PCIe ++ + pci:v00001814d00003060* + ID_MODEL_FROM_DATABASE=RT3060 Wireless 802.11n 1T/1R + +@@ -51911,6 +52061,9 @@ pci:v00001969d00001063* + pci:v00001969d00001063sv00001458sd0000E000* + ID_MODEL_FROM_DATABASE=AR8131 Gigabit Ethernet (GA-G31M-ES2L Motherboard) + ++pci:v00001969d00001063sv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=AR8131 Gigabit Ethernet (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00001969d00001066* + ID_MODEL_FROM_DATABASE=Attansic L2c Gigabit Ethernet + +@@ -52358,6 +52511,18 @@ pci:v00001A2Bd0000000A* + pci:v00001A2Bd0000000E* + ID_MODEL_FROM_DATABASE=DSLP-104 v1.1 + ++pci:v00001A30* ++ ID_VENDOR_FROM_DATABASE=Lantiq ++ ++pci:v00001A30d00000680* ++ ID_MODEL_FROM_DATABASE=MtW8171 [Hyperion II] ++ ++pci:v00001A30d00000700* ++ ID_MODEL_FROM_DATABASE=Wave300 PSB8224 [Hyperion III] ++ ++pci:v00001A30d00000710* ++ ID_MODEL_FROM_DATABASE=Wave300 PSB8231 [Hyperion III] ++ + pci:v00001A32* + ID_VENDOR_FROM_DATABASE=Quanta Microsystems, Inc + +@@ -52497,19 +52662,19 @@ pci:v00001A78* + ID_VENDOR_FROM_DATABASE=Virident Systems Inc. + + pci:v00001A78d00000031* +- ID_MODEL_FROM_DATABASE=Virident FlashMAX Drive ++ ID_MODEL_FROM_DATABASE=FlashMAX Drive + + pci:v00001A78d00000031sv00001A78sd00000034* +- ID_MODEL_FROM_DATABASE=Virident FlashMAX Drive (FlashMAX PCIe SSD [rev 3]) ++ ID_MODEL_FROM_DATABASE=FlashMAX Drive (FlashMAX PCIe SSD [rev 3]) + + pci:v00001A78d00000031sv00001A78sd00000037* +- ID_MODEL_FROM_DATABASE=Virident FlashMAX Drive (FlashMAX PCIe SSD [rev 3D]) ++ ID_MODEL_FROM_DATABASE=FlashMAX Drive (FlashMAX PCIe SSD [rev 3D]) + + pci:v00001A78d00000031sv00001A78sd00000038* +- ID_MODEL_FROM_DATABASE=Virident FlashMAX Drive (FlashMAX PCIe SSD [rev 4]) ++ ID_MODEL_FROM_DATABASE=FlashMAX Drive (FlashMAX PCIe SSD [rev 4]) + + pci:v00001A78d00000031sv00001A78sd00000039* +- ID_MODEL_FROM_DATABASE=Virident FlashMAX Drive (FlashMAX PCIe SSD [rev 4D]) ++ ID_MODEL_FROM_DATABASE=FlashMAX Drive (FlashMAX PCIe SSD [rev 4D]) + + pci:v00001A78d00000040* + ID_MODEL_FROM_DATABASE=FlashMAX II +@@ -52520,6 +52685,9 @@ pci:v00001A78d00000041* + pci:v00001A78d00000042* + ID_MODEL_FROM_DATABASE=FlashMAX II + ++pci:v00001A78d00000050* ++ ID_MODEL_FROM_DATABASE=FlashMAX III ++ + pci:v00001A84* + ID_VENDOR_FROM_DATABASE=Commex Technologies + +@@ -52682,6 +52850,15 @@ pci:v00001AEDd00001008* + pci:v00001AEDd00002001* + ID_MODEL_FROM_DATABASE=ioDrive2 + ++pci:v00001AEDd00003001* ++ ID_MODEL_FROM_DATABASE=ioMemory FHHL ++ ++pci:v00001AEDd00003002* ++ ID_MODEL_FROM_DATABASE=ioMemory HHHL ++ ++pci:v00001AEDd00003003* ++ ID_MODEL_FROM_DATABASE=ioMemory Mezzanine ++ + pci:v00001AEE* + ID_VENDOR_FROM_DATABASE=Caustic Graphics Inc. + +@@ -52775,6 +52952,9 @@ pci:v00001B21d00001080* + pci:v00001B21d00001080sv00001849sd00001080* + ID_MODEL_FROM_DATABASE=ASM1083/1085 PCIe to PCI Bridge (Motherboard) + ++pci:v00001B21d00001142* ++ ID_MODEL_FROM_DATABASE=ASM1042A USB 3.0 Host Controller ++ + pci:v00001B2C* + ID_VENDOR_FROM_DATABASE=Opal-RT Technologies Inc. + +@@ -52916,6 +53096,9 @@ pci:v00001B4Bd00009485* + pci:v00001B55* + ID_VENDOR_FROM_DATABASE=NetUP Inc. + ++pci:v00001B55d000018F6* ++ ID_MODEL_FROM_DATABASE=Dual DVB Universal CI card ++ + pci:v00001B55d00002A2C* + ID_MODEL_FROM_DATABASE=Dual DVB-S2-CI card + +@@ -53135,6 +53318,9 @@ pci:v00001CE4d00000002* + pci:v00001CF7* + ID_VENDOR_FROM_DATABASE=Subspace Dynamics + ++pci:v00001D21* ++ ID_VENDOR_FROM_DATABASE=Allo ++ + pci:v00001D44* + ID_VENDOR_FROM_DATABASE=DPT + +@@ -54956,15 +55142,30 @@ pci:v00008086d00000044sv00001025sd00000347* + pci:v00008086d00000044sv00001025sd00000487* + ID_MODEL_FROM_DATABASE=Core Processor DRAM Controller (TravelMate 5742) + ++pci:v00008086d00000044sv0000144Dsd0000C06A* ++ ID_MODEL_FROM_DATABASE=Core Processor DRAM Controller (R730 Laptop) ++ ++pci:v00008086d00000044sv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=Core Processor DRAM Controller (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00000044sv0000E4BFsd000050C1* + ID_MODEL_FROM_DATABASE=Core Processor DRAM Controller (PC1-GROOVE) + + pci:v00008086d00000045* + ID_MODEL_FROM_DATABASE=Core Processor PCI Express x16 Root Port + ++pci:v00008086d00000045sv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=Core Processor PCI Express x16 Root Port (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00000046* + ID_MODEL_FROM_DATABASE=Core Processor Integrated Graphics Controller + ++pci:v00008086d00000046sv0000144Dsd0000C06A* ++ ID_MODEL_FROM_DATABASE=Core Processor Integrated Graphics Controller (R730 Laptop) ++ ++pci:v00008086d00000046sv000017C0sd000010D9* ++ ID_MODEL_FROM_DATABASE=Core Processor Integrated Graphics Controller (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00000046sv0000E4BFsd000050C1* + ID_MODEL_FROM_DATABASE=Core Processor Integrated Graphics Controller (PC1-GROOVE) + +@@ -55238,6 +55439,9 @@ pci:v00008086d00000150* + pci:v00008086d00000150sv00001043sd000084CA* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (P8 series motherboard) + ++pci:v00008086d00000150sv000015D9sd00000624* ++ ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (X9SCM-F Motherboard) ++ + pci:v00008086d00000150sv00001849sd00000150* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (Motherboard) + +@@ -55445,6 +55649,9 @@ pci:v00008086d00000416sv000017AAsd0000220E* + pci:v00008086d0000041A* + ID_MODEL_FROM_DATABASE=Xeon E3-1200 v3 Processor Integrated Graphics Controller + ++pci:v00008086d0000041E* ++ ID_MODEL_FROM_DATABASE=4th Generation Core Processor Family Integrated Graphics Controller ++ + pci:v00008086d00000433* + ID_MODEL_FROM_DATABASE=Coleto Creek ACC - ME/CPM interface + +@@ -56727,241 +56934,85 @@ pci:v00008086d00000EFD* + ID_MODEL_FROM_DATABASE=Xeon E7 v2/Xeon E5 v2/Core i7 DDRIO + + pci:v00008086d00000F00* +- ID_MODEL_FROM_DATABASE=ValleyView SSA-CUnit +- +-pci:v00008086d00000F01* +- ID_MODEL_FROM_DATABASE=ValleyView SSA-CUnit +- +-pci:v00008086d00000F02* +- ID_MODEL_FROM_DATABASE=ValleyView SSA-CUnit +- +-pci:v00008086d00000F03* +- ID_MODEL_FROM_DATABASE=ValleyView SSA-CUnit ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series SoC Transaction Register + + pci:v00008086d00000F04* +- ID_MODEL_FROM_DATABASE=ValleyView High Definition Audio Controller +- +-pci:v00008086d00000F05* +- ID_MODEL_FROM_DATABASE=ValleyView High Definition Audio Controller ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series High Definition Audio Controller + + pci:v00008086d00000F06* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 DMA Controller +- +-pci:v00008086d00000F07* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 DMA Controller ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO1 DMA Controller + + pci:v00008086d00000F08* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 PWM Controller ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO1 PWM Controller + + pci:v00008086d00000F09* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 PWM Controller ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO1 PWM Controller + + pci:v00008086d00000F0A* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 HSUART Controller #1 +- +-pci:v00008086d00000F0B* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 HSUART Controller #1 ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO1 HSUART Controller #1 + + pci:v00008086d00000F0C* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 HSUART Controller #2 +- +-pci:v00008086d00000F0D* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 HSUART Controller #2 ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO1 HSUART Controller #2 + + pci:v00008086d00000F0E* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 SPI Controller +- +-pci:v00008086d00000F0F* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 SPI Controller +- +-pci:v00008086d00000F10* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 Controller +- +-pci:v00008086d00000F11* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO1 Controller +- +-pci:v00008086d00000F12* +- ID_MODEL_FROM_DATABASE=ValleyView SMBus Controller +- +-pci:v00008086d00000F13* +- ID_MODEL_FROM_DATABASE=ValleyView SMBus Controller ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO1 SPI Controller + + pci:v00008086d00000F14* +- ID_MODEL_FROM_DATABASE=ValleyView SDIO Controller ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series SDIO Controller + + pci:v00008086d00000F15* +- ID_MODEL_FROM_DATABASE=ValleyView SDIO Controller ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series SDIO Controller + + pci:v00008086d00000F16* +- ID_MODEL_FROM_DATABASE=ValleyView SDIO Controller +- +-pci:v00008086d00000F17* +- ID_MODEL_FROM_DATABASE=ValleyView SDIO Controller ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series SDIO Controller + + pci:v00008086d00000F18* +- ID_MODEL_FROM_DATABASE=ValleyView SEC +- +-pci:v00008086d00000F19* +- ID_MODEL_FROM_DATABASE=ValleyView SEC +- +-pci:v00008086d00000F1A* +- ID_MODEL_FROM_DATABASE=ValleyView SEC +- +-pci:v00008086d00000F1B* +- ID_MODEL_FROM_DATABASE=ValleyView SEC ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series Trusted Execution Engine + + pci:v00008086d00000F1C* +- ID_MODEL_FROM_DATABASE=ValleyView Power Control Unit +- +-pci:v00008086d00000F1D* +- ID_MODEL_FROM_DATABASE=ValleyView Power Control Unit +- +-pci:v00008086d00000F1E* +- ID_MODEL_FROM_DATABASE=ValleyView Power Control Unit +- +-pci:v00008086d00000F1F* +- ID_MODEL_FROM_DATABASE=ValleyView Power Control Unit +- +-pci:v00008086d00000F20* +- ID_MODEL_FROM_DATABASE=ValleyView 4-Port SATA Storage Controller +- +-pci:v00008086d00000F21* +- ID_MODEL_FROM_DATABASE=ValleyView 4-Port SATA Storage Controller +- +-pci:v00008086d00000F22* +- ID_MODEL_FROM_DATABASE=ValleyView 6-Port SATA AHCI Controller +- +-pci:v00008086d00000F23* +- ID_MODEL_FROM_DATABASE=ValleyView 6-Port SATA AHCI Controller +- +-pci:v00008086d00000F24* +- ID_MODEL_FROM_DATABASE=ValleyView SATA RAID Storage Controller +- +-pci:v00008086d00000F25* +- ID_MODEL_FROM_DATABASE=ValleyView SATA RAID Storage Controller +- +-pci:v00008086d00000F26* +- ID_MODEL_FROM_DATABASE=ValleyView 2-Port SATA Storage Controller +- +-pci:v00008086d00000F27* +- ID_MODEL_FROM_DATABASE=ValleyView 2-Port SATA Storage Controller ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series Power Control Unit + + pci:v00008086d00000F28* +- ID_MODEL_FROM_DATABASE=ValleyView LPE Audio Controller +- +-pci:v00008086d00000F29* +- ID_MODEL_FROM_DATABASE=ValleyView LPE Audio Controller +- +-pci:v00008086d00000F2A* +- ID_MODEL_FROM_DATABASE=ValleyView LPE Audio Controller +- +-pci:v00008086d00000F2B* +- ID_MODEL_FROM_DATABASE=ValleyView LPE Audio Controller +- +-pci:v00008086d00000F2E* +- ID_MODEL_FROM_DATABASE=ValleyView SATA RAID Storage Controller +- +-pci:v00008086d00000F2F* +- ID_MODEL_FROM_DATABASE=ValleyView SATA RAID Storage Controller +- +-pci:v00008086d00000F30* +- ID_MODEL_FROM_DATABASE=ValleyView Gen7 ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPE Audio Controller + + pci:v00008086d00000F31* +- ID_MODEL_FROM_DATABASE=ValleyView Gen7 +- +-pci:v00008086d00000F32* +- ID_MODEL_FROM_DATABASE=ValleyView Gen7 +- +-pci:v00008086d00000F33* +- ID_MODEL_FROM_DATABASE=ValleyView Gen7 ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series Graphics & Display + + pci:v00008086d00000F34* +- ID_MODEL_FROM_DATABASE=ValleyView USB Enhanced Host Controller ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series USB EHCI + + pci:v00008086d00000F35* +- ID_MODEL_FROM_DATABASE=ValleyView USB xHCI Host Controller +- +-pci:v00008086d00000F36* +- ID_MODEL_FROM_DATABASE=ValleyView USB xHCI Host Controller ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series USB xHCI + + pci:v00008086d00000F37* +- ID_MODEL_FROM_DATABASE=ValleyView OTG ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series OTG USB Device + + pci:v00008086d00000F38* +- ID_MODEL_FROM_DATABASE=ValleyView ISP +- +-pci:v00008086d00000F39* +- ID_MODEL_FROM_DATABASE=ValleyView ISP +- +-pci:v00008086d00000F3A* +- ID_MODEL_FROM_DATABASE=ValleyView ISP +- +-pci:v00008086d00000F3B* +- ID_MODEL_FROM_DATABASE=ValleyView ISP +- +-pci:v00008086d00000F3C* +- ID_MODEL_FROM_DATABASE=ValleyView ISP +- +-pci:v00008086d00000F3D* +- ID_MODEL_FROM_DATABASE=ValleyView ISP +- +-pci:v00008086d00000F3E* +- ID_MODEL_FROM_DATABASE=ValleyView ISP +- +-pci:v00008086d00000F3F* +- ID_MODEL_FROM_DATABASE=ValleyView ISP ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series Camera ISP + + pci:v00008086d00000F40* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO2 DMA Controller ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO2 DMA Controller + + pci:v00008086d00000F41* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO2 I2C Controller #1 ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO2 I2C Controller #1 + + pci:v00008086d00000F42* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO2 I2C Controller #2 ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO2 I2C Controller #2 + + pci:v00008086d00000F43* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO2 I2C Controller #3 ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO2 I2C Controller #3 + + pci:v00008086d00000F44* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO2 I2C Controller #4 ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO2 I2C Controller #4 + + pci:v00008086d00000F45* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO2 I2C Controller #5 ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO2 I2C Controller #5 + + pci:v00008086d00000F46* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO2 I2C Controller #6 ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO2 I2C Controller #6 + + pci:v00008086d00000F47* +- ID_MODEL_FROM_DATABASE=ValleyView LPIO2 I2C Controller #7 +- +-pci:v00008086d00000F48* +- ID_MODEL_FROM_DATABASE=ValleyView PCI Express Root Port +- +-pci:v00008086d00000F49* +- ID_MODEL_FROM_DATABASE=ValleyView PCI Express Root Port +- +-pci:v00008086d00000F4A* +- ID_MODEL_FROM_DATABASE=ValleyView PCI Express Root Port +- +-pci:v00008086d00000F4B* +- ID_MODEL_FROM_DATABASE=ValleyView PCI Express Root Port +- +-pci:v00008086d00000F4C* +- ID_MODEL_FROM_DATABASE=ValleyView PCI Express Root Port +- +-pci:v00008086d00000F4D* +- ID_MODEL_FROM_DATABASE=ValleyView PCI Express Root Port +- +-pci:v00008086d00000F4E* +- ID_MODEL_FROM_DATABASE=ValleyView PCI Express Root Port +- +-pci:v00008086d00000F4F* +- ID_MODEL_FROM_DATABASE=ValleyView PCI Express Root Port +- +-pci:v00008086d00000F50* +- ID_MODEL_FROM_DATABASE=ValleyView MIPI-HSI Controller ++ ID_MODEL_FROM_DATABASE=Atom Processor Z36xxx/Z37xxx Series LPIO2 I2C Controller #7 + + pci:v00008086d00001000* + ID_MODEL_FROM_DATABASE=82542 Gigabit Ethernet Controller (Fiber) +@@ -57842,6 +57893,9 @@ pci:v00008086d00001091* + pci:v00008086d00001092* + ID_MODEL_FROM_DATABASE=PRO/100 VE Network Connection + ++pci:v00008086d00001092sv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=PRO/100 VE Network Connection (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d00001093* + ID_MODEL_FROM_DATABASE=PRO/100 VM Network Connection + +@@ -59403,7 +59457,7 @@ pci:v00008086d0000154Asv00008086sd0000011C* + ID_MODEL_FROM_DATABASE=Ethernet Server Adapter X520-4 (Ethernet Converged Network Adapter X520-4) + + pci:v00008086d0000154C* +- ID_MODEL_FROM_DATABASE=XL710 X710 Virtual Function ++ ID_MODEL_FROM_DATABASE=XL710/X710 Virtual Function + + pci:v00008086d0000154D* + ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X520 Adapter +@@ -59460,34 +59514,37 @@ pci:v00008086d00001570* + ID_MODEL_FROM_DATABASE=Ethernet Connection I219-V + + pci:v00008086d00001571* +- ID_MODEL_FROM_DATABASE=XL710 X710 Virtual Function ++ ID_MODEL_FROM_DATABASE=XL710/X710 Virtual Function + + pci:v00008086d00001572* +- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter ++ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ + + pci:v00008086d00001572sv00001028sd00001F99* +- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet 10G 4P X710/I350 rNDC) ++ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet 10G 4P X710/I350 rNDC) ++ ++pci:v00008086d00001572sv00008086sd00000000* ++ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet Converged Network Adapter X710) + + pci:v00008086d00001572sv00008086sd00000001* +- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet Converged Network Adapter X710-4) ++ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet Converged Network Adapter X710-4) + + pci:v00008086d00001572sv00008086sd00000002* +- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet Converged Network Adapter X710-4) ++ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet Converged Network Adapter X710-4) + + pci:v00008086d00001572sv00008086sd00000004* +- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet Converged Network Adapter X710-4) ++ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet Converged Network Adapter X710-4) + + pci:v00008086d00001572sv00008086sd00000005* +- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet 10G 4P X710 Adapter) ++ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet 10G 4P X710 Adapter) + + pci:v00008086d00001572sv00008086sd00000006* +- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet 10G2P X710 Adapter) ++ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet 10G 2P X710 Adapter) + + pci:v00008086d00001572sv00008086sd00000007* +- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet Converged Network Adapter X710-2) ++ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet Converged Network Adapter X710-2) + + pci:v00008086d00001572sv00008086sd00000008* +- ID_MODEL_FROM_DATABASE=Ethernet 10G 2P X710 Adapter (Ethernet Converged Network Adapter X710-2) ++ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE SFP+ (Ethernet Converged Network Adapter X710-2) + + pci:v00008086d0000157B* + ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection +@@ -59496,17 +59553,20 @@ pci:v00008086d0000157C* + ID_MODEL_FROM_DATABASE=I210 Gigabit Backplane Connection + + pci:v00008086d00001580* +- ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40Gbe backplane ++ ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE backplane + + pci:v00008086d00001581* +- ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10Gbe backplane ++ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE backplane + + pci:v00008086d00001581sv00001028sd00001F98* +- ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10Gbe backplane (Ethernet 10G 4P X710-k bNDC) ++ ID_MODEL_FROM_DATABASE=Ethernet Controller X710 for 10GbE backplane (Ethernet 10G 4P X710-k bNDC) + + pci:v00008086d00001583* + ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ + ++pci:v00008086d00001583sv00008086sd00000000* ++ ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ (Ethernet Converged Network Adapter XL710-Q2) ++ + pci:v00008086d00001583sv00008086sd00000001* + ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ (Ethernet Converged Network Adapter XL710-Q2) + +@@ -59519,6 +59579,9 @@ pci:v00008086d00001583sv00008086sd00000003* + pci:v00008086d00001584* + ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ + ++pci:v00008086d00001584sv00008086sd00000000* ++ ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ (Ethernet Converged Network Adapter XL710-Q1) ++ + pci:v00008086d00001584sv00008086sd00000001* + ID_MODEL_FROM_DATABASE=Ethernet Controller XL710 for 40GbE QSFP+ (Ethernet Converged Network Adapter XL710-Q1) + +@@ -61244,9 +61307,15 @@ pci:v00008086d00002448sv0000104Dsd0000902D* + pci:v00008086d00002448sv0000105Bsd00000D7C* + ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (D270S/D250S Motherboard) + ++pci:v00008086d00002448sv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d00002448sv0000144Dsd0000C00C* + ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (P30 notebook) + ++pci:v00008086d00002448sv0000144Dsd0000C06A* ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (R730 Laptop) ++ + pci:v00008086d00002448sv0000144Dsd0000C072* + ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Notebook N150P) + +@@ -61259,6 +61328,12 @@ pci:v00008086d00002448sv00001734sd00001055* + pci:v00008086d00002448sv000017AAsd000020AE* + ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (ThinkPad T61/R61) + ++pci:v00008086d00002448sv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Medion Akoya E7214 Notebook PC [MD98410]) ++ ++pci:v00008086d00002448sv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002448sv00008086sd0000544B* + ID_MODEL_FROM_DATABASE=82801 Mobile PCI Bridge (Desktop Board D425KT) + +@@ -61872,7 +61947,7 @@ pci:v00008086d000024C5sv00001014sd00000267* + ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (NetVista A30p) + + pci:v00008086d000024C5sv00001014sd00000537* +- ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (ThinkPad T41) ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (ThinkPad T4x Series) + + pci:v00008086d000024C5sv00001014sd0000055F* + ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (Thinkpad R50e model 1634) +@@ -61944,7 +62019,7 @@ pci:v00008086d000024C6* + ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller + + pci:v00008086d000024C6sv00001014sd00000524* +- ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (ThinkPad T41) ++ ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (ThinkPad T4x Series) + + pci:v00008086d000024C6sv00001014sd00000525* + ID_MODEL_FROM_DATABASE=82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (ThinkPad) +@@ -64358,6 +64433,9 @@ pci:v00008086d000027A0sv0000103Csd000030A3* + pci:v00008086d000027A0sv00001043sd00001237* + ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (A6J-Q008) + ++pci:v00008086d000027A0sv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d000027A0sv000017AAsd00002015* + ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (ThinkPad T60) + +@@ -64373,6 +64451,9 @@ pci:v00008086d000027A1sv0000103Csd0000309F* + pci:v00008086d000027A1sv0000103Csd000030A3* + ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express PCI Express Root Port (Compaq nw8440) + ++pci:v00008086d000027A1sv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=Mobile 945GM/PM/GMS, 943/940GML and 945GT Express PCI Express Root Port (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d000027A2* + ID_MODEL_FROM_DATABASE=Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller + +@@ -64457,6 +64538,9 @@ pci:v00008086d000027B9sv0000103Csd000030A1* + pci:v00008086d000027B9sv0000103Csd000030A3* + ID_MODEL_FROM_DATABASE=82801GBM (ICH7-M) LPC Interface Bridge (Compaq nw8440) + ++pci:v00008086d000027B9sv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=82801GBM (ICH7-M) LPC Interface Bridge (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d000027B9sv000010F7sd00008338* + ID_MODEL_FROM_DATABASE=82801GBM (ICH7-M) LPC Interface Bridge (Panasonic CF-Y5 laptop) + +@@ -64568,6 +64652,9 @@ pci:v00008086d000027C4sv00001025sd0000006C* + pci:v00008086d000027C4sv00001028sd000001D7* + ID_MODEL_FROM_DATABASE=82801GBM/GHM (ICH7-M Family) SATA Controller [IDE mode] (XPS M1210) + ++pci:v00008086d000027C4sv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=82801GBM/GHM (ICH7-M Family) SATA Controller [IDE mode] (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d000027C4sv000017AAsd0000200E* + ID_MODEL_FROM_DATABASE=82801GBM/GHM (ICH7-M Family) SATA Controller [IDE mode] (ThinkPad T60) + +@@ -64625,6 +64712,9 @@ pci:v00008086d000027C8sv00001043sd00008179* + pci:v00008086d000027C8sv0000105Bsd00000D7C* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (D270S/D250S Motherboard) + ++pci:v00008086d000027C8sv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d000027C8sv0000107Bsd00005048* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #1 (E4500) + +@@ -64691,6 +64781,9 @@ pci:v00008086d000027C9sv00001043sd00008179* + pci:v00008086d000027C9sv0000105Bsd00000D7C* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (D270S/D250S Motherboard) + ++pci:v00008086d000027C9sv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d000027C9sv0000107Bsd00005048* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #2 (E4500) + +@@ -64757,6 +64850,9 @@ pci:v00008086d000027CAsv00001043sd00008179* + pci:v00008086d000027CAsv0000105Bsd00000D7C* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (D270S/D250S Motherboard) + ++pci:v00008086d000027CAsv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d000027CAsv0000107Bsd00005048* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #3 (E4500) + +@@ -64817,6 +64913,9 @@ pci:v00008086d000027CBsv00001043sd00008179* + pci:v00008086d000027CBsv0000105Bsd00000D7C* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (D270S/D250S Motherboard) + ++pci:v00008086d000027CBsv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d000027CBsv0000107Bsd00005048* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB UHCI Controller #4 (E4500) + +@@ -64880,6 +64979,9 @@ pci:v00008086d000027CCsv00001043sd00008179* + pci:v00008086d000027CCsv0000105Bsd00000D7C* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (D270S/D250S Motherboard) + ++pci:v00008086d000027CCsv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d000027CCsv0000144Dsd0000C072* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family USB2 EHCI Controller (Notebook N150P) + +@@ -64913,6 +65015,9 @@ pci:v00008086d000027D0sv0000103Csd0000309F* + pci:v00008086d000027D0sv0000103Csd000030A3* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 1 (Compaq nw8440) + ++pci:v00008086d000027D0sv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 1 (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d000027D0sv0000144Dsd0000C072* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 1 (Notebook N150P) + +@@ -64937,6 +65042,9 @@ pci:v00008086d000027D2sv0000103Csd0000309F* + pci:v00008086d000027D2sv0000103Csd000030A3* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 2 (Compaq nw8440) + ++pci:v00008086d000027D2sv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 2 (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d000027D2sv0000144Dsd0000C072* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 2 (Notebook N150P) + +@@ -64952,6 +65060,9 @@ pci:v00008086d000027D2sv00008086sd0000544B* + pci:v00008086d000027D4* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 3 + ++pci:v00008086d000027D4sv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 3 (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d000027D4sv0000144Dsd0000C072* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 3 (Notebook N150P) + +@@ -64970,6 +65081,9 @@ pci:v00008086d000027D6* + pci:v00008086d000027D6sv0000103Csd000030A3* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 4 (Compaq nw8440) + ++pci:v00008086d000027D6sv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 4 (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d000027D6sv0000144Dsd0000C072* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family PCI Express Port 4 (Notebook N150P) + +@@ -65021,6 +65135,9 @@ pci:v00008086d000027D8sv00001043sd000082EA* + pci:v00008086d000027D8sv0000105Bsd00000D7C* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (D270S/D250S Motherboard) + ++pci:v00008086d000027D8sv00001071sd00008207* ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d000027D8sv0000107Bsd00005048* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family High Definition Audio Controller (E4500) + +@@ -65099,6 +65216,9 @@ pci:v00008086d000027DAsv00001043sd00008179* + pci:v00008086d000027DAsv0000105Bsd00000D7C* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (D270S/D250S Motherboard) + ++pci:v00008086d000027DAsv00001071sd00008209* ++ ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (Medion MIM 2240 Notebook PC [MD98100]) ++ + pci:v00008086d000027DAsv000010F7sd00008338* + ID_MODEL_FROM_DATABASE=NM10/ICH7 Family SMBus Controller (Panasonic CF-Y5 laptop) + +@@ -65258,6 +65378,9 @@ pci:v00008086d00002815sv0000104Dsd00009005* + pci:v00008086d00002815sv0000104Dsd0000902D* + ID_MODEL_FROM_DATABASE=82801HM (ICH8M) LPC Interface Controller (VAIO VGN-NR120E) + ++pci:v00008086d00002815sv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801HM (ICH8M) LPC Interface Controller (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002820* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) 4 port SATA Controller [IDE mode] + +@@ -65342,6 +65465,9 @@ pci:v00008086d00002829sv0000104Dsd0000902D* + pci:v00008086d00002829sv000017AAsd000020A7* + ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (ThinkPad T61/R61) + ++pci:v00008086d00002829sv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002829sv0000E4BFsd0000CC47* + ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (CCG-RUMBA) + +@@ -65393,6 +65519,9 @@ pci:v00008086d00002830sv00001462sd00007235* + pci:v00008086d00002830sv000017AAsd000020AA* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (ThinkPad T61/R61) + ++pci:v00008086d00002830sv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002830sv0000E4BFsd0000CC47* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #1 (CCG-RUMBA) + +@@ -65435,6 +65564,9 @@ pci:v00008086d00002831sv00001462sd00007235* + pci:v00008086d00002831sv000017AAsd000020AA* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (ThinkPad T61/R61) + ++pci:v00008086d00002831sv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002831sv0000E4BFsd0000CC47* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #2 (CCG-RUMBA) + +@@ -65474,6 +65606,9 @@ pci:v00008086d00002832sv0000104Dsd0000902D* + pci:v00008086d00002832sv000017AAsd000020AA* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (ThinkPad T61/R61) + ++pci:v00008086d00002832sv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002832sv0000E4BFsd0000CC47* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #3 (CCG-RUMBA) + +@@ -65519,6 +65654,9 @@ pci:v00008086d00002834sv00001462sd00007235* + pci:v00008086d00002834sv000017AAsd000020AA* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (ThinkPad T61/R61) + ++pci:v00008086d00002834sv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002834sv0000E4BFsd0000CC47* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #4 (CCG-RUMBA) + +@@ -65555,6 +65693,9 @@ pci:v00008086d00002835sv0000104Dsd0000902D* + pci:v00008086d00002835sv000017AAsd000020AA* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (Thinkpad T61/R61) + ++pci:v00008086d00002835sv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002835sv0000E4BFsd0000CC47* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB UHCI Controller #5 (CCG-RUMBA) + +@@ -65597,6 +65738,9 @@ pci:v00008086d00002836sv00001462sd00007235* + pci:v00008086d00002836sv000017AAsd000020AB* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (ThinkPad T61/R61) + ++pci:v00008086d00002836sv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002836sv0000E4BFsd0000CC47* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #1 (CCG-RUMBA) + +@@ -65633,6 +65777,9 @@ pci:v00008086d0000283Asv0000104Dsd0000902D* + pci:v00008086d0000283Asv000017AAsd000020AB* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (ThinkPad T61/R61) + ++pci:v00008086d0000283Asv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d0000283Asv0000E4BFsd0000CC47* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) USB2 EHCI Controller #2 (CCG-RUMBA) + +@@ -65669,6 +65816,9 @@ pci:v00008086d0000283Esv00001462sd00007235* + pci:v00008086d0000283Esv000017AAsd000020A9* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (ThinkPad T61/R61) + ++pci:v00008086d0000283Esv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d0000283Esv0000E4BFsd0000CC47* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) SMBus Controller (CCG-RUMBA) + +@@ -65687,6 +65837,9 @@ pci:v00008086d0000283Fsv0000104Dsd0000902D* + pci:v00008086d0000283Fsv000017AAsd000020AD* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 1 (ThinkPad T61/R61) + ++pci:v00008086d0000283Fsv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 1 (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002841* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 2 + +@@ -65699,6 +65852,9 @@ pci:v00008086d00002841sv0000104Dsd0000902D* + pci:v00008086d00002841sv000017AAsd000020AD* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 2 (ThinkPad T61/R61) + ++pci:v00008086d00002841sv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 2 (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002843* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 3 + +@@ -65708,12 +65864,18 @@ pci:v00008086d00002843sv0000104Dsd0000902D* + pci:v00008086d00002843sv000017AAsd000020AD* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 3 (ThinkPad T61/R61) + ++pci:v00008086d00002843sv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 3 (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002845* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 4 + + pci:v00008086d00002845sv000017AAsd000020AD* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 4 (ThinkPad T61/R61) + ++pci:v00008086d00002845sv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 4 (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002847* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 5 + +@@ -65726,6 +65888,9 @@ pci:v00008086d00002847sv0000103Csd000030C1* + pci:v00008086d00002847sv000017AAsd000020AD* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 5 (ThinkPad T61/R61) + ++pci:v00008086d00002847sv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 5 (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002849* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) PCI Express Port 6 + +@@ -65792,6 +65957,9 @@ pci:v00008086d0000284Bsv000014F1sd00005051* + pci:v00008086d0000284Bsv000017AAsd000020AC* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (ThinkPad T61/R61) + ++pci:v00008086d0000284Bsv000017C0sd00004088* ++ ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d0000284Bsv00008384sd00007616* + ID_MODEL_FROM_DATABASE=82801H (ICH8 Family) HD Audio Controller (Dell Vostro 1400) + +@@ -65831,6 +65999,9 @@ pci:v00008086d00002850sv0000104Dsd0000902D* + pci:v00008086d00002850sv000017AAsd000020A6* + ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (ThinkPad T61/R61) + ++pci:v00008086d00002850sv000017C0sd00004083* ++ ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002850sv0000E4BFsd0000CC47* + ID_MODEL_FROM_DATABASE=82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (CCG-RUMBA) + +@@ -66794,6 +66965,9 @@ pci:v00008086d00002A00sv000017AAsd000020B1* + pci:v00008086d00002A00sv000017AAsd000020B3* + ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (ThinkPad T61/R61) + ++pci:v00008086d00002A00sv000017C0sd00004082* ++ ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002A00sv0000E4BFsd0000CC47* + ID_MODEL_FROM_DATABASE=Mobile PM965/GM965/GL960 Memory Controller Hub (CCG-RUMBA) + +@@ -66821,6 +66995,9 @@ pci:v00008086d00002A02sv0000104Dsd0000902D* + pci:v00008086d00002A02sv000017AAsd000020B5* + ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (primary) (ThinkPad T61/R61) + ++pci:v00008086d00002A02sv000017C0sd00004082* ++ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (primary) (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002A02sv0000E4BFsd0000CC47* + ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (primary) (CCG-RUMBA) + +@@ -66828,7 +67005,7 @@ pci:v00008086d00002A03* + ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) + + pci:v00008086d00002A03sv00001028sd000001F3* +- ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (Dell Inspiron 1420) ++ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (Inspiron 1420) + + pci:v00008086d00002A03sv0000103Csd000030C0* + ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (Compaq 6710b) +@@ -66842,6 +67019,9 @@ pci:v00008086d00002A03sv0000104Dsd0000902D* + pci:v00008086d00002A03sv000017AAsd000020B5* + ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (ThinkPad T61/R61) + ++pci:v00008086d00002A03sv000017C0sd00004082* ++ ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (Medion WIM 2210 Notebook PC [MD96850]) ++ + pci:v00008086d00002A03sv0000E4BFsd0000CC47* + ID_MODEL_FROM_DATABASE=Mobile GM965/GL960 Integrated Graphics Controller (secondary) (CCG-RUMBA) + +@@ -67317,13 +67497,13 @@ pci:v00008086d00002D10* + ID_MODEL_FROM_DATABASE=Core Processor QPI Link 0 + + pci:v00008086d00002D11* +- ID_MODEL_FROM_DATABASE=Core Processor QPI Physical 0 ++ ID_MODEL_FROM_DATABASE=1st Generation Core Processor QPI Physical 0 + + pci:v00008086d00002D12* +- ID_MODEL_FROM_DATABASE=Core Processor Reserved ++ ID_MODEL_FROM_DATABASE=1st Generation Core Processor Reserved + + pci:v00008086d00002D13* +- ID_MODEL_FROM_DATABASE=Core Processor Reserved ++ ID_MODEL_FROM_DATABASE=1st Generation Core Processor Reserved + + pci:v00008086d00002D81* + ID_MODEL_FROM_DATABASE=Xeon 5600 Series QuickPath Architecture System Address Decoder +@@ -67427,6 +67607,9 @@ pci:v00008086d00002E11* + pci:v00008086d00002E12* + ID_MODEL_FROM_DATABASE=4 Series Chipset Integrated Graphics Controller + ++pci:v00008086d00002E12sv000017AAsd00003048* ++ ID_MODEL_FROM_DATABASE=4 Series Chipset Integrated Graphics Controller (ThinkCentre M6258) ++ + pci:v00008086d00002E13* + ID_MODEL_FROM_DATABASE=4 Series Chipset Integrated Graphics Controller + +@@ -69317,6 +69500,12 @@ pci:v00008086d00003B09* + pci:v00008086d00003B09sv00001025sd00000347* + ID_MODEL_FROM_DATABASE=Mobile 5 Series Chipset LPC Interface Controller (Aspire 7740G) + ++pci:v00008086d00003B09sv0000144Dsd0000C06A* ++ ID_MODEL_FROM_DATABASE=Mobile 5 Series Chipset LPC Interface Controller (R730 Laptop) ++ ++pci:v00008086d00003B09sv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=Mobile 5 Series Chipset LPC Interface Controller (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00003B0A* + ID_MODEL_FROM_DATABASE=5 Series Chipset LPC Interface Controller + +@@ -69416,18 +69605,36 @@ pci:v00008086d00003B26* + pci:v00008086d00003B28* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA IDE Controller + ++pci:v00008086d00003B28sv0000144Dsd0000C06A* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA IDE Controller (R730 Laptop) ++ ++pci:v00008086d00003B28sv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA IDE Controller (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00003B29* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA AHCI Controller + + pci:v00008086d00003B29sv00001025sd00000347* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA AHCI Controller (Aspire 7740G) + ++pci:v00008086d00003B29sv0000144Dsd0000C06A* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA AHCI Controller (R730 Laptop) ++ ++pci:v00008086d00003B29sv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 4 port SATA AHCI Controller (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00003B2C* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SATA RAID Controller + + pci:v00008086d00003B2D* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 2 port SATA IDE Controller + ++pci:v00008086d00003B2Dsv0000144Dsd0000C06A* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 2 port SATA IDE Controller (R730 Laptop) ++ ++pci:v00008086d00003B2Dsv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 2 port SATA IDE Controller (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00003B2Dsv0000E4BFsd000050C1* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 2 port SATA IDE Controller (PC1-GROOVE) + +@@ -69458,9 +69665,15 @@ pci:v00008086d00003B30sv00001028sd000002DA* + pci:v00008086d00003B30sv00001028sd0000040B* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SMBus Controller (Latitude E6510) + ++pci:v00008086d00003B30sv0000144Dsd0000C06A* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SMBus Controller (R730 Laptop) ++ + pci:v00008086d00003B30sv000015D9sd0000060D* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SMBus Controller (C7SIM-Q Motherboard) + ++pci:v00008086d00003B30sv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SMBus Controller (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00003B30sv0000E4BFsd000050C1* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SMBus Controller (PC1-GROOVE) + +@@ -69470,6 +69683,12 @@ pci:v00008086d00003B32* + pci:v00008086d00003B32sv00001025sd00000347* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset Thermal Subsystem (Aspire 7740G) + ++pci:v00008086d00003B32sv0000144Dsd0000C06A* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset Thermal Subsystem (R730 Laptop) ++ ++pci:v00008086d00003B32sv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset Thermal Subsystem (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00003B34* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller + +@@ -69482,9 +69701,15 @@ pci:v00008086d00003B34sv00001028sd000002DA* + pci:v00008086d00003B34sv00001028sd0000040B* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (Latitude E6510) + ++pci:v00008086d00003B34sv0000144Dsd0000C06A* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (R730 Laptop) ++ + pci:v00008086d00003B34sv000015D9sd0000060D* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (C7SIM-Q Motherboard) + ++pci:v00008086d00003B34sv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00003B34sv0000E4BFsd000050C1* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (PC1-GROOVE) + +@@ -69518,9 +69743,15 @@ pci:v00008086d00003B3Csv00001028sd000002DA* + pci:v00008086d00003B3Csv00001028sd0000040B* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (Latitude E6510) + ++pci:v00008086d00003B3Csv0000144Dsd0000C06A* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (R730 Laptop) ++ + pci:v00008086d00003B3Csv000015D9sd0000060D* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (C7SIM-Q Motherboard) + ++pci:v00008086d00003B3Csv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00003B3Csv0000E4BFsd000050C1* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset USB2 Enhanced Host Controller (PC1-GROOVE) + +@@ -69545,9 +69776,15 @@ pci:v00008086d00003B42sv00001028sd000002DA* + pci:v00008086d00003B42sv00001028sd0000040B* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 1 (Latitude E6510) + ++pci:v00008086d00003B42sv0000144Dsd0000C06A* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 1 (R730 Laptop) ++ + pci:v00008086d00003B42sv000015D9sd0000060D* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 1 (C7SIM-Q Motherboard) + ++pci:v00008086d00003B42sv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 1 (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00003B44* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 2 + +@@ -69557,24 +69794,39 @@ pci:v00008086d00003B44sv00001028sd0000040B* + pci:v00008086d00003B44sv000015D9sd0000060D* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 2 (C7SIM-Q Motherboard) + ++pci:v00008086d00003B44sv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 2 (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00003B46* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 3 + + pci:v00008086d00003B46sv00001028sd0000040B* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 3 (Latitude E6510) + ++pci:v00008086d00003B46sv0000144Dsd0000C06A* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 3 (R730 Laptop) ++ ++pci:v00008086d00003B46sv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 3 (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00003B48* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 4 + + pci:v00008086d00003B48sv00001028sd0000040B* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 4 (Latitude E6510) + ++pci:v00008086d00003B48sv0000144Dsd0000C06A* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 4 (R730 Laptop) ++ + pci:v00008086d00003B4A* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 5 + + pci:v00008086d00003B4Asv00001028sd000002DA* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 5 (OptiPlex 980) + ++pci:v00008086d00003B4Asv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 5 (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00003B4C* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset PCI Express Root Port 6 + +@@ -69599,9 +69851,15 @@ pci:v00008086d00003B56sv00001028sd000002DA* + pci:v00008086d00003B56sv00001028sd0000040B* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio (Latitude E6510) + ++pci:v00008086d00003B56sv0000144Dsd0000C06A* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio (R730 Laptop) ++ + pci:v00008086d00003B56sv000015D9sd0000060D* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio (C7SIM-Q Motherboard) + ++pci:v00008086d00003B56sv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00003B56sv0000E4BFsd000050C1* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset High Definition Audio (PC1-GROOVE) + +@@ -69617,6 +69875,9 @@ pci:v00008086d00003B64sv00001025sd00000347* + pci:v00008086d00003B64sv000015D9sd0000060D* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset HECI Controller (C7SIM-Q Motherboard) + ++pci:v00008086d00003B64sv000017C0sd000010D2* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset HECI Controller (Medion Akoya E7214 Notebook PC [MD98410]) ++ + pci:v00008086d00003B64sv0000E4BFsd000050C1* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset HECI Controller (PC1-GROOVE) + +@@ -69990,7 +70251,7 @@ pci:v00008086d00004222sv00008086sd00001000* + ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection (PRO/Wireless 3945ABG Network Connection) + + pci:v00008086d00004222sv00008086sd00001001* +- ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection (PRO/Wireless 3945ABG Network Connection) ++ ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection (WM3945ABG MOW2) + + pci:v00008086d00004222sv00008086sd00001005* + ID_MODEL_FROM_DATABASE=PRO/Wireless 3945ABG [Golan] Network Connection (PRO/Wireless 3945BG Network Connection) +@@ -71168,6 +71429,114 @@ pci:v00008086d00008C5E* + pci:v00008086d00008C5F* + ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family LPC Controller + ++pci:v00008086d00008C80* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [IDE Mode] ++ ++pci:v00008086d00008C81* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [IDE Mode] ++ ++pci:v00008086d00008C82* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [AHCI Mode] ++ ++pci:v00008086d00008C83* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [AHCI Mode] ++ ++pci:v00008086d00008C84* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [RAID Mode] ++ ++pci:v00008086d00008C85* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [RAID Mode] ++ ++pci:v00008086d00008C86* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [RAID Mode] ++ ++pci:v00008086d00008C87* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [RAID Mode] ++ ++pci:v00008086d00008C88* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [IDE Mode] ++ ++pci:v00008086d00008C89* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [IDE Mode] ++ ++pci:v00008086d00008C8E* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [RAID Mode] ++ ++pci:v00008086d00008C8F* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SATA Controller [RAID Mode] ++ ++pci:v00008086d00008C90* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family PCI Express Root Port 1 ++ ++pci:v00008086d00008C92* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family PCI Express Root Port 2 ++ ++pci:v00008086d00008C94* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family PCI Express Root Port 3 ++ ++pci:v00008086d00008C96* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family PCI Express Root Port 4 ++ ++pci:v00008086d00008C98* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family PCI Express Root Port 5 ++ ++pci:v00008086d00008C9A* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family PCI Express Root Port 6 ++ ++pci:v00008086d00008C9C* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family PCI Express Root Port 7 ++ ++pci:v00008086d00008C9E* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family PCI Express Root Port 8 ++ ++pci:v00008086d00008CA0* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family HD Audio Controller ++ ++pci:v00008086d00008CA2* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family SMBus Controller ++ ++pci:v00008086d00008CA4* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family Thermal Controller ++ ++pci:v00008086d00008CA6* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family USB EHCI Controller #1 ++ ++pci:v00008086d00008CAD* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family USB EHCI Controller #2 ++ ++pci:v00008086d00008CB1* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family USB xHCI Controller ++ ++pci:v00008086d00008CB3* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family LAN Controller ++ ++pci:v00008086d00008CBA* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family ME Interface #1 ++ ++pci:v00008086d00008CBB* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family ME Interface #2 ++ ++pci:v00008086d00008CBC* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family IDE-R Controller ++ ++pci:v00008086d00008CBD* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family KT Controller ++ ++pci:v00008086d00008CC1* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family LPC Controller ++ ++pci:v00008086d00008CC2* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family LPC Controller ++ ++pci:v00008086d00008CC3* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family HM97 LPC Controller ++ ++pci:v00008086d00008CC4* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family Z97 LPC Controller ++ ++pci:v00008086d00008CC6* ++ ID_MODEL_FROM_DATABASE=9 Series Chipset Family H97 Controller ++ + pci:v00008086d00008D00* + ID_MODEL_FROM_DATABASE=Wellsburg 4-port SATA Controller [IDE mode] + +@@ -71379,208 +71748,208 @@ pci:v00008086d000096A1* + ID_MODEL_FROM_DATABASE=Integrated RAID + + pci:v00008086d00009C00* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [IDE mode] ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [IDE mode] + + pci:v00008086d00009C01* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [IDE mode] ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [IDE mode] + + pci:v00008086d00009C02* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [AHCI mode] ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [AHCI mode] + + pci:v00008086d00009C03* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [AHCI mode] ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [AHCI mode] + + pci:v00008086d00009C03sv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [AHCI mode] (ThinkPad X240) ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [AHCI mode] (ThinkPad X240) + + pci:v00008086d00009C04* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [RAID mode] ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [RAID mode] + + pci:v00008086d00009C05* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [RAID mode] ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [RAID mode] + + pci:v00008086d00009C06* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [RAID mode] ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [RAID mode] + + pci:v00008086d00009C07* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [RAID mode] ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [RAID mode] + + pci:v00008086d00009C08* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 2 [IDE mode] ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 2 [IDE mode] + + pci:v00008086d00009C09* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 2 [IDE mode] ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 2 [IDE mode] + + pci:v00008086d00009C0A* +- ID_MODEL_FROM_DATABASE=LynxPoint-LP SATA Controller [Reserved] ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller [Reserved] + + pci:v00008086d00009C0B* +- ID_MODEL_FROM_DATABASE=LynxPoint-LP SATA Controller [Reserved] ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller [Reserved] + + pci:v00008086d00009C0C* +- ID_MODEL_FROM_DATABASE=LynxPoint-LP SATA Controller [Reserved] ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller [Reserved] + + pci:v00008086d00009C0D* +- ID_MODEL_FROM_DATABASE=LynxPoint-LP SATA Controller [Reserved] ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller [Reserved] + + pci:v00008086d00009C0E* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [RAID mode] ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [RAID mode] + + pci:v00008086d00009C0F* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SATA Controller 1 [RAID mode] ++ ID_MODEL_FROM_DATABASE=8 Series SATA Controller 1 [RAID mode] + + pci:v00008086d00009C10* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 1 ++ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 1 + + pci:v00008086d00009C11* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 1 ++ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 1 + + pci:v00008086d00009C12* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 2 ++ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 2 + + pci:v00008086d00009C13* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 2 ++ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 2 + + pci:v00008086d00009C14* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 3 ++ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 3 + + pci:v00008086d00009C15* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 3 ++ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 3 + + pci:v00008086d00009C16* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 4 ++ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 4 + + pci:v00008086d00009C17* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 4 ++ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 4 + + pci:v00008086d00009C18* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 5 ++ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 5 + + pci:v00008086d00009C19* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 5 ++ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 5 + + pci:v00008086d00009C1A* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 6 ++ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 6 + + pci:v00008086d00009C1B* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 6 ++ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 6 + + pci:v00008086d00009C1C* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 7 ++ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 7 + + pci:v00008086d00009C1D* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 7 ++ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 7 + + pci:v00008086d00009C1E* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 8 ++ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 8 + + pci:v00008086d00009C1F* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP PCI Express Root Port 8 ++ ID_MODEL_FROM_DATABASE=8 Series PCI Express Root Port 8 + + pci:v00008086d00009C20* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP HD Audio Controller ++ ID_MODEL_FROM_DATABASE=8 Series HD Audio Controller + + pci:v00008086d00009C20sv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP HD Audio Controller (ThinkPad X240) ++ ID_MODEL_FROM_DATABASE=8 Series HD Audio Controller (ThinkPad X240) + + pci:v00008086d00009C21* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP HD Audio Controller ++ ID_MODEL_FROM_DATABASE=8 Series HD Audio Controller + + pci:v00008086d00009C22* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SMBus Controller ++ ID_MODEL_FROM_DATABASE=8 Series SMBus Controller + + pci:v00008086d00009C22sv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SMBus Controller (ThinkPad X240) ++ ID_MODEL_FROM_DATABASE=8 Series SMBus Controller (ThinkPad X240) + + pci:v00008086d00009C23* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP CHAP Counters ++ ID_MODEL_FROM_DATABASE=8 Series CHAP Counters + + pci:v00008086d00009C24* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP Thermal ++ ID_MODEL_FROM_DATABASE=8 Series Thermal + + pci:v00008086d00009C26* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP USB EHCI #1 ++ ID_MODEL_FROM_DATABASE=8 Series USB EHCI #1 + + pci:v00008086d00009C26sv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP USB EHCI #1 (ThinkPad X240) ++ ID_MODEL_FROM_DATABASE=8 Series USB EHCI #1 (ThinkPad X240) + + pci:v00008086d00009C2D* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP USB EHCI #2 ++ ID_MODEL_FROM_DATABASE=8 Series USB EHCI #2 + + pci:v00008086d00009C31* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP USB xHCI HC ++ ID_MODEL_FROM_DATABASE=8 Series USB xHCI HC + + pci:v00008086d00009C31sv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP USB xHCI HC (ThinkPad X240) ++ ID_MODEL_FROM_DATABASE=8 Series USB xHCI HC (ThinkPad X240) + + pci:v00008086d00009C35* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SDIO Controller ++ ID_MODEL_FROM_DATABASE=8 Series SDIO Controller + + pci:v00008086d00009C36* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP Audio DSP Controller ++ ID_MODEL_FROM_DATABASE=8 Series Audio DSP Controller + + pci:v00008086d00009C3A* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP HECI #0 ++ ID_MODEL_FROM_DATABASE=8 Series HECI #0 + + pci:v00008086d00009C3Asv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP HECI #0 (ThinkPad X240) ++ ID_MODEL_FROM_DATABASE=8 Series HECI #0 (ThinkPad X240) + + pci:v00008086d00009C3B* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP HECI #1 ++ ID_MODEL_FROM_DATABASE=8 Series HECI #1 + + pci:v00008086d00009C3C* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP HECI IDER ++ ID_MODEL_FROM_DATABASE=8 Series HECI IDER + + pci:v00008086d00009C3D* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP HECI KT ++ ID_MODEL_FROM_DATABASE=8 Series HECI KT + + pci:v00008086d00009C40* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller ++ ID_MODEL_FROM_DATABASE=8 Series LPC Controller + + pci:v00008086d00009C41* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller ++ ID_MODEL_FROM_DATABASE=8 Series LPC Controller + + pci:v00008086d00009C42* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller ++ ID_MODEL_FROM_DATABASE=8 Series LPC Controller + + pci:v00008086d00009C43* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller ++ ID_MODEL_FROM_DATABASE=8 Series LPC Controller + + pci:v00008086d00009C43sv000017AAsd00002214* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller (ThinkPad X240) ++ ID_MODEL_FROM_DATABASE=8 Series LPC Controller (ThinkPad X240) + + pci:v00008086d00009C44* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller ++ ID_MODEL_FROM_DATABASE=8 Series LPC Controller + + pci:v00008086d00009C45* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller ++ ID_MODEL_FROM_DATABASE=8 Series LPC Controller + + pci:v00008086d00009C46* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller ++ ID_MODEL_FROM_DATABASE=8 Series LPC Controller + + pci:v00008086d00009C47* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP LPC Controller ++ ID_MODEL_FROM_DATABASE=8 Series LPC Controller + + pci:v00008086d00009C60* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP Low Power Sub-System DMA ++ ID_MODEL_FROM_DATABASE=8 Series Low Power Sub-System DMA + + pci:v00008086d00009C61* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP I2C Controller #0 ++ ID_MODEL_FROM_DATABASE=8 Series I2C Controller #0 + + pci:v00008086d00009C62* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP I2C Controller #1 ++ ID_MODEL_FROM_DATABASE=8 Series I2C Controller #1 + + pci:v00008086d00009C63* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP UART Controller #0 ++ ID_MODEL_FROM_DATABASE=8 Series UART Controller #0 + + pci:v00008086d00009C64* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP UART Controller #1 ++ ID_MODEL_FROM_DATABASE=8 Series UART Controller #1 + + pci:v00008086d00009C65* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SPI Controller #0 ++ ID_MODEL_FROM_DATABASE=8 Series SPI Controller #0 + + pci:v00008086d00009C66* +- ID_MODEL_FROM_DATABASE=Lynx Point-LP SPI Controller #1 ++ ID_MODEL_FROM_DATABASE=8 Series SPI Controller #1 + + pci:v00008086d00009C83* + ID_MODEL_FROM_DATABASE=Wildcat Point-LP SATA Controller [AHCI Mode] +diff --git hwdb/20-usb-classes.hwdb hwdb/20-usb-classes.hwdb +index 3294d8a..418d39b 100644 +--- hwdb/20-usb-classes.hwdb ++++ hwdb/20-usb-classes.hwdb +@@ -311,6 +311,9 @@ usb:v*p*d*dcEFdsc02dp02* + usb:v*p*d*dcEFdsc03dp01* + ID_USB_PROTOCOL_FROM_DATABASE=Cable Based Association + ++usb:v*p*d*dcEFdsc05* ++ ID_USB_SUBCLASS_FROM_DATABASE=USB3 Vision ++ + usb:v*p*d*dcFE* + ID_USB_CLASS_FROM_DATABASE=Application Specific Interface + +diff --git hwdb/20-usb-vendor-model.hwdb hwdb/20-usb-vendor-model.hwdb +index 05f267d..89cd5b1 100644 +--- hwdb/20-usb-vendor-model.hwdb ++++ hwdb/20-usb-vendor-model.hwdb +@@ -284,9 +284,18 @@ usb:v03EBp2310* + usb:v03EBp2FE4* + ID_MODEL_FROM_DATABASE=ATxmega32A4U DFU bootloader + ++usb:v03EBp2FE6* ++ ID_MODEL_FROM_DATABASE=Cactus V6 (DFU) ++ ++usb:v03EBp2FEA* ++ ID_MODEL_FROM_DATABASE=Cactus RF60 (DFU) ++ + usb:v03EBp2FF0* + ID_MODEL_FROM_DATABASE=atmega32u2 DFU bootloader + ++usb:v03EBp2FF4* ++ ID_MODEL_FROM_DATABASE=atmega32u4 DFU bootloader ++ + usb:v03EBp2FFA* + ID_MODEL_FROM_DATABASE=at90usb162 DFU bootloader + +@@ -4409,6 +4418,9 @@ usb:v0424p2602* + usb:v0424p2640* + ID_MODEL_FROM_DATABASE=USB 2.0 Hub + ++usb:v0424p2660* ++ ID_MODEL_FROM_DATABASE=Hub ++ + usb:v0424p4060* + ID_MODEL_FROM_DATABASE=Ultra Fast Media Reader + +@@ -5373,7 +5385,7 @@ usb:v0457p0162* + ID_MODEL_FROM_DATABASE=SiS162 usb Wireless LAN Adapter + + usb:v0457p0163* +- ID_MODEL_FROM_DATABASE=802.11 Wireless LAN Adapter ++ ID_MODEL_FROM_DATABASE=SiS163U 802.11 Wireless LAN Adapter + + usb:v0457p0817* + ID_MODEL_FROM_DATABASE=SiS-184-ASUS-4352.17 touch panel +@@ -6947,6 +6959,9 @@ usb:v046Dp082D* + usb:v046Dp0830* + ID_MODEL_FROM_DATABASE=QuickClip + ++usb:v046Dp0837* ++ ID_MODEL_FROM_DATABASE=BCC950 ConferenceCam ++ + usb:v046Dp0840* + ID_MODEL_FROM_DATABASE=QuickCam Express + +@@ -7856,6 +7871,9 @@ usb:v046DpC52F* + usb:v046DpC532* + ID_MODEL_FROM_DATABASE=Unifying Receiver + ++usb:v046DpC534* ++ ID_MODEL_FROM_DATABASE=Unifying Receiver ++ + usb:v046DpC603* + ID_MODEL_FROM_DATABASE=3Dconnexion Spacemouse Plus XT + +@@ -8738,6 +8756,9 @@ usb:v0480pA007* + usb:v0480pA009* + ID_MODEL_FROM_DATABASE=Stor.E Basics + ++usb:v0480pA00D* ++ ID_MODEL_FROM_DATABASE=STOR.E BASICS 500GB ++ + usb:v0480pD010* + ID_MODEL_FROM_DATABASE=External Disk 3TB + +@@ -10943,6 +10964,9 @@ usb:v04A9p3196* + usb:v04A9p319A* + ID_MODEL_FROM_DATABASE=EOS 7D + ++usb:v04A9p319B* ++ ID_MODEL_FROM_DATABASE=EOS 50D ++ + usb:v04A9p31AA* + ID_MODEL_FROM_DATABASE=SELPHY CP770 + +@@ -11219,6 +11243,15 @@ usb:v04A9p3277* + usb:v04A9p327D* + ID_MODEL_FROM_DATABASE=Powershot ELPH 115 IS / IXUS 132 + ++usb:v04A9p327F* ++ ID_MODEL_FROM_DATABASE=EOS Rebel T5 / EOS 1200D / EOS Kiss X70 ++ ++usb:v04A9p3284* ++ ID_MODEL_FROM_DATABASE=PowerShot D30 ++ ++usb:v04A9p3286* ++ ID_MODEL_FROM_DATABASE=PowerShot SX600 HS ++ + usb:v04A9p3288* + ID_MODEL_FROM_DATABASE=Powershot ELPH 135 / IXUS 145 + +@@ -13040,6 +13073,9 @@ usb:v04D8p0036* + usb:v04D8p00E0* + ID_MODEL_FROM_DATABASE=PIC32 Starter Board + ++usb:v04D8p04CD* ++ ID_MODEL_FROM_DATABASE=28Cxxx EEPROM Programmer ++ + usb:v04D8p0A04* + ID_MODEL_FROM_DATABASE=AGP LIN Serial Analyzer + +@@ -14093,6 +14129,9 @@ usb:v04E8p5F05* + usb:v04E8p6032* + ID_MODEL_FROM_DATABASE=G2 Portable hard drive + ++usb:v04E8p6033* ++ ID_MODEL_FROM_DATABASE=G2 Portable device ++ + usb:v04E8p6034* + ID_MODEL_FROM_DATABASE=G2 Portable hard drive + +@@ -14102,6 +14141,9 @@ usb:v04E8p60B3* + usb:v04E8p60C4* + ID_MODEL_FROM_DATABASE=M2 Portable Hard Drive USB 3.0 + ++usb:v04E8p6124* ++ ID_MODEL_FROM_DATABASE=D3 Station External Hard Drive ++ + usb:v04E8p61B6* + ID_MODEL_FROM_DATABASE=M3 Portable Hard Drive 1TB + +@@ -15224,6 +15266,9 @@ usb:v04F9p0223* + usb:v04F9p0248* + ID_MODEL_FROM_DATABASE=DCP-7055 scanner/printer + ++usb:v04F9p02B3* ++ ID_MODEL_FROM_DATABASE=MFC J4510DW ++ + usb:v04F9p1000* + ID_MODEL_FROM_DATABASE=Printer + +@@ -15546,7 +15591,7 @@ usb:v050Dp0013* + ID_MODEL_FROM_DATABASE=F8T013 Bluetooth Adapter + + usb:v050Dp0017* +- ID_MODEL_FROM_DATABASE=B8T017 Bluetooth+EDR 2.1 ++ ID_MODEL_FROM_DATABASE=B8T017 Bluetooth+EDR 2.1 / F4U017 USB 2.0 7-port Hub + + usb:v050Dp003A* + ID_MODEL_FROM_DATABASE=Universal Media Reader +@@ -15683,6 +15728,9 @@ usb:v050Dp1106* + usb:v050Dp1109* + ID_MODEL_FROM_DATABASE=F9L1109v1 802.11a/b/g/n/ac Wireless Adapter [Realtek RTL8812AU] + ++usb:v050Dp110A* ++ ID_MODEL_FROM_DATABASE=F9L1101v2 802.11abgn Wireless Adapter [Realtek RTL8192DU] ++ + usb:v050Dp11F2* + ID_MODEL_FROM_DATABASE=ISY Wireless Micro Adapter IWL 2000 [RTL8188CUS] + +@@ -15723,7 +15771,7 @@ usb:v050Dp6051* + ID_MODEL_FROM_DATABASE=F5D6051 802.11b Wireless Network Adapter [ZyDAS ZD1201] + + usb:v050Dp615A* +- ID_MODEL_FROM_DATABASE=F7D4101 / F9L1101 802.11abgn Wireless Adapter [Broadcom BCM4323] ++ ID_MODEL_FROM_DATABASE=F7D4101 / F9L1101v1 802.11abgn Wireless Adapter [Broadcom BCM4323] + + usb:v050Dp7050* + ID_MODEL_FROM_DATABASE=F5D7050 Wireless G Adapter v1000/v2000 [Intersil ISL3887] +@@ -16358,6 +16406,9 @@ usb:v0547p2810* + usb:v0547p4D90* + ID_MODEL_FROM_DATABASE=AmScope MD1900 camera + ++usb:v0547p7000* ++ ID_MODEL_FROM_DATABASE=PowerSpec MCE460 Front Panel LED Display ++ + usb:v0547p7777* + ID_MODEL_FROM_DATABASE=Bluetooth Device + +@@ -21677,6 +21728,9 @@ usb:v05F9p2601* + usb:v05F9p2602* + ID_MODEL_FROM_DATABASE=Datalogic Magellan 1100i Barcode Scanner + ++usb:v05F9p4204* ++ ID_MODEL_FROM_DATABASE=Datalogic Gryphon GFS4470 Fixed Scanner ++ + usb:v05F9p5204* + ID_MODEL_FROM_DATABASE=Datalogic Gryphon GFS4170 (config mode) + +@@ -23234,6 +23288,9 @@ usb:v068Ep00D3* + usb:v068Ep00E2* + ID_MODEL_FROM_DATABASE=HFX OEM Joystick + ++usb:v068Ep00F0* ++ ID_MODEL_FROM_DATABASE=Multi-Function Panel ++ + usb:v068Ep00F1* + ID_MODEL_FROM_DATABASE=Pro Throttle + +@@ -25838,6 +25895,9 @@ usb:v0781p74D0* + usb:v0781p74D1* + ID_MODEL_FROM_DATABASE=Sansa Clip+ (msc) + ++usb:v0781p74E5* ++ ID_MODEL_FROM_DATABASE=Sansa Clip Zip ++ + usb:v0781p8181* + ID_MODEL_FROM_DATABASE=Pen Flash + +@@ -26219,6 +26279,9 @@ usb:v07AAp001A* + usb:v07AAp001C* + ID_MODEL_FROM_DATABASE=CG-WLUSB2GT 802.11g Wireless Adapter [Intersil ISL3880] + ++usb:v07AAp0020* ++ ID_MODEL_FROM_DATABASE=CG-WLUSB2GTST 802.11g Wireless Adapter [Intersil ISL3887] ++ + usb:v07AAp002E* + ID_MODEL_FROM_DATABASE=CG-WLUSB2GPX [Ralink RT2571W] + +@@ -26939,6 +27002,9 @@ usb:v07CApA827* + usb:v07CApA867* + ID_MODEL_FROM_DATABASE=AVerTV DVB-T (A867) + ++usb:v07CApB300* ++ ID_MODEL_FROM_DATABASE=A300 DVB-T TV receiver ++ + usb:v07CApB800* + ID_MODEL_FROM_DATABASE=MR800 FM Radio + +@@ -27941,6 +28007,9 @@ usb:v083Ap4507* + usb:v083Ap4521* + ID_MODEL_FROM_DATABASE=Siemens S30863-S1016-R107-2 802.11g Wireless Adapter [Intersil ISL3887] + ++usb:v083Ap4531* ++ ID_MODEL_FROM_DATABASE=T-Com Sinus 154 data II [Intersil ISL3887] ++ + usb:v083Ap5046* + ID_MODEL_FROM_DATABASE=SpeedStream 10/100 Ethernet [pegasus] + +@@ -30476,6 +30545,9 @@ usb:v0957p0518* + usb:v0957p0A07* + ID_MODEL_FROM_DATABASE=34411A Multimeter + ++usb:v0957p1507* ++ ID_MODEL_FROM_DATABASE=33210A Waveform Generator ++ + usb:v0957p1745* + ID_MODEL_FROM_DATABASE=Test and Measurement Device (IVI) + +@@ -30876,13 +30948,13 @@ usb:v09D9* + ID_VENDOR_FROM_DATABASE=KRF Tech, Ltd + + usb:v09DA* +- ID_VENDOR_FROM_DATABASE=A4 Tech Co., Ltd ++ ID_VENDOR_FROM_DATABASE=A4Tech Co., Ltd. + + usb:v09DAp0006* + ID_MODEL_FROM_DATABASE=Optical Mouse WOP-35 / Trust 450L Optical Mouse + + usb:v09DAp000A* +- ID_MODEL_FROM_DATABASE=Optical Mouse Opto 510D ++ ID_MODEL_FROM_DATABASE=Optical Mouse Opto 510D / OP-620D + + usb:v09DAp000E* + ID_MODEL_FROM_DATABASE=X-F710F Optical Mouse 3xFire Gaming Mouse +@@ -32174,6 +32246,9 @@ usb:v0AB1* + usb:v0AB1p0002* + ID_MODEL_FROM_DATABASE=OBID RFID-Reader + ++usb:v0AB1p0004* ++ ID_MODEL_FROM_DATABASE=OBID classic-pro ++ + usb:v0ABA* + ID_VENDOR_FROM_DATABASE=Ellisys + +@@ -32571,7 +32646,7 @@ usb:v0B05p1708* + ID_MODEL_FROM_DATABASE=Mass Storage Device + + usb:v0B05p170B* +- ID_MODEL_FROM_DATABASE=Mass Storage Device ++ ID_MODEL_FROM_DATABASE=Multi card reader + + usb:v0B05p170C* + ID_MODEL_FROM_DATABASE=WL-159g 802.11bg +@@ -32687,6 +32762,9 @@ usb:v0B05p17A1* + usb:v0B05p17AB* + ID_MODEL_FROM_DATABASE=USB-N13 802.11n Network Adapter (rev. B1) [Realtek RTL8192CU] + ++usb:v0B05p17C7* ++ ID_MODEL_FROM_DATABASE=WL-330NUL ++ + usb:v0B05p17C9* + ID_MODEL_FROM_DATABASE=USB-AC53 802.11a/b/g/n/ac Wireless Adapter [Broadcom BCM43526] + +@@ -32714,6 +32792,9 @@ usb:v0B05p5410* + usb:v0B05p5412* + ID_MODEL_FROM_DATABASE=MeMO Pad HD 7 (PTP mode) + ++usb:v0B05p550F* ++ ID_MODEL_FROM_DATABASE=ASUS fonepad 7 ++ + usb:v0B05p6101* + ID_MODEL_FROM_DATABASE=Cable Modem + +@@ -32756,6 +32837,9 @@ usb:v0B0Dp0000* + usb:v0B0E* + ID_VENDOR_FROM_DATABASE=GN Netcom + ++usb:v0B0Ep034C* ++ ID_MODEL_FROM_DATABASE=Jabra UC Voice 750 MS ++ + usb:v0B0Ep0420* + ID_MODEL_FROM_DATABASE=Jabra SPEAK 510 + +@@ -49610,6 +49694,12 @@ usb:v2659p1212* + usb:v2659p1213* + ID_MODEL_FROM_DATABASE=MediaTV Pro III MiniPCIe (US) + ++usb:v2676* ++ ID_VENDOR_FROM_DATABASE=Basler AG ++ ++usb:v2676pBA02* ++ ID_MODEL_FROM_DATABASE=ace ++ + usb:v2730* + ID_VENDOR_FROM_DATABASE=Citizen + +-- +1.7.9.2 + diff --git a/0006-journal-assume-that-next-entry-is-after-previous-ent.patch b/0006-journal-assume-that-next-entry-is-after-previous-ent.patch new file mode 100644 index 00000000..aa974fa7 --- /dev/null +++ b/0006-journal-assume-that-next-entry-is-after-previous-ent.patch @@ -0,0 +1,70 @@ +From fb099c8d2af6620db2709e826a258089d10cdfe8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Thu, 27 Feb 2014 00:07:29 -0500 +Subject: [PATCH] journal: assume that next entry is after previous entry + +With a corrupted file, we can get in a situation where two entries +in the entry array point to the same object. Then journal_file_next_entry +will find the first one using generic_arrray_bisect, and try to move to +the second one, but since the address is the same, generic_array_get will +return the first one. journal_file_next_entry ends up in an infinite loop. + +https://bugzilla.redhat.com/show_bug.cgi?id=1047039 +--- + src/journal/journal-file.c | 26 ++++++++++++++++++++------ + 1 file changed, 20 insertions(+), 6 deletions(-) + +diff --git src/journal/journal-file.c src/journal/journal-file.c +index 5876733..0e1fc7f 100644 +--- src/journal/journal-file.c ++++ src/journal/journal-file.c +@@ -1359,7 +1359,7 @@ int journal_file_append_entry(JournalFile *f, const dual_timestamp *ts, const st + } + + typedef struct ChainCacheItem { +- uint64_t first; /* the array at the begin of the chain */ ++ uint64_t first; /* the array at the beginning of the chain */ + uint64_t array; /* the cached array */ + uint64_t begin; /* the first item in the cached array */ + uint64_t total; /* the total number of items in all arrays before this one in the chain */ +@@ -1945,7 +1945,7 @@ int journal_file_next_entry( + direction_t direction, + Object **ret, uint64_t *offset) { + +- uint64_t i, n; ++ uint64_t i, n, ofs; + int r; + + assert(f); +@@ -1986,10 +1986,24 @@ int journal_file_next_entry( + } + + /* And jump to it */ +- return generic_array_get(f, +- le64toh(f->header->entry_array_offset), +- i, +- ret, offset); ++ r = generic_array_get(f, ++ le64toh(f->header->entry_array_offset), ++ i, ++ ret, &ofs); ++ if (r <= 0) ++ return r; ++ ++ if (p > 0 && ++ (direction == DIRECTION_DOWN ? ofs <= p : ofs >= p)) { ++ log_debug("%s: entry array corrupted at entry %"PRIu64, ++ f->path, i); ++ return -EBADMSG; ++ } ++ ++ if (offset) ++ *offset = ofs; ++ ++ return 1; + } + + int journal_file_skip_entry( +-- +1.7.9.2 + diff --git a/0006-journald-fix-minor-memory-leak.patch b/0006-journald-fix-minor-memory-leak.patch new file mode 100644 index 00000000..72d2ab39 --- /dev/null +++ b/0006-journald-fix-minor-memory-leak.patch @@ -0,0 +1,24 @@ +From 99d0966e75a984bed4f117c888ecc93e16e7b7b6 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 3 Nov 2014 21:11:16 +0100 +Subject: [PATCH] journald: fix minor memory leak + +--- + src/journal/journald-server.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git src/journal/journald-server.c src/journal/journald-server.c +index e062427..cf6bbcc 100644 +--- src/journal/journald-server.c ++++ src/journal/journald-server.c +@@ -1690,6 +1690,7 @@ void server_done(Server *s) { + free(s->buffer); + free(s->tty_path); + free(s->cgroup_root); ++ free(s->hostname_field); + + if (s->mmap) + mmap_cache_unref(s->mmap); +-- +1.7.9.2 + diff --git a/0006-log-honour-the-kernel-s-quiet-cmdline-argument.patch b/0006-log-honour-the-kernel-s-quiet-cmdline-argument.patch new file mode 100644 index 00000000..e76abb48 --- /dev/null +++ b/0006-log-honour-the-kernel-s-quiet-cmdline-argument.patch @@ -0,0 +1,29 @@ +From e683212f049ac5d3f95fb17300cfa2fd971f78f3 Mon Sep 17 00:00:00 2001 +From: Ronny Chevalier +Date: Tue, 3 Jun 2014 19:44:03 +0200 +Subject: [PATCH] log: honour the kernel's quiet cmdline argument + +It was forgotten in b1e90ec515408aec2702522f6f68c4920b56375b + +See https://bugs.freedesktop.org/show_bug.cgi?id=79582 +--- + src/shared/log.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git src/shared/log.c src/shared/log.c +index 9039db3..6f17705 100644 +--- src/shared/log.c ++++ src/shared/log.c +@@ -878,6 +878,9 @@ void log_parse_environment(void) { + if (l == 5 && startswith(w, "debug")) { + log_set_max_level(LOG_DEBUG); + break; ++ } else if (l == 5 && startswith(w, "quiet")) { ++ log_set_max_level(LOG_WARNING); ++ break; + } + } + } +-- +1.7.9.2 + diff --git a/0006-login-add-mir-to-the-list-of-session-types.patch b/0006-login-add-mir-to-the-list-of-session-types.patch new file mode 100644 index 00000000..9e966958 --- /dev/null +++ b/0006-login-add-mir-to-the-list-of-session-types.patch @@ -0,0 +1,90 @@ +From 9541666b8d97f107335dd7e3cb93b4d2cfbf19c9 Mon Sep 17 00:00:00 2001 +From: David Herrmann +Date: Wed, 9 Apr 2014 21:22:48 +0200 +Subject: [PATCH] login: add 'mir' to the list of session types + +Add Mir to the list of session types. This is implemented for LightDM +in lp:~robert-ancell/lightdm/xdg-session-desktop [1]. + +[1] https://code.launchpad.net/~robert-ancell/lightdm/xdg-session-desktop/+merge/214108 + +(david: adjusted commit-header and fixed whitespace issues) +--- + man/pam_systemd.xml | 5 +++-- + man/sd_session_is_active.xml | 6 +++--- + src/login/logind-session.c | 1 + + src/login/logind-session.h | 1 + + src/systemd/sd-login.h | 2 +- + 5 files changed, 9 insertions(+), 6 deletions(-) + +diff --git man/pam_systemd.xml man/pam_systemd.xml +index 3022cdb..f973899 100644 +--- man/pam_systemd.xml ++++ man/pam_systemd.xml +@@ -145,8 +145,9 @@ + variable takes precedence. One of + unspecified, + tty, +- x11 or +- wayland. See ++ x11, ++ wayland or ++ mir. See + sd_session_get_type3 + for details about the session type. + +diff --git man/sd_session_is_active.xml man/sd_session_is_active.xml +index ddb2bee..31a6119 100644 +--- man/sd_session_is_active.xml ++++ man/sd_session_is_active.xml +@@ -201,9 +201,9 @@ + be used to determine the type of the session + identified by the specified session identifier. The + returned string is one of x11, +- wayland, tty or +- unspecified and needs to be freed +- with the libc ++ wayland, tty, ++ mir or unspecified and ++ needs to be freed with the libc + free3 + call after use. + +--- src/login/logind-session.c ++++ src/login/logind-session.c 2014-05-20 12:49:07.150236121 +0000 +@@ -1124,6 +1124,7 @@ static const char* const session_type_ta + [SESSION_TTY] = "tty", + [SESSION_X11] = "x11", + [SESSION_WAYLAND] = "wayland", ++ [SESSION_MIR] = "mir", + [SESSION_UNSPECIFIED] = "unspecified", + }; + +diff --git src/login/logind-session.h src/login/logind-session.h +index c9af5eb..7ecc9f0 100644 +--- src/login/logind-session.h ++++ src/login/logind-session.h +@@ -55,6 +55,7 @@ typedef enum SessionType { + SESSION_TTY, + SESSION_X11, + SESSION_WAYLAND, ++ SESSION_MIR, + _SESSION_TYPE_MAX, + _SESSION_TYPE_INVALID = -1 + } SessionType; +diff --git src/systemd/sd-login.h src/systemd/sd-login.h +index a4ca231..776733a 100644 +--- src/systemd/sd-login.h ++++ src/systemd/sd-login.h +@@ -138,7 +138,7 @@ int sd_session_get_seat(const char *session, char **seat); + /* Determine the (PAM) service name this session was registered by. */ + int sd_session_get_service(const char *session, char **service); + +-/* Determine the type of this session, i.e. one of "tty", "x11" or "unspecified". */ ++/* Determine the type of this session, i.e. one of "tty", "x11", "wayland", "mir" or "unspecified". */ + int sd_session_get_type(const char *session, char **type); + + /* Determine the class of this session, i.e. one of "user", "greeter" or "lock-screen". */ +-- +1.7.9.2 + diff --git a/0006-login-share-VT-signal-handler-between-sessions.patch b/0006-login-share-VT-signal-handler-between-sessions.patch new file mode 100644 index 00000000..599aa261 --- /dev/null +++ b/0006-login-share-VT-signal-handler-between-sessions.patch @@ -0,0 +1,246 @@ +Based on 92683ad2e28c79891e4123d9a421b018dc58870c Mon Sep 17 00:00:00 2001 +From: David Herrmann +Date: Mon, 11 Aug 2014 18:17:54 +0200 +Subject: [PATCH] login: share VT-signal handler between sessions + +sd-event does not allow multiple handlers for a single signal. However, +logind sets up signal handlers for each session with VT_PROCESS set (that +is, it has an active controller). Therefore, registering multiple such +controllers will fail. + +Lets make the VT-handler global, as it's mostly trivial, anyway. This way, +the sessions don't have to take care of that and we can simply acknowledge +all VT-switch requests as we always did. +--- + src/libsystemd/sd-event/sd-event.c | 5 +- + src/login/logind-session.c | 26 +------------ + src/login/logind-session.h | 1 + src/login/logind.c | 70 +++++++++++++++++++++++++++++++++++++ + src/shared/util.c | 18 +++++++++ + src/shared/util.h | 1 + 6 files changed, 94 insertions(+), 27 deletions(-) + +--- src/libsystemd/sd-event/sd-event.c ++++ src/libsystemd/sd-event/sd-event.c 2014-08-26 11:02:54.500683967 +0000 +@@ -839,7 +839,6 @@ _public_ int sd_event_add_signal( + assert_return(sig > 0, -EINVAL); + assert_return(sig < _NSIG, -EINVAL); + assert_return(callback, -EINVAL); +- assert_return(ret, -EINVAL); + assert_return(e->state != SD_EVENT_FINISHED, -ESTALE); + assert_return(!event_pid_changed(e), -ECHILD); + +@@ -877,7 +876,9 @@ _public_ int sd_event_add_signal( + } + } + +- *ret = s; ++ if (ret) ++ *ret = s; ++ + return 0; + } + +--- src/login/logind-session.c ++++ src/login/logind-session.c 2014-08-25 17:22:46.000000000 +0000 +@@ -153,8 +153,6 @@ void session_free(Session *s) { + + hashmap_remove(s->manager->sessions, s->id); + +- s->vt_source = sd_event_source_unref(s->vt_source); +- + free(s->state_file); + free(s); + } +@@ -966,19 +964,9 @@ static int session_open_vt(Session *s) { + return s->vtfd; + } + +-static int session_vt_fn(sd_event_source *source, const struct signalfd_siginfo *si, void *data) { +- Session *s = data; +- +- if (s->vtfd >= 0) +- ioctl(s->vtfd, VT_RELDISP, 1); +- +- return 0; +-} +- + int session_mute_vt(Session *s) { + int vt, r; + struct vt_mode mode = { 0 }; +- sigset_t mask; + + if (s->vtnr < 1) + return 0; +@@ -1008,20 +996,12 @@ int session_mute_vt(Session *s) { + goto error; + } + +- sigemptyset(&mask); +- sigaddset(&mask, SIGUSR1); +- sigprocmask(SIG_BLOCK, &mask, NULL); +- +- r = sd_event_add_signal(s->manager->event, &s->vt_source, SIGUSR1, session_vt_fn, s); +- if (r < 0) +- goto error; +- + /* Oh, thanks to the VT layer, VT_AUTO does not work with KD_GRAPHICS. + * So we need a dummy handler here which just acknowledges *all* VT + * switch requests. */ + mode.mode = VT_PROCESS; +- mode.relsig = SIGUSR1; +- mode.acqsig = SIGUSR1; ++ mode.relsig = SIGRTMIN; ++ mode.acqsig = SIGRTMIN + 1; + r = ioctl(vt, VT_SETMODE, &mode); + if (r < 0) { + r = -errno; +@@ -1045,8 +1025,6 @@ void session_restore_vt(Session *s) { + if (vt < 0) + return; + +- s->vt_source = sd_event_source_unref(s->vt_source); +- + ioctl(vt, KDSETMODE, KD_TEXT); + + if (read_one_line_file("/sys/module/vt/parameters/default_utf8", &utf8) >= 0 && *utf8 == '1') +--- src/login/logind-session.h ++++ src/login/logind-session.h 2014-08-25 00:00:00.000000000 +0000 +@@ -98,7 +98,6 @@ struct Session { + Seat *seat; + unsigned int vtnr; + int vtfd; +- sd_event_source *vt_source; + + pid_t leader; + uint32_t audit_id; +--- src/login/logind.c ++++ src/login/logind.c 2014-08-26 11:18:41.422235366 +0000 +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + #include + + #include "sd-daemon.h" +@@ -714,6 +715,47 @@ static int manager_connect_bus(Manager * + return 0; + } + ++static int manager_vt_switch(sd_event_source *src, const struct signalfd_siginfo *si, void *data) { ++ Manager *m = data; ++ Session *active, *iter; ++ ++ /* ++ * We got a VT-switch signal and we have to acknowledge it immediately. ++ * Preferably, we'd just use m->seat0->active->vtfd, but unfortunately, ++ * old user-space might run multiple sessions on a single VT, *sigh*. ++ * Therefore, we have to iterate all sessions and find one with a vtfd ++ * on the requested VT. ++ * As only VTs with active controllers have VT_PROCESS set, our current ++ * notion of the active VT might be wrong (for instance if the switch ++ * happens while we setup VT_PROCESS). Therefore, read the current VT ++ * first and then use s->active->vtnr as reference. Note that this is ++ * not racy, as no further VT-switch can happen as long as we're in ++ * synchronous VT_PROCESS mode. ++ */ ++ ++ assert(m->seat0); ++ seat_read_active_vt(m->seat0); ++ ++ active = m->seat0->active; ++ if (!active || active->vtnr < 1) { ++ log_warning("Received VT_PROCESS signal without a registered session on that VT."); ++ return 0; ++ } ++ ++ if (active->vtfd >= 0) { ++ ioctl(active->vtfd, VT_RELDISP, 1); ++ } else { ++ LIST_FOREACH(sessions_by_seat, iter, m->seat0->sessions) { ++ if (iter->vtnr == active->vtnr && iter->vtfd >= 0) { ++ ioctl(iter->vtfd, VT_RELDISP, 1); ++ break; ++ } ++ } ++ } ++ ++ return 0; ++} ++ + static int manager_connect_console(Manager *m) { + int r; + +@@ -744,6 +786,34 @@ static int manager_connect_console(Manag + return r; + } + ++ /* ++ * SIGRTMIN is used as global VT-release signal, SIGRTMIN + 1 is used ++ * as VT-acquire signal. We ignore any acquire-events (yes, we still ++ * have to provide a valid signal-number for it!) and acknowledge all ++ * release events immediately. ++ */ ++ ++ if (SIGRTMIN + 1 > SIGRTMAX) { ++ log_error("Not enough real-time signals available: %u-%u", SIGRTMIN, SIGRTMAX); ++ return -EINVAL; ++ } ++ ++ r = ignore_signals(SIGRTMIN + 1, -1); ++ if (r < 0) { ++ log_error("Cannot ignore SIGRTMIN + 1: %s", strerror(-r)); ++ return r; ++ } ++ ++ r = sigprocmask_many(SIG_BLOCK, SIGRTMIN, -1); ++ if (r < 0) { ++ log_error("Cannot block SIGRTMIN: %s", strerror(-r)); ++ return r; ++ } ++ ++ r = sd_event_add_signal(m->event, NULL, SIGRTMIN, manager_vt_switch, m); ++ if (r < 0) ++ return r; ++ + return 0; + } + +--- src/shared/util.c ++++ src/shared/util.c 2014-08-26 10:20:14.000000000 +0000 +@@ -2434,6 +2434,24 @@ void sigset_add_many(sigset_t *ss, ...) + va_end(ap); + } + ++int sigprocmask_many(int how, ...) { ++ va_list ap; ++ sigset_t ss; ++ int sig; ++ ++ assert_se(sigemptyset(&ss) == 0); ++ ++ va_start(ap, how); ++ while ((sig = va_arg(ap, int)) > 0) ++ assert_se(sigaddset(&ss, sig) == 0); ++ va_end(ap); ++ ++ if (sigprocmask(how, &ss, NULL) < 0) ++ return -errno; ++ ++ return 0; ++} ++ + char* gethostname_malloc(void) { + struct utsname u; + +--- src/shared/util.h ++++ src/shared/util.h 2014-08-26 10:21:08.000000000 +0000 +@@ -390,6 +390,7 @@ char* dirname_malloc(const char *path); + void rename_process(const char name[8]); + + void sigset_add_many(sigset_t *ss, ...); ++int sigprocmask_many(int how, ...); + + bool hostname_is_set(void); + diff --git a/0006-man-clarify-that-the-ExecReload-command-should-be-sy.patch b/0006-man-clarify-that-the-ExecReload-command-should-be-sy.patch new file mode 100644 index 00000000..4313946b --- /dev/null +++ b/0006-man-clarify-that-the-ExecReload-command-should-be-sy.patch @@ -0,0 +1,39 @@ +From 33169701b0640d3629d4c36cf8c71dc26d2cb7e1 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 16 May 2014 01:33:22 +0200 +Subject: [PATCH] man: clarify that the ExecReload= command should be + synchronous + +http://lists.freedesktop.org/archives/systemd-devel/2014-May/019054.html +--- + man/systemd.service.xml | 14 ++++++++++++++ + 1 file changed, 14 insertions(+) + +diff --git man/systemd.service.xml man/systemd.service.xml +index af32ccb..364ad7d 100644 +--- man/systemd.service.xml ++++ man/systemd.service.xml +@@ -519,6 +519,20 @@ ExecStart=/bin/echo $ONE $TWO ${TWO} + following: + + /bin/kill -HUP $MAINPID ++ ++ Note however that reloading a ++ daemon by sending a signal (as with ++ the example line above) is usually not ++ a good choice, because this is an ++ asynchronous operation and hence not ++ suitable to order reloads of multiple ++ services against each other. It is ++ strongly recommended to set ++ ExecReload= to a ++ command that no only triggers a ++ configuration reload of the daemon, ++ but also synchronously waits for it ++ complete. + + + +-- +1.7.9.2 + diff --git a/0006-parse_boolean-require-exact-matches.patch b/0006-parse_boolean-require-exact-matches.patch new file mode 100644 index 00000000..2c279f99 --- /dev/null +++ b/0006-parse_boolean-require-exact-matches.patch @@ -0,0 +1,48 @@ +From 0f625d0b87139fc18cd565c9b6da05c53a0eb7ab Mon Sep 17 00:00:00 2001 +From: Ansgar Burchardt +Date: Sun, 27 Jul 2014 15:19:00 +0200 +Subject: [PATCH] parse_boolean: require exact matches + +Require exact matches in all cases instead of treating strings +starting with 't' ('f') as true (false). + +This is required for config_parse_protect_system to parse ProtectSystem=full +correctly: it uses parse_boolean and only tries a more specific parsing +function if that did not return a valid result. Thus "full" was treated as +"false" before. +--- + src/shared/util.c | 4 ++-- + src/test/test-util.c | 1 + + 2 files changed, 3 insertions(+), 2 deletions(-) + +diff --git src/shared/util.c src/shared/util.c +index 4fda31c..49c17ef 100644 +--- src/shared/util.c ++++ src/shared/util.c +@@ -231,9 +231,9 @@ int unlink_noerrno(const char *path) { + int parse_boolean(const char *v) { + assert(v); + +- if (streq(v, "1") || v[0] == 'y' || v[0] == 'Y' || v[0] == 't' || v[0] == 'T' || strcaseeq(v, "on")) ++ if (streq(v, "1") || strcaseeq(v, "yes") || strcaseeq(v, "y") || strcaseeq(v, "true") || strcaseeq(v, "t") || strcaseeq(v, "on")) + return 1; +- else if (streq(v, "0") || v[0] == 'n' || v[0] == 'N' || v[0] == 'f' || v[0] == 'F' || strcaseeq(v, "off")) ++ else if (streq(v, "0") || strcaseeq(v, "no") || strcaseeq(v, "n") || strcaseeq(v, "false") || strcaseeq(v, "f") || strcaseeq(v, "off")) + return 0; + + return -EINVAL; +diff --git src/test/test-util.c src/test/test-util.c +index ed91a67..9a28ef9 100644 +--- src/test/test-util.c ++++ src/test/test-util.c +@@ -129,6 +129,7 @@ static void test_parse_boolean(void) { + + assert_se(parse_boolean("garbage") < 0); + assert_se(parse_boolean("") < 0); ++ assert_se(parse_boolean("full") < 0); + } + + static void test_parse_pid(void) { +-- +1.7.9.2 + diff --git a/0006-rules-mark-loop-device-as-SYSTEMD_READY-0-if-no-file.patch b/0006-rules-mark-loop-device-as-SYSTEMD_READY-0-if-no-file.patch new file mode 100644 index 00000000..ce18d6c5 --- /dev/null +++ b/0006-rules-mark-loop-device-as-SYSTEMD_READY-0-if-no-file.patch @@ -0,0 +1,30 @@ +From ebc54302d7fc70927d5dc119e178ff03f6a911ed Mon Sep 17 00:00:00 2001 +From: Peter Rajnoha +Date: Mon, 10 Mar 2014 22:58:14 +0100 +Subject: [PATCH] rules: mark loop device as SYSTEMD_READY=0 if no file is + attached + +Check existence of loop/backing_file in sysfs and mark loop devices with +SYSTEMD_READY if missing. Such loop files is uninitialized and it's not +ready for use yet (there's no file attached). +--- + rules/99-systemd.rules.in | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git rules/99-systemd.rules.in rules/99-systemd.rules.in +index 021359a..04a59c4 100644 +--- rules/99-systemd.rules.in ++++ rules/99-systemd.rules.in +@@ -22,6 +22,9 @@ SUBSYSTEM=="block", KERNEL!="ram*", ENV{DM_UUID}=="CRYPT-*", ENV{ID_PART_TABLE_T + SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="md*", TEST!="md/array_state", ENV{SYSTEMD_READY}="0" + SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="md*", ATTR{md/array_state}=="|clear|inactive", ENV{SYSTEMD_READY}="0" + ++# Ignore loop devices that don't have any file attached ++SUBSYSTEM=="block", KERNEL=="loop[0-9]*", TEST!="loop/backing_file", ENV{SYSTEMD_READY}="0" ++ + # Ignore nbd devices in the "add" event, with "change" the nbd is ready + ACTION=="add", SUBSYSTEM=="block", KERNEL=="nbd*", ENV{SYSTEMD_READY}="0" + +-- +1.7.9.2 + diff --git a/0006-sd-event-initialization-perturbation-value-right-bef.patch b/0006-sd-event-initialization-perturbation-value-right-bef.patch new file mode 100644 index 00000000..a561cabb --- /dev/null +++ b/0006-sd-event-initialization-perturbation-value-right-bef.patch @@ -0,0 +1,75 @@ +From 52444dc478fe38b5b69a771923ab429a41927aa5 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 24 Mar 2014 23:54:21 +0100 +Subject: [PATCH] sd-event: initialization perturbation value right before we + use it + +That way, we don't forget to initialize it when the watchdog is +initialized before all event sources. +--- + src/libsystemd/sd-event/sd-event.c | 34 +++++++++++++++++++++------------- + 1 file changed, 21 insertions(+), 13 deletions(-) + +--- src/libsystemd/sd-event/sd-event.c ++++ src/libsystemd/sd-event/sd-event.c 2014-03-28 12:44:05.652327044 +0000 +@@ -648,13 +648,31 @@ _public_ int sd_event_add_io( + return 0; + } + ++static void initialize_perturb(sd_event *e) { ++ sd_id128_t bootid = {}; ++ ++ /* When we sleep for longer, we try to realign the wakeup to ++ the same time wihtin each minute/second/250ms, so that ++ events all across the system can be coalesced into a single ++ CPU wakeup. However, let's take some system-specific ++ randomness for this value, so that in a network of systems ++ with synced clocks timer events are distributed a ++ bit. Here, we calculate a perturbation usec offset from the ++ boot ID. */ ++ ++ if (_likely_(e->perturb != (usec_t) -1)) ++ return; ++ ++ if (sd_id128_get_boot(&bootid) >= 0) ++ e->perturb = (bootid.qwords[0] ^ bootid.qwords[1]) % USEC_PER_MINUTE; ++} ++ + static int event_setup_timer_fd( + sd_event *e, + EventSourceType type, + int *timer_fd, + clockid_t id) { + +- sd_id128_t bootid = {}; + struct epoll_event ev = {}; + int r, fd; + +@@ -677,18 +695,6 @@ static int event_setup_timer_fd( + return -errno; + } + +- /* When we sleep for longer, we try to realign the wakeup to +- the same time wihtin each minute/second/250ms, so that +- events all across the system can be coalesced into a single +- CPU wakeup. However, let's take some system-specific +- randomness for this value, so that in a network of systems +- with synced clocks timer events are distributed a +- bit. Here, we calculate a perturbation usec offset from the +- boot ID. */ +- +- if (sd_id128_get_boot(&bootid) >= 0) +- e->perturb = (bootid.qwords[0] ^ bootid.qwords[1]) % USEC_PER_MINUTE; +- + *timer_fd = fd; + return 0; + } +@@ -1506,6 +1512,8 @@ static usec_t sleep_between(sd_event *e, + if (b <= a + 1) + return a; + ++ initialize_perturb(e); ++ + /* + Find a good time to wake up again between times a and b. We + have two goals here: diff --git a/0006-shared-sparse-endian.h-add-missing-byteswap.h-includ.patch b/0006-shared-sparse-endian.h-add-missing-byteswap.h-includ.patch new file mode 100644 index 00000000..0dec2f61 --- /dev/null +++ b/0006-shared-sparse-endian.h-add-missing-byteswap.h-includ.patch @@ -0,0 +1,24 @@ +From 8e8af4cfc7fa373504a22e58966909161acfb72f Mon Sep 17 00:00:00 2001 +From: Emil Renner Berthing +Date: Thu, 18 Sep 2014 15:24:43 +0200 +Subject: [PATCH] shared/sparse-endian.h: add missing byteswap.h include + +--- + src/shared/sparse-endian.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git src/shared/sparse-endian.h src/shared/sparse-endian.h +index eb4dbf3..c913fda 100644 +--- src/shared/sparse-endian.h ++++ src/shared/sparse-endian.h +@@ -21,6 +21,7 @@ + #ifndef SPARSE_ENDIAN_H + #define SPARSE_ENDIAN_H + ++#include + #include + #include + +-- +1.7.9.2 + diff --git a/0006-systemctl-fix-resource-leak-CID-1237747.patch b/0006-systemctl-fix-resource-leak-CID-1237747.patch new file mode 100644 index 00000000..f8ec6af1 --- /dev/null +++ b/0006-systemctl-fix-resource-leak-CID-1237747.patch @@ -0,0 +1,35 @@ +From 48a2900c6612052149a1d0dd88aeacb99b49ce4d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Cristian=20Rodr=C3=ADguez?= +Date: Wed, 17 Sep 2014 21:56:25 -0300 +Subject: [PATCH] systemctl: fix resource leak CID #1237747 + +..by simply moving the declaration of "unit" into the STRV_FOREACH +loop as suggested by Andreas. +--- + src/systemctl/systemctl.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git src/systemctl/systemctl.c src/systemctl/systemctl.c +index 88be871..9012128 100644 +--- src/systemctl/systemctl.c ++++ src/systemctl/systemctl.c +@@ -4449,7 +4449,6 @@ static int show(sd_bus *bus, char **args) { + } + + static int cat(sd_bus *bus, char **args) { +- _cleanup_free_ char *unit = NULL; + _cleanup_strv_free_ char **names = NULL; + char **name; + bool first = true; +@@ -4468,6 +4467,8 @@ static int cat(sd_bus *bus, char **args) { + _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL; + _cleanup_strv_free_ char **dropin_paths = NULL; + _cleanup_free_ char *fragment_path = NULL; ++ _cleanup_free_ char *unit = NULL; ++ + char **path; + + unit = unit_dbus_path_from_name(*name); +-- +1.7.9.2 + diff --git a/0006-systemctl-show-StatusErrno-value-in-systemctl-status.patch b/0006-systemctl-show-StatusErrno-value-in-systemctl-status.patch new file mode 100644 index 00000000..b1fc0988 --- /dev/null +++ b/0006-systemctl-show-StatusErrno-value-in-systemctl-status.patch @@ -0,0 +1,37 @@ +Based on b4af5a803aa71a57733ca46fef29b7afb20a626c Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 7 Jul 2014 17:33:26 +0200 +Subject: [PATCH] systemctl: show StatusErrno value in "systemctl status" + +--- + src/systemctl/systemctl.c | 5 +++++ + 1 file changed, 5 insertions(+) + +--- src/systemctl/systemctl.c ++++ src/systemctl/systemctl.c 2014-07-08 10:57:30.170735691 +0000 +@@ -2710,6 +2710,7 @@ typedef struct UnitStatusInfo { + const char *status_text; + const char *pid_file; + bool running:1; ++ int status_errno; + + usec_t start_timestamp; + usec_t exit_timestamp; +@@ -2982,6 +2983,8 @@ static void print_status_info( + + if (i->status_text) + printf(" Status: \"%s\"\n", i->status_text); ++ if (i->status_errno > 0) ++ printf(" Error: %i (%s)\n", i->status_errno, strerror(i->status_errno)); + + if (i->control_group && + (i->main_pid > 0 || i->control_pid > 0 || cg_is_empty_recursive(SYSTEMD_CGROUP_CONTROLLER, i->control_group, false) == 0)) { +@@ -3203,6 +3206,8 @@ static int status_property(const char *n + i->exit_code = (int) j; + else if (streq(name, "ExecMainStatus")) + i->exit_status = (int) j; ++ else if (streq(name, "StatusErrno")) ++ i->status_errno = (int) j; + + break; + } diff --git a/0006-tmpfiles-don-t-do-automatic-cleanup-in-XDG_RUNTIME_D.patch b/0006-tmpfiles-don-t-do-automatic-cleanup-in-XDG_RUNTIME_D.patch new file mode 100644 index 00000000..8647f1e1 --- /dev/null +++ b/0006-tmpfiles-don-t-do-automatic-cleanup-in-XDG_RUNTIME_D.patch @@ -0,0 +1,26 @@ +Based on 6fc27667950fe153033f0f49cb5b57e8954c3e54 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 30 Jun 2014 19:06:18 +0200 +Subject: [PATCH] tmpfiles: don't do automatic cleanup in $XDG_RUNTIME_DIR + +Now that logind will clean up all IPC resources of a user we should +really consider $XDG_RUNTIME_DIR as just another kind of IPC with the +same life-cycle logic as the other IPC resources. This should be safe +now to do since every user gets his own $XDG_RUNTIME_DIR tmpfs instance +with a fixed size limit, so that flooding of it will more effectively be +averted. +--- + tmpfiles.d/systemd.conf | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- tmpfiles.d/systemd.conf ++++ tmpfiles.d/systemd.conf 2014-07-01 12:31:01.858735866 +0000 +@@ -7,7 +7,7 @@ + + # See tmpfiles.d(5) for details + +-d /run/user 0755 root root ~10d ++d /run/user 0755 root root - + F! /run/utmp 0664 root utmp - + + f /var/log/wtmp 0664 root utmp - diff --git a/0006-tty-ask-password-agent-Do-tell-what-directory-we-fai.patch b/0006-tty-ask-password-agent-Do-tell-what-directory-we-fai.patch new file mode 100644 index 00000000..aa77e4cc --- /dev/null +++ b/0006-tty-ask-password-agent-Do-tell-what-directory-we-fai.patch @@ -0,0 +1,26 @@ +From 267b3e41df5a2181f2911433539f81de2fa1511a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Cristian=20Rodr=C3=ADguez?= +Date: Thu, 29 May 2014 14:17:37 -0400 +Subject: [PATCH] tty-ask-password-agent: Do tell what directory we failed to + open + +--- + .../tty-ask-password-agent.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/tty-ask-password-agent/tty-ask-password-agent.c src/tty-ask-password-agent/tty-ask-password-agent.c +index 3203474..55a2215 100644 +--- src/tty-ask-password-agent/tty-ask-password-agent.c ++++ src/tty-ask-password-agent/tty-ask-password-agent.c +@@ -501,7 +501,7 @@ static int show_passwords(void) { + if (errno == ENOENT) + return 0; + +- log_error("opendir(): %m"); ++ log_error("opendir(/run/systemd/ask-password): %m"); + return -errno; + } + +-- +1.7.9.2 + diff --git a/0007-README-document-that-var-run-must-be-a-symlink-run.patch b/0007-README-document-that-var-run-must-be-a-symlink-run.patch new file mode 100644 index 00000000..4b8b4384 --- /dev/null +++ b/0007-README-document-that-var-run-must-be-a-symlink-run.patch @@ -0,0 +1,30 @@ +From 47bc23c18cbc87471dc832534c8565625e4a9d16 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 26 Feb 2014 02:54:37 +0100 +Subject: [PATCH] =?UTF-8?q?README:=20document=20that=20/var/run=20must=20be=20?= + =?UTF-8?q?a=20symlink=20=E2=86=92=20/run?= +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +--- + README | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git README README +index b918132..7a227e7 100644 +--- README ++++ README +@@ -190,6 +190,9 @@ WARNINGS: + about this, since this kind of file system setup is not really + supported anymore by the basic set of Linux OS components. + ++ systemd requires that the /run mount point exists. systemd also ++ requires that /var/run is a a symlink → /run. ++ + For more information on this issue consult + http://freedesktop.org/wiki/Software/systemd/separate-usr-is-broken + +-- +1.7.9.2 + diff --git a/0007-core-fix-a-potential-mem-leak.patch b/0007-core-fix-a-potential-mem-leak.patch new file mode 100644 index 00000000..03003901 --- /dev/null +++ b/0007-core-fix-a-potential-mem-leak.patch @@ -0,0 +1,25 @@ +Based on 4d5e13a125cf8d77d432225ab69826caa1d1cf59 Mon Sep 17 00:00:00 2001 +From: Thomas Hindoe Paaboel Andersen +Date: Sat, 13 Sep 2014 12:35:06 +0200 +Subject: [PATCH] core: fix a potential mem leak + +Found with Coverity. Fixes: CID#996438 +--- + src/core/load-fragment.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +--- src/core/load-fragment.c ++++ src/core/load-fragment.c 2014-09-16 10:35:13.354235607 +0000 +@@ -1294,8 +1294,11 @@ int config_parse_timer(const char *unit, + } + + v = new0(TimerValue, 1); +- if (!v) ++ if (!v) { ++ if (c) ++ free(c); + return log_oom(); ++ } + + v->base = b; + v->clock_id = id; diff --git a/0007-dbus-suppress-duplicate-and-misleading-messages.patch b/0007-dbus-suppress-duplicate-and-misleading-messages.patch new file mode 100644 index 00000000..c4051609 --- /dev/null +++ b/0007-dbus-suppress-duplicate-and-misleading-messages.patch @@ -0,0 +1,66 @@ +From fe7f06f142cf42928e419d8578afd75bf1439672 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Tue, 11 Mar 2014 04:10:19 +0100 +Subject: [PATCH] dbus: suppress duplicate and misleading messages + +When we try to send a signal on a connection we didn't hae the time to +process the Disconnected message yet, don't generate multiple warning +messages, but only a single debug message. + +https://bugs.freedesktop.org/show_bug.cgi?id=75874 +--- + src/core/dbus-manager.c | 7 +++++-- + src/core/dbus-unit.c | 12 ++---------- + 2 files changed, 7 insertions(+), 12 deletions(-) + +diff --git src/core/dbus-manager.c src/core/dbus-manager.c +index 34ef1f5..30f28b6 100644 +--- src/core/dbus-manager.c ++++ src/core/dbus-manager.c +@@ -1357,8 +1357,11 @@ static int reply_unit_file_changes_and_f + unsigned i; + int r; + +- if (n_changes > 0) +- bus_manager_foreach_client(m, send_unit_files_changed, NULL); ++ if (n_changes > 0) { ++ r = bus_manager_foreach_client(m, send_unit_files_changed, NULL); ++ if (r < 0) ++ log_debug("Failed to send UnitFilesChanged signal: %s", strerror(-r)); ++ } + + r = sd_bus_message_new_method_return(message, &reply); + if (r < 0) +diff --git src/core/dbus-unit.c src/core/dbus-unit.c +index 515ac8b..07e7f20 100644 +--- src/core/dbus-unit.c ++++ src/core/dbus-unit.c +@@ -638,21 +638,13 @@ static int send_changed_signal(sd_bus *bus, void *userdata) { + bus, p, + UNIT_VTABLE(u)->bus_interface, + NULL); +- if (r < 0) { +- log_warning("Failed to send out specific PropertiesChanged signal for %s: %s", u->id, strerror(-r)); ++ if (r < 0) + return r; +- } + +- r = sd_bus_emit_properties_changed_strv( ++ return sd_bus_emit_properties_changed_strv( + bus, p, + "org.freedesktop.systemd1.Unit", + NULL); +- if (r < 0) { +- log_warning("Failed to send out generic PropertiesChanged signal for %s: %s", u->id, strerror(-r)); +- return r; +- } +- +- return 0; + } + + void bus_unit_send_change_signal(Unit *u) { +-- +1.7.9.2 + +--- src/core/dbus-manager.c ++++ src/core/dbus-manager.c 2014-03-11 11:05:44.350235568 +0000 diff --git a/0007-drop_duplicates-copy-full-BindMount-struct.patch b/0007-drop_duplicates-copy-full-BindMount-struct.patch new file mode 100644 index 00000000..434f119d --- /dev/null +++ b/0007-drop_duplicates-copy-full-BindMount-struct.patch @@ -0,0 +1,31 @@ +From e2d7c1a0758ce80d7cb439745deefefdffd67655 Mon Sep 17 00:00:00 2001 +From: Ansgar Burchardt +Date: Sun, 27 Jul 2014 16:32:13 +0200 +Subject: [PATCH] drop_duplicates: copy full BindMount struct + +At least + + t->ignore = f->ignore; + +is missing here. Just copy the full struct to be sure. +--- + src/core/namespace.c | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git src/core/namespace.c src/core/namespace.c +index 5466b7b..fe95377 100644 +--- src/core/namespace.c ++++ src/core/namespace.c +@@ -124,8 +124,7 @@ static void drop_duplicates(BindMount *m, unsigned *n) { + if (previous && path_equal(f->path, previous->path)) + continue; + +- t->path = f->path; +- t->mode = f->mode; ++ *t = *f; + + previous = t; + +-- +1.7.9.2 + diff --git a/0007-hwdb-Update-database-of-Bluetooth-company-identifier.patch b/0007-hwdb-Update-database-of-Bluetooth-company-identifier.patch new file mode 100644 index 00000000..7b77e2ab --- /dev/null +++ b/0007-hwdb-Update-database-of-Bluetooth-company-identifier.patch @@ -0,0 +1,49 @@ +From 063e36db8aed7b54100b33089deb6d2e86d516b9 Mon Sep 17 00:00:00 2001 +From: Marcel Holtmann +Date: Thu, 3 Jul 2014 16:13:48 +0200 +Subject: [PATCH] hwdb: Update database of Bluetooth company identifiers + +--- + hwdb/20-bluetooth-vendor-product.hwdb | 26 +++++++++++++++++++++++++- + 1 file changed, 25 insertions(+), 1 deletion(-) + +diff --git hwdb/20-bluetooth-vendor-product.hwdb hwdb/20-bluetooth-vendor-product.hwdb +index 377748a..9f3136a 100644 +--- hwdb/20-bluetooth-vendor-product.hwdb ++++ hwdb/20-bluetooth-vendor-product.hwdb +@@ -1045,7 +1045,31 @@ bluetooth:v0159* + ID_VENDOR_FROM_DATABASE=ChefSteps, Inc. + + bluetooth:v015A* +- ID_VENDOR_FROM_DATABASE=micus AG ++ ID_VENDOR_FROM_DATABASE=micas AG + + bluetooth:v015B* + ID_VENDOR_FROM_DATABASE=Biomedical Research Ltd. ++ ++bluetooth:v015C* ++ ID_VENDOR_FROM_DATABASE=Pitius Tec S.L. ++ ++bluetooth:v015D* ++ ID_VENDOR_FROM_DATABASE=Estimote, Inc. ++ ++bluetooth:v015E* ++ ID_VENDOR_FROM_DATABASE=Unikey Technologies, Inc. ++ ++bluetooth:v015F* ++ ID_VENDOR_FROM_DATABASE=Timer Cap Co. ++ ++bluetooth:v0160* ++ ID_VENDOR_FROM_DATABASE=AwoX ++ ++bluetooth:v0161* ++ ID_VENDOR_FROM_DATABASE=yikes ++ ++bluetooth:v0162* ++ ID_VENDOR_FROM_DATABASE=MADSGlobal NZ Ltd. ++ ++bluetooth:v0163* ++ ID_VENDOR_FROM_DATABASE=PCH International +-- +1.7.9.2 + diff --git a/0007-hwdb-update.patch b/0007-hwdb-update.patch new file mode 100644 index 00000000..462cdb4a --- /dev/null +++ b/0007-hwdb-update.patch @@ -0,0 +1,1910 @@ +Based on bd64a88fb0478da2e93c363849b73aed8be36ae7 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Thu, 31 Jul 2014 23:06:04 +0200 +Subject: [PATCH] hwdb: update + +--- + 20-OUI.hwdb | 380 +++++++++++++++++++++++++++++++++++++++++++++-- + 20-pci-vendor-model.hwdb | 35 +++- + 20-usb-vendor-model.hwdb | 208 +++++++++++++++++++++++-- + 3 files changed, 586 insertions(+), 37 deletions(-) + +diff --git hwdb/20-OUI.hwdb hwdb/20-OUI.hwdb +index 97f1e6b..f9501be 100644 +--- hwdb/20-OUI.hwdb ++++ hwdb/20-OUI.hwdb +@@ -23288,7 +23288,7 @@ OUI:000CB1* + ID_OUI_FROM_DATABASE=Salland Engineering (Europe) BV + + OUI:000CB2* +- ID_OUI_FROM_DATABASE=Comstar Co., Ltd. ++ ID_OUI_FROM_DATABASE=UNION co., ltd. + + OUI:000CB3* + ID_OUI_FROM_DATABASE=ROUND Co.,Ltd. +@@ -23528,7 +23528,7 @@ OUI:000D01* + ID_OUI_FROM_DATABASE=P&E Microcomputer Systems, Inc. + + OUI:000D02* +- ID_OUI_FROM_DATABASE=NEC AccessTechnica, Ltd. ++ ID_OUI_FROM_DATABASE=NEC Platforms, Ltd. + + OUI:000D03* + ID_OUI_FROM_DATABASE=Matrics, Inc. +@@ -30311,7 +30311,7 @@ OUI:0015DF* + ID_OUI_FROM_DATABASE=Clivet S.p.A. + + OUI:0015E0* +- ID_OUI_FROM_DATABASE=ST-Ericsson ++ ID_OUI_FROM_DATABASE=Ericsson + + OUI:0015E1* + ID_OUI_FROM_DATABASE=Picochip Ltd +@@ -32375,7 +32375,7 @@ OUI:001893* + ID_OUI_FROM_DATABASE=SHENZHEN PHOTON BROADBAND TECHNOLOGY CO.,LTD + + OUI:001894* +- ID_OUI_FROM_DATABASE=zimocom ++ ID_OUI_FROM_DATABASE=NPCore, Inc. + + OUI:001895* + ID_OUI_FROM_DATABASE=Hansun Technologies Inc. +@@ -33887,7 +33887,7 @@ OUI:001A8B* + ID_OUI_FROM_DATABASE=CHUNIL ELECTRIC IND., CO. + + OUI:001A8C* +- ID_OUI_FROM_DATABASE=Astaro AG ++ ID_OUI_FROM_DATABASE=Sophos Ltd + + OUI:001A8D* + ID_OUI_FROM_DATABASE=AVECS Bergen GmbH +@@ -34652,7 +34652,7 @@ OUI:001B8A* + ID_OUI_FROM_DATABASE=2M Electronic A/S + + OUI:001B8B* +- ID_OUI_FROM_DATABASE=NEC AccessTechnica, Ltd. ++ ID_OUI_FROM_DATABASE=NEC Platforms, Ltd. + + OUI:001B8C* + ID_OUI_FROM_DATABASE=JMicron Technology Corp. +@@ -35066,7 +35066,7 @@ OUI:001C14* + ID_OUI_FROM_DATABASE=VMware, Inc + + OUI:001C15* +- ID_OUI_FROM_DATABASE=TXP Corporation ++ ID_OUI_FROM_DATABASE=iPhotonix LLC + + OUI:001C16* + ID_OUI_FROM_DATABASE=ThyssenKrupp Elevator +@@ -35975,7 +35975,7 @@ OUI:001D43* + ID_OUI_FROM_DATABASE=Shenzhen G-link Digital Technology Co., Ltd. + + OUI:001D44* +- ID_OUI_FROM_DATABASE=KROHNE ++ ID_OUI_FROM_DATABASE=KROHNE Messtechnik GmbH + + OUI:001D45* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. +@@ -36863,7 +36863,7 @@ OUI:001E6B* + ID_OUI_FROM_DATABASE=Cisco SPVTG + + OUI:001E6C* +- ID_OUI_FROM_DATABASE=Carbon Mountain LLC ++ ID_OUI_FROM_DATABASE=Opaque Systems + + OUI:001E6D* + ID_OUI_FROM_DATABASE=IT R&D Center +@@ -38471,7 +38471,7 @@ OUI:002084* + ID_OUI_FROM_DATABASE=OCE PRINTING SYSTEMS, GMBH + + OUI:002085* +- ID_OUI_FROM_DATABASE=EXIDE ELECTRONICS ++ ID_OUI_FROM_DATABASE=Eaton Corporation + + OUI:002086* + ID_OUI_FROM_DATABASE=MICROTECH ELECTRONICS LIMITED +@@ -44312,7 +44312,7 @@ OUI:003A9C* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + + OUI:003A9D* +- ID_OUI_FROM_DATABASE=NEC AccessTechnica, Ltd. ++ ID_OUI_FROM_DATABASE=NEC Platforms, Ltd. + + OUI:003AAF* + ID_OUI_FROM_DATABASE=BlueBit Ltd. +@@ -46394,7 +46394,7 @@ OUI:0060B8* + ID_OUI_FROM_DATABASE=CORELIS Inc. + + OUI:0060B9* +- ID_OUI_FROM_DATABASE=NEC Infrontia Corporation ++ ID_OUI_FROM_DATABASE=NEC Platforms, Ltd + + OUI:0060BA* + ID_OUI_FROM_DATABASE=SAHARA NETWORKS, INC. +@@ -49015,6 +49015,9 @@ OUI:00A1DE* + OUI:00A2DA* + ID_OUI_FROM_DATABASE=INAT GmbH + ++OUI:00A2F5* ++ ID_OUI_FROM_DATABASE=Guangzhou Yuanyun Network Technology Co.,Ltd ++ + OUI:00A2FF* + ID_OUI_FROM_DATABASE=abatec group AG + +@@ -49036,6 +49039,9 @@ OUI:00AA70* + OUI:00ACE0* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + ++OUI:00AEFA* ++ ID_OUI_FROM_DATABASE=Murata Manufacturing Co., Ltd. ++ + OUI:00B009* + ID_OUI_FROM_DATABASE=Grass Valley Group + +@@ -51613,6 +51619,9 @@ OUI:00F403* + OUI:00F4B9* + ID_OUI_FROM_DATABASE=Apple + ++OUI:00F76F* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:00F860* + ID_OUI_FROM_DATABASE=PT. Panggung Electric Citrabuana + +@@ -51844,6 +51853,9 @@ OUI:0494A1* + OUI:0498F3* + ID_OUI_FROM_DATABASE=ALPS Electric Co,. Ltd. + ++OUI:0499E6* ++ ID_OUI_FROM_DATABASE=Shenzhen Yoostar Technology Co., Ltd ++ + OUI:049C62* + ID_OUI_FROM_DATABASE=BMT Medical Technology s.r.o. + +@@ -52423,6 +52435,9 @@ OUI:0808C2* + OUI:0808EA* + ID_OUI_FROM_DATABASE=AMSC + ++OUI:0809B6* ++ ID_OUI_FROM_DATABASE=Masimo Corp ++ + OUI:080C0B* + ID_OUI_FROM_DATABASE=SysMik GmbH Dresden + +@@ -52438,6 +52453,9 @@ OUI:080EA8* + OUI:080FFA* + ID_OUI_FROM_DATABASE=KSP INC. + ++OUI:08115E* ++ ID_OUI_FROM_DATABASE=Bitel Co., Ltd. ++ + OUI:081196* + ID_OUI_FROM_DATABASE=Intel Corporate + +@@ -52597,6 +52615,9 @@ OUI:087D21* + OUI:088039* + ID_OUI_FROM_DATABASE=Cisco SPVTG + ++OUI:0881BC* ++ ID_OUI_FROM_DATABASE=HongKong Ipro Technology Co., Limited ++ + OUI:0881F4* + ID_OUI_FROM_DATABASE=Juniper Networks + +@@ -52693,6 +52714,9 @@ OUI:08E5DA* + OUI:08E672* + ID_OUI_FROM_DATABASE=JEBSEE ELECTRONICS CO.,LTD. + ++OUI:08E84F* ++ ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD ++ + OUI:08EA44* + ID_OUI_FROM_DATABASE=Aerohive Networks, Inc. + +@@ -52759,6 +52783,9 @@ OUI:0C17F1* + OUI:0C191F* + ID_OUI_FROM_DATABASE=Inform Electronik + ++OUI:0C1DAF* ++ ID_OUI_FROM_DATABASE=Beijing Xiaomi communications co.,ltd ++ + OUI:0C1DC2* + ID_OUI_FROM_DATABASE=SeAH Networks + +@@ -53080,6 +53107,9 @@ OUI:1001CA* + OUI:1005CA* + ID_OUI_FROM_DATABASE=Cisco + ++OUI:1008B1* ++ ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. ++ + OUI:10090C* + ID_OUI_FROM_DATABASE=Janome Sewing Machine Co., Ltd. + +@@ -53200,6 +53230,9 @@ OUI:104B46* + OUI:104D77* + ID_OUI_FROM_DATABASE=Innovative Computer Engineering + ++OUI:104E07* ++ ID_OUI_FROM_DATABASE=Shanghai Genvision Industries Co.,Ltd ++ + OUI:105172* + ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD + +@@ -53234,7 +53267,7 @@ OUI:1065CF* + ID_OUI_FROM_DATABASE=IQSIM + + OUI:106682* +- ID_OUI_FROM_DATABASE=NEC AccessTechnica, Ltd. ++ ID_OUI_FROM_DATABASE=NEC Platforms, Ltd. + + OUI:10683F* + ID_OUI_FROM_DATABASE=LG Electronics +@@ -53668,6 +53701,9 @@ OUI:14F42A* + OUI:14F65A* + ID_OUI_FROM_DATABASE=Xiaomi inc. + ++OUI:14F893* ++ ID_OUI_FROM_DATABASE=Wuhan FiberHome Digital Technology Co.,Ltd. ++ + OUI:14FEAF* + ID_OUI_FROM_DATABASE=SAGITTAR LIMITED + +@@ -54190,6 +54226,9 @@ OUI:1C7C45* + OUI:1C7CC7* + ID_OUI_FROM_DATABASE=Coriant GmbH + ++OUI:1C7E51* ++ ID_OUI_FROM_DATABASE=3bumen.com ++ + OUI:1C7EE5* + ID_OUI_FROM_DATABASE=D-Link International + +@@ -54220,6 +54259,9 @@ OUI:1C955D* + OUI:1C959F* + ID_OUI_FROM_DATABASE=Veethree Electronics And Marine LLC + ++OUI:1C965A* ++ ID_OUI_FROM_DATABASE=Weifang goertek Electronics CO.,LTD ++ + OUI:1C973D* + ID_OUI_FROM_DATABASE=PRICOM Design + +@@ -54229,6 +54271,9 @@ OUI:1C994C* + OUI:1C9C26* + ID_OUI_FROM_DATABASE=Zoovel Technologies + ++OUI:1C9ECB* ++ ID_OUI_FROM_DATABASE=Beijing Nari Smartchip Microelectronics Company Limited ++ + OUI:1CA2B1* + ID_OUI_FROM_DATABASE=ruwido austria gmbh + +@@ -54254,7 +54299,7 @@ OUI:1CB094* + ID_OUI_FROM_DATABASE=HTC Corporation + + OUI:1CB17F* +- ID_OUI_FROM_DATABASE=NEC AccessTechnica, Ltd. ++ ID_OUI_FROM_DATABASE=NEC Platforms, Ltd. + + OUI:1CB243* + ID_OUI_FROM_DATABASE=TDC A/S +@@ -54478,6 +54523,9 @@ OUI:2074CF* + OUI:207600* + ID_OUI_FROM_DATABASE=Actiontec Electronics, Inc + ++OUI:207693* ++ ID_OUI_FROM_DATABASE=Lenovo (Beijing) Limited. ++ + OUI:207C8F* + ID_OUI_FROM_DATABASE=Quanta Microsystems,Inc. + +@@ -54766,6 +54814,9 @@ OUI:249442* + OUI:249504* + ID_OUI_FROM_DATABASE=SFR + ++OUI:2497ED* ++ ID_OUI_FROM_DATABASE=Techvision Intelligent Technology Limited ++ + OUI:24A2E1* + ID_OUI_FROM_DATABASE=Apple, Inc + +@@ -55306,6 +55357,9 @@ OUI:2C27D7* + OUI:2C282D* + ID_OUI_FROM_DATABASE=BBK COMMUNICATIAO TECHNOLOGY CO.,LTD. + ++OUI:2C2997* ++ ID_OUI_FROM_DATABASE=Microsoft Corporation ++ + OUI:2C2D48* + ID_OUI_FROM_DATABASE=bct electronic GesmbH + +@@ -55327,6 +55381,9 @@ OUI:2C36F8* + OUI:2C3731* + ID_OUI_FROM_DATABASE=ShenZhen Yifang Digital Technology Co.,LTD + ++OUI:2C3796* ++ ID_OUI_FROM_DATABASE=CYBO CO.,LTD. ++ + OUI:2C3996* + ID_OUI_FROM_DATABASE=SAGEMCOM + +@@ -55390,6 +55447,9 @@ OUI:2C5D93* + OUI:2C5FF3* + ID_OUI_FROM_DATABASE=Pertronic Industries + ++OUI:2C600C* ++ ID_OUI_FROM_DATABASE=QUANTA COMPUTER INC. ++ + OUI:2C625A* + ID_OUI_FROM_DATABASE=Finest Security Systems Co., Ltd + +@@ -55549,12 +55609,18 @@ OUI:2CEDEB* + OUI:2CEE26* + ID_OUI_FROM_DATABASE=Petroleum Geo-Services + ++OUI:2CF0EE* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:2CF203* + ID_OUI_FROM_DATABASE=EMKO ELEKTRONIK SAN VE TIC AS + + OUI:2CF4C5* + ID_OUI_FROM_DATABASE=Avaya, Inc + ++OUI:2CF7F1* ++ ID_OUI_FROM_DATABASE=Seeed Technology Inc. ++ + OUI:2CFAA2* + ID_OUI_FROM_DATABASE=Alcatel-Lucent + +@@ -55570,6 +55636,9 @@ OUI:300D2A* + OUI:300ED5* + ID_OUI_FROM_DATABASE=Hon Hai Precision Ind.Co.Ltd + ++OUI:3010B3* ++ ID_OUI_FROM_DATABASE=Liteon Technology Corporation ++ + OUI:3010E4* + ID_OUI_FROM_DATABASE=Apple, Inc. + +@@ -55711,6 +55780,9 @@ OUI:307512* + OUI:30766F* + ID_OUI_FROM_DATABASE=LG Electronics + ++OUI:3077CB* ++ ID_OUI_FROM_DATABASE=Maike Industry(Shenzhen)CO.,LTD ++ + OUI:30786B* + ID_OUI_FROM_DATABASE=TIANJIN Golden Pentagon Electronics Co., Ltd. + +@@ -55831,6 +55903,9 @@ OUI:30F7D7* + OUI:30F9ED* + ID_OUI_FROM_DATABASE=Sony Corporation + ++OUI:30FAB7* ++ ID_OUI_FROM_DATABASE=Tunai Creative ++ + OUI:30FD11* + ID_OUI_FROM_DATABASE=MACROTECH (USA) INC. + +@@ -55909,6 +55984,9 @@ OUI:344B3D* + OUI:344B50* + ID_OUI_FROM_DATABASE=ZTE Corporation + ++OUI:344DEA* ++ ID_OUI_FROM_DATABASE=zte corporation ++ + OUI:344DF7* + ID_OUI_FROM_DATABASE=LG Electronics + +@@ -55942,6 +56020,9 @@ OUI:346178* + OUI:346288* + ID_OUI_FROM_DATABASE=Cisco + ++OUI:3464A9* ++ ID_OUI_FROM_DATABASE=Hewlett Packard ++ + OUI:34684A* + ID_OUI_FROM_DATABASE=Teraworks Co., Ltd. + +@@ -56152,6 +56233,9 @@ OUI:34E2FD* + OUI:34E42A* + ID_OUI_FROM_DATABASE=Automatic Bar Controls Inc. + ++OUI:34E6AD* ++ ID_OUI_FROM_DATABASE=Intel Corporate ++ + OUI:34EF44* + ID_OUI_FROM_DATABASE=2Wire + +@@ -56200,6 +56284,9 @@ OUI:380B40* + OUI:380DD4* + ID_OUI_FROM_DATABASE=Primax Electronics LTD. + ++OUI:380E7B* ++ ID_OUI_FROM_DATABASE=V.P.S. Thai Co., Ltd ++ + OUI:380F4A* + ID_OUI_FROM_DATABASE=Apple + +@@ -56989,6 +57076,9 @@ OUI:40984E* + OUI:40987B* + ID_OUI_FROM_DATABASE=Aisino Corporation + ++OUI:409B0D* ++ ID_OUI_FROM_DATABASE=Shenzhen Yourf Kwan Industrial Co., Ltd ++ + OUI:409FC7* + ID_OUI_FROM_DATABASE=BAEKCHUN I&C Co., Ltd. + +@@ -57367,6 +57457,9 @@ OUI:44C56F* + OUI:44C9A2* + ID_OUI_FROM_DATABASE=Greenwald Industries + ++OUI:44CE7D* ++ ID_OUI_FROM_DATABASE=SFR ++ + OUI:44D15E* + ID_OUI_FROM_DATABASE=Shanghai Kingto Information Technology Ltd + +@@ -57703,6 +57796,9 @@ OUI:4C1480* + OUI:4C14A3* + ID_OUI_FROM_DATABASE=TCL Technoly Electronics (Huizhou) Co., Ltd. + ++OUI:4C16F1* ++ ID_OUI_FROM_DATABASE=zte corporation ++ + OUI:4C17EB* + ID_OUI_FROM_DATABASE=SAGEMCOM + +@@ -57730,6 +57826,9 @@ OUI:4C26E7* + OUI:4C2C80* + ID_OUI_FROM_DATABASE=Beijing Skyway Technologies Co.,Ltd + ++OUI:4C2C83* ++ ID_OUI_FROM_DATABASE=Zhejiang KaNong Network Technology Co.,Ltd. ++ + OUI:4C2F9D* + ID_OUI_FROM_DATABASE=ICM Controls + +@@ -57754,6 +57853,9 @@ OUI:4C3B74* + OUI:4C3C16* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:4C48DA* ++ ID_OUI_FROM_DATABASE=Beijing Autelan Technology Co.,Ltd ++ + OUI:4C4B68* + ID_OUI_FROM_DATABASE=Mobile Device, Inc. + +@@ -57943,6 +58045,9 @@ OUI:4CDF3D* + OUI:4CE1BB* + ID_OUI_FROM_DATABASE=Zhuhai HiFocus Technology Co., Ltd. + ++OUI:4CE2F1* ++ ID_OUI_FROM_DATABASE=sclak srl ++ + OUI:4CE676* + ID_OUI_FROM_DATABASE=Buffalo Inc. + +@@ -58459,6 +58564,9 @@ OUI:549F35* + OUI:54A04F* + ID_OUI_FROM_DATABASE=t-mac Technologies Ltd + ++OUI:54A050* ++ ID_OUI_FROM_DATABASE=ASUSTek COMPUTER INC. ++ + OUI:54A31B* + ID_OUI_FROM_DATABASE=Shenzhen Linkworld Technology Co,.LTD + +@@ -58525,6 +58633,9 @@ OUI:54E3B0* + OUI:54E43A* + ID_OUI_FROM_DATABASE=Apple, Inc. + ++OUI:54E4BD* ++ ID_OUI_FROM_DATABASE=FN-LINK TECHNOLOGY LIMITED ++ + OUI:54E63F* + ID_OUI_FROM_DATABASE=ShenZhen LingKeWeiEr Technology Co., Ltd. + +@@ -58603,6 +58714,9 @@ OUI:581FAA* + OUI:581FEF* + ID_OUI_FROM_DATABASE=Tuttnaer LTD + ++OUI:582136* ++ ID_OUI_FROM_DATABASE=KMB systems, s.r.o. ++ + OUI:58238C* + ID_OUI_FROM_DATABASE=Technicolor CH USA + +@@ -58705,6 +58819,9 @@ OUI:587BE9* + OUI:587E61* + ID_OUI_FROM_DATABASE=Hisense Electric Co., Ltd + ++OUI:587FB7* ++ ID_OUI_FROM_DATABASE=SONAR INDUSTRIAL CO., LTD. ++ + OUI:587FC8* + ID_OUI_FROM_DATABASE=S2M + +@@ -58903,6 +59020,9 @@ OUI:5C260A* + OUI:5C2AEF* + ID_OUI_FROM_DATABASE=Open Access Pty Ltd + ++OUI:5C2BF5* ++ ID_OUI_FROM_DATABASE=Vivint ++ + OUI:5C2E59* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -59020,6 +59140,9 @@ OUI:5C95AE* + OUI:5C969D* + ID_OUI_FROM_DATABASE=Apple + ++OUI:5C97F3* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:5C9AD8* + ID_OUI_FROM_DATABASE=Fujitsu Limited + +@@ -59032,6 +59155,9 @@ OUI:5CA3EB* + OUI:5CA48A* + ID_OUI_FROM_DATABASE=Cisco + ++OUI:5CAAFD* ++ ID_OUI_FROM_DATABASE=Sonos, Inc. ++ + OUI:5CAC4C* + ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. + +@@ -59167,6 +59293,9 @@ OUI:600308* + OUI:600347* + ID_OUI_FROM_DATABASE=Billion Electric Co. Ltd. + ++OUI:600417* ++ ID_OUI_FROM_DATABASE=POSBANK CO.,LTD ++ + OUI:600F77* + ID_OUI_FROM_DATABASE=SilverPlus, Inc + +@@ -59407,6 +59536,9 @@ OUI:60C547* + OUI:60C5A8* + ID_OUI_FROM_DATABASE=Beijing LT Honway Technology Co.,Ltd + ++OUI:60C798* ++ ID_OUI_FROM_DATABASE=Verifone, Inc. ++ + OUI:60C980* + ID_OUI_FROM_DATABASE=Trymus + +@@ -59947,6 +60079,9 @@ OUI:6828BA* + OUI:682DDC* + ID_OUI_FROM_DATABASE=Wuhan Changjiang Electro-Communication Equipment CO.,LTD + ++OUI:6836B5* ++ ID_OUI_FROM_DATABASE=DriveScale, Inc. ++ + OUI:683B1E* + ID_OUI_FROM_DATABASE=Countwise LTD + +@@ -60007,6 +60142,9 @@ OUI:686E48* + OUI:687251* + ID_OUI_FROM_DATABASE=Ubiquiti Networks + ++OUI:6872DC* ++ ID_OUI_FROM_DATABASE=CETORY.TV Company Limited ++ + OUI:68764F* + ID_OUI_FROM_DATABASE=Sony Mobile Communications AB + +@@ -60097,6 +60235,9 @@ OUI:68AAD2* + OUI:68AB8A* + ID_OUI_FROM_DATABASE=RF IDeas + ++OUI:68AE20* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:68AF13* + ID_OUI_FROM_DATABASE=Futura Mobility + +@@ -60202,6 +60343,9 @@ OUI:6C0460* + OUI:6C09D6* + ID_OUI_FROM_DATABASE=Digiquest Electronics LTD + ++OUI:6C0B84* ++ ID_OUI_FROM_DATABASE=Universal Global Scientific Industrial Co.,Ltd. ++ + OUI:6C0E0D* + ID_OUI_FROM_DATABASE=Sony Ericsson Mobile Communications AB + +@@ -60268,6 +60412,9 @@ OUI:6C3E6D* + OUI:6C3E9C* + ID_OUI_FROM_DATABASE=KE Knestel Elektronik GmbH + ++OUI:6C4008* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:6C40C6* + ID_OUI_FROM_DATABASE=Nimbus Data Systems, Inc. + +@@ -60850,6 +60997,12 @@ OUI:70F927* + OUI:70F96D* + ID_OUI_FROM_DATABASE=Hangzhou H3C Technologies Co., Limited + ++OUI:70FC8C* ++ ID_OUI_FROM_DATABASE=OneAccess SA ++ ++OUI:70FF5C* ++ ID_OUI_FROM_DATABASE=Cheerzing Communication(Xiamen)Technology Co.,Ltd ++ + OUI:70FF76* + ID_OUI_FROM_DATABASE=Texas Instruments + +@@ -60967,6 +61120,9 @@ OUI:746F3D* + OUI:7472F2* + ID_OUI_FROM_DATABASE=Chipsip Technology Co., Ltd. + ++OUI:747548* ++ ID_OUI_FROM_DATABASE=Amazon Technologies Inc. ++ + OUI:747818* + ID_OUI_FROM_DATABASE=ServiceAssure + +@@ -61117,6 +61273,9 @@ OUI:74E537* + OUI:74E543* + ID_OUI_FROM_DATABASE=Liteon Technology Corporation + ++OUI:74E6E2* ++ ID_OUI_FROM_DATABASE=Dell Inc. ++ + OUI:74E7C6* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + +@@ -61921,6 +62080,9 @@ OUI:8005DF* + OUI:8007A2* + ID_OUI_FROM_DATABASE=Esson Technology Inc. + ++OUI:800902* ++ ID_OUI_FROM_DATABASE=Keysight Technologies, Inc. ++ + OUI:800A06* + ID_OUI_FROM_DATABASE=COMTEC co.,ltd + +@@ -61945,6 +62107,9 @@ OUI:8018A7* + OUI:801934* + ID_OUI_FROM_DATABASE=Intel Corporate + ++OUI:801967* ++ ID_OUI_FROM_DATABASE=Shanghai Reallytek Information Technology Co.,Ltd ++ + OUI:801DAA* + ID_OUI_FROM_DATABASE=Avaya Inc + +@@ -61972,6 +62137,9 @@ OUI:802FDE* + OUI:803457* + ID_OUI_FROM_DATABASE=OT Systems Limited + ++OUI:803773* ++ ID_OUI_FROM_DATABASE=Netgear Inc ++ + OUI:8038FD* + ID_OUI_FROM_DATABASE=LeapFrog Enterprises, Inc. + +@@ -62146,6 +62314,9 @@ OUI:80BAE6* + OUI:80BBEB* + ID_OUI_FROM_DATABASE=Satmap Systems Ltd + ++OUI:80BE05* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:80C16E* + ID_OUI_FROM_DATABASE=Hewlett Packard + +@@ -62236,6 +62407,9 @@ OUI:841715* + OUI:841766* + ID_OUI_FROM_DATABASE=Weifang GoerTek Electronics Co., Ltd + ++OUI:841826* ++ ID_OUI_FROM_DATABASE=Osram GmbH ++ + OUI:84183A* + ID_OUI_FROM_DATABASE=Ruckus Wireless + +@@ -62365,6 +62539,9 @@ OUI:84742A* + OUI:847616* + ID_OUI_FROM_DATABASE=Addat S.r.o. + ++OUI:84788B* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:8478AC* + ID_OUI_FROM_DATABASE=Cisco + +@@ -62506,6 +62683,9 @@ OUI:84E714* + OUI:84EA99* + ID_OUI_FROM_DATABASE=Vieworks + ++OUI:84EB18* ++ ID_OUI_FROM_DATABASE=Texas Instruments ++ + OUI:84ED33* + ID_OUI_FROM_DATABASE=BBMC Co.,Ltd + +@@ -62641,6 +62821,9 @@ OUI:88685C* + OUI:886B76* + ID_OUI_FROM_DATABASE=CHINA HOPEFUL GROUP HOPEFUL ELECTRIC CO.,LTD + ++OUI:88708C* ++ ID_OUI_FROM_DATABASE=Lenovo Mobile Communication Technology Ltd. ++ + OUI:887398* + ID_OUI_FROM_DATABASE=K2E Tekpoint + +@@ -62746,6 +62929,9 @@ OUI:88C626* + OUI:88C663* + ID_OUI_FROM_DATABASE=Apple + ++OUI:88C9D0* ++ ID_OUI_FROM_DATABASE=LG Electronics ++ + OUI:88CB87* + ID_OUI_FROM_DATABASE=Apple + +@@ -63082,6 +63268,9 @@ OUI:8CDE52* + OUI:8CDE99* + ID_OUI_FROM_DATABASE=Comlab Inc. + ++OUI:8CDF9D* ++ ID_OUI_FROM_DATABASE=NEC Corporation ++ + OUI:8CE081* + ID_OUI_FROM_DATABASE=zte corporation + +@@ -63133,6 +63322,12 @@ OUI:900D66* + OUI:900DCB* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + ++OUI:90179B* ++ ID_OUI_FROM_DATABASE=Nanomegas ++ ++OUI:9017AC* ++ ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD ++ + OUI:90185E* + ID_OUI_FROM_DATABASE=Apex Tool Group GmbH & Co OHG + +@@ -63166,12 +63361,18 @@ OUI:902083* + OUI:902155* + ID_OUI_FROM_DATABASE=HTC Corporation + ++OUI:902181* ++ ID_OUI_FROM_DATABASE=Shanghai Huaqin Telecom Technology Co.,Ltd ++ + OUI:9027E4* + ID_OUI_FROM_DATABASE=Apple + + OUI:902B34* + ID_OUI_FROM_DATABASE=GIGA-BYTE TECHNOLOGY CO.,LTD. + ++OUI:902CC7* ++ ID_OUI_FROM_DATABASE=C-MAX Asia Limited ++ + OUI:902E87* + ID_OUI_FROM_DATABASE=LabJack + +@@ -63304,6 +63505,9 @@ OUI:90840D* + OUI:9088A2* + ID_OUI_FROM_DATABASE=IONICS TECHNOLOGY ME LTDA + ++OUI:908C09* ++ ID_OUI_FROM_DATABASE=Total Phase ++ + OUI:908C44* + ID_OUI_FROM_DATABASE=H.K ZONGMU TECHNOLOGY CO., LTD. + +@@ -63337,6 +63541,9 @@ OUI:909916* + OUI:909DE0* + ID_OUI_FROM_DATABASE=Newland Design + Assoc. Inc. + ++OUI:909F33* ++ ID_OUI_FROM_DATABASE=EFM Networks ++ + OUI:909F43* + ID_OUI_FROM_DATABASE=Accutron Instruments Inc. + +@@ -63416,7 +63623,7 @@ OUI:90DA4E* + ID_OUI_FROM_DATABASE=AVANU + + OUI:90DA6A* +- ID_OUI_FROM_DATABASE=MCC System Co., Ltd. ++ ID_OUI_FROM_DATABASE=FOCUS H&S Co., Ltd. + + OUI:90DB46* + ID_OUI_FROM_DATABASE=E-LEAD ELECTRONIC CO., LTD +@@ -63580,6 +63787,9 @@ OUI:946269* + OUI:9463D1* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:9470D2* ++ ID_OUI_FROM_DATABASE=WINFIRM TECHNOLOGY ++ + OUI:9471AC* + ID_OUI_FROM_DATABASE=TCT Mobile Limited + +@@ -63646,6 +63856,9 @@ OUI:94AE61* + OUI:94AEE3* + ID_OUI_FROM_DATABASE=Belden Hirschmann Industries (Suzhou) Ltd. + ++OUI:94B40F* ++ ID_OUI_FROM_DATABASE=Aruba Networks ++ + OUI:94B8C5* + ID_OUI_FROM_DATABASE=RuggedCom Inc. + +@@ -63661,9 +63874,15 @@ OUI:94BA56* + OUI:94BF1E* + ID_OUI_FROM_DATABASE=eflow Inc. / Smart Device Planning and Development Division + ++OUI:94BF95* ++ ID_OUI_FROM_DATABASE=Shenzhen Coship Electronics Co., Ltd ++ + OUI:94C014* + ID_OUI_FROM_DATABASE=Sorter Sp. j. Konrad Grzeszczyk MichaA, Ziomek + ++OUI:94C038* ++ ID_OUI_FROM_DATABASE=Tallac Networks ++ + OUI:94C150* + ID_OUI_FROM_DATABASE=2Wire Inc + +@@ -63793,6 +64012,9 @@ OUI:980D2E* + OUI:981094* + ID_OUI_FROM_DATABASE=Shenzhen Vsun communication technology Co.,ltd + ++OUI:9816EC* ++ ID_OUI_FROM_DATABASE=IC Intracom ++ + OUI:98208E* + ID_OUI_FROM_DATABASE=Definium Technologies + +@@ -64724,7 +64946,7 @@ OUI:A40CC3* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + + OUI:A41242* +- ID_OUI_FROM_DATABASE=NEC AccessTechnica, Ltd. ++ ID_OUI_FROM_DATABASE=NEC Platforms, Ltd. + + OUI:A4134E* + ID_OUI_FROM_DATABASE=Luxul +@@ -64753,6 +64975,9 @@ OUI:A42305* + OUI:A424B3* + ID_OUI_FROM_DATABASE=FlatFrog Laboratories AB + ++OUI:A4251B* ++ ID_OUI_FROM_DATABASE=Avaya, Inc ++ + OUI:A42940* + ID_OUI_FROM_DATABASE=Shenzhen YOUHUA Technology Co., Ltd + +@@ -64783,6 +65008,9 @@ OUI:A4466B* + OUI:A446FA* + ID_OUI_FROM_DATABASE=AmTRAN Video Corporation + ++OUI:A44AD3* ++ ID_OUI_FROM_DATABASE=ST Electronics(Shanghai) Co.,Ltd ++ + OUI:A44B15* + ID_OUI_FROM_DATABASE=Sun Cupid Technology (HK) LTD + +@@ -64897,6 +65125,9 @@ OUI:A49F85* + OUI:A49F89* + ID_OUI_FROM_DATABASE=Shanghai Rui Rui Communication Technology Co.Ltd. + ++OUI:A4A1C2* ++ ID_OUI_FROM_DATABASE=Ericsson AB (EAB) ++ + OUI:A4A24A* + ID_OUI_FROM_DATABASE=Cisco SPVTG + +@@ -65209,6 +65440,9 @@ OUI:A8995C* + OUI:A89B10* + ID_OUI_FROM_DATABASE=inMotion Ltd. + ++OUI:A89DD2* ++ ID_OUI_FROM_DATABASE=Shanghai DareGlobal Technologies Co., Ltd ++ + OUI:A8A668* + ID_OUI_FROM_DATABASE=zte corporation + +@@ -65488,6 +65722,9 @@ OUI:AC8674* + OUI:AC867E* + ID_OUI_FROM_DATABASE=Create New Technology (HK) Limited Company + ++OUI:AC87A3* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:AC8ACD* + ID_OUI_FROM_DATABASE=ROGER D.Wensker, G.Wensker sp.j. + +@@ -65650,6 +65887,9 @@ OUI:ACF7F3* + OUI:ACF97E* + ID_OUI_FROM_DATABASE=ELESYS INC. + ++OUI:ACFDCE* ++ ID_OUI_FROM_DATABASE=Intel Corporate ++ + OUI:ACFDEC* + ID_OUI_FROM_DATABASE=Apple, Inc + +@@ -66496,6 +66736,9 @@ OUI:B8AD3E* + OUI:B8AE6E* + ID_OUI_FROM_DATABASE=Nintendo Co., Ltd. + ++OUI:B8AEED* ++ ID_OUI_FROM_DATABASE=Elitegroup Computer Systems Co., Ltd. ++ + OUI:B8AF67* + ID_OUI_FROM_DATABASE=Hewlett-Packard Company + +@@ -66562,6 +66805,9 @@ OUI:B8D06F* + OUI:B8D49D* + ID_OUI_FROM_DATABASE=M Seven System Ltd. + ++OUI:B8D812* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ + OUI:B8D9CE* + ID_OUI_FROM_DATABASE=Samsung Electronics + +@@ -66658,6 +66904,9 @@ OUI:BC15A6* + OUI:BC1665* + ID_OUI_FROM_DATABASE=Cisco + ++OUI:BC16F5* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:BC1A67* + ID_OUI_FROM_DATABASE=YF Technology Co., Ltd + +@@ -66766,6 +67015,9 @@ OUI:BC6A16* + OUI:BC6A29* + ID_OUI_FROM_DATABASE=Texas Instruments + ++OUI:BC6B4D* ++ ID_OUI_FROM_DATABASE=Alcatel-Lucent ++ + OUI:BC6E76* + ID_OUI_FROM_DATABASE=Green Energy Options Ltd + +@@ -66868,6 +67120,9 @@ OUI:BCC168* + OUI:BCC23A* + ID_OUI_FROM_DATABASE=Thomson Video Networks + ++OUI:BCC342* ++ ID_OUI_FROM_DATABASE=Panasonic System Networks Co., Ltd. ++ + OUI:BCC61A* + ID_OUI_FROM_DATABASE=SPECTRA EMBEDDED SYSTEMS + +@@ -66907,6 +67162,9 @@ OUI:BCE59F* + OUI:BCEA2B* + ID_OUI_FROM_DATABASE=CityCom GmbH + ++OUI:BCEAFA* ++ ID_OUI_FROM_DATABASE=Hewlett Packard ++ + OUI:BCEE7B* + ID_OUI_FROM_DATABASE=ASUSTek COMPUTER INC. + +@@ -66976,6 +67234,9 @@ OUI:C03580* + OUI:C035BD* + ID_OUI_FROM_DATABASE=Velocytech Aps + ++OUI:C03896* ++ ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. ++ + OUI:C038F9* + ID_OUI_FROM_DATABASE=Nokia Danmark A/S + +@@ -67087,6 +67348,9 @@ OUI:C09132* + OUI:C09134* + ID_OUI_FROM_DATABASE=ProCurve Networking by HP + ++OUI:C09879* ++ ID_OUI_FROM_DATABASE=Acer Inc. ++ + OUI:C098E5* + ID_OUI_FROM_DATABASE=University of Michigan + +@@ -67228,6 +67492,9 @@ OUI:C40528* + OUI:C4084A* + ID_OUI_FROM_DATABASE=Alcatel-Lucent + ++OUI:C40880* ++ ID_OUI_FROM_DATABASE=Shenzhen UTEPO Tech Co., Ltd. ++ + OUI:C40938* + ID_OUI_FROM_DATABASE=Fujian Star-net Communication Co., Ltd + +@@ -67675,6 +67942,9 @@ OUI:C88439* + OUI:C88447* + ID_OUI_FROM_DATABASE=Beautiful Enterprise Co., Ltd + ++OUI:C88550* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:C8873B* + ID_OUI_FROM_DATABASE=Net Optics + +@@ -67774,6 +68044,9 @@ OUI:C8CBB8* + OUI:C8CD72* + ID_OUI_FROM_DATABASE=SAGEMCOM + ++OUI:C8D019* ++ ID_OUI_FROM_DATABASE=Shanghai Tigercel Communication Technology Co.,Ltd ++ + OUI:C8D10B* + ID_OUI_FROM_DATABASE=Nokia Corporation + +@@ -67960,6 +68233,9 @@ OUI:CC3D82* + OUI:CC3E5F* + ID_OUI_FROM_DATABASE=Hewlett Packard + ++OUI:CC3F1D* ++ ID_OUI_FROM_DATABASE=Intesis Software SL ++ + OUI:CC43E3* + ID_OUI_FROM_DATABASE=Trump s.a. + +@@ -68668,6 +68944,9 @@ OUI:D45C70* + OUI:D45D42* + ID_OUI_FROM_DATABASE=Nokia Corporation + ++OUI:D46132* ++ ID_OUI_FROM_DATABASE=Pro Concept Manufacturer Co.,Ltd. ++ + OUI:D464F7* + ID_OUI_FROM_DATABASE=CHENGDU USEE DIGITAL TECHNOLOGY CO., LTD + +@@ -68728,6 +69007,9 @@ OUI:D48890* + OUI:D48CB5* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + ++OUI:D48DD9* ++ ID_OUI_FROM_DATABASE=Meld Technology, Inc ++ + OUI:D48F33* + ID_OUI_FROM_DATABASE=Microsoft Corporation + +@@ -68887,6 +69169,9 @@ OUI:D4F0B4* + OUI:D4F143* + ID_OUI_FROM_DATABASE=IPROAD.,Inc + ++OUI:D4F46F* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:D4F63F* + ID_OUI_FROM_DATABASE=IEA S.R.L. + +@@ -69058,6 +69343,9 @@ OUI:D87CDD* + OUI:D87EB1* + ID_OUI_FROM_DATABASE=x.o.ware, inc. + ++OUI:D88039* ++ ID_OUI_FROM_DATABASE=Microchip Technology Inc. ++ + OUI:D881CE* + ID_OUI_FROM_DATABASE=AHN INC. + +@@ -69121,6 +69409,9 @@ OUI:D8B12A* + OUI:D8B377* + ID_OUI_FROM_DATABASE=HTC Corporation + ++OUI:D8B6B7* ++ ID_OUI_FROM_DATABASE=Comtrend Corporation ++ + OUI:D8B6C1* + ID_OUI_FROM_DATABASE=NetworkAccountant, Inc. + +@@ -69214,6 +69505,9 @@ OUI:D8EE78* + OUI:D8F0F2* + ID_OUI_FROM_DATABASE=Zeebo Inc + ++OUI:D8FB11* ++ ID_OUI_FROM_DATABASE=AXACORE ++ + OUI:D8FC93* + ID_OUI_FROM_DATABASE=Intel Corporate + +@@ -69286,6 +69580,9 @@ OUI:DC2C26* + OUI:DC2E6A* + ID_OUI_FROM_DATABASE=HCT. Co., Ltd. + ++OUI:DC2F03* ++ ID_OUI_FROM_DATABASE=Step forward Group Co., Ltd. ++ + OUI:DC309C* + ID_OUI_FROM_DATABASE=Heyrex Limited + +@@ -69418,6 +69715,9 @@ OUI:DCC101* + OUI:DCC422* + ID_OUI_FROM_DATABASE=Systembase Limited + ++OUI:DCC622* ++ ID_OUI_FROM_DATABASE=BUHEUNG SYSTEM ++ + OUI:DCC793* + ID_OUI_FROM_DATABASE=Nokia Corporation + +@@ -69448,6 +69748,9 @@ OUI:DCD52A* + OUI:DCD87F* + ID_OUI_FROM_DATABASE=Shenzhen JoinCyber Telecom Equipment Ltd + ++OUI:DCDA4F* ++ ID_OUI_FROM_DATABASE=GET Technology,INC ++ + OUI:DCDECA* + ID_OUI_FROM_DATABASE=Akyllor + +@@ -69490,6 +69793,9 @@ OUI:E00B28* + OUI:E00C7F* + ID_OUI_FROM_DATABASE=Nintendo Co., Ltd. + ++OUI:E0107F* ++ ID_OUI_FROM_DATABASE=Ruckus Wireless ++ + OUI:E0143E* + ID_OUI_FROM_DATABASE=Modoosis Inc. + +@@ -69688,6 +69994,9 @@ OUI:E0AF4B* + OUI:E0B2F1* + ID_OUI_FROM_DATABASE=FN-LINK TECHNOLOGY LIMITED + ++OUI:E0B52D* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:E0B7B1* + ID_OUI_FROM_DATABASE=Pace plc + +@@ -69829,9 +70138,15 @@ OUI:E41289* + OUI:E41C4B* + ID_OUI_FROM_DATABASE=V2 TECHNOLOGY, INC. + ++OUI:E41D2D* ++ ID_OUI_FROM_DATABASE=Mellanox Technologies, Inc. ++ + OUI:E41F13* + ID_OUI_FROM_DATABASE=IBM Corp + ++OUI:E42354* ++ ID_OUI_FROM_DATABASE=SHENZHEN FUZHI SOFTWARE TECHNOLOGY CO.,LTD ++ + OUI:E425E7* + ID_OUI_FROM_DATABASE=Apple + +@@ -69961,6 +70276,9 @@ OUI:E48AD5* + OUI:E48B7F* + ID_OUI_FROM_DATABASE=Apple + ++OUI:E48C0F* ++ ID_OUI_FROM_DATABASE=Discovery Insure ++ + OUI:E49069* + ID_OUI_FROM_DATABASE=Rockwell Automation + +@@ -70111,6 +70429,9 @@ OUI:E8150E* + OUI:E817FC* + ID_OUI_FROM_DATABASE=NIFTY Corporation + ++OUI:E81863* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ + OUI:E82877* + ID_OUI_FROM_DATABASE=TMY Co., Ltd. + +@@ -70249,6 +70570,9 @@ OUI:E8944C* + OUI:E894F6* + ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. + ++OUI:E89606* ++ ID_OUI_FROM_DATABASE=testo Instruments (Shenzhen) Co., Ltd. ++ + OUI:E8995A* + ID_OUI_FROM_DATABASE=PiiGAB, Processinformation i Goteborg AB + +@@ -70396,6 +70720,9 @@ OUI:EC0ED6* + OUI:EC1120* + ID_OUI_FROM_DATABASE=FloDesign Wind Turbine Corporation + ++OUI:EC13B2* ++ ID_OUI_FROM_DATABASE=Netonix ++ + OUI:EC14F6* + ID_OUI_FROM_DATABASE=BioControl AS + +@@ -70729,6 +71056,9 @@ OUI:F03A4B* + OUI:F03A55* + ID_OUI_FROM_DATABASE=Omega Elektronik AS + ++OUI:F03D29* ++ ID_OUI_FROM_DATABASE=Actility ++ + OUI:F03FF8* + ID_OUI_FROM_DATABASE=R L Drake + +@@ -70801,6 +71131,9 @@ OUI:F07BCB* + OUI:F07D68* + ID_OUI_FROM_DATABASE=D-Link Corporation + ++OUI:F07F06* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:F07F0C* + ID_OUI_FROM_DATABASE=Leopold Kostal GmbH &Co. KG + +@@ -70843,6 +71176,9 @@ OUI:F09CBB* + OUI:F09CE9* + ID_OUI_FROM_DATABASE=Aerohive Networks Inc + ++OUI:F09E63* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:F0A764* + ID_OUI_FROM_DATABASE=GST Co., Ltd. + +@@ -71188,6 +71524,9 @@ OUI:F4B72A* + OUI:F4B7E2* + ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. + ++OUI:F4B85E* ++ ID_OUI_FROM_DATABASE=Texas INstruments ++ + OUI:F4BD7C* + ID_OUI_FROM_DATABASE=Chengdu jinshi communication Co., LTD + +@@ -71461,6 +71800,9 @@ OUI:F87B8C* + OUI:F8811A* + ID_OUI_FROM_DATABASE=OVERKIZ + ++OUI:F88479* ++ ID_OUI_FROM_DATABASE=Yaojin Technology(Shenzhen)Co.,Ltd ++ + OUI:F884F2* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -71599,6 +71941,9 @@ OUI:F8E7B5* + OUI:F8E811* + ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD + ++OUI:F8E903* ++ ID_OUI_FROM_DATABASE=D-Link International ++ + OUI:F8E968* + ID_OUI_FROM_DATABASE=Egker Kft. + +@@ -71782,6 +72127,9 @@ OUI:FC5B24* + OUI:FC5B26* + ID_OUI_FROM_DATABASE=MikroBits + ++OUI:FC5B39* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:FC6018* + ID_OUI_FROM_DATABASE=Zhejiang Kangtai Electric Co., Ltd. + +diff --git hwdb/20-pci-vendor-model.hwdb hwdb/20-pci-vendor-model.hwdb +index 77c727d..a6a2754 100644 +--- hwdb/20-pci-vendor-model.hwdb ++++ hwdb/20-pci-vendor-model.hwdb +@@ -32403,11 +32403,14 @@ pci:v00001131d00007146sv0000153Bsd00001155* + ID_MODEL_FROM_DATABASE=SAA7146 (Cinergy 1200 DVB-S) + + pci:v00001131d00007146sv0000153Bsd00001156* +- ID_MODEL_FROM_DATABASE=SAA7146 (Terratec Cynergy 1200C) ++ ID_MODEL_FROM_DATABASE=SAA7146 (Cinergy 1200 DVB-C) + + pci:v00001131d00007146sv0000153Bsd00001157* + ID_MODEL_FROM_DATABASE=SAA7146 (Cinergy 1200 DVB-T) + ++pci:v00001131d00007146sv0000153Bsd00001176* ++ ID_MODEL_FROM_DATABASE=SAA7146 (Cinergy 1200 DVB-C (MK3)) ++ + pci:v00001131d00007146sv00001894sd00000020* + ID_MODEL_FROM_DATABASE=SAA7146 (KNC One DVB-C V1.0) + +@@ -42846,7 +42849,7 @@ pci:v00001425d00005012* + ID_MODEL_FROM_DATABASE=T560-CR Unified Wire Ethernet Controller + + pci:v00001425d00005013* +- ID_MODEL_FROM_DATABASE=T580-CR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T580-CHR Unified Wire Ethernet Controller + + pci:v00001425d00005014* + ID_MODEL_FROM_DATABASE=T580-LP-SO-CR Unified Wire Ethernet Controller +@@ -42924,7 +42927,7 @@ pci:v00001425d00005412* + ID_MODEL_FROM_DATABASE=T560-CR Unified Wire Ethernet Controller + + pci:v00001425d00005413* +- ID_MODEL_FROM_DATABASE=T580-CR Unified Wire Ethernet Controller ++ ID_MODEL_FROM_DATABASE=T580-CHR Unified Wire Ethernet Controller + + pci:v00001425d00005414* + ID_MODEL_FROM_DATABASE=T580-LP-SO-CR Unified Wire Ethernet Controller +@@ -43002,7 +43005,7 @@ pci:v00001425d00005512* + ID_MODEL_FROM_DATABASE=T560-CR Unified Wire Storage Controller + + pci:v00001425d00005513* +- ID_MODEL_FROM_DATABASE=T580-CR Unified Wire Storage Controller ++ ID_MODEL_FROM_DATABASE=T580-CHR Unified Wire Storage Controller + + pci:v00001425d00005514* + ID_MODEL_FROM_DATABASE=T580-LP-SO-CR Unified Wire Storage Controller +@@ -43080,7 +43083,7 @@ pci:v00001425d00005612* + ID_MODEL_FROM_DATABASE=T560-CR Unified Wire Storage Controller + + pci:v00001425d00005613* +- ID_MODEL_FROM_DATABASE=T580-CR Unified Wire Storage Controller ++ ID_MODEL_FROM_DATABASE=T580-CHR Unified Wire Storage Controller + + pci:v00001425d00005614* + ID_MODEL_FROM_DATABASE=T580-LP-SO-CR Unified Wire Storage Controller +@@ -43236,7 +43239,7 @@ pci:v00001425d00005812* + ID_MODEL_FROM_DATABASE=T560-CR Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005813* +- ID_MODEL_FROM_DATABASE=T580-CR Unified Wire Ethernet Controller [VF] ++ ID_MODEL_FROM_DATABASE=T580-CHR Unified Wire Ethernet Controller [VF] + + pci:v00001425d00005814* + ID_MODEL_FROM_DATABASE=T580-LP-SO-CR Unified Wire Ethernet Controller [VF] +@@ -45887,6 +45890,9 @@ pci:v000014E4d00004359sv00001028sd00000011* + pci:v000014E4d00004359sv0000103Csd0000182C* + ID_MODEL_FROM_DATABASE=BCM43228 802.11a/b/g/n (BCM943228HM4L 802.11a/b/g/n 2x2 Wi-Fi Adapter) + ++pci:v000014E4d00004360* ++ ID_MODEL_FROM_DATABASE=BCM4360 802.11ac Wireless Network Adapter ++ + pci:v000014E4d00004365* + ID_MODEL_FROM_DATABASE=BCM43142 802.11b/g/n + +@@ -45896,6 +45902,9 @@ pci:v000014E4d00004365sv00001028sd00000016* + pci:v000014E4d000043A0* + ID_MODEL_FROM_DATABASE=BCM4360 802.11ac Wireless Network Adapter + ++pci:v000014E4d000043A9* ++ ID_MODEL_FROM_DATABASE=BCM43217 802.11b/g/n ++ + pci:v000014E4d000043B1* + ID_MODEL_FROM_DATABASE=BCM4352 802.11ac Wireless Network Adapter + +@@ -47886,7 +47895,10 @@ pci:v000015ADd00000774* + ID_MODEL_FROM_DATABASE=USB1.1 UHCI Controller + + pci:v000015ADd00000778* +- ID_MODEL_FROM_DATABASE=USB3 xHCI Controller ++ ID_MODEL_FROM_DATABASE=USB3 xHCI 0.96 Controller ++ ++pci:v000015ADd00000779* ++ ID_MODEL_FROM_DATABASE=USB3 xHCI 1.0 Controller + + pci:v000015ADd00000790* + ID_MODEL_FROM_DATABASE=PCI bridge +@@ -52490,6 +52502,9 @@ pci:v00001A29* + pci:v00001A29d00004338* + ID_MODEL_FROM_DATABASE=CP8 Content Processor ASIC + ++pci:v00001A29d00004E36* ++ ID_MODEL_FROM_DATABASE=NP6 Network Processor ++ + pci:v00001A2B* + ID_VENDOR_FROM_DATABASE=Ascom AG + +@@ -73781,6 +73796,9 @@ pci:v0000D161d00001405* + pci:v0000D161d00001420* + ID_MODEL_FROM_DATABASE=Wildcard TE420 quad-span T1/E1/J1 card 3.3V (PCI-Express) (5th gen) + ++pci:v0000D161d00001820* ++ ID_MODEL_FROM_DATABASE=Wildcard TE820 octal-span T1/E1/J1 card 3.3V (PCI-Express) ++ + pci:v0000D161d00002400* + ID_MODEL_FROM_DATABASE=Wildcard TDM2400P 24-port analog card + +@@ -73820,6 +73838,9 @@ pci:v0000D161d0000800A* + pci:v0000D161d0000800B* + ID_MODEL_FROM_DATABASE=Wildcard TE134 single-span T1/E1/J1 card + ++pci:v0000D161d0000800E* ++ ID_MODEL_FROM_DATABASE=Wildcard TE435P quad-span T1/E1/J1 card 3.3V (PCI-Express) ++ + pci:v0000D161d0000B410* + ID_MODEL_FROM_DATABASE=Wildcard B410 quad-BRI card + +diff --git hwdb/20-usb-vendor-model.hwdb hwdb/20-usb-vendor-model.hwdb +index 89cd5b1..ed6b2b1 100644 +--- hwdb/20-usb-vendor-model.hwdb ++++ hwdb/20-usb-vendor-model.hwdb +@@ -524,6 +524,9 @@ usb:v03F0p0317* + usb:v03F0p0324* + ID_MODEL_FROM_DATABASE=SK-2885 keyboard + ++usb:v03F0p034A* ++ ID_MODEL_FROM_DATABASE=Elite Keyboard ++ + usb:v03F0p0401* + ID_MODEL_FROM_DATABASE=ScanJet 5200c + +@@ -767,6 +770,9 @@ usb:v03F0p1317* + usb:v03F0p1327* + ID_MODEL_FROM_DATABASE=iLO Virtual Hub + ++usb:v03F0p134A* ++ ID_MODEL_FROM_DATABASE=Optical Mouse ++ + usb:v03F0p1405* + ID_MODEL_FROM_DATABASE=ScanJet 3670 + +@@ -2336,6 +2342,12 @@ usb:v0403pEF10* + usb:v0403pF070* + ID_MODEL_FROM_DATABASE=Serial Converter 422/485 [Vardaan VEUSB422R3] + ++usb:v0403pF0C8* ++ ID_MODEL_FROM_DATABASE=SPROG Decoder Programmer ++ ++usb:v0403pF0C9* ++ ID_MODEL_FROM_DATABASE=SPROG-DCC CAN-USB ++ + usb:v0403pF0E9* + ID_MODEL_FROM_DATABASE=Tagsys L-P101 + +@@ -2642,6 +2654,9 @@ usb:v0409p02B4* + usb:v0409p02B6* + ID_MODEL_FROM_DATABASE=Aterm WL300NU-GS 802.11n Wireless Adapter + ++usb:v0409p02BC* ++ ID_MODEL_FROM_DATABASE=Computer Monitor ++ + usb:v0409p0300* + ID_MODEL_FROM_DATABASE=LifeTouch Note + +@@ -5348,6 +5363,9 @@ usb:v0452p0050* + usb:v0452p0051* + ID_MODEL_FROM_DATABASE=Integrated Hub + ++usb:v0452p0100* ++ ID_MODEL_FROM_DATABASE=Control Panel for Leica TCS SP5 ++ + usb:v0453* + ID_VENDOR_FROM_DATABASE=CMD Technology + +@@ -8759,6 +8777,9 @@ usb:v0480pA009* + usb:v0480pA00D* + ID_MODEL_FROM_DATABASE=STOR.E BASICS 500GB + ++usb:v0480pB001* ++ ID_MODEL_FROM_DATABASE=Stor.E Partner ++ + usb:v0480pD010* + ID_MODEL_FROM_DATABASE=External Disk 3TB + +@@ -13100,9 +13121,15 @@ usb:v04D8p900A* + usb:v04D8pC001* + ID_MODEL_FROM_DATABASE=PicoLCD 20x4 + ++usb:v04D8pF4B5* ++ ID_MODEL_FROM_DATABASE=SmartScope ++ + usb:v04D8pF8DA* + ID_MODEL_FROM_DATABASE=Hughski Ltd. ColorHug + ++usb:v04D8pF91C* ++ ID_MODEL_FROM_DATABASE=SPROG IIv3 ++ + usb:v04D8pFAFF* + ID_MODEL_FROM_DATABASE=Dangerous Prototypes BusPirate v4 Bootloader mode + +@@ -13118,6 +13145,9 @@ usb:v04D8pFBBA* + usb:v04D8pFBBB* + ID_MODEL_FROM_DATABASE=DiscFerret Magnetic Disc Analyser (active mode) + ++usb:v04D8pFC1E* ++ ID_MODEL_FROM_DATABASE=Bachrus Speedometer Interface ++ + usb:v04D8pFC92* + ID_MODEL_FROM_DATABASE=Open Bench Logic Sniffer + +@@ -14432,6 +14462,9 @@ usb:v04F2p0403* + usb:v04F2p0418* + ID_MODEL_FROM_DATABASE=KU-0418 Tactical Pad + ++usb:v04F2p0618* ++ ID_MODEL_FROM_DATABASE=RG-0618U Wireless HID Receiver & KG-0609 Wireless Keyboard with Touchpad ++ + usb:v04F2p0760* + ID_MODEL_FROM_DATABASE=Acer KU-0760 Keyboard + +@@ -15336,7 +15369,7 @@ usb:v04FCp0171* + ID_MODEL_FROM_DATABASE=SPCA1527A/SPCA1528 SD card camera (Mass Storage mode) + + usb:v04FCp0201* +- ID_MODEL_FROM_DATABASE=RS232C Adapter ++ ID_MODEL_FROM_DATABASE=SPCP825 RS232C Adapter + + usb:v04FCp0232* + ID_MODEL_FROM_DATABASE=Fingerprint +@@ -29036,6 +29069,9 @@ usb:v08E3p0301* + usb:v08E4* + ID_VENDOR_FROM_DATABASE=Pioneer Corp. + ++usb:v08E4p0185* ++ ID_MODEL_FROM_DATABASE=DDJ-WeGO2 ++ + usb:v08E5* + ID_VENDOR_FROM_DATABASE=Litronic + +@@ -33080,6 +33116,9 @@ usb:v0B48p300D* + usb:v0B48p300E* + ID_MODEL_FROM_DATABASE=TT-connect C-2400 + ++usb:v0B48p3014* ++ ID_MODEL_FROM_DATABASE=TT-TVStick CT2-4400 ++ + usb:v0B49* + ID_VENDOR_FROM_DATABASE=ASCII Corp. + +@@ -34086,7 +34125,7 @@ usb:v0BC2p3101* + ID_MODEL_FROM_DATABASE=FreeAgent XTreme 640GB + + usb:v0BC2p3312* +- ID_MODEL_FROM_DATABASE=SRD00F2 [Expansion Desktop Drive 2TB] ++ ID_MODEL_FROM_DATABASE=SRD00F2 Expansion Desktop Drive (STBV) + + usb:v0BC2p3320* + ID_MODEL_FROM_DATABASE=SRD00F2 [Expansion Desktop Drive] +@@ -34109,6 +34148,9 @@ usb:v0BC2p5031* + usb:v0BC2p5070* + ID_MODEL_FROM_DATABASE=FreeAgent GoFlex Desk + ++usb:v0BC2p5071* ++ ID_MODEL_FROM_DATABASE=FreeAgent GoFlex Desk ++ + usb:v0BC2p50A1* + ID_MODEL_FROM_DATABASE=FreeAgent GoFlex Desk + +@@ -34133,6 +34175,9 @@ usb:v0BC2pA0A4* + usb:v0BC2pAB00* + ID_MODEL_FROM_DATABASE=Slim Portable Drive + ++usb:v0BC2pAB20* ++ ID_MODEL_FROM_DATABASE=Backup Plus Portable Drive ++ + usb:v0BC3* + ID_VENDOR_FROM_DATABASE=IPWireless, Inc. + +@@ -34301,6 +34346,9 @@ usb:v0BDAp0176* + usb:v0BDAp0178* + ID_MODEL_FROM_DATABASE=Mass Storage Device + ++usb:v0BDAp0179* ++ ID_MODEL_FROM_DATABASE=RTL8188ETV Wireless LAN 802.11n Network Adapter ++ + usb:v0BDAp0184* + ID_MODEL_FROM_DATABASE=RTS5182 Card Reader + +@@ -34322,6 +34370,9 @@ usb:v0BDAp2832* + usb:v0BDAp2838* + ID_MODEL_FROM_DATABASE=RTL2838 DVB-T + ++usb:v0BDAp5730* ++ ID_MODEL_FROM_DATABASE=HP 2.0MP High Definition Webcam ++ + usb:v0BDAp8150* + ID_MODEL_FROM_DATABASE=RTL8150 Fast Ethernet Adapter + +@@ -36012,11 +36063,53 @@ usb:v0CE5p0003* + ID_MODEL_FROM_DATABASE=Matrix + + usb:v0CE9* +- ID_VENDOR_FROM_DATABASE=pico Technology ++ ID_VENDOR_FROM_DATABASE=Pico Technology + + usb:v0CE9p1001* + ID_MODEL_FROM_DATABASE=PicoScope3000 series PC Oscilloscope + ++usb:v0CE9p1007* ++ ID_MODEL_FROM_DATABASE=PicoScope 2000 series PC Oscilloscope ++ ++usb:v0CE9p1008* ++ ID_MODEL_FROM_DATABASE=PicoScope 5000 series PC Oscilloscope ++ ++usb:v0CE9p1009* ++ ID_MODEL_FROM_DATABASE=PicoScope 4000 series PC Oscilloscope ++ ++usb:v0CE9p100E* ++ ID_MODEL_FROM_DATABASE=PicoScope 6000 series PC Oscilloscope ++ ++usb:v0CE9p1012* ++ ID_MODEL_FROM_DATABASE=PicoScope 3000A series PC Oscilloscope ++ ++usb:v0CE9p1016* ++ ID_MODEL_FROM_DATABASE=PicoScope 2000A series PC Oscilloscope ++ ++usb:v0CE9p1018* ++ ID_MODEL_FROM_DATABASE=PicoScope 4000A series PC Oscilloscope ++ ++usb:v0CE9p1200* ++ ID_MODEL_FROM_DATABASE=PicoScope 2000 series PC Oscilloscope ++ ++usb:v0CE9p1201* ++ ID_MODEL_FROM_DATABASE=PicoScope 3000 series PC Oscilloscope ++ ++usb:v0CE9p1202* ++ ID_MODEL_FROM_DATABASE=PicoScope 4000 series PC Oscilloscope ++ ++usb:v0CE9p1203* ++ ID_MODEL_FROM_DATABASE=PicoScope 5000 series PC Oscilloscope ++ ++usb:v0CE9p1204* ++ ID_MODEL_FROM_DATABASE=PicoScope 6000 series PC Oscilloscope ++ ++usb:v0CE9p1211* ++ ID_MODEL_FROM_DATABASE=PicoScope 3000 series PC Oscilloscope ++ ++usb:v0CE9p1212* ++ ID_MODEL_FROM_DATABASE=PicoScope 4000 series PC Oscilloscope ++ + usb:v0CF1* + ID_VENDOR_FROM_DATABASE=e-Conn Electronic Co., Ltd + +@@ -36998,6 +37091,9 @@ usb:v0DB0p1020* + usb:v0DB0p1967* + ID_MODEL_FROM_DATABASE=Bluetooth Dongle + ++usb:v0DB0p3713* ++ ID_MODEL_FROM_DATABASE=Primo 73 ++ + usb:v0DB0p3801* + ID_MODEL_FROM_DATABASE=Motorola Bluetooth 2.1+EDR Device + +@@ -37112,6 +37208,9 @@ usb:v0DB7p0002* + usb:v0DBA* + ID_VENDOR_FROM_DATABASE=Digidesign + ++usb:v0DBAp1000* ++ ID_MODEL_FROM_DATABASE=Mbox 1 [Mbox] ++ + usb:v0DBAp3000* + ID_MODEL_FROM_DATABASE=Mbox 2 + +@@ -37913,6 +38012,12 @@ usb:v0E6A* + usb:v0E6Ap0101* + ID_MODEL_FROM_DATABASE=MA100 [USB-UART Bridge IC] + ++usb:v0E6Ap030B* ++ ID_MODEL_FROM_DATABASE=Truly Ergonomic Computer Keyboard (Device Firmware Update mode) ++ ++usb:v0E6Ap030C* ++ ID_MODEL_FROM_DATABASE=Truly Ergonomic Computer Keyboard ++ + usb:v0E6Ap6001* + ID_MODEL_FROM_DATABASE=GEMBIRD Flexible keyboard KB-109F-B-DE + +@@ -39548,6 +39653,12 @@ usb:v1039p0824* + usb:v1039p2140* + ID_MODEL_FROM_DATABASE=dsl+ 1100 duo + ++usb:v103A* ++ ID_VENDOR_FROM_DATABASE=PSA ++ ++usb:v103ApF000* ++ ID_MODEL_FROM_DATABASE=Actia Evo XS ++ + usb:v103D* + ID_VENDOR_FROM_DATABASE=Stanton + +@@ -39692,6 +39803,9 @@ usb:v1050p0110* + usb:v1050p0111* + ID_MODEL_FROM_DATABASE=Yubikey NEO OTP+CCID + ++usb:v1050p0200* ++ ID_MODEL_FROM_DATABASE=U2F Gnubby ++ + usb:v1050p0211* + ID_MODEL_FROM_DATABASE=Gnubby + +@@ -39735,16 +39849,25 @@ usb:v1058p0704* + ID_MODEL_FROM_DATABASE=Passport External HDD + + usb:v1058p070A* +- ID_MODEL_FROM_DATABASE=My Passport Essential SE, My Passport for Mac (WDBAAB) ++ ID_MODEL_FROM_DATABASE=My Passport Essential (WDBAAA), My Passport for Mac (WDBAAB), My Passport Essential SE (WDBABM), My Passport SE for Mac (WDBABW) ++ ++usb:v1058p070B* ++ ID_MODEL_FROM_DATABASE=My Passport Elite (WDBAAC) ++ ++usb:v1058p070C* ++ ID_MODEL_FROM_DATABASE=My Passport Studio (WDBAAE) + + usb:v1058p071A* +- ID_MODEL_FROM_DATABASE=My Passport ++ ID_MODEL_FROM_DATABASE=My Passport Essential (WDBAAA) ++ ++usb:v1058p071D* ++ ID_MODEL_FROM_DATABASE=My Passport Studio (WDBALG) + + usb:v1058p0730* + ID_MODEL_FROM_DATABASE=My Passport Essential (WDBACY) + + usb:v1058p0740* +- ID_MODEL_FROM_DATABASE=My Passport ++ ID_MODEL_FROM_DATABASE=My Passport Essential (WDBACY) + + usb:v1058p0741* + ID_MODEL_FROM_DATABASE=My Passport Ultra +@@ -39756,22 +39879,22 @@ usb:v1058p0748* + ID_MODEL_FROM_DATABASE=My Passport (WDBKXH) + + usb:v1058p0810* +- ID_MODEL_FROM_DATABASE=My Passport Ultra ++ ID_MODEL_FROM_DATABASE=My Passport Ultra (WDBZFP) + + usb:v1058p0900* + ID_MODEL_FROM_DATABASE=MyBook Essential External HDD + + usb:v1058p0901* +- ID_MODEL_FROM_DATABASE=My Book Essential Edition (Green Ring) ++ ID_MODEL_FROM_DATABASE=My Book Essential Edition (Green Ring) (WDG1U) + + usb:v1058p0902* +- ID_MODEL_FROM_DATABASE=My Book Pro Edition ++ ID_MODEL_FROM_DATABASE=My Book Pro Edition (WDG1T) + + usb:v1058p0903* + ID_MODEL_FROM_DATABASE=My Book Premium Edition + + usb:v1058p0910* +- ID_MODEL_FROM_DATABASE=MyBook Essential External HDD ++ ID_MODEL_FROM_DATABASE=My Book Essential Edition (Green Ring) (WDG1U) + + usb:v1058p1001* + ID_MODEL_FROM_DATABASE=Elements Desktop (WDE1U) +@@ -39786,7 +39909,7 @@ usb:v1058p1021* + ID_MODEL_FROM_DATABASE=Elements Desktop (WDBAAU) + + usb:v1058p1023* +- ID_MODEL_FROM_DATABASE=Elements SE ++ ID_MODEL_FROM_DATABASE=Elements SE Portable (WDBABV) + + usb:v1058p1048* + ID_MODEL_FROM_DATABASE=Elements Portable (WDBU6Y) +@@ -39809,11 +39932,23 @@ usb:v1058p1104* + usb:v1058p1105* + ID_MODEL_FROM_DATABASE=My Book Studio II + ++usb:v1058p1110* ++ ID_MODEL_FROM_DATABASE=My Book Essential (WDBAAF), My Book for Mac (WDBAAG) ++ ++usb:v1058p1111* ++ ID_MODEL_FROM_DATABASE=My Book Elite (WDBAAH) ++ ++usb:v1058p1112* ++ ID_MODEL_FROM_DATABASE=My Book Studio (WDBAAJ), My Book Studio LX (WDBACH) ++ + usb:v1058p1123* +- ID_MODEL_FROM_DATABASE=My Book 3.0 ++ ID_MODEL_FROM_DATABASE=My Book 3.0 (WDBABP) ++ ++usb:v1058p1130* ++ ID_MODEL_FROM_DATABASE=My Book Essential (WDBACW) + + usb:v1058p1140* +- ID_MODEL_FROM_DATABASE=My Book Essential USB3.0 ++ ID_MODEL_FROM_DATABASE=My Book Essential (WDBACW) + + usb:v1059* + ID_VENDOR_FROM_DATABASE=Giesecke & Devrient GmbH +@@ -42098,6 +42233,12 @@ usb:v132Bp2045* + usb:v132Bp2049* + ID_MODEL_FROM_DATABASE=Magicolor 2490MF + ++usb:v133E* ++ ID_VENDOR_FROM_DATABASE=Kemper Digital GmbH ++ ++usb:v133Ep0815* ++ ID_MODEL_FROM_DATABASE=Virus TI Desktop ++ + usb:v1342* + ID_VENDOR_FROM_DATABASE=Mobility + +@@ -42203,6 +42344,9 @@ usb:v134E* + usb:v1357* + ID_VENDOR_FROM_DATABASE=P&E Microcomputer Systems + ++usb:v1357p0089* ++ ID_MODEL_FROM_DATABASE=OpenSDA - CDC Serial Port ++ + usb:v1357p0503* + ID_MODEL_FROM_DATABASE=USB-ML-12 HCS08/HCS12 Multilink + +@@ -42213,7 +42357,7 @@ usb:v1366* + ID_VENDOR_FROM_DATABASE=SEGGER + + usb:v1366p0101* +- ID_MODEL_FROM_DATABASE=J-Link ARM ++ ID_MODEL_FROM_DATABASE=J-Link PLUS + + usb:v136B* + ID_VENDOR_FROM_DATABASE=STEC +@@ -42311,6 +42455,9 @@ usb:v138Ap003C* + usb:v138Ap003D* + ID_MODEL_FROM_DATABASE=VFS491 + ++usb:v138Ap003F* ++ ID_MODEL_FROM_DATABASE=VFS495 Fingerprint Reader ++ + usb:v138Ap0050* + ID_MODEL_FROM_DATABASE=Swipe Fingerprint Sensor + +@@ -42647,6 +42794,9 @@ usb:v13D3p5122* + usb:v13D3p5126* + ID_MODEL_FROM_DATABASE=PC Cam + ++usb:v13D3p5130* ++ ID_MODEL_FROM_DATABASE=Integrated Webcam ++ + usb:v13D3p5702* + ID_MODEL_FROM_DATABASE=UVC VGA Webcam + +@@ -43232,6 +43382,9 @@ usb:v1493p0019* + usb:v1493p001A* + ID_MODEL_FROM_DATABASE=Colibri [Ambit2 S] + ++usb:v1493p001D* ++ ID_MODEL_FROM_DATABASE=Greentit [Ambit2 R] ++ + usb:v1497* + ID_VENDOR_FROM_DATABASE=Panstrong Company Ltd. + +@@ -49640,12 +49793,39 @@ usb:v2478* + usb:v2478p2008* + ID_MODEL_FROM_DATABASE=U209-000-R Serial Port + ++usb:v249C* ++ ID_VENDOR_FROM_DATABASE=M2Tech s.r.l. ++ + usb:v2632* + ID_VENDOR_FROM_DATABASE=TwinMOS + + usb:v2632p3209* + ID_MODEL_FROM_DATABASE=7-in-1 Card Reader + ++usb:v2639* ++ ID_VENDOR_FROM_DATABASE=Xsens ++ ++usb:v2639p0001* ++ ID_MODEL_FROM_DATABASE=MTi-10 IMU ++ ++usb:v2639p0002* ++ ID_MODEL_FROM_DATABASE=MTi-20 VRU ++ ++usb:v2639p0003* ++ ID_MODEL_FROM_DATABASE=MTi-30 AHRS ++ ++usb:v2639p0011* ++ ID_MODEL_FROM_DATABASE=MTi-100 IMU ++ ++usb:v2639p0012* ++ ID_MODEL_FROM_DATABASE=MTi-200 VRU ++ ++usb:v2639p0013* ++ ID_MODEL_FROM_DATABASE=MTi-300 AHRS ++ ++usb:v2639p0017* ++ ID_MODEL_FROM_DATABASE=MTi-G-700 GPS INS ++ + usb:v2650* + ID_VENDOR_FROM_DATABASE=Electronics For Imaging, Inc. [hex] + +-- +1.7.9.2 + diff --git a/0007-journal-forget-file-after-encountering-an-error.patch b/0007-journal-forget-file-after-encountering-an-error.patch new file mode 100644 index 00000000..e195e6bf --- /dev/null +++ b/0007-journal-forget-file-after-encountering-an-error.patch @@ -0,0 +1,74 @@ +From a9a245c128af6c0418085062c60251bc51fa4a94 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Thu, 27 Feb 2014 00:11:54 -0500 +Subject: [PATCH] journal: forget file after encountering an error + +If we encounter an inconsistency in a file, let's just +ignore it. Otherwise, after previous patch, we would try, +and fail, to use this file in every invocation of sd_journal_next +or sd_journal_previous that happens afterwards. +--- + src/journal/sd-journal.c | 16 ++++++++++++---- + 1 file changed, 12 insertions(+), 4 deletions(-) + +diff --git src/journal/sd-journal.c src/journal/sd-journal.c +index ef455e9..b54bc21 100644 +--- src/journal/sd-journal.c ++++ src/journal/sd-journal.c +@@ -51,6 +51,8 @@ + + #define DEFAULT_DATA_THRESHOLD (64*1024) + ++static void remove_file_real(sd_journal *j, JournalFile *f); ++ + static bool journal_pid_changed(sd_journal *j) { + assert(j); + +@@ -885,6 +887,7 @@ static int real_journal_next(sd_journal *j, direction_t direction) { + r = next_beyond_location(j, f, direction, &o, &p); + if (r < 0) { + log_debug("Can't iterate through %s, ignoring: %s", f->path, strerror(-r)); ++ remove_file_real(j, f); + continue; + } else if (r == 0) + continue; +@@ -1339,7 +1342,7 @@ static int add_file(sd_journal *j, const char *prefix, const char *filename) { + } + + static int remove_file(sd_journal *j, const char *prefix, const char *filename) { +- char *path; ++ _cleanup_free_ char *path; + JournalFile *f; + + assert(j); +@@ -1351,10 +1354,17 @@ static int remove_file(sd_journal *j, const char *prefix, const char *filename) + return -ENOMEM; + + f = hashmap_get(j->files, path); +- free(path); + if (!f) + return 0; + ++ remove_file_real(j, f); ++ return 0; ++} ++ ++static void remove_file_real(sd_journal *j, JournalFile *f) { ++ assert(j); ++ assert(f); ++ + hashmap_remove(j->files, f->path); + + log_debug("File %s removed.", f->path); +@@ -1372,8 +1382,6 @@ static int remove_file(sd_journal *j, const char *prefix, const char *filename) + journal_file_close(f); + + j->current_invalidate_counter ++; +- +- return 0; + } + + static int add_directory(sd_journal *j, const char *prefix, const char *dirname) { +-- +1.7.9.2 + diff --git a/0007-journald-also-check-journal-file-size-to-deduce-if-i.patch b/0007-journald-also-check-journal-file-size-to-deduce-if-i.patch new file mode 100644 index 00000000..f2409242 --- /dev/null +++ b/0007-journald-also-check-journal-file-size-to-deduce-if-i.patch @@ -0,0 +1,55 @@ +From 332076b45b8a78f018ade2dfdc7e4279a56d49cc Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 3 Nov 2014 23:10:21 +0100 +Subject: [PATCH] journald: also check journal file size to deduce if it is + empty + +--- + src/journal/journal-vacuum.c | 22 +++++++++++++++------- + 1 file changed, 15 insertions(+), 7 deletions(-) + +diff --git src/journal/journal-vacuum.c src/journal/journal-vacuum.c +index dbf5d22..d141fe0 100644 +--- src/journal/journal-vacuum.c ++++ src/journal/journal-vacuum.c +@@ -121,22 +121,30 @@ static void patch_realtime( + } + + static int journal_file_empty(int dir_fd, const char *name) { +- int r; +- le64_t n_entries; + _cleanup_close_ int fd; ++ struct stat st; ++ le64_t n_entries; ++ ssize_t n; + + fd = openat(dir_fd, name, O_RDONLY|O_CLOEXEC|O_NOFOLLOW|O_NONBLOCK); + if (fd < 0) + return -errno; + +- if (lseek(fd, offsetof(Header, n_entries), SEEK_SET) < 0) ++ if (fstat(fd, &st) < 0) + return -errno; + +- r = read(fd, &n_entries, sizeof(n_entries)); +- if (r != sizeof(n_entries)) +- return r == 0 ? -EINVAL : -errno; ++ /* If an offline file doesn't even have a header we consider it empty */ ++ if (st.st_size < (off_t) sizeof(Header)) ++ return 1; ++ ++ /* If the number of entries is empty, we consider it empty, too */ ++ n = pread(fd, &n_entries, sizeof(n_entries), offsetof(Header, n_entries)); ++ if (n < 0) ++ return -errno; ++ if (n != sizeof(n_entries)) ++ return -EIO; + +- return le64toh(n_entries) == 0; ++ return le64toh(n_entries) <= 0; + } + + int journal_directory_vacuum( +-- +1.7.9.2 + diff --git a/0007-journald-also-increase-the-SendBuffer-of-dev-log-to-.patch b/0007-journald-also-increase-the-SendBuffer-of-dev-log-to-.patch new file mode 100644 index 00000000..54b97960 --- /dev/null +++ b/0007-journald-also-increase-the-SendBuffer-of-dev-log-to-.patch @@ -0,0 +1,23 @@ +Based on 5e8b767df6e18444d5aff2987b5e5603361ed528 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 13 Aug 2014 18:53:05 +0200 +Subject: [PATCH] journald: also increase the SendBuffer of /dev/log to 8M + +http://lists.freedesktop.org/archives/systemd-devel/2014-August/021825.html +--- + units/systemd-journald.socket | 6 ++++++ + 1 file changed, 6 insertions(+) + +--- units/systemd-journald.socket ++++ units/systemd-journald.socket 2014-08-22 14:31:11.022236471 +0000 +@@ -23,4 +23,10 @@ ListenDatagram=/dev/log + SocketMode=0666 + PassCredentials=yes + PassSecurity=yes ++ ++# Increase both the send and receive buffer, so that things don't ++# block early. Note that journald internally uses the this socket both ++# for receiving syslog messages, and for forwarding them to any other ++# syslog, hence we bump both values. + ReceiveBuffer=8M ++SendBuffer=8M diff --git a/0007-keyboard-add-Plantronics-.Audio-mute-button.patch b/0007-keyboard-add-Plantronics-.Audio-mute-button.patch new file mode 100644 index 00000000..53c701bd --- /dev/null +++ b/0007-keyboard-add-Plantronics-.Audio-mute-button.patch @@ -0,0 +1,32 @@ +From 9e3dbf6b2b99d0e16989d9cedb458729db5a60c3 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sun, 1 Jun 2014 14:01:23 -0400 +Subject: [PATCH] keyboard: add Plantronics .Audio mute button + +https://bugs.freedesktop.org/show_bug.cgi?id=79495 +--- + hwdb/60-keyboard.hwdb | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index 05e6a04..d053766 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -866,6 +866,14 @@ keyboard:dmi:bvn*:bvr*:bd*:svnOQO*Inc.*:pnOQO*Model*2*:pvr* + KEYBOARD_KEY_f3=volumeup + + ########################################################### ++# Plantronics ++########################################################### ++ ++# Plantronics .Audio 626 DSP ++keyboard:usb:v047fpC006* ++ KEYBOARD_KEY_b002f=f20 # Microphone mute button; should be micmute ++ ++########################################################### + # Quanta + ########################################################### + +-- +1.7.9.2 + diff --git a/0007-libudev-monitor-warn-if-we-fail-to-request-SO_PASSCR.patch b/0007-libudev-monitor-warn-if-we-fail-to-request-SO_PASSCR.patch new file mode 100644 index 00000000..15857575 --- /dev/null +++ b/0007-libudev-monitor-warn-if-we-fail-to-request-SO_PASSCR.patch @@ -0,0 +1,29 @@ +From 9dedfe7f667a8cb22ba85d0223556c69c4fd0e9a Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Thu, 18 Sep 2014 09:20:46 +0200 +Subject: [PATCH] libudev: monitor - warn if we fail to request SO_PASSCRED + +The function still succeeds, so there is no functional change. This fixes CID #996288. +--- + src/libudev/libudev-monitor.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git src/libudev/libudev-monitor.c src/libudev/libudev-monitor.c +index 186e5e1..59698b8 100644 +--- src/libudev/libudev-monitor.c ++++ src/libudev/libudev-monitor.c +@@ -412,7 +412,10 @@ _public_ int udev_monitor_enable_receiving(struct udev_monitor *udev_monitor) + } + + /* enable receiving of sender credentials */ +- setsockopt(udev_monitor->sock, SOL_SOCKET, SO_PASSCRED, &on, sizeof(on)); ++ err = setsockopt(udev_monitor->sock, SOL_SOCKET, SO_PASSCRED, &on, sizeof(on)); ++ if (err < 0) ++ udev_err(udev_monitor->udev, "setting SO_PASSCRED failed: %m\n"); ++ + return 0; + } + +-- +1.7.9.2 + diff --git a/0007-logind-fix-Display-property-of-user-objects.patch b/0007-logind-fix-Display-property-of-user-objects.patch new file mode 100644 index 00000000..8fbbbeac --- /dev/null +++ b/0007-logind-fix-Display-property-of-user-objects.patch @@ -0,0 +1,147 @@ +From 952d32609f9bceee444fa2690afb4d28539b4b92 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 19 May 2014 09:03:20 +0900 +Subject: [PATCH] logind: fix Display property of user objects + +When we dropped support for creating a per-user to the "main" X11 +display we stopped returning useful data in the "Display" user property. +With this change this is fixed and we again expose an appropriate +(graphical session) in the property that is useful as the "main" one, if +one is needed. +--- + src/login/logind-session.c | 8 ++++++-- + src/login/logind-session.h | 2 ++ + src/login/logind-user-dbus.c | 2 +- + src/login/logind-user.c | 37 +++++++++++++++++++++++++++++++++++++ + src/login/logind-user.h | 1 + + 5 files changed, 47 insertions(+), 3 deletions(-) + +diff --git src/login/logind-session.c src/login/logind-session.c +index 4fb229e..9a54101 100644 +--- src/login/logind-session.c ++++ src/login/logind-session.c +@@ -545,6 +545,8 @@ int session_start(Session *s) { + + s->started = true; + ++ user_elect_display(s->user); ++ + /* Save data */ + session_save(s); + user_save(s->user); +@@ -553,7 +555,7 @@ int session_start(Session *s) { + + /* Send signals */ + session_send_signal(s, true); +- user_send_changed(s->user, "Sessions", NULL); ++ user_send_changed(s->user, "Sessions", "Display", NULL); + if (s->seat) { + if (s->seat->active == s) + seat_send_changed(s->seat, "Sessions", "ActiveSession", NULL); +@@ -612,6 +614,8 @@ int session_stop(Session *s, bool force) { + + s->stopping = true; + ++ user_elect_display(s->user); ++ + session_save(s); + user_save(s->user); + +@@ -660,7 +664,7 @@ int session_finalize(Session *s) { + } + + user_save(s->user); +- user_send_changed(s->user, "Sessions", NULL); ++ user_send_changed(s->user, "Sessions", "Display", NULL); + + return r; + } +diff --git src/login/logind-session.h src/login/logind-session.h +index f78f309..81957df 100644 +--- src/login/logind-session.h ++++ src/login/logind-session.h +@@ -60,6 +60,8 @@ typedef enum SessionType { + _SESSION_TYPE_INVALID = -1 + } SessionType; + ++#define SESSION_TYPE_IS_GRAPHICAL(type) IN_SET(type, SESSION_X11, SESSION_WAYLAND, SESSION_MIR) ++ + enum KillWho { + KILL_LEADER, + KILL_ALL, +diff --git src/login/logind-user-dbus.c src/login/logind-user-dbus.c +index 6266ccb..51793f6 100644 +--- src/login/logind-user-dbus.c ++++ src/login/logind-user-dbus.c +@@ -220,7 +220,7 @@ const sd_bus_vtable user_vtable[] = { + SD_BUS_PROPERTY("RuntimePath", "s", NULL, offsetof(User, runtime_path), SD_BUS_VTABLE_PROPERTY_CONST), + SD_BUS_PROPERTY("Service", "s", NULL, offsetof(User, service), SD_BUS_VTABLE_PROPERTY_CONST), + SD_BUS_PROPERTY("Slice", "s", NULL, offsetof(User, slice), SD_BUS_VTABLE_PROPERTY_CONST), +- SD_BUS_PROPERTY("Display", "(so)", property_get_display, 0, SD_BUS_VTABLE_PROPERTY_CONST), ++ SD_BUS_PROPERTY("Display", "(so)", property_get_display, 0, SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), + SD_BUS_PROPERTY("State", "s", property_get_state, 0, 0), + SD_BUS_PROPERTY("Sessions", "a(so)", property_get_sessions, 0, SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), + SD_BUS_PROPERTY("IdleHint", "b", property_get_idle_hint, 0, SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), +diff --git src/login/logind-user.c src/login/logind-user.c +index 5fffa65..fdbccb3 100644 +--- src/login/logind-user.c ++++ src/login/logind-user.c +@@ -713,6 +713,43 @@ int user_kill(User *u, int signo) { + return manager_kill_unit(u->manager, u->slice, KILL_ALL, signo, NULL); + } + ++void user_elect_display(User *u) { ++ Session *graphical = NULL, *text = NULL, *s; ++ ++ assert(u); ++ ++ /* This elects a primary session for each user, which we call ++ * the "display". We try to keep the assignment stable, but we ++ * "upgrade" to better choices. */ ++ ++ LIST_FOREACH(sessions_by_user, s, u->sessions) { ++ ++ if (s->class != SESSION_USER) ++ continue; ++ ++ if (s->stopping) ++ continue; ++ ++ if (SESSION_TYPE_IS_GRAPHICAL(s->type)) ++ graphical = s; ++ else ++ text = s; ++ } ++ ++ if (graphical && ++ (!u->display || ++ u->display->class != SESSION_USER || ++ u->display->stopping || ++ !SESSION_TYPE_IS_GRAPHICAL(u->display->type))) ++ u->display = graphical; ++ ++ if (text && ++ (!u->display || ++ u->display->class != SESSION_USER || ++ u->display->stopping)) ++ u->display = text; ++} ++ + static const char* const user_state_table[_USER_STATE_MAX] = { + [USER_OFFLINE] = "offline", + [USER_OPENING] = "opening", +diff --git src/login/logind-user.h src/login/logind-user.h +index f237d2a..4e0568f 100644 +--- src/login/logind-user.h ++++ src/login/logind-user.h +@@ -80,6 +80,7 @@ int user_save(User *u); + int user_load(User *u); + int user_kill(User *u, int signo); + int user_check_linger_file(User *u); ++void user_elect_display(User *u); + + extern const sd_bus_vtable user_vtable[]; + int user_node_enumerator(sd_bus *bus, const char *path, void *userdata, char ***nodes, sd_bus_error *error); +-- +1.7.9.2 + diff --git a/0007-man-readahead-fix-cmdline-switch-inconsistency-betwe.patch b/0007-man-readahead-fix-cmdline-switch-inconsistency-betwe.patch new file mode 100644 index 00000000..ee54ea31 --- /dev/null +++ b/0007-man-readahead-fix-cmdline-switch-inconsistency-betwe.patch @@ -0,0 +1,41 @@ +From 332bc31992acffc6f32e194c0122e01607bd0e27 Mon Sep 17 00:00:00 2001 +From: Alison Chaiken +Date: Fri, 16 May 2014 09:25:53 +0200 +Subject: [PATCH] man: readahead: fix cmdline switch inconsistency between + readahead.c and docs + +Source code has "files-max" and XML has --max-files. +--- + man/systemd-readahead-replay.service.xml | 2 +- + src/readahead/readahead.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git man/systemd-readahead-replay.service.xml man/systemd-readahead-replay.service.xml +index 67b41f5..669fe78 100644 +--- man/systemd-readahead-replay.service.xml ++++ man/systemd-readahead-replay.service.xml +@@ -117,7 +117,7 @@ + + + +- ++ + + Maximum number of + files to read ahead. Only valid +diff --git src/readahead/readahead.c src/readahead/readahead.c +index d6729ec..73cf538 100644 +--- src/readahead/readahead.c ++++ src/readahead/readahead.c +@@ -42,7 +42,7 @@ static int help(void) { + "Collect read-ahead data on early boot.\n\n" + " -h --help Show this help\n" + " --version Show package version\n" +- " --max-files=INT Maximum number of files to read ahead\n" ++ " --files-max=INT Maximum number of files to read ahead\n" + " --file-size-max=BYTES Maximum size of files to read ahead\n" + " --timeout=USEC Maximum time to spend collecting data\n\n\n", + program_invocation_short_name); +-- +1.7.9.2 + diff --git a/0007-networkd-fix-typo.patch b/0007-networkd-fix-typo.patch new file mode 100644 index 00000000..8bd67322 --- /dev/null +++ b/0007-networkd-fix-typo.patch @@ -0,0 +1,26 @@ +From eed0eee85ac34abd81cd9e81fdb6a19f47b6c8a3 Mon Sep 17 00:00:00 2001 +From: Michael Olbrich +Date: Fri, 14 Mar 2014 18:19:29 +0100 +Subject: [PATCH] networkd: fix typo + +It's HAVE_SPLIT_USR not HAVE_SPLIT_USER +--- + src/network/networkd-manager.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/network/networkd-manager.c src/network/networkd-manager.c +index c730e71..ea414b1 100644 +--- src/network/networkd-manager.c ++++ src/network/networkd-manager.c +@@ -33,7 +33,7 @@ const char* const network_dirs[] = { + "/etc/systemd/network", + "/run/systemd/network", + "/usr/lib/systemd/network", +-#ifdef HAVE_SPLIT_USER ++#ifdef HAVE_SPLIT_USR + "/lib/systemd/network", + #endif + NULL}; +-- +1.7.9.2 + diff --git a/0007-po-add-German-translation.patch b/0007-po-add-German-translation.patch new file mode 100644 index 00000000..d653c8ff --- /dev/null +++ b/0007-po-add-German-translation.patch @@ -0,0 +1,448 @@ +From 351e57652a7d9a51f9064c089794d13801eaee73 Mon Sep 17 00:00:00 2001 +From: Benjamin Steinwender +Date: Sun, 8 Jun 2014 18:39:50 +0200 +Subject: [PATCH] po: add German translation + +https://bugs.freedesktop.org/show_bug.cgi?id=79430 +--- + po/LINGUAS | 1 + + po/de.po | 418 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 419 insertions(+) + create mode 100644 po/de.po + +diff --git po/LINGUAS po/LINGUAS +index 820ca82..2cb0f30 100644 +--- po/LINGUAS ++++ po/LINGUAS +@@ -1,3 +1,4 @@ ++de + el + fr + it +diff --git po/de.po po/de.po +new file mode 100644 +index 0000000..a41e33d +--- /dev/null ++++ po/de.po +@@ -0,0 +1,418 @@ ++# German translation for systemd. ++# Copyright (C) 2014 systemd's COPYRIGHT HOLDER ++# This file is distributed under the same license as the systemd package. ++# Christian Kirbach , 2014. ++# Benjamin Steinwender , 2014. ++# ++msgid "" ++msgstr "" ++"Project-Id-Version: systemd master\n" ++"Report-Msgid-Bugs-To: https://bugs.freedesktop.org/enter_bug.cgi?" ++"product=systemd&keywords=I18N+L10N&component=general\n" ++"POT-Creation-Date: 2014-06-02 10:25+0000\n" ++"PO-Revision-Date: 2014-06-02 22:43+0100\n" ++"Last-Translator: Benjamin Steinwender \n" ++"Language-Team: German \n" ++"Language: de\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=UTF-8\n" ++"Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n != 1);\n" ++"X-Generator: Poedit 1.6.5\n" ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:1 ++msgid "Set host name" ++msgstr "Rechnername festlegen" ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:2 ++msgid "Authentication is required to set the local host name." ++msgstr "Legitimierung ist zum Festlegen des lokalen Rechnernamens notwendig" ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:3 ++msgid "Set static host name" ++msgstr "Statischen Rechnernamen festlegen" ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:4 ++msgid "" ++"Authentication is required to set the statically configured local host name, " ++"as well as the pretty host name." ++msgstr "" ++"Authentifizierung ist erforderlich, um den statisch geänderten, lokalen " ++"Rechnernamen, sowie den beschönigten Rechnernamen festzulegen." ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:5 ++msgid "Set machine information" ++msgstr "Maschinen-Information festlegen" ++ ++#: ../src/hostname/org.freedesktop.hostname1.policy.in.h:6 ++msgid "Authentication is required to set local machine information." ++msgstr "" ++"Legitimierung ist zum Festlegen der lokalen Maschinen-Information " ++"erforderlich." ++ ++#: ../src/locale/org.freedesktop.locale1.policy.in.h:1 ++msgid "Set system locale" ++msgstr "Die lokale Sprachumgebung festlegen" ++ ++#: ../src/locale/org.freedesktop.locale1.policy.in.h:2 ++msgid "Authentication is required to set the system locale." ++msgstr "" ++"Legitimierung ist zum Festlegen der systemweiten Spracheinstellungen " ++"erforderlich." ++ ++#: ../src/locale/org.freedesktop.locale1.policy.in.h:3 ++msgid "Set system keyboard settings" ++msgstr "Tastatureinstellungen des Systems festlegen" ++ ++#: ../src/locale/org.freedesktop.locale1.policy.in.h:4 ++msgid "Authentication is required to set the system keyboard settings." ++msgstr "" ++"Legitimierung ist zum Festlegen der Tastatureinstellungen des Systems " ++"erforderlich." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:1 ++msgid "Allow applications to inhibit system shutdown" ++msgstr "Anwendungen dürfen das Herunterfahren des Systems unterbinden" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:2 ++msgid "" ++"Authentication is required to allow an application to inhibit system " ++"shutdown." ++msgstr "" ++"Legitimierung ist notwendig, um Anwendungen das Herunterfahren des Systems " ++"zu erlauben." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:3 ++msgid "Allow applications to delay system shutdown" ++msgstr "Anwendungen dürfen das Herunterfahren des Systems verzögern" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:4 ++msgid "" ++"Authentication is required to allow an application to delay system shutdown." ++msgstr "" ++"Legitimierung ist notwendig, um Anwendungen das Verzögern des Herunterfahren " ++"des Systems zu erlauben." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:5 ++msgid "Allow applications to inhibit system sleep" ++msgstr "Anwendungen dürfen den Bereitschaftsmodus unterbinden" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:6 ++msgid "" ++"Authentication is required to allow an application to inhibit system sleep." ++msgstr "" ++"Legitimierung ist erforderlich, um Anwendungen das Unterbinden des " ++"Bereitschaftsmodus zu erlauben." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:7 ++msgid "Allow applications to delay system sleep" ++msgstr "Anwendungen dürfen den Bereitschaftsmodus verzögern" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:8 ++msgid "" ++"Authentication is required to allow an application to delay system sleep." ++msgstr "" ++"Legitimierung ist erforderlich, um Anwendungen das Verzögern des " ++"Bereitschaftsmodus zu erlauben." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:9 ++msgid "Allow applications to inhibit automatic system suspend" ++msgstr "Anwendungen dürfen den automatischen Bereitschaftsmodus unterbinden" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:10 ++msgid "" ++"Authentication is required to allow an application to inhibit automatic " ++"system suspend." ++msgstr "" ++"Legitimierung ist notwendig, um Anwendungen das Unterbinden des " ++"automatischen Bereitschaftsmodus zu erlauben." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:11 ++msgid "Allow applications to inhibit system handling of the power key" ++msgstr "" ++"Anwendungen dürfen das Auswerten des Ein-/Ausschaltknopfs des Systems " ++"unterbinden" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:12 ++msgid "" ++"Authentication is required to allow an application to inhibit system " ++"handling of the power key." ++msgstr "" ++"Legitmierung ist erforderlich, um Anwendungen das Unterbinden der Auswertung " ++"der Ein-/Ausschaltknopfs des Systems zu erlauben." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:13 ++msgid "Allow applications to inhibit system handling of the suspend key" ++msgstr "" ++"Anwendungen dürfen das Auswerten des Bereitschaftsknopfs des Systems " ++"unterbinden" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:14 ++msgid "" ++"Authentication is required to allow an application to inhibit system " ++"handling of the suspend key." ++msgstr "" ++"Legitimierung ist erforderlich, um Anwendungen das Unterbinden der " ++"Auswertung des Bereitschaftsknopfes des Systems zu erlauben." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:15 ++msgid "Allow applications to inhibit system handling of the hibernate key" ++msgstr "" ++"Anwendungen dürfen das Auswerten des Knopfs für den Ruhezustand unterbinden" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:16 ++msgid "" ++"Authentication is required to allow an application to inhibit system " ++"handling of the hibernate key." ++msgstr "" ++"Legitimierung ist erforderlich, um Anwendungen das Unterbinden der " ++"Auswertung des Knopfs für den Ruhezustand zu erlauben." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:17 ++msgid "Allow applications to inhibit system handling of the lid switch" ++msgstr "" ++"Anwendungen dürfen das Auswerten des Notebookdeckelschalters unterbinden" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:18 ++msgid "" ++"Authentication is required to allow an application to inhibit system " ++"handling of the lid switch." ++msgstr "" ++"Legitimierung ist erforderlich, um Anwendungen das Unterbinden der " ++"Auswertung des Notebookdeckelschalters des Systems zu erlauben." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:19 ++msgid "Allow non-logged-in users to run programs" ++msgstr "Nicht angemeldete Benutzer dürfen Programme ausführen" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:20 ++msgid "" ++"Authentication is required to allow a non-logged-in user to run programs." ++msgstr "" ++"Legitimierung ist erforderlich, damit nicht angemeldete Benutzer Programme " ++"ausführen dürfen." ++ ++# www.freedesktop.org/wiki/Software/systemd/multiseat/ ++#: ../src/login/org.freedesktop.login1.policy.in.h:21 ++msgid "Allow attaching devices to seats" ++msgstr "Das Anschließen von Geräten an Arbeitsstationen erlauben" ++ ++# www.freedesktop.org/wiki/Software/systemd/multiseat/ ++#: ../src/login/org.freedesktop.login1.policy.in.h:22 ++msgid "Authentication is required for attaching a device to a seat." ++msgstr "" ++"Legitimierung ist zum Anschließen eines Geräts an eine Arbeitsstation " ++"notwendig." ++ ++# www.freedesktop.org/wiki/Software/systemd/multiseat/ ++#: ../src/login/org.freedesktop.login1.policy.in.h:23 ++msgid "Flush device to seat attachments" ++msgstr "Zurücksetzen der an eine Arbeitsstation angeschlossenen Geräte" ++ ++# www.freedesktop.org/wiki/Software/systemd/multiseat/ ++#: ../src/login/org.freedesktop.login1.policy.in.h:24 ++msgid "" ++"Authentication is required for resetting how devices are attached to seats." ++msgstr "" ++"Legitimierung ist zum Zurücksetzen notwendig, wie Geräte an eine " ++"Arbeitsstation angeschlossen werden." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:25 ++msgid "Power off the system" ++msgstr "Das System ausschalten" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:26 ++msgid "Authentication is required for powering off the system." ++msgstr "Legitimierung ist zum Ausschalten des Systems notwendig." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:27 ++msgid "Power off the system while other users are logged in" ++msgstr "Das System herunter fahren, während andere Benutzer angemeldet sind" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:28 ++msgid "" ++"Authentication is required for powering off the system while other users are " ++"logged in." ++msgstr "" ++"Legitimierung ist zum Herunterfahren des Systems notwendig, während andere " ++"Benutzer angemeldet sind." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:29 ++msgid "Power off the system while an application asked to inhibit it" ++msgstr "" ++"Das System ausschalten, während eine Anwendung anfordert es zu unterbinden" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:30 ++msgid "" ++"Authentication is required for powering off the system while an application " ++"asked to inhibit it." ++msgstr "" ++"Legitimierung ist zum Ausschalten des Systems notwendig, während eine " ++"Anwendung anfordert es zu unterbinden." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:31 ++msgid "Reboot the system" ++msgstr "Das System neu starten" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:32 ++msgid "Authentication is required for rebooting the system." ++msgstr "Legitimierung ist zum Neustart des Systems notwendig." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:33 ++msgid "Reboot the system while other users are logged in" ++msgstr "Das Systems neu starten, während andere Benutzer angemeldet sind" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:34 ++msgid "" ++"Authentication is required for rebooting the system while other users are " ++"logged in." ++msgstr "" ++"Legitimierung ist zum Neustart des Systems notwendig, während andere " ++"Benutzer angemeldet sind." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:35 ++msgid "Reboot the system while an application asked to inhibit it" ++msgstr "" ++"Das System neu starten, während eine Anwendung anfordert es zu unterbinden" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:36 ++msgid "" ++"Authentication is required for rebooting the system while an application " ++"asked to inhibit it." ++msgstr "" ++"Legitimierung ist zum Neustart des Systems notwendig, während eine Anwendung " ++"anforderte es zu unterbinden." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:37 ++msgid "Suspend the system" ++msgstr "Das System in Bereitschaft versetzen" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:38 ++msgid "Authentication is required for suspending the system." ++msgstr "Legitimierung ist zum Versetzen des Systems in Bereitschaft notwendig." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:39 ++msgid "Suspend the system while other users are logged in" ++msgstr "" ++"Das System in Bereitschaft versetzen, während andere Benutzer angemeldet " ++"sind." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:40 ++msgid "" ++"Authentication is required for suspending the system while other users are " ++"logged in." ++msgstr "" ++"Legitimierung ist zum Versetzen des Systems in Bereitschaft notwendig, " ++"während andere Benutzer angemeldet sind." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:41 ++msgid "Suspend the system while an application asked to inhibit it" ++msgstr "" ++"Das System in Bereitschaft versetzen, während eine Anwendung anfordert dies " ++"zu unterbinden" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:42 ++msgid "" ++"Authentication is required for suspending the system while an application " ++"asked to inhibit it." ++msgstr "" ++"Legitimierung ist zum Versetzen des Systems in Bereitschaft notwendig, " ++"während eine Anwendung anfordert dies zu unterbinden." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:43 ++msgid "Hibernate the system" ++msgstr "Den Ruhezustand des Systems aktivieren" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:44 ++msgid "Authentication is required for hibernating the system." ++msgstr "" ++"Legitimierung ist zum Aktivieren des Ruhezustands des Systems notwendig." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:45 ++msgid "Hibernate the system while other users are logged in" ++msgstr "" ++"Den Ruhezustand des Systems aktivieren, während andere Benutzer angemeldet " ++"sind" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:46 ++msgid "" ++"Authentication is required for hibernating the system while other users are " ++"logged in." ++msgstr "" ++"Legitimierung ist zum Aktivieren des Ruhezustands des Systems notwendig, " ++"während andere Benutzer angemeldet sind." ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:47 ++msgid "Hibernate the system while an application asked to inhibit it" ++msgstr "" ++"Das System in den Ruhezustand versetzen, während eine Anwendung wünscht dies " ++"zu verhindern" ++ ++#: ../src/login/org.freedesktop.login1.policy.in.h:48 ++msgid "" ++"Authentication is required for hibernating the system while an application " ++"asked to inhibit it." ++msgstr "" ++"Legitimierung ist zum Versetzen des System in den Ruhezustand notwendig, " ++"während eine Anwendung wünscht dies zu verhindern." ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:1 ++msgid "Set system time" ++msgstr "Die Systemzeit festlegen" ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:2 ++msgid "Authentication is required to set the system time." ++msgstr "Legitimierung ist zum Festlegen der Systemzeit notwendig." ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:3 ++msgid "Set system timezone" ++msgstr "Die Systemzeitzone festlegen" ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:4 ++msgid "Authentication is required to set the system timezone." ++msgstr "Legitimierung ist zum Festlegen der Systemzeitzone notwendig." ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:5 ++msgid "Set RTC to local timezone or UTC" ++msgstr "Echtzeituhr auf lokale Zeitzone oder UTC setzen" ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:6 ++msgid "" ++"Authentication is required to control whether the RTC stores the local or " ++"UTC time." ++msgstr "" ++"Legitimierung ist notwendig zum Festlegen, ob die Echtzeituhr auf lokale " ++"Zeitzone oder UTC eingestellt ist." ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:7 ++msgid "Turn network time synchronization on or off" ++msgstr "Netzwerkzeitabgeich ein- oder ausschalten" ++ ++#: ../src/timedate/org.freedesktop.timedate1.policy.in.h:8 ++msgid "" ++"Authentication is required to control whether network time synchronization " ++"shall be enabled." ++msgstr "" ++"Legitimierung ist zum Festlegen, ob Netzwerkzeitabgeich eingeschaltet sein " ++"soll, erforderlich." ++ ++#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:1 ++msgid "Send passphrase back to system" ++msgstr "Passphrase zurück an das System senden" ++ ++#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:2 ++msgid "" ++"Authentication is required to send the entered passphrase back to the system." ++msgstr "" ++"Legitimierung ist zum Senden des eingegebenen Kennworts zurück an das System " ++"notwendig." ++ ++#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:3 ++msgid "Privileged system and service manager access" ++msgstr "Privilegierter Zugriff auf die System- und Dienstverwaltung" ++ ++#: ../src/core/org.freedesktop.systemd1.policy.in.in.h:4 ++msgid "Authentication is required to access the system and service manager." ++msgstr "" ++"Legitimierung ist notwendig für den Zugriff auf die System- und " ++"Dienstverwaltung." +-- +1.7.9.2 + diff --git a/0007-sd-event-don-t-accidentally-turn-of-watchdog-timer-e.patch b/0007-sd-event-don-t-accidentally-turn-of-watchdog-timer-e.patch new file mode 100644 index 00000000..ee4c169a --- /dev/null +++ b/0007-sd-event-don-t-accidentally-turn-of-watchdog-timer-e.patch @@ -0,0 +1,29 @@ +From 75145780813957ecbe6835f2c8bc20113a3605d2 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Tue, 25 Mar 2014 00:01:51 +0100 +Subject: [PATCH] sd-event: don't accidentally turn of watchdog timer event if + we determine 0 + +--- + src/libsystemd/sd-event/sd-event.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git src/libsystemd/sd-event/sd-event.c src/libsystemd/sd-event/sd-event.c +index d6a3d1c..4aabec1 100644 +--- src/libsystemd/sd-event/sd-event.c ++++ src/libsystemd/sd-event/sd-event.c +@@ -2087,6 +2087,11 @@ static int arm_watchdog(sd_event *e) { + + timespec_store(&its.it_value, t); + ++ /* Make sure we never set the watchdog to 0, which tells the ++ * kernel to disable it. */ ++ if (its.it_value.tv_sec == 0 && its.it_value.tv_nsec == 0) ++ its.it_value.tv_nsec = 1; ++ + r = timerfd_settime(e->watchdog_fd, TFD_TIMER_ABSTIME, &its, NULL); + if (r < 0) + return -errno; +-- +1.7.9.2 + diff --git a/0007-service-flush-status-text-and-errno-values-each-time.patch b/0007-service-flush-status-text-and-errno-values-each-time.patch new file mode 100644 index 00000000..7dbe5a89 --- /dev/null +++ b/0007-service-flush-status-text-and-errno-values-each-time.patch @@ -0,0 +1,29 @@ +From 8cfdb077b8e3da1c47fc1d735d051f21f33144c1 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 7 Jul 2014 17:33:46 +0200 +Subject: [PATCH] service: flush status text and errno values each time a + service is started + +We shouldn't show status texts from previous service starts +--- + src/core/service.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git src/core/service.c src/core/service.c +index d5aff99..0f542ed 100644 +--- src/core/service.c ++++ src/core/service.c +@@ -1699,6 +1699,10 @@ static int service_start(Unit *u) { + s->main_pid_alien = false; + s->forbid_restart = false; + ++ free(s->status_text); ++ s->status_text = NULL; ++ s->status_errno = 0; ++ + service_enter_start_pre(s); + return 0; + } +-- +1.7.9.2 + diff --git a/0007-systemctl-do-not-ignore-errors-in-symlink-removal.patch b/0007-systemctl-do-not-ignore-errors-in-symlink-removal.patch new file mode 100644 index 00000000..a161a1c4 --- /dev/null +++ b/0007-systemctl-do-not-ignore-errors-in-symlink-removal.patch @@ -0,0 +1,26 @@ +From e95c98378ac2d34df864de4a9b785fd17defb77b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sat, 25 Oct 2014 15:15:28 -0400 +Subject: [PATCH] systemctl: do not ignore errors in symlink removal + +On an ro fs, systemctl disable ... would fail silently. +--- + src/shared/install.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/shared/install.c src/shared/install.c +index 0d7c30e..035b44c 100644 +--- src/shared/install.c ++++ src/shared/install.c +@@ -1679,7 +1679,7 @@ int unit_file_disable( + r = install_context_mark_for_removal(&c, &paths, &remove_symlinks_to, config_path, root_dir); + + q = remove_marked_symlinks(remove_symlinks_to, config_path, changes, n_changes, files); +- if (r == 0) ++ if (r >= 0) + r = q; + + return r; +-- +1.7.9.2 + diff --git a/0007-units-skip-mounting-tmp-if-it-is-a-symlink.patch b/0007-units-skip-mounting-tmp-if-it-is-a-symlink.patch new file mode 100644 index 00000000..a1046c39 --- /dev/null +++ b/0007-units-skip-mounting-tmp-if-it-is-a-symlink.patch @@ -0,0 +1,26 @@ +From 8ebf02d6f382ce1ac7e0d44a713b8795a07b08cd Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 30 Jun 2014 21:44:05 +0200 +Subject: [PATCH] units: skip mounting /tmp if it is a symlink + +We shouldn't get confused if people have symlinked /tmp somewhere, so +let's simply skip the mount then. +--- + units/tmp.mount | 1 + + 1 file changed, 1 insertion(+) + +diff --git units/tmp.mount units/tmp.mount +index 99a3ba3..00a0d28 100644 +--- units/tmp.mount ++++ units/tmp.mount +@@ -9,6 +9,7 @@ + Description=Temporary Directory + Documentation=man:hier(7) + Documentation=http://www.freedesktop.org/wiki/Software/systemd/APIFileSystems ++ConditionPathIsSymbolicLink=!/tmp + DefaultDependencies=no + Conflicts=umount.target + Before=local-fs.target umount.target +-- +1.7.9.2 + diff --git a/0008-Reset-signal-mask-on-re-exec-to-init.patch b/0008-Reset-signal-mask-on-re-exec-to-init.patch new file mode 100644 index 00000000..9fe7d1ea --- /dev/null +++ b/0008-Reset-signal-mask-on-re-exec-to-init.patch @@ -0,0 +1,51 @@ +From 5a85ca1cb622fda4a39c8a6f00dccea7f8a1e82a Mon Sep 17 00:00:00 2001 +From: Ruediger Oertel +Date: Fri, 13 Jun 2014 16:41:06 +0200 +Subject: [PATCH] Reset signal-mask on re-exec to init=.. + +Process 1 (aka init) needs to be started with an empty signal mask. +That includes the process 1 that's started after the initrd is finished. +When the initrd is using systemd (as it does with dracut based initrds) +then it is systemd that calls the real init. Normally this is systemd +again, except when the user uses for instance "init=/bin/bash" on the +kernel command line. +--- + src/core/main.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git src/core/main.c src/core/main.c +index 3aac5d1..3e57f07 100644 +--- src/core/main.c ++++ src/core/main.c +@@ -1843,6 +1843,7 @@ finish: + if (reexecute) { + const char **args; + unsigned i, args_size; ++ sigset_t ss, o_ss; + + /* Close and disarm the watchdog, so that the new + * instance can reinitialize it, but doesn't get +@@ -1926,6 +1927,11 @@ finish: + args[i++] = NULL; + assert(i <= args_size); + ++ /* reenable any blocked signals, especially important ++ * if we switch from initial ramdisk to init=... */ ++ sigemptyset(&ss); ++ sigprocmask(SIG_SETMASK, &ss, &o_ss); ++ + if (switch_root_init) { + args[0] = switch_root_init; + execv(args[0], (char* const*) args); +@@ -1944,6 +1950,8 @@ finish: + log_error("Failed to execute /bin/sh, giving up: %m"); + } else + log_warning("Failed to execute /sbin/init, giving up: %m"); ++ ++ sigprocmask(SIG_SETMASK, &o_ss, NULL); + } + + if (arg_serialization) { +-- +1.7.9.2 + diff --git a/0008-Use-var-run-dbus-system_bus_socket-for-the-D-Bus-soc.patch b/0008-Use-var-run-dbus-system_bus_socket-for-the-D-Bus-soc.patch new file mode 100644 index 00000000..25994e95 --- /dev/null +++ b/0008-Use-var-run-dbus-system_bus_socket-for-the-D-Bus-soc.patch @@ -0,0 +1,51 @@ +From 1ae383a8a3ae4824453e297352fda603d2d3fd5e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Tue, 25 Feb 2014 21:26:31 -0500 +Subject: [PATCH] Use /var/run/dbus/system_bus_socket for the D-Bus socket + +--- + man/systemd-bus-proxyd@.service.xml | 2 +- + src/shared/def.h | 2 +- + units/systemd-bus-proxyd.socket | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +diff --git man/systemd-bus-proxyd@.service.xml man/systemd-bus-proxyd@.service.xml +index 75a3c8b..3a5930d 100644 +--- man/systemd-bus-proxyd@.service.xml ++++ man/systemd-bus-proxyd@.service.xml +@@ -59,7 +59,7 @@ along with systemd; If not, see . + systemd-bus-proxyd.socket will launch + systemd-bus-proxyd@.service for connections + to the classic D-Bus socket in +- /run/dbus/system_bus_socket. ++ /var/run/dbus/system_bus_socket. + + systemd-bus-proxyd@.service is launched + for an existing D-Bus connection and will use +diff --git src/shared/def.h src/shared/def.h +index 7777756..aa489d8 100644 +--- src/shared/def.h ++++ src/shared/def.h +@@ -61,7 +61,7 @@ + "/usr/lib/kbd/keymaps/\0" + #endif + +-#define UNIX_SYSTEM_BUS_PATH "unix:path=/run/dbus/system_bus_socket" ++#define UNIX_SYSTEM_BUS_PATH "unix:path=/var/run/dbus/system_bus_socket" + #define KERNEL_SYSTEM_BUS_PATH "kernel:path=/dev/kdbus/0-system/bus" + + #ifdef ENABLE_KDBUS +diff --git units/systemd-bus-proxyd.socket units/systemd-bus-proxyd.socket +index 406e15b..6c42d38 100644 +--- units/systemd-bus-proxyd.socket ++++ units/systemd-bus-proxyd.socket +@@ -9,5 +9,5 @@ + Description=Legacy D-Bus Protocol Compatibility Socket + + [Socket] +-ListenStream=/run/dbus/system_bus_socket ++ListenStream=/var/run/dbus/system_bus_socket + Accept=yes +-- +1.7.9.2 + diff --git a/0008-core-correctly-unregister-PIDs-from-PID-hashtables.patch b/0008-core-correctly-unregister-PIDs-from-PID-hashtables.patch new file mode 100644 index 00000000..8dfd01bc --- /dev/null +++ b/0008-core-correctly-unregister-PIDs-from-PID-hashtables.patch @@ -0,0 +1,102 @@ +From bd44e61b0480712ec5585ff7b0295362a5f9dd36 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 6 Mar 2014 02:19:42 +0100 +Subject: [PATCH] core: correctly unregister PIDs from PID hashtables + +--- + src/core/unit.c | 42 ++++++++++++++++++------------------------ + 1 file changed, 18 insertions(+), 24 deletions(-) + +diff --git src/core/unit.c src/core/unit.c +index 2437ee3..85250ca 100644 +--- src/core/unit.c ++++ src/core/unit.c +@@ -1704,11 +1704,11 @@ int unit_watch_pid(Unit *u, pid_t pid) { + /* Watch a specific PID. We only support one or two units + * watching each PID for now, not more. */ + +- r = hashmap_ensure_allocated(&u->manager->watch_pids1, trivial_hash_func, trivial_compare_func); ++ r = set_ensure_allocated(&u->pids, trivial_hash_func, trivial_compare_func); + if (r < 0) + return r; + +- r = set_ensure_allocated(&u->pids, trivial_hash_func, trivial_compare_func); ++ r = hashmap_ensure_allocated(&u->manager->watch_pids1, trivial_hash_func, trivial_compare_func); + if (r < 0) + return r; + +@@ -1737,7 +1737,17 @@ void unit_unwatch_pid(Unit *u, pid_t pid) { + set_remove(u->pids, LONG_TO_PTR(pid)); + } + +-static int watch_pids_in_path(Unit *u, const char *path) { ++void unit_unwatch_all_pids(Unit *u) { ++ assert(u); ++ ++ while (!set_isempty(u->pids)) ++ unit_unwatch_pid(u, PTR_TO_LONG(set_first(u->pids))); ++ ++ set_free(u->pids); ++ u->pids = NULL; ++} ++ ++static int unit_watch_pids_in_path(Unit *u, const char *path) { + _cleanup_closedir_ DIR *d = NULL; + _cleanup_fclose_ FILE *f = NULL; + int ret = 0, r; +@@ -1775,7 +1785,7 @@ static int watch_pids_in_path(Unit *u, const char *path) { + if (!p) + return -ENOMEM; + +- r = watch_pids_in_path(u, p); ++ r = unit_watch_pids_in_path(u, p); + if (r < 0 && ret >= 0) + ret = r; + } +@@ -1788,31 +1798,15 @@ static int watch_pids_in_path(Unit *u, const char *path) { + return ret; + } + +- + int unit_watch_all_pids(Unit *u) { + assert(u); + +- if (!u->cgroup_path) +- return -ENOENT; +- + /* Adds all PIDs from our cgroup to the set of PIDs we watch */ + +- return watch_pids_in_path(u, u->cgroup_path); +-} +- +-void unit_unwatch_all_pids(Unit *u) { +- Iterator i; +- void *e; +- +- assert(u); +- +- SET_FOREACH(e, u->pids, i) { +- hashmap_remove_value(u->manager->watch_pids1, e, u); +- hashmap_remove_value(u->manager->watch_pids2, e, u); +- } ++ if (!u->cgroup_path) ++ return -ENOENT; + +- set_free(u->pids); +- u->pids = NULL; ++ return unit_watch_pids_in_path(u, u->cgroup_path); + } + + void unit_tidy_watch_pids(Unit *u, pid_t except1, pid_t except2) { +@@ -1830,7 +1824,7 @@ void unit_tidy_watch_pids(Unit *u, pid_t except1, pid_t except2) { + continue; + + if (!pid_is_unwaited(pid)) +- set_remove(u->pids, e); ++ unit_unwatch_pid(u, pid); + } + } + +-- +1.7.9.2 + diff --git a/0008-core-smack-setup-Actually-allow-for-succesfully-load.patch b/0008-core-smack-setup-Actually-allow-for-succesfully-load.patch new file mode 100644 index 00000000..1cc429ce --- /dev/null +++ b/0008-core-smack-setup-Actually-allow-for-succesfully-load.patch @@ -0,0 +1,31 @@ +From b9289d4c6e13ec5fb67bfce69c826d93b004da6a Mon Sep 17 00:00:00 2001 +From: Philippe De Swert +Date: Fri, 12 Sep 2014 16:49:48 +0300 +Subject: [PATCH] core: smack-setup: Actually allow for succesfully loading + CIPSO policy + +The line under the last switch statement *loaded_policy = true; +would never be executed. As all switch cases return 0. Thus the +policy would never be marked as loaded. + +Found with Coverity. Fixes: CID#1237785 +--- + src/core/smack-setup.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/core/smack-setup.c src/core/smack-setup.c +index 5f6dabf..5d8a26c 100644 +--- src/core/smack-setup.c ++++ src/core/smack-setup.c +@@ -158,7 +158,7 @@ int smack_setup(bool *loaded_policy) { + return 0; + case 0: + log_info("Successfully loaded Smack/CIPSO policies."); +- return 0; ++ break; + default: + log_warning("Failed to load Smack/CIPSO access rules: %s, ignoring.", + strerror(abs(r))); +-- +1.7.9.2 + diff --git a/0008-hwdb-Update-database-of-Bluetooth-company-identifier.patch b/0008-hwdb-Update-database-of-Bluetooth-company-identifier.patch new file mode 100644 index 00000000..9c554056 --- /dev/null +++ b/0008-hwdb-Update-database-of-Bluetooth-company-identifier.patch @@ -0,0 +1,104 @@ +From de68938a2cb3ab535ebd9198723a651753c1a1df Mon Sep 17 00:00:00 2001 +From: Marcel Holtmann +Date: Mon, 8 Sep 2014 05:06:18 +0200 +Subject: [PATCH] hwdb: Update database of Bluetooth company identifiers + +--- + hwdb/20-bluetooth-vendor-product.hwdb | 77 ++++++++++++++++++++++++++++++++- + 1 file changed, 76 insertions(+), 1 deletion(-) + +diff --git hwdb/20-bluetooth-vendor-product.hwdb hwdb/20-bluetooth-vendor-product.hwdb +index 9f3136a..14aee74 100644 +--- hwdb/20-bluetooth-vendor-product.hwdb ++++ hwdb/20-bluetooth-vendor-product.hwdb +@@ -184,7 +184,7 @@ bluetooth:v003B* + ID_VENDOR_FROM_DATABASE=Gennum Corporation + + bluetooth:v003C* +- ID_VENDOR_FROM_DATABASE=Research In Motion ++ ID_VENDOR_FROM_DATABASE=BlackBerry Limited (formerly Research In Motion) + + bluetooth:v003D* + ID_VENDOR_FROM_DATABASE=IPextreme, Inc. +@@ -1073,3 +1073,78 @@ bluetooth:v0162* + + bluetooth:v0163* + ID_VENDOR_FROM_DATABASE=PCH International ++ ++bluetooth:v0164* ++ ID_VENDOR_FROM_DATABASE=Qingdao Yeelink Information Technology Co., Ltd. ++ ++bluetooth:v0165* ++ ID_VENDOR_FROM_DATABASE=Milwaukee Tool (formerly Milwaukee Electric Tools) ++ ++bluetooth:v0166* ++ ID_VENDOR_FROM_DATABASE=MISHIK Pte Ltd ++ ++bluetooth:v0167* ++ ID_VENDOR_FROM_DATABASE=Bayer HealthCare ++ ++bluetooth:v0168* ++ ID_VENDOR_FROM_DATABASE=Spicebox LLC ++ ++bluetooth:v0169* ++ ID_VENDOR_FROM_DATABASE=emberlight ++ ++bluetooth:v016A* ++ ID_VENDOR_FROM_DATABASE=Cooper-Atkins Corporation ++ ++bluetooth:v016B* ++ ID_VENDOR_FROM_DATABASE=Qblinks ++ ++bluetooth:v016C* ++ ID_VENDOR_FROM_DATABASE=MYSPHERA ++ ++bluetooth:v016D* ++ ID_VENDOR_FROM_DATABASE=LifeScan Inc ++ ++bluetooth:v016E* ++ ID_VENDOR_FROM_DATABASE=Volantic AB ++ ++bluetooth:v016F* ++ ID_VENDOR_FROM_DATABASE=Podo Labs, Inc ++ ++bluetooth:v0170* ++ ID_VENDOR_FROM_DATABASE=Roche Diabetes Care AG ++ ++bluetooth:v0171* ++ ID_VENDOR_FROM_DATABASE=Amazon Fulfillment Service ++ ++bluetooth:v0172* ++ ID_VENDOR_FROM_DATABASE=Connovate Technology Private Limited ++ ++bluetooth:v0173* ++ ID_VENDOR_FROM_DATABASE=Kocomojo, LLC ++ ++bluetooth:v0174* ++ ID_VENDOR_FROM_DATABASE=Everykey LLC ++ ++bluetooth:v0175* ++ ID_VENDOR_FROM_DATABASE=Dynamic Controls ++ ++bluetooth:v0176* ++ ID_VENDOR_FROM_DATABASE=SentriLock ++ ++bluetooth:v0177* ++ ID_VENDOR_FROM_DATABASE=I-SYST inc. ++ ++bluetooth:v0178* ++ ID_VENDOR_FROM_DATABASE=CASIO COMPUTER CO., LTD. ++ ++bluetooth:v0179* ++ ID_VENDOR_FROM_DATABASE=LAPIS Semiconductor Co., Ltd. ++ ++bluetooth:v017A* ++ ID_VENDOR_FROM_DATABASE=Telemonitor, Inc. ++ ++bluetooth:v017B* ++ ID_VENDOR_FROM_DATABASE=taskit GmbH ++ ++bluetooth:v017C* ++ ID_VENDOR_FROM_DATABASE=Daimler AG +-- +1.7.9.2 + diff --git a/0008-hwdb-update.patch b/0008-hwdb-update.patch new file mode 100644 index 00000000..062b229b --- /dev/null +++ b/0008-hwdb-update.patch @@ -0,0 +1,1425 @@ +From cccc74971fe3c853832d742a15eac94f365603b6 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 20 Aug 2014 00:38:39 +0200 +Subject: [PATCH] update hwdb + +--- + hwdb/20-OUI.hwdb | 177 +++++++++++- + hwdb/20-pci-vendor-model.hwdb | 592 ++++++++++++++++++++++++++++++++++++++++- + hwdb/20-usb-vendor-model.hwdb | 12 + + 3 files changed, 776 insertions(+), 5 deletions(-) + +diff --git hwdb/20-OUI.hwdb hwdb/20-OUI.hwdb +index f9501be..e0c5fed 100644 +--- hwdb/20-OUI.hwdb ++++ hwdb/20-OUI.hwdb +@@ -21371,7 +21371,7 @@ OUI:000A2F* + ID_OUI_FROM_DATABASE=Artnix Inc. + + OUI:000A30* +- ID_OUI_FROM_DATABASE=Johnson Controls-ASG ++ ID_OUI_FROM_DATABASE=Visteon Corporation + + OUI:000A31* + ID_OUI_FROM_DATABASE=HCV Consulting +@@ -51601,6 +51601,9 @@ OUI:00E666* + OUI:00E6D3* + ID_OUI_FROM_DATABASE=NIXDORF COMPUTER CORP. + ++OUI:00E6E8* ++ ID_OUI_FROM_DATABASE=Netzin Technology Corporation,.Ltd. ++ + OUI:00E8AB* + ID_OUI_FROM_DATABASE=Meggitt Training Systems, Inc. + +@@ -51616,6 +51619,9 @@ OUI:00F051* + OUI:00F403* + ID_OUI_FROM_DATABASE=Orbis Systems Oy + ++OUI:00F46F* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:00F4B9* + ID_OUI_FROM_DATABASE=Apple + +@@ -51856,6 +51862,9 @@ OUI:0498F3* + OUI:0499E6* + ID_OUI_FROM_DATABASE=Shenzhen Yoostar Technology Co., Ltd + ++OUI:049B9C* ++ ID_OUI_FROM_DATABASE=Eadingcore Intelligent Technology Co., Ltd. ++ + OUI:049C62* + ID_OUI_FROM_DATABASE=BMT Medical Technology s.r.o. + +@@ -52720,6 +52729,9 @@ OUI:08E84F* + OUI:08EA44* + ID_OUI_FROM_DATABASE=Aerohive Networks, Inc. + ++OUI:08EB29* ++ ID_OUI_FROM_DATABASE=Jiangsu Huitong Group Co.,Ltd. ++ + OUI:08EB74* + ID_OUI_FROM_DATABASE=Humax + +@@ -52729,6 +52741,9 @@ OUI:08EBED* + OUI:08EDB9* + ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. + ++OUI:08EE8B* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:08EF3B* + ID_OUI_FROM_DATABASE=MCS Logic Inc. + +@@ -52969,6 +52984,9 @@ OUI:0CAC05* + OUI:0CAF5A* + ID_OUI_FROM_DATABASE=GENUS POWER INFRASTRUCTURES LIMITED + ++OUI:0CB319* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:0CB4EF* + ID_OUI_FROM_DATABASE=Digience Co.,Ltd. + +@@ -53036,7 +53054,7 @@ OUI:0CD996* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + + OUI:0CD9C1* +- ID_OUI_FROM_DATABASE=Johnson Controls-ASG ++ ID_OUI_FROM_DATABASE=Visteon Corporation + + OUI:0CDA41* + ID_OUI_FROM_DATABASE=Hangzhou H3C Technologies Co., Limited +@@ -53434,6 +53452,9 @@ OUI:10F96F* + OUI:10F9EE* + ID_OUI_FROM_DATABASE=Nokia Corporation + ++OUI:10FACE* ++ ID_OUI_FROM_DATABASE=Reacheng Communication Technology Co.,Ltd ++ + OUI:10FBF0* + ID_OUI_FROM_DATABASE=KangSheng LTD. + +@@ -55417,6 +55438,9 @@ OUI:2C441B* + OUI:2C44FD* + ID_OUI_FROM_DATABASE=Hewlett Packard + ++OUI:2C5089* ++ ID_OUI_FROM_DATABASE=Shenzhen Kaixuan Visual Technology Co.,Limited ++ + OUI:2C534A* + ID_OUI_FROM_DATABASE=Shenzhen Winyao Electronic Limited + +@@ -55774,6 +55798,9 @@ OUI:306E5C* + OUI:3071B2* + ID_OUI_FROM_DATABASE=Hangzhou Prevail Optoelectronic Equipment Co.,LTD. + ++OUI:307350* ++ ID_OUI_FROM_DATABASE=Inpeco SA ++ + OUI:307512* + ID_OUI_FROM_DATABASE=Sony Mobile Communications AB + +@@ -55972,6 +55999,9 @@ OUI:343111* + OUI:3431C4* + ID_OUI_FROM_DATABASE=AVM GmbH + ++OUI:3438AF* ++ ID_OUI_FROM_DATABASE=Inlab Software GmbH ++ + OUI:3440B5* + ID_OUI_FROM_DATABASE=IBM + +@@ -56323,12 +56353,18 @@ OUI:3826CD* + OUI:3828EA* + ID_OUI_FROM_DATABASE=Fujian Netcom Technology Co., LTD + ++OUI:382C4A* ++ ID_OUI_FROM_DATABASE=ASUSTek COMPUTER INC. ++ + OUI:382DD1* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + + OUI:3831AC* + ID_OUI_FROM_DATABASE=WEG + ++OUI:383BC8* ++ ID_OUI_FROM_DATABASE=2wire ++ + OUI:383F10* + ID_OUI_FROM_DATABASE=DBL Technology Ltd. + +@@ -56416,6 +56452,9 @@ OUI:388EE7* + OUI:3891FB* + ID_OUI_FROM_DATABASE=Xenox Holding BV + ++OUI:389496* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:389592* + ID_OUI_FROM_DATABASE=Beijing Tendyron Corporation + +@@ -56605,6 +56644,9 @@ OUI:3C1A79* + OUI:3C1CBE* + ID_OUI_FROM_DATABASE=JADAK LLC + ++OUI:3C1E13* ++ ID_OUI_FROM_DATABASE=HANGZHOU SUNRISE TECHNOLOGY CO., LTD ++ + OUI:3C25D7* + ID_OUI_FROM_DATABASE=Nokia Corporation + +@@ -57343,6 +57385,9 @@ OUI:446C24* + OUI:446D57* + ID_OUI_FROM_DATABASE=Liteon Technology Corporation + ++OUI:446D6C* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:44700B* + ID_OUI_FROM_DATABASE=IFFU + +@@ -57778,6 +57823,9 @@ OUI:4C09B4* + OUI:4C0B3A* + ID_OUI_FROM_DATABASE=TCT Mobile Limited + ++OUI:4C0BBE* ++ ID_OUI_FROM_DATABASE=Microsoft ++ + OUI:4C0DEE* + ID_OUI_FROM_DATABASE=JABIL CIRCUIT (SHANGHAI) LTD. + +@@ -58372,6 +58420,9 @@ OUI:50ED94* + OUI:50F003* + ID_OUI_FROM_DATABASE=Open Stack, Inc. + ++OUI:50F43C* ++ ID_OUI_FROM_DATABASE=Leeo Inc ++ + OUI:50F520* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -58405,6 +58456,9 @@ OUI:540536* + OUI:54055F* + ID_OUI_FROM_DATABASE=Alcatel Lucent + ++OUI:54098D* ++ ID_OUI_FROM_DATABASE=deister electronic GmbH ++ + OUI:54112F* + ID_OUI_FROM_DATABASE=Sulzer Pump Solutions Finland Oy + +@@ -59137,6 +59191,9 @@ OUI:5C93A2* + OUI:5C95AE* + ID_OUI_FROM_DATABASE=Apple + ++OUI:5C966A* ++ ID_OUI_FROM_DATABASE=RTNET ++ + OUI:5C969D* + ID_OUI_FROM_DATABASE=Apple + +@@ -59905,6 +59962,9 @@ OUI:64AE0C* + OUI:64AE88* + ID_OUI_FROM_DATABASE=Polytec GmbH + ++OUI:64B21D* ++ ID_OUI_FROM_DATABASE=Chengdu Phycom Tech Co., Ltd. ++ + OUI:64B310* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -59917,6 +59977,9 @@ OUI:64B473* + OUI:64B64A* + ID_OUI_FROM_DATABASE=ViVOtech, Inc. + ++OUI:64B853* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:64B9E8* + ID_OUI_FROM_DATABASE=Apple + +@@ -60208,6 +60271,9 @@ OUI:68974B* + OUI:6897E8* + ID_OUI_FROM_DATABASE=Society of Motion Picture & Television Engineers + ++OUI:6899CD* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:689C5E* + ID_OUI_FROM_DATABASE=AcSiP Technology Corp. + +@@ -60325,6 +60391,9 @@ OUI:68F06D* + OUI:68F125* + ID_OUI_FROM_DATABASE=Data Controls Inc. + ++OUI:68F728* ++ ID_OUI_FROM_DATABASE=LCFC(HeFei) Electronics Technology co., ltd ++ + OUI:68F895* + ID_OUI_FROM_DATABASE=Redflow Limited + +@@ -61081,12 +61150,18 @@ OUI:744D79* + OUI:745327* + ID_OUI_FROM_DATABASE=COMMSEN CO., LIMITED + ++OUI:74547D* ++ ID_OUI_FROM_DATABASE=Cisco SPVTG ++ + OUI:745612* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + + OUI:745798* + ID_OUI_FROM_DATABASE=TRUMPF Laser GmbH + Co. KG + ++OUI:745C9F* ++ ID_OUI_FROM_DATABASE=TCT mobile ltd. ++ + OUI:745E1C* + ID_OUI_FROM_DATABASE=PIONEER CORPORATION + +@@ -62446,6 +62521,9 @@ OUI:842615* + OUI:84262B* + ID_OUI_FROM_DATABASE=Alcatel-Lucent + ++OUI:842690* ++ ID_OUI_FROM_DATABASE=BEIJING THOUGHT SCIENCE CO.,LTD. ++ + OUI:8427CE* + ID_OUI_FROM_DATABASE=Corporation of the Presiding Bishop of The Church of Jesus Christ of Latter-day Saints + +@@ -62506,6 +62584,9 @@ OUI:844F03* + OUI:845181* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:8455A5* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:84569C* + ID_OUI_FROM_DATABASE=Coho Data, Inc., + +@@ -62611,6 +62692,9 @@ OUI:849CA6* + OUI:849DC5* + ID_OUI_FROM_DATABASE=Centera Photonics Inc. + ++OUI:84A466* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:84A6C8* + ID_OUI_FROM_DATABASE=Intel Corporate + +@@ -62824,6 +62908,9 @@ OUI:886B76* + OUI:88708C* + ID_OUI_FROM_DATABASE=Lenovo Mobile Communication Technology Ltd. + ++OUI:8870EF* ++ ID_OUI_FROM_DATABASE=SC Professional Trading Co., Ltd. ++ + OUI:887398* + ID_OUI_FROM_DATABASE=K2E Tekpoint + +@@ -62998,6 +63085,9 @@ OUI:8C006D* + OUI:8C04FF* + ID_OUI_FROM_DATABASE=Technicolor USA Inc. + ++OUI:8C0551* ++ ID_OUI_FROM_DATABASE=Koubachi AG ++ + OUI:8C078C* + ID_OUI_FROM_DATABASE=FLOW DATA INC + +@@ -63181,6 +63271,9 @@ OUI:8C8E76* + OUI:8C90D3* + ID_OUI_FROM_DATABASE=Alcatel Lucent + ++OUI:8C9109* ++ ID_OUI_FROM_DATABASE=Toyoshima Electric Technoeogy(Suzhou) Co.,Ltd. ++ + OUI:8C9236* + ID_OUI_FROM_DATABASE=Aus.Linx Technology Co., Ltd. + +@@ -64249,6 +64342,9 @@ OUI:98F8C1* + OUI:98F8DB* + ID_OUI_FROM_DATABASE=Marini Impianti Industriali s.r.l. + ++OUI:98FAE3* ++ ID_OUI_FROM_DATABASE=Xiaomi inc. ++ + OUI:98FB12* + ID_OUI_FROM_DATABASE=Grand Electronics (HK) Ltd + +@@ -64804,6 +64900,9 @@ OUI:A0A130* + OUI:A0A23C* + ID_OUI_FROM_DATABASE=GPMS + ++OUI:A0A3E2* ++ ID_OUI_FROM_DATABASE=Actiontec Electronics, Inc ++ + OUI:A0A763* + ID_OUI_FROM_DATABASE=Polytron Vertrieb GmbH + +@@ -64819,6 +64918,9 @@ OUI:A0B100* + OUI:A0B3CC* + ID_OUI_FROM_DATABASE=Hewlett Packard + ++OUI:A0B4A5* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:A0B5DA* + ID_OUI_FROM_DATABASE=HongKong THTF Co., Ltd + +@@ -65116,6 +65218,9 @@ OUI:A49A58* + OUI:A49B13* + ID_OUI_FROM_DATABASE=Burroughs Payment Systems, Inc. + ++OUI:A49D49* ++ ID_OUI_FROM_DATABASE=Ketra, Inc. ++ + OUI:A49EDB* + ID_OUI_FROM_DATABASE=AutoCrib, Inc. + +@@ -65389,6 +65494,9 @@ OUI:A8776F* + OUI:A87B39* + ID_OUI_FROM_DATABASE=Nokia Corporation + ++OUI:A87C01* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:A87E33* + ID_OUI_FROM_DATABASE=Nokia Danmark A/S + +@@ -65479,6 +65587,9 @@ OUI:A8CCC5* + OUI:A8CE90* + ID_OUI_FROM_DATABASE=CVC + ++OUI:A8D0E3* ++ ID_OUI_FROM_DATABASE=Systech Electronics Ltd. ++ + OUI:A8D0E5* + ID_OUI_FROM_DATABASE=Juniper Networks + +@@ -65488,6 +65599,9 @@ OUI:A8D236* + OUI:A8D3C8* + ID_OUI_FROM_DATABASE=Wachendorff Elektronik GmbH & Co. KG + ++OUI:A8D88A* ++ ID_OUI_FROM_DATABASE=Wyconn ++ + OUI:A8E018* + ID_OUI_FROM_DATABASE=Nokia Corporation + +@@ -65602,6 +65716,9 @@ OUI:AC3613* + OUI:AC3870* + ID_OUI_FROM_DATABASE=Lenovo Mobile Communication Technology Ltd. + ++OUI:AC3A7A* ++ ID_OUI_FROM_DATABASE=Roku ++ + OUI:AC3C0B* + ID_OUI_FROM_DATABASE=Apple + +@@ -66049,6 +66166,9 @@ OUI:B09074* + OUI:B09134* + ID_OUI_FROM_DATABASE=Taleo + ++OUI:B09137* ++ ID_OUI_FROM_DATABASE=ISis ImageStream Internet Solutions, Inc ++ + OUI:B0973A* + ID_OUI_FROM_DATABASE=E-Fuel Corporation + +@@ -66271,6 +66391,9 @@ OUI:B435F7* + OUI:B43741* + ID_OUI_FROM_DATABASE=Consert, Inc. + ++OUI:B43934* ++ ID_OUI_FROM_DATABASE=Pen Generations, Inc. ++ + OUI:B439D6* + ID_OUI_FROM_DATABASE=ProCurve Networking by HP + +@@ -66397,6 +66520,9 @@ OUI:B4A4E3* + OUI:B4A5A9* + ID_OUI_FROM_DATABASE=MODI GmbH + ++OUI:B4A828* ++ ID_OUI_FROM_DATABASE=Shenzhen Concox Information Technology Co., Ltd ++ + OUI:B4A82B* + ID_OUI_FROM_DATABASE=Histar Digital Electronics Co., Ltd. + +@@ -67114,6 +67240,9 @@ OUI:BCBAE1* + OUI:BCBBC9* + ID_OUI_FROM_DATABASE=Kellendonk Elektronik GmbH + ++OUI:BCBC46* ++ ID_OUI_FROM_DATABASE=SKS Welding Systems GmbH ++ + OUI:BCC168* + ID_OUI_FROM_DATABASE=DinBox Sverige AB + +@@ -67840,6 +67969,9 @@ OUI:C819F7* + OUI:C81AFE* + ID_OUI_FROM_DATABASE=DLOGIC GmbH + ++OUI:C81B6B* ++ ID_OUI_FROM_DATABASE=Innova Security ++ + OUI:C81E8E* + ID_OUI_FROM_DATABASE=ADV Security (S) Pte Ltd + +@@ -68530,6 +68662,9 @@ OUI:D01AA7* + OUI:D01CBB* + ID_OUI_FROM_DATABASE=Beijing Ctimes Digital Technology Co., Ltd. + ++OUI:D02212* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ + OUI:D022BE* + ID_OUI_FROM_DATABASE=Samsung Electro Mechanics co.,LTD. + +@@ -69259,6 +69394,9 @@ OUI:D831CF* + OUI:D8337F* + ID_OUI_FROM_DATABASE=Office FA.com Co.,Ltd. + ++OUI:D83C69* ++ ID_OUI_FROM_DATABASE=Tinno Mobile Technology Corp ++ + OUI:D842AC* + ID_OUI_FROM_DATABASE=Shanghai Feixun Communication Co.,Ltd. + +@@ -69349,6 +69487,9 @@ OUI:D88039* + OUI:D881CE* + ID_OUI_FROM_DATABASE=AHN INC. + ++OUI:D88466* ++ ID_OUI_FROM_DATABASE=Extreme Networks ++ + OUI:D88A3B* + ID_OUI_FROM_DATABASE=UNIT-EM + +@@ -69376,6 +69517,9 @@ OUI:D89760* + OUI:D8977C* + ID_OUI_FROM_DATABASE=Grey Innovation + ++OUI:D897BA* ++ ID_OUI_FROM_DATABASE=PEGATRON CORPORATION ++ + OUI:D89D67* + ID_OUI_FROM_DATABASE=Hewlett Packard + +@@ -69442,6 +69586,9 @@ OUI:D8C7C8* + OUI:D8C99D* + ID_OUI_FROM_DATABASE=EA DISPLAY LIMITED + ++OUI:D8CB8A* ++ ID_OUI_FROM_DATABASE=Micro-Star INTL CO., LTD. ++ + OUI:D8CF9C* + ID_OUI_FROM_DATABASE=Apple + +@@ -69505,6 +69652,9 @@ OUI:D8EE78* + OUI:D8F0F2* + ID_OUI_FROM_DATABASE=Zeebo Inc + ++OUI:D8F710* ++ ID_OUI_FROM_DATABASE=Libre Wireless Technologies Inc. ++ + OUI:D8FB11* + ID_OUI_FROM_DATABASE=AXACORE + +@@ -69749,7 +69899,7 @@ OUI:DCD87F* + ID_OUI_FROM_DATABASE=Shenzhen JoinCyber Telecom Equipment Ltd + + OUI:DCDA4F* +- ID_OUI_FROM_DATABASE=GET Technology,INC ++ ID_OUI_FROM_DATABASE=GETCK TECHNOLOGY, INC + + OUI:DCDECA* + ID_OUI_FROM_DATABASE=Akyllor +@@ -69763,6 +69913,9 @@ OUI:DCE578* + OUI:DCE71C* + ID_OUI_FROM_DATABASE=AUG Elektronik GmbH + ++OUI:DCEC06* ++ ID_OUI_FROM_DATABASE=Heimi Network Technology Co., Ltd. ++ + OUI:DCF05D* + ID_OUI_FROM_DATABASE=Letta Teknoloji + +@@ -69856,6 +70009,9 @@ OUI:E039D7* + OUI:E03C5B* + ID_OUI_FROM_DATABASE=SHENZHEN JIAXINJIE ELECTRON CO.,LTD + ++OUI:E03E44* ++ ID_OUI_FROM_DATABASE=Broadcom Corporation ++ + OUI:E03E4A* + ID_OUI_FROM_DATABASE=Cavanagh Group International + +@@ -70378,6 +70534,9 @@ OUI:E4F4C6* + OUI:E4F7A1* + ID_OUI_FROM_DATABASE=Datafox GmbH + ++OUI:E4F8EF* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:E4FA1D* + ID_OUI_FROM_DATABASE=PAD Peripheral Advanced Design Inc. + +@@ -70549,6 +70708,9 @@ OUI:E8802E* + OUI:E880D8* + ID_OUI_FROM_DATABASE=GNTEK Electronics Co.,Ltd. + ++OUI:E887A3* ++ ID_OUI_FROM_DATABASE=Loxley Public Company Limited ++ + OUI:E8892C* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + +@@ -70627,6 +70789,9 @@ OUI:E8C320* + OUI:E8CBA1* + ID_OUI_FROM_DATABASE=Nokia Corporation + ++OUI:E8CC18* ++ ID_OUI_FROM_DATABASE=D-Link International ++ + OUI:E8CC32* + ID_OUI_FROM_DATABASE=Micronet LTD + +@@ -71008,6 +71173,9 @@ OUI:F015A0* + OUI:F01C13* + ID_OUI_FROM_DATABASE=LG Electronics + ++OUI:F01C2D* ++ ID_OUI_FROM_DATABASE=Juniper Networks ++ + OUI:F01FAF* + ID_OUI_FROM_DATABASE=Dell Inc + +@@ -71398,6 +71566,9 @@ OUI:F4472A* + OUI:F44848* + ID_OUI_FROM_DATABASE=Amscreen Group Ltd + ++OUI:F44E05* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:F44EFD* + ID_OUI_FROM_DATABASE=Actions Semiconductor Co.,Ltd.(Cayman Islands) + +diff --git hwdb/20-pci-vendor-model.hwdb hwdb/20-pci-vendor-model.hwdb +index a6a2754..3bcdbc0 100644 +--- hwdb/20-pci-vendor-model.hwdb ++++ hwdb/20-pci-vendor-model.hwdb +@@ -10478,6 +10478,9 @@ pci:v00001014d0000034Asv00001014sd000004C8* + pci:v00001014d0000034Asv00001014sd00000C49* + ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe3 x 8 Cache SAS RAID Internal Adapter 6GB(2CCD)) + ++pci:v00001014d0000044B* ++ ID_MODEL_FROM_DATABASE=GenWQE Accelerator Adapter ++ + pci:v00001014d000004AA* + ID_MODEL_FROM_DATABASE=Flash Adapter 90 (PCIe2 0.9TB) + +@@ -26387,6 +26390,9 @@ pci:v000010DEd00000FE2* + pci:v000010DEd00000FE3* + ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 745M] + ++pci:v000010DEd00000FE3sv0000103Csd00002B16* ++ ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 745M] (GeForce GT 745A) ++ + pci:v000010DEd00000FE3sv000017AAsd00003675* + ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 745M] (GeForce GT 745A) + +@@ -26420,6 +26426,9 @@ pci:v000010DEd00000FF1* + pci:v000010DEd00000FF2* + ID_MODEL_FROM_DATABASE=GK107GL [GRID K1] + ++pci:v000010DEd00000FF3* ++ ID_MODEL_FROM_DATABASE=GK107GL [Quadro K420] ++ + pci:v000010DEd00000FF5* + ID_MODEL_FROM_DATABASE=GK107GL [GRID K1 Tesla USM] + +@@ -26546,6 +26555,9 @@ pci:v000010DEd00001029* + pci:v000010DEd0000103A* + ID_MODEL_FROM_DATABASE=GK110GL [Quadro K6000] + ++pci:v000010DEd0000103C* ++ ID_MODEL_FROM_DATABASE=GK110GL [Quadro K5200] ++ + pci:v000010DEd00001040* + ID_MODEL_FROM_DATABASE=GF119 [GeForce GT 520] + +@@ -26981,6 +26993,12 @@ pci:v000010DEd00001140sv00001028sd000005F4* + pci:v000010DEd00001140sv00001028sd0000064E* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + ++pci:v000010DEd00001140sv00001028sd00000652* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001028sd00000662* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ + pci:v000010DEd00001140sv00001028sd0000068D* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + +@@ -27239,9 +27257,15 @@ pci:v000010DEd00001140sv0000152Dsd00000982* + pci:v000010DEd00001140sv0000152Dsd00000983* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + ++pci:v000010DEd00001140sv0000152Dsd00001005* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 820M) ++ + pci:v000010DEd00001140sv0000152Dsd00001012* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + ++pci:v000010DEd00001140sv0000152Dsd00001019* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ + pci:v000010DEd00001140sv0000152Dsd00001030* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + +@@ -27254,6 +27278,9 @@ pci:v000010DEd00001140sv0000152Dsd00001067* + pci:v000010DEd00001140sv0000152Dsd00001072* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + ++pci:v000010DEd00001140sv0000152Dsd00001086* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ + pci:v000010DEd00001140sv000017AAsd00002200* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (NVS 5200M) + +@@ -27578,6 +27605,9 @@ pci:v000010DEd000011B0sv000010DEsd0000101B* + pci:v000010DEd000011B1* + ID_MODEL_FROM_DATABASE=GK104GL [GRID K2 Tesla USM] + ++pci:v000010DEd000011B4* ++ ID_MODEL_FROM_DATABASE=GK104GL [Quadro K4200] ++ + pci:v000010DEd000011B6* + ID_MODEL_FROM_DATABASE=GK104GLM [Quadro K3100M] + +@@ -27863,6 +27893,9 @@ pci:v000010DEd00001295sv0000103Csd00002B0F* + pci:v000010DEd00001295sv0000103Csd00002B11* + ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] (GeForce GT 710A) + ++pci:v000010DEd00001295sv0000103Csd00002B20* ++ ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] (GeForce 810A) ++ + pci:v000010DEd00001295sv0000103Csd00002B21* + ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] (GeForce GT 810A) + +@@ -27887,6 +27920,9 @@ pci:v000010DEd000012BA* + pci:v000010DEd00001340* + ID_MODEL_FROM_DATABASE=GM108M [GeForce 830M] + ++pci:v000010DEd00001340sv0000103Csd00002B2B* ++ ID_MODEL_FROM_DATABASE=GM108M [GeForce 830M] (GeForce 830A) ++ + pci:v000010DEd00001341* + ID_MODEL_FROM_DATABASE=GM108M [GeForce 840M] + +@@ -27926,6 +27962,15 @@ pci:v000010DEd00001392* + pci:v000010DEd00001393* + ID_MODEL_FROM_DATABASE=GM107M [GeForce 840M] + ++pci:v000010DEd000013B3* ++ ID_MODEL_FROM_DATABASE=GM107GLM [Quadro K2200M] ++ ++pci:v000010DEd000013BA* ++ ID_MODEL_FROM_DATABASE=GM107GL [Quadro K2200] ++ ++pci:v000010DEd000013BB* ++ ID_MODEL_FROM_DATABASE=GM107GL [Quadro K620] ++ + pci:v000010DF* + ID_VENDOR_FROM_DATABASE=Emulex Corporation + +@@ -29291,6 +29336,9 @@ pci:v00001103d00000622* + pci:v00001103d00000640* + ID_MODEL_FROM_DATABASE=RocketRAID 640 4 Port SATA-III Controller + ++pci:v00001103d00000644* ++ ID_MODEL_FROM_DATABASE=RocketRAID 644 4 Port SATA-III Controller (eSATA) ++ + pci:v00001103d00001720* + ID_MODEL_FROM_DATABASE=RocketRAID 1720 (2x SATA II RAID Controller) + +@@ -40325,6 +40373,12 @@ pci:v00001360d00000205* + pci:v00001360d00000206* + ID_MODEL_FROM_DATABASE=GPS180PEX GPS Receiver (PCI Express) + ++pci:v00001360d00000207* ++ ID_MODEL_FROM_DATABASE=GLN180PEX GPS/GLONASS receiver (PCI Express) ++ ++pci:v00001360d00000208* ++ ID_MODEL_FROM_DATABASE=GPS180AMC GPS Receiver (PCI Express / MicroTCA / AdvancedMC) ++ + pci:v00001360d00000301* + ID_MODEL_FROM_DATABASE=TCR510PCI IRIG Timecode Reader + +@@ -41525,6 +41579,9 @@ pci:v000013F6d00008788sv00001043sd00008428* + pci:v000013F6d00008788sv00001043sd00008467* + ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (CMI8786 (Xonar DG)) + ++pci:v000013F6d00008788sv00001043sd000085F4* ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (Virtuoso 100 (Xonar Essence STX II)) ++ + pci:v000013F6d00008788sv000013F6sd00008782* + ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (PCI 2.0 HD Audio) + +@@ -45905,6 +45962,9 @@ pci:v000014E4d000043A0* + pci:v000014E4d000043A9* + ID_MODEL_FROM_DATABASE=BCM43217 802.11b/g/n + ++pci:v000014E4d000043AA* ++ ID_MODEL_FROM_DATABASE=BCM43131 802.11b/g/n ++ + pci:v000014E4d000043B1* + ID_MODEL_FROM_DATABASE=BCM4352 802.11ac Wireless Network Adapter + +@@ -46884,7 +46944,7 @@ pci:v000014F1d00008852* + ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder + + pci:v000014F1d00008852sv00000070sd00008010* +- ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder (Hauppauge WinTV HVR-1400 ExpressCard) ++ ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder (WinTV HVR-1400 ExpressCard) + + pci:v000014F1d00008852sv0000107Dsd00006F22* + ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder (WinFast PxTV1200) +@@ -46898,6 +46958,9 @@ pci:v000014F1d00008852sv0000153Bsd0000117E* + pci:v000014F1d00008852sv000018ACsd0000DB78* + ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder (FusionHDTV DVB-T Dual Express) + ++pci:v000014F1d00008852sv00004254sd00009580* ++ ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder (T9580) ++ + pci:v000014F1d00008880* + ID_MODEL_FROM_DATABASE=CX23887/8 PCIe Broadcast Audio and Video Decoder with 3D Comb + +@@ -47438,6 +47501,18 @@ pci:v00001542* + pci:v00001542d00009260* + ID_MODEL_FROM_DATABASE=RCIM-II Real-Time Clock & Interrupt Module + ++pci:v00001542d00009272* ++ ID_MODEL_FROM_DATABASE=Pulse Width Modulator Card ++ ++pci:v00001542d00009277* ++ ID_MODEL_FROM_DATABASE=5 Volt Delta Sigma Converter Card ++ ++pci:v00001542d00009278* ++ ID_MODEL_FROM_DATABASE=10 Volt Delta Sigma Converter Card ++ ++pci:v00001542d00009287* ++ ID_MODEL_FROM_DATABASE=Analog Output Card ++ + pci:v00001543* + ID_VENDOR_FROM_DATABASE=SILICON Laboratories + +@@ -49505,6 +49580,9 @@ pci:v000016B8* + pci:v000016BE* + ID_VENDOR_FROM_DATABASE=Creatix Polymedia GmbH + ++pci:v000016C3* ++ ID_VENDOR_FROM_DATABASE=Synopsys, Inc. ++ + pci:v000016C6* + ID_VENDOR_FROM_DATABASE=Micrel-Kendin + +@@ -53936,6 +54014,9 @@ pci:v0000416Cd00000100* + pci:v0000416Cd00000200* + ID_MODEL_FROM_DATABASE=CPC + ++pci:v00004254* ++ ID_VENDOR_FROM_DATABASE=DVBSky ++ + pci:v00004321* + ID_VENDOR_FROM_DATABASE=Tata Power Strategic Electronics Division + +@@ -59621,6 +59702,12 @@ pci:v00008086d000015A2* + pci:v00008086d000015A3* + ID_MODEL_FROM_DATABASE=Ethernet Connection (3) I218-V + ++pci:v00008086d000015B7* ++ ID_MODEL_FROM_DATABASE=Ethernet Connection (2) I219-V ++ ++pci:v00008086d000015B8* ++ ID_MODEL_FROM_DATABASE=Ethernet Connection (2) I219-LM ++ + pci:v00008086d00001600* + ID_MODEL_FROM_DATABASE=Broadwell-U Host Bridge -OPI + +@@ -69614,6 +69701,9 @@ pci:v00008086d00003B23* + pci:v00008086d00003B25* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SATA RAID Controller + ++pci:v00008086d00003B25sv0000103Csd00003118* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SATA RAID Controller (HP Smart Array B110i SATA RAID Controller) ++ + pci:v00008086d00003B26* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 2 port SATA IDE Controller + +@@ -70718,6 +70808,489 @@ pci:v00008086d000065FA* + pci:v00008086d000065FF* + ID_MODEL_FROM_DATABASE=5100 Chipset DMA Engine + ++pci:v00008086d00006F00* ++ ID_MODEL_FROM_DATABASE=Broadwell DMI2 ++ ++pci:v00008086d00006F01* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 0 ++ ++pci:v00008086d00006F02* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 1 ++ ++pci:v00008086d00006F03* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 1 ++ ++pci:v00008086d00006F04* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 2 ++ ++pci:v00008086d00006F05* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 2 ++ ++pci:v00008086d00006F06* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 2 ++ ++pci:v00008086d00006F07* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 2 ++ ++pci:v00008086d00006F08* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 3 ++ ++pci:v00008086d00006F09* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 3 ++ ++pci:v00008086d00006F0A* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 3 ++ ++pci:v00008086d00006F0B* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 3 ++ ++pci:v00008086d00006F10* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F11* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F12* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F13* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F14* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F15* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F16* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F17* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F18* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F19* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F1A* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F1B* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F1C* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F1D* ++ ID_MODEL_FROM_DATABASE=Broadwell R2PCIe Agent ++ ++pci:v00008086d00006F1E* ++ ID_MODEL_FROM_DATABASE=Broadwell Ubox ++ ++pci:v00008086d00006F1F* ++ ID_MODEL_FROM_DATABASE=Broadwell Ubox ++ ++pci:v00008086d00006F20* ++ ID_MODEL_FROM_DATABASE=Broadwell-DE Crystal Beach DMA Channel 0 ++ ++pci:v00008086d00006F21* ++ ID_MODEL_FROM_DATABASE=Broadwell-DE Crystal Beach DMA Channel 1 ++ ++pci:v00008086d00006F22* ++ ID_MODEL_FROM_DATABASE=Broadwell-DE Crystal Beach DMA Channel 2 ++ ++pci:v00008086d00006F23* ++ ID_MODEL_FROM_DATABASE=Broadwell-DE Crystal Beach DMA Channel 3 ++ ++pci:v00008086d00006F24* ++ ID_MODEL_FROM_DATABASE=Broadwell-DE Crystal Beach DMA Channel 4 ++ ++pci:v00008086d00006F25* ++ ID_MODEL_FROM_DATABASE=Broadwell-DE Crystal Beach DMA Channel 5 ++ ++pci:v00008086d00006F26* ++ ID_MODEL_FROM_DATABASE=Broadwell-DE Crystal Beach DMA Channel 6 ++ ++pci:v00008086d00006F27* ++ ID_MODEL_FROM_DATABASE=Broadwell-DE Crystal Beach DMA Channel 7 ++ ++pci:v00008086d00006F28* ++ ID_MODEL_FROM_DATABASE=Broadwell Adress Map/VTd_Misc/System Management ++ ++pci:v00008086d00006F29* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Hot Plug ++ ++pci:v00008086d00006F2A* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO RAS/Control Status/Global Errors ++ ++pci:v00008086d00006F2C* ++ ID_MODEL_FROM_DATABASE=Broadwell I/O APIC ++ ++pci:v00008086d00006F30* ++ ID_MODEL_FROM_DATABASE=Broadwell Home Agent 0 ++ ++pci:v00008086d00006F32* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 0 ++ ++pci:v00008086d00006F33* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 1 ++ ++pci:v00008086d00006F34* ++ ID_MODEL_FROM_DATABASE=Broadwell R2PCIe Agent ++ ++pci:v00008086d00006F36* ++ ID_MODEL_FROM_DATABASE=Broadwell R3 QPI Link 0/1 ++ ++pci:v00008086d00006F37* ++ ID_MODEL_FROM_DATABASE=Broadwell R3 QPI Link 0/1 ++ ++pci:v00008086d00006F38* ++ ID_MODEL_FROM_DATABASE=Broadwell Home Agent 1 ++ ++pci:v00008086d00006F39* ++ ID_MODEL_FROM_DATABASE=Broadwell IO Performance Monitoring ++ ++pci:v00008086d00006F3A* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 2 ++ ++pci:v00008086d00006F3E* ++ ID_MODEL_FROM_DATABASE=Broadwell R3 QPI Link 2 ++ ++pci:v00008086d00006F3F* ++ ID_MODEL_FROM_DATABASE=Broadwell R3 QPI Link 2 ++ ++pci:v00008086d00006F40* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 2 ++ ++pci:v00008086d00006F41* ++ ID_MODEL_FROM_DATABASE=Broadwell R3 QPI Link 2 ++ ++pci:v00008086d00006F43* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 2 ++ ++pci:v00008086d00006F45* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 2 Debug ++ ++pci:v00008086d00006F46* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 2 Debug ++ ++pci:v00008086d00006F47* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 2 Debug ++ ++pci:v00008086d00006F60* ++ ID_MODEL_FROM_DATABASE=Broadwell Home Agent 1 ++ ++pci:v00008086d00006F68* ++ ID_MODEL_FROM_DATABASE=Broadwell Target Address/Thermal/RAS ++ ++pci:v00008086d00006F6A* ++ ID_MODEL_FROM_DATABASE=Broadwell Channel Target Address Decoder ++ ++pci:v00008086d00006F6B* ++ ID_MODEL_FROM_DATABASE=Broadwell Channel Target Address Decoder ++ ++pci:v00008086d00006F6C* ++ ID_MODEL_FROM_DATABASE=Broadwell Channel Target Address Decoder ++ ++pci:v00008086d00006F6D* ++ ID_MODEL_FROM_DATABASE=Broadwell Channel Target Address Decoder ++ ++pci:v00008086d00006F6E* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 2/3 Broadcast ++ ++pci:v00008086d00006F6F* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Global Broadcast ++ ++pci:v00008086d00006F70* ++ ID_MODEL_FROM_DATABASE=Broadwell Home Agent 0 Debug ++ ++pci:v00008086d00006F71* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Target Address/Thermal/RAS ++ ++pci:v00008086d00006F76* ++ ID_MODEL_FROM_DATABASE=Broadwell R3 QPI Link Debug ++ ++pci:v00008086d00006F78* ++ ID_MODEL_FROM_DATABASE=Broadwell Home Agent 1 Debug ++ ++pci:v00008086d00006F79* ++ ID_MODEL_FROM_DATABASE=Broadwell Target Address/Thermal/RAS ++ ++pci:v00008086d00006F7D* ++ ID_MODEL_FROM_DATABASE=Broadwell Ubox ++ ++pci:v00008086d00006F7E* ++ ID_MODEL_FROM_DATABASE=Broadwell R3 QPI Link Debug ++ ++pci:v00008086d00006F80* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 0 ++ ++pci:v00008086d00006F81* ++ ID_MODEL_FROM_DATABASE=Broadwell R3 QPI Link 0/1 ++ ++pci:v00008086d00006F83* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 0 ++ ++pci:v00008086d00006F85* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 0 Debug ++ ++pci:v00008086d00006F86* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 0 Debug ++ ++pci:v00008086d00006F87* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 0 Debug ++ ++pci:v00008086d00006F88* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006F8A* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006F90* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 1 ++ ++pci:v00008086d00006F93* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 1 ++ ++pci:v00008086d00006F95* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 1 Debug ++ ++pci:v00008086d00006F96* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 1 Debug ++ ++pci:v00008086d00006F98* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006F99* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006F9A* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006F9C* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FA0* ++ ID_MODEL_FROM_DATABASE=Broadwell Home Agent 0 ++ ++pci:v00008086d00006FA8* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Target Address/Thermal/RAS ++ ++pci:v00008086d00006FAA* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel Target Address Decoder ++ ++pci:v00008086d00006FAB* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel Target Address Decoder ++ ++pci:v00008086d00006FAC* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel Target Address Decoder ++ ++pci:v00008086d00006FAD* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel Target Address Decoder ++ ++pci:v00008086d00006FAE* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 0/1 Broadcast ++ ++pci:v00008086d00006FAF* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Global Broadcast ++ ++pci:v00008086d00006FB0* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel 0 Thermal Control ++ ++pci:v00008086d00006FB1* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel 1 Thermal Control ++ ++pci:v00008086d00006FB2* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel 0 Error ++ ++pci:v00008086d00006FB3* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel 1 Error ++ ++pci:v00008086d00006FB4* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel 2 Thermal Control ++ ++pci:v00008086d00006FB5* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel 3 Thermal Control ++ ++pci:v00008086d00006FB6* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel 2 Error ++ ++pci:v00008086d00006FB7* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel 3 Error ++ ++pci:v00008086d00006FB8* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 2/3 Interface ++ ++pci:v00008086d00006FB9* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 2/3 Interface ++ ++pci:v00008086d00006FBA* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 2/3 Interface ++ ++pci:v00008086d00006FBB* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 2/3 Interface ++ ++pci:v00008086d00006FBC* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 0/1 Interface ++ ++pci:v00008086d00006FBD* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 0/1 Interface ++ ++pci:v00008086d00006FBE* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 0/1 Interface ++ ++pci:v00008086d00006FBF* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 0/1 Interface ++ ++pci:v00008086d00006FC0* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC1* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC2* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC3* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC4* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC5* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC6* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC7* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC8* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC9* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FCA* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FCB* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FCC* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FCD* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FCE* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FCF* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FD0* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 1 - Channel 0 Thermal Control ++ ++pci:v00008086d00006FD1* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 1 - Channel 1 Thermal Control ++ ++pci:v00008086d00006FD2* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 1 - Channel 0 Error ++ ++pci:v00008086d00006FD3* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 1 - Channel 1 Error ++ ++pci:v00008086d00006FD4* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 1 - Channel 2 Thermal Control ++ ++pci:v00008086d00006FD5* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 1 - Channel 3 Thermal Control ++ ++pci:v00008086d00006FD6* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 1 - Channel 2 Error ++ ++pci:v00008086d00006FD7* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 1 - Channel 3 Error ++ ++pci:v00008086d00006FE0* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE1* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE2* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE3* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE4* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE5* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE6* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE7* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE8* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE9* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FEA* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FEB* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FEC* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FED* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FEE* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FEF* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FF0* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FF1* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FF8* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FF9* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FFA* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FFB* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FFC* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FFD* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FFE* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ + pci:v00008086d00007000* + ID_MODEL_FROM_DATABASE=82371SB PIIX3 ISA [Natoma/Triton II] + +@@ -73838,8 +74411,23 @@ pci:v0000D161d0000800A* + pci:v0000D161d0000800B* + ID_MODEL_FROM_DATABASE=Wildcard TE134 single-span T1/E1/J1 card + ++pci:v0000D161d0000800C* ++ ID_MODEL_FROM_DATABASE=Wildcard A8A 8-port analog card ++ ++pci:v0000D161d0000800D* ++ ID_MODEL_FROM_DATABASE=Wildcard A8B 8-port analog card (PCI-Express) ++ + pci:v0000D161d0000800E* +- ID_MODEL_FROM_DATABASE=Wildcard TE435P quad-span T1/E1/J1 card 3.3V (PCI-Express) ++ ID_MODEL_FROM_DATABASE=Wildcard TE235/TE435 quad-span T1/E1/J1 card (PCI-Express) ++ ++pci:v0000D161d0000800F* ++ ID_MODEL_FROM_DATABASE=Wildcard A4A 4-port analog card ++ ++pci:v0000D161d00008010* ++ ID_MODEL_FROM_DATABASE=Wildcard A4B 4-port analog card (PCI-Express) ++ ++pci:v0000D161d00008013* ++ ID_MODEL_FROM_DATABASE=Wildcard TE236/TE436 quad-span T1/E1/J1 card + + pci:v0000D161d0000B410* + ID_MODEL_FROM_DATABASE=Wildcard B410 quad-BRI card +diff --git hwdb/20-usb-vendor-model.hwdb hwdb/20-usb-vendor-model.hwdb +index ed6b2b1..d87313c 100644 +--- hwdb/20-usb-vendor-model.hwdb ++++ hwdb/20-usb-vendor-model.hwdb +@@ -11243,6 +11243,9 @@ usb:v04A9p3261* + usb:v04A9p3262* + ID_MODEL_FROM_DATABASE=PowerShot A2600 + ++usb:v04A9p3263* ++ ID_MODEL_FROM_DATABASE=PowerShot SX275 HS ++ + usb:v04A9p3264* + ID_MODEL_FROM_DATABASE=PowerShot A1400 + +@@ -11261,6 +11264,9 @@ usb:v04A9p3276* + usb:v04A9p3277* + ID_MODEL_FROM_DATABASE=PowerShot SX510 HS + ++usb:v04A9p3278* ++ ID_MODEL_FROM_DATABASE=PowerShot S200 ++ + usb:v04A9p327D* + ID_MODEL_FROM_DATABASE=Powershot ELPH 115 IS / IXUS 132 + +@@ -11666,6 +11672,9 @@ usb:v04B4p2050* + usb:v04B4p2830* + ID_MODEL_FROM_DATABASE=Opera1 DVB-S (cold state) + ++usb:v04B4p3813* ++ ID_MODEL_FROM_DATABASE=NANO BIOS Programmer ++ + usb:v04B4p4235* + ID_MODEL_FROM_DATABASE=Monitor 02 Driver + +@@ -33116,6 +33125,9 @@ usb:v0B48p300D* + usb:v0B48p300E* + ID_MODEL_FROM_DATABASE=TT-connect C-2400 + ++usb:v0B48p3012* ++ ID_MODEL_FROM_DATABASE=TT-connect CT2-4650 CI ++ + usb:v0B48p3014* + ID_MODEL_FROM_DATABASE=TT-TVStick CT2-4400 + +-- +1.7.9.2 + diff --git a/0008-journald-fix-memory-leak-on-error-path.patch b/0008-journald-fix-memory-leak-on-error-path.patch new file mode 100644 index 00000000..6f67860c --- /dev/null +++ b/0008-journald-fix-memory-leak-on-error-path.patch @@ -0,0 +1,29 @@ +From 26d8ff04914a5208d029e899682cd314b7714bf0 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 3 Nov 2014 23:10:34 +0100 +Subject: [PATCH] journald: fix memory leak on error path + +--- + src/journal/journal-vacuum.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git src/journal/journal-vacuum.c src/journal/journal-vacuum.c +index d141fe0..80723c4 100644 +--- src/journal/journal-vacuum.c ++++ src/journal/journal-vacuum.c +@@ -283,7 +283,11 @@ int journal_directory_vacuum( + + patch_realtime(directory, p, &st, &realtime); + +- GREEDY_REALLOC(list, n_allocated, n_list + 1); ++ if (!GREEDY_REALLOC(list, n_allocated, n_list + 1)) { ++ free(p); ++ r = -ENOMEM; ++ goto finish; ++ } + + list[n_list].filename = p; + list[n_list].usage = 512UL * (uint64_t) st.st_blocks; +-- +1.7.9.2 + diff --git a/0008-man-multiple-sleep-modes-are-to-be-separated-by-whit.patch b/0008-man-multiple-sleep-modes-are-to-be-separated-by-whit.patch new file mode 100644 index 00000000..b43a43c1 --- /dev/null +++ b/0008-man-multiple-sleep-modes-are-to-be-separated-by-whit.patch @@ -0,0 +1,36 @@ +From 252094eb05c58270a0bc35b14ad30a126ddbb3bb Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Tue, 11 Mar 2014 05:23:39 +0100 +Subject: [PATCH] man: multiple sleep modes are to be separated by whitespace, + not commas + +As pointed out by Jason A. Donenfeld. +--- + man/systemd-sleep.conf.xml | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git man/systemd-sleep.conf.xml man/systemd-sleep.conf.xml +index a917f4d..d0ea6d8 100644 +--- man/systemd-sleep.conf.xml ++++ man/systemd-sleep.conf.xml +@@ -128,7 +128,7 @@ along with systemd; If not, see . + systemd-hibernate.service8, or + systemd-hybrid-sleep.service8. + More than one value can be specified by separating +- multiple values with commas. They will be tried ++ multiple values with whitespace. They will be tried + in turn, until one is written without error. If + neither succeeds, the operation will be aborted. + +@@ -146,7 +146,7 @@ along with systemd; If not, see . + systemd-hibernate.service8, or + systemd-hybrid-sleep.service8. + More than one value can be specified by separating +- multiple values with commas. They will be tried ++ multiple values with whitespace. They will be tried + in turn, until one is written without error. If + neither succeeds, the operation will be aborted. + +-- +1.7.9.2 + diff --git a/0008-man-update-journald-rate-limit-defaults.patch b/0008-man-update-journald-rate-limit-defaults.patch new file mode 100644 index 00000000..54aad943 --- /dev/null +++ b/0008-man-update-journald-rate-limit-defaults.patch @@ -0,0 +1,28 @@ +From 8f18f550e7023948f199616fdfbb0f09711fd615 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Mantas=20Mikul=C4=97nas?= +Date: Wed, 30 Apr 2014 19:53:13 +0300 +Subject: [PATCH] man: update journald rate limit defaults + +This brings the man page back into sync with the actual code. +--- + man/journald.conf.xml | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git man/journald.conf.xml man/journald.conf.xml +index 239a2ec..5cd09a2 100644 +--- man/journald.conf.xml ++++ man/journald.conf.xml +@@ -190,8 +190,8 @@ + limiting is applied per-service, so + that two services which log do not + interfere with each other's +- limits. Defaults to 200 messages in +- 10s. The time specification for ++ limits. Defaults to 1000 messages in ++ 30s. The time specification for + RateLimitInterval= + may be specified in the following + units: s, +-- +1.7.9.2 + diff --git a/0008-mount-setup-fix-counting-of-early-mounts-without-SMA.patch b/0008-mount-setup-fix-counting-of-early-mounts-without-SMA.patch new file mode 100644 index 00000000..b189c671 --- /dev/null +++ b/0008-mount-setup-fix-counting-of-early-mounts-without-SMA.patch @@ -0,0 +1,32 @@ +From 7c96ab1d2484ab2df3c6a84f1a1d2e076f469085 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 13 Aug 2014 20:01:19 +0200 +Subject: [PATCH] mount-setup: fix counting of early mounts without SMACK + +http://lists.freedesktop.org/archives/systemd-devel/2014-August/021772.html +--- + src/core/mount-setup.c | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git src/core/mount-setup.c src/core/mount-setup.c +index 206f89a..cc2633e 100644 +--- src/core/mount-setup.c ++++ src/core/mount-setup.c +@@ -63,8 +63,13 @@ typedef struct MountPoint { + + /* The first three entries we might need before SELinux is up. The + * fourth (securityfs) is needed by IMA to load a custom policy. The +- * other ones we can delay until SELinux and IMA are loaded. */ ++ * other ones we can delay until SELinux and IMA are loaded. When ++ * SMACK is enabled we need smackfs, too, so it's a fifth one. */ ++#ifdef HAVE_SMACK + #define N_EARLY_MOUNT 5 ++#else ++#define N_EARLY_MOUNT 4 ++#endif + + static const MountPoint mount_table[] = { + { "sysfs", "/sys", "sysfs", NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV, +-- +1.7.9.2 + diff --git a/0008-sd-bus-don-t-access-invalid-memory-if-a-signal-match.patch b/0008-sd-bus-don-t-access-invalid-memory-if-a-signal-match.patch new file mode 100644 index 00000000..d2eac44b --- /dev/null +++ b/0008-sd-bus-don-t-access-invalid-memory-if-a-signal-match.patch @@ -0,0 +1,27 @@ +From bbb6ff0216a7c081a2e63e01b1f121592b0165bb Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 14 Mar 2014 21:12:36 +0100 +Subject: [PATCH] sd-bus: don't access invalid memory if a signal matcher was + freed from its own callback + +--- + src/libsystemd/sd-bus/bus-match.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git src/libsystemd/sd-bus/bus-match.c src/libsystemd/sd-bus/bus-match.c +index 8280488..c54ca8d 100644 +--- src/libsystemd/sd-bus/bus-match.c ++++ src/libsystemd/sd-bus/bus-match.c +@@ -293,6 +293,9 @@ int bus_match_run( + r = bus_maybe_reply_error(m, r, &error_buffer); + if (r != 0) + return r; ++ ++ if (bus && bus->match_callbacks_modified) ++ return 0; + } + + return bus_match_run(bus, node->next, m); +-- +1.7.9.2 + diff --git a/0008-shared-conf-parser-don-t-leak-memory-on-error-in-DEF.patch b/0008-shared-conf-parser-don-t-leak-memory-on-error-in-DEF.patch new file mode 100644 index 00000000..3e5d0c03 --- /dev/null +++ b/0008-shared-conf-parser-don-t-leak-memory-on-error-in-DEF.patch @@ -0,0 +1,52 @@ +Based on 77c10205bb337585c320e91af4b416f2dcc6faba Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Thu, 18 Sep 2014 13:47:00 +0200 +Subject: [PATCH] shared: conf-parser - don't leak memory on error in + DEFINE_CONFIG_PARSE_ENUMV + +Found by Coverity. Fixes CID #1237746. +--- + src/shared/conf-parser.h | 12 +++++++++--- + 1 file changed, 9 insertions(+), 3 deletions(-) + +--- src/shared/conf-parser.h ++++ src/shared/conf-parser.h 2014-09-18 13:14:43.730234764 +0000 +@@ -171,7 +171,8 @@ int log_syntax_internal(const char *unit + void *data, \ + void *userdata) { \ + \ +- type **enums = data, *xs, x, *ys; \ ++ type **enums = data, x, *ys; \ ++ _cleanup_free_ type *xs = NULL; \ + char *w, *state; \ + size_t l, i = 0; \ + \ +@@ -187,6 +188,7 @@ int log_syntax_internal(const char *unit + \ + FOREACH_WORD(w, l, rvalue, state) { \ + _cleanup_free_ char *en = NULL; \ ++ type *new_xs; \ + \ + en = strndup(w, l); \ + if (!en) \ +@@ -212,8 +214,10 @@ int log_syntax_internal(const char *unit + continue; \ + \ + *(xs + i) = x; \ +- xs = realloc(xs, (++i + 1) * sizeof(type)); \ +- if (!xs) \ ++ new_xs = realloc(xs, (++i + 1) * sizeof(type)); \ ++ if (new_xs) \ ++ xs = new_xs; \ ++ else \ + return -ENOMEM; \ + \ + *(xs + i) = invalid; \ +@@ -221,5 +225,7 @@ int log_syntax_internal(const char *unit + \ + free(*enums); \ + *enums = xs; \ ++ xs = NULL; \ ++ \ + return 0; \ + } diff --git a/0008-shell-completion-prevent-mangling-unit-names-bash.patch b/0008-shell-completion-prevent-mangling-unit-names-bash.patch new file mode 100644 index 00000000..7a52c0d7 --- /dev/null +++ b/0008-shell-completion-prevent-mangling-unit-names-bash.patch @@ -0,0 +1,87 @@ +Based on c317a1a19cd9584e07ee43f1b6fafc26c2c75cca Mon Sep 17 00:00:00 2001 +From: Eric Cook +Date: Sun, 27 Jul 2014 15:07:03 -0400 +Subject: [PATCH] shell-completion: prevent mangling unit names (bash) + +This fixes the issue noted by Zbigniew in most cases. +if a unit's name is enclosed in single quotes completion still +will not happen after the first `\'. + +https://bugs.freedesktop.org/show_bug.cgi?id=78388 +--- + shell-completion/bash/systemctl.in | 13 ++++++++++++- + 1 file changed, 12 insertions(+), 1 deletion(-) + +diff --git shell-completion/bash/systemctl.in shell-completion/bash/systemctl.in +index 69ef04b..64b15df 100644 +--- shell-completion/bash/systemctl ++++ shell-completion/bash/systemctl +@@ -158,20 +158,25 @@ _systemctl () { + + elif __contains_word "$verb" ${VERBS[ALL_UNITS]}; then + comps=$( __get_all_units $mode ) ++ compopt -o filenames + + elif __contains_word "$verb" ${VERBS[ENABLED_UNITS]}; then + comps=$( __get_enabled_units $mode ) ++ compopt -o filenames + + elif __contains_word "$verb" ${VERBS[DISABLED_UNITS]}; then + comps=$( __get_disabled_units $mode ) ++ compopt -o filenames + + elif __contains_word "$verb" ${VERBS[REENABLABLE_UNITS]}; then + comps=$( __get_disabled_units $mode; + __get_enabled_units $mode ) ++ compopt -o filenames + + elif __contains_word "$verb" ${VERBS[STARTABLE_UNITS]}; then + comps=$( __filter_units_by_property $mode CanStart yes \ + $( __get_startable_units $mode)) ++ compopt -o filenames + + elif __contains_word "$verb" ${VERBS[RESTARTABLE_UNITS]}; then + comps=$( __filter_units_by_property $mode CanStart yes \ +@@ -179,24 +184,30 @@ _systemctl () { + | while read -r line; do \ + [[ "$line" =~ \.(device|snapshot|socket|timer)$ ]] || echo " $line"; \ + done )) ++ compopt -o filenames + + elif __contains_word "$verb" ${VERBS[STOPPABLE_UNITS]}; then + comps=$( __filter_units_by_property $mode CanStop yes \ + $( __get_active_units $mode ) ) ++ compopt -o filenames + + elif __contains_word "$verb" ${VERBS[RELOADABLE_UNITS]}; then + comps=$( __filter_units_by_property $mode CanReload yes \ + $( __get_active_units $mode ) ) ++ compopt -o filenames + + elif __contains_word "$verb" ${VERBS[ISOLATABLE_UNITS]}; then + comps=$( __filter_units_by_property $mode AllowIsolate yes \ + $( __get_all_units $mode ) ) ++ compopt -o filenames + + elif __contains_word "$verb" ${VERBS[FAILED_UNITS]}; then + comps=$( __get_failed_units $mode ) ++ compopt -o filenames + + elif __contains_word "$verb" ${VERBS[MASKED_UNITS]}; then + comps=$( __get_masked_units $mode ) ++ compopt -o filenames + + elif __contains_word "$verb" ${VERBS[STANDALONE]} ${VERBS[NAME]}; then + comps='' +@@ -221,7 +232,7 @@ _systemctl () { + | { while read -r a b; do echo " $a"; done; } ) + fi + +- COMPREPLY=( $(compgen -W '$comps' -- "$cur") ) ++ COMPREPLY=( $(compgen -o filenames -W '$comps' -- "$cur") ) + return 0 + } + +-- +1.7.9.2 + diff --git a/0008-systemctl-kill-mode-is-long-long-gone-don-t-mention-.patch b/0008-systemctl-kill-mode-is-long-long-gone-don-t-mention-.patch new file mode 100644 index 00000000..b4564a5a --- /dev/null +++ b/0008-systemctl-kill-mode-is-long-long-gone-don-t-mention-.patch @@ -0,0 +1,53 @@ +From 0088d63151e088d62104d88f866e9eb049091c22 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Tue, 25 Mar 2014 00:31:48 +0100 +Subject: [PATCH] systemctl: --kill-mode is long long gone, don't mention it + in the man page + +--- + man/systemctl.xml | 5 ++--- + shell-completion/bash/systemctl | 5 +---- + 2 files changed, 3 insertions(+), 7 deletions(-) + +diff --git man/systemctl.xml man/systemctl.xml +index 77447dd..b4727d9 100644 +--- man/systemctl.xml ++++ man/systemctl.xml +@@ -664,9 +664,8 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service + + Send a signal to one or more processes of the + unit. Use to select which +- process to kill. Use to select +- the kill mode and to select the +- signal to send. ++ process to kill. Use to select ++ the signal to send. + + + +diff --git shell-completion/bash/systemctl shell-completion/bash/systemctl +index dc7ef66..0dfc868 100644 +--- shell-completion/bash/systemctl ++++ shell-completion/bash/systemctl +@@ -74,7 +74,7 @@ _systemctl () { + [STANDALONE]='--all -a --reverse --after --before --defaults --fail --ignore-dependencies --failed --force -f --full -l --global + --help -h --no-ask-password --no-block --no-legend --no-pager --no-reload --no-wall + --quiet -q --privileged -P --system --user --version --runtime' +- [ARG]='--host -H --kill-mode --kill-who --property -p --signal -s --type -t --state --root' ++ [ARG]='--host -H --kill-who --property -p --signal -s --type -t --state --root' + ) + + if __contains_word "--user" ${COMP_WORDS[*]}; then +@@ -99,9 +99,6 @@ _systemctl () { + --kill-who) + comps='all control main' + ;; +- --kill-mode) +- comps='control-group process' +- ;; + --root) + comps=$(compgen -A directory -- "$cur" ) + compopt -o filenames +-- +1.7.9.2 + diff --git a/0008-util-introduce-sethostname_idempotent.patch b/0008-util-introduce-sethostname_idempotent.patch new file mode 100644 index 00000000..5b42ce14 --- /dev/null +++ b/0008-util-introduce-sethostname_idempotent.patch @@ -0,0 +1,85 @@ +Based on 605f81a8968b2df8a28cca2cf11db99ab948a2af Mon Sep 17 00:00:00 2001 +From: Michal Sekletar +Date: Tue, 21 Oct 2014 18:17:54 +0200 +Subject: [PATCH] util: introduce sethostname_idempotent + +Function queries system hostname and applies changes only when necessary. Also, +migrate all client of sethostname to sethostname_idempotent while at it. +--- + src/core/hostname-setup.c | 2 +- + src/hostname/hostnamed.c | 2 +- + src/nspawn/nspawn.c | 2 +- + src/shared/util.c | 20 ++++++++++++++++++++ + src/shared/util.h | 2 ++ + 5 files changed, 25 insertions(+), 3 deletions(-) + +--- src/core/hostname-setup.c ++++ src/core/hostname-setup.c 2014-10-29 00:00:00.000000000 +0000 +@@ -99,7 +99,7 @@ int hostname_setup(void) { + hn = "localhost"; + } + +- if (sethostname(hn, strlen(hn)) < 0) { ++ if (sethostname_idempotent(hn) < 0) { + log_warning("Failed to set hostname to <%s>: %m", hn); + return -errno; + } +--- src/hostname/hostnamed.c ++++ src/hostname/hostnamed.c 2014-10-29 14:13:26.124337751 +0000 +@@ -244,7 +244,7 @@ static int context_write_data_hostname(C + else + hn = c->data[PROP_HOSTNAME]; + +- if (sethostname(hn, strlen(hn)) < 0) ++ if (sethostname_idempotent(hn) < 0) + return -errno; + + return 0; +--- src/nspawn/nspawn.c ++++ src/nspawn/nspawn.c 2014-10-29 00:00:00.000000000 +0000 +@@ -981,7 +981,7 @@ static int setup_hostname(void) { + if (arg_share_system) + return 0; + +- if (sethostname(arg_machine, strlen(arg_machine)) < 0) ++ if (sethostname_idempotent(arg_machine) < 0) + return -errno; + + return 0; +--- src/shared/util.c ++++ src/shared/util.c 2014-10-29 00:00:00.000000000 +0000 +@@ -6451,6 +6451,26 @@ int fd_warn_permissions(const char *path + return 0; + } + ++int sethostname_idempotent(const char *s) { ++ int r; ++ char buf[HOST_NAME_MAX + 1] = {}; ++ ++ assert(s); ++ ++ r = gethostname(buf, sizeof(buf)); ++ if (r < 0) ++ return -errno; ++ ++ if (streq(buf, s)) ++ return 0; ++ ++ r = sethostname(buf, strlen(buf)); ++ if (r < 0) ++ return -errno; ++ ++ return 1; ++} ++ + unsigned long personality_from_string(const char *p) { + + /* Parse a personality specifier. We introduce our own +--- src/shared/util.h ++++ src/shared/util.h 2014-10-29 14:14:15.764337717 +0000 +@@ -899,3 +899,5 @@ union file_handle_union { + }; + + int umount_recursive(const char *target, int flags); ++ ++int sethostname_idempotent(const char *s); diff --git a/0009-ask-password-when-the-user-types-a-overly-long-passw.patch b/0009-ask-password-when-the-user-types-a-overly-long-passw.patch new file mode 100644 index 00000000..840c4a18 --- /dev/null +++ b/0009-ask-password-when-the-user-types-a-overly-long-passw.patch @@ -0,0 +1,33 @@ +From 036eeac5a1799fa2c0ae11a14d8c667b5d303189 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Tue, 25 Mar 2014 01:27:05 +0100 +Subject: [PATCH] ask-password: when the user types a overly long password, + beep and refuse +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Based on a similar patch from David Härdeman. +--- + src/shared/ask-password-api.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git src/shared/ask-password-api.c src/shared/ask-password-api.c +index 117f0c6..96f16cc 100644 +--- src/shared/ask-password-api.c ++++ src/shared/ask-password-api.c +@@ -207,6 +207,11 @@ int ask_password_tty( + if (ttyfd >= 0) + loop_write(ttyfd, "(no echo) ", 10, false); + } else { ++ if (p >= sizeof(passphrase)-1) { ++ loop_write(ttyfd, "\a", 1, false); ++ continue; ++ } ++ + passphrase[p++] = c; + + if (!silent_mode && ttyfd >= 0) +-- +1.7.9.2 + diff --git a/0009-bus-fix-bus_print_property-to-use-int-for-booleans.patch b/0009-bus-fix-bus_print_property-to-use-int-for-booleans.patch new file mode 100644 index 00000000..381d0732 --- /dev/null +++ b/0009-bus-fix-bus_print_property-to-use-int-for-booleans.patch @@ -0,0 +1,29 @@ +From c2fa048c4a70c8386c6d8fe939e5ea9edecf1e98 Mon Sep 17 00:00:00 2001 +From: David Herrmann +Date: Thu, 18 Sep 2014 13:28:28 +0200 +Subject: [PATCH] bus: fix bus_print_property() to use "int" for booleans + +We always use "int" if we retrieve boolean values from sd-bus, as "bool" +is only a single byte, but full int on va-args. + +Thanks to Werner Fink for the report! +--- + src/libsystemd/sd-bus/bus-util.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/libsystemd/sd-bus/bus-util.c src/libsystemd/sd-bus/bus-util.c +index 7c6da60..9018bce 100644 +--- src/libsystemd/sd-bus/bus-util.c ++++ src/libsystemd/sd-bus/bus-util.c +@@ -631,7 +631,7 @@ int bus_print_property(const char *name, sd_bus_message *property, bool all) { + } + + case SD_BUS_TYPE_BOOLEAN: { +- bool b; ++ int b; + + r = sd_bus_message_read_basic(property, type, &b); + if (r < 0) +-- +1.7.9.2 + diff --git a/0009-core-clean-up-signal-reset-logic-when-reexec.patch b/0009-core-clean-up-signal-reset-logic-when-reexec.patch new file mode 100644 index 00000000..cfe54186 --- /dev/null +++ b/0009-core-clean-up-signal-reset-logic-when-reexec.patch @@ -0,0 +1,50 @@ +From 9bfcda9528636914aef3e0ab91191bb81654c83d Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 20 Jun 2014 16:58:21 +0200 +Subject: [PATCH] core: clean-up signal reset logic when reexec + +There's no need to save the old sigmask, if we are going to die. Let's +simplify this. Also, reset all the signal handlers, so that we don't +leave SIG_IGN set for some of them across reexec. +--- + src/core/main.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git src/core/main.c src/core/main.c +index 863ba52..6981e72 100644 +--- src/core/main.c ++++ src/core/main.c +@@ -1824,7 +1824,7 @@ finish: + if (reexecute) { + const char **args; + unsigned i, args_size; +- sigset_t ss, o_ss; ++ sigset_t ss; + + /* Close and disarm the watchdog, so that the new + * instance can reinitialize it, but doesn't get +@@ -1910,8 +1910,10 @@ finish: + + /* reenable any blocked signals, especially important + * if we switch from initial ramdisk to init=... */ +- sigemptyset(&ss); +- sigprocmask(SIG_SETMASK, &ss, &o_ss); ++ reset_all_signal_handlers(); ++ ++ assert_se(sigemptyset(&ss) == 0); ++ assert_se(sigprocmask(SIG_SETMASK, &ss, NULL) == 0); + + if (switch_root_init) { + args[0] = switch_root_init; +@@ -1931,8 +1933,6 @@ finish: + log_error("Failed to execute /bin/sh, giving up: %m"); + } else + log_warning("Failed to execute /sbin/init, giving up: %m"); +- +- sigprocmask(SIG_SETMASK, &o_ss, NULL); + } + + if (arg_serialization) { +-- +1.7.9.2 + diff --git a/0009-hwdb-Update-database-of-Bluetooth-company-identifier.patch b/0009-hwdb-Update-database-of-Bluetooth-company-identifier.patch new file mode 100644 index 00000000..69372137 --- /dev/null +++ b/0009-hwdb-Update-database-of-Bluetooth-company-identifier.patch @@ -0,0 +1,38 @@ +From 2e3390ea4684b954edce66b7758b5371d3338a9f Mon Sep 17 00:00:00 2001 +From: Marcel Holtmann +Date: Thu, 2 Oct 2014 07:53:15 +0200 +Subject: [PATCH] hwdb: Update database of Bluetooth company identifiers + +--- + hwdb/20-bluetooth-vendor-product.hwdb | 18 ++++++++++++++++++ + 1 file changed, 18 insertions(+) + +diff --git hwdb/20-bluetooth-vendor-product.hwdb hwdb/20-bluetooth-vendor-product.hwdb +index 14aee74..ee2efdf 100644 +--- hwdb/20-bluetooth-vendor-product.hwdb ++++ hwdb/20-bluetooth-vendor-product.hwdb +@@ -1148,3 +1148,21 @@ bluetooth:v017B* + + bluetooth:v017C* + ID_VENDOR_FROM_DATABASE=Daimler AG ++ ++bluetooth:v017D* ++ ID_VENDOR_FROM_DATABASE=BatAndCat ++ ++bluetooth:v017E* ++ ID_VENDOR_FROM_DATABASE=BluDotz Ltd ++ ++bluetooth:v017F* ++ ID_VENDOR_FROM_DATABASE=XTel ApS ++ ++bluetooth:v0180* ++ ID_VENDOR_FROM_DATABASE=Gigaset Communications GmbH ++ ++bluetooth:v0181* ++ ID_VENDOR_FROM_DATABASE=Gecko Health Innovations, Inc. ++ ++bluetooth:v0182* ++ ID_VENDOR_FROM_DATABASE=HOP Ubiquitous +-- +1.7.9.2 + diff --git a/0009-hwdb-update.patch b/0009-hwdb-update.patch new file mode 100644 index 00000000..099e33b6 --- /dev/null +++ b/0009-hwdb-update.patch @@ -0,0 +1,3363 @@ +From fea0bfaed5411de43811dc428e763029d3aaabe5 Mon Sep 17 00:00:00 2001 +From: Marcel Holtmann +Date: Tue, 9 Sep 2014 07:44:02 +0200 +Subject: [PATCH] hwdb: update + +--- + hwdb/20-OUI.hwdb | 249 +++++- + hwdb/20-pci-vendor-model.hwdb | 1987 ++++++++++++++++++++++++++++++++++++++++- + hwdb/20-usb-vendor-model.hwdb | 2 +- + 3 files changed, 2199 insertions(+), 39 deletions(-) + +diff --git hwdb/20-OUI.hwdb hwdb/20-OUI.hwdb +index e0c5fed..73df96c 100644 +--- hwdb/20-OUI.hwdb ++++ hwdb/20-OUI.hwdb +@@ -4103,7 +4103,7 @@ OUI:0050C2561* + ID_OUI_FROM_DATABASE=Seitec Elektronik GmbH + + OUI:0050C2562* +- ID_OUI_FROM_DATABASE=C21 Technology Limited ++ ID_OUI_FROM_DATABASE=C21 Systems Limited + + OUI:0050C2563* + ID_OUI_FROM_DATABASE=ORTRAT, S.L. +@@ -26081,7 +26081,7 @@ OUI:00105D* + ID_OUI_FROM_DATABASE=Draeger Medical + + OUI:00105E* +- ID_OUI_FROM_DATABASE=HEKIMIAN LABORATORIES, INC. ++ ID_OUI_FROM_DATABASE=Spirent plc, Service Assurance Broadband + + OUI:00105F* + ID_OUI_FROM_DATABASE=ZODIAC DATA SYSTEMS +@@ -35786,7 +35786,7 @@ OUI:001D04* + ID_OUI_FROM_DATABASE=Zipit Wireless, Inc. + + OUI:001D05* +- ID_OUI_FROM_DATABASE=iLight ++ ID_OUI_FROM_DATABASE=Eaton Corporation + + OUI:001D06* + ID_OUI_FROM_DATABASE=HM Electronics, Inc. +@@ -44287,6 +44287,9 @@ OUI:0034F1* + OUI:003532* + ID_OUI_FROM_DATABASE=Electro-Metrics Corporation + ++OUI:003560* ++ ID_OUI_FROM_DATABASE=Rosen Aviation ++ + OUI:0036F8* + ID_OUI_FROM_DATABASE=Conti Temic microelectronic GmbH + +@@ -50072,7 +50075,7 @@ OUI:00D01E* + ID_OUI_FROM_DATABASE=PINGTEL CORP. + + OUI:00D01F* +- ID_OUI_FROM_DATABASE=CTAM PTY. LTD. ++ ID_OUI_FROM_DATABASE=Senetas Security + + OUI:00D020* + ID_OUI_FROM_DATABASE=AIM SYSTEM, INC. +@@ -51616,6 +51619,9 @@ OUI:00EEBD* + OUI:00F051* + ID_OUI_FROM_DATABASE=KWB Gmbh + ++OUI:00F3DB* ++ ID_OUI_FROM_DATABASE=WOO Sports ++ + OUI:00F403* + ID_OUI_FROM_DATABASE=Orbis Systems Oy + +@@ -51889,6 +51895,9 @@ OUI:04B3B6* + OUI:04B466* + ID_OUI_FROM_DATABASE=BSP Co., Ltd. + ++OUI:04BD70* ++ ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD ++ + OUI:04BFA8* + ID_OUI_FROM_DATABASE=ISB Corporation + +@@ -51898,6 +51907,9 @@ OUI:04C05B* + OUI:04C06F* + ID_OUI_FROM_DATABASE=Shenzhen Huawei Communication Technologies Co., Ltd + ++OUI:04C09C* ++ ID_OUI_FROM_DATABASE=Tellabs Inc. ++ + OUI:04C1B9* + ID_OUI_FROM_DATABASE=Fiberhome Telecommunication Tech.Co.,Ltd. + +@@ -52657,6 +52669,9 @@ OUI:089F97* + OUI:08A12B* + ID_OUI_FROM_DATABASE=ShenZhen EZL Technology Co., Ltd + ++OUI:08A5C8* ++ ID_OUI_FROM_DATABASE=Sunnovo International Limited ++ + OUI:08A95A* + ID_OUI_FROM_DATABASE=Azurewave + +@@ -52747,6 +52762,9 @@ OUI:08EE8B* + OUI:08EF3B* + ID_OUI_FROM_DATABASE=MCS Logic Inc. + ++OUI:08EFAB* ++ ID_OUI_FROM_DATABASE=SAYME WIRELESS SENSOR NETWORK ++ + OUI:08F1B7* + ID_OUI_FROM_DATABASE=Towerstream Corpration + +@@ -53125,6 +53143,9 @@ OUI:1001CA* + OUI:1005CA* + ID_OUI_FROM_DATABASE=Cisco + ++OUI:100723* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ + OUI:1008B1* + ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. + +@@ -53389,6 +53410,9 @@ OUI:10C586* + OUI:10C61F* + ID_OUI_FROM_DATABASE=Huawei Technologies Co., Ltd + ++OUI:10C67E* ++ ID_OUI_FROM_DATABASE=SHENZHEN JUCHIN TECHNOLOGY CO., LTD ++ + OUI:10C6FC* + ID_OUI_FROM_DATABASE=Garmin International + +@@ -53446,6 +53470,9 @@ OUI:10F3DB* + OUI:10F49A* + ID_OUI_FROM_DATABASE=T3 Innovation + ++OUI:10F681* ++ ID_OUI_FROM_DATABASE=vivo Mobile Communication Co., Ltd. ++ + OUI:10F96F* + ID_OUI_FROM_DATABASE=LG Electronics + +@@ -53527,6 +53554,9 @@ OUI:1435B3* + OUI:143605* + ID_OUI_FROM_DATABASE=Nokia Corporation + ++OUI:1436C6* ++ ID_OUI_FROM_DATABASE=Lenovo Mobile Communication Technology Ltd. ++ + OUI:14373B* + ID_OUI_FROM_DATABASE=PROCOM Systems + +@@ -53782,6 +53812,9 @@ OUI:18193F* + OUI:181BEB* + ID_OUI_FROM_DATABASE=Actiontec Electronics, Inc + ++OUI:181E78* ++ ID_OUI_FROM_DATABASE=SAGEMCOM ++ + OUI:181EB0* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -53881,6 +53914,9 @@ OUI:18622C* + OUI:186472* + ID_OUI_FROM_DATABASE=Aruba Networks + ++OUI:186571* ++ ID_OUI_FROM_DATABASE=Top Victory Electronics (Taiwan) Co., Ltd. ++ + OUI:1866E3* + ID_OUI_FROM_DATABASE=Veros Systems, Inc. + +@@ -54023,7 +54059,7 @@ OUI:18CF5E* + ID_OUI_FROM_DATABASE=Liteon Technology Corporation + + OUI:18D071* +- ID_OUI_FROM_DATABASE=DASAN SMC, Inc. ++ ID_OUI_FROM_DATABASE=DASAN CO., LTD. + + OUI:18D5B6* + ID_OUI_FROM_DATABASE=SMG Holdings LLC +@@ -55270,6 +55306,9 @@ OUI:28D576* + OUI:28D93E* + ID_OUI_FROM_DATABASE=Telecor Inc. + ++OUI:28D98A* ++ ID_OUI_FROM_DATABASE=Hangzhou Konke Technology Co.,Ltd. ++ + OUI:28D997* + ID_OUI_FROM_DATABASE=Yuduan Mobile Co., Ltd. + +@@ -55387,6 +55426,9 @@ OUI:2C2D48* + OUI:2C3068* + ID_OUI_FROM_DATABASE=Pantech Co.,Ltd + ++OUI:2C337A* ++ ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. ++ + OUI:2C3427* + ID_OUI_FROM_DATABASE=ERCO & GENER + +@@ -55891,6 +55933,9 @@ OUI:30D357* + OUI:30D46A* + ID_OUI_FROM_DATABASE=Autosales Incorporated + ++OUI:30D587* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:30D6C9* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -56062,6 +56107,9 @@ OUI:346BD3* + OUI:346E8A* + ID_OUI_FROM_DATABASE=Ecosense + ++OUI:346F90* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:346F92* + ID_OUI_FROM_DATABASE=White Rodgers Division + +@@ -56266,6 +56314,9 @@ OUI:34E42A* + OUI:34E6AD* + ID_OUI_FROM_DATABASE=Intel Corporate + ++OUI:34E6D7* ++ ID_OUI_FROM_DATABASE=Dell Inc. ++ + OUI:34EF44* + ID_OUI_FROM_DATABASE=2Wire + +@@ -56413,6 +56464,9 @@ OUI:385FC3* + OUI:386077* + ID_OUI_FROM_DATABASE=PEGATRON CORPORATION + ++OUI:3863BB* ++ ID_OUI_FROM_DATABASE=Hewlett Packard ++ + OUI:3863F6* + ID_OUI_FROM_DATABASE=3NOD MULTIMEDIA(SHENZHEN)CO.,LTD + +@@ -56677,6 +56731,9 @@ OUI:3C3888* + OUI:3C39C3* + ID_OUI_FROM_DATABASE=JW Electronics Co., Ltd. + ++OUI:3C39E7* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ + OUI:3C3A73* + ID_OUI_FROM_DATABASE=Avaya, Inc + +@@ -56689,6 +56746,9 @@ OUI:3C438E* + OUI:3C46D8* + ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD. + ++OUI:3C4937* ++ ID_OUI_FROM_DATABASE=ASSMANN Electronic GmbH ++ + OUI:3C4A92* + ID_OUI_FROM_DATABASE=Hewlett-Packard Company + +@@ -56815,6 +56875,9 @@ OUI:3CAA3F* + OUI:3CAB8E* + ID_OUI_FROM_DATABASE=Apple + ++OUI:3CAE69* ++ ID_OUI_FROM_DATABASE=ESA Elektroschaltanlagen Grimma GmbH ++ + OUI:3CB15B* + ID_OUI_FROM_DATABASE=Avaya, Inc + +@@ -57211,6 +57274,9 @@ OUI:40E730* + OUI:40E793* + ID_OUI_FROM_DATABASE=Shenzhen Siviton Technology Co.,Ltd + ++OUI:40EACE* ++ ID_OUI_FROM_DATABASE=FOUNDER BROADBAND NETWORK SERVICE CO.,LTD ++ + OUI:40ECF8* + ID_OUI_FROM_DATABASE=Siemens AG + +@@ -57535,6 +57601,9 @@ OUI:44DCCB* + OUI:44E08E* + ID_OUI_FROM_DATABASE=Cisco SPVTG + ++OUI:44E137* ++ ID_OUI_FROM_DATABASE=ARRIS Group, Inc. ++ + OUI:44E49A* + ID_OUI_FROM_DATABASE=OMNITRONICS PTY LTD + +@@ -58348,6 +58417,9 @@ OUI:50A733* + OUI:50ABBF* + ID_OUI_FROM_DATABASE=Hoseo Telecom + ++OUI:50ADD5* ++ ID_OUI_FROM_DATABASE=Dynalec Corporation ++ + OUI:50AF73* + ID_OUI_FROM_DATABASE=Shenzhen Bitland Information Technology Co., Ltd. + +@@ -58537,6 +58609,9 @@ OUI:544A05* + OUI:544A16* + ID_OUI_FROM_DATABASE=Texas Instruments + ++OUI:545146* ++ ID_OUI_FROM_DATABASE=AMG Systems Ltd. ++ + OUI:5453ED* + ID_OUI_FROM_DATABASE=Sony Corporation + +@@ -58852,6 +58927,9 @@ OUI:58696C* + OUI:5869F9* + ID_OUI_FROM_DATABASE=Fusion Transactive Ltd. + ++OUI:586AB1* ++ ID_OUI_FROM_DATABASE=Hangzhou H3C Technologies Co., Limited ++ + OUI:586D8F* + ID_OUI_FROM_DATABASE=Cisco-Linksys, LLC + +@@ -59080,6 +59158,9 @@ OUI:5C2BF5* + OUI:5C2E59* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:5C2ED2* ++ ID_OUI_FROM_DATABASE=ABC(XiSheng) Electronics Co.,Ltd ++ + OUI:5C313E* + ID_OUI_FROM_DATABASE=Texas Instruments + +@@ -59272,6 +59353,9 @@ OUI:5CDAD4* + OUI:5CDD70* + ID_OUI_FROM_DATABASE=Hangzhou H3C Technologies Co., Limited + ++OUI:5CE0C5* ++ ID_OUI_FROM_DATABASE=Intel Corporate ++ + OUI:5CE0CA* + ID_OUI_FROM_DATABASE=FeiTian United (Beijing) System Technology Co., Ltd. + +@@ -59767,6 +59851,9 @@ OUI:64317E* + OUI:643409* + ID_OUI_FROM_DATABASE=BITwave Pte Ltd + ++OUI:643E8C* ++ ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD ++ + OUI:643F5F* + ID_OUI_FROM_DATABASE=Exablaze + +@@ -59908,6 +59995,9 @@ OUI:6487D7* + OUI:6488FF* + ID_OUI_FROM_DATABASE=Sichuan Changhong Electric Ltd. + ++OUI:64899A* ++ ID_OUI_FROM_DATABASE=LG Electronics ++ + OUI:648D9E* + ID_OUI_FROM_DATABASE=IVT Electronic Co.,Ltd + +@@ -60328,6 +60418,9 @@ OUI:68BC0C* + OUI:68BDAB* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + ++OUI:68C90B* ++ ID_OUI_FROM_DATABASE=Texas Instruments ++ + OUI:68CA00* + ID_OUI_FROM_DATABASE=Octopus Systems Limited + +@@ -60442,6 +60535,9 @@ OUI:6C22AB* + OUI:6C23B9* + ID_OUI_FROM_DATABASE=Sony Ericsson Mobile Communications AB + ++OUI:6C25B9* ++ ID_OUI_FROM_DATABASE=BBK Electronics Corp., Ltd., ++ + OUI:6C2995* + ID_OUI_FROM_DATABASE=Intel Corporate + +@@ -60574,6 +60670,9 @@ OUI:6C90B1* + OUI:6C92BF* + ID_OUI_FROM_DATABASE=Inspur Electronic Information Industry Co.,Ltd. + ++OUI:6C94F8* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:6C98EB* + ID_OUI_FROM_DATABASE=Ocedo GmbH + +@@ -60724,6 +60823,9 @@ OUI:700514* + OUI:700BC0* + ID_OUI_FROM_DATABASE=Dewav Technology Company + ++OUI:700FC7* ++ ID_OUI_FROM_DATABASE=SHENZHEN IKINLOOP TECHNOLOGY CO.,LTD. ++ + OUI:700FEC* + ID_OUI_FROM_DATABASE=Poindus Systems Corp. + +@@ -60802,6 +60904,9 @@ OUI:703AD8* + OUI:703C39* + ID_OUI_FROM_DATABASE=SEAWING Kft + ++OUI:703EAC* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:7041B7* + ID_OUI_FROM_DATABASE=Edwards Lifesciences LLC + +@@ -60901,6 +61006,9 @@ OUI:7076DD* + OUI:7076F0* + ID_OUI_FROM_DATABASE=LevelOne Communications (India) Private Limited + ++OUI:7076FF* ++ ID_OUI_FROM_DATABASE=KERLINK ++ + OUI:707BE8* + ID_OUI_FROM_DATABASE=HUAWEI TECHNOLOGIES CO.,LTD + +@@ -61105,6 +61213,9 @@ OUI:74273C* + OUI:7427EA* + ID_OUI_FROM_DATABASE=Elitegroup Computer Systems Co., Ltd. + ++OUI:7429AF* ++ ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. ++ + OUI:742B0F* + ID_OUI_FROM_DATABASE=Infinidat Ltd. + +@@ -61447,6 +61558,9 @@ OUI:78303B* + OUI:7830E1* + ID_OUI_FROM_DATABASE=UltraClenz, LLC + ++OUI:78312B* ++ ID_OUI_FROM_DATABASE=zte corporation ++ + OUI:7831C1* + ID_OUI_FROM_DATABASE=Apple + +@@ -61639,6 +61753,9 @@ OUI:78ACC0* + OUI:78AE0C* + ID_OUI_FROM_DATABASE=Far South Networks + ++OUI:78B3B9* ++ ID_OUI_FROM_DATABASE=ShangHai sunup lighting CO.,LTD ++ + OUI:78B3CE* + ID_OUI_FROM_DATABASE=Elo touch solutions + +@@ -61741,6 +61858,9 @@ OUI:78E7D1* + OUI:78E8B6* + ID_OUI_FROM_DATABASE=zte corporation + ++OUI:78EB14* ++ ID_OUI_FROM_DATABASE=SHENZHEN FAST TECHNOLOGIES CO.,LTD ++ + OUI:78EC22* + ID_OUI_FROM_DATABASE=Shanghai Qihui Telecom Technology Co., LTD + +@@ -62569,6 +62689,9 @@ OUI:843A4B* + OUI:843F4E* + ID_OUI_FROM_DATABASE=Tri-Tech Manufacturing, Inc. + ++OUI:844464* ++ ID_OUI_FROM_DATABASE=ServerU Inc ++ + OUI:844823* + ID_OUI_FROM_DATABASE=WOXTER TECHNOLOGY Co. Ltd + +@@ -62605,6 +62728,9 @@ OUI:846223* + OUI:8462A6* + ID_OUI_FROM_DATABASE=EuroCB (Phils), Inc. + ++OUI:8463D6* ++ ID_OUI_FROM_DATABASE=Microsoft Corporation ++ + OUI:846AED* + ID_OUI_FROM_DATABASE=Wireless Tsukamoto.,co.LTD + +@@ -62665,6 +62791,9 @@ OUI:848E0C* + OUI:848E96* + ID_OUI_FROM_DATABASE=Embertec Pty Ltd + ++OUI:848EDF* ++ ID_OUI_FROM_DATABASE=Sony Mobile Communications AB ++ + OUI:848F69* + ID_OUI_FROM_DATABASE=Dell Inc. + +@@ -62746,6 +62875,9 @@ OUI:84DB2F* + OUI:84DD20* + ID_OUI_FROM_DATABASE=Texas Instruments + ++OUI:84DDB7* ++ ID_OUI_FROM_DATABASE=Cilag GmbH International ++ + OUI:84DE3D* + ID_OUI_FROM_DATABASE=Crystal Vision Ltd + +@@ -62812,6 +62944,9 @@ OUI:881544* + OUI:8818AE* + ID_OUI_FROM_DATABASE=Tamron Co., Ltd + ++OUI:881DFC* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:881FA1* + ID_OUI_FROM_DATABASE=Apple + +@@ -63367,6 +63502,9 @@ OUI:8CDF9D* + OUI:8CE081* + ID_OUI_FROM_DATABASE=zte corporation + ++OUI:8CE78C* ++ ID_OUI_FROM_DATABASE=DK Networks ++ + OUI:8CE7B3* + ID_OUI_FROM_DATABASE=Sonardyne International Ltd + +@@ -63409,6 +63547,9 @@ OUI:900917* + OUI:900A3A* + ID_OUI_FROM_DATABASE=PSG Plastic Service GmbH + ++OUI:900CB4* ++ ID_OUI_FROM_DATABASE=Alinket Electronic Technology Co., Ltd ++ + OUI:900D66* + ID_OUI_FROM_DATABASE=Digimore Electronics Co., Ltd + +@@ -63556,6 +63697,9 @@ OUI:9067B5* + OUI:9067F3* + ID_OUI_FROM_DATABASE=Alcatel Lucent + ++OUI:9068C3* ++ ID_OUI_FROM_DATABASE=Motorola Mobility LLC ++ + OUI:906DC8* + ID_OUI_FROM_DATABASE=DLG Automação Industrial Ltda + +@@ -63781,6 +63925,9 @@ OUI:940149* + OUI:9401C2* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:9405B6* ++ ID_OUI_FROM_DATABASE=Liling FullRiver Electronics & Technology Ltd ++ + OUI:940B2D* + ID_OUI_FROM_DATABASE=NetView Technologies(Shenzhen) Co., Ltd + +@@ -63913,6 +64060,9 @@ OUI:948B03* + OUI:948D50* + ID_OUI_FROM_DATABASE=Beamex Oy Ab + ++OUI:948E89* ++ ID_OUI_FROM_DATABASE=INDUSTRIAS UNIDAS SA DE CV ++ + OUI:948FEE* + ID_OUI_FROM_DATABASE=Hughes Telematics, Inc. + +@@ -64639,6 +64789,9 @@ OUI:9CD36D* + OUI:9CD643* + ID_OUI_FROM_DATABASE=D-Link International + ++OUI:9CD917* ++ ID_OUI_FROM_DATABASE=Motorola Mobility LLC ++ + OUI:9CDF03* + ID_OUI_FROM_DATABASE=Harman/Becker Automotive Systems GmbH + +@@ -65407,6 +65560,9 @@ OUI:A81B18* + OUI:A81B5D* + ID_OUI_FROM_DATABASE=Foxtel Management Pty Ltd + ++OUI:A81D16* ++ ID_OUI_FROM_DATABASE=AzureWave Technologies, Inc ++ + OUI:A81FAF* + ID_OUI_FROM_DATABASE=KRYPTON POLSKA + +@@ -65473,6 +65629,9 @@ OUI:A863DF* + OUI:A863F2* + ID_OUI_FROM_DATABASE=Texas Instruments + ++OUI:A86405* ++ ID_OUI_FROM_DATABASE=nimbus 9, Inc ++ + OUI:A865B2* + ID_OUI_FROM_DATABASE=DONGGUAN YISHANG ELECTRONIC TECHNOLOGY CO., LIMITED + +@@ -66064,6 +66223,9 @@ OUI:B0435D* + OUI:B04515* + ID_OUI_FROM_DATABASE=mira fitness,LLC. + ++OUI:B04519* ++ ID_OUI_FROM_DATABASE=TCT mobile ltd ++ + OUI:B04545* + ID_OUI_FROM_DATABASE=YACOUB Automation GmbH + +@@ -67105,6 +67267,9 @@ OUI:BC4760* + OUI:BC4B79* + ID_OUI_FROM_DATABASE=SensingTek + ++OUI:BC4DFB* ++ ID_OUI_FROM_DATABASE=Hitron Technologies. Inc ++ + OUI:BC4E3C* + ID_OUI_FROM_DATABASE=CORE STAFF CO., LTD. + +@@ -67114,6 +67279,9 @@ OUI:BC4E5D* + OUI:BC51FE* + ID_OUI_FROM_DATABASE=Swann Communications Pty Ltd + ++OUI:BC52B4* ++ ID_OUI_FROM_DATABASE=Alcatel-Lucent ++ + OUI:BC52B7* + ID_OUI_FROM_DATABASE=Apple + +@@ -67153,6 +67321,9 @@ OUI:BC71C1* + OUI:BC72B1* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:BC74D7* ++ ID_OUI_FROM_DATABASE=HangZhou JuRu Technology CO.,LTD ++ + OUI:BC764E* + ID_OUI_FROM_DATABASE=Rackspace US, Inc. + +@@ -67363,6 +67534,9 @@ OUI:C03580* + OUI:C035BD* + ID_OUI_FROM_DATABASE=Velocytech Aps + ++OUI:C035C5* ++ ID_OUI_FROM_DATABASE=Prosoft Systems LTD ++ + OUI:C03896* + ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. + +@@ -67867,6 +68041,9 @@ OUI:C4BA99* + OUI:C4BD6A* + ID_OUI_FROM_DATABASE=SKF GmbH + ++OUI:C4BE84* ++ ID_OUI_FROM_DATABASE=Texas Instruments. ++ + OUI:C4C0AE* + ID_OUI_FROM_DATABASE=MIDORI ELECTRONIC CO., LTD. + +@@ -68527,6 +68704,9 @@ OUI:CCB8F1* + OUI:CCBD35* + ID_OUI_FROM_DATABASE=Steinel GmbH + ++OUI:CCBDD3* ++ ID_OUI_FROM_DATABASE=Ultimaker B.V. ++ + OUI:CCBE71* + ID_OUI_FROM_DATABASE=OptiLogix BV + +@@ -68698,6 +68878,9 @@ OUI:D046DC* + OUI:D04CC1* + ID_OUI_FROM_DATABASE=SINTRONES Technology Corp. + ++OUI:D04F7E* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:D05099* + ID_OUI_FROM_DATABASE=ASRock Incorporation + +@@ -68734,6 +68917,9 @@ OUI:D05A0F* + OUI:D05AF1* + ID_OUI_FROM_DATABASE=Shenzhen Pulier Tech CO.,Ltd + ++OUI:D05BA8* ++ ID_OUI_FROM_DATABASE=zte corporation ++ + OUI:D05FB8* + ID_OUI_FROM_DATABASE=Texas Instruments + +@@ -69025,6 +69211,9 @@ OUI:D42F23* + OUI:D4319D* + ID_OUI_FROM_DATABASE=Sinwatec + ++OUI:D43266* ++ ID_OUI_FROM_DATABASE=Fike Corporation ++ + OUI:D437D7* + ID_OUI_FROM_DATABASE=zte corporation + +@@ -69307,6 +69496,9 @@ OUI:D4F143* + OUI:D4F46F* + ID_OUI_FROM_DATABASE=Apple + ++OUI:D4F513* ++ ID_OUI_FROM_DATABASE=Texas Instruments ++ + OUI:D4F63F* + ID_OUI_FROM_DATABASE=IEA S.R.L. + +@@ -69568,6 +69760,9 @@ OUI:D8B8F6* + OUI:D8B90E* + ID_OUI_FROM_DATABASE=Triple Domain Vision Co.,Ltd. + ++OUI:D8BB2C* ++ ID_OUI_FROM_DATABASE=Apple ++ + OUI:D8BF4C* + ID_OUI_FROM_DATABASE=Victory Concept Electronics Limited + +@@ -69635,7 +69830,7 @@ OUI:D8E56D* + ID_OUI_FROM_DATABASE=TCT Mobile Limited + + OUI:D8E72B* +- ID_OUI_FROM_DATABASE=OnPATH Technologies ++ ID_OUI_FROM_DATABASE=NetScout Systems, Inc. + + OUI:D8E743* + ID_OUI_FROM_DATABASE=Wush, Inc +@@ -70084,6 +70279,9 @@ OUI:E08177* + OUI:E087B1* + ID_OUI_FROM_DATABASE=Nata-Info Ltd. + ++OUI:E0885D* ++ ID_OUI_FROM_DATABASE=Technicolor CH USA Inc ++ + OUI:E08A7E* + ID_OUI_FROM_DATABASE=Exponent + +@@ -70474,6 +70672,9 @@ OUI:E4AFA1* + OUI:E4B021* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:E4BAD9* ++ ID_OUI_FROM_DATABASE=360 Fly Inc. ++ + OUI:E4C146* + ID_OUI_FROM_DATABASE=Objetivos y Servicios de Valor A + +@@ -70603,6 +70804,9 @@ OUI:E82AEA* + OUI:E82E24* + ID_OUI_FROM_DATABASE=Out of the Fog Research LLC + ++OUI:E83381* ++ ID_OUI_FROM_DATABASE=ARRIS Group, Inc. ++ + OUI:E83935* + ID_OUI_FROM_DATABASE=Hewlett Packard + +@@ -70720,6 +70924,9 @@ OUI:E88D28* + OUI:E88DF5* + ID_OUI_FROM_DATABASE=ZNYX Networks, Inc. + ++OUI:E88E60* ++ ID_OUI_FROM_DATABASE=NSD Corporation ++ + OUI:E89218* + ID_OUI_FROM_DATABASE=Arcontia International AB + +@@ -70918,6 +71125,9 @@ OUI:EC233D* + OUI:EC2368* + ID_OUI_FROM_DATABASE=IntelliVoice Co.,Ltd. + ++OUI:EC24B8* ++ ID_OUI_FROM_DATABASE=Texas Instruments ++ + OUI:EC2AF0* + ID_OUI_FROM_DATABASE=Ypsomed AG + +@@ -70978,6 +71188,9 @@ OUI:EC542E* + OUI:EC55F9* + ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. + ++OUI:EC59E7* ++ ID_OUI_FROM_DATABASE=Microsoft Corporation ++ + OUI:EC5C69* + ID_OUI_FROM_DATABASE=MITSUBISHI HEAVY INDUSTRIES MECHATRONICS SYSTEMS,LTD. + +@@ -71002,6 +71215,9 @@ OUI:EC7C74* + OUI:EC7D9D* + ID_OUI_FROM_DATABASE=MEI + ++OUI:EC8009* ++ ID_OUI_FROM_DATABASE=NovaSparks ++ + OUI:EC836C* + ID_OUI_FROM_DATABASE=RM Tech Co., Ltd. + +@@ -71449,6 +71665,9 @@ OUI:F0F002* + OUI:F0F260* + ID_OUI_FROM_DATABASE=Mobitec AB + ++OUI:F0F336* ++ ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO.,LTD ++ + OUI:F0F5AE* + ID_OUI_FROM_DATABASE=Adaptrum Inc. + +@@ -71476,6 +71695,9 @@ OUI:F0F9F7* + OUI:F0FDA0* + ID_OUI_FROM_DATABASE=Acurix Networks LP + ++OUI:F0FE6B* ++ ID_OUI_FROM_DATABASE=Shanghai High-Flying Electronics Technology Co., Ltd ++ + OUI:F40321* + ID_OUI_FROM_DATABASE=BeNeXt B.V. + +@@ -71758,6 +71980,9 @@ OUI:F4EA67* + OUI:F4EC38* + ID_OUI_FROM_DATABASE=TP-LINK TECHNOLOGIES CO., LTD. + ++OUI:F4EE14* ++ ID_OUI_FROM_DATABASE=SHENZHEN MERCURY COMMUNICATION TECHNOLOGIES CO.,LTD. ++ + OUI:F4F15A* + ID_OUI_FROM_DATABASE=Apple + +@@ -71881,6 +72106,9 @@ OUI:F83DFF* + OUI:F842FB* + ID_OUI_FROM_DATABASE=Yasuda Joho Co.,ltd. + ++OUI:F84360* ++ ID_OUI_FROM_DATABASE=INGENICO ++ + OUI:F845AD* + ID_OUI_FROM_DATABASE=Konka Group Co., Ltd. + +@@ -72037,12 +72265,18 @@ OUI:F8AC6D* + OUI:F8B156* + ID_OUI_FROM_DATABASE=Dell Inc + ++OUI:F8B2F3* ++ ID_OUI_FROM_DATABASE=GUANGZHOU BOSMA TECHNOLOGY CO.,LTD ++ + OUI:F8B599* + ID_OUI_FROM_DATABASE=Guangzhou CHNAVS Digital Technology Co.,Ltd + + OUI:F8BC12* + ID_OUI_FROM_DATABASE=Dell Inc + ++OUI:F8BC41* ++ ID_OUI_FROM_DATABASE=Rosslare Enterprises Limited ++ + OUI:F8C001* + ID_OUI_FROM_DATABASE=Juniper Networks + +@@ -72310,6 +72544,9 @@ OUI:FC6198* + OUI:FC626E* + ID_OUI_FROM_DATABASE=Beijing MDC Telecom + ++OUI:FC62B9* ++ ID_OUI_FROM_DATABASE=ALPS ERECTRIC CO.,LTD ++ + OUI:FC683E* + ID_OUI_FROM_DATABASE=Directed Perception, Inc + +diff --git hwdb/20-pci-vendor-model.hwdb hwdb/20-pci-vendor-model.hwdb +index 3bcdbc0..1b98b1d 100644 +--- hwdb/20-pci-vendor-model.hwdb ++++ hwdb/20-pci-vendor-model.hwdb +@@ -7892,6 +7892,9 @@ pci:v00001002d0000692B* + pci:v00001002d0000692F* + ID_MODEL_FROM_DATABASE=Tonga XT GL [FirePro W8100] + ++pci:v00001002d00006939* ++ ID_MODEL_FROM_DATABASE=Tonga PRO [Radeon R9 285] ++ + pci:v00001002d0000700F* + ID_MODEL_FROM_DATABASE=RS100 AGP Bridge + +@@ -17466,7 +17469,7 @@ pci:v00001093d00000162* + ID_MODEL_FROM_DATABASE=PCI-MIO-16XE-50 + + pci:v00001093d00001150* +- ID_MODEL_FROM_DATABASE=PCI-DIO-32HS High Speed Digital I/O Board ++ ID_MODEL_FROM_DATABASE=PCI-6533 (PCI-DIO-32HS) + + pci:v00001093d00001170* + ID_MODEL_FROM_DATABASE=PCI-MIO-16XE-10 +@@ -17481,22 +17484,31 @@ pci:v00001093d000011B0* + ID_MODEL_FROM_DATABASE=PXI-6070E + + pci:v00001093d000011C0* +- ID_MODEL_FROM_DATABASE=PXI-6040e ++ ID_MODEL_FROM_DATABASE=PXI-6040E + + pci:v00001093d000011D0* +- ID_MODEL_FROM_DATABASE=PXI-6030e ++ ID_MODEL_FROM_DATABASE=PXI-6030E + + pci:v00001093d00001270* +- ID_MODEL_FROM_DATABASE=PCI-6032e ++ ID_MODEL_FROM_DATABASE=PCI-6032E ++ ++pci:v00001093d00001290* ++ ID_MODEL_FROM_DATABASE=PCI-6704 ++ ++pci:v00001093d000012B0* ++ ID_MODEL_FROM_DATABASE=PCI-6534 + + pci:v00001093d00001310* + ID_MODEL_FROM_DATABASE=PCI-6602 + ++pci:v00001093d00001320* ++ ID_MODEL_FROM_DATABASE=PXI-6533 ++ + pci:v00001093d00001330* + ID_MODEL_FROM_DATABASE=PCI-6031E + + pci:v00001093d00001340* +- ID_MODEL_FROM_DATABASE=PCI-6033e ++ ID_MODEL_FROM_DATABASE=PCI-6033E + + pci:v00001093d00001350* + ID_MODEL_FROM_DATABASE=PCI-6071E +@@ -17504,6 +17516,12 @@ pci:v00001093d00001350* + pci:v00001093d00001360* + ID_MODEL_FROM_DATABASE=PXI-6602 + ++pci:v00001093d000013C0* ++ ID_MODEL_FROM_DATABASE=PXI-6508 ++ ++pci:v00001093d00001490* ++ ID_MODEL_FROM_DATABASE=PXI-6534 ++ + pci:v00001093d000014E0* + ID_MODEL_FROM_DATABASE=PCI-6110 + +@@ -17519,6 +17537,9 @@ pci:v00001093d000015B0* + pci:v00001093d00001710* + ID_MODEL_FROM_DATABASE=PXI-6509 + ++pci:v00001093d000017C0* ++ ID_MODEL_FROM_DATABASE=PXI-5690 ++ + pci:v00001093d000017D0* + ID_MODEL_FROM_DATABASE=PCI-6503 + +@@ -17534,6 +17555,33 @@ pci:v00001093d000018B0* + pci:v00001093d000018C0* + ID_MODEL_FROM_DATABASE=PXI-6052E + ++pci:v00001093d00001920* ++ ID_MODEL_FROM_DATABASE=PXI-6704 ++ ++pci:v00001093d00001930* ++ ID_MODEL_FROM_DATABASE=PCI-6040E ++ ++pci:v00001093d000019C0* ++ ID_MODEL_FROM_DATABASE=PCI-4472 ++ ++pci:v00001093d00001AA0* ++ ID_MODEL_FROM_DATABASE=PXI-4110 ++ ++pci:v00001093d00001AD0* ++ ID_MODEL_FROM_DATABASE=PCI-6133 ++ ++pci:v00001093d00001AE0* ++ ID_MODEL_FROM_DATABASE=PXI-6133 ++ ++pci:v00001093d00001E30* ++ ID_MODEL_FROM_DATABASE=PCI-6624 ++ ++pci:v00001093d00001E40* ++ ID_MODEL_FROM_DATABASE=PXI-6624 ++ ++pci:v00001093d00001E50* ++ ID_MODEL_FROM_DATABASE=PXI-5404 ++ + pci:v00001093d00002410* + ID_MODEL_FROM_DATABASE=PCI-6733 + +@@ -17543,12 +17591,42 @@ pci:v00001093d00002420* + pci:v00001093d00002430* + ID_MODEL_FROM_DATABASE=PCI-6731 + ++pci:v00001093d00002470* ++ ID_MODEL_FROM_DATABASE=PCI-4474 ++ ++pci:v00001093d000024A0* ++ ID_MODEL_FROM_DATABASE=PCI-4065 ++ ++pci:v00001093d000024B0* ++ ID_MODEL_FROM_DATABASE=PXI-4200 ++ ++pci:v00001093d000024F0* ++ ID_MODEL_FROM_DATABASE=PXI-4472 ++ ++pci:v00001093d00002510* ++ ID_MODEL_FROM_DATABASE=PCI-4472 ++ ++pci:v00001093d00002520* ++ ID_MODEL_FROM_DATABASE=PCI-4474 ++ ++pci:v00001093d000027A0* ++ ID_MODEL_FROM_DATABASE=PCI-6123 ++ ++pci:v00001093d000027B0* ++ ID_MODEL_FROM_DATABASE=PXI-6123 ++ + pci:v00001093d00002880* + ID_MODEL_FROM_DATABASE=DAQCard-6601 + + pci:v00001093d00002890* + ID_MODEL_FROM_DATABASE=PCI-6036E + ++pci:v00001093d000028A0* ++ ID_MODEL_FROM_DATABASE=PXI-4461 ++ ++pci:v00001093d000028B0* ++ ID_MODEL_FROM_DATABASE=PCI-6013 ++ + pci:v00001093d000028C0* + ID_MODEL_FROM_DATABASE=PCI-6014 + +@@ -17558,6 +17636,12 @@ pci:v00001093d000028D0* + pci:v00001093d000028E0* + ID_MODEL_FROM_DATABASE=PXI-5122 + ++pci:v00001093d000029F0* ++ ID_MODEL_FROM_DATABASE=PXI-7334 ++ ++pci:v00001093d00002A00* ++ ID_MODEL_FROM_DATABASE=PXI-7344 ++ + pci:v00001093d00002A60* + ID_MODEL_FROM_DATABASE=PCI-6023E + +@@ -17568,7 +17652,13 @@ pci:v00001093d00002A80* + ID_MODEL_FROM_DATABASE=PCI-6025E + + pci:v00001093d00002AB0* +- ID_MODEL_FROM_DATABASE=PXI-6025e ++ ID_MODEL_FROM_DATABASE=PXI-6025E ++ ++pci:v00001093d00002B10* ++ ID_MODEL_FROM_DATABASE=PXI-6527 ++ ++pci:v00001093d00002B20* ++ ID_MODEL_FROM_DATABASE=PCI-6527 + + pci:v00001093d00002B80* + ID_MODEL_FROM_DATABASE=PXI-6713 +@@ -17585,15 +17675,75 @@ pci:v00001093d00002C70* + pci:v00001093d00002C80* + ID_MODEL_FROM_DATABASE=PCI-6035E + ++pci:v00001093d00002C90* ++ ID_MODEL_FROM_DATABASE=PCI-6703 ++ + pci:v00001093d00002CA0* + ID_MODEL_FROM_DATABASE=PCI-6034E + ++pci:v00001093d00002CB0* ++ ID_MODEL_FROM_DATABASE=PCI-7344 ++ + pci:v00001093d00002CC0* + ID_MODEL_FROM_DATABASE=PXI-6608 + ++pci:v00001093d00002D20* ++ ID_MODEL_FROM_DATABASE=PXI-5600 ++ + pci:v00001093d00002DB0* + ID_MODEL_FROM_DATABASE=PCI-6608 + ++pci:v00001093d00002DC0* ++ ID_MODEL_FROM_DATABASE=PCI-4070 ++ ++pci:v00001093d00002DD0* ++ ID_MODEL_FROM_DATABASE=PXI-4070 ++ ++pci:v00001093d00002EB0* ++ ID_MODEL_FROM_DATABASE=PXI-4472 ++ ++pci:v00001093d00002EC0* ++ ID_MODEL_FROM_DATABASE=PXI-6115 ++ ++pci:v00001093d00002ED0* ++ ID_MODEL_FROM_DATABASE=PCI-6115 ++ ++pci:v00001093d00002EE0* ++ ID_MODEL_FROM_DATABASE=PXI-6120 ++ ++pci:v00001093d00002EF0* ++ ID_MODEL_FROM_DATABASE=PCI-6120 ++ ++pci:v00001093d00002FD1* ++ ID_MODEL_FROM_DATABASE=PCI-7334 ++ ++pci:v00001093d00002FD2* ++ ID_MODEL_FROM_DATABASE=PCI-7350 ++ ++pci:v00001093d00002FD3* ++ ID_MODEL_FROM_DATABASE=PCI-7342 ++ ++pci:v00001093d00002FD5* ++ ID_MODEL_FROM_DATABASE=PXI-7350 ++ ++pci:v00001093d00002FD6* ++ ID_MODEL_FROM_DATABASE=PXI-7342 ++ ++pci:v00001093d00007003* ++ ID_MODEL_FROM_DATABASE=PCI-6551 ++ ++pci:v00001093d00007004* ++ ID_MODEL_FROM_DATABASE=PXI-6551 ++ ++pci:v00001093d0000700B* ++ ID_MODEL_FROM_DATABASE=PXI-5421 ++ ++pci:v00001093d0000700C* ++ ID_MODEL_FROM_DATABASE=PCI-5421 ++ ++pci:v00001093d00007023* ++ ID_MODEL_FROM_DATABASE=PXI-2593 ++ + pci:v00001093d0000702C* + ID_MODEL_FROM_DATABASE=PXI-7831R + +@@ -17606,23 +17756,152 @@ pci:v00001093d0000702E* + pci:v00001093d0000702F* + ID_MODEL_FROM_DATABASE=PCI-7811R + ++pci:v00001093d00007030* ++ ID_MODEL_FROM_DATABASE=PCI-CAN (Series 2) ++ ++pci:v00001093d00007031* ++ ID_MODEL_FROM_DATABASE=PCI-CAN/2 (Series 2) ++ ++pci:v00001093d00007032* ++ ID_MODEL_FROM_DATABASE=PCI-CAN/LS (Series 2) ++ ++pci:v00001093d00007033* ++ ID_MODEL_FROM_DATABASE=PCI-CAN/LS2 (Series 2) ++ ++pci:v00001093d00007034* ++ ID_MODEL_FROM_DATABASE=PCI-CAN/DS (Series 2) ++ ++pci:v00001093d00007035* ++ ID_MODEL_FROM_DATABASE=PXI-8460 (Series 2, 1 port) ++ ++pci:v00001093d00007036* ++ ID_MODEL_FROM_DATABASE=PXI-8460 (Series 2, 2 ports) ++ ++pci:v00001093d00007037* ++ ID_MODEL_FROM_DATABASE=PXI-8461 (Series 2, 1 port) ++ ++pci:v00001093d00007038* ++ ID_MODEL_FROM_DATABASE=PXI-8461 (Series 2, 2 ports) ++ ++pci:v00001093d00007039* ++ ID_MODEL_FROM_DATABASE=PXI-8462 (Series 2) ++ ++pci:v00001093d0000703F* ++ ID_MODEL_FROM_DATABASE=PXI-2566 ++ ++pci:v00001093d00007040* ++ ID_MODEL_FROM_DATABASE=PXI-2567 ++ ++pci:v00001093d00007044* ++ ID_MODEL_FROM_DATABASE=MXI-4 Connection Monitor ++ ++pci:v00001093d00007047* ++ ID_MODEL_FROM_DATABASE=PXI-6653 ++ ++pci:v00001093d0000704C* ++ ID_MODEL_FROM_DATABASE=PXI-2530 ++ ++pci:v00001093d0000704F* ++ ID_MODEL_FROM_DATABASE=PXI-4220 ++ ++pci:v00001093d00007050* ++ ID_MODEL_FROM_DATABASE=PXI-4204 ++ + pci:v00001093d00007055* + ID_MODEL_FROM_DATABASE=PXI-7830R + + pci:v00001093d00007056* + ID_MODEL_FROM_DATABASE=PCI-7830R + ++pci:v00001093d0000705A* ++ ID_MODEL_FROM_DATABASE=PCI-CAN/XS (Series 2) ++ ++pci:v00001093d0000705B* ++ ID_MODEL_FROM_DATABASE=PCI-CAN/XS2 (Series 2) ++ ++pci:v00001093d0000705C* ++ ID_MODEL_FROM_DATABASE=PXI-8464 (Series 2, 1 port) ++ ++pci:v00001093d0000705D* ++ ID_MODEL_FROM_DATABASE=PXI-8464 (Series 2, 2 ports) ++ ++pci:v00001093d0000705E* ++ ID_MODEL_FROM_DATABASE=cRIO-9102 ++ ++pci:v00001093d00007060* ++ ID_MODEL_FROM_DATABASE=PXI-5610 ++ ++pci:v00001093d00007064* ++ ID_MODEL_FROM_DATABASE=PXI-1045 Trigger Routing Module ++ ++pci:v00001093d00007065* ++ ID_MODEL_FROM_DATABASE=PXI-6652 ++ ++pci:v00001093d00007066* ++ ID_MODEL_FROM_DATABASE=PXI-6651 ++ ++pci:v00001093d00007067* ++ ID_MODEL_FROM_DATABASE=PXI-2529 ++ ++pci:v00001093d00007068* ++ ID_MODEL_FROM_DATABASE=PCI-CAN/SW (Series 2) ++ ++pci:v00001093d00007069* ++ ID_MODEL_FROM_DATABASE=PCI-CAN/SW2 (Series 2) ++ ++pci:v00001093d0000706A* ++ ID_MODEL_FROM_DATABASE=PXI-8463 (Series 2, 1 port) ++ ++pci:v00001093d0000706B* ++ ID_MODEL_FROM_DATABASE=PXI-8463 (Series 2, 2 ports) ++ ++pci:v00001093d00007073* ++ ID_MODEL_FROM_DATABASE=PCI-6723 ++ + pci:v00001093d00007074* + ID_MODEL_FROM_DATABASE=PXI-7833R + ++pci:v00001093d00007075* ++ ID_MODEL_FROM_DATABASE=PXI-6552 ++ ++pci:v00001093d00007076* ++ ID_MODEL_FROM_DATABASE=PCI-6552 ++ ++pci:v00001093d0000707C* ++ ID_MODEL_FROM_DATABASE=PXI-1428 ++ ++pci:v00001093d0000707E* ++ ID_MODEL_FROM_DATABASE=PXI-4462 ++ ++pci:v00001093d00007080* ++ ID_MODEL_FROM_DATABASE=PXI-8430/2 (RS-232) Interface ++ ++pci:v00001093d00007081* ++ ID_MODEL_FROM_DATABASE=PXI-8431/2 (RS-485) Interface ++ + pci:v00001093d00007083* + ID_MODEL_FROM_DATABASE=PCI-7833R + + pci:v00001093d00007085* + ID_MODEL_FROM_DATABASE=PCI-6509 + ++pci:v00001093d00007086* ++ ID_MODEL_FROM_DATABASE=PXI-6528 ++ ++pci:v00001093d00007087* ++ ID_MODEL_FROM_DATABASE=PCI-6515 ++ ++pci:v00001093d00007088* ++ ID_MODEL_FROM_DATABASE=PCI-6514 ++ ++pci:v00001093d0000708C* ++ ID_MODEL_FROM_DATABASE=PXI-2568 ++ ++pci:v00001093d0000708D* ++ ID_MODEL_FROM_DATABASE=PXI-2569 ++ + pci:v00001093d000070A9* +- ID_MODEL_FROM_DATABASE=PCI-6528 (Digital I/O at 60V) ++ ID_MODEL_FROM_DATABASE=PCI-6528 + + pci:v00001093d000070AA* + ID_MODEL_FROM_DATABASE=PCI-6229 +@@ -17633,6 +17912,9 @@ pci:v00001093d000070AB* + pci:v00001093d000070AC* + ID_MODEL_FROM_DATABASE=PCI-6289 + ++pci:v00001093d000070AD* ++ ID_MODEL_FROM_DATABASE=PXI-6251 ++ + pci:v00001093d000070AE* + ID_MODEL_FROM_DATABASE=PXI-6220 + +@@ -17642,9 +17924,21 @@ pci:v00001093d000070AF* + pci:v00001093d000070B0* + ID_MODEL_FROM_DATABASE=PCI-6220 + ++pci:v00001093d000070B1* ++ ID_MODEL_FROM_DATABASE=PXI-6229 ++ ++pci:v00001093d000070B2* ++ ID_MODEL_FROM_DATABASE=PXI-6259 ++ ++pci:v00001093d000070B3* ++ ID_MODEL_FROM_DATABASE=PXI-6289 ++ + pci:v00001093d000070B4* + ID_MODEL_FROM_DATABASE=PCI-6250 + ++pci:v00001093d000070B5* ++ ID_MODEL_FROM_DATABASE=PXI-6221 ++ + pci:v00001093d000070B6* + ID_MODEL_FROM_DATABASE=PCI-6280 + +@@ -17652,7 +17946,16 @@ pci:v00001093d000070B7* + ID_MODEL_FROM_DATABASE=PCI-6254 + + pci:v00001093d000070B8* +- ID_MODEL_FROM_DATABASE=PCI-6251 [M Series - High Speed Multifunction DAQ] ++ ID_MODEL_FROM_DATABASE=PCI-6251 ++ ++pci:v00001093d000070B9* ++ ID_MODEL_FROM_DATABASE=PXI-6250 ++ ++pci:v00001093d000070BA* ++ ID_MODEL_FROM_DATABASE=PXI-6254 ++ ++pci:v00001093d000070BB* ++ ID_MODEL_FROM_DATABASE=PXI-6280 + + pci:v00001093d000070BC* + ID_MODEL_FROM_DATABASE=PCI-6284 +@@ -17660,12 +17963,144 @@ pci:v00001093d000070BC* + pci:v00001093d000070BD* + ID_MODEL_FROM_DATABASE=PCI-6281 + ++pci:v00001093d000070BE* ++ ID_MODEL_FROM_DATABASE=PXI-6284 ++ + pci:v00001093d000070BF* + ID_MODEL_FROM_DATABASE=PXI-6281 + + pci:v00001093d000070C0* + ID_MODEL_FROM_DATABASE=PCI-6143 + ++pci:v00001093d000070C3* ++ ID_MODEL_FROM_DATABASE=PCI-6511 ++ ++pci:v00001093d000070C4* ++ ID_MODEL_FROM_DATABASE=PXI-7330 ++ ++pci:v00001093d000070C5* ++ ID_MODEL_FROM_DATABASE=PXI-7340 ++ ++pci:v00001093d000070C6* ++ ID_MODEL_FROM_DATABASE=PCI-7330 ++ ++pci:v00001093d000070C7* ++ ID_MODEL_FROM_DATABASE=PCI-7340 ++ ++pci:v00001093d000070C8* ++ ID_MODEL_FROM_DATABASE=PCI-6513 ++ ++pci:v00001093d000070C9* ++ ID_MODEL_FROM_DATABASE=PXI-6515 ++ ++pci:v00001093d000070CA* ++ ID_MODEL_FROM_DATABASE=PCI-1405 ++ ++pci:v00001093d000070CC* ++ ID_MODEL_FROM_DATABASE=PCI-6512 ++ ++pci:v00001093d000070CD* ++ ID_MODEL_FROM_DATABASE=PXI-6514 ++ ++pci:v00001093d000070CE* ++ ID_MODEL_FROM_DATABASE=PXI-1405 ++ ++pci:v00001093d000070CF* ++ ID_MODEL_FROM_DATABASE=PCIe-GPIB ++ ++pci:v00001093d000070D0* ++ ID_MODEL_FROM_DATABASE=PXI-2570 ++ ++pci:v00001093d000070D1* ++ ID_MODEL_FROM_DATABASE=PXI-6513 ++ ++pci:v00001093d000070D2* ++ ID_MODEL_FROM_DATABASE=PXI-6512 ++ ++pci:v00001093d000070D3* ++ ID_MODEL_FROM_DATABASE=PXI-6511 ++ ++pci:v00001093d000070D4* ++ ID_MODEL_FROM_DATABASE=PCI-6722 ++ ++pci:v00001093d000070D6* ++ ID_MODEL_FROM_DATABASE=PXI-4072 ++ ++pci:v00001093d000070D7* ++ ID_MODEL_FROM_DATABASE=PXI-6541 ++ ++pci:v00001093d000070D8* ++ ID_MODEL_FROM_DATABASE=PXI-6542 ++ ++pci:v00001093d000070D9* ++ ID_MODEL_FROM_DATABASE=PCI-6541 ++ ++pci:v00001093d000070DA* ++ ID_MODEL_FROM_DATABASE=PCI-6542 ++ ++pci:v00001093d000070DB* ++ ID_MODEL_FROM_DATABASE=PCI-8430/2 (RS-232) Interface ++ ++pci:v00001093d000070DC* ++ ID_MODEL_FROM_DATABASE=PCI-8431/2 (RS-485) Interface ++ ++pci:v00001093d000070DD* ++ ID_MODEL_FROM_DATABASE=PXI-8430/4 (RS-232) Interface ++ ++pci:v00001093d000070DE* ++ ID_MODEL_FROM_DATABASE=PXI-8431/4 (RS-485) Interface ++ ++pci:v00001093d000070DF* ++ ID_MODEL_FROM_DATABASE=PCI-8430/4 (RS-232) Interface ++ ++pci:v00001093d000070E0* ++ ID_MODEL_FROM_DATABASE=PCI-8431/4 (RS-485) Interface ++ ++pci:v00001093d000070E1* ++ ID_MODEL_FROM_DATABASE=PXI-2532 ++ ++pci:v00001093d000070E2* ++ ID_MODEL_FROM_DATABASE=PXI-8430/8 (RS-232) Interface ++ ++pci:v00001093d000070E3* ++ ID_MODEL_FROM_DATABASE=PXI-8431/8 (RS-485) Interface ++ ++pci:v00001093d000070E4* ++ ID_MODEL_FROM_DATABASE=PCI-8430/8 (RS-232) Interface ++ ++pci:v00001093d000070E5* ++ ID_MODEL_FROM_DATABASE=PCI-8431/8 (RS-485) Interface ++ ++pci:v00001093d000070E6* ++ ID_MODEL_FROM_DATABASE=PXI-8430/16 (RS-232) Interface ++ ++pci:v00001093d000070E7* ++ ID_MODEL_FROM_DATABASE=PCI-8430/16 (RS-232) Interface ++ ++pci:v00001093d000070E8* ++ ID_MODEL_FROM_DATABASE=PXI-8432/2 (Isolated RS-232) Interface ++ ++pci:v00001093d000070E9* ++ ID_MODEL_FROM_DATABASE=PXI-8433/2 (Isolated RS-485) Interface ++ ++pci:v00001093d000070EA* ++ ID_MODEL_FROM_DATABASE=PCI-8432/2 (Isolated RS-232) Interface ++ ++pci:v00001093d000070EB* ++ ID_MODEL_FROM_DATABASE=PCI-8433/2 (Isolated RS-485) Interface ++ ++pci:v00001093d000070EC* ++ ID_MODEL_FROM_DATABASE=PXI-8432/4 (Isolated RS-232) Interface ++ ++pci:v00001093d000070ED* ++ ID_MODEL_FROM_DATABASE=PXI-8433/4 (Isolated RS-485) Interface ++ ++pci:v00001093d000070EE* ++ ID_MODEL_FROM_DATABASE=PCI-8432/4 (Isolated RS-232) Interface ++ ++pci:v00001093d000070EF* ++ ID_MODEL_FROM_DATABASE=PCI-8433/4 (Isolated RS-485) Interface ++ + pci:v00001093d000070F0* + ID_MODEL_FROM_DATABASE=PXI-5922 + +@@ -17675,57 +18110,363 @@ pci:v00001093d000070F1* + pci:v00001093d000070F2* + ID_MODEL_FROM_DATABASE=PCI-6224 + ++pci:v00001093d000070F3* ++ ID_MODEL_FROM_DATABASE=PXI-6224 ++ ++pci:v00001093d000070F6* ++ ID_MODEL_FROM_DATABASE=cRIO-9101 ++ ++pci:v00001093d000070F7* ++ ID_MODEL_FROM_DATABASE=cRIO-9103 ++ ++pci:v00001093d000070F8* ++ ID_MODEL_FROM_DATABASE=cRIO-9104 ++ ++pci:v00001093d000070FF* ++ ID_MODEL_FROM_DATABASE=PXI-6723 ++ ++pci:v00001093d00007100* ++ ID_MODEL_FROM_DATABASE=PXI-6722 ++ ++pci:v00001093d00007104* ++ ID_MODEL_FROM_DATABASE=PCIx-1429 ++ ++pci:v00001093d00007105* ++ ID_MODEL_FROM_DATABASE=PCIe-1429 ++ ++pci:v00001093d0000710A* ++ ID_MODEL_FROM_DATABASE=PXI-4071 ++ ++pci:v00001093d0000710D* ++ ID_MODEL_FROM_DATABASE=PXI-6143 ++ ++pci:v00001093d0000710E* ++ ID_MODEL_FROM_DATABASE=PCIe-GPIB ++ ++pci:v00001093d0000710F* ++ ID_MODEL_FROM_DATABASE=PXI-5422 ++ ++pci:v00001093d00007110* ++ ID_MODEL_FROM_DATABASE=PCI-5422 ++ ++pci:v00001093d00007111* ++ ID_MODEL_FROM_DATABASE=PXI-5441 ++ ++pci:v00001093d00007119* ++ ID_MODEL_FROM_DATABASE=PXI-6561 ++ ++pci:v00001093d0000711A* ++ ID_MODEL_FROM_DATABASE=PXI-6562 ++ ++pci:v00001093d0000711B* ++ ID_MODEL_FROM_DATABASE=PCI-6561 ++ ++pci:v00001093d0000711C* ++ ID_MODEL_FROM_DATABASE=PCI-6562 ++ ++pci:v00001093d00007120* ++ ID_MODEL_FROM_DATABASE=PCI-7390 ++ + pci:v00001093d00007121* + ID_MODEL_FROM_DATABASE=PXI-5122EX + + pci:v00001093d00007122* + ID_MODEL_FROM_DATABASE=PCI-5122EX + ++pci:v00001093d00007123* ++ ID_MODEL_FROM_DATABASE=PXIe-5653 ++ ++pci:v00001093d00007124* ++ ID_MODEL_FROM_DATABASE=PCI-6510 ++ ++pci:v00001093d00007125* ++ ID_MODEL_FROM_DATABASE=PCI-6516 ++ ++pci:v00001093d00007126* ++ ID_MODEL_FROM_DATABASE=PCI-6517 ++ ++pci:v00001093d00007127* ++ ID_MODEL_FROM_DATABASE=PCI-6518 ++ ++pci:v00001093d00007128* ++ ID_MODEL_FROM_DATABASE=PCI-6519 ++ ++pci:v00001093d00007137* ++ ID_MODEL_FROM_DATABASE=PXI-2575 ++ ++pci:v00001093d0000713C* ++ ID_MODEL_FROM_DATABASE=PXI-2585 ++ ++pci:v00001093d0000713D* ++ ID_MODEL_FROM_DATABASE=PXI-2586 ++ ++pci:v00001093d00007142* ++ ID_MODEL_FROM_DATABASE=PXI-4224 ++ + pci:v00001093d00007144* +- ID_MODEL_FROM_DATABASE=PXI-5124 (12-bit 200 MS/s Digitizer) ++ ID_MODEL_FROM_DATABASE=PXI-5124 + + pci:v00001093d00007145* + ID_MODEL_FROM_DATABASE=PCI-5124 + ++pci:v00001093d00007146* ++ ID_MODEL_FROM_DATABASE=PCI-6132 ++ ++pci:v00001093d00007147* ++ ID_MODEL_FROM_DATABASE=PXI-6132 ++ ++pci:v00001093d00007148* ++ ID_MODEL_FROM_DATABASE=PCI-6122 ++ ++pci:v00001093d00007149* ++ ID_MODEL_FROM_DATABASE=PXI-6122 ++ + pci:v00001093d0000714C* + ID_MODEL_FROM_DATABASE=PXI-5114 + + pci:v00001093d0000714D* + ID_MODEL_FROM_DATABASE=PCI-5114 + ++pci:v00001093d00007150* ++ ID_MODEL_FROM_DATABASE=PXI-2564 ++ + pci:v00001093d00007152* + ID_MODEL_FROM_DATABASE=PCI-5640R + ++pci:v00001093d00007156* ++ ID_MODEL_FROM_DATABASE=PXI-1044 Trigger Routing Module ++ ++pci:v00001093d0000715D* ++ ID_MODEL_FROM_DATABASE=PCI-1426 ++ ++pci:v00001093d00007167* ++ ID_MODEL_FROM_DATABASE=PXI-5412 ++ ++pci:v00001093d00007168* ++ ID_MODEL_FROM_DATABASE=PCI-5412 ++ ++pci:v00001093d0000716B* ++ ID_MODEL_FROM_DATABASE=PCI-6230 ++ + pci:v00001093d0000716C* + ID_MODEL_FROM_DATABASE=PCI-6225 + ++pci:v00001093d0000716D* ++ ID_MODEL_FROM_DATABASE=PXI-6225 ++ ++pci:v00001093d0000716F* ++ ID_MODEL_FROM_DATABASE=PCI-4461 ++ ++pci:v00001093d00007170* ++ ID_MODEL_FROM_DATABASE=PCI-4462 ++ ++pci:v00001093d00007171* ++ ID_MODEL_FROM_DATABASE=PCI-6010 ++ ++pci:v00001093d00007174* ++ ID_MODEL_FROM_DATABASE=PXI-8360 ++ ++pci:v00001093d00007177* ++ ID_MODEL_FROM_DATABASE=PXI-6230 ++ + pci:v00001093d0000717D* +- ID_MODEL_FROM_DATABASE=PCIE-6251 ++ ID_MODEL_FROM_DATABASE=PCIe-6251 + + pci:v00001093d0000717F* + ID_MODEL_FROM_DATABASE=PCIe-6259 + ++pci:v00001093d00007187* ++ ID_MODEL_FROM_DATABASE=PCI-1410 ++ ++pci:v00001093d0000718B* ++ ID_MODEL_FROM_DATABASE=PCI-6521 ++ ++pci:v00001093d0000718C* ++ ID_MODEL_FROM_DATABASE=PXI-6521 ++ ++pci:v00001093d00007191* ++ ID_MODEL_FROM_DATABASE=PCI-6154 ++ + pci:v00001093d00007193* + ID_MODEL_FROM_DATABASE=PXI-7813R + + pci:v00001093d00007194* + ID_MODEL_FROM_DATABASE=PCI-7813R + ++pci:v00001093d00007195* ++ ID_MODEL_FROM_DATABASE=PCI-8254R ++ ++pci:v00001093d00007197* ++ ID_MODEL_FROM_DATABASE=PXI-5402 ++ ++pci:v00001093d00007198* ++ ID_MODEL_FROM_DATABASE=PCI-5402 ++ ++pci:v00001093d0000719F* ++ ID_MODEL_FROM_DATABASE=PCIe-6535 ++ ++pci:v00001093d000071A0* ++ ID_MODEL_FROM_DATABASE=PCIe-6536 ++ ++pci:v00001093d000071A3* ++ ID_MODEL_FROM_DATABASE=PXI-5650 ++ ++pci:v00001093d000071A4* ++ ID_MODEL_FROM_DATABASE=PXI-5652 ++ ++pci:v00001093d000071A5* ++ ID_MODEL_FROM_DATABASE=PXI-2594 ++ ++pci:v00001093d000071A7* ++ ID_MODEL_FROM_DATABASE=PXI-2595 ++ ++pci:v00001093d000071A9* ++ ID_MODEL_FROM_DATABASE=PXI-2596 ++ ++pci:v00001093d000071AA* ++ ID_MODEL_FROM_DATABASE=PXI-2597 ++ ++pci:v00001093d000071AB* ++ ID_MODEL_FROM_DATABASE=PXI-2598 ++ ++pci:v00001093d000071AC* ++ ID_MODEL_FROM_DATABASE=PXI-2599 ++ ++pci:v00001093d000071AD* ++ ID_MODEL_FROM_DATABASE=PCI-GPIB+ ++ ++pci:v00001093d000071AE* ++ ID_MODEL_FROM_DATABASE=PCIe-1430 ++ ++pci:v00001093d000071B7* ++ ID_MODEL_FROM_DATABASE=PXI-1056 Trigger Routing Module ++ ++pci:v00001093d000071B8* ++ ID_MODEL_FROM_DATABASE=PXI-1045 Trigger Routing Module ++ ++pci:v00001093d000071B9* ++ ID_MODEL_FROM_DATABASE=PXI-1044 Trigger Routing Module ++ ++pci:v00001093d000071BB* ++ ID_MODEL_FROM_DATABASE=PXI-2584 ++ + pci:v00001093d000071BC* +- ID_MODEL_FROM_DATABASE=PCI-6221 (37pin) ++ ID_MODEL_FROM_DATABASE=PCI-6221 (37-pin) + +-pci:v00001093d000071D0* +- ID_MODEL_FROM_DATABASE=PXI-6143 ++pci:v00001093d000071BF* ++ ID_MODEL_FROM_DATABASE=PCIe-1427 ++ ++pci:v00001093d000071C5* ++ ID_MODEL_FROM_DATABASE=PCI-6520 ++ ++pci:v00001093d000071C6* ++ ID_MODEL_FROM_DATABASE=PXI-2576 ++ ++pci:v00001093d000071C7* ++ ID_MODEL_FROM_DATABASE=cRIO-9072 + + pci:v00001093d000071DC* + ID_MODEL_FROM_DATABASE=PCI-1588 + ++pci:v00001093d000071E0* ++ ID_MODEL_FROM_DATABASE=PCI-6255 ++ ++pci:v00001093d000071E1* ++ ID_MODEL_FROM_DATABASE=PXI-6255 ++ ++pci:v00001093d000071E2* ++ ID_MODEL_FROM_DATABASE=PXI-5406 ++ ++pci:v00001093d000071E3* ++ ID_MODEL_FROM_DATABASE=PCI-5406 ++ ++pci:v00001093d000071FC* ++ ID_MODEL_FROM_DATABASE=PXI-4022 ++ ++pci:v00001093d00007209* ++ ID_MODEL_FROM_DATABASE=PCI-6233 ++ ++pci:v00001093d0000720A* ++ ID_MODEL_FROM_DATABASE=PXI-6233 ++ ++pci:v00001093d0000720B* ++ ID_MODEL_FROM_DATABASE=PCI-6238 ++ ++pci:v00001093d0000720C* ++ ID_MODEL_FROM_DATABASE=PXI-6238 ++ + pci:v00001093d00007260* + ID_MODEL_FROM_DATABASE=PXI-5142 + + pci:v00001093d00007261* + ID_MODEL_FROM_DATABASE=PCI-5142 + ++pci:v00001093d0000726D* ++ ID_MODEL_FROM_DATABASE=PXI-5651 ++ ++pci:v00001093d00007273* ++ ID_MODEL_FROM_DATABASE=PXI-4461 ++ ++pci:v00001093d00007274* ++ ID_MODEL_FROM_DATABASE=PXI-4462 ++ ++pci:v00001093d00007279* ++ ID_MODEL_FROM_DATABASE=PCI-6232 ++ ++pci:v00001093d0000727A* ++ ID_MODEL_FROM_DATABASE=PXI-6232 ++ ++pci:v00001093d0000727B* ++ ID_MODEL_FROM_DATABASE=PCI-6239 ++ ++pci:v00001093d0000727C* ++ ID_MODEL_FROM_DATABASE=PXI-6239 ++ ++pci:v00001093d0000727E* ++ ID_MODEL_FROM_DATABASE=SMBus Controller ++ ++pci:v00001093d0000727Esv00001093sd000075AC* ++ ID_MODEL_FROM_DATABASE=SMBus Controller (PXIe-8388) ++ ++pci:v00001093d0000727Esv00001093sd000075AD* ++ ID_MODEL_FROM_DATABASE=SMBus Controller (PXIe-8389) ++ ++pci:v00001093d0000727Esv00001093sd00007650* ++ ID_MODEL_FROM_DATABASE=SMBus Controller (PXIe-8381) ++ ++pci:v00001093d0000727Esv00001093sd00008360* ++ ID_MODEL_FROM_DATABASE=SMBus Controller (PXIe-8360) ++ ++pci:v00001093d0000727Esv00001093sd00008370* ++ ID_MODEL_FROM_DATABASE=SMBus Controller (PXIe-8370) ++ ++pci:v00001093d0000727Esv00001093sd00008375* ++ ID_MODEL_FROM_DATABASE=SMBus Controller (PXIe-8375) ++ ++pci:v00001093d00007281* ++ ID_MODEL_FROM_DATABASE=PCI-6236 ++ ++pci:v00001093d00007282* ++ ID_MODEL_FROM_DATABASE=PXI-6236 ++ ++pci:v00001093d00007283* ++ ID_MODEL_FROM_DATABASE=PXI-2554 ++ ++pci:v00001093d00007288* ++ ID_MODEL_FROM_DATABASE=PXIe-5611 ++ ++pci:v00001093d00007293* ++ ID_MODEL_FROM_DATABASE=PCIe-8255R ++ ++pci:v00001093d0000729D* ++ ID_MODEL_FROM_DATABASE=cRIO-9074 ++ ++pci:v00001093d000072A4* ++ ID_MODEL_FROM_DATABASE=PCIe-4065 ++ ++pci:v00001093d000072A7* ++ ID_MODEL_FROM_DATABASE=PCIe-6537 ++ + pci:v00001093d000072A8* + ID_MODEL_FROM_DATABASE=PXI-5152 + +@@ -17741,21 +18482,117 @@ pci:v00001093d000072AB* + pci:v00001093d000072B8* + ID_MODEL_FROM_DATABASE=PXI-6682 + ++pci:v00001093d000072D0* ++ ID_MODEL_FROM_DATABASE=PXI-2545 ++ ++pci:v00001093d000072D1* ++ ID_MODEL_FROM_DATABASE=PXI-2546 ++ ++pci:v00001093d000072D2* ++ ID_MODEL_FROM_DATABASE=PXI-2547 ++ ++pci:v00001093d000072D3* ++ ID_MODEL_FROM_DATABASE=PXI-2548 ++ ++pci:v00001093d000072D4* ++ ID_MODEL_FROM_DATABASE=PXI-2549 ++ ++pci:v00001093d000072D5* ++ ID_MODEL_FROM_DATABASE=PXI-2555 ++ ++pci:v00001093d000072D6* ++ ID_MODEL_FROM_DATABASE=PXI-2556 ++ ++pci:v00001093d000072D7* ++ ID_MODEL_FROM_DATABASE=PXI-2557 ++ ++pci:v00001093d000072D8* ++ ID_MODEL_FROM_DATABASE=PXI-2558 ++ ++pci:v00001093d000072D9* ++ ID_MODEL_FROM_DATABASE=PXI-2559 ++ ++pci:v00001093d000072E8* ++ ID_MODEL_FROM_DATABASE=PXIe-6251 ++ ++pci:v00001093d000072E9* ++ ID_MODEL_FROM_DATABASE=PXIe-6259 ++ ++pci:v00001093d000072EF* ++ ID_MODEL_FROM_DATABASE=PXI-4498 ++ ++pci:v00001093d000072F0* ++ ID_MODEL_FROM_DATABASE=PXI-4496 ++ ++pci:v00001093d000072FB* ++ ID_MODEL_FROM_DATABASE=PXIe-6672 ++ ++pci:v00001093d0000730E* ++ ID_MODEL_FROM_DATABASE=PXI-4130 ++ + pci:v00001093d0000730F* + ID_MODEL_FROM_DATABASE=PXI-5922EX + + pci:v00001093d00007310* + ID_MODEL_FROM_DATABASE=PCI-5922EX + ++pci:v00001093d0000731C* ++ ID_MODEL_FROM_DATABASE=PXI-2535 ++ ++pci:v00001093d0000731D* ++ ID_MODEL_FROM_DATABASE=PXI-2536 ++ ++pci:v00001093d00007322* ++ ID_MODEL_FROM_DATABASE=PXIe-6124 ++ ++pci:v00001093d00007327* ++ ID_MODEL_FROM_DATABASE=PXI-6529 ++ ++pci:v00001093d00007331* ++ ID_MODEL_FROM_DATABASE=PXIe-5602 ++ ++pci:v00001093d00007332* ++ ID_MODEL_FROM_DATABASE=PXIe-5601 ++ + pci:v00001093d00007333* + ID_MODEL_FROM_DATABASE=PXI-5900 + ++pci:v00001093d00007335* ++ ID_MODEL_FROM_DATABASE=PXI-2533 ++ ++pci:v00001093d00007336* ++ ID_MODEL_FROM_DATABASE=PXI-2534 ++ ++pci:v00001093d00007342* ++ ID_MODEL_FROM_DATABASE=PXI-4461 ++ + pci:v00001093d00007349* + ID_MODEL_FROM_DATABASE=PXI-5154 + + pci:v00001093d0000734A* + ID_MODEL_FROM_DATABASE=PCI-5154 + ++pci:v00001093d00007357* ++ ID_MODEL_FROM_DATABASE=PXI-4065 ++ ++pci:v00001093d00007359* ++ ID_MODEL_FROM_DATABASE=PXI-4495 ++ ++pci:v00001093d00007370* ++ ID_MODEL_FROM_DATABASE=PXI-4461 ++ ++pci:v00001093d00007373* ++ ID_MODEL_FROM_DATABASE=sbRIO-9601 ++ ++pci:v00001093d00007374* ++ ID_MODEL_FROM_DATABASE=IOtech-9601 ++ ++pci:v00001093d00007375* ++ ID_MODEL_FROM_DATABASE=sbRIO-9602 ++ ++pci:v00001093d00007378* ++ ID_MODEL_FROM_DATABASE=sbRIO-9641 ++ + pci:v00001093d0000737D* + ID_MODEL_FROM_DATABASE=PXI-5124EX + +@@ -17786,9 +18623,126 @@ pci:v00001093d00007393* + pci:v00001093d00007394* + ID_MODEL_FROM_DATABASE=PCIe-7842R + ++pci:v00001093d00007397* ++ ID_MODEL_FROM_DATABASE=sbRIO-9611 ++ ++pci:v00001093d00007398* ++ ID_MODEL_FROM_DATABASE=sbRIO-9612 ++ ++pci:v00001093d00007399* ++ ID_MODEL_FROM_DATABASE=sbRIO-9631 ++ ++pci:v00001093d0000739A* ++ ID_MODEL_FROM_DATABASE=sbRIO-9632 ++ ++pci:v00001093d0000739B* ++ ID_MODEL_FROM_DATABASE=sbRIO-9642 ++ ++pci:v00001093d000073A1* ++ ID_MODEL_FROM_DATABASE=PXIe-4498 ++ ++pci:v00001093d000073A2* ++ ID_MODEL_FROM_DATABASE=PXIe-4496 ++ + pci:v00001093d000073A5* + ID_MODEL_FROM_DATABASE=PXIe-5641R + ++pci:v00001093d000073A7* ++ ID_MODEL_FROM_DATABASE=PXI-8250 Chassis Monitor Module ++ ++pci:v00001093d000073A8* ++ ID_MODEL_FROM_DATABASE=PXI-8511 CAN/LS ++ ++pci:v00001093d000073A9* ++ ID_MODEL_FROM_DATABASE=PXI-8511 CAN/LS ++ ++pci:v00001093d000073AA* ++ ID_MODEL_FROM_DATABASE=PXI-8512 CAN/HS ++ ++pci:v00001093d000073AB* ++ ID_MODEL_FROM_DATABASE=PXI-8512 CAN/HS ++ ++pci:v00001093d000073AC* ++ ID_MODEL_FROM_DATABASE=PXI-8513 CAN/XS ++ ++pci:v00001093d000073AD* ++ ID_MODEL_FROM_DATABASE=PXI-8513 CAN/XS ++ ++pci:v00001093d000073AF* ++ ID_MODEL_FROM_DATABASE=PXI-8516 LIN ++ ++pci:v00001093d000073B1* ++ ID_MODEL_FROM_DATABASE=PXI-8517 FlexRay ++ ++pci:v00001093d000073B2* ++ ID_MODEL_FROM_DATABASE=PXI-8531 CANopen ++ ++pci:v00001093d000073B3* ++ ID_MODEL_FROM_DATABASE=PXI-8531 CANopen ++ ++pci:v00001093d000073B4* ++ ID_MODEL_FROM_DATABASE=PXI-8532 DeviceNet ++ ++pci:v00001093d000073B5* ++ ID_MODEL_FROM_DATABASE=PXI-8532 DeviceNet ++ ++pci:v00001093d000073B6* ++ ID_MODEL_FROM_DATABASE=PCI-8511 CAN/LS ++ ++pci:v00001093d000073B7* ++ ID_MODEL_FROM_DATABASE=PCI-8511 CAN/LS ++ ++pci:v00001093d000073B8* ++ ID_MODEL_FROM_DATABASE=PCI-8512 CAN/HS ++ ++pci:v00001093d000073B9* ++ ID_MODEL_FROM_DATABASE=PCI-8512 CAN/HS ++ ++pci:v00001093d000073BA* ++ ID_MODEL_FROM_DATABASE=PCI-8513 CAN/XS ++ ++pci:v00001093d000073BB* ++ ID_MODEL_FROM_DATABASE=PCI-8513 CAN/XS ++ ++pci:v00001093d000073BD* ++ ID_MODEL_FROM_DATABASE=PCI-8516 LIN ++ ++pci:v00001093d000073BF* ++ ID_MODEL_FROM_DATABASE=PCI-8517 FlexRay ++ ++pci:v00001093d000073C0* ++ ID_MODEL_FROM_DATABASE=PCI-8531 CANopen ++ ++pci:v00001093d000073C1* ++ ID_MODEL_FROM_DATABASE=PCI-8531 CANopen ++ ++pci:v00001093d000073C2* ++ ID_MODEL_FROM_DATABASE=PCI-8532 DeviceNet ++ ++pci:v00001093d000073C3* ++ ID_MODEL_FROM_DATABASE=PCI-8532 DeviceNet ++ ++pci:v00001093d000073C5* ++ ID_MODEL_FROM_DATABASE=PXIe-2527 ++ ++pci:v00001093d000073C6* ++ ID_MODEL_FROM_DATABASE=PXIe-2529 ++ ++pci:v00001093d000073C8* ++ ID_MODEL_FROM_DATABASE=PXIe-2530 ++ ++pci:v00001093d000073C9* ++ ID_MODEL_FROM_DATABASE=PXIe-2532 ++ ++pci:v00001093d000073CA* ++ ID_MODEL_FROM_DATABASE=PXIe-2569 ++ ++pci:v00001093d000073CB* ++ ID_MODEL_FROM_DATABASE=PXIe-2575 ++ ++pci:v00001093d000073CC* ++ ID_MODEL_FROM_DATABASE=PXIe-2593 ++ + pci:v00001093d000073D5* + ID_MODEL_FROM_DATABASE=PXI-7951R + +@@ -17804,15 +18758,87 @@ pci:v00001093d000073E1* + pci:v00001093d000073EC* + ID_MODEL_FROM_DATABASE=PXI-7954R + ++pci:v00001093d000073ED* ++ ID_MODEL_FROM_DATABASE=cRIO-9073 ++ + pci:v00001093d000073F0* + ID_MODEL_FROM_DATABASE=PXI-5153 + + pci:v00001093d000073F1* + ID_MODEL_FROM_DATABASE=PCI-5153 + ++pci:v00001093d000073F4* ++ ID_MODEL_FROM_DATABASE=PXI-2515 ++ ++pci:v00001093d000073F6* ++ ID_MODEL_FROM_DATABASE=cRIO-9111 ++ ++pci:v00001093d000073F7* ++ ID_MODEL_FROM_DATABASE=cRIO-9112 ++ ++pci:v00001093d000073F8* ++ ID_MODEL_FROM_DATABASE=cRIO-9113 ++ ++pci:v00001093d000073F9* ++ ID_MODEL_FROM_DATABASE=cRIO-9114 ++ ++pci:v00001093d000073FA* ++ ID_MODEL_FROM_DATABASE=cRIO-9116 ++ ++pci:v00001093d000073FB* ++ ID_MODEL_FROM_DATABASE=cRIO-9118 ++ ++pci:v00001093d00007404* ++ ID_MODEL_FROM_DATABASE=PXI-4132 ++ + pci:v00001093d00007405* + ID_MODEL_FROM_DATABASE=PXIe-6674T + ++pci:v00001093d00007406* ++ ID_MODEL_FROM_DATABASE=PXIe-6674 ++ ++pci:v00001093d0000740E* ++ ID_MODEL_FROM_DATABASE=PCIe-8430/16 (RS-232) Interface ++ ++pci:v00001093d0000740F* ++ ID_MODEL_FROM_DATABASE=PCIe-8430/8 (RS-232) Interface ++ ++pci:v00001093d00007410* ++ ID_MODEL_FROM_DATABASE=PCIe-8431/16 (RS-485) Interface ++ ++pci:v00001093d00007411* ++ ID_MODEL_FROM_DATABASE=PCIe-8431/8 (RS-485) Interface ++ ++pci:v00001093d00007414* ++ ID_MODEL_FROM_DATABASE=PCIe-GPIB+ ++ ++pci:v00001093d0000741C* ++ ID_MODEL_FROM_DATABASE=PXI-5691 ++ ++pci:v00001093d0000741D* ++ ID_MODEL_FROM_DATABASE=PXI-5695 ++ ++pci:v00001093d0000743C* ++ ID_MODEL_FROM_DATABASE=CSC-3059 ++ ++pci:v00001093d00007448* ++ ID_MODEL_FROM_DATABASE=PXI-2510 ++ ++pci:v00001093d00007454* ++ ID_MODEL_FROM_DATABASE=PXI-2512 ++ ++pci:v00001093d00007455* ++ ID_MODEL_FROM_DATABASE=PXI-2514 ++ ++pci:v00001093d00007456* ++ ID_MODEL_FROM_DATABASE=PXIe-2512 ++ ++pci:v00001093d00007457* ++ ID_MODEL_FROM_DATABASE=PXIe-2514 ++ ++pci:v00001093d0000745A* ++ ID_MODEL_FROM_DATABASE=PXI-6682H ++ + pci:v00001093d0000745E* + ID_MODEL_FROM_DATABASE=PXI-5153EX + +@@ -17825,86 +18851,740 @@ pci:v00001093d00007460* + pci:v00001093d00007461* + ID_MODEL_FROM_DATABASE=PCI-5154EX + ++pci:v00001093d0000746D* ++ ID_MODEL_FROM_DATABASE=PXIe-5650 ++ ++pci:v00001093d0000746E* ++ ID_MODEL_FROM_DATABASE=PXIe-5651 ++ ++pci:v00001093d0000746F* ++ ID_MODEL_FROM_DATABASE=PXIe-5652 ++ ++pci:v00001093d00007472* ++ ID_MODEL_FROM_DATABASE=PXI-2800 ++ ++pci:v00001093d00007495* ++ ID_MODEL_FROM_DATABASE=PXIe-5603 ++ ++pci:v00001093d00007497* ++ ID_MODEL_FROM_DATABASE=PXIe-5605 ++ ++pci:v00001093d000074AE* ++ ID_MODEL_FROM_DATABASE=PXIe-2515 ++ ++pci:v00001093d000074B4* ++ ID_MODEL_FROM_DATABASE=PXI-2531 ++ ++pci:v00001093d000074B5* ++ ID_MODEL_FROM_DATABASE=PXIe-2531 ++ ++pci:v00001093d000074C1* ++ ID_MODEL_FROM_DATABASE=PXIe-8430/16 (RS-232) Interface ++ ++pci:v00001093d000074C2* ++ ID_MODEL_FROM_DATABASE=PXIe-8430/8 (RS-232) Interface ++ ++pci:v00001093d000074C3* ++ ID_MODEL_FROM_DATABASE=PXIe-8431/16 (RS-485) Interface ++ ++pci:v00001093d000074C4* ++ ID_MODEL_FROM_DATABASE=PXIe-8431/8 (RS-485) Interface ++ ++pci:v00001093d000074D5* ++ ID_MODEL_FROM_DATABASE=PXIe-5630 ++ ++pci:v00001093d000074D9* ++ ID_MODEL_FROM_DATABASE=PCIe-8432/2 (Isolated RS-232) Interface ++ ++pci:v00001093d000074DA* ++ ID_MODEL_FROM_DATABASE=PCIe-8433/2 (Isolated RS-485) Interface ++ ++pci:v00001093d000074DB* ++ ID_MODEL_FROM_DATABASE=PCIe-8432/4 (Isolated RS-232) Interface ++ ++pci:v00001093d000074DC* ++ ID_MODEL_FROM_DATABASE=PCIe-8433/4 (Isolated RS-485) Interface ++ ++pci:v00001093d000074E8* ++ ID_MODEL_FROM_DATABASE=NI 9148 ++ ++pci:v00001093d00007515* ++ ID_MODEL_FROM_DATABASE=PCIe-8430/2 (RS-232) Interface ++ ++pci:v00001093d00007516* ++ ID_MODEL_FROM_DATABASE=PCIe-8430/4 (RS-232) Interface ++ ++pci:v00001093d00007517* ++ ID_MODEL_FROM_DATABASE=PCIe-8431/2 (RS-485) Interface ++ ++pci:v00001093d00007518* ++ ID_MODEL_FROM_DATABASE=PCIe-8431/4 (RS-485) Interface ++ ++pci:v00001093d0000751B* ++ ID_MODEL_FROM_DATABASE=cRIO-9081 ++ ++pci:v00001093d0000751C* ++ ID_MODEL_FROM_DATABASE=cRIO-9082 ++ ++pci:v00001093d00007528* ++ ID_MODEL_FROM_DATABASE=PXIe-4497 ++ ++pci:v00001093d00007529* ++ ID_MODEL_FROM_DATABASE=PXIe-4499 ++ ++pci:v00001093d0000752A* ++ ID_MODEL_FROM_DATABASE=PXIe-4492 ++ + pci:v00001093d00007539* + ID_MODEL_FROM_DATABASE=NI 9157 + + pci:v00001093d0000753A* + ID_MODEL_FROM_DATABASE=NI 9159 + ++pci:v00001093d00007598* ++ ID_MODEL_FROM_DATABASE=PXI-2571 ++ ++pci:v00001093d000075A4* ++ ID_MODEL_FROM_DATABASE=PXI-4131A ++ ++pci:v00001093d000075B1* ++ ID_MODEL_FROM_DATABASE=PCIe-7854R ++ ++pci:v00001093d000075BA* ++ ID_MODEL_FROM_DATABASE=PXI-2543 ++ ++pci:v00001093d000075BB* ++ ID_MODEL_FROM_DATABASE=PXIe-2543 ++ + pci:v00001093d000075E5* + ID_MODEL_FROM_DATABASE=PXI-6683 + + pci:v00001093d000075E6* + ID_MODEL_FROM_DATABASE=PXI-6683H + ++pci:v00001093d000075EF* ++ ID_MODEL_FROM_DATABASE=PXIe-5632 ++ ++pci:v00001093d0000761F* ++ ID_MODEL_FROM_DATABASE=PXI-2540 ++ ++pci:v00001093d00007620* ++ ID_MODEL_FROM_DATABASE=PXIe-2540 ++ ++pci:v00001093d00007621* ++ ID_MODEL_FROM_DATABASE=PXI-2541 ++ ++pci:v00001093d00007622* ++ ID_MODEL_FROM_DATABASE=PXIe-2541 ++ + pci:v00001093d00007626* + ID_MODEL_FROM_DATABASE=NI 9154 + + pci:v00001093d00007627* + ID_MODEL_FROM_DATABASE=NI 9155 + ++pci:v00001093d00007638* ++ ID_MODEL_FROM_DATABASE=PXI-2720 ++ ++pci:v00001093d00007639* ++ ID_MODEL_FROM_DATABASE=PXI-2722 ++ ++pci:v00001093d0000763A* ++ ID_MODEL_FROM_DATABASE=PXIe-2725 ++ ++pci:v00001093d0000763B* ++ ID_MODEL_FROM_DATABASE=PXIe-2727 ++ ++pci:v00001093d0000763C* ++ ID_MODEL_FROM_DATABASE=PXI-4465 ++ ++pci:v00001093d0000764B* ++ ID_MODEL_FROM_DATABASE=PXIe-2790 ++ ++pci:v00001093d0000764C* ++ ID_MODEL_FROM_DATABASE=PXI-2520 ++ ++pci:v00001093d0000764D* ++ ID_MODEL_FROM_DATABASE=PXI-2521 ++ ++pci:v00001093d0000764E* ++ ID_MODEL_FROM_DATABASE=PXI-2522 ++ ++pci:v00001093d0000764F* ++ ID_MODEL_FROM_DATABASE=PXI-2523 ++ ++pci:v00001093d00007654* ++ ID_MODEL_FROM_DATABASE=PXI-2796 ++ ++pci:v00001093d00007655* ++ ID_MODEL_FROM_DATABASE=PXI-2797 ++ ++pci:v00001093d00007656* ++ ID_MODEL_FROM_DATABASE=PXI-2798 ++ ++pci:v00001093d00007657* ++ ID_MODEL_FROM_DATABASE=PXI-2799 ++ ++pci:v00001093d0000765D* ++ ID_MODEL_FROM_DATABASE=PXI-2542 ++ ++pci:v00001093d0000765E* ++ ID_MODEL_FROM_DATABASE=PXIe-2542 ++ ++pci:v00001093d0000765F* ++ ID_MODEL_FROM_DATABASE=PXI-2544 ++ ++pci:v00001093d00007660* ++ ID_MODEL_FROM_DATABASE=PXIe-2544 ++ ++pci:v00001093d0000766D* ++ ID_MODEL_FROM_DATABASE=PCIe-6535B ++ ++pci:v00001093d0000766E* ++ ID_MODEL_FROM_DATABASE=PCIe-6536B ++ ++pci:v00001093d0000766F* ++ ID_MODEL_FROM_DATABASE=PCIe-6537B ++ ++pci:v00001093d000076A3* ++ ID_MODEL_FROM_DATABASE=PXIe-6535B ++ ++pci:v00001093d000076A4* ++ ID_MODEL_FROM_DATABASE=PXIe-6536B ++ ++pci:v00001093d000076A5* ++ ID_MODEL_FROM_DATABASE=PXIe-6537B ++ ++pci:v00001093d00009020* ++ ID_MODEL_FROM_DATABASE=PXI-2501 ++ ++pci:v00001093d00009030* ++ ID_MODEL_FROM_DATABASE=PXI-2503 ++ ++pci:v00001093d00009040* ++ ID_MODEL_FROM_DATABASE=PXI-2527 ++ ++pci:v00001093d00009050* ++ ID_MODEL_FROM_DATABASE=PXI-2565 ++ ++pci:v00001093d00009060* ++ ID_MODEL_FROM_DATABASE=PXI-2590 ++ ++pci:v00001093d00009070* ++ ID_MODEL_FROM_DATABASE=PXI-2591 ++ ++pci:v00001093d00009080* ++ ID_MODEL_FROM_DATABASE=PXI-2580 ++ ++pci:v00001093d00009090* ++ ID_MODEL_FROM_DATABASE=PCI-4021 ++ ++pci:v00001093d000090A0* ++ ID_MODEL_FROM_DATABASE=PXI-4021 ++ + pci:v00001093d0000B001* +- ID_MODEL_FROM_DATABASE=IMAQ-PCI-1408 ++ ID_MODEL_FROM_DATABASE=PCI-1408 + + pci:v00001093d0000B011* +- ID_MODEL_FROM_DATABASE=IMAQ-PXI-1408 ++ ID_MODEL_FROM_DATABASE=PXI-1408 + + pci:v00001093d0000B021* +- ID_MODEL_FROM_DATABASE=IMAQ-PCI-1424 ++ ID_MODEL_FROM_DATABASE=PCI-1424 ++ ++pci:v00001093d0000B022* ++ ID_MODEL_FROM_DATABASE=PXI-1424 + + pci:v00001093d0000B031* +- ID_MODEL_FROM_DATABASE=IMAQ-PCI-1413 ++ ID_MODEL_FROM_DATABASE=PCI-1413 + + pci:v00001093d0000B041* +- ID_MODEL_FROM_DATABASE=IMAQ-PCI-1407 ++ ID_MODEL_FROM_DATABASE=PCI-1407 + + pci:v00001093d0000B051* +- ID_MODEL_FROM_DATABASE=IMAQ-PXI-1407 ++ ID_MODEL_FROM_DATABASE=PXI-1407 + + pci:v00001093d0000B061* +- ID_MODEL_FROM_DATABASE=IMAQ-PCI-1411 ++ ID_MODEL_FROM_DATABASE=PCI-1411 + + pci:v00001093d0000B071* +- ID_MODEL_FROM_DATABASE=IMAQ-PCI-1422 ++ ID_MODEL_FROM_DATABASE=PCI-1422 + + pci:v00001093d0000B081* +- ID_MODEL_FROM_DATABASE=IMAQ-PXI-1422 ++ ID_MODEL_FROM_DATABASE=PXI-1422 + + pci:v00001093d0000B091* +- ID_MODEL_FROM_DATABASE=IMAQ-PXI-1411 ++ ID_MODEL_FROM_DATABASE=PXI-1411 ++ ++pci:v00001093d0000B0B1* ++ ID_MODEL_FROM_DATABASE=PCI-1409 ++ ++pci:v00001093d0000B0C1* ++ ID_MODEL_FROM_DATABASE=PXI-1409 ++ ++pci:v00001093d0000B0E1* ++ ID_MODEL_FROM_DATABASE=PCI-1428 + + pci:v00001093d0000C4C4* + ID_MODEL_FROM_DATABASE=PXIe/PCIe Device + ++pci:v00001093d0000C4C4sv00001093sd0000728A* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5421) ++ ++pci:v00001093d0000C4C4sv00001093sd0000728B* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5442) ++ ++pci:v00001093d0000C4C4sv00001093sd0000728D* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5451) ++ ++pci:v00001093d0000C4C4sv00001093sd000072A2* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5122) ++ ++pci:v00001093d0000C4C4sv00001093sd000072DA* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5422) ++ ++pci:v00001093d0000C4C4sv00001093sd000072F7* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6535) ++ ++pci:v00001093d0000C4C4sv00001093sd000072F8* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6536) ++ ++pci:v00001093d0000C4C4sv00001093sd000072F9* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6537) ++ ++pci:v00001093d0000C4C4sv00001093sd00007326* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-6509) ++ ++pci:v00001093d0000C4C4sv00001093sd0000736C* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4140) ++ ++pci:v00001093d0000C4C4sv00001093sd0000738B* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5622) ++ ++pci:v00001093d0000C4C4sv00001093sd000073C4* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5450) ++ ++pci:v00001093d0000C4C4sv00001093sd000073C7* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6545) ++ ++pci:v00001093d0000C4C4sv00001093sd000073D4* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6544) ++ ++pci:v00001093d0000C4C4sv00001093sd00007425* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-6320) ++ ++pci:v00001093d0000C4C4sv00001093sd00007427* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-6321) ++ ++pci:v00001093d0000C4C4sv00001093sd00007428* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6323) ++ ++pci:v00001093d0000C4C4sv00001093sd00007429* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-6323) ++ ++pci:v00001093d0000C4C4sv00001093sd0000742A* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6341) ++ ++pci:v00001093d0000C4C4sv00001093sd0000742B* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-6341) ++ ++pci:v00001093d0000C4C4sv00001093sd0000742C* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6343) ++ ++pci:v00001093d0000C4C4sv00001093sd0000742D* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-6343) ++ ++pci:v00001093d0000C4C4sv00001093sd0000742F* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-6351) ++ ++pci:v00001093d0000C4C4sv00001093sd00007431* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-6353) ++ ++pci:v00001093d0000C4C4sv00001093sd00007432* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6361) ++ ++pci:v00001093d0000C4C4sv00001093sd00007433* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-6361) ++ ++pci:v00001093d0000C4C4sv00001093sd00007434* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6363) ++ ++pci:v00001093d0000C4C4sv00001093sd00007435* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-6363) ++ ++pci:v00001093d0000C4C4sv00001093sd00007436* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6356) ++ ++pci:v00001093d0000C4C4sv00001093sd00007437* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6358) ++ ++pci:v00001093d0000C4C4sv00001093sd00007438* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6366) ++ ++pci:v00001093d0000C4C4sv00001093sd00007439* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6368) ++ ++pci:v00001093d0000C4C4sv00001093sd00007468* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5185) ++ ++pci:v00001093d0000C4C4sv00001093sd00007469* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5186) ++ ++pci:v00001093d0000C4C4sv00001093sd00007492* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4300) ++ ++pci:v00001093d0000C4C4sv00001093sd00007498* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6548) ++ ++pci:v00001093d0000C4C4sv00001093sd00007499* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6547) ++ ++pci:v00001093d0000C4C4sv00001093sd000074A8* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4330) ++ ++pci:v00001093d0000C4C4sv00001093sd000074A9* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4331) ++ ++pci:v00001093d0000C4C4sv00001093sd000074B1* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4154) ++ + pci:v00001093d0000C4C4sv00001093sd000074B2* + ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4353) + ++pci:v00001093d0000C4C4sv00001093sd000074B6* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-1433) ++ ++pci:v00001093d0000C4C4sv00001093sd000074CD* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5643R) ++ + pci:v00001093d0000C4C4sv00001093sd000074D0* + ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-7961R) + ++pci:v00001093d0000C4C4sv00001093sd000074DD* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6376) ++ ++pci:v00001093d0000C4C4sv00001093sd000074DE* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6378) ++ + pci:v00001093d0000C4C4sv00001093sd000074E2* + ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-7962R) + + pci:v00001093d0000C4C4sv00001093sd000074E3* + ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-7965R) + ++pci:v00001093d0000C4C4sv00001093sd000074E5* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4844) ++ ++pci:v00001093d0000C4C4sv00001093sd000074F3* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-5140) ++ ++pci:v00001093d0000C4C4sv00001093sd0000753C* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-1435) ++ ++pci:v00001093d0000C4C4sv00001093sd00007548* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5622 (25MHz DDC)) ++ ++pci:v00001093d0000C4C4sv00001093sd0000754D* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-5155) ++ ++pci:v00001093d0000C4C4sv00001093sd00007551* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6556) ++ + pci:v00001093d0000C4C4sv00001093sd00007553* + ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-1473R) + ++pci:v00001093d0000C4C4sv00001093sd00007570* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-1474R) ++ ++pci:v00001093d0000C4C4sv00001093sd00007571* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-1475R) ++ ++pci:v00001093d0000C4C4sv00001093sd00007572* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-1476R) ++ ++pci:v00001093d0000C4C4sv00001093sd000075A2* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5693) ++ ++pci:v00001093d0000C4C4sv00001093sd000075A3* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5694) ++ ++pci:v00001093d0000C4C4sv00001093sd000075A5* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4141) ++ + pci:v00001093d0000C4C4sv00001093sd000075CE* + ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-7966R) + ++pci:v00001093d0000C4C4sv00001093sd000075CF* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4357) ++ ++pci:v00001093d0000C4C4sv00001093sd000075D2* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-RevB-5643R) ++ ++pci:v00001093d0000C4C4sv00001093sd000075D3* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5644R) ++ ++pci:v00001093d0000C4C4sv00001093sd000075EE* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5645R) ++ ++pci:v00001093d0000C4C4sv00001093sd00007613* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6555) ++ ++pci:v00001093d0000C4C4sv00001093sd00007619* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5185) ++ ++pci:v00001093d0000C4C4sv00001093sd0000761A* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5186) ++ ++pci:v00001093d0000C4C4sv00001093sd00007629* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4142) ++ ++pci:v00001093d0000C4C4sv00001093sd0000762A* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4143) ++ ++pci:v00001093d0000C4C4sv00001093sd0000762B* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4138) ++ ++pci:v00001093d0000C4C4sv00001093sd0000762C* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4144) ++ ++pci:v00001093d0000C4C4sv00001093sd0000762D* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4145) ++ ++pci:v00001093d0000C4C4sv00001093sd00007644* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4841) ++ ++pci:v00001093d0000C4C4sv00001093sd00007658* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5162 (4CH)) ++ ++pci:v00001093d0000C4C4sv00001093sd000076AB* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4322) ++ ++pci:v00001093d0000C4C4sv00001093sd000076AD* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4112) ++ ++pci:v00001093d0000C4C4sv00001093sd000076AE* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4113) ++ ++pci:v00001093d0000C4C4sv00001093sd000076B5* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-7971R) ++ ++pci:v00001093d0000C4C4sv00001093sd000076B6* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-7972R) ++ + pci:v00001093d0000C4C4sv00001093sd000076B7* + ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-7975R) + ++pci:v00001093d0000C4C4sv00001093sd000076C8* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6614) ++ ++pci:v00001093d0000C4C4sv00001093sd000076C9* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6612) ++ ++pci:v00001093d0000C4C4sv00001093sd000076CB* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5646R) ++ ++pci:v00001093d0000C4C4sv00001093sd000076CC* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5162 (2CH)) ++ + pci:v00001093d0000C4C4sv00001093sd000076D0* +- ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5160) ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5160 (2CH)) ++ ++pci:v00001093d0000C4C4sv00001093sd000076D1* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5160 (4CH)) ++ ++pci:v00001093d0000C4C4sv00001093sd000076DC* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4610) ++ ++pci:v00001093d0000C4C4sv00001093sd000076FB* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-1473R-LX110) ++ ++pci:v00001093d0000C4C4sv00001093sd000076FE* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5644R) ++ ++pci:v00001093d0000C4C4sv00001093sd000076FF* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5644R) ++ ++pci:v00001093d0000C4C4sv00001093sd00007700* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5644R) ++ ++pci:v00001093d0000C4C4sv00001093sd00007701* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5645R) ++ ++pci:v00001093d0000C4C4sv00001093sd00007702* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5645R) ++ ++pci:v00001093d0000C4C4sv00001093sd00007703* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5645R) ++ ++pci:v00001093d0000C4C4sv00001093sd0000770C* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4139) ++ ++pci:v00001093d0000C4C4sv00001093sd00007711* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4464) ++ ++pci:v00001093d0000C4C4sv00001093sd00007716* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PCIe-6612) ++ ++pci:v00001093d0000C4C4sv00001093sd0000771E* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-4339) ++ ++pci:v00001093d0000C4C4sv00001093sd00007735* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (cRIO-9033) ++ ++pci:v00001093d0000C4C4sv00001093sd0000774B* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (cRIO-9031) ++ ++pci:v00001093d0000C4C4sv00001093sd0000774D* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (cRIO-9034) ++ ++pci:v00001093d0000C4C4sv00001093sd00007755* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (cRIO-9030) ++ ++pci:v00001093d0000C4C4sv00001093sd00007777* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-7976R) ++ ++pci:v00001093d0000C4C4sv00001093sd00007782* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5646R) ++ ++pci:v00001093d0000C4C4sv00001093sd00007783* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5646R) ++ ++pci:v00001093d0000C4C4sv00001093sd00007784* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-5646R) ++ ++pci:v00001093d0000C4C4sv00001093sd000077A5* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6345) ++ ++pci:v00001093d0000C4C4sv00001093sd000077A6* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6355) ++ ++pci:v00001093d0000C4C4sv00001093sd000077A7* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6365) ++ ++pci:v00001093d0000C4C4sv00001093sd000077A8* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-6375) ++ ++pci:v00001093d0000C4C4sv00001093sd000077B4* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-7820R) ++ ++pci:v00001093d0000C4C4sv00001093sd000077B5* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-7821R) ++ ++pci:v00001093d0000C4C4sv00001093sd000077B6* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (PXIe-7822R) ++ ++pci:v00001093d0000C4C4sv00001093sd000077B9* ++ ID_MODEL_FROM_DATABASE=PXIe/PCIe Device (cRIO-9038) + + pci:v00001093d0000C801* + ID_MODEL_FROM_DATABASE=PCI-GPIB + ++pci:v00001093d0000C811* ++ ID_MODEL_FROM_DATABASE=PCI-GPIB+ ++ ++pci:v00001093d0000C821* ++ ID_MODEL_FROM_DATABASE=PXI-GPIB ++ + pci:v00001093d0000C831* +- ID_MODEL_FROM_DATABASE=PCI-GPIB bridge ++ ID_MODEL_FROM_DATABASE=PMC-GPIB ++ ++pci:v00001093d0000C840* ++ ID_MODEL_FROM_DATABASE=PCI-GPIB ++ ++pci:v00001093d0000D130* ++ ID_MODEL_FROM_DATABASE=PCI-232/2 Interface ++ ++pci:v00001093d0000D140* ++ ID_MODEL_FROM_DATABASE=PCI-232/4 Interface ++ ++pci:v00001093d0000D150* ++ ID_MODEL_FROM_DATABASE=PCI-232/8 Interface ++ ++pci:v00001093d0000D160* ++ ID_MODEL_FROM_DATABASE=PCI-485/2 Interface ++ ++pci:v00001093d0000D170* ++ ID_MODEL_FROM_DATABASE=PCI-485/4 Interface ++ ++pci:v00001093d0000D190* ++ ID_MODEL_FROM_DATABASE=PXI-8422/2 (Isolated RS-232) Interface ++ ++pci:v00001093d0000D1A0* ++ ID_MODEL_FROM_DATABASE=PXI-8422/4 (Isolated RS-232) Interface ++ ++pci:v00001093d0000D1B0* ++ ID_MODEL_FROM_DATABASE=PXI-8423/2 (Isolated RS-485) Interface ++ ++pci:v00001093d0000D1C0* ++ ID_MODEL_FROM_DATABASE=PXI-8423/4 (Isolated RS-485) Interface ++ ++pci:v00001093d0000D1D0* ++ ID_MODEL_FROM_DATABASE=PXI-8420/2 (RS-232) Interface ++ ++pci:v00001093d0000D1E0* ++ ID_MODEL_FROM_DATABASE=PXI-8420/4 (RS-232) Interface ++ ++pci:v00001093d0000D1F0* ++ ID_MODEL_FROM_DATABASE=PXI-8420/8 (RS-232) Interface ++ ++pci:v00001093d0000D1F1* ++ ID_MODEL_FROM_DATABASE=PXI-8420/16 (RS-232) Interface ++ ++pci:v00001093d0000D230* ++ ID_MODEL_FROM_DATABASE=PXI-8421/2 (RS-485) Interface ++ ++pci:v00001093d0000D240* ++ ID_MODEL_FROM_DATABASE=PXI-8421/4 (RS-485) Interface ++ ++pci:v00001093d0000D250* ++ ID_MODEL_FROM_DATABASE=PCI-232/2 (Isolated) Interface ++ ++pci:v00001093d0000D260* ++ ID_MODEL_FROM_DATABASE=PCI-485/2 (Isolated) Interface ++ ++pci:v00001093d0000D270* ++ ID_MODEL_FROM_DATABASE=PCI-232/4 (Isolated) Interface ++ ++pci:v00001093d0000D280* ++ ID_MODEL_FROM_DATABASE=PCI-485/4 (Isolated) Interface ++ ++pci:v00001093d0000D290* ++ ID_MODEL_FROM_DATABASE=PCI-485/8 Interface ++ ++pci:v00001093d0000D2A0* ++ ID_MODEL_FROM_DATABASE=PXI-8421/8 (RS-485) Interface ++ ++pci:v00001093d0000D2B0* ++ ID_MODEL_FROM_DATABASE=PCI-232/16 Interface ++ ++pci:v00001093d0000E111* ++ ID_MODEL_FROM_DATABASE=PCI-CAN ++ ++pci:v00001093d0000E131* ++ ID_MODEL_FROM_DATABASE=PXI-8461 (1 port) ++ ++pci:v00001093d0000E141* ++ ID_MODEL_FROM_DATABASE=PCI-CAN/LS ++ ++pci:v00001093d0000E151* ++ ID_MODEL_FROM_DATABASE=PXI-8460 (1 port) ++ ++pci:v00001093d0000E211* ++ ID_MODEL_FROM_DATABASE=PCI-CAN/2 ++ ++pci:v00001093d0000E231* ++ ID_MODEL_FROM_DATABASE=PXI-8461 (2 ports) ++ ++pci:v00001093d0000E241* ++ ID_MODEL_FROM_DATABASE=PCI-CAN/LS2 ++ ++pci:v00001093d0000E251* ++ ID_MODEL_FROM_DATABASE=PXI-8460 (2 ports) ++ ++pci:v00001093d0000E261* ++ ID_MODEL_FROM_DATABASE=PCI-CAN/DS ++ ++pci:v00001093d0000E271* ++ ID_MODEL_FROM_DATABASE=PXI-8462 + + pci:v00001094* + ID_VENDOR_FROM_DATABASE=First International Computers [FIC] +@@ -23331,16 +25011,16 @@ pci:v000010DEd00000367* + ID_MODEL_FROM_DATABASE=MCP55 LPC Bridge + + pci:v000010DEd00000368* +- ID_MODEL_FROM_DATABASE=MCP55 SMBus ++ ID_MODEL_FROM_DATABASE=MCP55 SMBus Controller + + pci:v000010DEd00000368sv00001028sd0000020C* +- ID_MODEL_FROM_DATABASE=MCP55 SMBus (PowerEdge M605 MCP55 SMBus) ++ ID_MODEL_FROM_DATABASE=MCP55 SMBus Controller (PowerEdge M605 MCP55 SMBus) + + pci:v000010DEd00000368sv00001028sd00000221* +- ID_MODEL_FROM_DATABASE=MCP55 SMBus (PowerEdge R805 MCP55 SMBus) ++ ID_MODEL_FROM_DATABASE=MCP55 SMBus Controller (PowerEdge R805 MCP55 SMBus) + + pci:v000010DEd00000368sv0000147Bsd00001C24* +- ID_MODEL_FROM_DATABASE=MCP55 SMBus (KN9 series mainboard) ++ ID_MODEL_FROM_DATABASE=MCP55 SMBus Controller (KN9 series mainboard) + + pci:v000010DEd00000369* + ID_MODEL_FROM_DATABASE=MCP55 Memory Controller +@@ -24530,6 +26210,9 @@ pci:v000010DEd00000641* + pci:v000010DEd00000641sv00001682sd00004009* + ID_MODEL_FROM_DATABASE=G96 [GeForce 9400 GT] (PV-T94G-ZAFG) + ++pci:v000010DEd00000642* ++ ID_MODEL_FROM_DATABASE=G96 [D9M-10] ++ + pci:v000010DEd00000643* + ID_MODEL_FROM_DATABASE=G96 [GeForce 9500 GT] + +@@ -26522,6 +28205,9 @@ pci:v000010DEd0000100A* + pci:v000010DEd0000100C* + ID_MODEL_FROM_DATABASE=GK110B [GeForce GTX Titan Black] + ++pci:v000010DEd0000101E* ++ ID_MODEL_FROM_DATABASE=GK110GL [Tesla K20X] ++ + pci:v000010DEd0000101F* + ID_MODEL_FROM_DATABASE=GK110GL [Tesla K20] + +@@ -26552,6 +28238,15 @@ pci:v000010DEd00001028* + pci:v000010DEd00001029* + ID_MODEL_FROM_DATABASE=GK110BGL [Tesla K40s] + ++pci:v000010DEd0000102A* ++ ID_MODEL_FROM_DATABASE=GK110BGL [Tesla K40t] ++ ++pci:v000010DEd0000102D* ++ ID_MODEL_FROM_DATABASE=GK110BGL [Tesla K80] ++ ++pci:v000010DEd0000102E* ++ ID_MODEL_FROM_DATABASE=GK110BGL [Tesla K40d] ++ + pci:v000010DEd0000103A* + ID_MODEL_FROM_DATABASE=GK110GL [Quadro K6000] + +@@ -26582,6 +28277,9 @@ pci:v000010DEd0000104B* + pci:v000010DEd0000104C* + ID_MODEL_FROM_DATABASE=GF119 [GeForce GT 705] + ++pci:v000010DEd0000104D* ++ ID_MODEL_FROM_DATABASE=GF119 [GeForce GT 710] ++ + pci:v000010DEd00001050* + ID_MODEL_FROM_DATABASE=GF119M [GeForce GT 520M] + +@@ -27551,9 +29249,15 @@ pci:v000010DEd0000118E* + pci:v000010DEd0000118F* + ID_MODEL_FROM_DATABASE=GK104GL [Tesla K10] + ++pci:v000010DEd00001191* ++ ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 760 Rev. 2] ++ + pci:v000010DEd00001193* + ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 760 Ti OEM] + ++pci:v000010DEd00001194* ++ ID_MODEL_FROM_DATABASE=GK104GL [Tesla K8] ++ + pci:v000010DEd00001195* + ID_MODEL_FROM_DATABASE=GK104 [GeForce GTX 660 Rev. 2] + +@@ -27944,6 +29648,9 @@ pci:v000010DEd00001381* + pci:v000010DEd00001382* + ID_MODEL_FROM_DATABASE=GM107 [GeForce GTX 745] + ++pci:v000010DEd00001389* ++ ID_MODEL_FROM_DATABASE=GM107GL [GRID M3] ++ + pci:v000010DEd00001390* + ID_MODEL_FROM_DATABASE=GM107M [GeForce 845M] + +@@ -27971,6 +29678,9 @@ pci:v000010DEd000013BA* + pci:v000010DEd000013BB* + ID_MODEL_FROM_DATABASE=GM107GL [Quadro K620] + ++pci:v000010DEd000013BD* ++ ID_MODEL_FROM_DATABASE=GM107GL [Tesla M40] ++ + pci:v000010DF* + ID_VENDOR_FROM_DATABASE=Emulex Corporation + +@@ -31772,6 +33482,30 @@ pci:v0000111Dd0000806E* + pci:v0000111Dd0000806F* + ID_MODEL_FROM_DATABASE=HIO524G2 PCI Express Gen2 Switch + ++pci:v0000111Dd00008088* ++ ID_MODEL_FROM_DATABASE=PES32NT8BG2 PCI Express Switch ++ ++pci:v0000111Dd00008088sv00001093sd0000752F* ++ ID_MODEL_FROM_DATABASE=PES32NT8BG2 PCI Express Switch (PXIe-8383mc Device) ++ ++pci:v0000111Dd00008088sv00001093sd00007543* ++ ID_MODEL_FROM_DATABASE=PES32NT8BG2 PCI Express Switch (PXIe-8383mc System Host) ++ ++pci:v0000111Dd00008088sv00001093sd0000755C* ++ ID_MODEL_FROM_DATABASE=PES32NT8BG2 PCI Express Switch (PXIe-8364) ++ ++pci:v0000111Dd00008088sv00001093sd0000755D* ++ ID_MODEL_FROM_DATABASE=PES32NT8BG2 PCI Express Switch (PXIe-8374) ++ ++pci:v0000111Dd00008088sv00001093sd000075FF* ++ ID_MODEL_FROM_DATABASE=PES32NT8BG2 PCI Express Switch (PXIe-8383mc DMA) ++ ++pci:v0000111Dd00008088sv00001093sd00007600* ++ ID_MODEL_FROM_DATABASE=PES32NT8BG2 PCI Express Switch (PXIe-8383mc DMA) ++ ++pci:v0000111Dd00008088sv00001093sd00007602* ++ ID_MODEL_FROM_DATABASE=PES32NT8BG2 PCI Express Switch (PXIe-8384) ++ + pci:v0000111E* + ID_VENDOR_FROM_DATABASE=Eldec + +@@ -42929,6 +44663,9 @@ pci:v00001425d00005084* + pci:v00001425d00005085* + ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Ethernet Controller + ++pci:v00001425d00005086* ++ ID_MODEL_FROM_DATABASE=T580-5086 Unified Wire Ethernet Controller ++ + pci:v00001425d00005401* + ID_MODEL_FROM_DATABASE=T520-CR Unified Wire Ethernet Controller + +@@ -43007,6 +44744,9 @@ pci:v00001425d00005484* + pci:v00001425d00005485* + ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Ethernet Controller + ++pci:v00001425d00005486* ++ ID_MODEL_FROM_DATABASE=T580-5086 Unified Wire Ethernet Controller ++ + pci:v00001425d00005501* + ID_MODEL_FROM_DATABASE=T520-CR Unified Wire Storage Controller + +@@ -43085,6 +44825,9 @@ pci:v00001425d00005584* + pci:v00001425d00005585* + ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Storage Controller + ++pci:v00001425d00005586* ++ ID_MODEL_FROM_DATABASE=T580-5086 Unified Wire Storage Controller ++ + pci:v00001425d00005601* + ID_MODEL_FROM_DATABASE=T520-CR Unified Wire Storage Controller + +@@ -43163,6 +44906,9 @@ pci:v00001425d00005684* + pci:v00001425d00005685* + ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Storage Controller + ++pci:v00001425d00005686* ++ ID_MODEL_FROM_DATABASE=T580-5086 Unified Wire Storage Controller ++ + pci:v00001425d00005701* + ID_MODEL_FROM_DATABASE=T520-CR Unified Wire Ethernet Controller + +@@ -43319,6 +45065,9 @@ pci:v00001425d00005884* + pci:v00001425d00005885* + ID_MODEL_FROM_DATABASE=T580-5085 Unified Wire Ethernet Controller [VF] + ++pci:v00001425d00005886* ++ ID_MODEL_FROM_DATABASE=T580-5086 Unified Wire Ethernet Controller [VF] ++ + pci:v00001425d0000A000* + ID_MODEL_FROM_DATABASE=PE10K Unified Wire Ethernet Controller + +@@ -49862,6 +51611,15 @@ pci:v000016ED* + pci:v000016EDd00001001* + ID_MODEL_FROM_DATABASE=UMIO communication card + ++pci:v000016F2* ++ ID_VENDOR_FROM_DATABASE=ETAS GmbH ++ ++pci:v000016F2d00000200* ++ ID_MODEL_FROM_DATABASE=I/O board ++ ++pci:v000016F2d00000200sv000016F2sd00000010* ++ ID_MODEL_FROM_DATABASE=I/O board (ES53xx I/O board) ++ + pci:v000016F3* + ID_VENDOR_FROM_DATABASE=Jetway Information Co., Ltd. + +@@ -50004,7 +51762,7 @@ pci:v00001775* + ID_VENDOR_FROM_DATABASE=GE Intelligent Platforms + + pci:v0000177D* +- ID_VENDOR_FROM_DATABASE=Cavium Networks ++ ID_VENDOR_FROM_DATABASE=Cavium, Inc. + + pci:v0000177Dd00000001* + ID_MODEL_FROM_DATABASE=Nitrox XL N1 +@@ -50063,6 +51821,147 @@ pci:v0000177Dd00000095* + pci:v0000177Dd00000096* + ID_MODEL_FROM_DATABASE=Octeon III CN70XX Network Processor + ++pci:v0000177Dd0000A001* ++ ID_MODEL_FROM_DATABASE=THUNDERX MRML Bridge ++ ++pci:v0000177Dd0000A002* ++ ID_MODEL_FROM_DATABASE=THUNDERX PCC Bridge ++ ++pci:v0000177Dd0000A002sv0000177Dsd0000A102* ++ ID_MODEL_FROM_DATABASE=THUNDERX PCC Bridge (CN88XX PCC Bridge) ++ ++pci:v0000177Dd0000A008* ++ ID_MODEL_FROM_DATABASE=THUNDERX SMMU ++ ++pci:v0000177Dd0000A008sv0000177Dsd0000A108* ++ ID_MODEL_FROM_DATABASE=THUNDERX SMMU (CN88XX SMMU) ++ ++pci:v0000177Dd0000A009* ++ ID_MODEL_FROM_DATABASE=THUNDERX Generic Interrupt Controller ++ ++pci:v0000177Dd0000A00A* ++ ID_MODEL_FROM_DATABASE=THUNDERX GPIO Controller ++ ++pci:v0000177Dd0000A00B* ++ ID_MODEL_FROM_DATABASE=THUNDERX MPI / SPI Controller ++ ++pci:v0000177Dd0000A00C* ++ ID_MODEL_FROM_DATABASE=THUNDERX MIO-PTP Controller ++ ++pci:v0000177Dd0000A00D* ++ ID_MODEL_FROM_DATABASE=THUNDERX MIX Network Controller ++ ++pci:v0000177Dd0000A00E* ++ ID_MODEL_FROM_DATABASE=THUNDERX Reset Controller ++ ++pci:v0000177Dd0000A00F* ++ ID_MODEL_FROM_DATABASE=THUNDERX UART Controller ++ ++pci:v0000177Dd0000A010* ++ ID_MODEL_FROM_DATABASE=THUNDERX eMMC/SD Controller ++ ++pci:v0000177Dd0000A011* ++ ID_MODEL_FROM_DATABASE=THUNDERX MIO-BOOT Controller ++ ++pci:v0000177Dd0000A012* ++ ID_MODEL_FROM_DATABASE=THUNDERX TWSI / I2C Controller ++ ++pci:v0000177Dd0000A013* ++ ID_MODEL_FROM_DATABASE=THUNDERX CCPI (Multi-node connect) ++ ++pci:v0000177Dd0000A014* ++ ID_MODEL_FROM_DATABASE=THUNDERX Voltage Regulator Module ++ ++pci:v0000177Dd0000A015* ++ ID_MODEL_FROM_DATABASE=THUNDERX PCIe Switch Logic Interface ++ ++pci:v0000177Dd0000A016* ++ ID_MODEL_FROM_DATABASE=THUNDERX Key Memory ++ ++pci:v0000177Dd0000A017* ++ ID_MODEL_FROM_DATABASE=THUNDERX GTI (Global System Timers) ++ ++pci:v0000177Dd0000A018* ++ ID_MODEL_FROM_DATABASE=THUNDERX Random Number Generator ++ ++pci:v0000177Dd0000A019* ++ ID_MODEL_FROM_DATABASE=THUNDERX DFA ++ ++pci:v0000177Dd0000A01A* ++ ID_MODEL_FROM_DATABASE=THUNDERX Zip Coprocessor ++ ++pci:v0000177Dd0000A01B* ++ ID_MODEL_FROM_DATABASE=THUNDERX xHCI USB Controller ++ ++pci:v0000177Dd0000A01C* ++ ID_MODEL_FROM_DATABASE=THUNDERX AHCI SATA Controller ++ ++pci:v0000177Dd0000A01Csv0000177Dsd0000A11C* ++ ID_MODEL_FROM_DATABASE=THUNDERX AHCI SATA Controller (CN88XX AHCI SATA Controller) ++ ++pci:v0000177Dd0000A01D* ++ ID_MODEL_FROM_DATABASE=THUNDERX RAID Coprocessor ++ ++pci:v0000177Dd0000A01E* ++ ID_MODEL_FROM_DATABASE=THUNDERX Network Interface Controller ++ ++pci:v0000177Dd0000A01F* ++ ID_MODEL_FROM_DATABASE=THUNDERX Traffic Network Switch ++ ++pci:v0000177Dd0000A020* ++ ID_MODEL_FROM_DATABASE=THUNDERX PEM (PCI Express Interface) ++ ++pci:v0000177Dd0000A021* ++ ID_MODEL_FROM_DATABASE=THUNDERX L2C (Level-2 Cache Controller) ++ ++pci:v0000177Dd0000A022* ++ ID_MODEL_FROM_DATABASE=THUNDERX LMC (DRAM Controller) ++ ++pci:v0000177Dd0000A023* ++ ID_MODEL_FROM_DATABASE=THUNDERX OCLA (On-Chip Logic Analyzer) ++ ++pci:v0000177Dd0000A024* ++ ID_MODEL_FROM_DATABASE=THUNDERX OSM ++ ++pci:v0000177Dd0000A025* ++ ID_MODEL_FROM_DATABASE=THUNDERX GSER (General Serializer/Deserializer) ++ ++pci:v0000177Dd0000A026* ++ ID_MODEL_FROM_DATABASE=THUNDERX BGX (Common Ethernet Interface) ++ ++pci:v0000177Dd0000A027* ++ ID_MODEL_FROM_DATABASE=THUNDERX IOBN ++ ++pci:v0000177Dd0000A029* ++ ID_MODEL_FROM_DATABASE=THUNDERX NCSI (Network Controller Sideband Interface) ++ ++pci:v0000177Dd0000A02A* ++ ID_MODEL_FROM_DATABASE=THUNDERX SGP ++ ++pci:v0000177Dd0000A02B* ++ ID_MODEL_FROM_DATABASE=THUNDERX SMI / MDIO Controller ++ ++pci:v0000177Dd0000A02C* ++ ID_MODEL_FROM_DATABASE=THUNDERX DAP (Debug Access Port) ++ ++pci:v0000177Dd0000A02D* ++ ID_MODEL_FROM_DATABASE=THUNDERX PCIERC (PCIe Root Complex) ++ ++pci:v0000177Dd0000A02E* ++ ID_MODEL_FROM_DATABASE=THUNDERX L2C-TAD ++ ++pci:v0000177Dd0000A02F* ++ ID_MODEL_FROM_DATABASE=THUNDERX L2C-CBC ++ ++pci:v0000177Dd0000A030* ++ ID_MODEL_FROM_DATABASE=THUNDERX L2C-MCI ++ ++pci:v0000177Dd0000A031* ++ ID_MODEL_FROM_DATABASE=THUNDERX MIO-FUS (Fuse Access Controller) ++ ++pci:v0000177Dd0000A032* ++ ID_MODEL_FROM_DATABASE=THUNDERX FUSF (Fuse Controller) ++ + pci:v00001787* + ID_VENDOR_FROM_DATABASE=Hightech Information System Ltd. + +@@ -53312,6 +55211,12 @@ pci:v00001BBFd00000003* + pci:v00001BBFd00000004* + ID_MODEL_FROM_DATABASE=MAX4 + ++pci:v00001BEE* ++ ID_VENDOR_FROM_DATABASE=IXXAT Automation GmbH ++ ++pci:v00001BEEd00000003* ++ ID_MODEL_FROM_DATABASE=CAN-IB200/PCIe ++ + pci:v00001BF4* + ID_VENDOR_FROM_DATABASE=VTI Instruments Corporation + +@@ -58271,6 +60176,9 @@ pci:v00008086d000010D3sv0000103Csd00003250* + pci:v00008086d000010D3sv00001043sd00008369* + ID_MODEL_FROM_DATABASE=82574L Gigabit Network Connection (Motherboard) + ++pci:v00008086d000010D3sv00001093sd000076E9* ++ ID_MODEL_FROM_DATABASE=82574L Gigabit Network Connection (PCIe-8233 Ethernet Adapter) ++ + pci:v00008086d000010D3sv000010A9sd00008029* + ID_MODEL_FROM_DATABASE=82574L Gigabit Network Connection (Prism XL Single Port Gigabit Ethernet) + +@@ -59339,6 +61247,18 @@ pci:v00008086d00001521sv0000108Esd00007B16* + pci:v00008086d00001521sv0000108Esd00007B18* + ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (Quad Port GbE PCIe 2.0 Low Profile Adapter, UTP) + ++pci:v00008086d00001521sv00001093sd00007648* ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (PCIe-8237R Ethernet Adapter) ++ ++pci:v00008086d00001521sv00001093sd00007649* ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (PCIe-8236 Ethernet Adapter) ++ ++pci:v00008086d00001521sv00001093sd000076B1* ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (PCIe-8237R-S Ethernet Adapter) ++ ++pci:v00008086d00001521sv00001093sd0000775B* ++ ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (PCIe-8237 Ethernet Adapter) ++ + pci:v00008086d00001521sv000010A9sd0000802A* + ID_MODEL_FROM_DATABASE=I350 Gigabit Network Connection (UV2-BaseIO dual-port GbE) + +@@ -59498,6 +61418,9 @@ pci:v00008086d00001533* + pci:v00008086d00001533sv0000103Csd00000003* + ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection (Ethernet I210-T1 GbE NIC) + ++pci:v00008086d00001533sv00001093sd00007706* ++ ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection (Compact Vision System Ethernet Adapter) ++ + pci:v00008086d00001533sv000010A9sd0000802C* + ID_MODEL_FROM_DATABASE=I210 Gigabit Network Connection (UV300 BaseIO single-port GbE) + +@@ -59703,10 +61626,10 @@ pci:v00008086d000015A3* + ID_MODEL_FROM_DATABASE=Ethernet Connection (3) I218-V + + pci:v00008086d000015B7* +- ID_MODEL_FROM_DATABASE=Ethernet Connection (2) I219-V ++ ID_MODEL_FROM_DATABASE=Ethernet Connection (2) I219-LM + + pci:v00008086d000015B8* +- ID_MODEL_FROM_DATABASE=Ethernet Connection (2) I219-LM ++ ID_MODEL_FROM_DATABASE=Ethernet Connection (2) I219-V + + pci:v00008086d00001600* + ID_MODEL_FROM_DATABASE=Broadwell-U Host Bridge -OPI +diff --git hwdb/20-usb-vendor-model.hwdb hwdb/20-usb-vendor-model.hwdb +index d87313c..ea1c3e3 100644 +--- hwdb/20-usb-vendor-model.hwdb ++++ hwdb/20-usb-vendor-model.hwdb +@@ -30222,7 +30222,7 @@ usb:v0930p6544* + ID_MODEL_FROM_DATABASE=Kingston DataTraveler 2.0 Stick (2GB) + + usb:v0930p6545* +- ID_MODEL_FROM_DATABASE=Kingston DataTraveler 102 Flash Drive / HEMA Flash Drive 2 GB / PNY Attache 4GB Stick ++ ID_MODEL_FROM_DATABASE=Kingston DataTraveler 102/2.0 / HEMA Flash Drive 2 GB / PNY Attache 4GB Stick + + usb:v0931* + ID_VENDOR_FROM_DATABASE=Harmonic Data Systems, Ltd +-- +1.7.9.2 + diff --git a/0009-journal-do-not-leak-mmaps-on-OOM.patch b/0009-journal-do-not-leak-mmaps-on-OOM.patch new file mode 100644 index 00000000..3d92f474 --- /dev/null +++ b/0009-journal-do-not-leak-mmaps-on-OOM.patch @@ -0,0 +1,50 @@ +From b67ddc7bbe31cde7f69f9814204d9bb1d4623c47 Mon Sep 17 00:00:00 2001 +From: Philippe De Swert +Date: Wed, 10 Sep 2014 12:20:41 +0300 +Subject: [PATCH] journal: do not leak mmaps on OOM + +After a section of memory is succesfully allocated, some of the following +actions can still fail due to lack of memory. In this case -ENOMEM is +returned without actually freeing the already mapped memory. +Found with coverity. Fixes: CID#1237762 +--- + src/journal/mmap-cache.c | 10 +++++++--- + 1 file changed, 7 insertions(+), 3 deletions(-) + +diff --git src/journal/mmap-cache.c src/journal/mmap-cache.c +index 7dbbb5e..908562d 100644 +--- src/journal/mmap-cache.c ++++ src/journal/mmap-cache.c +@@ -496,15 +496,15 @@ static int add_mmap( + + c = context_add(m, context); + if (!c) +- return -ENOMEM; ++ goto outofmem; + + f = fd_add(m, fd); + if (!f) +- return -ENOMEM; ++ goto outofmem; + + w = window_add(m); + if (!w) +- return -ENOMEM; ++ goto outofmem; + + w->keep_always = keep_always; + w->ptr = d; +@@ -522,6 +522,10 @@ static int add_mmap( + if (ret) + *ret = (uint8_t*) w->ptr + (offset - w->offset); + return 1; ++ ++outofmem: ++ munmap(d, wsize); ++ return -ENOMEM; + } + + int mmap_cache_get( +-- +1.7.9.2 + diff --git a/0009-journald-Fix-off-by-one-error-in-Missed-X-kernel-mes.patch b/0009-journald-Fix-off-by-one-error-in-Missed-X-kernel-mes.patch new file mode 100644 index 00000000..864b9982 --- /dev/null +++ b/0009-journald-Fix-off-by-one-error-in-Missed-X-kernel-mes.patch @@ -0,0 +1,29 @@ +From b9c488f60050248b35640f28e4d00958702ba1c3 Mon Sep 17 00:00:00 2001 +From: Eelco Dolstra +Date: Wed, 6 Aug 2014 13:14:51 +0200 +Subject: [PATCH] journald: Fix off-by-one error in "Missed X kernel messages" + warning + +On receiving a message, "kernel_seqnum" is set to "serial + 1". So +subtracting 1 will cause messages like "Missed 0 kernel messages", +which should be "Missed 1 kernel messages". +--- + src/journal/journald-kmsg.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/journal/journald-kmsg.c src/journal/journald-kmsg.c +index 9935986..fb8ea08 100644 +--- src/journal/journald-kmsg.c ++++ src/journal/journald-kmsg.c +@@ -152,7 +152,7 @@ static void dev_kmsg_record(Server *s, char *p, size_t l) { + /* Did we lose any? */ + if (serial > *s->kernel_seqnum) + server_driver_message(s, SD_MESSAGE_JOURNAL_MISSED, "Missed %"PRIu64" kernel messages", +- serial - *s->kernel_seqnum - 1); ++ serial - *s->kernel_seqnum); + + /* Make sure we never read this one again. Note that + * we always store the next message serial we expect +-- +1.7.9.2 + diff --git a/0009-journald-always-add-syslog-facility-for-messages-com.patch b/0009-journald-always-add-syslog-facility-for-messages-com.patch new file mode 100644 index 00000000..58a8bdd2 --- /dev/null +++ b/0009-journald-always-add-syslog-facility-for-messages-com.patch @@ -0,0 +1,40 @@ +From 36dd072cdf03dcac0fcd2d6b42f261444dc7ac88 Mon Sep 17 00:00:00 2001 +From: Michal Sekletar +Date: Fri, 25 Jul 2014 14:38:22 +0200 +Subject: [PATCH] journald: always add syslog facility for messages coming + from kmsg + +Set SYSLOG_FACILITY field for kernel log messages too. Setting only +SYSLOG_IDENTIFIER="kernel" is not sufficient and tools reading journal +maybe confused by missing SYSLOG_FACILITY field for kernel log messages. +--- + src/journal/journald-kmsg.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git src/journal/journald-kmsg.c src/journal/journald-kmsg.c +index 12992e7..bb62a76 100644 +--- src/journal/journald-kmsg.c ++++ src/journal/journald-kmsg.c +@@ -274,6 +274,9 @@ static void dev_kmsg_record(Server *s, char *p, size_t l) { + if (asprintf(&syslog_priority, "PRIORITY=%i", priority & LOG_PRIMASK) >= 0) + IOVEC_SET_STRING(iovec[n++], syslog_priority); + ++ if (asprintf(&syslog_facility, "SYSLOG_FACILITY=%i", LOG_FAC(priority)) >= 0) ++ IOVEC_SET_STRING(iovec[n++], syslog_facility); ++ + if ((priority & LOG_FACMASK) == LOG_KERN) + IOVEC_SET_STRING(iovec[n++], "SYSLOG_IDENTIFIER=kernel"); + else { +@@ -295,9 +298,6 @@ static void dev_kmsg_record(Server *s, char *p, size_t l) { + if (syslog_pid) + IOVEC_SET_STRING(iovec[n++], syslog_pid); + } +- +- if (asprintf(&syslog_facility, "SYSLOG_FACILITY=%i", LOG_FAC(priority)) >= 0) +- IOVEC_SET_STRING(iovec[n++], syslog_facility); + } + + message = cunescape_length_with_prefix(p, pl, "MESSAGE="); +-- +1.7.9.2 + diff --git a/0009-logind-fix-reference-to-systemd-user-sessions.servic.patch b/0009-logind-fix-reference-to-systemd-user-sessions.servic.patch new file mode 100644 index 00000000..5bf1987e --- /dev/null +++ b/0009-logind-fix-reference-to-systemd-user-sessions.servic.patch @@ -0,0 +1,25 @@ +From 646e392e10924454576f10b072f78d7676422816 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Thu, 6 Mar 2014 04:52:31 +0100 +Subject: [PATCH] logind: fix reference to systemd-user-sessions.service + +--- + src/login/logind-session.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/login/logind-session.c src/login/logind-session.c +index 548f049..3700522 100644 +--- src/login/logind-session.c ++++ src/login/logind-session.c +@@ -490,7 +490,7 @@ static int session_start_scope(Session *s) { + if (!scope) + return log_oom(); + +- r = manager_start_scope(s->manager, scope, s->leader, s->user->slice, description, "systemd-logind.service", "systemd-user-session.service", &error, &job); ++ r = manager_start_scope(s->manager, scope, s->leader, s->user->slice, description, "systemd-logind.service", "systemd-user-sessions.service", &error, &job); + if (r < 0) { + log_error("Failed to start session scope %s: %s %s", + scope, bus_error_message(&error, r), error.name); +-- +1.7.9.2 + diff --git a/0009-mount-don-t-send-out-PropertiesChanged-message-if-ac.patch b/0009-mount-don-t-send-out-PropertiesChanged-message-if-ac.patch new file mode 100644 index 00000000..f064927a --- /dev/null +++ b/0009-mount-don-t-send-out-PropertiesChanged-message-if-ac.patch @@ -0,0 +1,70 @@ +From ff5f34d08c191c326c41a083745522383ac86cae Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 26 Feb 2014 04:27:50 +0100 +Subject: [PATCH] mount: don't send out PropertiesChanged message if actually + nothing got changed + +--- + src/core/mount.c | 15 ++++++++++++--- + 1 file changed, 12 insertions(+), 3 deletions(-) + +diff --git src/core/mount.c src/core/mount.c +index b35e507..98812c9 100644 +--- src/core/mount.c ++++ src/core/mount.c +@@ -1390,7 +1390,7 @@ static int mount_add_one( + _cleanup_free_ char *e = NULL, *w = NULL, *o = NULL, *f = NULL; + bool load_extras = false; + MountParameters *p; +- bool delete; ++ bool delete, changed = false; + Unit *u; + int r; + +@@ -1458,6 +1458,7 @@ static int mount_add_one( + } + + unit_add_to_load_queue(u); ++ changed = true; + } else { + delete = false; + +@@ -1476,6 +1477,7 @@ static int mount_add_one( + /* Load in the extras later on, after we + * finished initialization of the unit */ + load_extras = true; ++ changed = true; + } + } + +@@ -1488,10 +1490,16 @@ static int mount_add_one( + } + + p = &MOUNT(u)->parameters_proc_self_mountinfo; ++ ++ changed = changed || ++ !streq_ptr(p->options, options) || ++ !streq_ptr(p->what, what) || ++ !streq_ptr(p->fstype, fstype); ++ + if (set_flags) { + MOUNT(u)->is_mounted = true; + MOUNT(u)->just_mounted = !MOUNT(u)->from_proc_self_mountinfo; +- MOUNT(u)->just_changed = !streq_ptr(p->options, o); ++ MOUNT(u)->just_changed = changed; + } + + MOUNT(u)->from_proc_self_mountinfo = true; +@@ -1514,7 +1522,8 @@ static int mount_add_one( + goto fail; + } + +- unit_add_to_dbus_queue(u); ++ if (changed) ++ unit_add_to_dbus_queue(u); + + return 0; + +-- +1.7.9.2 + diff --git a/0009-nspawn-properly-format-container_uuid-in-UUID-format.patch b/0009-nspawn-properly-format-container_uuid-in-UUID-format.patch new file mode 100644 index 00000000..a88af680 --- /dev/null +++ b/0009-nspawn-properly-format-container_uuid-in-UUID-format.patch @@ -0,0 +1,56 @@ +From 9f24adc288de142d6606fde3c5a5971613f3b6b9 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 16 May 2014 19:37:19 +0200 +Subject: [PATCH] nspawn: properly format container_uuid in UUID format + +http://lists.freedesktop.org/archives/systemd-devel/2014-April/018971.html +--- + src/nspawn/nspawn.c | 18 +++++++++++++----- + 1 file changed, 13 insertions(+), 5 deletions(-) + +diff --git src/nspawn/nspawn.c src/nspawn/nspawn.c +index 0bd52da..6be4dca 100644 +--- src/nspawn/nspawn.c ++++ src/nspawn/nspawn.c +@@ -769,6 +769,15 @@ static int setup_resolv_conf(const char *dest) { + return 0; + } + ++static char* id128_format_as_uuid(sd_id128_t id, char s[37]) { ++ ++ snprintf(s, 37, ++ "%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-%02x%02x%02x%02x%02x%02x", ++ SD_ID128_FORMAT_VAL(id)); ++ ++ return s; ++} ++ + static int setup_boot_id(const char *dest) { + _cleanup_free_ char *from = NULL, *to = NULL; + sd_id128_t rnd = {}; +@@ -794,10 +803,7 @@ static int setup_boot_id(const char *dest) { + return r; + } + +- snprintf(as_uuid, sizeof(as_uuid), +- "%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-%02x%02x%02x%02x%02x%02x", +- SD_ID128_FORMAT_VAL(rnd)); +- char_array_0(as_uuid); ++ id128_format_as_uuid(rnd, as_uuid); + + r = write_string_file(from, as_uuid); + if (r < 0) { +@@ -2954,7 +2960,9 @@ int main(int argc, char *argv[]) { + } + + if (!sd_id128_equal(arg_uuid, SD_ID128_NULL)) { +- if (asprintf((char**)(envp + n_env++), "container_uuid=" SD_ID128_FORMAT_STR, SD_ID128_FORMAT_VAL(arg_uuid)) < 0) { ++ char as_uuid[37]; ++ ++ if (asprintf((char**)(envp + n_env++), "container_uuid=%s", id128_format_as_uuid(arg_uuid, as_uuid)) < 0) { + log_oom(); + goto child_fail; + } +-- +1.7.9.2 + diff --git a/0009-sd-bus-don-t-choke-if-somebody-sends-us-a-message-wi.patch b/0009-sd-bus-don-t-choke-if-somebody-sends-us-a-message-wi.patch new file mode 100644 index 00000000..f9e93696 --- /dev/null +++ b/0009-sd-bus-don-t-choke-if-somebody-sends-us-a-message-wi.patch @@ -0,0 +1,47 @@ +From 5a4d665ad679a8436f1210ba67d713a8f0b91b96 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Fri, 14 Mar 2014 21:15:32 +0100 +Subject: [PATCH] sd-bus: don't choke if somebody sends us a message with a + unix fd count of 0 + +It's kinda pointless to include a unix fd header field in messages if it +carries the value 0, but let's do this anyway... +--- + src/libsystemd/sd-bus/bus-message.c | 7 +++---- + 1 file changed, 3 insertions(+), 4 deletions(-) + +diff --git src/libsystemd/sd-bus/bus-message.c src/libsystemd/sd-bus/bus-message.c +index 97ab0e3..b9d7f6d 100644 +--- src/libsystemd/sd-bus/bus-message.c ++++ src/libsystemd/sd-bus/bus-message.c +@@ -4885,6 +4885,7 @@ int bus_message_parse_fields(sd_bus_message *m) { + size_t ri; + int r; + uint32_t unix_fds = 0; ++ bool unix_fds_set = false; + void *offsets = NULL; + unsigned n_offsets = 0; + size_t sz = 0; +@@ -5097,7 +5098,7 @@ int bus_message_parse_fields(sd_bus_message *m) { + } + + case BUS_MESSAGE_HEADER_UNIX_FDS: +- if (unix_fds != 0) ++ if (unix_fds_set) + return -EBADMSG; + + if (!streq(signature, "u")) +@@ -5107,9 +5108,7 @@ int bus_message_parse_fields(sd_bus_message *m) { + if (r < 0) + return -EBADMSG; + +- if (unix_fds == 0) +- return -EBADMSG; +- ++ unix_fds_set = true; + break; + + default: +-- +1.7.9.2 + diff --git a/0009-units-make-systemd-journald.service-Type-notify.patch b/0009-units-make-systemd-journald.service-Type-notify.patch new file mode 100644 index 00000000..4890daf5 --- /dev/null +++ b/0009-units-make-systemd-journald.service-Type-notify.patch @@ -0,0 +1,27 @@ +Based on a87a38c20196a4aeb56b6ba71d688eefd0b21c30 Mon Sep 17 00:00:00 2001 +From: Michal Schmidt +Date: Tue, 4 Nov 2014 20:28:08 +0100 +Subject: [PATCH] units: make systemd-journald.service Type=notify + +It already calls sd_notify(), so it looks like an oversight. + +Without it, its ordering to systemd-journal-flush.service is +non-deterministic and the SIGUSR1 from flushing may kill journald before +it has its signal handlers set up. + +https://bugs.freedesktop.org/show_bug.cgi?id=85871 +https://bugzilla.redhat.com/show_bug.cgi?id=1159641 +--- + units/systemd-journald.service.in | 1 + + 1 file changed, 1 insertion(+) + +--- units/systemd-journald.service.in ++++ units/systemd-journald.service.in 2014-11-10 12:22:08.461949786 +0000 +@@ -14,6 +14,7 @@ After=systemd-journald.socket syslog.soc + Before=sysinit.target + + [Service] ++Type=notify + ExecStart=@rootlibexecdir@/systemd-journald + Restart=always + RestartSec=0 diff --git a/0009-util-fix-copy-paste-error-and-actually-set-the-new-h.patch b/0009-util-fix-copy-paste-error-and-actually-set-the-new-h.patch new file mode 100644 index 00000000..0e7fdba3 --- /dev/null +++ b/0009-util-fix-copy-paste-error-and-actually-set-the-new-h.patch @@ -0,0 +1,26 @@ +From a9169c1c589bf7c7a29e7905d17e350ce7c7c48e Mon Sep 17 00:00:00 2001 +From: Michal Sekletar +Date: Mon, 27 Oct 2014 11:08:26 +0100 +Subject: [PATCH] util: fix copy-paste error and actually set the new hostname + +Reported-by: sztanpet on irc +--- + src/shared/util.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/shared/util.c src/shared/util.c +index 7d94a28..4143f6d 100644 +--- src/shared/util.c ++++ src/shared/util.c +@@ -7189,7 +7189,7 @@ int sethostname_idempotent(const char *s) { + if (streq(buf, s)) + return 0; + +- r = sethostname(buf, strlen(buf)); ++ r = sethostname(s, strlen(s)); + if (r < 0) + return -errno; + +-- +1.7.9.2 + diff --git a/0010-hwdb-Update-database-of-Bluetooth-company-identifier.patch b/0010-hwdb-Update-database-of-Bluetooth-company-identifier.patch new file mode 100644 index 00000000..dbf00485 --- /dev/null +++ b/0010-hwdb-Update-database-of-Bluetooth-company-identifier.patch @@ -0,0 +1,77 @@ +From 5d20fde4a5c4dff4d7c737b545fbd13582d544c1 Mon Sep 17 00:00:00 2001 +From: Marcel Holtmann +Date: Fri, 31 Oct 2014 20:37:59 +0100 +Subject: [PATCH] hwdb: Update database of Bluetooth company identifiers + +--- + hwdb/20-bluetooth-vendor-product.hwdb | 57 +++++++++++++++++++++++++++++++++ + 1 file changed, 57 insertions(+) + +diff --git hwdb/20-bluetooth-vendor-product.hwdb hwdb/20-bluetooth-vendor-product.hwdb +index ee2efdf..58ca87d 100644 +--- hwdb/20-bluetooth-vendor-product.hwdb ++++ hwdb/20-bluetooth-vendor-product.hwdb +@@ -1166,3 +1166,60 @@ bluetooth:v0181* + + bluetooth:v0182* + ID_VENDOR_FROM_DATABASE=HOP Ubiquitous ++ ++bluetooth:v0183* ++ ID_VENDOR_FROM_DATABASE=To Be Assigned ++ ++bluetooth:v0184* ++ ID_VENDOR_FROM_DATABASE=Nectar ++ ++bluetooth:v0185* ++ ID_VENDOR_FROM_DATABASE=bel'apps LLC ++ ++bluetooth:v0186* ++ ID_VENDOR_FROM_DATABASE=CORE Lighting Ltd ++ ++bluetooth:v0187* ++ ID_VENDOR_FROM_DATABASE=Seraphim Sense Ltd ++ ++bluetooth:v0188* ++ ID_VENDOR_FROM_DATABASE=Unico RBC ++ ++bluetooth:v0189* ++ ID_VENDOR_FROM_DATABASE=Physical Enterprises Inc. ++ ++bluetooth:v018A* ++ ID_VENDOR_FROM_DATABASE=Able Trend Technology Limited ++ ++bluetooth:v018B* ++ ID_VENDOR_FROM_DATABASE=Konica Minolta, Inc. ++ ++bluetooth:v018C* ++ ID_VENDOR_FROM_DATABASE=Wilo SE ++ ++bluetooth:v018D* ++ ID_VENDOR_FROM_DATABASE=Extron Design Services ++ ++bluetooth:v018E* ++ ID_VENDOR_FROM_DATABASE=Fitbit, Inc. ++ ++bluetooth:v018F* ++ ID_VENDOR_FROM_DATABASE=Fireflies Systems ++ ++bluetooth:v0190* ++ ID_VENDOR_FROM_DATABASE=Intelletto Technologies Inc. ++ ++bluetooth:v0191* ++ ID_VENDOR_FROM_DATABASE=FDK CORPORATION ++ ++bluetooth:v0192* ++ ID_VENDOR_FROM_DATABASE=Cloudleaf, Inc ++ ++bluetooth:v0193* ++ ID_VENDOR_FROM_DATABASE=Maveric Automation LLC ++ ++bluetooth:v0194* ++ ID_VENDOR_FROM_DATABASE=Acoustic Stream Corporation ++ ++bluetooth:v0195* ++ ID_VENDOR_FROM_DATABASE=Zuli +-- +1.7.9.2 + diff --git a/0010-logind-allow-suspending-if-there-are-no-displays.patch b/0010-logind-allow-suspending-if-there-are-no-displays.patch new file mode 100644 index 00000000..a12ff513 --- /dev/null +++ b/0010-logind-allow-suspending-if-there-are-no-displays.patch @@ -0,0 +1,42 @@ +From d36d90933a832bd1e1eb8e3d16b3de73f91636b4 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Mantas=20Mikul=C4=97nas?= +Date: Mon, 28 Apr 2014 00:58:56 +0300 +Subject: [PATCH] logind: allow suspending if there are no displays + +With proprietary graphics drivers, there won't be any 'drm' devices in +sysfs, so logind will never suspend the system upon closing the lid, +even if only one (internal) display is connected. This has been reported +by multiple users so far. + +IMHO, it's better to suspend the system in this case for safety reasons, +to avoid having nvidia blob users' laptops overheat, for the same reason +that sleep inhibitors are overridden (LidSwitchIgnoreInhibited=yes). +--- + src/login/logind-action.c | 8 +++----- + 1 file changed, 3 insertions(+), 5 deletions(-) + +diff --git src/login/logind-action.c src/login/logind-action.c +index ae9cd48..36ee441 100644 +--- src/login/logind-action.c ++++ src/login/logind-action.c +@@ -79,14 +79,12 @@ int manager_handle_action( + return 0; + } + +- /* If we have more than one or no displays connected, +- * don't react to lid closing. The no display case we +- * treat like this under the assumption that there is +- * no modern drm driver available. */ ++ /* If we have more than one display connected, ++ * don't react to lid closing. */ + n = manager_count_displays(m); + if (n < 0) + log_warning("Display counting failed: %s", strerror(-n)); +- else if (n != 1) { ++ else if (n > 1) { + log_debug("Ignoring lid switch request, %i displays connected.", n); + return 0; + } +-- +1.7.9.2 + diff --git a/0010-machine_kill-Don-t-kill-the-unit-when-killing-the-le.patch b/0010-machine_kill-Don-t-kill-the-unit-when-killing-the-le.patch new file mode 100644 index 00000000..cd65acf9 --- /dev/null +++ b/0010-machine_kill-Don-t-kill-the-unit-when-killing-the-le.patch @@ -0,0 +1,32 @@ +From 9d685ca8193c0da3ad5746be3871f5350179a3b3 Mon Sep 17 00:00:00 2001 +From: Eelco Dolstra +Date: Thu, 14 Aug 2014 19:59:16 +0200 +Subject: [PATCH] machine_kill(): Don't kill the unit when killing the leader + +If "machinectl poweroff" or "machinectl reboot" is used on a +systemd-nspawn container started with --keep-unit and --register, it +should *only* send the appropriate signal to the leader PID (i.e. the +container's systemd process). It shouldn't fall through to +manager_kill_unit() to also send the signal to the unit. The latter +ends up killing systemd-nspawn, which takes down the container +prematurely. +--- + src/machine/machine.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git src/machine/machine.c src/machine/machine.c +index 1c9177e..13d3448 100644 +--- src/machine/machine.c ++++ src/machine/machine.c +@@ -493,6 +493,8 @@ int machine_kill(Machine *m, KillWho who, int signo) { + + if (kill(m->leader, signo) < 0) + return -errno; ++ ++ return 0; + } + + /* Otherwise make PID 1 do it for us, for the entire cgroup */ +-- +1.7.9.2 + diff --git a/0010-man-update-link-to-LSB.patch b/0010-man-update-link-to-LSB.patch new file mode 100644 index 00000000..07a96f01 --- /dev/null +++ b/0010-man-update-link-to-LSB.patch @@ -0,0 +1,35 @@ +From 27d14fb331ba8144f99f4da2d13f15cf5c8b8a9f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Thu, 6 Mar 2014 08:10:19 -0500 +Subject: [PATCH] man: update link to LSB + +https://bugzilla.redhat.com/show_bug.cgi?id=1073402 +--- + man/daemon.xml | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git man/daemon.xml man/daemon.xml +index fd29ba7..ab58d08 100644 +--- man/daemon.xml ++++ man/daemon.xml +@@ -252,7 +252,7 @@ + detect service errors and problems. It + is recommended to follow the exit code + scheme as defined in the LSB ++ url="http://refspecs.linuxbase.org/LSB_3.1.1/LSB-Core-generic/LSB-Core-generic/iniscrptact.html">LSB + recommendations for SysV init + scripts. + +@@ -395,7 +395,7 @@ + exclusively on boot (and manually by the + administrator) via SysV init scripts, as + detailed in the LSB ++ url="http://refspecs.linuxbase.org/LSB_3.1.1/LSB-Core-generic/LSB-Core-generic/iniscrptact.html">LSB + Linux Standard Base Core + Specification. This method of + activation is supported ubiquitously on Linux +-- +1.7.9.2 + diff --git a/0010-manager-use-correct-cleanup-function.patch b/0010-manager-use-correct-cleanup-function.patch new file mode 100644 index 00000000..0f46dec8 --- /dev/null +++ b/0010-manager-use-correct-cleanup-function.patch @@ -0,0 +1,30 @@ +From 807d0cca2b0daf4cd725298c1b5e062b1126f15b Mon Sep 17 00:00:00 2001 +From: Thomas Hindoe Paaboel Andersen +Date: Thu, 11 Sep 2014 21:14:53 +0200 +Subject: [PATCH] manager: use correct cleanup function + +Close the dir instead of attempt to free it. + +Introduced in 874310b7b68c4c0d36ff07397db30a959bb7dae5 + +Found with coverity. Fixes: CID#996368 +--- + src/core/manager.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/core/manager.c src/core/manager.c +index 9abdf47..095111e 100644 +--- src/core/manager.c ++++ src/core/manager.c +@@ -896,7 +896,7 @@ static int manager_coldplug(Manager *m) { + + static void manager_build_unit_path_cache(Manager *m) { + char **i; +- _cleanup_free_ DIR *d = NULL; ++ _cleanup_closedir_ DIR *d = NULL; + int r; + + assert(m); +-- +1.7.9.2 + diff --git a/0010-mount-don-t-fire-PropertiesChanged-signals-for-mount.patch b/0010-mount-don-t-fire-PropertiesChanged-signals-for-mount.patch new file mode 100644 index 00000000..79bf62d4 --- /dev/null +++ b/0010-mount-don-t-fire-PropertiesChanged-signals-for-mount.patch @@ -0,0 +1,51 @@ +From aef831369cd2a7a1bd4a58dd96ff8628ed6a85f9 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 26 Feb 2014 04:28:37 +0100 +Subject: [PATCH] mount: don't fire PropertiesChanged signals for mounts that + are stopped + +--- + src/core/mount.c | 9 ++++++--- + 1 file changed, 6 insertions(+), 3 deletions(-) + +diff --git src/core/mount.c src/core/mount.c +index 98812c9..7a92e1c 100644 +--- src/core/mount.c ++++ src/core/mount.c +@@ -1679,20 +1679,20 @@ static int mount_dispatch_io(sd_event_source *source, int fd, uint32_t revents, + Mount *mount = MOUNT(u); + + if (!mount->is_mounted) { +- /* This has just been unmounted. */ + + mount->from_proc_self_mountinfo = false; + + switch (mount->state) { + + case MOUNT_MOUNTED: ++ /* This has just been unmounted by ++ * somebody else, follow the state ++ * change. */ + mount_enter_dead(mount, MOUNT_SUCCESS); + break; + + default: +- mount_set_state(mount, mount->state); + break; +- + } + + } else if (mount->just_mounted || mount->just_changed) { +@@ -1703,6 +1703,9 @@ static int mount_dispatch_io(sd_event_source *source, int fd, uint32_t revents, + + case MOUNT_DEAD: + case MOUNT_FAILED: ++ /* This has just been mounted by ++ * somebody else, follow the state ++ * change. */ + mount_enter_mounted(mount, MOUNT_SUCCESS); + break; + +-- +1.7.9.2 + diff --git a/0010-shutdown-do-final-unmounting-only-if-not-running-ins.patch b/0010-shutdown-do-final-unmounting-only-if-not-running-ins.patch new file mode 100644 index 00000000..cafa5324 --- /dev/null +++ b/0010-shutdown-do-final-unmounting-only-if-not-running-ins.patch @@ -0,0 +1,27 @@ +Based on d89b5fed9ea5d9ec293585cb85bb27b56ea6ac9c Mon Sep 17 00:00:00 2001 +From: Michal Sekletar +Date: Tue, 21 Oct 2014 18:38:42 +0200 +Subject: [PATCH] shutdown: do final unmounting only if not running inside the + container + +If we run in the container then we run in a mount namespace. If namespace dies +then kernel should do unmounting for us, hence we skip unmounting in containers. + +Also, it may be the case that we no longer have capability to do umount, +because we are running in the unprivileged container. + +See: http://lists.freedesktop.org/archives/systemd-devel/2014-October/023536.html +--- + src/core/shutdown.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- src/core/shutdown.c ++++ src/core/shutdown.c 2014-10-29 14:18:38.767837898 +0000 +@@ -278,6 +278,7 @@ int main(int argc, char *argv[]) { + broadcast_signal(SIGKILL, true, false); + + if (in_container) { ++ need_umount = false; + need_swapoff = false; + need_dm_detach = false; + need_loop_detach = false; diff --git a/0010-util-treat-fuse.sshfs-as-a-network-filesystem.patch b/0010-util-treat-fuse.sshfs-as-a-network-filesystem.patch new file mode 100644 index 00000000..e99c1a0d --- /dev/null +++ b/0010-util-treat-fuse.sshfs-as-a-network-filesystem.patch @@ -0,0 +1,25 @@ +From da92ca5eb506d513033e0c7a85daf25a7e1c9d0e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Fri, 20 Jun 2014 22:43:49 -0400 +Subject: [PATCH] util: treat fuse.sshfs as a network filesystem + +https://bugs.freedesktop.org/show_bug.cgi?id=73727 +--- + src/shared/util.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git src/shared/util.c src/shared/util.c +index 882a690..dbdb692 100644 +--- src/shared/util.c ++++ src/shared/util.c +@@ -1514,6 +1514,7 @@ bool fstype_is_network(const char *fstype) { + static const char table[] = + "cifs\0" + "smbfs\0" ++ "sshfs\0" + "ncpfs\0" + "ncp\0" + "nfs\0" +-- +1.7.9.2 + diff --git a/0011-build-sys-add-pthread-flag-for-libsystemd-shared.patch b/0011-build-sys-add-pthread-flag-for-libsystemd-shared.patch new file mode 100644 index 00000000..325f04a9 --- /dev/null +++ b/0011-build-sys-add-pthread-flag-for-libsystemd-shared.patch @@ -0,0 +1,28 @@ +From 8e75477abdd838d3beddc5fd1c6a7707b22748b6 Mon Sep 17 00:00:00 2001 +From: Ronny Chevalier +Date: Sat, 21 Jun 2014 22:07:09 +0200 +Subject: [PATCH] build-sys: add -pthread flag for libsystemd-shared + +src/shared/async.c uses pthread so it will fail at link time if we link +only to libsystemd-shared and use async +--- + Makefile.am | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git Makefile.am Makefile.am +index c7653ea..00db82d 100644 +--- Makefile.am ++++ Makefile.am +@@ -837,7 +837,8 @@ nodist_libsystemd_shared_la_SOURCES = \ + + libsystemd_shared_la_CFLAGS = \ + $(AM_CFLAGS) \ +- $(SECCOMP_CFLAGS) ++ $(SECCOMP_CFLAGS) \ ++ -pthread + + # ------------------------------------------------------------------------------ + noinst_LTLIBRARIES += \ +-- +1.7.9.2 + diff --git a/0011-logs-show-fix-corrupt-output-with-empty-messages.patch b/0011-logs-show-fix-corrupt-output-with-empty-messages.patch new file mode 100644 index 00000000..6ff83d12 --- /dev/null +++ b/0011-logs-show-fix-corrupt-output-with-empty-messages.patch @@ -0,0 +1,41 @@ +From 47d80904a1f72d559962cc5ad32fffd46672a34a Mon Sep 17 00:00:00 2001 +From: Uoti Urpala +Date: Thu, 20 Feb 2014 03:00:09 +0200 +Subject: [PATCH] logs-show: fix corrupt output with empty messages + +If a message had zero length, journalctl would print no newline, and +two output lines would be concatenated. Fix. The problem was +introduced in commit 31f7bf199452 ("logs-show: print multiline +messages"). Affected short and verbose output modes. + +Before fix: + +Feb 09 21:16:17 glyph dhclient[1323]: Feb 09 21:16:17 glyph NetworkManager[788]: (enp4s2): DHCPv4 state changed nbi -> preinit + +after: + +Feb 09 21:16:17 glyph dhclient[1323]: +Feb 09 21:16:17 glyph NetworkManager[788]: (enp4s2): DHCPv4 state changed nbi -> preinit +--- + src/shared/logs-show.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git src/shared/logs-show.c src/shared/logs-show.c +index 61c3652..12d4a1c 100644 +--- src/shared/logs-show.c ++++ src/shared/logs-show.c +@@ -124,6 +124,11 @@ static bool print_multiline(FILE *f, unsigned prefix, unsigned n_columns, Output + } + } + ++ /* A special case: make sure that we print a newline when ++ the message is empty. */ ++ if (message_len == 0) ++ fputs("\n", f); ++ + for (pos = message; + pos < message + message_len; + pos = end + 1, line++) { +-- +1.7.9.2 + diff --git a/0011-man-systemd-bootchart-fix-spacing-in-command.patch b/0011-man-systemd-bootchart-fix-spacing-in-command.patch new file mode 100644 index 00000000..60c206b3 --- /dev/null +++ b/0011-man-systemd-bootchart-fix-spacing-in-command.patch @@ -0,0 +1,28 @@ +From 82ed60080d327d7301fcd55f5a1f8511f894b9d5 Mon Sep 17 00:00:00 2001 +From: Zachary Cook +Date: Thu, 6 Mar 2014 03:49:49 -0500 +Subject: [PATCH] man: systemd-bootchart - fix spacing in command + +Use the same formatting as the systemd-analyze man page, so that man shows a space. +--- + man/systemd-bootchart.xml | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git man/systemd-bootchart.xml man/systemd-bootchart.xml +index d0adaad..1715d5d 100644 +--- man/systemd-bootchart.xml ++++ man/systemd-bootchart.xml +@@ -78,8 +78,8 @@ + in which order, and where possible problems + exist in the startup sequence of the system. + It is essentially a more detailed version of +- the systemd-analyze +- plot function. ++ the systemd-analyze plot ++ function. + + + Of course, bootchart can also be used at any +-- +1.7.9.2 + diff --git a/0011-selinux-make-sure-we-do-not-try-to-print-missing-fie.patch b/0011-selinux-make-sure-we-do-not-try-to-print-missing-fie.patch new file mode 100644 index 00000000..1592a5aa --- /dev/null +++ b/0011-selinux-make-sure-we-do-not-try-to-print-missing-fie.patch @@ -0,0 +1,57 @@ +Based on dec23413ecc90d4a547aa41f02af0482b4513495 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Mon, 27 Oct 2014 21:31:29 -0400 +Subject: [PATCH] selinux: make sure we do not try to print missing fields + +UID or GID of 0 is valid, so we cannot use that to distinguish whether +calls to sd_bus_creds_get_* succeeded, and the return value from the +function is the only way to know about missing fields. Print "n/a" if +the fields are missing. + +CID #1238779 +--- + src/core/selinux-access.c | 18 ++++++++++++------ + 1 file changed, 12 insertions(+), 6 deletions(-) + +diff --git src/core/selinux-access.c src/core/selinux-access.c +index 08ea6ef..351d48f 100644 +--- src/core/selinux-access.c ++++ src/core/selinux-access.c +@@ -53,7 +53,7 @@ struct audit_info { + + /* + Any time an access gets denied this callback will be called +- with the aduit data. We then need to just copy the audit data into the msgbuf. ++ with the audit data. We then need to just copy the audit data into the msgbuf. + */ + static int audit_callback( + void *auditdata, +@@ -64,14 +64,20 @@ static int audit_callback( + const struct audit_info *audit = auditdata; + uid_t uid = 0, login_uid = 0; + gid_t gid = 0; ++ char login_uid_buf[DECIMAL_STR_MAX(uid_t)] = "n/a"; ++ char uid_buf[DECIMAL_STR_MAX(uid_t)] = "n/a"; ++ char gid_buf[DECIMAL_STR_MAX(gid_t)] = "n/a"; + +- sd_bus_creds_get_audit_login_uid(audit->creds, &login_uid); +- sd_bus_creds_get_uid(audit->creds, &uid); +- sd_bus_creds_get_gid(audit->creds, &gid); ++ if (sd_bus_creds_get_audit_login_uid(audit->creds, &login_uid) >= 0) ++ snprintf(login_uid_buf, sizeof(login_uid_buf), UID_FMT, login_uid); ++ if (sd_bus_creds_get_uid(audit->creds, &uid) >= 0) ++ snprintf(uid_buf, sizeof(uid_buf), UID_FMT, uid); ++ if (sd_bus_creds_get_gid(audit->creds, &gid) >= 0) ++ snprintf(gid_buf, sizeof(gid_buf), "%lu", (unsigned long)gid); + + snprintf(msgbuf, msgbufsize, +- "auid=%d uid=%d gid=%d%s%s%s%s%s%s", +- login_uid, uid, gid, ++ "auid=%s uid=%s gid=%s%s%s%s%s%s%s", ++ login_uid_buf, uid_buf, gid_buf, + audit->path ? " path=\"" : "", strempty(audit->path), audit->path ? "\"" : "", + audit->cmdline ? " cmdline=\"" : "", strempty(audit->cmdline), audit->cmdline ? "\"" : ""); + +-- +1.7.9.2 + diff --git a/0011-units-fix-BindsTo-logic-when-applied-relative-to-ser.patch b/0011-units-fix-BindsTo-logic-when-applied-relative-to-ser.patch new file mode 100644 index 00000000..7dee5011 --- /dev/null +++ b/0011-units-fix-BindsTo-logic-when-applied-relative-to-ser.patch @@ -0,0 +1,93 @@ +From ff50244582bf69e8489bba6ce59a21663d7f8274 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 18 Aug 2014 22:21:42 +0200 +Subject: [PATCH] units: fix BindsTo= logic when applied relative to services + with Type=oneshot +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Start jobs for Type=oneshot units are successful when the unit state +transition activating → inactive took place. In such a case all units +that BindsTo= on it previously would continue to run, even though the unit +they dependet on was actually already gone. +--- + src/core/unit.c | 48 ++++++++++++++++++++++++++++++++++++++++++++---- + 1 file changed, 44 insertions(+), 4 deletions(-) + +diff --git src/core/unit.c src/core/unit.c +index a5f6b2e..950b83a 100644 +--- src/core/unit.c ++++ src/core/unit.c +@@ -1471,12 +1471,44 @@ static void unit_check_unneeded(Unit *u) { + if (unit_active_or_pending(other)) + return; + +- log_info_unit(u->id, "Service %s is not needed anymore. Stopping.", u->id); ++ log_info_unit(u->id, "Unit %s is not needed anymore. Stopping.", u->id); + + /* Ok, nobody needs us anymore. Sniff. Then let's commit suicide */ + manager_add_job(u->manager, JOB_STOP, u, JOB_FAIL, true, NULL, NULL); + } + ++static void unit_check_binds_to(Unit *u) { ++ bool stop = false; ++ Unit *other; ++ Iterator i; ++ ++ assert(u); ++ ++ if (u->job) ++ return; ++ ++ if (unit_active_state(u) != UNIT_ACTIVE) ++ return; ++ ++ SET_FOREACH(other, u->dependencies[UNIT_BINDS_TO], i) { ++ if (other->job) ++ continue; ++ ++ if (!UNIT_IS_INACTIVE_OR_FAILED(unit_active_state(other))) ++ continue; ++ ++ stop = true; ++ } ++ ++ if (!stop) ++ return; ++ ++ log_info_unit(u->id, "Unit %s is bound to inactive service. Stopping, too.", u->id); ++ ++ /* A unit we need to run is gone. Sniff. Let's stop this. */ ++ manager_add_job(u->manager, JOB_STOP, u, JOB_FAIL, true, NULL, NULL); ++} ++ + static void retroactively_start_dependencies(Unit *u) { + Iterator i; + Unit *other; +@@ -1788,11 +1820,19 @@ void unit_notify(Unit *u, UnitActiveState os, UnitActiveState ns, bool reload_su + manager_recheck_journal(m); + unit_trigger_notify(u); + +- /* Maybe we finished startup and are now ready for being +- * stopped because unneeded? */ +- if (u->manager->n_reloading <= 0) ++ if (u->manager->n_reloading <= 0) { ++ /* Maybe we finished startup and are now ready for ++ * being stopped because unneeded? */ + unit_check_unneeded(u); + ++ /* Maybe we finished startup, but something we needed ++ * has vanished? Let's die then. (This happens when ++ * something BindsTo= to a Type=oneshot unit, as these ++ * units go directly from starting to inactive, ++ * without ever entering started.) */ ++ unit_check_binds_to(u); ++ } ++ + unit_add_to_dbus_queue(u); + unit_add_to_gc_queue(u); + } +-- +1.7.9.2 + diff --git a/0012-core-transaction-avoid-misleading-error-message-when.patch b/0012-core-transaction-avoid-misleading-error-message-when.patch new file mode 100644 index 00000000..03021cd2 --- /dev/null +++ b/0012-core-transaction-avoid-misleading-error-message-when.patch @@ -0,0 +1,42 @@ +Based on 04ef5b03f64d3824a51a2a903548af029a006744 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sun, 22 Jun 2014 14:04:23 -0400 +Subject: [PATCH] core/transaction: avoid misleading error message when unit + not found + +There's no point in telling the user to look at the logs when +an attempt to load the unit file failed with ENOENT. + +https://bugzilla.redhat.com/show_bug.cgi?id=996133 +--- + TODO | 4 ---- + src/core/transaction.c | 18 ++++++++++++------ + 2 files changed, 12 insertions(+), 10 deletions(-) + +--- src/core/transaction.c ++++ src/core/transaction.c 2014-06-24 11:18:42.746235805 +0000 +@@ -865,12 +865,18 @@ int transaction_add_job_and_dependencies + } + + if (type != JOB_STOP && unit->load_state == UNIT_ERROR) { +- sd_bus_error_setf(e, BUS_ERROR_LOAD_FAILED, +- "Unit %s failed to load: %s. " +- "See system logs and 'systemctl status %s' for details.", +- unit->id, +- strerror(-unit->load_error), +- unit->id); ++ if (unit->load_error == -ENOENT) ++ sd_bus_error_setf(e, BUS_ERROR_LOAD_FAILED, ++ "Unit %s failed to load: %s.", ++ unit->id, ++ strerror(-unit->load_error)); ++ else ++ sd_bus_error_setf(e, BUS_ERROR_LOAD_FAILED, ++ "Unit %s failed to load: %s. " ++ "See system logs and 'systemctl status %s' for details.", ++ unit->id, ++ strerror(-unit->load_error), ++ unit->id); + return -EINVAL; + } + diff --git a/0012-journalctl-refuse-extra-arguments-with-verify-and-si.patch b/0012-journalctl-refuse-extra-arguments-with-verify-and-si.patch new file mode 100644 index 00000000..00b0669b --- /dev/null +++ b/0012-journalctl-refuse-extra-arguments-with-verify-and-si.patch @@ -0,0 +1,30 @@ +From 0b6b7c2004317da48e5bbd3078c5662d8f0061b6 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Wed, 26 Feb 2014 23:01:43 -0500 +Subject: [PATCH] journalctl: refuse extra arguments with --verify and similar + +Positional arguments only make sense with the default action. +For other actions, complain instead of ignoring them silently. +--- + src/journal/journalctl.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git src/journal/journalctl.c src/journal/journalctl.c +index a328ba1..0619b25 100644 +--- src/journal/journalctl.c ++++ src/journal/journalctl.c +@@ -658,6 +658,11 @@ static int parse_argv(int argc, char *argv[]) { + return -EINVAL; + } + ++ if (arg_action != ACTION_SHOW && optind < argc) { ++ log_error("Extraneous arguments starting with '%s'", argv[optind]); ++ return -EINVAL; ++ } ++ + return 1; + } + +-- +1.7.9.2 + diff --git a/0012-journald-remove-stray-reset-of-error-return-value.patch b/0012-journald-remove-stray-reset-of-error-return-value.patch new file mode 100644 index 00000000..f15237f7 --- /dev/null +++ b/0012-journald-remove-stray-reset-of-error-return-value.patch @@ -0,0 +1,24 @@ +From 2fc74bf4336eb7a7e40c0b355d19966cd97d4b3c Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Mon, 10 Mar 2014 21:19:23 -0400 +Subject: [PATCH] journald: remove stray reset of error return value + +--- + src/journal/journald.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git src/journal/journald.c src/journal/journald.c +index 37896d0..c8c0801 100644 +--- src/journal/journald.c ++++ src/journal/journald.c +@@ -110,7 +110,6 @@ int main(int argc, char *argv[]) { + r = sd_event_run(server.event, t); + if (r < 0) { + log_error("Failed to run event loop: %s", strerror(-r)); +- r = -errno; + goto finish; + } + +-- +1.7.9.2 + diff --git a/0012-man-add-missing-comma.patch b/0012-man-add-missing-comma.patch new file mode 100644 index 00000000..9d779f43 --- /dev/null +++ b/0012-man-add-missing-comma.patch @@ -0,0 +1,26 @@ +From 7d06ef0a5cd2f0a4e021d3d12f3841cce529e0f2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Thu, 6 Mar 2014 23:54:13 -0500 +Subject: [PATCH] man: add missing comma + +marcosf0> missing comma in udevadm "see also" section +--- + man/udevadm.xml | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git man/udevadm.xml man/udevadm.xml +index a3f8d54..21d1443 100644 +--- man/udevadm.xml ++++ man/udevadm.xml +@@ -594,7 +594,7 @@ + See Also + + udev7 +- ++ , + + systemd-udevd.service8 + +-- +1.7.9.2 + diff --git a/0012-manager-do-not-print-anything-while-passwords-are-be.patch b/0012-manager-do-not-print-anything-while-passwords-are-be.patch new file mode 100644 index 00000000..88c30eab --- /dev/null +++ b/0012-manager-do-not-print-anything-while-passwords-are-be.patch @@ -0,0 +1,180 @@ +Based on e46b13c8c7f48f81d4e09912f2265daaa7f6d27e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sat, 25 Oct 2014 20:30:51 -0400 +Subject: [PATCH] manager: do not print anything while passwords are being + queried + +https://bugs.freedesktop.org/show_bug.cgi?id=73942 +--- + src/core/manager.c | 105 ++++++++++++++++++++++++++++++++++++++++++++++++++++- + src/core/manager.h | 5 ++ + 2 files changed, 109 insertions(+), 1 deletion(-) + +--- src/core/manager.c ++++ src/core/manager.c 2014-10-29 14:31:18.984212089 +0000 +@@ -25,6 +25,8 @@ + #include + #include + #include ++#include ++#include + #include + #include + #include +@@ -212,6 +214,96 @@ static void manager_print_jobs_in_progre + + } + ++static int have_ask_password(void) { ++ _cleanup_closedir_ DIR *dir; ++ ++ dir = opendir("/run/systemd/ask-password"); ++ if (!dir) { ++ if (errno == ENOENT) ++ return false; ++ else ++ return -errno; ++ } ++ ++ for (;;) { ++ struct dirent *de; ++ ++ errno = 0; ++ de = readdir(dir); ++ if (!de && errno != 0) ++ return -errno; ++ if (!de) ++ return false; ++ ++ if (startswith(de->d_name, "ask.")) ++ return true; ++ } ++} ++ ++static int manager_dispatch_ask_password_fd(sd_event_source *source, ++ int fd, uint32_t revents, void *userdata) { ++ Manager *m = userdata; ++ ++ assert(m); ++ ++ flush_fd(fd); ++ ++ m->have_ask_password = have_ask_password(); ++ if (m->have_ask_password < 0) ++ /* Log error but continue. Negative have_ask_password ++ * is treated as unknown status. */ ++ log_error("Failed to list /run/systemd/ask-password: %s", strerror(m->have_ask_password)); ++ ++ return 0; ++} ++ ++static void manager_close_ask_password(Manager *m) { ++ assert(m); ++ if (m->ask_password_inotify_fd >= 0) close_nointr_nofail(m->ask_password_inotify_fd); ++ m->ask_password_inotify_fd = -1; ++ m->ask_password_event_source = sd_event_source_unref(m->ask_password_event_source); ++ m->have_ask_password = -EINVAL; ++} ++ ++static int manager_check_ask_password(Manager *m) { ++ int r; ++ ++ assert(m); ++ ++ if (!m->ask_password_event_source) { ++ assert(m->ask_password_inotify_fd < 0); ++ ++ mkdir_p_label("/run/systemd/ask-password", 0755); ++ ++ m->ask_password_inotify_fd = inotify_init1(IN_NONBLOCK|IN_CLOEXEC); ++ if (m->ask_password_inotify_fd < 0) { ++ log_error("inotify_init1() failed: %m"); ++ return -errno; ++ } ++ ++ if (inotify_add_watch(m->ask_password_inotify_fd, "/run/systemd/ask-password", IN_CREATE|IN_DELETE|IN_MOVE) < 0) { ++ log_error("Failed to add watch on /run/systemd/ask-password: %m"); ++ manager_close_ask_password(m); ++ return -errno; ++ } ++ ++ r = sd_event_add_io(m->event, &m->ask_password_event_source, ++ m->ask_password_inotify_fd, EPOLLIN, ++ manager_dispatch_ask_password_fd, m); ++ if (r < 0) { ++ log_error("Failed to add event source for /run/systemd/ask-password: %m"); ++ manager_close_ask_password(m); ++ return -errno; ++ } ++ ++ /* Queries might have been added meanwhile... */ ++ manager_dispatch_ask_password_fd(m->ask_password_event_source, ++ m->ask_password_inotify_fd, EPOLLIN, m); ++ } ++ ++ return m->have_ask_password; ++} ++ + static int manager_watch_idle_pipe(Manager *m) { + int r; + +@@ -470,6 +562,9 @@ int manager_new(SystemdRunningAs running + m->pin_cgroupfs_fd = m->notify_fd = m->signal_fd = m->time_change_fd = m->dev_autofs_fd = m->private_listen_fd = m->kdbus_fd = -1; + m->current_job_id = 1; /* start as id #1, so that we can leave #0 around as "null-like" value */ + ++ m->ask_password_inotify_fd = -1; ++ m->have_ask_password = -EINVAL; /* we don't know */ ++ + r = manager_default_environment(m); + if (r < 0) + goto fail; +@@ -847,6 +942,8 @@ void manager_free(Manager *m) { + if (m->kdbus_fd >= 0) + close_nointr_nofail(m->kdbus_fd); + ++ manager_close_ask_password(m); ++ + manager_close_idle_pipe(m); + + udev_unref(m->udev); +@@ -2526,6 +2623,9 @@ void manager_check_finished(Manager *m) + /* Turn off confirm spawn now */ + m->confirm_spawn = false; + ++ /* No need to update ask password status when we're going non-interactive */ ++ manager_close_ask_password(m); ++ + if (dual_timestamp_is_set(&m->finish_timestamp)) + return; + +@@ -2843,12 +2943,15 @@ static bool manager_get_show_status(Mana + if (m->no_console_output) + return false; + ++ /* If we cannot find out the status properly, just proceed. */ ++ if (manager_check_ask_password(m) > 0) ++ return false; ++ + if (m->show_status > 0) + return true; + + /* If Plymouth is running make sure we show the status, so + * that there's something nice to see when people press Esc */ +- + return plymouth_running(); + } + +--- src/core/manager.h ++++ src/core/manager.h 2014-10-29 00:00:00.000000000 +0000 +@@ -231,6 +231,11 @@ struct Manager { + unsigned n_on_console; + unsigned jobs_in_progress_iteration; + ++ /* Do we have any outstanding password prompts? */ ++ int have_ask_password; ++ int ask_password_inotify_fd; ++ sd_event_source *ask_password_event_source; ++ + /* Type=idle pipes */ + int idle_pipe[4]; + sd_event_source *idle_pipe_event_source; diff --git a/0012-util-try-to-be-a-bit-more-NFS-compatible-when-checki.patch b/0012-util-try-to-be-a-bit-more-NFS-compatible-when-checki.patch new file mode 100644 index 00000000..becc7844 --- /dev/null +++ b/0012-util-try-to-be-a-bit-more-NFS-compatible-when-checki.patch @@ -0,0 +1,36 @@ +From 70421bdce2719d76efffd8afdc28433c75aac5a2 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 18 Aug 2014 23:15:51 +0200 +Subject: [PATCH] util: try to be a bit more NFS compatible when checking + whether an FS is writable + +https://bugs.freedesktop.org/show_bug.cgi?id=81169 +--- + src/shared/path-util.c | 11 ++++++++++- + 1 file changed, 10 insertions(+), 1 deletion(-) + +diff --git src/shared/path-util.c src/shared/path-util.c +index 57554cd..67566bc 100644 +--- src/shared/path-util.c ++++ src/shared/path-util.c +@@ -533,7 +533,16 @@ int path_is_read_only_fs(const char *path) { + if (statvfs(path, &st) < 0) + return -errno; + +- return !!(st.f_flag & ST_RDONLY); ++ if (st.f_flag & ST_RDONLY) ++ return true; ++ ++ /* On NFS, statvfs() might not reflect whether we can actually ++ * write to the remote share. Let's try again with ++ * access(W_OK) which is more reliable, at least sometimes. */ ++ if (access(path, W_OK) < 0 && errno == EROFS) ++ return true; ++ ++ return false; + } + + int path_is_os_tree(const char *path) { +-- +1.7.9.2 + diff --git a/0013-core-libsystemd-systemd-timedate-udev-spelling-fixes.patch b/0013-core-libsystemd-systemd-timedate-udev-spelling-fixes.patch new file mode 100644 index 00000000..0343c2ad --- /dev/null +++ b/0013-core-libsystemd-systemd-timedate-udev-spelling-fixes.patch @@ -0,0 +1,118 @@ +From 6f285378aa6e4b5b23c939d1fea16f9ab0a57efb Mon Sep 17 00:00:00 2001 +From: Miklos Vajna +Date: Fri, 14 Mar 2014 21:13:38 +0100 +Subject: [PATCH] core, libsystemd, systemd, timedate, udev: spelling fixes + +--- + src/core/service.c | 2 +- + src/core/unit.c | 2 +- + src/libsystemd/sd-bus/bus-message.c | 2 +- + src/libsystemd/sd-bus/sd-bus.c | 4 ++-- + src/systemd/sd-resolve.h | 2 +- + src/timedate/timedated.c | 2 +- + src/udev/udevadm-settle.c | 2 +- + 7 files changed, 8 insertions(+), 8 deletions(-) + +diff --git src/core/service.c src/core/service.c +index 41b95ab..386692a 100644 +--- src/core/service.c ++++ src/core/service.c +@@ -3416,7 +3416,7 @@ static void service_notify_message(Unit *u, pid_t pid, char **tags) { + free(t); + } + +- /* Interpet WATCHDOG= */ ++ /* Interpret WATCHDOG= */ + if (strv_find(tags, "WATCHDOG=1")) { + log_debug_unit(u->id, "%s: got WATCHDOG=1", u->id); + service_reset_watchdog(s); +diff --git src/core/unit.c src/core/unit.c +index 5c98843..4fb0d9c 100644 +--- src/core/unit.c ++++ src/core/unit.c +@@ -1537,7 +1537,7 @@ void unit_notify(Unit *u, UnitActiveState os, UnitActiveState ns, bool reload_su + unit_destroy_cgroup(u); + + /* Note that this doesn't apply to RemainAfterExit services exiting +- * sucessfully, since there's no change of state in that case. Which is ++ * successfully, since there's no change of state in that case. Which is + * why it is handled in service_set_state() */ + if (UNIT_IS_INACTIVE_OR_FAILED(os) != UNIT_IS_INACTIVE_OR_FAILED(ns)) { + ExecContext *ec; +diff --git src/libsystemd/sd-bus/bus-message.c src/libsystemd/sd-bus/bus-message.c +index b9d7f6d..e32f2b8 100644 +--- src/libsystemd/sd-bus/bus-message.c ++++ src/libsystemd/sd-bus/bus-message.c +@@ -4215,7 +4215,7 @@ static int message_read_ap( + * in a single stackframe. We hence implement our own + * home-grown stack in an array. */ + +- n_array = (unsigned) -1; /* lenght of current array entries */ ++ n_array = (unsigned) -1; /* length of current array entries */ + n_struct = strlen(types); /* length of current struct contents signature */ + + for (;;) { +diff --git src/libsystemd/sd-bus/sd-bus.c src/libsystemd/sd-bus/sd-bus.c +index 8e44e50..ba8a8a2 100644 +--- src/libsystemd/sd-bus/sd-bus.c ++++ src/libsystemd/sd-bus/sd-bus.c +@@ -1447,7 +1447,7 @@ static int bus_seal_message(sd_bus *b, sd_bus_message *m, usec_t timeout) { + static int bus_remarshal_message(sd_bus *b, sd_bus_message **m) { + assert(b); + +- /* Do packet version and endianess already match? */ ++ /* Do packet version and endianness already match? */ + if ((b->message_version == 0 || b->message_version == (*m)->header->version) && + (b->message_endian == 0 || b->message_endian == (*m)->header->endian)) + return 0; +@@ -1464,7 +1464,7 @@ int bus_seal_synthetic_message(sd_bus *b, sd_bus_message *m) { + * hence let's fill something in for synthetic messages. Since + * synthetic messages might have a fake sender and we don't + * want to interfere with the real sender's serial numbers we +- * pick a fixed, artifical one. We use (uint32_t) -1 rather ++ * pick a fixed, artificial one. We use (uint32_t) -1 rather + * than (uint64_t) -1 since dbus1 only had 32bit identifiers, + * even though kdbus can do 64bit. */ + +diff --git src/systemd/sd-resolve.h src/systemd/sd-resolve.h +index df69e4b..3c1d482 100644 +--- src/systemd/sd-resolve.h ++++ src/systemd/sd-resolve.h +@@ -129,7 +129,7 @@ int sd_resolve_get_next(sd_resolve *resolve, sd_resolve_query **q); + int sd_resolve_get_n_queries(sd_resolve *resolve); + + /** Cancel a currently running query. q is is destroyed by this call +- * and may not be used any futher. */ ++ * and may not be used any further. */ + int sd_resolve_cancel(sd_resolve_query* q); + + /** Returns non-zero when the query operation specified by q has been completed */ +diff --git src/timedate/timedated.c src/timedate/timedated.c +index d85ce57..c4a797a 100644 +--- src/timedate/timedated.c ++++ src/timedate/timedated.c +@@ -468,7 +468,7 @@ static int property_get_rtc_time( + zero(tm); + r = hwclock_get_time(&tm); + if (r == -EBUSY) { +- log_warning("/dev/rtc is busy, is somebody keeping it open continously? That's not a good idea... Returning a bogus RTC timestamp."); ++ log_warning("/dev/rtc is busy, is somebody keeping it open continuously? That's not a good idea... Returning a bogus RTC timestamp."); + t = 0; + } else if (r == -ENOENT) { + log_debug("Not /dev/rtc found."); +diff --git src/udev/udevadm-settle.c src/udev/udevadm-settle.c +index b026155..927ea2a 100644 +--- src/udev/udevadm-settle.c ++++ src/udev/udevadm-settle.c +@@ -100,7 +100,7 @@ static int adm_settle(struct udev *udev, int argc, char *argv[]) + case '?': + exit(EXIT_FAILURE); + default: +- assert_not_reached("Unkown argument"); ++ assert_not_reached("Unknown argument"); + } + + if (optind < argc) { +-- +1.7.9.2 + diff --git a/0013-units-Do-not-unescape-instance-name-in-systemd-backl.patch b/0013-units-Do-not-unescape-instance-name-in-systemd-backl.patch new file mode 100644 index 00000000..f65e5d3e --- /dev/null +++ b/0013-units-Do-not-unescape-instance-name-in-systemd-backl.patch @@ -0,0 +1,38 @@ +From 6c49212741253dae05b89d22374186f092ef1e5a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Thomas=20B=C3=A4chler?= +Date: Fri, 7 Mar 2014 01:50:34 +0100 +Subject: [PATCH] units: Do not unescape instance name in + systemd-backlight@.service + +The instance name is never escaped in the udev rule, but unescaped in the unit. +This results in the following error message on Asus boards: + + Failed to get backlight or LED device 'backlight:eeepc/wmi': No such file or directory +--- + units/systemd-backlight@.service.in | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git units/systemd-backlight@.service.in units/systemd-backlight@.service.in +index 5caa5d5..e945d87 100644 +--- units/systemd-backlight@.service.in ++++ units/systemd-backlight@.service.in +@@ -6,7 +6,7 @@ + # (at your option) any later version. + + [Unit] +-Description=Load/Save Screen Backlight Brightness of %I ++Description=Load/Save Screen Backlight Brightness of %i + Documentation=man:systemd-backlight@.service(8) + DefaultDependencies=no + RequiresMountsFor=/var/lib/systemd/backlight +@@ -17,5 +17,5 @@ Before=sysinit.target shutdown.target + [Service] + Type=oneshot + RemainAfterExit=yes +-ExecStart=@rootlibexecdir@/systemd-backlight load %I +-ExecStop=@rootlibexecdir@/systemd-backlight save %I ++ExecStart=@rootlibexecdir@/systemd-backlight load %i ++ExecStop=@rootlibexecdir@/systemd-backlight save %i +-- +1.7.9.2 + diff --git a/0014-journald-with-journaling-FS.patch b/0014-journald-with-journaling-FS.patch index c3ae1a23..6bf95fb4 100644 --- a/0014-journald-with-journaling-FS.patch +++ b/0014-journald-with-journaling-FS.patch @@ -1,22 +1,5 @@ -From: werner@suse.de -Upstream: marked as openSUSE-specific fix originally, but may well - worth be to be sent upstream. - -Original description: - (none) - -Augmented description [jengelh@inai.de]: -Disable COW on journal files, as that is naturally leading to a lot -of unwanted fragmentation on btrfs. -No word on compression… ---- - src/journal/journald-server.c | 34 ++++++++++++++++++++++++++++++++++ - 1 file changed, 34 insertions(+) - -Index: systemd/src/journal/journald-server.c -=================================================================== ---- systemd.orig/src/journal/journald-server.c -+++ systemd/src/journal/journald-server.c +--- systemd-208/src/journal/journald-server.c ++++ systemd-208/src/journal/journald-server.c 2013-12-10 16:31:50.770235717 +0000 @@ -21,6 +21,7 @@ #include @@ -25,50 +8,45 @@ Index: systemd/src/journal/journald-server.c #include #include #include -@@ -917,6 +918,38 @@ finish: - dispatch_message_real(s, iovec, n, m, ucred, tv, label, label_len, unit_id, priority, object_pid); - } +@@ -878,7 +879,7 @@ finish: -+/* -+ * On journaling and/or compressing file systems, avoid doubling the efforts -+ * for the system, that is, set NOCOW and NOCOMP inode flags. Check for every -+ * single flag, as otherwise, some of the file systems may return EOPNOTSUPP on -+ * a single unkown flag (like BtrFS does). -+ * -+ * …but src/journal/journal-file.c already sets NOCOW too…⸘ -+ */ -+static void disable_cow(const char *dir, const Server *serv) -+{ -+ unsigned long flags; -+ int fd = open(dir, O_DIRECTORY); + + static int system_journal_open(Server *s) { +- int r; ++ int r, fd; + char *fn; + sd_id128_t machine; + char ids[33]; +@@ -905,7 +906,31 @@ static int system_journal_open(Server *s + (void) mkdir("/var/log/journal/", 0755); + + fn = strappenda("/var/log/journal/", ids); +- (void) mkdir(fn, 0755); ++ (void)mkdir(fn, 0755); + -+ if (fd < 0) -+ return; -+ if (ioctl(fd, FS_IOC_GETFLAGS, &flags) == 0) { -+ unsigned long old = flags; -+ if (!(flags & FS_NOATIME_FL) && -+ ioctl(fd, FS_IOC_SETFLAGS, flags | FS_NOATIME_FL) == 0) -+ flags |= FS_NOATIME_FL; -+ if (!(flags & FS_NOCOW_FL) && -+ ioctl(fd, FS_IOC_SETFLAGS, flags | FS_NOCOW_FL) == 0) -+ flags |= FS_NOCOW_FL; -+ if (!(flags & FS_NOCOMP_FL) && serv->compress) { -+ flags &= ~FS_COMPR_FL; -+ flags |= FS_NOCOMP_FL; ++ /* ++ * On journaling and/or compressing file systems avoid doubling the ++ * efforts for the system, that is set NOCOW and NOCOMP inode flags. ++ * Check for every single flag as otherwise some of the file systems ++ * may return EOPNOTSUPP on one unkown flag (like BtrFS does). ++ */ ++ if ((fd = open(fn, O_DIRECTORY)) >= 0) { ++ long flags; ++ if (ioctl(fd, FS_IOC_GETFLAGS, &flags) == 0) { ++ int old = flags; ++ if (!(flags&FS_NOATIME_FL) && ioctl(fd, FS_IOC_SETFLAGS, flags|FS_NOATIME_FL) == 0) ++ flags |= FS_NOATIME_FL; ++ if (!(flags&FS_NOCOW_FL) && ioctl(fd, FS_IOC_SETFLAGS, flags|FS_NOCOW_FL) == 0) ++ flags |= FS_NOCOW_FL; ++ if (!(flags&FS_NOCOMP_FL) && s->compress) { ++ flags &= ~FS_COMPR_FL; ++ flags |= FS_NOCOMP_FL; ++ } ++ if (old != flags) ++ ioctl(fd, FS_IOC_SETFLAGS, flags); ++ } ++ close(fd); + } -+ if (old != flags) -+ ioctl(fd, FS_IOC_SETFLAGS, flags); -+ } -+ close(fd); -+} - static int system_journal_open(Server *s, bool flush_requested) { - int r; -@@ -946,6 +979,7 @@ static int system_journal_open(Server *s - - fn = strjoina("/var/log/journal/", ids); - (void) mkdir(fn, 0755); -+ disable_cow(fn, s); - - fn = strjoina(fn, "/system.journal"); + fn = strappenda(fn, "/system.journal"); r = journal_file_open_reliably(fn, O_RDWR|O_CREAT, 0640, s->compress, s->seal, &s->system_metrics, s->mmap, NULL, &s->system_journal); diff --git a/0014-nspawn-fix-detection-of-missing-proc-self-loginuid.patch b/0014-nspawn-fix-detection-of-missing-proc-self-loginuid.patch new file mode 100644 index 00000000..c4c2f4cb --- /dev/null +++ b/0014-nspawn-fix-detection-of-missing-proc-self-loginuid.patch @@ -0,0 +1,31 @@ +From 13e8ceb84e56907d73b6b07418deb37faaf0e66d Mon Sep 17 00:00:00 2001 +From: Tero Roponen +Date: Tue, 25 Feb 2014 17:19:35 +0200 +Subject: [PATCH] nspawn: fix detection of missing /proc/self/loginuid + +Running 'systemd-nspawn -D /srv/Fedora/' gave me this error: + Failed to read /proc/self/loginuid: No such file or directory + + Container Fedora failed with error code 1. + +This patch fixes the problem. +--- + src/nspawn/nspawn.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/nspawn/nspawn.c src/nspawn/nspawn.c +index 1fe641b..92b6728 100644 +--- src/nspawn/nspawn.c ++++ src/nspawn/nspawn.c +@@ -1349,7 +1349,7 @@ static int reset_audit_loginuid(void) { + return 0; + + r = read_one_line_file("/proc/self/loginuid", &p); +- if (r == -EEXIST) ++ if (r == -ENOENT) + return 0; + if (r < 0) { + log_error("Failed to read /proc/self/loginuid: %s", strerror(-r)); +-- +1.7.9.2 + diff --git a/0018-Make-LSB-Skripts-know-about-Required-and-Should.patch b/0018-Make-LSB-Skripts-know-about-Required-and-Should.patch new file mode 100644 index 00000000..a98660ec --- /dev/null +++ b/0018-Make-LSB-Skripts-know-about-Required-and-Should.patch @@ -0,0 +1,68 @@ +Should solve the problems of + + bug #858864 - LSB "+" dependencies aren't handled properly + bug #857204 - inssrv fails to enable rpcbind + The side effect is that RequiresOverridable= is used for the services + add behind Required-Start + bug #863217 - systemd overrides explicit admin request to disable a service + That is that in this version the Wants= for all services behind + Should-Start, X-Start-Before, and X-Stop-After is not used anymore + +--- + service.c | 15 +++++++++++++-- + 1 file changed, 13 insertions(+), 2 deletions(-) + +--- systemd-208/src/core/service.c ++++ systemd-208/src/core/service.c 2014-02-21 14:44:59.066735478 +0000 +@@ -380,6 +380,8 @@ static int sysv_translate_facility(const + "remote_fs", SPECIAL_REMOTE_FS_TARGET, + "syslog", NULL, + "time", SPECIAL_TIME_SYNC_TARGET, ++ "all", SPECIAL_DEFAULT_TARGET, ++ "null", NULL, + }; + + unsigned i; +@@ -389,7 +391,7 @@ static int sysv_translate_facility(const + assert(name); + assert(_r); + +- n = *name == '$' ? name + 1 : name; ++ n = (*name == '$' || *name == '+') ? name + 1 : name; + + for (i = 0; i < ELEMENTSOF(table); i += 2) { + +@@ -816,10 +818,13 @@ static int service_load_sysv_path(Servic + startswith_no_case(t, "Should-Start:") || + startswith_no_case(t, "X-Start-Before:") || + startswith_no_case(t, "X-Start-After:")) { ++ UnitDependency d, e; + char *i, *w; + size_t z; + + state = LSB; ++ d = startswith_no_case(t, "X-Start-Before:") ? UNIT_BEFORE : UNIT_AFTER; ++ e = startswith_no_case(t, "Required-Start:") ? UNIT_REQUIRES_OVERRIDABLE : _UNIT_DEPENDENCY_INVALID; + + FOREACH_WORD_QUOTED(w, z, strchr(t, ':')+1, i) { + char *n, *m; +@@ -838,12 +843,18 @@ static int service_load_sysv_path(Servic + continue; + } + ++ if (*n == '+') ++ e = UNIT_WANTS; ++ + free(n); + + if (r == 0) + continue; + +- r = unit_add_dependency_by_name(u, startswith_no_case(t, "X-Start-Before:") ? UNIT_BEFORE : UNIT_AFTER, m, NULL, true); ++ if (e != _UNIT_DEPENDENCY_INVALID) ++ r = unit_add_two_dependencies_by_name(u, d, e, m, NULL, true); ++ else ++ r = unit_add_dependency_by_name(u, d, m, NULL, true); + + if (r < 0) + log_error_unit(u->id, "[%s:%u] Failed to add dependency on %s, ignoring: %s", diff --git a/0019-make-completion-smart-to-be-able-to-redirect.patch b/0019-make-completion-smart-to-be-able-to-redirect.patch index a545cf08..89d79183 100644 --- a/0019-make-completion-smart-to-be-able-to-redirect.patch +++ b/0019-make-completion-smart-to-be-able-to-redirect.patch @@ -1,45 +1,8 @@ ---- - shell-completion/bash/coredumpctl | 6 +++++- - shell-completion/bash/hostnamectl | 6 +++++- - shell-completion/bash/journalctl | 6 +++++- - shell-completion/bash/kernel-install | 13 ++++++++++++- - shell-completion/bash/localectl | 6 +++++- - shell-completion/bash/loginctl | 6 +++++- - shell-completion/bash/systemctl.in | 6 +++++- - shell-completion/bash/systemd-analyze | 6 +++++- - shell-completion/bash/systemd-run | 14 +++++++++++++- - shell-completion/bash/timedatectl | 6 +++++- - shell-completion/bash/udevadm | 6 +++++- - 11 files changed, 70 insertions(+), 11 deletions(-) - -Index: systemd/shell-completion/bash/coredumpctl -=================================================================== ---- systemd.orig/shell-completion/bash/coredumpctl -+++ systemd/shell-completion/bash/coredumpctl -@@ -44,6 +44,10 @@ _coredumpctl() { - [DUMP]='dump gdb' - ) - -+ if __contains_word ">" ${COMP_WORDS[*]:0:COMP_CWORD}; then -+ return 0 -+ fi -+ - if __contains_word "$prev" '--output -o'; then - comps=$( compgen -A file -- "$cur" ) - compopt -o filenames -@@ -82,4 +86,4 @@ _coredumpctl() { - return 0 - } - --complete -F _coredumpctl coredumpctl -+complete -o default -o bashdefault -F _coredumpctl coredumpctl -Index: systemd/shell-completion/bash/hostnamectl -=================================================================== ---- systemd.orig/shell-completion/bash/hostnamectl -+++ systemd/shell-completion/bash/hostnamectl +--- systemd-208/shell-completion/bash/hostnamectl ++++ systemd-208/shell-completion/bash/hostnamectl 2014-01-17 14:27:16.183272019 +0000 @@ -30,6 +30,10 @@ _hostnamectl() { local OPTS='-h --help --version --transient --static --pretty - --no-ask-password -H --host --machine' + --no-ask-password -H --host' + if __contains_word ">" ${COMP_WORDS[*]:0:COMP_CWORD}; then + return 0 @@ -48,18 +11,16 @@ Index: systemd/shell-completion/bash/hostnamectl if [[ $cur = -* ]]; then COMPREPLY=( $(compgen -W '${OPTS[*]}' -- "$cur") ) return 0 -@@ -61,4 +65,4 @@ _hostnamectl() { +@@ -58,4 +62,4 @@ _hostnamectl() { return 0 } -complete -F _hostnamectl hostnamectl +complete -o default -o bashdefault -F _hostnamectl hostnamectl -Index: systemd/shell-completion/bash/journalctl -=================================================================== ---- systemd.orig/shell-completion/bash/journalctl -+++ systemd/shell-completion/bash/journalctl -@@ -55,6 +55,10 @@ _journalctl() { - --root --machine' +--- systemd-208/shell-completion/bash/journalctl ++++ systemd-208/shell-completion/bash/journalctl 2014-01-17 14:34:30.338737694 +0000 +@@ -49,6 +49,10 @@ _journalctl() { + --verify-key' ) + if __contains_word ">" ${COMP_WORDS[*]:0:COMP_CWORD}; then @@ -69,16 +30,14 @@ Index: systemd/shell-completion/bash/journalctl if __contains_word "$prev" ${OPTS[ARG]} ${OPTS[ARGUNKNOWN]}; then case $prev in --boot|--this-boot|-b) -@@ -120,4 +124,4 @@ _journalctl() { +@@ -107,4 +111,4 @@ _journalctl() { fi } -complete -F _journalctl journalctl +complete -o default -o bashdefault -F _journalctl journalctl -Index: systemd/shell-completion/bash/kernel-install -=================================================================== ---- systemd.orig/shell-completion/bash/kernel-install -+++ systemd/shell-completion/bash/kernel-install +--- systemd-208/shell-completion/bash/kernel-install ++++ systemd-208/shell-completion/bash/kernel-install 2014-01-17 14:34:41.982255874 +0000 @@ -18,11 +18,22 @@ # You should have received a copy of the GNU Lesser General Public License # along with systemd; If not, see . @@ -108,13 +67,11 @@ Index: systemd/shell-completion/bash/kernel-install -complete -F _kernel_install kernel-install +complete -o default -o bashdefault -F _kernel_install kernel-install -Index: systemd/shell-completion/bash/localectl -=================================================================== ---- systemd.orig/shell-completion/bash/localectl -+++ systemd/shell-completion/bash/localectl -@@ -36,6 +36,10 @@ _localectl() { +--- systemd-208/shell-completion/bash/localectl ++++ systemd-208/shell-completion/bash/localectl 2014-01-17 14:34:52.546235747 +0000 +@@ -30,6 +30,10 @@ _localectl() { local OPTS='-h --help --version --no-convert --no-pager --no-ask-password - -H --host --machine' + -H --host' + if __contains_word ">" ${COMP_WORDS[*]:0:COMP_CWORD}; then + return 0 @@ -123,19 +80,17 @@ Index: systemd/shell-completion/bash/localectl if __contains_word "$prev" $OPTS; then case $prev in --host|-H) -@@ -89,4 +93,4 @@ _localectl() { +@@ -73,4 +77,4 @@ _localectl() { return 0 } -complete -F _localectl localectl +complete -o default -o bashdefault -F _localectl localectl -Index: systemd/shell-completion/bash/loginctl -=================================================================== ---- systemd.orig/shell-completion/bash/loginctl -+++ systemd/shell-completion/bash/loginctl -@@ -38,6 +38,10 @@ _loginctl () { - [ARG]='--host -H --kill-who --property -p --signal -s --machine' - ) +--- systemd-208/shell-completion/bash/loginctl ++++ systemd-208/shell-completion/bash/loginctl 2014-01-17 14:35:03.386245699 +0000 +@@ -37,6 +37,10 @@ _loginctl () { + [ARG]='--host -H --kill-who --property -p --signal -s' + ) + if __contains_word ">" ${COMP_WORDS[*]:0:COMP_CWORD}; then + return 0 @@ -144,17 +99,15 @@ Index: systemd/shell-completion/bash/loginctl if __contains_word "$prev" ${OPTS[ARG]}; then case $prev in --signal|-s) -@@ -107,4 +111,4 @@ _loginctl () { +@@ -106,4 +110,4 @@ _loginctl () { return 0 } -complete -F _loginctl loginctl +complete -o default -o bashdefault -F _loginctl loginctl -Index: systemd/shell-completion/bash/systemctl.in -=================================================================== ---- systemd.orig/shell-completion/bash/systemctl.in -+++ systemd/shell-completion/bash/systemctl.in -@@ -96,6 +96,10 @@ _systemctl () { +--- systemd-208/shell-completion/bash/systemctl ++++ systemd-208/shell-completion/bash/systemctl 2014-01-17 14:35:26.506235666 +0000 +@@ -77,6 +77,10 @@ _systemctl () { [ARG]='--host -H --kill-who --property -p --signal -s --type -t --state --root' ) @@ -165,18 +118,16 @@ Index: systemd/shell-completion/bash/systemctl.in if __contains_word "--user" ${COMP_WORDS[*]}; then mode=--user else -@@ -264,4 +268,4 @@ _systemctl () { +@@ -226,4 +230,4 @@ _systemctl () { return 0 } -complete -F _systemctl systemctl +complete -o default -o bashdefault -F _systemctl systemctl -Index: systemd/shell-completion/bash/systemd-analyze -=================================================================== ---- systemd.orig/shell-completion/bash/systemd-analyze -+++ systemd/shell-completion/bash/systemd-analyze -@@ -47,6 +47,10 @@ _systemd_analyze() { - [VERIFY]='verify' +--- systemd-208/shell-completion/bash/systemd-analyze ++++ systemd-208/shell-completion/bash/systemd-analyze 2014-01-17 14:35:38.366736021 +0000 +@@ -37,6 +37,10 @@ _systemd_analyze() { + [LOG_LEVEL]='set-log-level' ) + if __contains_word ">" ${COMP_WORDS[*]:0:COMP_CWORD}; then @@ -186,16 +137,33 @@ Index: systemd/shell-completion/bash/systemd-analyze _init_completion || return for ((i=0; i < COMP_CWORD; i++)); do -@@ -114,4 +118,4 @@ _systemd_analyze() { +@@ -83,4 +87,4 @@ _systemd_analyze() { return 0 } -complete -F _systemd_analyze systemd-analyze +complete -o default -o bashdefault -F _systemd_analyze systemd-analyze -Index: systemd/shell-completion/bash/systemd-run -=================================================================== ---- systemd.orig/shell-completion/bash/systemd-run -+++ systemd/shell-completion/bash/systemd-run +--- systemd-208/shell-completion/bash/systemd-coredumpctl ++++ systemd-208/shell-completion/bash/systemd-coredumpctl 2014-01-17 14:35:46.434235632 +0000 +@@ -44,6 +44,10 @@ _coredumpctl() { + [DUMP]='dump gdb' + ) + ++ if __contains_word ">" ${COMP_WORDS[*]:0:COMP_CWORD}; then ++ return 0 ++ fi ++ + if __contains_word "$prev" '--output -o'; then + comps=$( compgen -A file -- "$cur" ) + compopt -o filenames +@@ -82,4 +86,4 @@ _coredumpctl() { + return 0 + } + +-complete -F _coredumpctl systemd-coredumpctl ++complete -o default -o bashdefault -F _coredumpctl systemd-coredumpctl +--- systemd-208/shell-completion/bash/systemd-run ++++ systemd-208/shell-completion/bash/systemd-run 2014-01-17 14:35:55.938236298 +0000 @@ -17,6 +17,13 @@ # You should have received a copy of the GNU Lesser General Public License # along with systemd; If not, see . @@ -210,7 +178,7 @@ Index: systemd/shell-completion/bash/systemd-run __systemctl() { local mode=$1; shift 1 systemctl $mode --full --no-legend "$@" -@@ -38,6 +45,11 @@ _systemd_run() { +@@ -31,6 +38,11 @@ _systemd_run() { local mode=--system local i @@ -222,19 +190,17 @@ Index: systemd/shell-completion/bash/systemd-run for (( i=1; i <= COMP_CWORD; i++ )); do if [[ ${COMP_WORDS[i]} != -* ]]; then local root_command=${COMP_WORDS[i]} -@@ -98,4 +110,4 @@ _systemd_run() { +@@ -60,4 +72,4 @@ _systemd_run() { return 0 } -complete -F _systemd_run systemd-run +complete -o default -o bashdefault -F _systemd_run systemd-run -Index: systemd/shell-completion/bash/timedatectl -=================================================================== ---- systemd.orig/shell-completion/bash/timedatectl -+++ systemd/shell-completion/bash/timedatectl +--- systemd-208/shell-completion/bash/timedatectl ++++ systemd-208/shell-completion/bash/timedatectl 2014-01-17 14:36:06.182735466 +0000 @@ -30,6 +30,10 @@ _timedatectl() { local OPTS='-h --help --version --adjust-system-clock --no-pager - --no-ask-password -H --host --machine' + --no-ask-password -H --host' + if __contains_word ">" ${COMP_WORDS[*]:0:COMP_CWORD}; then + return 0 @@ -249,10 +215,8 @@ Index: systemd/shell-completion/bash/timedatectl -complete -F _timedatectl timedatectl +complete -o default -o bashdefault -F _timedatectl timedatectl -Index: systemd/shell-completion/bash/udevadm -=================================================================== ---- systemd.orig/shell-completion/bash/udevadm -+++ systemd/shell-completion/bash/udevadm +--- systemd-208/shell-completion/bash/udevadm ++++ systemd-208/shell-completion/bash/udevadm 2014-01-17 14:36:16.406236120 +0000 @@ -36,6 +36,10 @@ _udevadm() { local verbs=(info trigger settle control monitor hwdb test-builtin test) diff --git a/1001-re-enable-by_path-links-for-ata-devices.patch b/1001-re-enable-by_path-links-for-ata-devices.patch index b4bc2d07..58bb7b25 100644 --- a/1001-re-enable-by_path-links-for-ata-devices.patch +++ b/1001-re-enable-by_path-links-for-ata-devices.patch @@ -22,14 +22,14 @@ References: bnc#770910,FATE#317063 Signed-off-by: Robert Milasan Signed-off-by: Hannes Reinecke --- - src/udev/udev-builtin-path_id.c | 53 ++++++++++++++++++++++++++++++---------- + src/udev/udev-builtin-path_id.c | 53 +++++++++++++++++++++++++++++++---------- 1 file changed, 41 insertions(+), 12 deletions(-) -Index: systemd-218/src/udev/udev-builtin-path_id.c -=================================================================== ---- systemd-218.orig/src/udev/udev-builtin-path_id.c -+++ systemd-218/src/udev/udev-builtin-path_id.c -@@ -426,6 +426,46 @@ static struct udev_device *handle_scsi_h +diff --git a/src/udev/udev-builtin-path_id.c b/src/udev/udev-builtin-path_id.c +index 0599980..fbd3fda 100644 +--- a/src/udev/udev-builtin-path_id.c ++++ b/src/udev/udev-builtin-path_id.c +@@ -339,6 +339,46 @@ static struct udev_device *handle_scsi_hyperv(struct udev_device *parent, char * return parent; } @@ -73,10 +73,10 @@ Index: systemd-218/src/udev/udev-builtin-path_id.c + return hostdev; +} + - static struct udev_device *handle_scsi(struct udev_device *parent, char **path, bool *supported_parent) { + static struct udev_device *handle_scsi(struct udev_device *parent, char **path) + { const char *devtype; - const char *name; -@@ -465,19 +505,8 @@ static struct udev_device *handle_scsi(s +@@ -375,19 +415,8 @@ static struct udev_device *handle_scsi(struct udev_device *parent, char **path) goto out; } @@ -97,3 +97,6 @@ Index: systemd-218/src/udev/udev-builtin-path_id.c goto out; } +-- +1.8.1.4 + diff --git a/1003-udev-netlink-null-rules.patch b/1003-udev-netlink-null-rules.patch index eee1415f..93756c5a 100644 --- a/1003-udev-netlink-null-rules.patch +++ b/1003-udev-netlink-null-rules.patch @@ -4,19 +4,17 @@ Subject: udev netlink null rules udevd race for netlink events (bnc#774646) --- - src/udev/udevd.c | 2 ++ + src/udev/udevd.c | 2 ++ 1 file changed, 2 insertions(+) -Index: systemd-218/src/udev/udevd.c -=================================================================== ---- systemd-218.orig/src/udev/udevd.c -+++ systemd-218/src/udev/udevd.c -@@ -1468,6 +1468,8 @@ int main(int argc, char *argv[]) { +--- systemd-206.orig/src/udev/udevd.c ++++ systemd-206/src/udev/udevd.c +@@ -1337,6 +1337,8 @@ int main(int argc, char *argv[]) dev = udev_monitor_receive_device(monitor); if (dev != NULL) { udev_device_set_usec_initialized(dev, now(CLOCK_MONOTONIC)); + if (rules == NULL) -+ rules = udev_rules_new(udev, arg_resolve_names); ++ rules = udev_rules_new(udev, resolve_names); if (event_queue_insert(dev) < 0) udev_device_unref(dev); } diff --git a/1005-create-default-links-for-primary-cd_dvd-drive.patch b/1005-create-default-links-for-primary-cd_dvd-drive.patch index 85abb1f7..e70b5758 100644 --- a/1005-create-default-links-for-primary-cd_dvd-drive.patch +++ b/1005-create-default-links-for-primary-cd_dvd-drive.patch @@ -4,16 +4,14 @@ Subject: create default links for primary cd_dvd drive cdrom_id: created links for the default cd/dvd drive (bnc#783054). --- - rules/60-cdrom_id.rules | 5 ++++- + rules/60-cdrom_id.rules | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) -Index: systemd/rules/60-cdrom_id.rules -=================================================================== ---- systemd.orig/rules/60-cdrom_id.rules -+++ systemd/rules/60-cdrom_id.rules -@@ -20,6 +20,9 @@ IMPORT{program}="cdrom_id --lock-media $ - # stale mounts after ejecting - ENV{DISK_MEDIA_CHANGE}=="?*", ENV{ID_CDROM_MEDIA}!="?*", ENV{SYSTEMD_READY}="0" +--- systemd-206.orig/rules/60-cdrom_id.rules ++++ systemd-206/rules/60-cdrom_id.rules +@@ -15,6 +15,9 @@ ENV{DISK_EJECT_REQUEST}=="?*", RUN+="cdr + # enable the receiving of media eject button events + IMPORT{program}="cdrom_id --lock-media $devnode" -KERNEL=="sr0", SYMLINK+="cdrom", OPTIONS+="link_priority=-100" +KERNEL=="sr0", ENV{ID_CDROM}=="1", SYMLINK+="cdrom", OPTIONS+="link_priority=-100" diff --git a/1006-udev-always-rename-network.patch b/1006-udev-always-rename-network.patch index f838b9ac..eb98cc2f 100644 --- a/1006-udev-always-rename-network.patch +++ b/1006-udev-always-rename-network.patch @@ -9,17 +9,15 @@ Date: Tue, 4 Mar 2014 10:29:21 +0000 Port the patch of Robert to systemd v210 and test it out. --- - src/udev/udev-event.c | 41 +++++++++++++++++++++++++++++++++++++---- - 1 file changed, 37 insertions(+), 4 deletions(-) + udev-event.c | 42 ++++++++++++++++++++++++++++++++++++++---- + 1 file changed, 38 insertions(+), 4 deletions(-) -Index: systemd-218/src/udev/udev-event.c -=================================================================== ---- systemd-218.orig/src/udev/udev-event.c -+++ systemd-218/src/udev/udev-event.c -@@ -767,20 +767,53 @@ out: - static int rename_netif(struct udev_event *event) { +--- systemd-210/src/udev/udev-event.c ++++ systemd-210/src/udev/udev-event.c 2014-03-27 13:19:06.727748307 +0000 +@@ -750,8 +750,9 @@ static int rename_netif(struct udev_even struct udev_device *dev = event->dev; + _cleanup_rtnl_unref_ sd_rtnl *rtnl = NULL; char name[IFNAMSIZ]; + char interim[IFNAMSIZ], *ptr = &interim[0]; const char *oldname; @@ -28,40 +26,43 @@ Index: systemd-218/src/udev/udev-event.c oldname = udev_device_get_sysname(dev); - strscpy(name, IFNAMSIZ, event->name); +@@ -765,12 +766,45 @@ static int rename_netif(struct udev_even + return r; - r = rtnl_set_link_name(&event->rtnl, udev_device_get_ifindex(dev), name); + r = rtnl_set_link_name(rtnl, udev_device_get_ifindex(dev), name); - if (r < 0) + if (r == 0) { -+ log_info("renamed network interface %s to %s\n", oldname, name); ++ print_kmsg("renamed network interface %s to %s\n", oldname, name); + return r; + } else if (r != -EEXIST) { - return log_error_errno(r, "Error changing net interface name '%s' to '%s': %m", oldname, name); -+ } - -- log_debug("renamed network interface '%s' to '%s'", oldname, name); + log_error("error changing net interface name %s to %s: %s", + oldname, name, strerror(-r)); +- else +- print_kmsg("renamed network interface %s to %s", oldname, name); ++ return r; ++ } ++ + /* free our own name, another process may wait for us */ + strpcpyf(&ptr, IFNAMSIZ, "rename%u", udev_device_get_ifindex(dev)); - -- return 0; -+ r = rtnl_set_link_name(&event->rtnl, udev_device_get_ifindex(dev), interim); ++ ++ r = rtnl_set_link_name(rtnl, udev_device_get_ifindex(dev), interim); + if (r < 0) { + log_error("error changing net interface name %s to %s: %s", + oldname, interim, strerror(-r)); + return r; + } -+ + + /* log temporary name */ -+ log_info("renamed network interface %s to %s\n", oldname, interim); ++ print_kmsg("renamed network interface %s to %s\n", oldname, interim); + + loop = 90 * 20; + while (loop--) { + const struct timespec duration = { 0, 1000 * 1000 * 1000 / 20 }; + nanosleep(&duration, NULL); + -+ r = rtnl_set_link_name(&event->rtnl, udev_device_get_ifindex(dev), name); ++ r = rtnl_set_link_name(rtnl, udev_device_get_ifindex(dev), name); + if (r == 0) { -+ log_info("renamed network interface %s to %s\n", interim, name); ++ print_kmsg("renamed network interface %s to %s\n", interim, name); + break; + } + @@ -71,7 +72,6 @@ Index: systemd-218/src/udev/udev-event.c + break; + } + } -+ return r; + return r; } - void udev_event_execute_rules(struct udev_event *event, diff --git a/1008-add-msft-compability-rules.patch b/1008-add-msft-compability-rules.patch new file mode 100644 index 00000000..d0117371 --- /dev/null +++ b/1008-add-msft-compability-rules.patch @@ -0,0 +1,25 @@ +--- systemd-206.orig/Makefile.am ++++ systemd-206/Makefile.am +@@ -2484,6 +2484,10 @@ dist_udevrules_DATA += \ + rules/80-hotplug-cpu-mem.rules + + # ------------------------------------------------------------------------------ ++dist_udevrules_DATA += \ ++ rules/61-msft.rules ++ ++# ------------------------------------------------------------------------------ + if ENABLE_GUDEV + if ENABLE_GTK_DOC + SUBDIRS += \ +--- /dev/null ++++ systemd-206/rules/61-msft.rules +@@ -0,0 +1,9 @@ ++# MSFT compability rules ++ACTION!="add|change", GOTO="msft_end" ++ ++ENV{DEVTYPE}=="partition", IMPORT{parent}="SCSI_IDENT_*" ++KERNEL=="sd*[!0-9]|sr*", ENV{SCSI_IDENT_LUN_T10}!="?*", IMPORT{program}="/usr/bin/sg_inq -p di --export $tempnode" ++KERNEL=="sd*|sr*", ENV{DEVTYPE}=="disk", ENV{SCSI_IDENT_LUN_T10}=="?*", SYMLINK+="disk/by-id/scsi-1$env{SCSI_IDENT_LUN_T10}" ++KERNEL=="sd*", ENV{DEVTYPE}=="partition", ENV{SCSI_IDENT_LUN_T10}=="?*", SYMLINK+="disk/by-id/scsi-1$env{SCSI_IDENT_LUN_T10}-part%n" ++ ++LABEL="msft_end" diff --git a/1009-cdrom_id-use-the-old-MMC-fallback.patch b/1009-cdrom_id-use-the-old-MMC-fallback.patch new file mode 100644 index 00000000..ada9292f --- /dev/null +++ b/1009-cdrom_id-use-the-old-MMC-fallback.patch @@ -0,0 +1,54 @@ +From a14f14976094650e17d39f3a7d15a1c68c93c333 Mon Sep 17 00:00:00 2001 +From: Lukas Nykryn +Date: Thu, 27 Feb 2014 11:06:37 +0100 +Subject: [PATCH] cdrom_id: use the old MMC fallback + +https://bugzilla.redhat.com/show_bug.cgi?id=1038015 +The problem seems to be that the your virtual DVD is emulating a really +old DVD device, and doing it kind of strangely. + +> dracut:# /lib/udev/cdrom_id --debug /dev/sr0 +> probing: '/dev/sr0' +> INQUIRY: [IMM ][Virtual CD/DVD ][0316] +> GET CONFIGURATION failed with SK=5h/ASC=24h/ACQ=00h + +So your virtual drive rejects the GET CONFIGURATION command as illegal. + +Other pre-MMC2 drives that don't accept this command usually return the +error +SK=5h,ASC=20h (invalid/unsupported command code), in which case cdrom_id +tries an older method, and then ID_CDROM_MEDIA_TRACK_COUNT_DATA gets set +and all the /dev/disk/by-label (etc) links get set up. + +The virtual drive returns the error SK=5h,ASC=24h (invalid field in +Command Descriptor Block), which cdrom_id doesn't handle, so it gives up +and the links never get made. + +The ideal solution would be to make the IMM to emulate a device that's +less than 15 years old, but I'm not going to hold my breath waiting for +that. + +So probably cdrom_id should also use the old MMC fallback when the error +is SK=5h,ASC=24h, and then all of this would work as expected. + +Suggested-by:Luca Miccini +--- + src/udev/cdrom_id/cdrom_id.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/udev/cdrom_id/cdrom_id.c src/udev/cdrom_id/cdrom_id.c +index 93467c2..33b2bc3 100644 +--- a/src/udev/cdrom_id/cdrom_id.c ++++ b/src/udev/cdrom_id/cdrom_id.c +@@ -556,7 +556,7 @@ static int cd_profiles(struct udev *udev, int fd) + if ((err != 0)) { + info_scsi_cmd_err(udev, "GET CONFIGURATION", err); + /* handle pre-MMC2 drives which do not support GET CONFIGURATION */ +- if (SK(err) == 0x5 && ASC(err) == 0x20) { ++ if (SK(err) == 0x5 && (ASC(err) == 0x20 || ASC(err) == 0x24)) { + log_debug("drive is pre-MMC2 and does not support 46h get configuration command"); + log_debug("trying to work around the problem"); + ret = cd_profiles_old_mmc(udev, fd); +-- +1.7.9.2 + diff --git a/1010-udev-increase-result-size-for-programs.patch b/1010-udev-increase-result-size-for-programs.patch new file mode 100644 index 00000000..7eb2ea72 --- /dev/null +++ b/1010-udev-increase-result-size-for-programs.patch @@ -0,0 +1,13 @@ +Index: systemd-210/src/udev/udev-rules.c +=================================================================== +--- systemd-210.orig/src/udev/udev-rules.c ++++ systemd-210/src/udev/udev-rules.c +@@ -2027,7 +2027,7 @@ int udev_rules_apply_to_event(struct ude + case TK_M_PROGRAM: { + char program[UTIL_PATH_SIZE]; + char **envp; +- char result[UTIL_PATH_SIZE]; ++ char result[UTIL_LINE_SIZE]; + + free(event->program_result); + event->program_result = NULL; diff --git a/1014-udev-update-net_id-comments.patch b/1014-udev-update-net_id-comments.patch new file mode 100644 index 00000000..6b0b7f5a --- /dev/null +++ b/1014-udev-update-net_id-comments.patch @@ -0,0 +1,102 @@ +From d4b687c96adf207f0878aebf3ce3371f6160687f Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Thu, 27 Mar 2014 15:30:09 +0100 +Subject: [PATCH] udev: update net_id comments + +Signed-off-by: Robert Milasan +--- + src/udev/udev-builtin-net_id.c | 31 +++++++++++++++---------------- + 1 file changed, 15 insertions(+), 16 deletions(-) + +diff --git a/src/udev/udev-builtin-net_id.c b/src/udev/udev-builtin-net_id.c +index 4f2b2c1..9ac07de 100644 +--- a/src/udev/udev-builtin-net_id.c ++++ b/src/udev/udev-builtin-net_id.c +@@ -33,8 +33,11 @@ + * ww -- wwan + * + * Type of names: ++ * b -- BCMA bus core number ++ * ccw -- CCW bus group name + * o -- on-board device index number + * s[f][d] -- hotplug slot index number ++ * v -- virtio number + * x -- MAC address + * [P]ps[f][d] + * -- PCI geographical location +@@ -119,12 +122,9 @@ struct netnames { + const char *pci_onboard_label; + + char usb_ports[IFNAMSIZ]; +- + char bcma_core[IFNAMSIZ]; +- +- char virtio_core[IFNAMSIZ]; +- +- char ccw_core[IFNAMSIZ]; ++ char virtio[IFNAMSIZ]; ++ char ccw_group[IFNAMSIZ]; + }; + + /* retrieve on-board index number and label from firmware */ +@@ -353,18 +353,17 @@ static int names_bcma(struct udev_device *dev, struct netnames *names) { + + static int names_virtio(struct udev_device *dev, struct netnames *names) { + struct udev_device *virtdev; +- unsigned int core; ++ unsigned int num; + + virtdev = udev_device_get_parent_with_subsystem_devtype(dev, "virtio", NULL); + if (!virtdev) + return -ENOENT; + +- /* core num */ +- if (sscanf(udev_device_get_sysname(virtdev), "virtio%u", &core) != 1) ++ if (sscanf(udev_device_get_sysname(virtdev), "virtio%u", &num) != 1) + return -EINVAL; +- /* suppress the common core == 0 */ +- if (core > 0) +- snprintf(names->virtio_core, sizeof(names->virtio_core), "v%u", core); ++ /* suppress the common num == 0 */ ++ if (num > 0) ++ snprintf(names->virtio, sizeof(names->virtio), "v%u", num); + + names->type = NET_VIRTIO; + return 0; +@@ -402,8 +401,8 @@ static int names_ccw(struct udev_device *dev, struct netnames *names) { + return -EINVAL; + + /* Store the CCW bus-ID for use as network device name */ +- rc = snprintf(names->ccw_core, sizeof(names->ccw_core), "ccw%s", bus_id); +- if (rc >= 0 && rc < (int)sizeof(names->ccw_core)) ++ rc = snprintf(names->ccw_group, sizeof(names->ccw_group), "ccw%s", bus_id); ++ if (rc >= 0 && rc < (int)sizeof(names->ccw_group)) + names->type = NET_CCWGROUP; + return 0; + } +@@ -517,7 +516,7 @@ static int builtin_net_id(struct udev_device *dev, int argc, char *argv[], bool + if (err >= 0 && names.type == NET_CCWGROUP) { + char str[IFNAMSIZ]; + +- if (snprintf(str, sizeof(str), "%s%s", prefix, names.ccw_core) < (int)sizeof(str)) ++ if (snprintf(str, sizeof(str), "%s%s", prefix, names.ccw_group) < (int)sizeof(str)) + udev_builtin_add_property(dev, test, "ID_NET_NAME_PATH", str); + goto out; + } +@@ -585,11 +584,11 @@ static int builtin_net_id(struct udev_device *dev, int argc, char *argv[], bool + char str[IFNAMSIZ]; + + if (names.pci_path[0]) +- if (snprintf(str, sizeof(str), "%s%s%s", prefix, names.pci_path, names.virtio_core) < (int)sizeof(str)) ++ if (snprintf(str, sizeof(str), "%s%s%s", prefix, names.pci_path, names.virtio) < (int)sizeof(str)) + udev_builtin_add_property(dev, test, "ID_NET_NAME_PATH", str); + + if (names.pci_slot[0]) +- if (snprintf(str, sizeof(str), "%s%s%s", prefix, names.pci_slot, names.virtio_core) < (int)sizeof(str)) ++ if (snprintf(str, sizeof(str), "%s%s%s", prefix, names.pci_slot, names.virtio) < (int)sizeof(str)) + udev_builtin_add_property(dev, test, "ID_NET_NAME_SLOT", str); + goto out; + } +-- +1.8.4.5 + diff --git a/1015-udev-persistent-naming-we-cannot-use-virtio-numbers-.patch b/1015-udev-persistent-naming-we-cannot-use-virtio-numbers-.patch new file mode 100644 index 00000000..a5e9c58f --- /dev/null +++ b/1015-udev-persistent-naming-we-cannot-use-virtio-numbers-.patch @@ -0,0 +1,99 @@ +From bf81e792f3c0aed54edf004c1c95cc6f6d81d0ee Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Thu, 27 Mar 2014 21:47:14 +0100 +Subject: [PATCH] udev: persistent naming - we cannot use virtio numbers as + they are not stable + +This reverts commit 8741f2defaf26aafe5ee0fd29954cfdf84ee519c: 'Add virtio-blk support to path_id' and +commit e3d563346c4237af23335cc6904e0662efdf62ad: 'udev: net_id - handle virtio buses'. + +Distros may want to take note of this, as it changes behavior. + +Signed-off-by: Robert Milasan +--- + src/udev/udev-builtin-net_id.c | 36 ------------------------------------ + src/udev/udev-builtin-path_id.c | 3 --- + 2 files changed, 39 deletions(-) + +Index: systemd-210/src/udev/udev-builtin-net_id.c +=================================================================== +--- systemd-210.orig/src/udev/udev-builtin-net_id.c ++++ systemd-210/src/udev/udev-builtin-net_id.c +@@ -37,7 +37,6 @@ + * ccw -- CCW bus group name + * o -- on-board device index number + * s[f][d] -- hotplug slot index number +- * v -- virtio number + * x -- MAC address + * [P]ps[f][d] + * -- PCI geographical location +@@ -123,7 +122,6 @@ struct netnames { + + char usb_ports[IFNAMSIZ]; + char bcma_core[IFNAMSIZ]; +- char virtio[IFNAMSIZ]; + char ccw_group[IFNAMSIZ]; + }; + +@@ -351,24 +349,6 @@ static int names_bcma(struct udev_device + return 0; + } + +-static int names_virtio(struct udev_device *dev, struct netnames *names) { +- struct udev_device *virtdev; +- unsigned int num; +- +- virtdev = udev_device_get_parent_with_subsystem_devtype(dev, "virtio", NULL); +- if (!virtdev) +- return -ENOENT; +- +- if (sscanf(udev_device_get_sysname(virtdev), "virtio%u", &num) != 1) +- return -EINVAL; +- /* suppress the common num == 0 */ +- if (num > 0) +- snprintf(names->virtio, sizeof(names->virtio), "v%u", num); +- +- names->type = NET_VIRTIO; +- return 0; +-} +- + static int names_ccw(struct udev_device *dev, struct netnames *names) { + struct udev_device *cdev; + const char *bus_id; +@@ -577,22 +557,6 @@ static int builtin_net_id(struct udev_de + udev_builtin_add_property(dev, test, "ID_NET_NAME_SLOT", str); + goto out; + } +- +- /* virtio bus */ +- err = names_virtio(dev, &names); +- if (err >= 0 && names.type == NET_VIRTIO) { +- char str[IFNAMSIZ]; +- +- if (names.pci_path[0]) +- if (snprintf(str, sizeof(str), "%s%s%s", prefix, names.pci_path, names.virtio) < (int)sizeof(str)) +- udev_builtin_add_property(dev, test, "ID_NET_NAME_PATH", str); +- +- if (names.pci_slot[0]) +- if (snprintf(str, sizeof(str), "%s%s%s", prefix, names.pci_slot, names.virtio) < (int)sizeof(str)) +- udev_builtin_add_property(dev, test, "ID_NET_NAME_SLOT", str); +- goto out; +- } +- + out: + return EXIT_SUCCESS; + } +Index: systemd-210/src/udev/udev-builtin-path_id.c +=================================================================== +--- systemd-210.orig/src/udev/udev-builtin-path_id.c ++++ systemd-210/src/udev/udev-builtin-path_id.c +@@ -571,9 +571,6 @@ static int builtin_path_id(struct udev_d + } else if (streq(subsys, "xen")) { + path_prepend(&path, "xen-%s", udev_device_get_sysname(parent)); + parent = skip_subsystem(parent, "xen"); +- } else if (streq(subsys, "virtio")) { +- path_prepend(&path, "virtio-pci-%s", udev_device_get_sysname(parent)); +- parent = skip_subsystem(parent, "virtio"); + } else if (streq(subsys, "scm")) { + path_prepend(&path, "scm-%s", udev_device_get_sysname(parent)); + parent = skip_subsystem(parent, "scm"); diff --git a/1016-udev-warn-when-name_to_handle_at-is-not-implemented.patch b/1016-udev-warn-when-name_to_handle_at-is-not-implemented.patch new file mode 100644 index 00000000..fcf5f374 --- /dev/null +++ b/1016-udev-warn-when-name_to_handle_at-is-not-implemented.patch @@ -0,0 +1,30 @@ +Based on e6c474723dc66cd4765fd09453d6b48bd5905ba4 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sun, 20 Apr 2014 13:57:26 -0400 +Subject: [PATCH] udev: warn when name_to_handle_at is not implemented + +We have a bunch of reports from people who have a custom kernel and +are confused why udev is not running. Issue a warning on +error. Barring an error in the code, the only error that is possible +is ENOSYS. + +https://bugzilla.redhat.com/show_bug.cgi?id=1072966 +--- + src/libudev/libudev-monitor.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +--- src/libudev/libudev-monitor.c ++++ src/libudev/libudev-monitor.c 2014-05-12 00:00:00.000000000 +0000 +@@ -115,8 +115,11 @@ static bool udev_has_devtmpfs(struct ude + int r; + + r = name_to_handle_at(AT_FDCWD, "/dev", &h.handle, &mount_id, 0); +- if (r < 0) ++ if (r < 0) { ++ if (errno != EOPNOTSUPP) ++ udev_err(udev, "name_to_handle_at on /dev: %m\n"); + return false; ++ } + + + f = fopen("/proc/self/mountinfo", "re"); diff --git a/1017-udev-serialize-synchronize-block-device-event-handli.patch b/1017-udev-serialize-synchronize-block-device-event-handli.patch new file mode 100644 index 00000000..559c0bc3 --- /dev/null +++ b/1017-udev-serialize-synchronize-block-device-event-handli.patch @@ -0,0 +1,83 @@ +From 3ebdb81ef088afd3b4c72b516beb5610f8c93a0d Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Sun, 13 Apr 2014 19:54:27 -0700 +Subject: [PATCH] udev: serialize/synchronize block device event handling with + file locks + +--- + src/udev/udevd.c | 33 +++++++++++++++++++++++++++++++-- + 1 file changed, 31 insertions(+), 2 deletions(-) + +diff --git src/udev/udevd.c src/udev/udevd.c +index f9ee368..aecd208 100644 +--- src/udev/udevd.c ++++ src/udev/udevd.c +@@ -31,6 +31,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -265,6 +266,7 @@ static void worker_new(struct event *event) + for (;;) { + struct udev_event *udev_event; + struct worker_message msg; ++ int fd_lock = -1; + int err; + + log_debug("seq %llu running", udev_device_get_seqnum(dev)); +@@ -280,6 +282,30 @@ static void worker_new(struct event *event) + if (exec_delay > 0) + udev_event->exec_delay = exec_delay; + ++ /* ++ * Take a "read lock" on the device node; this establishes ++ * a concept of device "ownership" to serialize device ++ * access. External processes holding a "write lock" will ++ * cause udev to skip the event handling; in the case udev ++ * acquired the lock, the external process will block until ++ * udev has finished its event handling. ++ */ ++ if (streq_ptr("block", udev_device_get_subsystem(dev))) { ++ struct udev_device *d = dev; ++ ++ if (streq_ptr("partition", udev_device_get_devtype(d))) ++ d = udev_device_get_parent(d); ++ ++ if (d) { ++ fd_lock = open(udev_device_get_devnode(d), O_RDONLY|O_CLOEXEC|O_NOFOLLOW|O_NONBLOCK); ++ if (fd_lock >= 0 && flock(fd_lock, LOCK_SH|LOCK_NB) < 0) { ++ log_debug("Unable to flock(%s), skipping event handling: %m", udev_device_get_devnode(d)); ++ err = -EWOULDBLOCK; ++ goto skip; ++ } ++ } ++ } ++ + /* apply rules, create node, symlinks */ + err = udev_event_execute_rules(udev_event, rules, &sigmask_orig); + +@@ -292,13 +318,16 @@ static void worker_new(struct event *event) + udev_device_update_db(dev); + } + ++ if (fd_lock >= 0) ++ close(fd_lock); ++ + /* send processed event back to libudev listeners */ + udev_monitor_send_device(worker_monitor, NULL, dev); + ++skip: + /* send udevd the result of the event execution */ + memzero(&msg, sizeof(struct worker_message)); +- if (err != 0) +- msg.exitcode = err; ++ msg.exitcode = err; + msg.pid = getpid(); + send(worker_watch[WRITE_END], &msg, sizeof(struct worker_message), 0); + +-- +1.7.9.2 + diff --git a/1018-udev-do-not-skip-the-execution-of-RUN-when-renaming-.patch b/1018-udev-do-not-skip-the-execution-of-RUN-when-renaming-.patch new file mode 100644 index 00000000..e3bd7286 --- /dev/null +++ b/1018-udev-do-not-skip-the-execution-of-RUN-when-renaming-.patch @@ -0,0 +1,140 @@ +From 1ea972174baba40dbc80c51cbfc4edc49764b59b Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Wed, 14 May 2014 00:34:49 +0200 +Subject: [PATCH] udev: do not skip the execution of RUN when renaming a + network device fails + +--- + src/test/test-udev.c | 5 ++--- + src/udev/udev-event.c | 11 +++++------ + src/udev/udev.h | 2 +- + src/udev/udevadm-test.c | 13 +++++-------- + src/udev/udevd.c | 5 ++--- + 5 files changed, 15 insertions(+), 21 deletions(-) + +diff --git src/test/test-udev.c src/test/test-udev.c +index b064744..b057cc8 100644 +--- src/test/test-udev.c ++++ src/test/test-udev.c +@@ -155,9 +155,8 @@ int main(int argc, char *argv[]) { + } + } + +- err = udev_event_execute_rules(event, rules, &sigmask_orig); +- if (err == 0) +- udev_event_execute_run(event, NULL); ++ udev_event_execute_rules(event, rules, &sigmask_orig); ++ udev_event_execute_run(event, NULL); + out: + if (event != NULL && event->fd_signal >= 0) + close(event->fd_signal); +diff --git src/udev/udev-event.c src/udev/udev-event.c +index 2cab42b..5213a4a 100644 +--- src/udev/udev-event.c ++++ src/udev/udev-event.c +@@ -776,13 +776,12 @@ static int rename_netif(struct udev_event *event) + return r; + } + +-int udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules, const sigset_t *sigmask) ++void udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules, const sigset_t *sigmask) + { + struct udev_device *dev = event->dev; +- int err = 0; + + if (udev_device_get_subsystem(dev) == NULL) +- return -1; ++ return; + + if (streq(udev_device_get_action(dev), "remove")) { + udev_device_read_db(dev, NULL); +@@ -816,9 +815,10 @@ int udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules, + event->name != NULL && !streq(event->name, udev_device_get_sysname(dev))) { + char syspath[UTIL_PATH_SIZE]; + char *pos; ++ int r; + +- err = rename_netif(event); +- if (err == 0) { ++ r = rename_netif(event); ++ if (r >= 0) { + log_debug("renamed netif to '%s'", event->name); + + /* remember old name */ +@@ -881,7 +881,6 @@ int udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules, + udev_device_unref(event->dev_db); + event->dev_db = NULL; + } +- return err; + } + + void udev_event_execute_run(struct udev_event *event, const sigset_t *sigmask) +diff --git src/udev/udev.h src/udev/udev.h +index 936adfb..62538bc 100644 +--- src/udev/udev.h ++++ src/udev/udev.h +@@ -84,7 +84,7 @@ int udev_event_apply_subsys_kernel(struct udev_event *event, const char *string, + int udev_event_spawn(struct udev_event *event, + const char *cmd, char **envp, const sigset_t *sigmask, + char *result, size_t ressize); +-int udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules, const sigset_t *sigset); ++void udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules, const sigset_t *sigset); + void udev_event_execute_run(struct udev_event *event, const sigset_t *sigset); + int udev_build_argv(struct udev *udev, char *cmd, int *argc, char *argv[]); + +diff --git src/udev/udevadm-test.c src/udev/udevadm-test.c +index 6cd311b..6a2f548 100644 +--- src/udev/udevadm-test.c ++++ src/udev/udevadm-test.c +@@ -43,7 +43,6 @@ static int adm_test(struct udev *udev, int argc, char *argv[]) + _cleanup_udev_device_unref_ struct udev_device *dev = NULL; + _cleanup_udev_event_unref_ struct udev_event *event = NULL; + sigset_t mask, sigmask_orig; +- int err; + int rc = 0, c; + + static const struct option options[] = { +@@ -139,18 +138,16 @@ static int adm_test(struct udev *udev, int argc, char *argv[]) + goto out; + } + +- err = udev_event_execute_rules(event, rules, &sigmask_orig); ++ udev_event_execute_rules(event, rules, &sigmask_orig); + + udev_list_entry_foreach(entry, udev_device_get_properties_list_entry(dev)) + printf("%s=%s\n", udev_list_entry_get_name(entry), udev_list_entry_get_value(entry)); + +- if (err == 0) { +- udev_list_entry_foreach(entry, udev_list_get_entry(&event->run_list)) { +- char program[UTIL_PATH_SIZE]; ++ udev_list_entry_foreach(entry, udev_list_get_entry(&event->run_list)) { ++ char program[UTIL_PATH_SIZE]; + +- udev_event_apply_format(event, udev_list_entry_get_name(entry), program, sizeof(program)); +- printf("run: '%s'\n", program); +- } ++ udev_event_apply_format(event, udev_list_entry_get_name(entry), program, sizeof(program)); ++ printf("run: '%s'\n", program); + } + out: + if (event != NULL && event->fd_signal >= 0) +diff --git src/udev/udevd.c src/udev/udevd.c +index aecd208..bc0696c 100644 +--- src/udev/udevd.c ++++ src/udev/udevd.c +@@ -307,10 +307,9 @@ static void worker_new(struct event *event) + } + + /* apply rules, create node, symlinks */ +- err = udev_event_execute_rules(udev_event, rules, &sigmask_orig); ++ udev_event_execute_rules(udev_event, rules, &sigmask_orig); + +- if (err == 0) +- udev_event_execute_run(udev_event, &sigmask_orig); ++ udev_event_execute_run(udev_event, &sigmask_orig); + + /* apply/restore inotify watch */ + if (err == 0 && udev_event->inotify_watch) { +-- +1.7.9.2 + diff --git a/1019-udev-avoid-use-of-uninitialized-err.patch b/1019-udev-avoid-use-of-uninitialized-err.patch new file mode 100644 index 00000000..c520436e --- /dev/null +++ b/1019-udev-avoid-use-of-uninitialized-err.patch @@ -0,0 +1,37 @@ +From bf9bead187802a52a1f376a03caee762d663e945 Mon Sep 17 00:00:00 2001 +From: Thomas Hindoe Paaboel Andersen +Date: Fri, 16 May 2014 23:46:48 +0200 +Subject: [PATCH] udev: avoid use of uninitialized err + +After 1ea972174baba40dbc80c51cbfc4edc49764b59b err is no longer +set unless we hit a special case. Initialize it to 0 and remove +a check that will never fail. +--- + src/udev/udevd.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git src/udev/udevd.c src/udev/udevd.c +index bc0696c..1c9488e 100644 +--- src/udev/udevd.c ++++ src/udev/udevd.c +@@ -267,7 +267,7 @@ static void worker_new(struct event *event) + struct udev_event *udev_event; + struct worker_message msg; + int fd_lock = -1; +- int err; ++ int err = 0; + + log_debug("seq %llu running", udev_device_get_seqnum(dev)); + udev_event = udev_event_new(dev); +@@ -312,7 +312,7 @@ static void worker_new(struct event *event) + udev_event_execute_run(udev_event, &sigmask_orig); + + /* apply/restore inotify watch */ +- if (err == 0 && udev_event->inotify_watch) { ++ if (udev_event->inotify_watch) { + udev_watch_begin(udev, dev); + udev_device_update_db(dev); + } +-- +1.7.9.2 + diff --git a/1020-udev-keyboard-also-hook-into-change-events.patch b/1020-udev-keyboard-also-hook-into-change-events.patch new file mode 100644 index 00000000..0d285973 --- /dev/null +++ b/1020-udev-keyboard-also-hook-into-change-events.patch @@ -0,0 +1,27 @@ +From 49804365ea1242456c9763058a59cf68479e07ea Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Mon, 26 May 2014 09:30:21 +0800 +Subject: [PATCH] udev: keyboard - also hook into "change" events + +Re-apply the keymaps when "udevadm trigger" is called. Hooking into +"add" only would just remove all keymap content from the udev database +instead of applying the new config. +--- + rules/60-keyboard.rules | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git rules/60-keyboard.rules rules/60-keyboard.rules +index 4e0f366..22f71e7 100644 +--- rules/60-keyboard.rules ++++ rules/60-keyboard.rules +@@ -1,6 +1,6 @@ + # do not edit this file, it will be overwritten on update + +-ACTION!="add", GOTO="keyboard_end" ++ACTION=="remove", GOTO="keyboard_end" + KERNEL!="event*", GOTO="keyboard_end" + ENV{ID_INPUT_KEY}=="", GOTO="keyboard_end" + +-- +1.7.9.2 + diff --git a/1021-udev-re-add-persistent-net-rules.patch b/1021-udev-re-add-persistent-net-rules.patch index 5d21f1fe..e8cd290c 100644 --- a/1021-udev-re-add-persistent-net-rules.patch +++ b/1021-udev-re-add-persistent-net-rules.patch @@ -1,73 +1,7 @@ ---- - Makefile.am | 9 - src/udev/net/link-config.c | 17 + - src/udev/rule_generator/75-persistent-net-generator.rules | 105 ++++++++++ - src/udev/rule_generator/76-net-sriov-names.rules | 18 + - src/udev/rule_generator/net-set-sriov-names | 79 +++++++ - src/udev/rule_generator/rule_generator.functions | 113 +++++++++++ - src/udev/rule_generator/write_net_rules | 141 ++++++++++++++ - 7 files changed, 479 insertions(+), 3 deletions(-) - -Index: systemd-218/Makefile.am -=================================================================== ---- systemd-218.orig/Makefile.am -+++ systemd-218/Makefile.am -@@ -3416,7 +3416,14 @@ dist_udevrules_DATA += \ - rules/75-tty-description.rules \ - rules/78-sound-card.rules \ - rules/80-net-setup-link.rules \ -- rules/95-udev-late.rules -+ rules/95-udev-late.rules \ -+ src/udev/rule_generator/75-persistent-net-generator.rules \ -+ src/udev/rule_generator/76-net-sriov-names.rules -+ -+udevlibexec_PROGRAMS += \ -+ src/udev/rule_generator/rule_generator.functions \ -+ src/udev/rule_generator/write_net_rules \ -+ src/udev/rule_generator/net-set-sriov-names - - nodist_udevrules_DATA += \ - rules/99-systemd.rules -Index: systemd-218/src/udev/net/link-config.c -=================================================================== ---- systemd-218.orig/src/udev/net/link-config.c -+++ systemd-218/src/udev/net/link-config.c -@@ -176,16 +176,29 @@ static bool enable_name_policy(void) { - size_t l; - - r = proc_cmdline(&line); -- if (r < 0) { -+ if (r < 0) - log_warning_errno(r, "Failed to read /proc/cmdline, ignoring: %m"); -+#if defined(NET_IFNAMES) && (NET_IFNAMES == 1) -+# warning Using persistent rules as a default -+ if (r <= 0) -+ return false; -+ -+ FOREACH_WORD_QUOTED(w, l, line, state) -+ if (strneq(w, "net.ifnames=1", l)) -+ return true; -+ -+ return false; -+#else -+# warning Using predictable rules as a default -+ if (r <= 0) - return true; -- } - - FOREACH_WORD_QUOTED(word, l, line, state) - if (strneq(word, "net.ifnames=0", l)) - return false; - - return true; -+#endif - } - - int link_config_load(link_config_ctx *ctx) { -Index: systemd-218/src/udev/rule_generator/75-persistent-net-generator.rules +Index: systemd-210/src/udev/rule_generator/75-persistent-net-generator.rules =================================================================== --- /dev/null -+++ systemd-218/src/udev/rule_generator/75-persistent-net-generator.rules ++++ systemd-210/src/udev/rule_generator/75-persistent-net-generator.rules @@ -0,0 +1,105 @@ +# do not edit this file, it will be overwritten on update + @@ -174,117 +108,10 @@ Index: systemd-218/src/udev/rule_generator/75-persistent-net-generator.rules +ENV{INTERFACE_NEW}=="?*", NAME="$env{INTERFACE_NEW}" + +LABEL="persistent_net_generator_end" -Index: systemd-218/src/udev/rule_generator/76-net-sriov-names.rules +Index: systemd-210/src/udev/rule_generator/rule_generator.functions =================================================================== --- /dev/null -+++ systemd-218/src/udev/rule_generator/76-net-sriov-names.rules -@@ -0,0 +1,18 @@ -+# do not edit this file, it will be overwritten on update -+# -+# rename SRIOV virtual function interfaces -+ -+ACTION=="remove", GOTO="net-sriov-names_end" -+SUBSYSTEM!="net", GOTO="net-sriov-names_end" -+ -+IMPORT{cmdline}="net.ifnames" -+ENV{net.ifnames}=="1", GOTO="net-sriov-names_end" -+ -+SUBSYSTEM=="net", SUBSYSTEMS=="pci", ACTION=="add", NAME=="?*", ENV{INTERFACE_NEW}="$name" -+SUBSYSTEM=="net", SUBSYSTEMS=="pci", ACTION=="add", IMPORT{program}="net-set-sriov-names" -+ -+# rename interface if needed -+ENV{INTERFACE_NEW}=="?*", NAME="$env{INTERFACE_NEW}" -+ENV{INTERFACE_NEW}=="", DRIVERS=="cxgb4vf|igbvf|ixgbevf", NAME="vf$attr{ifindex}" -+ -+LABEL="net-sriov-names_end" -Index: systemd-218/src/udev/rule_generator/net-set-sriov-names -=================================================================== ---- /dev/null -+++ systemd-218/src/udev/rule_generator/net-set-sriov-names -@@ -0,0 +1,79 @@ -+#!/bin/bash -e -+# -+# This script is run to rename virtual interfaces -+# -+ -+if [ -n "$UDEV_LOG" ]; then -+ if [ "$UDEV_LOG" -ge 7 ]; then -+ set -x -+ fi -+fi -+ -+# according to dev_new_index(), ifindex is within [1, INT_MAX] -+int_max=$(/usr/bin/getconf INT_MAX) -+ifindex_before() { -+ a=$1 -+ b=$2 -+ -+ ((0 < (b - a) && (b - a) < int_max / 2 || -+ -1 * int_max < (b - a) && (b - a) < -1 * int_max / 2)) -+} -+ -+rename_interface() { -+ local src_net=$1 -+ local dest_net=$2 -+ local err=0 -+ -+ /sbin/ip link set dev $src_net down -+ /sbin/ip link set dev $src_net name $dest_net -+} -+ -+if [ -z "$INTERFACE" ]; then -+ echo "missing \$INTERFACE" >&2 -+ exit 1 -+fi -+ -+if [ -e "/sys/class/net/$INTERFACE/device/physfn" ]; then -+ pf=$(ls -1 "/sys/class/net/$INTERFACE/device/physfn/net") -+ if [ $(echo "$pf" | wc -l) -ne 1 ]; then -+ echo "too many pf's" >&2 -+ exit 1 -+ fi -+ read vfindex < "/sys/class/net/$INTERFACE/ifindex" -+ read pfindex < "/sys/class/net/$pf/ifindex" -+ if ifindex_before $pfindex $vfindex; then -+ bus_info=$(basename $(readlink "/sys/class/net/$INTERFACE/device")) -+ for virtfn in "/sys/class/net/$pf/device/"virtfn*; do -+ if [ "$(basename $(readlink "$virtfn"))" = "$bus_info" ]; then -+ vfnum=$(basename "$virtfn") -+ vfnum=${vfnum#virtfn} -+ echo "INTERFACE_NEW=$pf.vf$vfnum" -+ exit 0 -+ fi -+ done -+ fi -+fi -+ -+read pfindex < "/sys/class/net/$INTERFACE/ifindex" -+shopt -s nullglob -+for virtfn in "/sys/class/net/$INTERFACE/device/"virtfn*; do -+ vf=$(ls -1 "$virtfn/net") -+ if [ $(echo "$vf" | wc -l) -ne 1 ]; then -+ echo "too many vf's" >&2 -+ exit 1 -+ fi -+ read vfindex < "/sys/class/net/$vf/ifindex" -+ if ifindex_before $vfindex $pfindex; then -+ vfnum=$(basename "$virtfn") -+ vfnum=${vfnum#virtfn} -+ if [ "$INTERFACE_NEW" ]; then -+ new_name=$INTERFACE_NEW -+ else -+ new_name=$INTERFACE -+ fi -+ new_name="$new_name.vf$vfnum" -+ if [ "$vf" != "$new_name" ]; then -+ rename_interface "$vf" "$new_name" -+ fi -+ fi -+done -Index: systemd-218/src/udev/rule_generator/rule_generator.functions -=================================================================== ---- /dev/null -+++ systemd-218/src/udev/rule_generator/rule_generator.functions ++++ systemd-210/src/udev/rule_generator/rule_generator.functions @@ -0,0 +1,113 @@ +# functions used by the udev rule generator + @@ -399,10 +226,10 @@ Index: systemd-218/src/udev/rule_generator/rule_generator.functions + $([ -e $RULES_FILE ] && echo $RULES_FILE) \ + 2>/dev/null) +} -Index: systemd-218/src/udev/rule_generator/write_net_rules +Index: systemd-210/src/udev/rule_generator/write_net_rules =================================================================== --- /dev/null -+++ systemd-218/src/udev/rule_generator/write_net_rules ++++ systemd-210/src/udev/rule_generator/write_net_rules @@ -0,0 +1,141 @@ +#!/bin/sh -e + @@ -545,3 +372,161 @@ Index: systemd-218/src/udev/rule_generator/write_net_rules +unlock_rules_file + +exit 0 +Index: systemd-210/Makefile.am +=================================================================== +--- systemd-210.orig/Makefile.am ++++ systemd-210/Makefile.am +@@ -2552,7 +2552,14 @@ dist_udevrules_DATA += \ + rules/75-tty-description.rules \ + rules/78-sound-card.rules \ + rules/80-net-setup-link.rules \ +- rules/95-udev-late.rules ++ rules/95-udev-late.rules \ ++ src/udev/rule_generator/75-persistent-net-generator.rules \ ++ src/udev/rule_generator/76-net-sriov-names.rules ++ ++udevlibexec_PROGRAMS += \ ++ src/udev/rule_generator/rule_generator.functions \ ++ src/udev/rule_generator/write_net_rules \ ++ src/udev/rule_generator/net-set-sriov-names + + dist_udevhwdb_DATA = \ + hwdb/20-pci-vendor-model.hwdb \ +Index: systemd-210/src/udev/rule_generator/76-net-sriov-names.rules +=================================================================== +--- /dev/null ++++ systemd-210/src/udev/rule_generator/76-net-sriov-names.rules +@@ -0,0 +1,18 @@ ++# do not edit this file, it will be overwritten on update ++# ++# rename SRIOV virtual function interfaces ++ ++ACTION=="remove", GOTO="net-sriov-names_end" ++SUBSYSTEM!="net", GOTO="net-sriov-names_end" ++ ++IMPORT{cmdline}="net.ifnames" ++ENV{net.ifnames}=="1", GOTO="net-sriov-names_end" ++ ++SUBSYSTEM=="net", SUBSYSTEMS=="pci", ACTION=="add", NAME=="?*", ENV{INTERFACE_NEW}="$name" ++SUBSYSTEM=="net", SUBSYSTEMS=="pci", ACTION=="add", IMPORT{program}="net-set-sriov-names" ++ ++# rename interface if needed ++ENV{INTERFACE_NEW}=="?*", NAME="$env{INTERFACE_NEW}" ++ENV{INTERFACE_NEW}=="", DRIVERS=="cxgb4vf|igbvf|ixgbevf", NAME="vf$attr{ifindex}" ++ ++LABEL="net-sriov-names_end" +Index: systemd-210/src/udev/rule_generator/net-set-sriov-names +=================================================================== +--- /dev/null ++++ systemd-210/src/udev/rule_generator/net-set-sriov-names +@@ -0,0 +1,79 @@ ++#!/bin/bash -e ++# ++# This script is run to rename virtual interfaces ++# ++ ++if [ -n "$UDEV_LOG" ]; then ++ if [ "$UDEV_LOG" -ge 7 ]; then ++ set -x ++ fi ++fi ++ ++# according to dev_new_index(), ifindex is within [1, INT_MAX] ++int_max=$(/usr/bin/getconf INT_MAX) ++ifindex_before() { ++ a=$1 ++ b=$2 ++ ++ ((0 < (b - a) && (b - a) < int_max / 2 || ++ -1 * int_max < (b - a) && (b - a) < -1 * int_max / 2)) ++} ++ ++rename_interface() { ++ local src_net=$1 ++ local dest_net=$2 ++ local err=0 ++ ++ /sbin/ip link set dev $src_net down ++ /sbin/ip link set dev $src_net name $dest_net ++} ++ ++if [ -z "$INTERFACE" ]; then ++ echo "missing \$INTERFACE" >&2 ++ exit 1 ++fi ++ ++if [ -e "/sys/class/net/$INTERFACE/device/physfn" ]; then ++ pf=$(ls -1 "/sys/class/net/$INTERFACE/device/physfn/net") ++ if [ $(echo "$pf" | wc -l) -ne 1 ]; then ++ echo "too many pf's" >&2 ++ exit 1 ++ fi ++ read vfindex < "/sys/class/net/$INTERFACE/ifindex" ++ read pfindex < "/sys/class/net/$pf/ifindex" ++ if ifindex_before $pfindex $vfindex; then ++ bus_info=$(basename $(readlink "/sys/class/net/$INTERFACE/device")) ++ for virtfn in "/sys/class/net/$pf/device/"virtfn*; do ++ if [ "$(basename $(readlink "$virtfn"))" = "$bus_info" ]; then ++ vfnum=$(basename "$virtfn") ++ vfnum=${vfnum#virtfn} ++ echo "INTERFACE_NEW=$pf.vf$vfnum" ++ exit 0 ++ fi ++ done ++ fi ++fi ++ ++read pfindex < "/sys/class/net/$INTERFACE/ifindex" ++shopt -s nullglob ++for virtfn in "/sys/class/net/$INTERFACE/device/"virtfn*; do ++ vf=$(ls -1 "$virtfn/net") ++ if [ $(echo "$vf" | wc -l) -ne 1 ]; then ++ echo "too many vf's" >&2 ++ exit 1 ++ fi ++ read vfindex < "/sys/class/net/$vf/ifindex" ++ if ifindex_before $vfindex $pfindex; then ++ vfnum=$(basename "$virtfn") ++ vfnum=${vfnum#virtfn} ++ if [ "$INTERFACE_NEW" ]; then ++ new_name=$INTERFACE_NEW ++ else ++ new_name=$INTERFACE ++ fi ++ new_name="$new_name.vf$vfnum" ++ if [ "$vf" != "$new_name" ]; then ++ rename_interface "$vf" "$new_name" ++ fi ++ fi ++done +Index: systemd-210/src/udev/net/link-config.c +=================================================================== +--- systemd-210.orig/src/udev/net/link-config.c ++++ systemd-210/src/udev/net/link-config.c +@@ -193,6 +193,18 @@ static bool enable_name_policy(void) { + r = proc_cmdline(&line); + if (r < 0) + log_warning("Failed to read /proc/cmdline, ignoring: %s", strerror(-r)); ++#if defined(NET_IFNAMES) && (NET_IFNAMES == 1) ++# warning Using persistent rules as a default ++ if (r <= 0) ++ return false; ++ ++ FOREACH_WORD_QUOTED(w, l, line, state) ++ if (strneq(w, "net.ifnames=1", l)) ++ return true; ++ ++ return false; ++#else ++# warning Using predictable rules as a default + if (r <= 0) + return true; + +@@ -201,6 +213,7 @@ static bool enable_name_policy(void) { + return false; + + return true; ++#endif + } + + int link_config_load(link_config_ctx *ctx) { diff --git a/1022-udev-remove-seqnum-API-and-all-assumptions-about-seq.patch b/1022-udev-remove-seqnum-API-and-all-assumptions-about-seq.patch new file mode 100644 index 00000000..39e385c0 --- /dev/null +++ b/1022-udev-remove-seqnum-API-and-all-assumptions-about-seq.patch @@ -0,0 +1,1445 @@ +From 9ea28c55a2488e6cd4a44ac5786f12b71ad5bc9f Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Sat, 12 Apr 2014 22:35:50 -0700 +Subject: [PATCH] udev: remove seqnum API and all assumptions about seqnums + +The way the kernel namespaces have been implemented breaks assumptions +udev made regarding uevent sequence numbers. Creating devices in a +namespace "steals" uevents and its sequence numbers from the host. It +confuses the "udevadmin settle" logic, which might block until util a +timeout is reached, even when no uevent is pending. + +Remove any assumptions about sequence numbers and deprecate libudev's +API exposing these numbers; none of that can reliably be used anymore +when namespaces are involved. +--- + Makefile.am | 6 +- + man/udevadm.xml | 22 -- + src/libudev/libudev-monitor.c | 17 +- + src/libudev/libudev-queue-private.c | 406 ----------------------------------- + src/libudev/libudev-queue.c | 302 ++------------------------ + src/libudev/libudev.h | 10 +- + src/shared/udev-util.h | 2 - + src/test/test-libudev.c | 24 --- + src/udev/udev-ctrl.c | 2 +- + src/udev/udevadm-settle.c | 131 ++--------- + src/udev/udevd.c | 59 +++-- + 11 files changed, 84 insertions(+), 897 deletions(-) + delete mode 100644 src/libudev/libudev-queue-private.c + +diff --git Makefile.am Makefile.am +index 5d84605..0ad1729 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -2587,8 +2587,7 @@ noinst_LTLIBRARIES += \ + + libudev_internal_la_SOURCES =\ + $(libudev_la_SOURCES) \ +- src/libudev/libudev-device-private.c \ +- src/libudev/libudev-queue-private.c ++ src/libudev/libudev-device-private.c + + libudev_internal_la_CFLAGS = \ + $(AM_CFLAGS) \ +@@ -5169,6 +5168,9 @@ test_libsystemd_sym_LDADD = \ + + test_libudev_sym_SOURCES = \ + test-libudev-sym.c ++test_libudev_sym_CFLAGS = \ ++ $(AM_CFLAGS) \ ++ -Wno-deprecated-declarations + test_libudev_sym_LDADD = \ + libudev.la + +diff --git man/udevadm.xml man/udevadm.xml +index 21d1443..fbfa85a 100644 +--- a/man/udevadm.xml ++++ b/man/udevadm.xml +@@ -339,21 +339,6 @@ + + + +- +- +- +- Wait only for events after the given sequence +- number. +- +- +- +- +- +- +- Wait only for events before the given sequence number. +- +- +- + + + +@@ -361,13 +346,6 @@ + + + +- +- +- +- Do not print any output, like the remaining queue entries when reaching the timeout. +- +- +- + + + +diff --git src/libudev/libudev-monitor.c src/libudev/libudev-monitor.c +index ba1b04d..3f7436b 100644 +--- a/src/libudev/libudev-monitor.c ++++ b/src/libudev/libudev-monitor.c +@@ -146,21 +146,6 @@ static bool udev_has_devtmpfs(struct udev *udev) { + return false; + } + +-/* we consider udev running when we have running udev service */ +-static bool udev_has_service(struct udev *udev) { +- struct udev_queue *queue; +- bool active; +- +- queue = udev_queue_new(udev); +- if (!queue) +- return false; +- +- active = udev_queue_get_udev_is_active(queue); +- udev_queue_unref(queue); +- +- return active; +-} +- + struct udev_monitor *udev_monitor_new_from_netlink_fd(struct udev *udev, const char *name, int fd) + { + struct udev_monitor *udev_monitor; +@@ -184,7 +169,7 @@ struct udev_monitor *udev_monitor_new_from_netlink_fd(struct udev *udev, const c + * We do not set a netlink multicast group here, so the socket + * will not receive any messages. + */ +- if (!udev_has_service(udev) && !udev_has_devtmpfs(udev)) { ++ if (access("/run/udev/control", F_OK) < 0 && !udev_has_devtmpfs(udev)) { + udev_dbg(udev, "the udev service seems not to be active, disable the monitor\n"); + group = UDEV_MONITOR_NONE; + } else +diff --git src/libudev/libudev-queue-private.c src/libudev/libudev-queue-private.c +deleted file mode 100644 +index d5a2b50..0000000 +--- a/src/libudev/libudev-queue-private.c ++++ /dev/null +@@ -1,406 +0,0 @@ +-/*** +- This file is part of systemd. +- +- Copyright 2008-2012 Kay Sievers +- Copyright 2009 Alan Jenkins +- +- systemd is free software; you can redistribute it and/or modify it +- under the terms of the GNU Lesser General Public License as published by +- the Free Software Foundation; either version 2.1 of the License, or +- (at your option) any later version. +- +- systemd is distributed in the hope that it will be useful, but +- WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- Lesser General Public License for more details. +- +- You should have received a copy of the GNU Lesser General Public License +- along with systemd; If not, see . +-***/ +- +-/* +- * DISCLAIMER - The file format mentioned here is private to udev/libudev, +- * and may be changed without notice. +- * +- * The udev event queue is exported as a binary log file. +- * Each log record consists of a sequence number followed by the device path. +- * +- * When a new event is queued, its details are appended to the log. +- * When the event finishes, a second record is appended to the log +- * with the same sequence number but a devpath len of 0. +- * +- * Example: +- * { 0x0000000000000001 } +- * { 0x0000000000000001, 0x0019, "/devices/virtual/mem/null" }, +- * { 0x0000000000000002, 0x001b, "/devices/virtual/mem/random" }, +- * { 0x0000000000000001, 0x0000 }, +- * { 0x0000000000000003, 0x0019, "/devices/virtual/mem/zero" }, +- * +- * Events 2 and 3 are still queued, but event 1 has finished. +- * +- * The queue does not grow indefinitely. It is periodically re-created +- * to remove finished events. Atomic rename() makes this transparent to readers. +- * +- * The queue file starts with a single sequence number which specifies the +- * minimum sequence number in the log that follows. Any events prior to this +- * sequence number have already finished. +- */ +- +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +- +-#include "libudev.h" +-#include "libudev-private.h" +- +-static int rebuild_queue_file(struct udev_queue_export *udev_queue_export); +- +-struct udev_queue_export { +- struct udev *udev; +- int queued_count; /* number of unfinished events exported in queue file */ +- FILE *queue_file; +- unsigned long long int seqnum_max; /* earliest sequence number in queue file */ +- unsigned long long int seqnum_min; /* latest sequence number in queue file */ +- int waste_bytes; /* queue file bytes wasted on finished events */ +-}; +- +-struct udev_queue_export *udev_queue_export_new(struct udev *udev) +-{ +- struct udev_queue_export *udev_queue_export; +- unsigned long long int initial_seqnum; +- +- if (udev == NULL) +- return NULL; +- +- udev_queue_export = new0(struct udev_queue_export, 1); +- if (udev_queue_export == NULL) +- return NULL; +- udev_queue_export->udev = udev; +- +- initial_seqnum = udev_get_kernel_seqnum(udev); +- udev_queue_export->seqnum_min = initial_seqnum; +- udev_queue_export->seqnum_max = initial_seqnum; +- +- udev_queue_export_cleanup(udev_queue_export); +- if (rebuild_queue_file(udev_queue_export) != 0) { +- free(udev_queue_export); +- return NULL; +- } +- +- return udev_queue_export; +-} +- +-struct udev_queue_export *udev_queue_export_unref(struct udev_queue_export *udev_queue_export) +-{ +- if (udev_queue_export == NULL) +- return NULL; +- if (udev_queue_export->queue_file != NULL) +- fclose(udev_queue_export->queue_file); +- free(udev_queue_export); +- return NULL; +-} +- +-void udev_queue_export_cleanup(struct udev_queue_export *udev_queue_export) +-{ +- if (udev_queue_export == NULL) +- return; +- unlink("/run/udev/queue.tmp"); +- unlink("/run/udev/queue.bin"); +-} +- +-static int skip_to(FILE *file, long offset) +-{ +- long old_offset; +- +- /* fseek may drop buffered data, avoid it for small seeks */ +- old_offset = ftell(file); +- if (offset > old_offset && offset - old_offset <= BUFSIZ) { +- size_t skip_bytes = offset - old_offset; +- char *buf = alloca(skip_bytes); +- +- if (fread(buf, skip_bytes, 1, file) != skip_bytes) +- return -1; +- } +- +- return fseek(file, offset, SEEK_SET); +-} +- +-struct queue_devpaths { +- unsigned int devpaths_first; /* index of first queued event */ +- unsigned int devpaths_size; +- long devpaths[]; /* seqnum -> offset of devpath in queue file (or 0) */ +-}; +- +-/* +- * Returns a table mapping seqnum to devpath file offset for currently queued events. +- * devpaths[i] represents the event with seqnum = i + udev_queue_export->seqnum_min. +- */ +-static struct queue_devpaths *build_index(struct udev_queue_export *udev_queue_export) +-{ +- struct queue_devpaths *devpaths; +- unsigned long long int range; +- long devpath_offset; +- ssize_t devpath_len; +- unsigned long long int seqnum; +- unsigned long long int n; +- unsigned int i; +- +- /* seek to the first event in the file */ +- rewind(udev_queue_export->queue_file); +- udev_queue_read_seqnum(udev_queue_export->queue_file, &seqnum); +- +- /* allocate the table */ +- range = udev_queue_export->seqnum_min - udev_queue_export->seqnum_max; +- if (range - 1 > INT_MAX) { +- udev_err(udev_queue_export->udev, "queue file overflow\n"); +- return NULL; +- } +- devpaths = malloc0(sizeof(struct queue_devpaths) + (range + 1) * sizeof(long)); +- if (devpaths == NULL) +- return NULL; +- devpaths->devpaths_size = range + 1; +- +- /* read all records and populate the table */ +- for (;;) { +- if (udev_queue_read_seqnum(udev_queue_export->queue_file, &seqnum) < 0) +- break; +- n = seqnum - udev_queue_export->seqnum_max; +- if (n >= devpaths->devpaths_size) +- goto read_error; +- +- devpath_offset = ftell(udev_queue_export->queue_file); +- devpath_len = udev_queue_skip_devpath(udev_queue_export->queue_file); +- if (devpath_len < 0) +- goto read_error; +- +- if (devpath_len > 0) +- devpaths->devpaths[n] = devpath_offset; +- else +- devpaths->devpaths[n] = 0; +- } +- +- /* find first queued event */ +- for (i = 0; i < devpaths->devpaths_size; i++) { +- if (devpaths->devpaths[i] != 0) +- break; +- } +- devpaths->devpaths_first = i; +- +- return devpaths; +- +-read_error: +- udev_err(udev_queue_export->udev, "queue file corrupted\n"); +- free(devpaths); +- return NULL; +-} +- +-static int rebuild_queue_file(struct udev_queue_export *udev_queue_export) +-{ +- unsigned long long int seqnum; +- struct queue_devpaths *devpaths = NULL; +- FILE *new_queue_file = NULL; +- unsigned int i; +- +- /* read old queue file */ +- if (udev_queue_export->queue_file != NULL) { +- devpaths = build_index(udev_queue_export); +- if (devpaths != NULL) +- udev_queue_export->seqnum_max += devpaths->devpaths_first; +- } +- if (devpaths == NULL) { +- udev_queue_export->queued_count = 0; +- udev_queue_export->seqnum_max = udev_queue_export->seqnum_min; +- } +- +- /* create new queue file */ +- new_queue_file = fopen("/run/udev/queue.tmp", "w+e"); +- if (new_queue_file == NULL) +- goto error; +- seqnum = udev_queue_export->seqnum_max; +- fwrite(&seqnum, 1, sizeof(unsigned long long int), new_queue_file); +- +- /* copy unfinished events only to the new file */ +- if (devpaths != NULL) { +- for (i = devpaths->devpaths_first; i < devpaths->devpaths_size; i++) { +- char devpath[UTIL_PATH_SIZE]; +- int err; +- unsigned short devpath_len; +- +- if (devpaths->devpaths[i] != 0) +- { +- skip_to(udev_queue_export->queue_file, devpaths->devpaths[i]); +- err = udev_queue_read_devpath(udev_queue_export->queue_file, devpath, sizeof(devpath)); +- devpath_len = err; +- +- fwrite(&seqnum, sizeof(unsigned long long int), 1, new_queue_file); +- fwrite(&devpath_len, sizeof(unsigned short), 1, new_queue_file); +- fwrite(devpath, 1, devpath_len, new_queue_file); +- } +- seqnum++; +- } +- free(devpaths); +- devpaths = NULL; +- } +- fflush(new_queue_file); +- if (ferror(new_queue_file)) +- goto error; +- +- /* rename the new file on top of the old one */ +- if (rename("/run/udev/queue.tmp", "/run/udev/queue.bin") != 0) +- goto error; +- +- if (udev_queue_export->queue_file != NULL) +- fclose(udev_queue_export->queue_file); +- udev_queue_export->queue_file = new_queue_file; +- udev_queue_export->waste_bytes = 0; +- +- return 0; +- +-error: +- udev_err(udev_queue_export->udev, "failed to create queue file: %m\n"); +- udev_queue_export_cleanup(udev_queue_export); +- +- if (udev_queue_export->queue_file != NULL) { +- fclose(udev_queue_export->queue_file); +- udev_queue_export->queue_file = NULL; +- } +- if (new_queue_file != NULL) +- fclose(new_queue_file); +- +- if (devpaths != NULL) +- free(devpaths); +- udev_queue_export->queued_count = 0; +- udev_queue_export->waste_bytes = 0; +- udev_queue_export->seqnum_max = udev_queue_export->seqnum_min; +- +- return -1; +-} +- +-static int write_queue_record(struct udev_queue_export *udev_queue_export, +- unsigned long long int seqnum, const char *devpath, size_t devpath_len) +-{ +- unsigned short len; +- +- if (udev_queue_export->queue_file == NULL) +- return -1; +- +- if (fwrite(&seqnum, sizeof(unsigned long long int), 1, udev_queue_export->queue_file) != 1) +- goto write_error; +- +- len = (devpath_len < USHRT_MAX) ? devpath_len : USHRT_MAX; +- if (fwrite(&len, sizeof(unsigned short), 1, udev_queue_export->queue_file) != 1) +- goto write_error; +- if (len > 0) { +- if (fwrite(devpath, 1, len, udev_queue_export->queue_file) != len) +- goto write_error; +- } +- +- /* *must* flush output; caller may fork */ +- if (fflush(udev_queue_export->queue_file) != 0) +- goto write_error; +- +- return 0; +- +-write_error: +- /* if we failed half way through writing a record to a file, +- we should not try to write any further records to it. */ +- udev_err(udev_queue_export->udev, "error writing to queue file: %m\n"); +- fclose(udev_queue_export->queue_file); +- udev_queue_export->queue_file = NULL; +- +- return -1; +-} +- +-enum device_state { +- DEVICE_QUEUED, +- DEVICE_FINISHED, +-}; +- +-static inline size_t queue_record_size(size_t devpath_len) +-{ +- return sizeof(unsigned long long int) + sizeof(unsigned short int) + devpath_len; +-} +- +-static int update_queue(struct udev_queue_export *udev_queue_export, +- struct udev_device *udev_device, enum device_state state) +-{ +- unsigned long long int seqnum = udev_device_get_seqnum(udev_device); +- const char *devpath = NULL; +- size_t devpath_len = 0; +- int bytes; +- int err; +- +- /* FINISHED records have a zero length devpath */ +- if (state == DEVICE_QUEUED) { +- devpath = udev_device_get_devpath(udev_device); +- devpath_len = strlen(devpath); +- } +- +- /* recover from an earlier failed rebuild */ +- if (udev_queue_export->queue_file == NULL) { +- if (rebuild_queue_file(udev_queue_export) != 0) +- return -1; +- } +- +- /* if we're removing the last event from the queue, that's the best time to rebuild it */ +- if (state != DEVICE_QUEUED && udev_queue_export->queued_count == 1) { +- /* we don't need to read the old queue file */ +- fclose(udev_queue_export->queue_file); +- udev_queue_export->queue_file = NULL; +- rebuild_queue_file(udev_queue_export); +- return 0; +- } +- +- /* try to rebuild the queue files before they grow larger than one page. */ +- bytes = ftell(udev_queue_export->queue_file) + queue_record_size(devpath_len); +- if ((udev_queue_export->waste_bytes > bytes / 2) && bytes > 4096) +- rebuild_queue_file(udev_queue_export); +- +- /* don't record a finished event, if we already dropped the event in a failed rebuild */ +- if (seqnum < udev_queue_export->seqnum_max) +- return 0; +- +- /* now write to the queue */ +- if (state == DEVICE_QUEUED) { +- udev_queue_export->queued_count++; +- udev_queue_export->seqnum_min = seqnum; +- } else { +- udev_queue_export->waste_bytes += queue_record_size(devpath_len) + queue_record_size(0); +- udev_queue_export->queued_count--; +- } +- err = write_queue_record(udev_queue_export, seqnum, devpath, devpath_len); +- +- /* try to handle ENOSPC */ +- if (err != 0 && udev_queue_export->queued_count == 0) { +- udev_queue_export_cleanup(udev_queue_export); +- err = rebuild_queue_file(udev_queue_export); +- } +- +- return err; +-} +- +-static int update(struct udev_queue_export *udev_queue_export, +- struct udev_device *udev_device, enum device_state state) +-{ +- if (update_queue(udev_queue_export, udev_device, state) != 0) +- return -1; +- +- return 0; +-} +- +-int udev_queue_export_device_queued(struct udev_queue_export *udev_queue_export, struct udev_device *udev_device) +-{ +- return update(udev_queue_export, udev_device, DEVICE_QUEUED); +-} +- +-int udev_queue_export_device_finished(struct udev_queue_export *udev_queue_export, struct udev_device *udev_device) +-{ +- return update(udev_queue_export, udev_device, DEVICE_FINISHED); +-} +diff --git src/libudev/libudev-queue.c src/libudev/libudev-queue.c +index 2cb4d67..eb0e096 100644 +--- a/src/libudev/libudev-queue.c ++++ b/src/libudev/libudev-queue.c +@@ -24,8 +24,6 @@ + #include + #include + #include +-#include +-#include + #include + #include + +@@ -36,10 +34,7 @@ + * SECTION:libudev-queue + * @short_description: access to currently active events + * +- * The udev daemon processes events asynchronously. All events which do not have +- * interdependencies run in parallel. This exports the current state of the +- * event processing queue, and the current event sequence numbers from the kernel +- * and the udev daemon. ++ * This exports the current state of the udev processing queue. + */ + + /** +@@ -50,7 +45,6 @@ + struct udev_queue { + struct udev *udev; + int refcount; +- struct udev_list queue_list; + }; + + /** +@@ -72,9 +66,9 @@ _public_ struct udev_queue *udev_queue_new(struct udev *udev) + udev_queue = new0(struct udev_queue, 1); + if (udev_queue == NULL) + return NULL; ++ + udev_queue->refcount = 1; + udev_queue->udev = udev; +- udev_list_init(udev, &udev_queue->queue_list, false); + return udev_queue; + } + +@@ -90,6 +84,7 @@ _public_ struct udev_queue *udev_queue_ref(struct udev_queue *udev_queue) + { + if (udev_queue == NULL) + return NULL; ++ + udev_queue->refcount++; + return udev_queue; + } +@@ -107,10 +102,11 @@ _public_ struct udev_queue *udev_queue_unref(struct udev_queue *udev_queue) + { + if (udev_queue == NULL) + return NULL; ++ + udev_queue->refcount--; + if (udev_queue->refcount > 0) + return NULL; +- udev_list_cleanup(&udev_queue->queue_list); ++ + free(udev_queue); + return NULL; + } +@@ -130,141 +126,30 @@ _public_ struct udev *udev_queue_get_udev(struct udev_queue *udev_queue) + return udev_queue->udev; + } + +-unsigned long long int udev_get_kernel_seqnum(struct udev *udev) +-{ +- unsigned long long int seqnum; +- int fd; +- char buf[32]; +- ssize_t len; +- +- fd = open("/sys/kernel/uevent_seqnum", O_RDONLY|O_CLOEXEC); +- if (fd < 0) +- return 0; +- len = read(fd, buf, sizeof(buf)); +- close(fd); +- if (len <= 2) +- return 0; +- buf[len-1] = '\0'; +- seqnum = strtoull(buf, NULL, 10); +- return seqnum; +-} +- + /** + * udev_queue_get_kernel_seqnum: + * @udev_queue: udev queue context + * +- * Get the current kernel event sequence number. ++ * This function is deprecated. + * +- * Returns: the sequence number. ++ * Returns: 0. + **/ + _public_ unsigned long long int udev_queue_get_kernel_seqnum(struct udev_queue *udev_queue) + { +- unsigned long long int seqnum; +- +- if (udev_queue == NULL) +- return -EINVAL; +- +- seqnum = udev_get_kernel_seqnum(udev_queue->udev); +- return seqnum; +-} +- +-int udev_queue_read_seqnum(FILE *queue_file, unsigned long long int *seqnum) +-{ +- if (fread(seqnum, sizeof(unsigned long long int), 1, queue_file) != 1) +- return -1; +- + return 0; + } + +-ssize_t udev_queue_skip_devpath(FILE *queue_file) +-{ +- unsigned short int len; +- +- if (fread(&len, sizeof(unsigned short int), 1, queue_file) == 1) { +- char *devpath = alloca(len); +- +- /* use fread to skip, fseek might drop buffered data */ +- if (fread(devpath, 1, len, queue_file) == len) +- return len; +- } +- +- return -1; +-} +- +-ssize_t udev_queue_read_devpath(FILE *queue_file, char *devpath, size_t size) +-{ +- unsigned short int read_bytes = 0; +- unsigned short int len; +- +- if (fread(&len, sizeof(unsigned short int), 1, queue_file) != 1) +- return -1; +- +- read_bytes = (len < size - 1) ? len : size - 1; +- if (fread(devpath, 1, read_bytes, queue_file) != read_bytes) +- return -1; +- devpath[read_bytes] = '\0'; +- +- /* if devpath was too long, skip unread characters */ +- if (read_bytes != len) { +- unsigned short int skip_bytes = len - read_bytes; +- char *buf = alloca(skip_bytes); +- +- if (fread(buf, 1, skip_bytes, queue_file) != skip_bytes) +- return -1; +- } +- +- return read_bytes; +-} +- +-static FILE *open_queue_file(struct udev_queue *udev_queue, unsigned long long int *seqnum_start) +-{ +- FILE *queue_file; +- +- queue_file = fopen("/run/udev/queue.bin", "re"); +- if (queue_file == NULL) +- return NULL; +- +- if (udev_queue_read_seqnum(queue_file, seqnum_start) < 0) { +- udev_err(udev_queue->udev, "corrupt queue file\n"); +- fclose(queue_file); +- return NULL; +- } +- +- return queue_file; +-} +- + /** + * udev_queue_get_udev_seqnum: + * @udev_queue: udev queue context + * +- * Get the last known udev event sequence number. ++ * This function is deprecated. + * +- * Returns: the sequence number. ++ * Returns: 0. + **/ + _public_ unsigned long long int udev_queue_get_udev_seqnum(struct udev_queue *udev_queue) + { +- unsigned long long int seqnum_udev; +- FILE *queue_file; +- +- queue_file = open_queue_file(udev_queue, &seqnum_udev); +- if (queue_file == NULL) +- return 0; +- +- for (;;) { +- unsigned long long int seqnum; +- ssize_t devpath_len; +- +- if (udev_queue_read_seqnum(queue_file, &seqnum) < 0) +- break; +- devpath_len = udev_queue_skip_devpath(queue_file); +- if (devpath_len < 0) +- break; +- if (devpath_len > 0) +- seqnum_udev = seqnum; +- } +- +- fclose(queue_file); +- return seqnum_udev; ++ return 0; + } + + /** +@@ -277,15 +162,7 @@ _public_ unsigned long long int udev_queue_get_udev_seqnum(struct udev_queue *ud + **/ + _public_ int udev_queue_get_udev_is_active(struct udev_queue *udev_queue) + { +- unsigned long long int seqnum_start; +- FILE *queue_file; +- +- queue_file = open_queue_file(udev_queue, &seqnum_start); +- if (queue_file == NULL) +- return 0; +- +- fclose(queue_file); +- return 1; ++ return access("/run/udev/control", F_OK) >= 0; + } + + /** +@@ -298,48 +175,7 @@ _public_ int udev_queue_get_udev_is_active(struct udev_queue *udev_queue) + **/ + _public_ int udev_queue_get_queue_is_empty(struct udev_queue *udev_queue) + { +- unsigned long long int seqnum_kernel; +- unsigned long long int seqnum_udev = 0; +- int queued = 0; +- int is_empty = 0; +- FILE *queue_file; +- +- if (udev_queue == NULL) +- return -EINVAL; +- queue_file = open_queue_file(udev_queue, &seqnum_udev); +- if (queue_file == NULL) +- return 1; +- +- for (;;) { +- unsigned long long int seqnum; +- ssize_t devpath_len; +- +- if (udev_queue_read_seqnum(queue_file, &seqnum) < 0) +- break; +- devpath_len = udev_queue_skip_devpath(queue_file); +- if (devpath_len < 0) +- break; +- +- if (devpath_len > 0) { +- queued++; +- seqnum_udev = seqnum; +- } else { +- queued--; +- } +- } +- +- if (queued > 0) +- goto out; +- +- seqnum_kernel = udev_queue_get_kernel_seqnum(udev_queue); +- if (seqnum_udev < seqnum_kernel) +- goto out; +- +- is_empty = 1; +- +-out: +- fclose(queue_file); +- return is_empty; ++ return access("/run/udev/queue", F_OK) >= 0; + } + + /** +@@ -348,63 +184,15 @@ out: + * @start: first event sequence number + * @end: last event sequence number + * +- * Check if udev is currently processing any events in a given sequence number range. ++ * This function is deprecated, it just returns the result of ++ * udev_queue_get_queue_is_empty(). + * +- * Returns: a flag indicating if any of the sequence numbers in the given range is currently active. ++ * Returns: a flag indicating if udev is currently handling events. + **/ + _public_ int udev_queue_get_seqnum_sequence_is_finished(struct udev_queue *udev_queue, + unsigned long long int start, unsigned long long int end) + { +- unsigned long long int seqnum; +- ssize_t devpath_len; +- int unfinished; +- FILE *queue_file; +- +- if (udev_queue == NULL) +- return -EINVAL; +- queue_file = open_queue_file(udev_queue, &seqnum); +- if (queue_file == NULL) +- return 1; +- if (start < seqnum) +- start = seqnum; +- if (start > end) { +- fclose(queue_file); +- return 1; +- } +- if (end - start > INT_MAX - 1) { +- fclose(queue_file); +- return -EOVERFLOW; +- } +- +- /* +- * we might start with 0, and handle the initial seqnum +- * only when we find an entry in the queue file +- **/ +- unfinished = end - start; +- +- do { +- if (udev_queue_read_seqnum(queue_file, &seqnum) < 0) +- break; +- devpath_len = udev_queue_skip_devpath(queue_file); +- if (devpath_len < 0) +- break; +- +- /* +- * we might start with an empty or re-build queue file, where +- * the initial seqnum is not recorded as finished +- */ +- if (start == seqnum && devpath_len > 0) +- unfinished++; +- +- if (devpath_len == 0) { +- if (seqnum >= start && seqnum <= end) +- unfinished--; +- } +- } while (unfinished > 0); +- +- fclose(queue_file); +- +- return (unfinished == 0); ++ return udev_queue_get_queue_is_empty(udev_queue); + } + + /** +@@ -412,69 +200,25 @@ _public_ int udev_queue_get_seqnum_sequence_is_finished(struct udev_queue *udev_ + * @udev_queue: udev queue context + * @seqnum: sequence number + * +- * Check if udev is currently processing a given sequence number. ++ * This function is deprecated, it just returns the result of ++ * udev_queue_get_queue_is_empty(). + * +- * Returns: a flag indicating if the given sequence number is currently active. ++ * Returns: a flag indicating if udev is currently handling events. + **/ + _public_ int udev_queue_get_seqnum_is_finished(struct udev_queue *udev_queue, unsigned long long int seqnum) + { +- if (!udev_queue_get_seqnum_sequence_is_finished(udev_queue, seqnum, seqnum)) +- return 0; +- +- return 1; ++ return udev_queue_get_queue_is_empty(udev_queue); + } + + /** + * udev_queue_get_queued_list_entry: + * @udev_queue: udev queue context + * +- * Get the first entry of the list of queued events. ++ * This function is deprecated. + * +- * Returns: a udev_list_entry. ++ * Returns: NULL. + **/ + _public_ struct udev_list_entry *udev_queue_get_queued_list_entry(struct udev_queue *udev_queue) + { +- unsigned long long int seqnum; +- FILE *queue_file; +- +- if (udev_queue == NULL) +- return NULL; +- udev_list_cleanup(&udev_queue->queue_list); +- +- queue_file = open_queue_file(udev_queue, &seqnum); +- if (queue_file == NULL) +- return NULL; +- +- for (;;) { +- char syspath[UTIL_PATH_SIZE]; +- char *s; +- size_t l; +- ssize_t len; +- char seqnum_str[32]; +- struct udev_list_entry *list_entry; +- +- if (udev_queue_read_seqnum(queue_file, &seqnum) < 0) +- break; +- snprintf(seqnum_str, sizeof(seqnum_str), "%llu", seqnum); +- +- s = syspath; +- l = strpcpy(&s, sizeof(syspath), "/sys"); +- len = udev_queue_read_devpath(queue_file, s, l); +- if (len < 0) +- break; +- +- if (len > 0) { +- udev_list_entry_add(&udev_queue->queue_list, syspath, seqnum_str); +- } else { +- udev_list_entry_foreach(list_entry, udev_list_get_entry(&udev_queue->queue_list)) { +- if (streq(seqnum_str, udev_list_entry_get_value(list_entry))) { +- udev_list_entry_delete(list_entry); +- break; +- } +- } +- } +- } +- fclose(queue_file); +- +- return udev_list_get_entry(&udev_queue->queue_list); ++ return NULL; + } +diff --git src/libudev/libudev.h src/libudev/libudev.h +index b9b8f13..ceb89bd 100644 +--- a/src/libudev/libudev.h ++++ b/src/libudev/libudev.h +@@ -170,14 +170,14 @@ struct udev_queue *udev_queue_ref(struct udev_queue *udev_queue); + struct udev_queue *udev_queue_unref(struct udev_queue *udev_queue); + struct udev *udev_queue_get_udev(struct udev_queue *udev_queue); + struct udev_queue *udev_queue_new(struct udev *udev); +-unsigned long long int udev_queue_get_kernel_seqnum(struct udev_queue *udev_queue); +-unsigned long long int udev_queue_get_udev_seqnum(struct udev_queue *udev_queue); ++unsigned long long int udev_queue_get_kernel_seqnum(struct udev_queue *udev_queue) __attribute__ ((deprecated)); ++unsigned long long int udev_queue_get_udev_seqnum(struct udev_queue *udev_queue) __attribute__ ((deprecated)); + int udev_queue_get_udev_is_active(struct udev_queue *udev_queue); + int udev_queue_get_queue_is_empty(struct udev_queue *udev_queue); +-int udev_queue_get_seqnum_is_finished(struct udev_queue *udev_queue, unsigned long long int seqnum); ++int udev_queue_get_seqnum_is_finished(struct udev_queue *udev_queue, unsigned long long int seqnum) __attribute__ ((deprecated)); + int udev_queue_get_seqnum_sequence_is_finished(struct udev_queue *udev_queue, +- unsigned long long int start, unsigned long long int end); +-struct udev_list_entry *udev_queue_get_queued_list_entry(struct udev_queue *udev_queue); ++ unsigned long long int start, unsigned long long int end) __attribute__ ((deprecated)); ++struct udev_list_entry *udev_queue_get_queued_list_entry(struct udev_queue *udev_queue) __attribute__ ((deprecated)); + + /* + * udev_hwdb +diff --git src/shared/udev-util.h src/shared/udev-util.h +index 40f8b77..5f09ce1 100644 +--- a/src/shared/udev-util.h ++++ b/src/shared/udev-util.h +@@ -31,7 +31,6 @@ DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_event*, udev_event_unref); + DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_rules*, udev_rules_unref); + DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_ctrl*, udev_ctrl_unref); + DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_monitor*, udev_monitor_unref); +-DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_queue*, udev_queue_unref); + + #define _cleanup_udev_unref_ _cleanup_(udev_unrefp) + #define _cleanup_udev_device_unref_ _cleanup_(udev_device_unrefp) +@@ -40,5 +39,4 @@ DEFINE_TRIVIAL_CLEANUP_FUNC(struct udev_queue*, udev_queue_unref); + #define _cleanup_udev_rules_unref_ _cleanup_(udev_rules_unrefp) + #define _cleanup_udev_ctrl_unref_ _cleanup_(udev_ctrl_unrefp) + #define _cleanup_udev_monitor_unref_ _cleanup_(udev_monitor_unrefp) +-#define _cleanup_udev_queue_unref_ _cleanup_(udev_queue_unrefp) + #define _cleanup_udev_list_cleanup_ _cleanup_(udev_list_cleanup) +diff --git src/test/test-libudev.c src/test/test-libudev.c +index c233b1e..f5c8bc7 100644 +--- a/src/test/test-libudev.c ++++ b/src/test/test-libudev.c +@@ -303,38 +303,14 @@ out: + + static int test_queue(struct udev *udev) { + struct udev_queue *udev_queue; +- unsigned long long int seqnum; +- struct udev_list_entry *list_entry; + + udev_queue = udev_queue_new(udev); + if (udev_queue == NULL) + return -1; +- seqnum = udev_queue_get_kernel_seqnum(udev_queue); +- printf("seqnum kernel: %llu\n", seqnum); +- seqnum = udev_queue_get_udev_seqnum(udev_queue); +- printf("seqnum udev : %llu\n", seqnum); + + if (udev_queue_get_queue_is_empty(udev_queue)) + printf("queue is empty\n"); +- printf("get queue list\n"); +- udev_list_entry_foreach(list_entry, udev_queue_get_queued_list_entry(udev_queue)) +- printf("queued: '%s' [%s]\n", udev_list_entry_get_name(list_entry), udev_list_entry_get_value(list_entry)); +- printf("\n"); +- printf("get queue list again\n"); +- udev_list_entry_foreach(list_entry, udev_queue_get_queued_list_entry(udev_queue)) +- printf("queued: '%s' [%s]\n", udev_list_entry_get_name(list_entry), udev_list_entry_get_value(list_entry)); +- printf("\n"); + +- list_entry = udev_queue_get_queued_list_entry(udev_queue); +- if (list_entry != NULL) { +- printf("event [%llu] is queued\n", seqnum); +- seqnum = strtoull(udev_list_entry_get_value(list_entry), NULL, 10); +- if (udev_queue_get_seqnum_is_finished(udev_queue, seqnum)) +- printf("event [%llu] is not finished\n", seqnum); +- else +- printf("event [%llu] is finished\n", seqnum); +- } +- printf("\n"); + udev_queue_unref(udev_queue); + return 0; + } +diff --git src/udev/udev-ctrl.c src/udev/udev-ctrl.c +index 1e91ec2..74bbd3a 100644 +--- a/src/udev/udev-ctrl.c ++++ b/src/udev/udev-ctrl.c +@@ -275,7 +275,7 @@ static int ctrl_send(struct udev_ctrl *uctrl, enum udev_ctrl_msg_type type, int + + pfd[0].fd = uctrl->sock; + pfd[0].events = POLLIN; +- r = poll(pfd, 1, timeout * 1000); ++ r = poll(pfd, 1, timeout * MSEC_PER_SEC); + if (r < 0) { + if (errno == EINTR) + continue; +diff --git src/udev/udevadm-settle.c src/udev/udevadm-settle.c +index 927ea2a..65fc35f 100644 +--- a/src/udev/udevadm-settle.c ++++ b/src/udev/udevadm-settle.c +@@ -41,42 +41,28 @@ + static void help(void) { + printf("Usage: udevadm settle OPTIONS\n" + " -t,--timeout= maximum time to wait for events\n" +- " -s,--seq-start= first seqnum to wait for\n" +- " -e,--seq-end= last seqnum to wait for\n" + " -E,--exit-if-exists= stop waiting if file exists\n" +- " -q,--quiet do not print list after timeout\n" + " -h,--help\n\n"); + } + + static int adm_settle(struct udev *udev, int argc, char *argv[]) + { + static const struct option options[] = { +- { "seq-start", required_argument, NULL, 's' }, +- { "seq-end", required_argument, NULL, 'e' }, ++ { "seq-start", required_argument, NULL, '\0' }, /* removed */ ++ { "seq-end", required_argument, NULL, '\0' }, /* removed */ + { "timeout", required_argument, NULL, 't' }, + { "exit-if-exists", required_argument, NULL, 'E' }, +- { "quiet", no_argument, NULL, 'q' }, ++ { "quiet", no_argument, NULL, 'q' }, /* removed */ + { "help", no_argument, NULL, 'h' }, + {} + }; +- usec_t start_usec = now(CLOCK_MONOTONIC); +- usec_t start = 0; +- usec_t end = 0; +- int quiet = 0; + const char *exists = NULL; + unsigned int timeout = 120; + struct pollfd pfd[1] = { {.fd = -1}, }; +- _cleanup_udev_queue_unref_ struct udev_queue *udev_queue = NULL; + int rc = EXIT_FAILURE, c; + +- while ((c = getopt_long(argc, argv, "s:e:t:E:qh", options, NULL)) >= 0) ++ while ((c = getopt_long(argc, argv, "s:e:t:E:qh", options, NULL)) >= 0) { + switch (c) { +- case 's': +- start = strtoull(optarg, NULL, 0); +- break; +- case 'e': +- end = strtoull(optarg, NULL, 0); +- break; + case 't': { + int r; + +@@ -91,9 +77,6 @@ static int adm_settle(struct udev *udev, int argc, char *argv[]) + case 'E': + exists = optarg; + break; +- case 'q': +- quiet = 1; +- break; + case 'h': + help(); + exit(EXIT_SUCCESS); +@@ -102,44 +85,13 @@ static int adm_settle(struct udev *udev, int argc, char *argv[]) + default: + assert_not_reached("Unknown argument"); + } ++ } + + if (optind < argc) { + fprintf(stderr, "Extraneous argument: '%s'\n", argv[optind]); + exit(EXIT_FAILURE); + } + +- udev_queue = udev_queue_new(udev); +- if (udev_queue == NULL) +- exit(2); +- +- if (start > 0) { +- unsigned long long kernel_seq; +- +- kernel_seq = udev_queue_get_kernel_seqnum(udev_queue); +- +- /* unless specified, the last event is the current kernel seqnum */ +- if (end == 0) +- end = udev_queue_get_kernel_seqnum(udev_queue); +- +- if (start > end) { +- log_error("seq-start larger than seq-end, ignoring"); +- start = 0; +- end = 0; +- } +- +- if (start > kernel_seq || end > kernel_seq) { +- log_error("seq-start or seq-end larger than current kernel value, ignoring"); +- start = 0; +- end = 0; +- } +- log_debug("start=%llu end=%llu current=%llu", (unsigned long long)start, (unsigned long long)end, kernel_seq); +- } else { +- if (end > 0) { +- log_error("seq-end needs seq-start parameter, ignoring"); +- end = 0; +- } +- } +- + /* guarantee that the udev daemon isn't pre-processing */ + if (getuid() == 0) { + struct udev_ctrl *uctrl; +@@ -160,73 +112,34 @@ static int adm_settle(struct udev *udev, int argc, char *argv[]) + pfd[0].fd = inotify_init1(IN_CLOEXEC); + if (pfd[0].fd < 0) { + log_error("inotify_init failed: %m"); +- } else { +- if (inotify_add_watch(pfd[0].fd, "/run/udev" , IN_MOVED_TO) < 0) { +- log_error("watching /run/udev failed"); +- close(pfd[0].fd); +- pfd[0].fd = -1; +- } ++ goto out; + } + +- for (;;) { +- struct stat statbuf; ++ if (inotify_add_watch(pfd[0].fd, "/run/udev/queue" , IN_DELETE) < 0) { ++ log_debug("watching /run/udev failed"); ++ goto out; ++ } + +- if (exists != NULL && stat(exists, &statbuf) == 0) { ++ for (;;) { ++ if (exists && access(exists, F_OK) >= 0) { + rc = EXIT_SUCCESS; + break; + } + +- if (start > 0) { +- /* if asked for, wait for a specific sequence of events */ +- if (udev_queue_get_seqnum_sequence_is_finished(udev_queue, start, end) == 1) { +- rc = EXIT_SUCCESS; +- break; +- } +- } else { +- /* exit if queue is empty */ +- if (udev_queue_get_queue_is_empty(udev_queue)) { +- rc = EXIT_SUCCESS; +- break; +- } +- } +- +- if (pfd[0].fd >= 0) { +- int delay; +- +- if (exists != NULL || start > 0) +- delay = 100; +- else +- delay = 1000; +- /* wake up after delay, or immediately after the queue is rebuilt */ +- if (poll(pfd, 1, delay) > 0 && pfd[0].revents & POLLIN) { +- char buf[sizeof(struct inotify_event) + PATH_MAX]; +- +- read(pfd[0].fd, buf, sizeof(buf)); +- } +- } else { +- sleep(1); ++ /* exit if queue is empty */ ++ if (access("/run/udev/queue", F_OK) < 0) { ++ rc = EXIT_SUCCESS; ++ break; + } + +- if (timeout > 0) { +- usec_t age_usec; ++ /* wake up when "queue" file is deleted */ ++ if (poll(pfd, 1, 100) > 0 && pfd[0].revents & POLLIN) { ++ char buf[sizeof(struct inotify_event) + PATH_MAX]; + +- age_usec = now(CLOCK_MONOTONIC) - start_usec; +- if (age_usec / (1000 * 1000) >= timeout) { +- struct udev_list_entry *list_entry; +- +- if (!quiet && udev_queue_get_queued_list_entry(udev_queue) != NULL) { +- log_debug("timeout waiting for udev queue"); +- printf("\nudevadm settle - timeout of %i seconds reached, the event queue contains:\n", timeout); +- udev_list_entry_foreach(list_entry, udev_queue_get_queued_list_entry(udev_queue)) +- printf(" %s (%s)\n", +- udev_list_entry_get_name(list_entry), +- udev_list_entry_get_value(list_entry)); +- } +- +- break; +- } ++ read(pfd[0].fd, buf, sizeof(buf)); + } + } ++ + out: + if (pfd[0].fd >= 0) + close(pfd[0].fd); +@@ -236,5 +149,5 @@ out: + const struct udevadm_cmd udevadm_settle = { + .name = "settle", + .cmd = adm_settle, +- .help = "wait for the event queue to finish", ++ .help = "wait for pending udev events", + }; +diff --git src/udev/udevd.c src/udev/udevd.c +index f21c227..f9ee368 100644 +--- a/src/udev/udevd.c ++++ b/src/udev/udevd.c +@@ -60,7 +60,6 @@ void udev_main_log(struct udev *udev, int priority, + } + + static struct udev_rules *rules; +-static struct udev_queue_export *udev_queue_export; + static struct udev_ctrl *udev_ctrl; + static struct udev_monitor *monitor; + static int worker_watch[2] = { -1, -1 }; +@@ -139,14 +138,9 @@ static inline struct worker *node_to_worker(struct udev_list_node *node) + return container_of(node, struct worker, node); + } + +-static void event_queue_delete(struct event *event, bool export) ++static void event_queue_delete(struct event *event) + { + udev_list_node_remove(&event->node); +- +- if (export) { +- udev_queue_export_device_finished(udev_queue_export, event->dev); +- log_debug("seq %llu done with %i", udev_device_get_seqnum(event->dev), event->exitcode); +- } + udev_device_unref(event->dev); + free(event); + } +@@ -225,7 +219,6 @@ static void worker_new(struct event *event) + free(worker); + worker_list_cleanup(udev); + event_queue_cleanup(udev, EVENT_UNDEF); +- udev_queue_export_unref(udev_queue_export); + udev_monitor_unref(monitor); + udev_ctrl_unref(udev_ctrl); + close(fd_signal); +@@ -449,7 +442,6 @@ static int event_queue_insert(struct udev_device *dev) + event->nodelay = true; + #endif + +- udev_queue_export_device_queued(udev_queue_export, dev); + log_debug("seq %llu queued, '%s' '%s'", udev_device_get_seqnum(dev), + udev_device_get_action(dev), udev_device_get_subsystem(dev)); + +@@ -580,7 +572,7 @@ static void event_queue_cleanup(struct udev *udev, enum event_state match_type) + if (match_type != EVENT_UNDEF && match_type != event->state) + continue; + +- event_queue_delete(event, false); ++ event_queue_delete(event); + } + } + +@@ -605,7 +597,7 @@ static void worker_returned(int fd_worker) + /* worker returned */ + if (worker->event) { + worker->event->exitcode = msg.exitcode; +- event_queue_delete(worker->event, true); ++ event_queue_delete(worker->event); + worker->event = NULL; + } + if (worker->state != WORKER_KILLED) +@@ -797,7 +789,8 @@ static void handle_signal(struct udev *udev, int signo) + log_error("worker [%u] failed while handling '%s'", + pid, worker->event->devpath); + worker->event->exitcode = -32; +- event_queue_delete(worker->event, true); ++ event_queue_delete(worker->event); ++ + /* drop reference taken for state 'running' */ + worker_unref(worker); + } +@@ -1076,14 +1069,7 @@ int main(int argc, char *argv[]) + goto exit; + } + +- udev_monitor_set_receive_buffer_size(monitor, 128*1024*1024); +- +- /* create queue file before signalling 'ready', to make sure we block 'settle' */ +- udev_queue_export = udev_queue_export_new(udev); +- if (udev_queue_export == NULL) { +- log_error("error creating queue file"); +- goto exit; +- } ++ udev_monitor_set_receive_buffer_size(monitor, 128 * 1024 * 1024); + + if (daemonize) { + pid_t pid; +@@ -1241,12 +1227,12 @@ int main(int argc, char *argv[]) + worker_kill(udev); + + /* exit after all has cleaned up */ +- if (udev_list_node_is_empty(&event_list) && udev_list_node_is_empty(&worker_list)) ++ if (udev_list_node_is_empty(&event_list) && children == 0) + break; + + /* timeout at exit for workers to finish */ +- timeout = 30 * 1000; +- } else if (udev_list_node_is_empty(&event_list) && !children) { ++ timeout = 30 * MSEC_PER_SEC; ++ } else if (udev_list_node_is_empty(&event_list) && children == 0) { + /* we are idle */ + timeout = -1; + +@@ -1255,8 +1241,20 @@ int main(int argc, char *argv[]) + cg_kill(SYSTEMD_CGROUP_CONTROLLER, udev_cgroup, SIGKILL, false, true, NULL); + } else { + /* kill idle or hanging workers */ +- timeout = 3 * 1000; ++ timeout = 3 * MSEC_PER_SEC; + } ++ ++ /* tell settle that we are busy or idle */ ++ if (!udev_list_node_is_empty(&event_list)) { ++ int fd; ++ ++ fd = open("/run/udev/queue", O_WRONLY|O_CREAT|O_CLOEXEC|O_TRUNC|O_NOFOLLOW, 0444); ++ if (fd >= 0) ++ close(fd); ++ } else { ++ unlink("/run/udev/queue"); ++ } ++ + fdcount = epoll_wait(fd_ep, ev, ELEMENTSOF(ev), timeout); + if (fdcount < 0) + continue; +@@ -1283,18 +1281,18 @@ int main(int argc, char *argv[]) + if (worker->state != WORKER_RUNNING) + continue; + +- if ((now(CLOCK_MONOTONIC) - worker->event_start_usec) > 30 * 1000 * 1000) { ++ if ((now(CLOCK_MONOTONIC) - worker->event_start_usec) > 30 * USEC_PER_SEC) { + log_error("worker [%u] %s timeout; kill it", worker->pid, + worker->event ? worker->event->devpath : ""); + kill(worker->pid, SIGKILL); + worker->state = WORKER_KILLED; ++ + /* drop reference taken for state 'running' */ + worker_unref(worker); + if (worker->event) { +- log_error("seq %llu '%s' killed", +- udev_device_get_seqnum(worker->event->dev), worker->event->devpath); ++ log_error("seq %llu '%s' killed", udev_device_get_seqnum(worker->event->dev), worker->event->devpath); + worker->event->exitcode = -64; +- event_queue_delete(worker->event, true); ++ event_queue_delete(worker->event); + worker->event = NULL; + } + } +@@ -1317,7 +1315,7 @@ int main(int argc, char *argv[]) + } + + /* check for changed config, every 3 seconds at most */ +- if ((now(CLOCK_MONOTONIC) - last_usec) > 3 * 1000 * 1000) { ++ if ((now(CLOCK_MONOTONIC) - last_usec) > 3 * USEC_PER_SEC) { + if (udev_rules_check_timestamp(rules)) + reload = true; + if (udev_builtin_validate(udev)) +@@ -1390,8 +1388,8 @@ int main(int argc, char *argv[]) + + rc = EXIT_SUCCESS; + exit: +- udev_queue_export_cleanup(udev_queue_export); + udev_ctrl_cleanup(udev_ctrl); ++ unlink("/run/udev/queue"); + exit_daemonize: + if (fd_ep >= 0) + close(fd_ep); +@@ -1406,7 +1404,6 @@ exit_daemonize: + if (worker_watch[WRITE_END] >= 0) + close(worker_watch[WRITE_END]); + udev_monitor_unref(monitor); +- udev_queue_export_unref(udev_queue_export); + udev_ctrl_connection_unref(ctrl_conn); + udev_ctrl_unref(udev_ctrl); + label_finish(); +-- +1.7.9.2 + diff --git a/1023-udev-builtin-keyboard-do-tell-on-which-device-EVIOCS.patch b/1023-udev-builtin-keyboard-do-tell-on-which-device-EVIOCS.patch new file mode 100644 index 00000000..75da64fa --- /dev/null +++ b/1023-udev-builtin-keyboard-do-tell-on-which-device-EVIOCS.patch @@ -0,0 +1,31 @@ +From a52ec8ed881537627869afa8f0486db7e20ce2db Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Cristian=20Rodr=C3=ADguez?= +Date: Fri, 30 May 2014 13:16:56 -0400 +Subject: [PATCH] udev-builtin-keyboard: do tell on which device EVIOCSKEYCODE + failed. + +I am getting + +"Error calling EVIOCSKEYCODE (scan code 0xc022d, key code 418): Invalid +argument", the error message does not tell on which specific device the +problem is, add that info. +--- + src/udev/udev-builtin-keyboard.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/udev/udev-builtin-keyboard.c src/udev/udev-builtin-keyboard.c +index 614e44e..9b66bfd 100644 +--- src/udev/udev-builtin-keyboard.c ++++ src/udev/udev-builtin-keyboard.c +@@ -143,7 +143,7 @@ static int builtin_keyboard(struct udev_device *dev, int argc, char *argv[], boo + log_debug("keyboard: mapping scan code %d (0x%x) to key code %d (0x%x)", + map[i].scan, map[i].scan, map[i].key, map[i].key); + if (ioctl(fd, EVIOCSKEYCODE, &map[i]) < 0) +- log_error("Error calling EVIOCSKEYCODE (scan code 0x%x, key code %d): %m", map[i].scan, map[i].key); ++ log_error("Error calling EVIOCSKEYCODE on device node '%s' (scan code 0x%x, key code %d): %m", node, map[i].scan, map[i].key); + } + + /* install list of force-release codes */ +-- +1.7.9.2 + diff --git a/1024-udev-always-close-lock-file-descriptor.patch b/1024-udev-always-close-lock-file-descriptor.patch new file mode 100644 index 00000000..aaa4b296 --- /dev/null +++ b/1024-udev-always-close-lock-file-descriptor.patch @@ -0,0 +1,41 @@ +Based on 3d06f4183470d42361303086ed9dedd29c0ffc1b Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Tue, 3 Jun 2014 10:46:51 +0200 +Subject: [PATCH] udev: always close lock file descriptor + +https://bugs.freedesktop.org/show_bug.cgi?id=79576 +--- + src/udev/udevd.c | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +--- src/udev/udevd.c ++++ src/udev/udevd.c 2014-06-03 15:34:42.778346368 +0000 +@@ -301,6 +301,7 @@ static void worker_new(struct event *eve + if (fd_lock >= 0 && flock(fd_lock, LOCK_SH|LOCK_NB) < 0) { + log_debug("Unable to flock(%s), skipping event handling: %m", udev_device_get_devnode(d)); + err = -EWOULDBLOCK; ++ close_nointr_nofail(fd_lock); fd_lock = -1; + goto skip; + } + } +@@ -318,7 +319,7 @@ static void worker_new(struct event *eve + } + + if (fd_lock >= 0) +- close(fd_lock); ++ close_nointr_nofail(fd_lock); + + /* send processed event back to libudev listeners */ + udev_monitor_send_device(worker_monitor, NULL, dev); +@@ -378,9 +379,9 @@ skip: + out: + udev_device_unref(dev); + if (fd_signal >= 0) +- close(fd_signal); ++ close_nointr_nofail(fd_signal); + if (fd_ep >= 0) +- close(fd_ep); ++ close_nointr_nofail(fd_ep); + close(fd_inotify); + close(worker_watch[WRITE_END]); + udev_rules_unref(rules); diff --git a/1025-udev-exclude-device-mapper-from-block-device-ownersh.patch b/1025-udev-exclude-device-mapper-from-block-device-ownersh.patch new file mode 100644 index 00000000..2dc531f4 --- /dev/null +++ b/1025-udev-exclude-device-mapper-from-block-device-ownersh.patch @@ -0,0 +1,39 @@ +From e918a1b5a94f270186dca59156354acd2a596494 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Tue, 3 Jun 2014 16:49:38 +0200 +Subject: [PATCH] udev: exclude device-mapper from block device ownership event + locking + +Signed-off-by: Robert Milasan +--- + src/udev/udevd.c | 14 +++++++++++++- + 1 file changed, 13 insertions(+), 1 deletion(-) + +diff --git a/src/udev/udevd.c b/src/udev/udevd.c +index 819ea3b..6c05104 100644 +--- a/src/udev/udevd.c ++++ b/src/udev/udevd.c +@@ -290,7 +290,19 @@ static void worker_new(struct event *event) + * acquired the lock, the external process will block until + * udev has finished its event handling. + */ +- if (streq_ptr("block", udev_device_get_subsystem(dev))) { ++ ++ /* ++ * since we make check - device seems unused - we try ++ * ioctl to deactivate - and device is found to be opened ++ * sure, you try to take a write lock ++ * if you get it udev is out ++ * if you can't get it, udev is busy ++ * we cannot deactivate openned device (as it is in-use) ++ * maybe we should just exclude dm from that thing entirely ++ * IMHO this sounds like a good plan for this moment ++ */ ++ if (streq_ptr("block", udev_device_get_subsystem(dev)) && ++ !startswith("dm-", udev_device_get_sysname(dev))) { + struct udev_device *d = dev; + + if (streq_ptr("partition", udev_device_get_devtype(d))) +-- +1.8.4.5 + diff --git a/1026-udevd-inotify-modernizations.patch b/1026-udevd-inotify-modernizations.patch new file mode 100644 index 00000000..c63093ff --- /dev/null +++ b/1026-udevd-inotify-modernizations.patch @@ -0,0 +1,85 @@ +From edd32000c806e4527c5f376d138f7bff07724c26 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Wed, 4 Jun 2014 11:05:45 +0200 +Subject: [PATCH] udevd: inotify - modernizations + +Signed-off-by: Robert Milasan +--- + src/udev/udevd.c | 45 ++++++++++++++++++++++----------------------- + 1 file changed, 22 insertions(+), 23 deletions(-) + +Index: systemd-210/src/udev/udevd.c +=================================================================== +--- systemd-210.orig/src/udev/udevd.c ++++ systemd-210/src/udev/udevd.c +@@ -736,20 +736,30 @@ out: + return udev_ctrl_connection_unref(ctrl_conn); + } + ++static void synthesize_change(struct udev_device *dev) { ++ char filename[UTIL_PATH_SIZE]; ++ ++ log_debug("device %s closed, synthesising 'change'", udev_device_get_devnode(dev)); ++ strscpyl(filename, sizeof(filename), udev_device_get_syspath(dev), "/uevent", NULL); ++ write_string_file(filename, "change"); ++} ++ + /* read inotify messages */ + static int handle_inotify(struct udev *udev) + { + int nbytes, pos; + char *buf; + struct inotify_event *ev; ++ int r; + +- if ((ioctl(fd_inotify, FIONREAD, &nbytes) < 0) || (nbytes <= 0)) +- return 0; ++ r = ioctl(fd_inotify, FIONREAD, &nbytes); ++ if (r < 0 || nbytes <= 0) ++ return -errno; + + buf = malloc(nbytes); +- if (buf == NULL) { ++ if (!buf) { + log_error("error getting buffer for inotify"); +- return -1; ++ return -ENOMEM; + } + + nbytes = read(fd_inotify, buf, nbytes); +@@ -759,27 +769,16 @@ static int handle_inotify(struct udev *u + + ev = (struct inotify_event *)(buf + pos); + dev = udev_watch_lookup(udev, ev->wd); +- if (dev != NULL) { +- log_debug("inotify event: %x for %s", ev->mask, udev_device_get_devnode(dev)); +- if (ev->mask & IN_CLOSE_WRITE) { +- char filename[UTIL_PATH_SIZE]; +- int fd; +- +- log_debug("device %s closed, synthesising 'change'", udev_device_get_devnode(dev)); +- strscpyl(filename, sizeof(filename), udev_device_get_syspath(dev), "/uevent", NULL); +- fd = open(filename, O_WRONLY|O_CLOEXEC); +- if (fd >= 0) { +- if (write(fd, "change", 6) < 0) +- log_debug("error writing uevent: %m"); +- close(fd); +- } +- } +- if (ev->mask & IN_IGNORED) +- udev_watch_end(udev, dev); ++ if (!dev) ++ continue; + +- udev_device_unref(dev); +- } ++ log_debug("inotify event: %x for %s", ev->mask, udev_device_get_devnode(dev)); ++ if (ev->mask & IN_CLOSE_WRITE) ++ synthesize_change(dev); ++ else if (ev->mask & IN_IGNORED) ++ udev_watch_end(udev, dev); + ++ udev_device_unref(dev); + } + + free(buf); diff --git a/1027-udev-synthesize-change-events-for-partitions-when-to.patch b/1027-udev-synthesize-change-events-for-partitions-when-to.patch new file mode 100644 index 00000000..ab09c1b2 --- /dev/null +++ b/1027-udev-synthesize-change-events-for-partitions-when-to.patch @@ -0,0 +1,84 @@ +From f3a740a5dae792fb6b2d411022ce8c29ced1c3f1 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Wed, 4 Jun 2014 12:16:28 +0200 +Subject: [PATCH] udev: synthesize "change' events for partitions when tools + change the disk + +This should make sure that fdisk-like programs will automatically +cause an update of all partitions, just like mkfs-like programs cause +an update of the partition. + +Signed-off-by: Robert Milasan +--- + src/udev/udevd.c | 44 ++++++++++++++++++++++++++++++++++++++++++-- + 1 file changed, 42 insertions(+), 2 deletions(-) + +Index: systemd-210/src/udev/udevd.c +=================================================================== +--- systemd-210.orig/src/udev/udevd.c ++++ systemd-210/src/udev/udevd.c +@@ -46,6 +46,7 @@ + #include + + #include "udev.h" ++#include "udev-util.h" + #include "sd-daemon.h" + #include "cgroup-util.h" + #include "dev-setup.h" +@@ -736,15 +737,54 @@ out: + return udev_ctrl_connection_unref(ctrl_conn); + } + +-static void synthesize_change(struct udev_device *dev) { ++static int synthesize_change(struct udev_device *dev) { + char filename[UTIL_PATH_SIZE]; ++ int r; + + log_debug("device %s closed, synthesising 'change'", udev_device_get_devnode(dev)); + strscpyl(filename, sizeof(filename), udev_device_get_syspath(dev), "/uevent", NULL); + write_string_file(filename, "change"); ++ ++ /* for disks devices, re-trigger all partitions too */ ++ if (streq_ptr("block", udev_device_get_subsystem(dev)) && ++ streq_ptr("disk", udev_device_get_devtype(dev))) { ++ struct udev *udev = udev_device_get_udev(dev); ++ _cleanup_udev_enumerate_unref_ struct udev_enumerate *e = NULL; ++ struct udev_list_entry *item; ++ ++ e = udev_enumerate_new(udev); ++ if (!e) ++ return -ENOMEM; ++ ++ r = udev_enumerate_add_match_parent(e, dev); ++ if (r < 0) ++ return r; ++ ++ r = udev_enumerate_add_match_subsystem(e, "block"); ++ if (r < 0) ++ return r; ++ ++ r = udev_enumerate_scan_devices(e); ++ udev_list_entry_foreach(item, udev_enumerate_get_list_entry(e)) { ++ _cleanup_udev_device_unref_ struct udev_device *d = NULL; ++ ++ d = udev_device_new_from_syspath(udev, udev_list_entry_get_name(item)); ++ if (!d) ++ continue; ++ ++ if (!streq_ptr("partition", udev_device_get_devtype(d))) ++ continue; ++ ++ log_debug("device %s closed, synthesising partition '%s' 'change'", ++ udev_device_get_devnode(dev), udev_device_get_devnode(d)); ++ strscpyl(filename, sizeof(filename), udev_device_get_syspath(d), "/uevent", NULL); ++ write_string_file(filename, "change"); ++ } ++ } ++ ++ return 0; + } + +-/* read inotify messages */ + static int handle_inotify(struct udev *udev) + { + int nbytes, pos; diff --git a/1028-udev-link-config-fix-mem-leak.patch b/1028-udev-link-config-fix-mem-leak.patch new file mode 100644 index 00000000..265009f0 --- /dev/null +++ b/1028-udev-link-config-fix-mem-leak.patch @@ -0,0 +1,34 @@ +From edf029b7fd9a5853a87d3ca99aac2922bb8a277e Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Wed, 4 Jun 2014 12:34:23 +0200 +Subject: [PATCH] udev: link-config - fix mem leak + +Reported by Kay. + +Signed-off-by: Robert Milasan +--- + src/udev/net/link-config.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +Index: systemd-210/src/udev/net/link-config.c +=================================================================== +--- systemd-210.orig/src/udev/net/link-config.c ++++ systemd-210/src/udev/net/link-config.c +@@ -118,6 +118,7 @@ static void link_configs_free(link_confi + free(link->match_type); + free(link->description); + free(link->alias); ++ free(link->name_policy); + + free(link); + } +@@ -205,7 +206,8 @@ static bool enable_name_policy(void) { + + int link_config_load(link_config_ctx *ctx) { + int r; +- char **files, **f; ++ _cleanup_strv_free_ char **files; ++ char **f; + + link_configs_free(ctx); + diff --git a/1029-udev-try-first-re-reading-the-partition-table.patch b/1029-udev-try-first-re-reading-the-partition-table.patch new file mode 100644 index 00000000..fa20002b --- /dev/null +++ b/1029-udev-try-first-re-reading-the-partition-table.patch @@ -0,0 +1,94 @@ +From ede344452a54e1c53f541cad12a06269a4fe96a9 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Wed, 4 Jun 2014 13:30:24 +0200 +Subject: [PATCH] udev: try first re-reading the partition table + +mounted partitions: + # dd if=/dev/zero of=/dev/sda bs=1 count=1 + UDEV [4157.369250] change .../0:0:0:0/block/sda (block) + UDEV [4157.375059] change .../0:0:0:0/block/sda/sda1 (block) + UDEV [4157.397088] change .../0:0:0:0/block/sda/sda2 (block) + UDEV [4157.404842] change .../0:0:0:0/block/sda/sda4 (block) + +unmounted partitions: + # dd if=/dev/zero of=/dev/sdb bs=1 count=1 + UDEV [4163.450217] remove .../target6:0:0/6:0:0:0/block/sdb/sdb1 (block) + UDEV [4163.593167] change .../target6:0:0/6:0:0:0/block/sdb (block) + UDEV [4163.713982] add .../target6:0:0/6:0:0:0/block/sdb/sdb1 (block) + +Signed-off-by: Robert Milasan +--- + src/udev/udevd.c | 39 +++++++++++++++++++++++++++++++++------ + 1 file changed, 33 insertions(+), 6 deletions(-) + +Index: systemd-210/src/udev/udevd.c +=================================================================== +--- systemd-210.orig/src/udev/udevd.c ++++ systemd-210/src/udev/udevd.c +@@ -38,6 +38,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -741,17 +742,37 @@ static int synthesize_change(struct udev + char filename[UTIL_PATH_SIZE]; + int r; + +- log_debug("device %s closed, synthesising 'change'", udev_device_get_devnode(dev)); +- strscpyl(filename, sizeof(filename), udev_device_get_syspath(dev), "/uevent", NULL); +- write_string_file(filename, "change"); +- +- /* for disks devices, re-trigger all partitions too */ + if (streq_ptr("block", udev_device_get_subsystem(dev)) && +- streq_ptr("disk", udev_device_get_devtype(dev))) { ++ streq_ptr("disk", udev_device_get_devtype(dev)) && ++ !startswith("dm-", udev_device_get_sysname(dev))) { ++ int fd; + struct udev *udev = udev_device_get_udev(dev); + _cleanup_udev_enumerate_unref_ struct udev_enumerate *e = NULL; + struct udev_list_entry *item; + ++ /* ++ * Try to re-read the partition table, this only succeeds if ++ * none of the devices is busy. ++ * ++ * The kernel will send out a change event for the disk, and ++ * "remove/add" for all partitions. ++ */ ++ fd = open(udev_device_get_devnode(dev), O_RDONLY|O_CLOEXEC|O_NOFOLLOW|O_NONBLOCK); ++ if (fd >= 0) { ++ r = ioctl(fd, BLKRRPART, 0); ++ close(fd); ++ if (r >= 0) ++ return 0; ++ } ++ ++ /* ++ * Re-reading the partition table did not work, synthesize "change" ++ * events for the disk and all partitions. ++ */ ++ log_debug("device %s closed, synthesising 'change'", udev_device_get_devnode(dev)); ++ strscpyl(filename, sizeof(filename), udev_device_get_syspath(dev), "/uevent", NULL); ++ write_string_file(filename, "change"); ++ + e = udev_enumerate_new(udev); + if (!e) + return -ENOMEM; +@@ -780,8 +801,14 @@ static int synthesize_change(struct udev + strscpyl(filename, sizeof(filename), udev_device_get_syspath(d), "/uevent", NULL); + write_string_file(filename, "change"); + } ++ ++ return 0; + } + ++ log_debug("device %s closed, synthesising 'change'", udev_device_get_devnode(dev)); ++ strscpyl(filename, sizeof(filename), udev_device_get_syspath(dev), "/uevent", NULL); ++ write_string_file(filename, "change"); ++ + return 0; + } + diff --git a/1030-udev-guard-REREADP-logic-with-open-O_ECXL.patch b/1030-udev-guard-REREADP-logic-with-open-O_ECXL.patch new file mode 100644 index 00000000..6fb7b15f --- /dev/null +++ b/1030-udev-guard-REREADP-logic-with-open-O_ECXL.patch @@ -0,0 +1,23 @@ +From 10fab50a3091e0b819c3ddab5a7c07acf750c050 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Wed, 4 Jun 2014 14:09:31 +0200 +Subject: [PATCH] udev: guard REREADP logic with open(O_ECXL) + +Signed-off-by: Robert Milasan +--- + src/udev/udevd.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: systemd-210/src/udev/udevd.c +=================================================================== +--- systemd-210.orig/src/udev/udevd.c ++++ systemd-210/src/udev/udevd.c +@@ -757,7 +757,7 @@ static int synthesize_change(struct udev + * The kernel will send out a change event for the disk, and + * "remove/add" for all partitions. + */ +- fd = open(udev_device_get_devnode(dev), O_RDONLY|O_CLOEXEC|O_NOFOLLOW|O_NONBLOCK); ++ fd = open(udev_device_get_devnode(dev), O_RDONLY|O_EXCL|O_CLOEXEC|O_NOFOLLOW|O_NONBLOCK); + if (fd >= 0) { + r = ioctl(fd, BLKRRPART, 0); + close(fd); diff --git a/1031-udev-make-sure-we-always-get-change-for-the-disk.patch b/1031-udev-make-sure-we-always-get-change-for-the-disk.patch new file mode 100644 index 00000000..4f48cd3a --- /dev/null +++ b/1031-udev-make-sure-we-always-get-change-for-the-disk.patch @@ -0,0 +1,98 @@ +From e9fc29f4ecc9509ccc02eb8a014341e26c0d7831 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Wed, 4 Jun 2014 15:17:15 +0200 +Subject: [PATCH] udev: make sure we always get "change" for the disk + +The kernel will return 0 for REREADPT when no partition table +is found, we have to send out "change" ourselves. + +Signed-off-by: Robert Milasan +--- + src/udev/udevd.c | 53 +++++++++++++++++++++++++++++++++++++++-------------- + 1 file changed, 39 insertions(+), 14 deletions(-) + +Index: systemd-210/src/udev/udevd.c +=================================================================== +--- systemd-210.orig/src/udev/udevd.c ++++ systemd-210/src/udev/udevd.c +@@ -745,34 +745,28 @@ static int synthesize_change(struct udev + if (streq_ptr("block", udev_device_get_subsystem(dev)) && + streq_ptr("disk", udev_device_get_devtype(dev)) && + !startswith("dm-", udev_device_get_sysname(dev))) { ++ bool part_table_read = false; ++ bool has_partitions = false; + int fd; + struct udev *udev = udev_device_get_udev(dev); + _cleanup_udev_enumerate_unref_ struct udev_enumerate *e = NULL; + struct udev_list_entry *item; + + /* +- * Try to re-read the partition table, this only succeeds if +- * none of the devices is busy. +- * +- * The kernel will send out a change event for the disk, and +- * "remove/add" for all partitions. ++ * Try to re-read the partition table. This only succeeds if ++ * none of the devices is busy. The kernel returns 0 if no ++ * partition table is found, and we will not get an event for ++ * the disk. + */ + fd = open(udev_device_get_devnode(dev), O_RDONLY|O_EXCL|O_CLOEXEC|O_NOFOLLOW|O_NONBLOCK); + if (fd >= 0) { + r = ioctl(fd, BLKRRPART, 0); + close(fd); + if (r >= 0) +- return 0; ++ part_table_read = true; + } + +- /* +- * Re-reading the partition table did not work, synthesize "change" +- * events for the disk and all partitions. +- */ +- log_debug("device %s closed, synthesising 'change'", udev_device_get_devnode(dev)); +- strscpyl(filename, sizeof(filename), udev_device_get_syspath(dev), "/uevent", NULL); +- write_string_file(filename, "change"); +- ++ /* search for partitions */ + e = udev_enumerate_new(udev); + if (!e) + return -ENOMEM; +@@ -786,6 +780,37 @@ static int synthesize_change(struct udev + return r; + + r = udev_enumerate_scan_devices(e); ++ ++ udev_list_entry_foreach(item, udev_enumerate_get_list_entry(e)) { ++ _cleanup_udev_device_unref_ struct udev_device *d = NULL; ++ ++ d = udev_device_new_from_syspath(udev, udev_list_entry_get_name(item)); ++ if (!d) ++ continue; ++ ++ if (!streq_ptr("partition", udev_device_get_devtype(d))) ++ continue; ++ ++ has_partitions = true; ++ break; ++ } ++ ++ /* ++ * We have partitions and re-read the table, the kernel already sent ++ * out a "change" event for the disk, and "remove/add" for all ++ * partitions. ++ */ ++ if (part_table_read && has_partitions) ++ return 0; ++ ++ /* ++ * We have partitions but re-reading the partition table did not ++ * work, synthesize "change" for the disk and all partitions. ++ */ ++ log_debug("device %s closed, synthesising 'change'", udev_device_get_devnode(dev)); ++ strscpyl(filename, sizeof(filename), udev_device_get_syspath(dev), "/uevent", NULL); ++ write_string_file(filename, "change"); ++ + udev_list_entry_foreach(item, udev_enumerate_get_list_entry(e)) { + _cleanup_udev_device_unref_ struct udev_device *d = NULL; + diff --git a/1032-udev-guard-REREADPT-by-exclusive-lock-instead-of-O_E.patch b/1032-udev-guard-REREADPT-by-exclusive-lock-instead-of-O_E.patch new file mode 100644 index 00000000..4a6d7c13 --- /dev/null +++ b/1032-udev-guard-REREADPT-by-exclusive-lock-instead-of-O_E.patch @@ -0,0 +1,29 @@ +From 02ba8fb3357daf57f6120ac512fb464a4c623419 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Wed, 4 Jun 2014 16:21:19 +0200 +Subject: [PATCH] udev: guard REREADPT by exclusive lock instead of O_EXCL + +Signed-off-by: Robert Milasan +--- + src/udev/udevd.c | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +Index: systemd-210/src/udev/udevd.c +=================================================================== +--- systemd-210.orig/src/udev/udevd.c ++++ systemd-210/src/udev/udevd.c +@@ -758,9 +758,12 @@ static int synthesize_change(struct udev + * partition table is found, and we will not get an event for + * the disk. + */ +- fd = open(udev_device_get_devnode(dev), O_RDONLY|O_EXCL|O_CLOEXEC|O_NOFOLLOW|O_NONBLOCK); ++ fd = open(udev_device_get_devnode(dev), O_RDONLY|O_CLOEXEC|O_NOFOLLOW|O_NONBLOCK); + if (fd >= 0) { +- r = ioctl(fd, BLKRRPART, 0); ++ r = flock(fd, LOCK_EX|LOCK_NB); ++ if (r >= 0) ++ r = ioctl(fd, BLKRRPART, 0); ++ + close(fd); + if (r >= 0) + part_table_read = true; diff --git a/1033-udev-really-exclude-device-mapper-from-block-device.patch b/1033-udev-really-exclude-device-mapper-from-block-device.patch new file mode 100644 index 00000000..594331c3 --- /dev/null +++ b/1033-udev-really-exclude-device-mapper-from-block-device.patch @@ -0,0 +1,39 @@ +From 638ca89c53e2b897cfb3f627f4acbc7d09af2f4c Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Tue, 10 Jun 2014 15:51:15 +0200 +Subject: [PATCH] udev: really exclude device-mapper from block device + ownership event locking + +Arguments were wrong order, no? +This fixes commits: + +e918a1b5a94f270186dca59156354acd2a596494 +3d06f4183470d42361303086ed9dedd29c0ffc1b + +Signed-off-by: Robert Milasan +--- + src/udev/udevd.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +Index: systemd-210/src/udev/udevd.c +=================================================================== +--- systemd-210.orig/src/udev/udevd.c ++++ systemd-210/src/udev/udevd.c +@@ -304,7 +304,7 @@ static void worker_new(struct event *eve + * IMHO this sounds like a good plan for this moment + */ + if (streq_ptr("block", udev_device_get_subsystem(dev)) && +- !startswith("dm-", udev_device_get_sysname(dev))) { ++ !startswith(udev_device_get_sysname(dev), "dm-")) { + struct udev_device *d = dev; + + if (streq_ptr("partition", udev_device_get_devtype(d))) +@@ -744,7 +744,7 @@ static int synthesize_change(struct udev + + if (streq_ptr("block", udev_device_get_subsystem(dev)) && + streq_ptr("disk", udev_device_get_devtype(dev)) && +- !startswith("dm-", udev_device_get_sysname(dev))) { ++ !startswith(udev_device_get_sysname(dev), "dm-")) { + bool part_table_read = false; + bool has_partitions = false; + int fd; diff --git a/1034-udev-check-the-return-value-from-udev_enumerate_scan.patch b/1034-udev-check-the-return-value-from-udev_enumerate_scan.patch new file mode 100644 index 00000000..c2a21fce --- /dev/null +++ b/1034-udev-check-the-return-value-from-udev_enumerate_scan.patch @@ -0,0 +1,26 @@ +From 47a3fa0f7679521b85f7aeba9e245c52cc7bb2cb Mon Sep 17 00:00:00 2001 +From: Thomas Hindoe Paaboel Andersen +Date: Wed, 4 Jun 2014 23:40:43 +0200 +Subject: [PATCH] udev: check the return value from udev_enumerate_scan_devices + +The return value from udev_enumerate_scan_devices was stored but +never used. I assume this was meant to be checked. + +Signed-off-by: Robert Milasan +--- + src/udev/udevd.c | 2 ++ + 1 file changed, 2 insertions(+) + +Index: systemd-210/src/udev/udevd.c +=================================================================== +--- systemd-210.orig/src/udev/udevd.c ++++ systemd-210/src/udev/udevd.c +@@ -783,6 +783,8 @@ static int synthesize_change(struct udev + return r; + + r = udev_enumerate_scan_devices(e); ++ if (r < 0) ++ return r; + + udev_list_entry_foreach(item, udev_enumerate_get_list_entry(e)) { + _cleanup_udev_device_unref_ struct udev_device *d = NULL; diff --git a/1038-udev-fix-invalid-free-in-enable_name_policy.patch b/1038-udev-fix-invalid-free-in-enable_name_policy.patch new file mode 100644 index 00000000..4afdb7ce --- /dev/null +++ b/1038-udev-fix-invalid-free-in-enable_name_policy.patch @@ -0,0 +1,30 @@ +From f8a0bb5285024b6ce372c3157e761e6543ebdcd2 Mon Sep 17 00:00:00 2001 +From: Andreas Henriksson +Date: Fri, 13 Jun 2014 18:48:21 +0200 +Subject: [PATCH] udev: fix invalid free() in enable_name_policy() + +static bool enable_name_policy(...) in ./src/udev/net/link-config.c +calls proc_cmdline(...) to get "line" initialized, but +proc_cmdline(...) does not guarantee that atleast when both +conditions (detect_container(NULL) > 0) and +read_full_file(...) returned < 0. +--- + src/udev/net/link-config.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/udev/net/link-config.c src/udev/net/link-config.c +index a9acc3d..7a9d01b 100644 +--- src/udev/net/link-config.c ++++ src/udev/net/link-config.c +@@ -185,7 +185,7 @@ static int load_link(link_config_ctx *ctx, const char *filename) { + } + + static bool enable_name_policy(void) { +- _cleanup_free_ char *line; ++ _cleanup_free_ char *line = NULL; + char *w, *state; + int r; + size_t l; +-- +1.7.9.2 + diff --git a/1039-udevadm-settle-fixed-return-code-for-empty-queue.patch b/1039-udevadm-settle-fixed-return-code-for-empty-queue.patch new file mode 100644 index 00000000..2760970f --- /dev/null +++ b/1039-udevadm-settle-fixed-return-code-for-empty-queue.patch @@ -0,0 +1,34 @@ +From 83be2c398589a3d64db5999cfd5527c5219bff46 Mon Sep 17 00:00:00 2001 +From: Harald Hoyer +Date: Tue, 20 May 2014 12:25:16 +0200 +Subject: [PATCH] udevadm-settle: fixed return code for empty queue + +If the udev queue is empty and "/run/udev/queue" does not exist, +"udevadm settle" would return with EXIT_FAILURE, because the inotify on +"/run/udev/queue" would fail with ENOENT. + +This patch lets "udevadm settle" exit with EXIT_SUCCESS in this case. +--- + src/udev/udevadm-settle.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git src/udev/udevadm-settle.c src/udev/udevadm-settle.c +index 65fc35f..66fd843 100644 +--- src/udev/udevadm-settle.c ++++ src/udev/udevadm-settle.c +@@ -116,7 +116,11 @@ static int adm_settle(struct udev *udev, int argc, char *argv[]) + } + + if (inotify_add_watch(pfd[0].fd, "/run/udev/queue" , IN_DELETE) < 0) { +- log_debug("watching /run/udev failed"); ++ /* If it does not exist, we don't have to wait */ ++ if (errno == ENOENT) ++ rc = EXIT_SUCCESS; ++ else ++ log_debug("watching /run/udev/queue failed"); + goto out; + } + +-- +1.7.9.2 + diff --git a/1041-libudev-fix-udev_queue_get_queue_is_empty-logic.patch b/1041-libudev-fix-udev_queue_get_queue_is_empty-logic.patch new file mode 100644 index 00000000..21d21356 --- /dev/null +++ b/1041-libudev-fix-udev_queue_get_queue_is_empty-logic.patch @@ -0,0 +1,25 @@ +From 45e60962b7965f32755a76b79a28126299aac149 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Fri, 27 Jun 2014 14:20:17 +0200 +Subject: [PATCH] libudev: fix udev_queue_get_queue_is_empty() logic + +--- + src/libudev/libudev-queue.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/libudev/libudev-queue.c src/libudev/libudev-queue.c +index eb0e096..c32a7ef 100644 +--- src/libudev/libudev-queue.c ++++ src/libudev/libudev-queue.c +@@ -175,7 +175,7 @@ _public_ int udev_queue_get_udev_is_active(struct udev_queue *udev_queue) + **/ + _public_ int udev_queue_get_queue_is_empty(struct udev_queue *udev_queue) + { +- return access("/run/udev/queue", F_OK) >= 0; ++ return access("/run/udev/queue", F_OK) < 0; + } + + /** +-- +1.7.9.2 + diff --git a/1042-libudev-queue-provide-file-descriptor-to-watch-busy-.patch b/1042-libudev-queue-provide-file-descriptor-to-watch-busy-.patch new file mode 100644 index 00000000..a9458e36 --- /dev/null +++ b/1042-libudev-queue-provide-file-descriptor-to-watch-busy-.patch @@ -0,0 +1,248 @@ +Based on 14cb733684d3c3f50d088a3a370ddf8e8894dfa4 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Fri, 27 Jun 2014 17:42:44 +0200 +Subject: [PATCH] libudev: queue provide file descriptor to watch busy event + queue + +--- + docs/libudev/libudev-sections.txt | 2 ++ + src/libudev/libudev-queue.c | 46 +++++++++++++++++++++++++++++++++++ + src/libudev/libudev.h | 2 ++ + src/libudev/libudev.sym | 2 ++ + src/udev/udevadm-settle.c | 48 ++++++++++++++++--------------------- + 5 files changed, 73 insertions(+), 27 deletions(-) + +diff --git docs/libudev/libudev-sections.txt docs/libudev/libudev-sections.txt +index c154645..8a31ded 100644 +--- docs/libudev/libudev-sections.txt ++++ docs/libudev/libudev-sections.txt +@@ -116,6 +116,8 @@ udev_queue_get_seqnum_sequence_is_finished + udev_queue_get_queued_list_entry + udev_queue_get_kernel_seqnum + udev_queue_get_udev_seqnum ++udev_queue_get_fd ++udev_queue_flush + + +
+diff --git src/libudev/libudev-queue.c src/libudev/libudev-queue.c +index c32a7ef..d4334b4 100644 +--- src/libudev/libudev-queue.c ++++ src/libudev/libudev-queue.c +@@ -26,6 +26,7 @@ + #include + #include + #include ++#include + + #include "libudev.h" + #include "libudev-private.h" +@@ -45,6 +46,7 @@ + struct udev_queue { + struct udev *udev; + int refcount; ++ int fd; + }; + + /** +@@ -69,6 +71,7 @@ _public_ struct udev_queue *udev_queue_new(struct udev *udev) + + udev_queue->refcount = 1; + udev_queue->udev = udev; ++ udev_queue->fd = -1; + return udev_queue; + } + +@@ -107,6 +110,9 @@ _public_ struct udev_queue *udev_queue_unref(struct udev_queue *udev_queue) + if (udev_queue->refcount > 0) + return NULL; + ++ if (udev_queue->fd >= 0) ++ close_nointr_nofail(udev_queue->fd); ++ + free(udev_queue); + return NULL; + } +@@ -222,3 +228,44 @@ _public_ struct udev_list_entry *udev_queue_get_queued_list_entry(struct udev_qu + { + return NULL; + } ++ ++/** ++ * udev_queue_get_fd: ++ * @udev_queue: udev queue context ++ * ++ * Returns: a file descriptor to watch for a queue to become empty. ++ */ ++_public_ int udev_queue_get_fd(struct udev_queue *udev_queue) { ++ int fd; ++ int r; ++ ++ if (udev_queue->fd >= 0) ++ return udev_queue->fd; ++ ++ fd = inotify_init1(IN_CLOEXEC); ++ if (fd < 0) ++ return -errno; ++ ++ r = inotify_add_watch(fd, "/run/udev/queue" , IN_DELETE); ++ if (r < 0) { ++ r = -errno; ++ close(fd); ++ return r; ++ } ++ ++ udev_queue->fd = fd; ++ return fd; ++} ++ ++/** ++ * udev_queue_flush: ++ * @udev_queue: udev queue context ++ * ++ * Returns: the result of clearing the watch for queue changes. ++ */ ++_public_ int udev_queue_flush(struct udev_queue *udev_queue) { ++ if (udev_queue->fd < 0) ++ return -EINVAL; ++ ++ return flush_fd(udev_queue->fd); ++} +diff --git src/libudev/libudev.h src/libudev/libudev.h +index ceb89bd..4f2f115 100644 +--- src/libudev/libudev.h ++++ src/libudev/libudev.h +@@ -177,6 +177,8 @@ int udev_queue_get_queue_is_empty(struct udev_queue *udev_queue); + int udev_queue_get_seqnum_is_finished(struct udev_queue *udev_queue, unsigned long long int seqnum) __attribute__ ((deprecated)); + int udev_queue_get_seqnum_sequence_is_finished(struct udev_queue *udev_queue, + unsigned long long int start, unsigned long long int end) __attribute__ ((deprecated)); ++int udev_queue_get_fd(struct udev_queue *udev_queue); ++int udev_queue_flush(struct udev_queue *udev_queue); + struct udev_list_entry *udev_queue_get_queued_list_entry(struct udev_queue *udev_queue) __attribute__ ((deprecated)); + + /* +diff --git src/libudev/libudev.sym src/libudev/libudev.sym +index 1e6f885..95cd1c7 100644 +--- src/libudev/libudev.sym ++++ src/libudev/libudev.sym +@@ -82,6 +82,8 @@ global: + udev_queue_get_udev; + udev_queue_get_udev_is_active; + udev_queue_get_udev_seqnum; ++ udev_queue_get_fd; ++ udev_queue_flush; + udev_queue_new; + udev_queue_ref; + udev_queue_unref; +diff --git src/udev/udevadm-settle.c src/udev/udevadm-settle.c +index 66fd843..79e8b59 100644 +--- src/udev/udevadm-settle.c ++++ src/udev/udevadm-settle.c +@@ -29,7 +29,6 @@ + #include + #include + #include +-#include + #include + #include + #include +@@ -59,7 +58,9 @@ static int adm_settle(struct udev *udev, int argc, char *argv[]) + const char *exists = NULL; + unsigned int timeout = 120; + struct pollfd pfd[1] = { {.fd = -1}, }; +- int rc = EXIT_FAILURE, c; ++ int c; ++ struct udev_queue *queue; ++ int rc = EXIT_FAILURE; + + while ((c = getopt_long(argc, argv, "s:e:t:E:qh", options, NULL)) >= 0) { + switch (c) { +@@ -79,9 +80,9 @@ static int adm_settle(struct udev *udev, int argc, char *argv[]) + break; + case 'h': + help(); +- exit(EXIT_SUCCESS); ++ return EXIT_SUCCESS; + case '?': +- exit(EXIT_FAILURE); ++ return EXIT_FAILURE; + default: + assert_not_reached("Unknown argument"); + } +@@ -89,7 +90,7 @@ static int adm_settle(struct udev *udev, int argc, char *argv[]) + + if (optind < argc) { + fprintf(stderr, "Extraneous argument: '%s'\n", argv[optind]); +- exit(EXIT_FAILURE); ++ return EXIT_FAILURE; + } + + /* guarantee that the udev daemon isn't pre-processing */ +@@ -101,26 +102,23 @@ static int adm_settle(struct udev *udev, int argc, char *argv[]) + if (udev_ctrl_send_ping(uctrl, timeout) < 0) { + log_debug("no connection to daemon"); + udev_ctrl_unref(uctrl); +- rc = EXIT_SUCCESS; +- goto out; ++ return EXIT_SUCCESS; + } + udev_ctrl_unref(uctrl); + } + } + +- pfd[0].events = POLLIN; +- pfd[0].fd = inotify_init1(IN_CLOEXEC); +- if (pfd[0].fd < 0) { +- log_error("inotify_init failed: %m"); +- goto out; ++ queue = udev_queue_new(udev); ++ if (!queue) { ++ log_error("unable to get udev queue"); ++ return EXIT_FAILURE; + } + +- if (inotify_add_watch(pfd[0].fd, "/run/udev/queue" , IN_DELETE) < 0) { +- /* If it does not exist, we don't have to wait */ +- if (errno == ENOENT) +- rc = EXIT_SUCCESS; +- else +- log_debug("watching /run/udev/queue failed"); ++ pfd[0].events = POLLIN; ++ pfd[0].fd = udev_queue_get_fd(queue); ++ if (pfd[0].fd < 0) { ++ log_debug("queue is empty, nothing to watch"); ++ rc = EXIT_SUCCESS; + goto out; + } + +@@ -131,22 +129,18 @@ static int adm_settle(struct udev *udev, int argc, char *argv[]) + } + + /* exit if queue is empty */ +- if (access("/run/udev/queue", F_OK) < 0) { ++ if (udev_queue_get_queue_is_empty(queue)) { + rc = EXIT_SUCCESS; + break; + } + +- /* wake up when "queue" file is deleted */ +- if (poll(pfd, 1, 100) > 0 && pfd[0].revents & POLLIN) { +- char buf[sizeof(struct inotify_event) + PATH_MAX]; +- +- read(pfd[0].fd, buf, sizeof(buf)); +- } ++ /* wake up when queue is empty */ ++ if (poll(pfd, 1, 100) > 0 && pfd[0].revents & POLLIN) ++ udev_queue_flush(queue); + } + + out: +- if (pfd[0].fd >= 0) +- close(pfd[0].fd); ++ udev_queue_unref(queue); + return rc; + } + +-- +1.7.9.2 + diff --git a/1043-libudev-queue-watch-entire-directory-to-allow-the-re.patch b/1043-libudev-queue-watch-entire-directory-to-allow-the-re.patch new file mode 100644 index 00000000..78c1c084 --- /dev/null +++ b/1043-libudev-queue-watch-entire-directory-to-allow-the-re.patch @@ -0,0 +1,40 @@ +From 8a7a0c19edd2d971d4aa9d635f7978af841e8278 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Fri, 27 Jun 2014 19:54:45 +0200 +Subject: [PATCH] libudev: queue - watch entire directory to allow the re-use + of the watch descriptor + +--- + src/libudev/libudev-queue.c | 2 +- + src/udev/udevadm-settle.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git src/libudev/libudev-queue.c src/libudev/libudev-queue.c +index d4334b4..8ef1f3d 100644 +--- src/libudev/libudev-queue.c ++++ src/libudev/libudev-queue.c +@@ -245,7 +245,7 @@ _public_ int udev_queue_get_fd(struct udev_queue *udev_queue) { + if (fd < 0) + return -errno; + +- r = inotify_add_watch(fd, "/run/udev/queue" , IN_DELETE); ++ r = inotify_add_watch(fd, "/run/udev" , IN_DELETE); + if (r < 0) { + r = -errno; + close(fd); +diff --git src/udev/udevadm-settle.c src/udev/udevadm-settle.c +index 79e8b59..fa5b0c2 100644 +--- src/udev/udevadm-settle.c ++++ src/udev/udevadm-settle.c +@@ -135,7 +135,7 @@ static int adm_settle(struct udev *udev, int argc, char *argv[]) + } + + /* wake up when queue is empty */ +- if (poll(pfd, 1, 100) > 0 && pfd[0].revents & POLLIN) ++ if (poll(pfd, 1, MSEC_PER_SEC) > 0 && pfd[0].revents & POLLIN) + udev_queue_flush(queue); + } + +-- +1.7.9.2 + diff --git a/1044-rules-update-qemu-hid-rules.patch b/1044-rules-update-qemu-hid-rules.patch new file mode 100644 index 00000000..52741afe --- /dev/null +++ b/1044-rules-update-qemu-hid-rules.patch @@ -0,0 +1,45 @@ +From cd31d1884f1ecf38e11bc6268f446d75dfafbc25 Mon Sep 17 00:00:00 2001 +From: Gerd Hoffmann +Date: Mon, 24 Mar 2014 12:07:41 +0100 +Subject: [PATCH] rules: update qemu hid rules + +Update comment to be a bit more specific. + +Change match to blacklist the serial number of the broken devices +instead of whitelisting the serial number of the fixed devices. +This allows to do something useful with the serial number in the +future. +--- + rules/42-usb-hid-pm.rules | 15 ++++++++------- + 1 file changed, 8 insertions(+), 7 deletions(-) + +diff --git rules/42-usb-hid-pm.rules rules/42-usb-hid-pm.rules +index 3fd6e8a..c675b5b 100644 +--- rules/42-usb-hid-pm.rules ++++ rules/42-usb-hid-pm.rules +@@ -2,14 +2,15 @@ + # + # Enable autosuspend for qemu emulated usb hid devices + +-# Note that there are buggy qemu versions which advertise remote +-# wakeup support but don't actually implement it correctly. This +-# is the reason why we need a match for the serial number here. +-# The serial number "42" is used to tag the implementations where ++# Note that there are buggy qemu versions (0.13 & older) which ++# advertise remote wakeup support but don't actually implement ++# it correctly. This is the reason why we need a match for the ++# serial number here. Old, broken versions have serial "1". ++# It has been changed to "42" after fixing the bug to indicate + # remote wakeup is working. +-ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Mouse", ATTR{serial}=="42", TEST=="power/control", ATTR{power/control}="auto" +-ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Tablet", ATTR{serial}=="42", TEST=="power/control", ATTR{power/control}="auto" +-ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Keyboard", ATTR{serial}=="42", TEST=="power/control", ATTR{power/control}="auto" ++ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Mouse", ATTR{serial}!="1", TEST=="power/control", ATTR{power/control}="auto" ++ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Tablet", ATTR{serial}!="1", TEST=="power/control", ATTR{power/control}="auto" ++ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Keyboard", ATTR{serial}!="1", TEST=="power/control", ATTR{power/control}="auto" + + # Catch-all for Avocent HID devices. Keyed off interface in order to only + # trigger on HID class devices. +-- +1.7.9.2 + diff --git a/1045-rules-don-t-enable-usb-pm-for-Avocent-devices.patch b/1045-rules-don-t-enable-usb-pm-for-Avocent-devices.patch new file mode 100644 index 00000000..cd1f72c7 --- /dev/null +++ b/1045-rules-don-t-enable-usb-pm-for-Avocent-devices.patch @@ -0,0 +1,29 @@ +Based on 52fb538361053f8c4abce0e40cd0bae3d28ceb16 Mon Sep 17 00:00:00 2001 +From: Tom Hirst +Date: Wed, 25 Jun 2014 11:57:11 +0000 +Subject: [PATCH] rules: don't enable usb pm for Avocent devices + +The Avocent KVM over IP devices doesn't work correctly with USB power +management enabled. +--- + rules/42-usb-hid-pm.rules | 4 ---- + 1 file changed, 4 deletions(-) + +diff --git rules/42-usb-hid-pm.rules rules/42-usb-hid-pm.rules +index c675b5b..4c300da 100644 +--- rules/42-usb-hid-pm.rules ++++ rules/42-usb-hid-pm.rules +@@ -12,10 +12,6 @@ ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Mouse", ATTR{serial}!= + ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Tablet", ATTR{serial}!="1", TEST=="power/control", ATTR{power/control}="auto" + ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Keyboard", ATTR{serial}!="1", TEST=="power/control", ATTR{power/control}="auto" + +-# Catch-all for Avocent HID devices. Keyed off interface in order to only +-# trigger on HID class devices. +-ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="0624", ATTR{bInterfaceClass}=="03", TEST=="../power/control", ATTR{../power/control}="auto" +- + # Dell DRAC 4 + ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="413c", ATTR{idProduct}=="2500", TEST=="power/control", ATTR{power/control}="auto" + +-- +1.7.9.2 + diff --git a/1047-udev-net_setup_link-builtin-should-print-the-reason-.patch b/1047-udev-net_setup_link-builtin-should-print-the-reason-.patch new file mode 100644 index 00000000..47fce280 --- /dev/null +++ b/1047-udev-net_setup_link-builtin-should-print-the-reason-.patch @@ -0,0 +1,61 @@ +From 01d4590b775661ebc71c7b81b0c62ccd69395268 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 2 Jul 2014 15:13:29 +0200 +Subject: [PATCH] udev: net_setup_link builtin should print the reason why + something fails + +Let's tell users what is going wrong. +--- + src/udev/udev-builtin-net_setup_link.c | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git src/udev/udev-builtin-net_setup_link.c src/udev/udev-builtin-net_setup_link.c +index 3cd384e..6207269 100644 +--- src/udev/udev-builtin-net_setup_link.c ++++ src/udev/udev-builtin-net_setup_link.c +@@ -43,17 +43,17 @@ static int builtin_net_setup_link(struct udev_device *dev, int argc, char **argv + r = link_config_get(ctx, dev, &link); + if (r < 0) { + if (r == -ENOENT) { +- log_debug("No matching link configuration found"); ++ log_debug("No matching link configuration found."); + return EXIT_SUCCESS; + } else { +- log_error("Could not get link config"); ++ log_error("Could not get link config: %s", strerror(-r)); + return EXIT_FAILURE; + } + } + + r = link_config_apply(ctx, link, dev, &name); + if (r < 0) { +- log_error("Could not apply link config to %s", udev_device_get_sysname(dev)); ++ log_error("Could not apply link config to %s: %s", udev_device_get_sysname(dev), strerror(-r)); + return EXIT_FAILURE; + } + +@@ -77,18 +77,18 @@ static int builtin_net_setup_link_init(struct udev *udev) { + if (r < 0) + return r; + +- log_debug("Created link configuration context"); ++ log_debug("Created link configuration context."); + return 0; + } + + static void builtin_net_setup_link_exit(struct udev *udev) { + link_config_ctx_free(ctx); + ctx = NULL; +- log_debug("Unloaded link configuration context"); ++ log_debug("Unloaded link configuration context."); + } + + static bool builtin_net_setup_link_validate(struct udev *udev) { +- log_debug("Check if link configuration needs reloading"); ++ log_debug("Check if link configuration needs reloading."); + if (!ctx) + return false; + +-- +1.7.9.2 + diff --git a/1048-udev-net_setup_link-add-a-bit-more-logging.patch b/1048-udev-net_setup_link-add-a-bit-more-logging.patch new file mode 100644 index 00000000..740e3c36 --- /dev/null +++ b/1048-udev-net_setup_link-add-a-bit-more-logging.patch @@ -0,0 +1,39 @@ +From 866ee3682213789f85b877700457fdca05695a0e Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Thu, 3 Jul 2014 09:57:27 +0200 +Subject: [PATCH] udev: net_setup_link - add a bit more logging + +--- + src/udev/net/link-config.c | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +diff --git src/udev/net/link-config.c src/udev/net/link-config.c +index 7a9d01b..b8650a6 100644 +--- src/udev/net/link-config.c ++++ src/udev/net/link-config.c +@@ -92,14 +92,20 @@ static int link_config_ctx_connect(link_config_ctx *ctx) { + + if (ctx->ethtool_fd == -1) { + r = ethtool_connect(&ctx->ethtool_fd); +- if (r < 0) ++ if (r < 0) { ++ log_warning("link_config: could not connect to ethtool: %s", ++ strerror(-r)); + return r; ++ } + } + + if (!ctx->rtnl) { + r = sd_rtnl_open(&ctx->rtnl, 0); +- if (r < 0) ++ if (r < 0) { ++ log_warning("link_config: could not connect to rtnl: %s", ++ strerror(-r)); + return r; ++ } + } + + return 0; +-- +1.7.9.2 + diff --git a/1049-udev-link_config-ignore-errors-due-to-missing-MAC-ad.patch b/1049-udev-link_config-ignore-errors-due-to-missing-MAC-ad.patch new file mode 100644 index 00000000..6b3d7ec6 --- /dev/null +++ b/1049-udev-link_config-ignore-errors-due-to-missing-MAC-ad.patch @@ -0,0 +1,36 @@ +Based on a669ea9860900d5cdebbc4cb9aaea72db7e28a02 Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Mon, 7 Jul 2014 14:50:16 +0200 +Subject: [PATCH] udev: link_config - ignore errors due to missing MAC address + +Otherwis, we get misleading error messages on links with MACs. + +Reported by Leonid Isaev. +--- + src/udev/net/link-config.c | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +--- src/udev/net/link-config.c ++++ src/udev/net/link-config.c 2014-07-08 10:44:19.450735575 +0000 +@@ -440,7 +440,9 @@ int link_config_apply(link_config_ctx *c + case MACPOLICY_PERSISTENT: + if (!mac_is_permanent(device)) { + r = get_mac(device, false, &generated_mac); +- if (r < 0) ++ if (r == -ENOENT) ++ break; ++ else if (r < 0) + return r; + mac = &generated_mac; + } +@@ -448,7 +450,9 @@ int link_config_apply(link_config_ctx *c + case MACPOLICY_RANDOM: + if (!mac_is_random(device)) { + r = get_mac(device, true, &generated_mac); +- if (r < 0) ++ if (r == -ENOENT) ++ break; ++ else if (r < 0) + return r; + mac = &generated_mac; + } diff --git a/1052-rules-uaccess-add-ID_SOFTWARE_RADIO.patch b/1052-rules-uaccess-add-ID_SOFTWARE_RADIO.patch new file mode 100644 index 00000000..edab1583 --- /dev/null +++ b/1052-rules-uaccess-add-ID_SOFTWARE_RADIO.patch @@ -0,0 +1,45 @@ +From 30632d97d9d68c8202e562f34afae8f8d6e9c377 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Tue, 15 Jul 2014 17:35:53 +0200 +Subject: [PATCH] rules: uaccess - add ID_SOFTWARE_RADIO + +On Tue, Jul 15, 2014 at 1:52 PM, Alick Zhao wrote: +>>> +>>> So maybe ID_SOFTWARE_RADIO ? +>> +>> Hmm, SDR is more a term for a generic technology than for a device +>> class. To me it does not really sound like an administrator would know +>> what this is. +>> +>> What exactly is the device or subsystem you want to make accessible to +>> locally logged-in users only? +> +> Initially it is bladeRF, but many more are of interest: USRP, rtl-sdr, +> HackRF, ... [1] +> +> I agree an administrator might not know what SDR is, since it is +> currently still not widely known, and makes sense only for amateurs +> and researchers. But as a SDR fan, I see many new SDR peripherals +> are created recently, and expect to see more. So a generic ID seems +> reasonable to me. +> +> [1] http://en.wikipedia.org/wiki/List_of_software-defined_radios +--- + src/login/70-uaccess.rules | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git src/login/70-uaccess.rules src/login/70-uaccess.rules +index 57f619d..694df2c 100644 +--- src/login/70-uaccess.rules ++++ src/login/70-uaccess.rules +@@ -72,4 +72,7 @@ ENV{DDC_DEVICE}=="?*", TAG+="uaccess" + # media player raw devices (for user-mode drivers, Android SDK, etc.) + SUBSYSTEM=="usb", ENV{ID_MEDIA_PLAYER}=="?*", TAG+="uaccess" + ++# software-defined radio communication devices ++ENV{ID_SOFTWARE_RADIO}=="?*", TAG+="uaccess" ++ + LABEL="uaccess_end" +-- +1.7.9.2 + diff --git a/1054-udev-exclude-MD-from-block-device-ownership-event-lo.patch b/1054-udev-exclude-MD-from-block-device-ownership-event-lo.patch new file mode 100644 index 00000000..ecf11ad5 --- /dev/null +++ b/1054-udev-exclude-MD-from-block-device-ownership-event-lo.patch @@ -0,0 +1,53 @@ +From 2e5b17d01347d3c3118be2b8ad63d20415dbb1f0 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Thu, 24 Jul 2014 23:37:35 +0200 +Subject: [PATCH] udev: exclude MD from block device ownership event locking + +MD instantiates devices at open(). This is incomptible with the +locking logic, as the "change" event emitted when stopping a +device will bring it back. +--- + src/udev/udevd.c | 23 +++++++---------------- + 1 file changed, 7 insertions(+), 16 deletions(-) + +diff --git src/udev/udevd.c src/udev/udevd.c +index a45d324..db935d6 100644 +--- src/udev/udevd.c ++++ src/udev/udevd.c +@@ -285,26 +285,17 @@ static void worker_new(struct event *event) + udev_event->exec_delay = exec_delay; + + /* +- * Take a "read lock" on the device node; this establishes ++ * Take a shared lock on the device node; this establishes + * a concept of device "ownership" to serialize device +- * access. External processes holding a "write lock" will ++ * access. External processes holding an exclusive lock will + * cause udev to skip the event handling; in the case udev +- * acquired the lock, the external process will block until ++ * acquired the lock, the external process can block until + * udev has finished its event handling. + */ +- +- /* +- * since we make check - device seems unused - we try +- * ioctl to deactivate - and device is found to be opened +- * sure, you try to take a write lock +- * if you get it udev is out +- * if you can't get it, udev is busy +- * we cannot deactivate openned device (as it is in-use) +- * maybe we should just exclude dm from that thing entirely +- * IMHO this sounds like a good plan for this moment +- */ +- if (streq_ptr("block", udev_device_get_subsystem(dev)) && +- !startswith(udev_device_get_sysname(dev), "dm-")) { ++ if (!streq_ptr(udev_device_get_action(dev), "remove") && ++ streq_ptr("block", udev_device_get_subsystem(dev)) && ++ !startswith(udev_device_get_sysname(dev), "dm-") && ++ !startswith(udev_device_get_sysname(dev), "md")) { + struct udev_device *d = dev; + + if (streq_ptr("partition", udev_device_get_devtype(d))) +-- +1.7.9.2 + diff --git a/1056-udevd-add-event-timeout-commandline-option.patch b/1056-udevd-add-event-timeout-commandline-option.patch new file mode 100644 index 00000000..1f670688 --- /dev/null +++ b/1056-udevd-add-event-timeout-commandline-option.patch @@ -0,0 +1,119 @@ +From 9719859c07aa13539ed2cd4b31972cd30f678543 Mon Sep 17 00:00:00 2001 +From: Hannes Reinecke +Date: Tue, 29 Jul 2014 09:06:14 +0200 +Subject: [PATCH] udevd: add --event-timeout commandline option + +Some events take longer than the default 30 seconds. Killing those +events will leave the machine halfway configured. + +Add a commandline option '--event-timeout' to handle these cases. +--- + man/systemd-udevd.service.xml | 19 +++++++++++++++++++ + src/udev/udevd.c | 12 +++++++++++- + 2 files changed, 30 insertions(+), 1 deletion(-) + +diff --git man/systemd-udevd.service.xml man/systemd-udevd.service.xml +index f44b7a0..8de43b1 100644 +--- man/systemd-udevd.service.xml ++++ man/systemd-udevd.service.xml +@@ -44,6 +44,7 @@ + + + ++ + + + +@@ -96,6 +97,15 @@ + + + ++ ++ ++ Wait for the event to finish up to the given ++ number of seconds. After this time the event will ++ be terminated. Default is 30. ++ ++ ++ ++ + + + Specify when systemd-udevd should resolve names of users and groups. +@@ -156,6 +166,15 @@ + + + ++ udev.event-timeout= ++ rd.udev.event-timeout= ++ ++ Wait for events to finish up to the given number ++ of seconds. This option might be useful if events are ++ terminated due to a timeout in large configurations. ++ ++ ++ + net.ifnames= + + Network interfaces are renamed to give them predictable names +diff --git src/udev/udevd.c src/udev/udevd.c +index db935d6..c5dd739 100644 +--- src/udev/udevd.c ++++ src/udev/udevd.c +@@ -74,6 +74,7 @@ static bool reload; + static int children; + static int children_max; + static int exec_delay; ++static int event_timeout = 30; + static sigset_t sigmask_orig; + static UDEV_LIST(event_list); + static UDEV_LIST(worker_list); +@@ -312,6 +313,9 @@ static void worker_new(struct event *event) + } + } + ++ if (event_timeout != 30) ++ udev_event->timeout_usec = event_timeout * USEC_PER_SEC; ++ + /* apply rules, create node, symlinks */ + udev_event_execute_rules(udev_event, rules, &sigmask_orig); + +@@ -1009,6 +1013,8 @@ static void kernel_cmdline_options(struct udev *udev) + children_max = strtoul(opt + 18, NULL, 0); + } else if (startswith(opt, "udev.exec-delay=")) { + exec_delay = strtoul(opt + 16, NULL, 0); ++ } else if (startswith(opt, "udev.event-timeout=")) { ++ event_timeout = strtoul(opt + 16, NULL, 0); + } + + free(s); +@@ -1026,6 +1032,7 @@ int main(int argc, char *argv[]) + { "debug", no_argument, NULL, 'D' }, + { "children-max", required_argument, NULL, 'c' }, + { "exec-delay", required_argument, NULL, 'e' }, ++ { "event-timeout", required_argument, NULL, 't' }, + { "resolve-names", required_argument, NULL, 'N' }, + { "help", no_argument, NULL, 'h' }, + { "version", no_argument, NULL, 'V' }, +@@ -1069,6 +1076,9 @@ int main(int argc, char *argv[]) + case 'e': + exec_delay = strtoul(optarg, NULL, 0); + break; ++ case 't': ++ event_timeout = strtoul(optarg, NULL, 0); ++ break; + case 'D': + debug = true; + log_set_max_level(LOG_DEBUG); +@@ -1406,7 +1416,7 @@ int main(int argc, char *argv[]) + if (worker->state != WORKER_RUNNING) + continue; + +- if ((now(CLOCK_MONOTONIC) - worker->event_start_usec) > 30 * USEC_PER_SEC) { ++ if ((now(CLOCK_MONOTONIC) - worker->event_start_usec) > event_timeout * USEC_PER_SEC) { + log_error("worker [%u] %s timeout; kill it", worker->pid, + worker->event ? worker->event->devpath : ""); + kill(worker->pid, SIGKILL); +-- +1.7.9.2 + diff --git a/1057-udev-unify-event-timeout-handling.patch b/1057-udev-unify-event-timeout-handling.patch new file mode 100644 index 00000000..9aa819b6 --- /dev/null +++ b/1057-udev-unify-event-timeout-handling.patch @@ -0,0 +1,504 @@ +From dd5eddd28a74a49607a8fffcaf960040dba98479 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Tue, 29 Jul 2014 15:18:27 +0200 +Subject: [PATCH] udev: unify event timeout handling + +--- + man/systemd-udevd.service.xml | 7 +++--- + man/udev.xml | 7 ------ + src/test/test-udev.c | 5 ++-- + src/udev/udev-event.c | 53 ++++++++++++++++++++++------------------- + src/udev/udev-rules.c | 38 ++++++++--------------------- + src/udev/udev.h | 8 +++---- + src/udev/udevadm-test.c | 2 +- + src/udev/udevd.c | 32 ++++++++++--------------- + 8 files changed, 61 insertions(+), 91 deletions(-) + +diff --git man/systemd-udevd.service.xml man/systemd-udevd.service.xml +index 8de43b1..3053dc7 100644 +--- man/systemd-udevd.service.xml ++++ man/systemd-udevd.service.xml +@@ -99,9 +99,8 @@ + + + +- Wait for the event to finish up to the given +- number of seconds. After this time the event will +- be terminated. Default is 30. ++ Set the number of seconds to wait for events to finish. After ++ this time the event will be terminated. The default is 30 seconds. + + + +@@ -171,7 +170,7 @@ + + Wait for events to finish up to the given number + of seconds. This option might be useful if events are +- terminated due to a timeout in large configurations. ++ terminated due to kernel drivers taking too long to initialize. + + + +diff --git man/udev.xml man/udev.xml +index 4e5f8f0..123c073 100644 +--- man/udev.xml ++++ man/udev.xml +@@ -516,13 +516,6 @@ + + + +- +- +- Number of seconds an event waits for operations to finish before +- giving up and terminating itself. +- +- +- + + + Usually control and other possibly unsafe characters are replaced +diff --git src/test/test-udev.c src/test/test-udev.c +index b057cc8..26d6537 100644 +--- src/test/test-udev.c ++++ src/test/test-udev.c +@@ -80,7 +80,6 @@ out: + return err; + } + +- + int main(int argc, char *argv[]) { + _cleanup_udev_unref_ struct udev *udev = NULL; + _cleanup_udev_event_unref_ struct udev_event *event = NULL; +@@ -155,8 +154,8 @@ int main(int argc, char *argv[]) { + } + } + +- udev_event_execute_rules(event, rules, &sigmask_orig); +- udev_event_execute_run(event, NULL); ++ udev_event_execute_rules(event, USEC_PER_SEC, rules, &sigmask_orig); ++ udev_event_execute_run(event, USEC_PER_SEC, NULL); + out: + if (event != NULL && event->fd_signal >= 0) + close(event->fd_signal); +diff --git src/udev/udev-event.c src/udev/udev-event.c +index 5213a4a..6ad80d5 100644 +--- src/udev/udev-event.c ++++ src/udev/udev-event.c +@@ -48,7 +48,6 @@ struct udev_event *udev_event_new(struct udev_device *dev) + udev_list_init(udev, &event->seclabel_list, false); + event->fd_signal = -1; + event->birth_usec = now(CLOCK_MONOTONIC); +- event->timeout_usec = 30 * 1000 * 1000; + return event; + } + +@@ -422,9 +421,10 @@ static int spawn_exec(struct udev_event *event, + } + + static void spawn_read(struct udev_event *event, +- const char *cmd, +- int fd_stdout, int fd_stderr, +- char *result, size_t ressize) ++ usec_t timeout_usec, ++ const char *cmd, ++ int fd_stdout, int fd_stderr, ++ char *result, size_t ressize) + { + size_t respos = 0; + int fd_ep = -1; +@@ -467,15 +467,15 @@ static void spawn_read(struct udev_event *event, + struct epoll_event ev[4]; + int i; + +- if (event->timeout_usec > 0) { ++ if (timeout_usec > 0) { + usec_t age_usec; + + age_usec = now(CLOCK_MONOTONIC) - event->birth_usec; +- if (age_usec >= event->timeout_usec) { ++ if (age_usec >= timeout_usec) { + log_error("timeout '%s'", cmd); + goto out; + } +- timeout = ((event->timeout_usec - age_usec) / 1000) + 1000; ++ timeout = ((timeout_usec - age_usec) / USEC_PER_MSEC) + MSEC_PER_SEC; + } else { + timeout = -1; + } +@@ -543,8 +543,9 @@ out: + close(fd_ep); + } + +-static int spawn_wait(struct udev_event *event, const char *cmd, pid_t pid) +-{ ++static int spawn_wait(struct udev_event *event, ++ usec_t timeout_usec, ++ const char *cmd, pid_t pid) { + struct pollfd pfd[1]; + int err = 0; + +@@ -555,14 +556,14 @@ static int spawn_wait(struct udev_event *event, const char *cmd, pid_t pid) + int timeout; + int fdcount; + +- if (event->timeout_usec > 0) { ++ if (timeout_usec > 0) { + usec_t age_usec; + + age_usec = now(CLOCK_MONOTONIC) - event->birth_usec; +- if (age_usec >= event->timeout_usec) ++ if (age_usec >= timeout_usec) + timeout = 1000; + else +- timeout = ((event->timeout_usec - age_usec) / 1000) + 1000; ++ timeout = ((timeout_usec - age_usec) / USEC_PER_MSEC) + MSEC_PER_SEC; + } else { + timeout = -1; + } +@@ -657,9 +658,9 @@ out: + } + + int udev_event_spawn(struct udev_event *event, ++ usec_t timeout_usec, + const char *cmd, char **envp, const sigset_t *sigmask, +- char *result, size_t ressize) +-{ ++ char *result, size_t ressize) { + struct udev *udev = event->udev; + int outpipe[2] = {-1, -1}; + int errpipe[2] = {-1, -1}; +@@ -728,11 +729,13 @@ int udev_event_spawn(struct udev_event *event, + errpipe[WRITE_END] = -1; + } + +- spawn_read(event, cmd, +- outpipe[READ_END], errpipe[READ_END], +- result, ressize); ++ spawn_read(event, ++ timeout_usec, ++ cmd, ++ outpipe[READ_END], errpipe[READ_END], ++ result, ressize); + +- err = spawn_wait(event, cmd, pid); ++ err = spawn_wait(event, timeout_usec, cmd, pid); + } + + out: +@@ -776,8 +779,9 @@ static int rename_netif(struct udev_event *event) + return r; + } + +-void udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules, const sigset_t *sigmask) +-{ ++void udev_event_execute_rules(struct udev_event *event, ++ usec_t timeout_usec, ++ struct udev_rules *rules, const sigset_t *sigmask) { + struct udev_device *dev = event->dev; + + if (udev_device_get_subsystem(dev) == NULL) +@@ -791,7 +795,7 @@ void udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules + if (major(udev_device_get_devnum(dev)) != 0) + udev_watch_end(event->udev, dev); + +- udev_rules_apply_to_event(rules, event, sigmask); ++ udev_rules_apply_to_event(rules, event, timeout_usec, sigmask); + + if (major(udev_device_get_devnum(dev)) != 0) + udev_node_remove(dev); +@@ -808,7 +812,7 @@ void udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules + udev_watch_end(event->udev, event->dev_db); + } + +- udev_rules_apply_to_event(rules, event, sigmask); ++ udev_rules_apply_to_event(rules, event, timeout_usec, sigmask); + + /* rename a new network interface, if needed */ + if (udev_device_get_ifindex(dev) > 0 && streq(udev_device_get_action(dev), "add") && +@@ -883,8 +887,7 @@ void udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules + } + } + +-void udev_event_execute_run(struct udev_event *event, const sigset_t *sigmask) +-{ ++void udev_event_execute_run(struct udev_event *event, usec_t timeout_usec, const sigset_t *sigmask) { + struct udev_list_entry *list_entry; + + udev_list_entry_foreach(list_entry, udev_list_get_entry(&event->run_list)) { +@@ -907,7 +910,7 @@ void udev_event_execute_run(struct udev_event *event, const sigset_t *sigmask) + + udev_event_apply_format(event, cmd, program, sizeof(program)); + envp = udev_device_get_properties_envp(event->dev); +- udev_event_spawn(event, program, envp, sigmask, NULL, 0); ++ udev_event_spawn(event, timeout_usec, program, envp, sigmask, NULL, 0); + } + } + } +diff --git src/udev/udev-rules.c src/udev/udev-rules.c +index 9864016..aacde38 100644 +--- src/udev/udev-rules.c ++++ src/udev/udev-rules.c +@@ -137,7 +137,6 @@ enum token_type { + TK_M_PARENTS_MAX, + + TK_M_TEST, /* val, mode_t */ +- TK_M_EVENT_TIMEOUT, /* int */ + TK_M_PROGRAM, /* val */ + TK_M_IMPORT_FILE, /* val */ + TK_M_IMPORT_PROG, /* val */ +@@ -201,7 +200,6 @@ struct token { + uid_t uid; + gid_t gid; + int devlink_prio; +- int event_timeout; + int watch; + enum udev_builtin_cmd builtin_cmd; + }; +@@ -275,7 +273,6 @@ static const char *token_str(enum token_type type) + [TK_M_PARENTS_MAX] = "M PARENTS_MAX", + + [TK_M_TEST] = "M TEST", +- [TK_M_EVENT_TIMEOUT] = "M EVENT_TIMEOUT", + [TK_M_PROGRAM] = "M PROGRAM", + [TK_M_IMPORT_FILE] = "M IMPORT_FILE", + [TK_M_IMPORT_PROG] = "M IMPORT_PROG", +@@ -409,9 +406,6 @@ static void dump_token(struct udev_rules *rules, struct token *token) + case TK_A_SECLABEL: + log_debug("%s %s '%s' '%s'", token_str(type), operation_str(op), attr, value); + break; +- case TK_M_EVENT_TIMEOUT: +- log_debug("%s %u", token_str(type), token->key.event_timeout); +- break; + case TK_A_GOTO: + log_debug("%s '%s' %u", token_str(type), value, token->key.rule_goto); + break; +@@ -627,8 +621,9 @@ static int import_file_into_properties(struct udev_device *dev, const char *file + return 0; + } + +-static int import_program_into_properties(struct udev_event *event, const char *program, const sigset_t *sigmask) +-{ ++static int import_program_into_properties(struct udev_event *event, ++ usec_t timeout_usec, ++ const char *program, const sigset_t *sigmask) { + struct udev_device *dev = event->dev; + char **envp; + char result[UTIL_LINE_SIZE]; +@@ -636,7 +631,7 @@ static int import_program_into_properties(struct udev_event *event, const char * + int err; + + envp = udev_device_get_properties_envp(dev); +- err = udev_event_spawn(event, program, envp, sigmask, result, sizeof(result)); ++ err = udev_event_spawn(event, timeout_usec, program, envp, sigmask, result, sizeof(result)); + if (err < 0) + return err; + +@@ -942,9 +937,6 @@ static int rule_add_key(struct rule_tmp *rule_tmp, enum token_type type, + case TK_A_MODE_ID: + token->key.mode = *(mode_t *)data; + break; +- case TK_M_EVENT_TIMEOUT: +- token->key.event_timeout = *(int *)data; +- break; + case TK_RULE: + case TK_M_PARENTS_MIN: + case TK_M_PARENTS_MAX: +@@ -1462,14 +1454,6 @@ static int add_rule(struct udev_rules *rules, char *line, + rule_add_key(&rule_tmp, TK_A_DEVLINK_PRIO, op, NULL, &prio); + } + +- pos = strstr(value, "event_timeout="); +- if (pos != NULL) { +- int tout = atoi(&pos[strlen("event_timeout=")]); +- +- rule_add_key(&rule_tmp, TK_M_EVENT_TIMEOUT, op, NULL, &tout); +- } +- +- pos = strstr(value, "string_escape="); + if (pos != NULL) { + pos = &pos[strlen("string_escape=")]; + if (startswith(pos, "none")) +@@ -1829,8 +1813,10 @@ enum escape_type { + ESCAPE_REPLACE, + }; + +-int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event, const sigset_t *sigmask) +-{ ++int udev_rules_apply_to_event(struct udev_rules *rules, ++ struct udev_event *event, ++ usec_t timeout_usec, ++ const sigset_t *sigmask) { + struct token *cur; + struct token *rule; + enum escape_type esc = ESCAPE_UNSET; +@@ -2024,10 +2010,6 @@ int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event + goto nomatch; + break; + } +- case TK_M_EVENT_TIMEOUT: +- log_debug("OPTIONS event_timeout=%u", cur->key.event_timeout); +- event->timeout_usec = cur->key.event_timeout * 1000 * 1000; +- break; + case TK_M_PROGRAM: { + char program[UTIL_PATH_SIZE]; + char **envp; +@@ -2042,7 +2024,7 @@ int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event + rules_str(rules, rule->rule.filename_off), + rule->rule.filename_line); + +- if (udev_event_spawn(event, program, envp, sigmask, result, sizeof(result)) < 0) { ++ if (udev_event_spawn(event, timeout_usec, program, envp, sigmask, result, sizeof(result)) < 0) { + if (cur->key.op != OP_NOMATCH) + goto nomatch; + } else { +@@ -2078,7 +2060,7 @@ int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event + rules_str(rules, rule->rule.filename_off), + rule->rule.filename_line); + +- if (import_program_into_properties(event, import, sigmask) != 0) ++ if (import_program_into_properties(event, timeout_usec, import, sigmask) != 0) + if (cur->key.op != OP_NOMATCH) + goto nomatch; + break; +diff --git src/udev/udev.h src/udev/udev.h +index 62538bc..4aca70b 100644 +--- src/udev/udev.h ++++ src/udev/udev.h +@@ -43,7 +43,6 @@ struct udev_event { + struct udev_list run_list; + int exec_delay; + usec_t birth_usec; +- usec_t timeout_usec; + int fd_signal; + unsigned int builtin_run; + unsigned int builtin_ret; +@@ -72,7 +71,7 @@ struct udev_rules; + struct udev_rules *udev_rules_new(struct udev *udev, int resolve_names); + struct udev_rules *udev_rules_unref(struct udev_rules *rules); + bool udev_rules_check_timestamp(struct udev_rules *rules); +-int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event, const sigset_t *sigmask); ++int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event, usec_t timeout_usec, const sigset_t *sigmask); + int udev_rules_apply_static_dev_perms(struct udev_rules *rules); + + /* udev-event.c */ +@@ -82,10 +81,11 @@ size_t udev_event_apply_format(struct udev_event *event, const char *src, char * + int udev_event_apply_subsys_kernel(struct udev_event *event, const char *string, + char *result, size_t maxsize, int read_value); + int udev_event_spawn(struct udev_event *event, ++ usec_t timeout_usec, + const char *cmd, char **envp, const sigset_t *sigmask, + char *result, size_t ressize); +-void udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules, const sigset_t *sigset); +-void udev_event_execute_run(struct udev_event *event, const sigset_t *sigset); ++void udev_event_execute_rules(struct udev_event *event, usec_t timeout_usec, struct udev_rules *rules, const sigset_t *sigset); ++void udev_event_execute_run(struct udev_event *event, usec_t timeout_usec, const sigset_t *sigset); + int udev_build_argv(struct udev *udev, char *cmd, int *argc, char *argv[]); + + /* udev-watch.c */ +diff --git src/udev/udevadm-test.c src/udev/udevadm-test.c +index 6a2f548..52cc26c 100644 +--- src/udev/udevadm-test.c ++++ src/udev/udevadm-test.c +@@ -138,7 +138,7 @@ static int adm_test(struct udev *udev, int argc, char *argv[]) + goto out; + } + +- udev_event_execute_rules(event, rules, &sigmask_orig); ++ udev_event_execute_rules(event, 30 * USEC_PER_SEC, rules, &sigmask_orig); + + udev_list_entry_foreach(entry, udev_device_get_properties_list_entry(dev)) + printf("%s=%s\n", udev_list_entry_get_name(entry), udev_list_entry_get_value(entry)); +diff --git src/udev/udevd.c src/udev/udevd.c +index c5dd739..dee7a87 100644 +--- src/udev/udevd.c ++++ src/udev/udevd.c +@@ -74,7 +74,7 @@ static bool reload; + static int children; + static int children_max; + static int exec_delay; +-static int event_timeout = 30; ++static usec_t event_timeout_usec = 30 * USEC_PER_SEC; + static sigset_t sigmask_orig; + static UDEV_LIST(event_list); + static UDEV_LIST(worker_list); +@@ -313,13 +313,10 @@ static void worker_new(struct event *event) + } + } + +- if (event_timeout != 30) +- udev_event->timeout_usec = event_timeout * USEC_PER_SEC; +- + /* apply rules, create node, symlinks */ +- udev_event_execute_rules(udev_event, rules, &sigmask_orig); ++ udev_event_execute_rules(udev_event, event_timeout_usec, rules, &sigmask_orig); + +- udev_event_execute_run(udev_event, &sigmask_orig); ++ udev_event_execute_run(udev_event, event_timeout_usec, &sigmask_orig); + + /* apply/restore inotify watch */ + if (udev_event->inotify_watch) { +@@ -1014,15 +1011,14 @@ static void kernel_cmdline_options(struct udev *udev) + } else if (startswith(opt, "udev.exec-delay=")) { + exec_delay = strtoul(opt + 16, NULL, 0); + } else if (startswith(opt, "udev.event-timeout=")) { +- event_timeout = strtoul(opt + 16, NULL, 0); ++ event_timeout_usec = strtoul(opt + 16, NULL, 0) * USEC_PER_SEC; + } + + free(s); + } + } + +-int main(int argc, char *argv[]) +-{ ++int main(int argc, char *argv[]) { + struct udev *udev; + sigset_t mask; + int daemonize = false; +@@ -1077,7 +1073,7 @@ int main(int argc, char *argv[]) + exec_delay = strtoul(optarg, NULL, 0); + break; + case 't': +- event_timeout = strtoul(optarg, NULL, 0); ++ event_timeout_usec = strtoul(optarg, NULL, 0) * USEC_PER_SEC; + break; + case 'D': + debug = true; +@@ -1103,6 +1099,7 @@ int main(int argc, char *argv[]) + " --debug\n" + " --children-max=\n" + " --exec-delay=\n" ++ " --event-timeout=\n" + " --resolve-names=early|late|never\n" + " --version\n" + " --help\n" +@@ -1416,20 +1413,17 @@ int main(int argc, char *argv[]) + if (worker->state != WORKER_RUNNING) + continue; + +- if ((now(CLOCK_MONOTONIC) - worker->event_start_usec) > event_timeout * USEC_PER_SEC) { +- log_error("worker [%u] %s timeout; kill it", worker->pid, +- worker->event ? worker->event->devpath : ""); ++ if ((now(CLOCK_MONOTONIC) - worker->event_start_usec) > event_timeout_usec) { ++ log_error("worker [%u] %s timeout; kill it", worker->pid, worker->event->devpath); + kill(worker->pid, SIGKILL); + worker->state = WORKER_KILLED; + + /* drop reference taken for state 'running' */ + worker_unref(worker); +- if (worker->event) { +- log_error("seq %llu '%s' killed", udev_device_get_seqnum(worker->event->dev), worker->event->devpath); +- worker->event->exitcode = -64; +- event_queue_delete(worker->event); +- worker->event = NULL; +- } ++ log_error("seq %llu '%s' killed", udev_device_get_seqnum(worker->event->dev), worker->event->devpath); ++ worker->event->exitcode = -64; ++ event_queue_delete(worker->event); ++ worker->event = NULL; + } + } + +-- +1.7.9.2 + diff --git a/1058-udev-unify-event-timeout-handling.patch b/1058-udev-unify-event-timeout-handling.patch new file mode 100644 index 00000000..a92d15f7 --- /dev/null +++ b/1058-udev-unify-event-timeout-handling.patch @@ -0,0 +1,504 @@ +Based on dd5eddd28a74a49607a8fffcaf960040dba98479 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Tue, 29 Jul 2014 15:18:27 +0200 +Subject: [PATCH] udev: unify event timeout handling + +--- + man/systemd-udevd.service.xml | 7 +++--- + man/udev.xml | 7 ------ + src/test/test-udev.c | 5 ++-- + src/udev/udev-event.c | 53 ++++++++++++++++++++++------------------- + src/udev/udev-rules.c | 38 ++++++++--------------------- + src/udev/udev.h | 8 +++---- + src/udev/udevadm-test.c | 2 +- + src/udev/udevd.c | 32 ++++++++++--------------- + 8 files changed, 61 insertions(+), 91 deletions(-) + +diff --git man/systemd-udevd.service.xml man/systemd-udevd.service.xml +index 8de43b1..3053dc7 100644 +--- man/systemd-udevd.service.xml ++++ man/systemd-udevd.service.xml +@@ -99,9 +99,8 @@ + + + +- Wait for the event to finish up to the given +- number of seconds. After this time the event will +- be terminated. Default is 30. ++ Set the number of seconds to wait for events to finish. After ++ this time the event will be terminated. The default is 30 seconds. + + + +@@ -171,7 +170,7 @@ + + Wait for events to finish up to the given number + of seconds. This option might be useful if events are +- terminated due to a timeout in large configurations. ++ terminated due to kernel drivers taking too long to initialize. + + + +diff --git man/udev.xml man/udev.xml +index 4e5f8f0..123c073 100644 +--- man/udev.xml ++++ man/udev.xml +@@ -516,13 +516,6 @@ + + + +- +- +- Number of seconds an event waits for operations to finish before +- giving up and terminating itself. +- +- +- + + + Usually control and other possibly unsafe characters are replaced +diff --git src/test/test-udev.c src/test/test-udev.c +index b057cc8..26d6537 100644 +--- src/test/test-udev.c ++++ src/test/test-udev.c +@@ -80,7 +80,6 @@ out: + return err; + } + +- + int main(int argc, char *argv[]) { + _cleanup_udev_unref_ struct udev *udev = NULL; + _cleanup_udev_event_unref_ struct udev_event *event = NULL; +@@ -155,8 +154,8 @@ int main(int argc, char *argv[]) { + } + } + +- udev_event_execute_rules(event, rules, &sigmask_orig); +- udev_event_execute_run(event, NULL); ++ udev_event_execute_rules(event, USEC_PER_SEC, rules, &sigmask_orig); ++ udev_event_execute_run(event, USEC_PER_SEC, NULL); + out: + if (event != NULL && event->fd_signal >= 0) + close(event->fd_signal); +diff --git src/udev/udev-event.c src/udev/udev-event.c +index 5213a4a..6ad80d5 100644 +--- src/udev/udev-event.c ++++ src/udev/udev-event.c +@@ -48,7 +48,6 @@ struct udev_event *udev_event_new(struct udev_device *dev) + udev_list_init(udev, &event->seclabel_list, false); + event->fd_signal = -1; + event->birth_usec = now(CLOCK_MONOTONIC); +- event->timeout_usec = 30 * 1000 * 1000; + return event; + } + +@@ -422,9 +421,10 @@ static int spawn_exec(struct udev_event *event, + } + + static void spawn_read(struct udev_event *event, +- const char *cmd, +- int fd_stdout, int fd_stderr, +- char *result, size_t ressize) ++ usec_t timeout_usec, ++ const char *cmd, ++ int fd_stdout, int fd_stderr, ++ char *result, size_t ressize) + { + size_t respos = 0; + int fd_ep = -1; +@@ -467,15 +467,15 @@ static void spawn_read(struct udev_event *event, + struct epoll_event ev[4]; + int i; + +- if (event->timeout_usec > 0) { ++ if (timeout_usec > 0) { + usec_t age_usec; + + age_usec = now(CLOCK_MONOTONIC) - event->birth_usec; +- if (age_usec >= event->timeout_usec) { ++ if (age_usec >= timeout_usec) { + log_error("timeout '%s'", cmd); + goto out; + } +- timeout = ((event->timeout_usec - age_usec) / 1000) + 1000; ++ timeout = ((timeout_usec - age_usec) / USEC_PER_MSEC) + MSEC_PER_SEC; + } else { + timeout = -1; + } +@@ -543,8 +543,9 @@ out: + close(fd_ep); + } + +-static int spawn_wait(struct udev_event *event, const char *cmd, pid_t pid) +-{ ++static int spawn_wait(struct udev_event *event, ++ usec_t timeout_usec, ++ const char *cmd, pid_t pid) { + struct pollfd pfd[1]; + int err = 0; + +@@ -555,14 +556,14 @@ static int spawn_wait(struct udev_event *event, const char *cmd, pid_t pid) + int timeout; + int fdcount; + +- if (event->timeout_usec > 0) { ++ if (timeout_usec > 0) { + usec_t age_usec; + + age_usec = now(CLOCK_MONOTONIC) - event->birth_usec; +- if (age_usec >= event->timeout_usec) ++ if (age_usec >= timeout_usec) + timeout = 1000; + else +- timeout = ((event->timeout_usec - age_usec) / 1000) + 1000; ++ timeout = ((timeout_usec - age_usec) / USEC_PER_MSEC) + MSEC_PER_SEC; + } else { + timeout = -1; + } +@@ -657,9 +658,9 @@ out: + } + + int udev_event_spawn(struct udev_event *event, ++ usec_t timeout_usec, + const char *cmd, char **envp, const sigset_t *sigmask, +- char *result, size_t ressize) +-{ ++ char *result, size_t ressize) { + struct udev *udev = event->udev; + int outpipe[2] = {-1, -1}; + int errpipe[2] = {-1, -1}; +@@ -728,11 +729,13 @@ int udev_event_spawn(struct udev_event *event, + errpipe[WRITE_END] = -1; + } + +- spawn_read(event, cmd, +- outpipe[READ_END], errpipe[READ_END], +- result, ressize); ++ spawn_read(event, ++ timeout_usec, ++ cmd, ++ outpipe[READ_END], errpipe[READ_END], ++ result, ressize); + +- err = spawn_wait(event, cmd, pid); ++ err = spawn_wait(event, timeout_usec, cmd, pid); + } + + out: +@@ -776,8 +779,9 @@ static int rename_netif(struct udev_event *event) + return r; + } + +-void udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules, const sigset_t *sigmask) +-{ ++void udev_event_execute_rules(struct udev_event *event, ++ usec_t timeout_usec, ++ struct udev_rules *rules, const sigset_t *sigmask) { + struct udev_device *dev = event->dev; + + if (udev_device_get_subsystem(dev) == NULL) +@@ -791,7 +795,7 @@ void udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules + if (major(udev_device_get_devnum(dev)) != 0) + udev_watch_end(event->udev, dev); + +- udev_rules_apply_to_event(rules, event, sigmask); ++ udev_rules_apply_to_event(rules, event, timeout_usec, sigmask); + + if (major(udev_device_get_devnum(dev)) != 0) + udev_node_remove(dev); +@@ -808,7 +812,7 @@ void udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules + udev_watch_end(event->udev, event->dev_db); + } + +- udev_rules_apply_to_event(rules, event, sigmask); ++ udev_rules_apply_to_event(rules, event, timeout_usec, sigmask); + + /* rename a new network interface, if needed */ + if (udev_device_get_ifindex(dev) > 0 && streq(udev_device_get_action(dev), "add") && +@@ -883,8 +887,7 @@ void udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules + } + } + +-void udev_event_execute_run(struct udev_event *event, const sigset_t *sigmask) +-{ ++void udev_event_execute_run(struct udev_event *event, usec_t timeout_usec, const sigset_t *sigmask) { + struct udev_list_entry *list_entry; + + udev_list_entry_foreach(list_entry, udev_list_get_entry(&event->run_list)) { +@@ -907,7 +910,7 @@ void udev_event_execute_run(struct udev_event *event, const sigset_t *sigmask) + + udev_event_apply_format(event, cmd, program, sizeof(program)); + envp = udev_device_get_properties_envp(event->dev); +- udev_event_spawn(event, program, envp, sigmask, NULL, 0); ++ udev_event_spawn(event, timeout_usec, program, envp, sigmask, NULL, 0); + } + } + } +diff --git src/udev/udev-rules.c src/udev/udev-rules.c +index 9864016..aacde38 100644 +--- src/udev/udev-rules.c ++++ src/udev/udev-rules.c +@@ -137,7 +137,6 @@ enum token_type { + TK_M_PARENTS_MAX, + + TK_M_TEST, /* val, mode_t */ +- TK_M_EVENT_TIMEOUT, /* int */ + TK_M_PROGRAM, /* val */ + TK_M_IMPORT_FILE, /* val */ + TK_M_IMPORT_PROG, /* val */ +@@ -201,7 +200,6 @@ struct token { + uid_t uid; + gid_t gid; + int devlink_prio; +- int event_timeout; + int watch; + enum udev_builtin_cmd builtin_cmd; + }; +@@ -275,7 +273,6 @@ static const char *token_str(enum token_type type) + [TK_M_PARENTS_MAX] = "M PARENTS_MAX", + + [TK_M_TEST] = "M TEST", +- [TK_M_EVENT_TIMEOUT] = "M EVENT_TIMEOUT", + [TK_M_PROGRAM] = "M PROGRAM", + [TK_M_IMPORT_FILE] = "M IMPORT_FILE", + [TK_M_IMPORT_PROG] = "M IMPORT_PROG", +@@ -409,9 +406,6 @@ static void dump_token(struct udev_rules *rules, struct token *token) + case TK_A_SECLABEL: + log_debug("%s %s '%s' '%s'", token_str(type), operation_str(op), attr, value); + break; +- case TK_M_EVENT_TIMEOUT: +- log_debug("%s %u", token_str(type), token->key.event_timeout); +- break; + case TK_A_GOTO: + log_debug("%s '%s' %u", token_str(type), value, token->key.rule_goto); + break; +@@ -627,8 +621,9 @@ static int import_file_into_properties(struct udev_device *dev, const char *file + return 0; + } + +-static int import_program_into_properties(struct udev_event *event, const char *program, const sigset_t *sigmask) +-{ ++static int import_program_into_properties(struct udev_event *event, ++ usec_t timeout_usec, ++ const char *program, const sigset_t *sigmask) { + struct udev_device *dev = event->dev; + char **envp; + char result[UTIL_LINE_SIZE]; +@@ -636,7 +631,7 @@ static int import_program_into_properties(struct udev_event *event, const char * + int err; + + envp = udev_device_get_properties_envp(dev); +- err = udev_event_spawn(event, program, envp, sigmask, result, sizeof(result)); ++ err = udev_event_spawn(event, timeout_usec, program, envp, sigmask, result, sizeof(result)); + if (err < 0) + return err; + +@@ -942,9 +937,6 @@ static int rule_add_key(struct rule_tmp *rule_tmp, enum token_type type, + case TK_A_MODE_ID: + token->key.mode = *(mode_t *)data; + break; +- case TK_M_EVENT_TIMEOUT: +- token->key.event_timeout = *(int *)data; +- break; + case TK_RULE: + case TK_M_PARENTS_MIN: + case TK_M_PARENTS_MAX: +@@ -1462,14 +1454,6 @@ static int add_rule(struct udev_rules *rules, char *line, + rule_add_key(&rule_tmp, TK_A_DEVLINK_PRIO, op, NULL, &prio); + } + +- pos = strstr(value, "event_timeout="); +- if (pos != NULL) { +- int tout = atoi(&pos[strlen("event_timeout=")]); +- +- rule_add_key(&rule_tmp, TK_M_EVENT_TIMEOUT, op, NULL, &tout); +- } +- +- pos = strstr(value, "string_escape="); + if (pos != NULL) { + pos = &pos[strlen("string_escape=")]; + if (startswith(pos, "none")) +@@ -1829,8 +1813,10 @@ enum escape_type { + ESCAPE_REPLACE, + }; + +-int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event, const sigset_t *sigmask) +-{ ++int udev_rules_apply_to_event(struct udev_rules *rules, ++ struct udev_event *event, ++ usec_t timeout_usec, ++ const sigset_t *sigmask) { + struct token *cur; + struct token *rule; + enum escape_type esc = ESCAPE_UNSET; +@@ -2024,10 +2010,6 @@ int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event + goto nomatch; + break; + } +- case TK_M_EVENT_TIMEOUT: +- log_debug("OPTIONS event_timeout=%u", cur->key.event_timeout); +- event->timeout_usec = cur->key.event_timeout * 1000 * 1000; +- break; + case TK_M_PROGRAM: { + char program[UTIL_PATH_SIZE]; + char **envp; +@@ -2042,7 +2024,7 @@ int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event + rules_str(rules, rule->rule.filename_off), + rule->rule.filename_line); + +- if (udev_event_spawn(event, program, envp, sigmask, result, sizeof(result)) < 0) { ++ if (udev_event_spawn(event, timeout_usec, program, envp, sigmask, result, sizeof(result)) < 0) { + if (cur->key.op != OP_NOMATCH) + goto nomatch; + } else { +@@ -2078,7 +2060,7 @@ int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event + rules_str(rules, rule->rule.filename_off), + rule->rule.filename_line); + +- if (import_program_into_properties(event, import, sigmask) != 0) ++ if (import_program_into_properties(event, timeout_usec, import, sigmask) != 0) + if (cur->key.op != OP_NOMATCH) + goto nomatch; + break; +diff --git src/udev/udev.h src/udev/udev.h +index 62538bc..4aca70b 100644 +--- src/udev/udev.h ++++ src/udev/udev.h +@@ -43,7 +43,6 @@ struct udev_event { + struct udev_list run_list; + int exec_delay; + usec_t birth_usec; +- usec_t timeout_usec; + int fd_signal; + unsigned int builtin_run; + unsigned int builtin_ret; +@@ -72,7 +71,7 @@ struct udev_rules; + struct udev_rules *udev_rules_new(struct udev *udev, int resolve_names); + struct udev_rules *udev_rules_unref(struct udev_rules *rules); + bool udev_rules_check_timestamp(struct udev_rules *rules); +-int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event, const sigset_t *sigmask); ++int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event, usec_t timeout_usec, const sigset_t *sigmask); + int udev_rules_apply_static_dev_perms(struct udev_rules *rules); + + /* udev-event.c */ +@@ -82,10 +81,11 @@ size_t udev_event_apply_format(struct udev_event *event, const char *src, char * + int udev_event_apply_subsys_kernel(struct udev_event *event, const char *string, + char *result, size_t maxsize, int read_value); + int udev_event_spawn(struct udev_event *event, ++ usec_t timeout_usec, + const char *cmd, char **envp, const sigset_t *sigmask, + char *result, size_t ressize); +-void udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules, const sigset_t *sigset); +-void udev_event_execute_run(struct udev_event *event, const sigset_t *sigset); ++void udev_event_execute_rules(struct udev_event *event, usec_t timeout_usec, struct udev_rules *rules, const sigset_t *sigset); ++void udev_event_execute_run(struct udev_event *event, usec_t timeout_usec, const sigset_t *sigset); + int udev_build_argv(struct udev *udev, char *cmd, int *argc, char *argv[]); + + /* udev-watch.c */ +diff --git src/udev/udevadm-test.c src/udev/udevadm-test.c +index 6a2f548..52cc26c 100644 +--- src/udev/udevadm-test.c ++++ src/udev/udevadm-test.c +@@ -138,7 +138,7 @@ static int adm_test(struct udev *udev, int argc, char *argv[]) + goto out; + } + +- udev_event_execute_rules(event, rules, &sigmask_orig); ++ udev_event_execute_rules(event, 30 * USEC_PER_SEC, rules, &sigmask_orig); + + udev_list_entry_foreach(entry, udev_device_get_properties_list_entry(dev)) + printf("%s=%s\n", udev_list_entry_get_name(entry), udev_list_entry_get_value(entry)); +diff --git src/udev/udevd.c src/udev/udevd.c +index c5dd739..dee7a87 100644 +--- src/udev/udevd.c ++++ src/udev/udevd.c +@@ -74,7 +74,7 @@ static bool reload; + static int children; + static int children_max; + static int exec_delay; +-static int event_timeout = 30; ++static usec_t event_timeout_usec = 30 * USEC_PER_SEC; + static sigset_t sigmask_orig; + static UDEV_LIST(event_list); + static UDEV_LIST(worker_list); +@@ -313,13 +313,10 @@ static void worker_new(struct event *event) + } + } + +- if (event_timeout != 30) +- udev_event->timeout_usec = event_timeout * USEC_PER_SEC; +- + /* apply rules, create node, symlinks */ +- udev_event_execute_rules(udev_event, rules, &sigmask_orig); ++ udev_event_execute_rules(udev_event, event_timeout_usec, rules, &sigmask_orig); + +- udev_event_execute_run(udev_event, &sigmask_orig); ++ udev_event_execute_run(udev_event, event_timeout_usec, &sigmask_orig); + + /* apply/restore inotify watch */ + if (udev_event->inotify_watch) { +@@ -1014,15 +1011,14 @@ static void kernel_cmdline_options(struct udev *udev) + } else if (startswith(opt, "udev.exec-delay=")) { + exec_delay = strtoul(opt + 16, NULL, 0); + } else if (startswith(opt, "udev.event-timeout=")) { +- event_timeout = strtoul(opt + 16, NULL, 0); ++ event_timeout_usec = strtoul(opt + 16, NULL, 0) * USEC_PER_SEC; + } + + free(s); + } + } + +-int main(int argc, char *argv[]) +-{ ++int main(int argc, char *argv[]) { + struct udev *udev; + sigset_t mask; + int daemonize = false; +@@ -1077,7 +1073,7 @@ int main(int argc, char *argv[]) + exec_delay = strtoul(optarg, NULL, 0); + break; + case 't': +- event_timeout = strtoul(optarg, NULL, 0); ++ event_timeout_usec = strtoul(optarg, NULL, 0) * USEC_PER_SEC; + break; + case 'D': + debug = true; +@@ -1103,6 +1099,7 @@ int main(int argc, char *argv[]) + " --debug\n" + " --children-max=\n" + " --exec-delay=\n" ++ " --event-timeout=\n" + " --resolve-names=early|late|never\n" + " --version\n" + " --help\n" +@@ -1416,20 +1413,17 @@ int main(int argc, char *argv[]) + if (worker->state != WORKER_RUNNING) + continue; + +- if ((now(CLOCK_MONOTONIC) - worker->event_start_usec) > event_timeout * USEC_PER_SEC) { +- log_error("worker [%u] %s timeout; kill it", worker->pid, +- worker->event ? worker->event->devpath : ""); ++ if ((now(CLOCK_MONOTONIC) - worker->event_start_usec) > event_timeout_usec) { ++ log_error("worker [%u] %s timeout; kill it", worker->pid, worker->event->devpath); + kill(worker->pid, SIGKILL); + worker->state = WORKER_KILLED; + + /* drop reference taken for state 'running' */ + worker_unref(worker); +- if (worker->event) { +- log_error("seq %llu '%s' killed", udev_device_get_seqnum(worker->event->dev), worker->event->devpath); +- worker->event->exitcode = -64; +- event_queue_delete(worker->event, true); +- worker->event = NULL; +- } ++ log_error("seq %llu '%s' killed", udev_device_get_seqnum(worker->event->dev), worker->event->devpath); ++ worker->event->exitcode = -64; ++ event_queue_delete(worker->event, true); ++ worker->event = NULL; + } + } + +-- +1.7.9.2 + diff --git a/1059-udev-fixup-commit-dd5eddd28a74a49607a8fffcaf960040db.patch b/1059-udev-fixup-commit-dd5eddd28a74a49607a8fffcaf960040db.patch new file mode 100644 index 00000000..62d5d665 --- /dev/null +++ b/1059-udev-fixup-commit-dd5eddd28a74a49607a8fffcaf960040db.patch @@ -0,0 +1,26 @@ +From 9f20a8a376f924c8eb5423cfc1f98644fc1e2d1a Mon Sep 17 00:00:00 2001 +From: Hannes Reinecke +Date: Wed, 30 Jul 2014 10:10:46 +0200 +Subject: [PATCH] udev: fixup commit dd5eddd28a74a49607a8fffcaf960040dba98479 + +Commit dd5eddd28a74a49607a8fffcaf960040dba98479 accidentally +removed one line too many. +--- + src/udev/udev-rules.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git src/udev/udev-rules.c src/udev/udev-rules.c +index 59bc124..cc56215 100644 +--- src/udev/udev-rules.c ++++ src/udev/udev-rules.c +@@ -1436,6 +1436,7 @@ static int add_rule(struct udev_rules *rules, char *line, + rule_add_key(&rule_tmp, TK_A_DEVLINK_PRIO, op, NULL, &prio); + } + ++ pos = strstr(value, "string_escape="); + if (pos != NULL) { + pos = &pos[strlen("string_escape=")]; + if (startswith(pos, "none")) +-- +1.7.9.2 + diff --git a/1061-rules-allow-systemd-to-manage-loop-device-partitions.patch b/1061-rules-allow-systemd-to-manage-loop-device-partitions.patch new file mode 100644 index 00000000..20d064f8 --- /dev/null +++ b/1061-rules-allow-systemd-to-manage-loop-device-partitions.patch @@ -0,0 +1,32 @@ +From b5df2eabf3fdd3e1663bc4c948812472084f3e96 Mon Sep 17 00:00:00 2001 +From: Kevin Wells +Date: Thu, 31 Jul 2014 17:38:21 +0200 +Subject: [PATCH] rules: allow systemd to manage loop device partitions + +SYSTEMD_READY is currently set to 0 for all loop devices (loop[0-9]*) +that do not have a backing_file. Partitioned loop devices (ex. loop0p1), +however, are matched by this rule and excluded by systemd even though +they are active devices. + +This change adds an additional check to the rule, ensuring that only +top level loop devices (loop[0-9]+$) are excluded from systemd. +--- + rules/99-systemd.rules.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git rules/99-systemd.rules.in rules/99-systemd.rules.in +index c3ef81b..aa435c4 100644 +--- rules/99-systemd.rules.in ++++ rules/99-systemd.rules.in +@@ -23,7 +23,7 @@ SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="md*", TEST!="md/array_state", + SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="md*", ATTR{md/array_state}=="|clear|inactive", ENV{SYSTEMD_READY}="0" + + # Ignore loop devices that don't have any file attached +-SUBSYSTEM=="block", KERNEL=="loop[0-9]*", TEST!="loop/backing_file", ENV{SYSTEMD_READY}="0" ++SUBSYSTEM=="block", KERNEL=="loop[0-9]*", ENV{DEVTYPE}=="disk", TEST!="loop/backing_file", ENV{SYSTEMD_READY}="0" + + # Ignore nbd devices in the "add" event, with "change" the nbd is ready + ACTION=="add", SUBSYSTEM=="block", KERNEL=="nbd*", ENV{SYSTEMD_READY}="0" +-- +1.7.9.2 + diff --git a/1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch b/1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch new file mode 100644 index 00000000..06966c4c --- /dev/null +++ b/1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch @@ -0,0 +1,96 @@ +Based on e98bbfd2074e2b1079b7059341eac25741baf319 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Mon, 4 Aug 2014 18:15:34 +0200 +Subject: [PATCH] udev: path_id - suppress ID_PATH for devices with an unknown + parent device type + +https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1321816 +--- + src/udev/udev-builtin-path_id.c | 38 +++++++++++++++++++++++++++----------- + 1 file changed, 27 insertions(+), 11 deletions(-) + +--- src/udev/udev-builtin-path_id.c ++++ src/udev/udev-builtin-path_id.c 2014-08-22 14:08:59.250235369 +0000 +@@ -524,7 +524,8 @@ static int builtin_path_id(struct udev_d + { + struct udev_device *parent; + char *path = NULL; +- bool some_transport = false; ++ bool supported_transport = false; ++ bool supported_parent = false; + + /* S390 ccw bus */ + parent = udev_device_get_parent_with_subsystem_devtype(dev, "ccw", NULL); +@@ -545,47 +546,62 @@ static int builtin_path_id(struct udev_d + handle_scsi_tape(parent, &path); + } else if (streq(subsys, "scsi")) { + parent = handle_scsi(parent, &path); +- some_transport = true; ++ supported_transport = true; + } else if (streq(subsys, "cciss")) { + parent = handle_cciss(parent, &path); +- some_transport = true; ++ supported_transport = true; + } else if (streq(subsys, "usb")) { + parent = handle_usb(parent, &path); +- some_transport = true; ++ supported_transport = true; + } else if (streq(subsys, "bcma")) { + parent = handle_bcma(parent, &path); +- some_transport = true; ++ supported_transport = true; + } else if (streq(subsys, "serio")) { + path_prepend(&path, "serio-%s", udev_device_get_sysnum(parent)); + parent = skip_subsystem(parent, "serio"); + } else if (streq(subsys, "pci")) { + path_prepend(&path, "pci-%s", udev_device_get_sysname(parent)); + parent = skip_subsystem(parent, "pci"); ++ supported_parent = true; + } else if (streq(subsys, "platform")) { + path_prepend(&path, "platform-%s", udev_device_get_sysname(parent)); + parent = skip_subsystem(parent, "platform"); +- some_transport = true; ++ supported_transport = true; ++ supported_parent = true; + } else if (streq(subsys, "acpi")) { + path_prepend(&path, "acpi-%s", udev_device_get_sysname(parent)); + parent = skip_subsystem(parent, "acpi"); ++ supported_parent = true; + } else if (streq(subsys, "xen")) { + path_prepend(&path, "xen-%s", udev_device_get_sysname(parent)); + parent = skip_subsystem(parent, "xen"); ++ supported_parent = true; + } else if (streq(subsys, "scm")) { + path_prepend(&path, "scm-%s", udev_device_get_sysname(parent)); + parent = skip_subsystem(parent, "scm"); +- some_transport = true; ++ supported_transport = true; ++ supported_parent = true; + } + + parent = udev_device_get_parent(parent); + } + + /* +- * Do not return a single-parent-device-only for block +- * devices, they might have entire buses behind it which +- * do not get unique IDs only by using the parent device. ++ * Do return devices with have an unknown type of parent device, they ++ * might produce conflicting IDs below multiple independent parent ++ * devices. + */ +- if (!some_transport && streq(udev_device_get_subsystem(dev), "block")) { ++ if (!supported_parent) { ++ free(path); ++ path = NULL; ++ } ++ ++ /* ++ * Do not return a have-only a single-parent block devices, some ++ * have entire hidden buses behind it, and not create predictable ++ * IDs that way. ++ */ ++ if (streq(udev_device_get_subsystem(dev), "block") && !supported_transport) { + free(path); + path = NULL; + } diff --git a/1064-udev-hwdb-do-not-look-at-usb_device-parents.patch b/1064-udev-hwdb-do-not-look-at-usb_device-parents.patch new file mode 100644 index 00000000..07755c04 --- /dev/null +++ b/1064-udev-hwdb-do-not-look-at-usb_device-parents.patch @@ -0,0 +1,63 @@ +From 77cf759ea05bea476cdcb8d0dcd04c4e6fb3b2ff Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Tue, 26 Aug 2014 18:27:36 +0200 +Subject: [PATCH] udev: hwdb - do not look at "usb_device" parents + +Based on a patch from Simon McVittie . + +Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=758050 +--- + src/udev/udev-builtin-hwdb.c | 22 ++++++++++++++-------- + 1 file changed, 14 insertions(+), 8 deletions(-) + +diff --git src/udev/udev-builtin-hwdb.c src/udev/udev-builtin-hwdb.c +index cac97e7..695a31a 100644 +--- src/udev/udev-builtin-hwdb.c ++++ src/udev/udev-builtin-hwdb.c +@@ -88,9 +88,10 @@ static int udev_builtin_hwdb_search(struct udev_device *dev, struct udev_device + const char *filter, bool test) { + struct udev_device *d; + char s[16]; +- int n = 0; ++ bool last = false; ++ int r = 0; + +- for (d = srcdev; d; d = udev_device_get_parent(d)) { ++ for (d = srcdev; d && !last; d = udev_device_get_parent(d)) { + const char *dsubsys; + const char *modalias = NULL; + +@@ -104,19 +105,24 @@ static int udev_builtin_hwdb_search(struct udev_device *dev, struct udev_device + + modalias = udev_device_get_property_value(d, "MODALIAS"); + +- /* the usb_device does not have a modalias, compose one */ +- if (!modalias && streq(dsubsys, "usb")) +- modalias = modalias_usb(d, s, sizeof(s)); ++ if (streq(dsubsys, "usb") && streq_ptr(udev_device_get_devtype(d), "usb_device")) { ++ /* if the usb_device does not have a modalias, compose one */ ++ if (!modalias) ++ modalias = modalias_usb(d, s, sizeof(s)); ++ ++ /* avoid looking at any parent device, they are usually just a USB hub */ ++ last = true; ++ } + + if (!modalias) + continue; + +- n = udev_builtin_hwdb_lookup(dev, prefix, modalias, filter, test); +- if (n > 0) ++ r = udev_builtin_hwdb_lookup(dev, prefix, modalias, filter, test); ++ if (r > 0) + break; + } + +- return n; ++ return r; + } + + static int builtin_hwdb(struct udev_device *dev, int argc, char *argv[], bool test) { +-- +1.7.9.2 + diff --git a/1065-udev-bump-event-timeout-to-60-seconds.patch b/1065-udev-bump-event-timeout-to-60-seconds.patch new file mode 100644 index 00000000..aae4da95 --- /dev/null +++ b/1065-udev-bump-event-timeout-to-60-seconds.patch @@ -0,0 +1,39 @@ +From 2e92633dbae52f5ac9b7b2e068935990d475d2cd Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Sat, 30 Aug 2014 11:36:32 +0200 +Subject: [PATCH] udev: bump event timeout to 60 seconds + +--- + src/udev/udevadm-test.c | 2 +- + src/udev/udevd.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git src/udev/udevadm-test.c src/udev/udevadm-test.c +index 8486049..809adb6 100644 +--- src/udev/udevadm-test.c ++++ src/udev/udevadm-test.c +@@ -136,7 +136,7 @@ static int adm_test(struct udev *udev, int argc, char *argv[]) { + goto out; + } + +- udev_event_execute_rules(event, 30 * USEC_PER_SEC, rules, &sigmask_orig); ++ udev_event_execute_rules(event, 60 * USEC_PER_SEC, rules, &sigmask_orig); + + udev_list_entry_foreach(entry, udev_device_get_properties_list_entry(dev)) + printf("%s=%s\n", udev_list_entry_get_name(entry), udev_list_entry_get_value(entry)); +diff --git src/udev/udevd.c src/udev/udevd.c +index 9c2b0d5..e72c5b2 100644 +--- src/udev/udevd.c ++++ src/udev/udevd.c +@@ -73,7 +73,7 @@ static bool reload; + static int children; + static int children_max; + static int exec_delay; +-static usec_t event_timeout_usec = 30 * USEC_PER_SEC; ++static usec_t event_timeout_usec = 60 * USEC_PER_SEC; + static sigset_t sigmask_orig; + static UDEV_LIST(event_list); + static UDEV_LIST(worker_list); +-- +1.7.9.2 + diff --git a/1066-udev-add-compatibility-links-for-truncated-by-id-links.patch b/1066-udev-add-compatibility-links-for-truncated-by-id-links.patch index e08ad9f8..3bb4d407 100644 --- a/1066-udev-add-compatibility-links-for-truncated-by-id-links.patch +++ b/1066-udev-add-compatibility-links-for-truncated-by-id-links.patch @@ -18,10 +18,8 @@ Signed-off-by: Jeff Mahoney src/udev/scsi_id/scsi_serial.c | 19 +++++++++++++------ 4 files changed, 32 insertions(+), 7 deletions(-) -Index: systemd/rules/60-persistent-storage.rules -=================================================================== ---- systemd.orig/rules/60-persistent-storage.rules -+++ systemd/rules/60-persistent-storage.rules +--- a/rules/60-persistent-storage.rules ++++ b/rules/60-persistent-storage.rules @@ -46,6 +46,10 @@ KERNEL=="sd*|cciss*", ENV{DEVTYPE}=="par KERNEL=="sd*[!0-9]", ENV{ID_BUS}=="ata", PROGRAM="scsi_id --whitelisted --replace-whitespace -p0x80 -d $devnode", RESULT=="?*", ENV{ID_SCSI_COMPAT}="$result", SYMLINK+="disk/by-id/scsi-$env{ID_SCSI_COMPAT}" KERNEL=="sd*[0-9]", ENV{ID_SCSI_COMPAT}=="?*", SYMLINK+="disk/by-id/scsi-$env{ID_SCSI_COMPAT}-part%n" @@ -33,11 +31,9 @@ Index: systemd/rules/60-persistent-storage.rules # firewire KERNEL=="sd*[!0-9]|sr*", ATTRS{ieee1394_id}=="?*", SYMLINK+="disk/by-id/ieee1394-$attr{ieee1394_id}" KERNEL=="sd*[0-9]", ATTRS{ieee1394_id}=="?*", SYMLINK+="disk/by-id/ieee1394-$attr{ieee1394_id}-part%n" -Index: systemd/src/udev/scsi_id/scsi_id.c -=================================================================== ---- systemd.orig/src/udev/scsi_id/scsi_id.c -+++ systemd/src/udev/scsi_id/scsi_id.c -@@ -43,6 +43,7 @@ static const struct option options[] = { +--- a/src/udev/scsi_id/scsi_id.c ++++ b/src/udev/scsi_id/scsi_id.c +@@ -44,6 +44,7 @@ static const struct option options[] = { { "replace-whitespace", no_argument, NULL, 'u' }, { "sg-version", required_argument, NULL, 's' }, { "verbose", no_argument, NULL, 'v' }, @@ -45,24 +41,24 @@ Index: systemd/src/udev/scsi_id/scsi_id.c { "version", no_argument, NULL, 'V' }, /* don't advertise -V */ { "export", no_argument, NULL, 'x' }, { "help", no_argument, NULL, 'h' }, -@@ -54,6 +55,7 @@ static bool dev_specified = false; - static char config_file[MAX_PATH_LEN] = "/etc/scsi_id.config"; +@@ -56,6 +57,7 @@ static char config_file[MAX_PATH_LEN] = static enum page_code default_page_code = PAGE_UNSPECIFIED; static int sg_version = 4; + static int debug = 0; +static bool compat_truncated = false; static bool reformat_serial = false; static bool export = false; static char vendor_str[64]; -@@ -316,6 +318,7 @@ static void help(void) { - " -g --whitelisted Treat device as whitelisted\n" - " -u --replace-whitespace Replace all whitespace by underscores\n" - " -v --verbose Verbose logging\n" +@@ -323,6 +325,7 @@ static void help(void) { + " -g,--whitelisted threat device as whitelisted\n" + " -u,--replace-whitespace replace all whitespace by underscores\n" + " -v,--verbose verbose logging\n" + " --truncated-serial truncated serial for compatibility with systems configured with by-id links created by udev < 184\n" - " -x --export Print values as environment keys\n" - , program_invocation_short_name); - -@@ -387,6 +390,10 @@ static int set_options(struct udev *udev - log_open(); + " --version print version\n" + " -x,--export print values as environment keys\n" + " -h,--help print this help text\n\n"); +@@ -393,6 +396,10 @@ static int set_options(struct udev *udev + debug++; break; + case '9': @@ -72,7 +68,7 @@ Index: systemd/src/udev/scsi_id/scsi_id.c case 'V': printf("%s\n", VERSION); exit(0); -@@ -528,6 +535,9 @@ static int scsi_id(struct udev *udev, ch +@@ -535,6 +542,9 @@ static int scsi_id(struct udev *udev, ch util_replace_whitespace(dev_scsi.serial, serial_str, sizeof(serial_str)); util_replace_chars(serial_str, NULL); printf("ID_SERIAL=%s\n", serial_str); @@ -82,7 +78,7 @@ Index: systemd/src/udev/scsi_id/scsi_id.c util_replace_whitespace(dev_scsi.serial_short, serial_str, sizeof(serial_str)); util_replace_chars(serial_str, NULL); printf("ID_SERIAL_SHORT=%s\n", serial_str); -@@ -558,7 +568,10 @@ static int scsi_id(struct udev *udev, ch +@@ -565,7 +575,10 @@ static int scsi_id(struct udev *udev, ch if (reformat_serial) { char serial_str[MAX_SERIAL_LEN]; @@ -94,10 +90,8 @@ Index: systemd/src/udev/scsi_id/scsi_id.c util_replace_chars(serial_str, NULL); printf("%s\n", serial_str); goto out; -Index: systemd/src/udev/scsi_id/scsi_id.h -=================================================================== ---- systemd.orig/src/udev/scsi_id/scsi_id.h -+++ systemd/src/udev/scsi_id/scsi_id.h +--- a/src/udev/scsi_id/scsi_id.h ++++ b/src/udev/scsi_id/scsi_id.h @@ -43,6 +43,7 @@ struct scsi_id_device { char kernel[64]; char serial[MAX_SERIAL_LEN]; @@ -106,11 +100,9 @@ Index: systemd/src/udev/scsi_id/scsi_id.h int use_sg; /* Always from page 0x80 e.g. 'B3G1P8500RWT' - may not be unique */ -Index: systemd/src/udev/scsi_id/scsi_serial.c -=================================================================== ---- systemd.orig/src/udev/scsi_id/scsi_serial.c -+++ systemd/src/udev/scsi_id/scsi_serial.c -@@ -96,7 +96,8 @@ static const char hex_str[]="0123456789a +--- a/src/udev/scsi_id/scsi_serial.c ++++ b/src/udev/scsi_id/scsi_serial.c +@@ -97,7 +97,8 @@ static const char hex_str[]="0123456789a static int do_scsi_page80_inquiry(struct udev *udev, struct scsi_id_device *dev_scsi, int fd, @@ -120,7 +112,7 @@ Index: systemd/src/udev/scsi_id/scsi_serial.c static int sg_err_category_new(struct udev *udev, int scsi_status, int msg_status, int -@@ -619,7 +620,7 @@ static int do_scsi_page83_inquiry(struct +@@ -620,7 +621,7 @@ static int do_scsi_page83_inquiry(struct unsigned char page_83[SCSI_INQ_BUFF_LEN]; /* also pick up the page 80 serial number */ @@ -129,7 +121,7 @@ Index: systemd/src/udev/scsi_id/scsi_serial.c memzero(page_83, SCSI_INQ_BUFF_LEN); retval = scsi_inquiry(udev, dev_scsi, fd, 1, PAGE_83, page_83, -@@ -764,7 +765,8 @@ static int do_scsi_page83_prespc3_inquir +@@ -765,7 +766,8 @@ static int do_scsi_page83_prespc3_inquir /* Get unit serial number VPD page */ static int do_scsi_page80_inquiry(struct udev *udev, struct scsi_id_device *dev_scsi, int fd, @@ -139,7 +131,7 @@ Index: systemd/src/udev/scsi_id/scsi_serial.c { int retval; int ser_ind; -@@ -798,9 +800,14 @@ static int do_scsi_page80_inquiry(struct +@@ -799,9 +801,14 @@ static int do_scsi_page80_inquiry(struct ser_ind = prepend_vendor_model(udev, dev_scsi, &serial[1]); if (ser_ind < 0) return 1; @@ -155,7 +147,7 @@ Index: systemd/src/udev/scsi_id/scsi_serial.c } if (serial_short != NULL) { memcpy(serial_short, &buf[4], len); -@@ -876,7 +883,7 @@ int scsi_get_serial(struct udev *udev, +@@ -877,7 +884,7 @@ int scsi_get_serial(struct udev *udev, return 1; if (page_code == PAGE_80) { @@ -164,7 +156,7 @@ Index: systemd/src/udev/scsi_id/scsi_serial.c retval = 1; goto completed; } else { -@@ -950,7 +957,7 @@ int scsi_get_serial(struct udev *udev, +@@ -951,7 +958,7 @@ int scsi_get_serial(struct udev *udev, for (ind = 4; ind <= page0[3] + 3; ind++) if (page0[ind] == PAGE_80) if (!do_scsi_page80_inquiry(udev, dev_scsi, fd, diff --git a/1067-udev-always-resolve-correctly-database-names-on-chan.patch b/1067-udev-always-resolve-correctly-database-names-on-chan.patch new file mode 100644 index 00000000..9fdc9c68 --- /dev/null +++ b/1067-udev-always-resolve-correctly-database-names-on-chan.patch @@ -0,0 +1,53 @@ +From 368082520b25722575783f06879fb5fc2e4c219c Mon Sep 17 00:00:00 2001 +From: Robert Milasan +Date: Sat, 13 Sep 2014 15:18:37 +0200 +Subject: [PATCH] udev: always resolve correctly database names on 'change' + event + +Signed-off-by: Robert Milasan +--- + src/libudev/libudev-device.c | 2 +- + src/libudev/libudev-private.h | 1 + + src/udev/udev-event.c | 1 + + 3 files changed, 3 insertions(+), 1 deletion(-) + +diff --git a/src/libudev/libudev-device.c b/src/libudev/libudev-device.c +index d61a2ad..2699374 100644 +--- a/src/libudev/libudev-device.c ++++ b/src/libudev/libudev-device.c +@@ -161,7 +161,7 @@ _public_ dev_t udev_device_get_devnum(struct udev_device *udev_device) + return udev_device->devnum; + } + +-static int udev_device_set_devnum(struct udev_device *udev_device, dev_t devnum) ++int udev_device_set_devnum(struct udev_device *udev_device, dev_t devnum) + { + char num[32]; + +diff --git a/src/libudev/libudev-private.h b/src/libudev/libudev-private.h +index 35ea7ba..05a6410 100644 +--- a/src/libudev/libudev-private.h ++++ b/src/libudev/libudev-private.h +@@ -59,6 +59,7 @@ uid_t udev_device_get_devnode_uid(struct udev_device *udev_device); + gid_t udev_device_get_devnode_gid(struct udev_device *udev_device); + int udev_device_set_subsystem(struct udev_device *udev_device, const char *subsystem); + int udev_device_set_syspath(struct udev_device *udev_device, const char *syspath); ++int udev_device_set_devnum(struct udev_device *udev_device, dev_t devnum); + int udev_device_add_devlink(struct udev_device *udev_device, const char *devlink); + void udev_device_cleanup_devlinks_list(struct udev_device *udev_device); + struct udev_list_entry *udev_device_add_property(struct udev_device *udev_device, const char *key, const char *value); +diff --git a/src/udev/udev-event.c b/src/udev/udev-event.c +index e8d6676..2cf0763 100644 +--- a/src/udev/udev-event.c ++++ b/src/udev/udev-event.c +@@ -812,6 +812,7 @@ void udev_event_execute_rules(struct udev_event *event, + if (event->dev_db != NULL) { + udev_device_set_syspath(event->dev_db, udev_device_get_syspath(dev)); + udev_device_set_subsystem(event->dev_db, udev_device_get_subsystem(dev)); ++ udev_device_set_devnum(event->dev_db, udev_device_get_devnum(dev)); + udev_device_read_db(event->dev_db, NULL); + udev_device_set_info_loaded(event->dev_db); + +-- +1.8.4.5 + diff --git a/1068-udev-net_setup_link-export-the-.link-filename-applie.patch b/1068-udev-net_setup_link-export-the-.link-filename-applie.patch new file mode 100644 index 00000000..e0f7039c --- /dev/null +++ b/1068-udev-net_setup_link-export-the-.link-filename-applie.patch @@ -0,0 +1,26 @@ +From ad6e5b348fa88f44d6cbfe7aabda7612a1d0463f Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Mon, 8 Sep 2014 14:00:58 +0200 +Subject: [PATCH] udev: net_setup_link - export the .link filename applied to + the link + +--- + src/udev/udev-builtin-net_setup_link.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git src/udev/udev-builtin-net_setup_link.c src/udev/udev-builtin-net_setup_link.c +index 6207269..14351de 100644 +--- src/udev/udev-builtin-net_setup_link.c ++++ src/udev/udev-builtin-net_setup_link.c +@@ -57,6 +57,8 @@ static int builtin_net_setup_link(struct udev_device *dev, int argc, char **argv + return EXIT_FAILURE; + } + ++ udev_builtin_add_property(dev, test, "ID_NET_LINK_FILE", link->filename); ++ + if (name) + udev_builtin_add_property(dev, test, "ID_NET_NAME", name); + +-- +1.7.9.2 + diff --git a/1069-rules-net-setup-link-preserve-ID_NET_LINK_FILE-and-I.patch b/1069-rules-net-setup-link-preserve-ID_NET_LINK_FILE-and-I.patch new file mode 100644 index 00000000..7f7d24aa --- /dev/null +++ b/1069-rules-net-setup-link-preserve-ID_NET_LINK_FILE-and-I.patch @@ -0,0 +1,27 @@ +From e4d7c49050769877c7f10184bbe2a1e77d0b5333 Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Mon, 8 Sep 2014 17:16:24 +0200 +Subject: [PATCH] rules: net-setup-link - preserve ID_NET_LINK_FILE and + ID_NET_NAME after MOVE + +--- + rules/80-net-setup-link.rules | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git rules/80-net-setup-link.rules rules/80-net-setup-link.rules +index f390fcb..27c43b9 100644 +--- rules/80-net-setup-link.rules ++++ rules/80-net-setup-link.rules +@@ -4,7 +4,8 @@ SUBSYSTEM!="net", GOTO="net_setup_link_end" + + IMPORT{builtin}="path_id" + +-ACTION=="move", IMPORT{db}="ID_NET_DRIVER" ++ACTION=="move", IMPORT{db}="ID_NET_DRIVER", IMPORT{db}="ID_NET_LINK_FILE", ++IMPORT{db}="ID_NET_NAME" + + ACTION!="add", GOTO="net_setup_link_end" + +-- +1.7.9.2 + diff --git a/1070-rules-net-setup-link-remove-stray-linebreak.patch b/1070-rules-net-setup-link-remove-stray-linebreak.patch new file mode 100644 index 00000000..f389aa8c --- /dev/null +++ b/1070-rules-net-setup-link-remove-stray-linebreak.patch @@ -0,0 +1,27 @@ +From 52e231b04635400292179cf51b30d7d9b6323fb2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Mantas=20Mikul=C4=97nas?= +Date: Mon, 8 Sep 2014 22:53:39 +0300 +Subject: [PATCH] rules: net-setup-link - remove stray linebreak + +If not backslash-escaped, it splits the rule in two. +--- + rules/80-net-setup-link.rules | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git rules/80-net-setup-link.rules rules/80-net-setup-link.rules +index 27c43b9..4207694 100644 +--- rules/80-net-setup-link.rules ++++ rules/80-net-setup-link.rules +@@ -4,8 +4,7 @@ SUBSYSTEM!="net", GOTO="net_setup_link_end" + + IMPORT{builtin}="path_id" + +-ACTION=="move", IMPORT{db}="ID_NET_DRIVER", IMPORT{db}="ID_NET_LINK_FILE", +-IMPORT{db}="ID_NET_NAME" ++ACTION=="move", IMPORT{db}="ID_NET_DRIVER", IMPORT{db}="ID_NET_LINK_FILE", IMPORT{db}="ID_NET_NAME" + + ACTION!="add", GOTO="net_setup_link_end" + +-- +1.7.9.2 + diff --git a/1071-udev-import-the-full-db-on-MOVE-events-for-devices-w.patch b/1071-udev-import-the-full-db-on-MOVE-events-for-devices-w.patch new file mode 100644 index 00000000..f821d890 --- /dev/null +++ b/1071-udev-import-the-full-db-on-MOVE-events-for-devices-w.patch @@ -0,0 +1,54 @@ +From b081b27e1433cdc7ac72b25ae8b4db887d79187f Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Tue, 9 Sep 2014 12:23:19 +0200 +Subject: [PATCH] udev: import the full db on MOVE events for devices without + dev_t + +--- + rules/80-net-setup-link.rules | 2 -- + src/udev/udev-event.c | 16 ++++++++++++++++ + 2 files changed, 16 insertions(+), 2 deletions(-) + +diff --git rules/80-net-setup-link.rules rules/80-net-setup-link.rules +index 4207694..6e411a9 100644 +--- rules/80-net-setup-link.rules ++++ rules/80-net-setup-link.rules +@@ -4,8 +4,6 @@ SUBSYSTEM!="net", GOTO="net_setup_link_end" + + IMPORT{builtin}="path_id" + +-ACTION=="move", IMPORT{db}="ID_NET_DRIVER", IMPORT{db}="ID_NET_LINK_FILE", IMPORT{db}="ID_NET_NAME" +- + ACTION!="add", GOTO="net_setup_link_end" + + IMPORT{builtin}="net_setup_link" +diff --git src/udev/udev-event.c src/udev/udev-event.c +index 00cd6d4..18b92ca 100644 +--- src/udev/udev-event.c ++++ src/udev/udev-event.c +@@ -805,6 +805,22 @@ void udev_event_execute_rules(struct udev_event *event, + udev_watch_end(event->udev, event->dev_db); + } + ++ if (major(udev_device_get_devnum(dev)) == 0 && ++ streq(udev_device_get_action(dev), "move")) { ++ struct udev_list_entry *entry; ++ ++ for ((entry = udev_device_get_properties_list_entry(event->dev_db)); entry; entry = udev_list_entry_get_next(entry)) { ++ const char *key, *value; ++ struct udev_list_entry *property; ++ ++ key = udev_list_entry_get_name(entry); ++ value = udev_list_entry_get_value(entry); ++ ++ property = udev_device_add_property(event->dev, key, value); ++ udev_list_entry_set_num(property, true); ++ } ++ } ++ + udev_rules_apply_to_event(rules, event, timeout_usec, sigmask); + + /* rename a new network interface, if needed */ +-- +1.7.9.2 + diff --git a/1072-udev-netif_rename-don-t-log-to-kmsg.patch b/1072-udev-netif_rename-don-t-log-to-kmsg.patch new file mode 100644 index 00000000..2a5cebd2 --- /dev/null +++ b/1072-udev-netif_rename-don-t-log-to-kmsg.patch @@ -0,0 +1,39 @@ +Based on 1187f20655de0c37337ea73e1e55823b83cd7c00 Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Tue, 9 Sep 2014 22:45:03 +0200 +Subject: [PATCH] udev: netif_rename - don't log to kmsg + +As of 3.17, the kernel will do this on its own, so just do regular log_debug() logging from udev. +--- + src/udev/udev-event.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +--- src/udev/udev-event.c ++++ src/udev/udev-event.c 2014-09-16 08:52:36.154735794 +0000 +@@ -770,7 +770,7 @@ static int rename_netif(struct udev_even + + r = rtnl_set_link_name(rtnl, udev_device_get_ifindex(dev), name); + if (r == 0) { +- print_kmsg("renamed network interface %s to %s\n", oldname, name); ++ log_debug("renamed network interface %s to %s", oldname, name); + return r; + } else if (r != -EEXIST) { + log_error("error changing net interface name %s to %s: %s", +@@ -789,7 +789,7 @@ static int rename_netif(struct udev_even + } + + /* log temporary name */ +- print_kmsg("renamed network interface %s to %s\n", oldname, interim); ++ log_debug("renamed network interface %s to %s", oldname, interim); + + loop = 90 * 20; + while (loop--) { +@@ -798,7 +798,7 @@ static int rename_netif(struct udev_even + + r = rtnl_set_link_name(rtnl, udev_device_get_ifindex(dev), name); + if (r == 0) { +- print_kmsg("renamed network interface %s to %s\n", interim, name); ++ log_debug("renamed network interface %s to %s", interim, name); + break; + } + diff --git a/1073-udev-drop-print_kmsg.patch b/1073-udev-drop-print_kmsg.patch new file mode 100644 index 00000000..27aaa6e3 --- /dev/null +++ b/1073-udev-drop-print_kmsg.patch @@ -0,0 +1,75 @@ +Based on 9d19a679f23c7a72c326cbbbf44e0c9f423dec5d Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Tue, 9 Sep 2014 22:48:07 +0200 +Subject: [PATCH] udev - drop print_kmsg + +The only remaining user was 'starting version XXX', which is now logged using log_info(). +--- + src/libudev/libudev-private.h | 1 - + src/libudev/libudev-util.c | 25 ------------------------- + src/udev/udevd.c | 2 +- + 3 files changed, 1 insertion(+), 27 deletions(-) + +diff --git src/libudev/libudev-private.h src/libudev/libudev-private.h +index ae97557..cd1c1fb 100644 +--- src/libudev/libudev-private.h ++++ src/libudev/libudev-private.h +@@ -170,6 +170,5 @@ int util_delete_path(struct udev *udev, const char *path); + uid_t util_lookup_user(struct udev *udev, const char *user); + gid_t util_lookup_group(struct udev *udev, const char *group); + int util_resolve_subsys_kernel(struct udev *udev, const char *string, char *result, size_t maxsize, int read_value); +-ssize_t print_kmsg(const char *fmt, ...) _printf_(1, 2); + + #endif +--- src/libudev/libudev-util.c ++++ src/libudev/libudev-util.c 2014-09-16 08:56:01.862736270 +0000 +@@ -422,33 +422,3 @@ static int parse_proc_cmdline_word(const + + return 0; + } +- +-ssize_t print_kmsg(const char *fmt, ...) +-{ +- _cleanup_close_ int fd = -1; +- va_list ap; +- char text[1024]; +- ssize_t len; +- ssize_t ret; +- +- if (parse_proc_cmdline(parse_proc_cmdline_word) == -115) { +- fd = open("/dev/null", O_WRONLY|O_NOCTTY|O_CLOEXEC); +- } else { +- fd = open("/dev/kmsg", O_WRONLY|O_NOCTTY|O_CLOEXEC); +- } +- +- if (fd < 0) +- return -errno; +- +- len = snprintf(text, sizeof(text), "<30>systemd-udevd[%u]: ", getpid()); +- +- va_start(ap, fmt); +- len += vsnprintf(text + len, sizeof(text) - len, fmt, ap); +- va_end(ap); +- +- ret = write(fd, text, len); +- if (ret < 0) +- return -errno; +- +- return ret; +-} +diff --git src/udev/udevd.c src/udev/udevd.c +index be0acc3..b023b6e 100644 +--- src/udev/udevd.c ++++ src/udev/udevd.c +@@ -1200,7 +1200,7 @@ int main(int argc, char *argv[]) { + sd_notify(1, "READY=1"); + } + +- print_kmsg("starting version " VERSION "\n"); ++ log_info("starting version " VERSION "\n"); + + if (!debug) { + int fd; +-- +1.7.9.2 + diff --git a/1074-udev-fix-copy-paste-error-in-log-message.patch b/1074-udev-fix-copy-paste-error-in-log-message.patch new file mode 100644 index 00000000..a617451f --- /dev/null +++ b/1074-udev-fix-copy-paste-error-in-log-message.patch @@ -0,0 +1,25 @@ +From ec3281d3b681b002dfe1a4bea0532a504e37557a Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Wed, 10 Sep 2014 07:59:22 +0200 +Subject: [PATCH] udev: fix copy-paste error in log message + +--- + src/udev/udev-rules.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/udev/udev-rules.c src/udev/udev-rules.c +index cc56215..6de7511 100644 +--- src/udev/udev-rules.c ++++ src/udev/udev-rules.c +@@ -1323,7 +1323,7 @@ static int add_rule(struct udev_rules *rules, char *line, + if (cmd < UDEV_BUILTIN_MAX) + rule_add_key(&rule_tmp, TK_A_RUN_BUILTIN, op, value, &cmd); + else +- log_error("IMPORT{builtin}: '%s' unknown %s:%u", value, filename, lineno); ++ log_error("RUN{builtin}: '%s' unknown %s:%u", value, filename, lineno); + } else if (streq(attr, "program")) { + enum udev_builtin_cmd cmd = UDEV_BUILTIN_MAX; + +-- +1.7.9.2 + diff --git a/1075-udev-timeout-increase-timeout.patch b/1075-udev-timeout-increase-timeout.patch new file mode 100644 index 00000000..08f6daeb --- /dev/null +++ b/1075-udev-timeout-increase-timeout.patch @@ -0,0 +1,28 @@ +From b5338a19864ac3f5632aee48069a669479621dca Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Wed, 10 Sep 2014 10:56:26 +0200 +Subject: [PATCH] udev: timeout - increase timeout + +Some kernel modules still take more than one minute to insmod, we no longer rely on the timeout +killing insmod within a given period of time, so just bump this to a much higher value. Its only +purpose is to make sure that nothing stays aronud forever. +--- + src/udev/udevd.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/udev/udevd.c src/udev/udevd.c +index b023b6e..a7f8cbd 100644 +--- src/udev/udevd.c ++++ src/udev/udevd.c +@@ -74,7 +74,7 @@ static bool reload; + static int children; + static int children_max; + static int exec_delay; +-static usec_t event_timeout_usec = 60 * USEC_PER_SEC; ++static usec_t event_timeout_usec = 180 * USEC_PER_SEC; + static sigset_t sigmask_orig; + static UDEV_LIST(event_list); + static UDEV_LIST(worker_list); +-- +1.7.9.2 + diff --git a/1076-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch b/1076-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch new file mode 100644 index 00000000..4345f929 --- /dev/null +++ b/1076-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch @@ -0,0 +1,350 @@ +Based on 671174136525ddf208cdbe75d6d6bd159afa961f Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Thu, 11 Sep 2014 18:49:04 +0200 +Subject: [PATCH] udev: timeout - warn after a third of the timeout before + killing + +--- + src/test/test-udev.c | 4 ++-- + src/udev/udev-event.c | 40 ++++++++++++++++++++++++++++++---------- + src/udev/udev-rules.c | 8 +++++--- + src/udev/udev.h | 9 ++++++--- + src/udev/udevadm-test.c | 2 +- + src/udev/udevd.c | 40 +++++++++++++++++++++++++++------------- + 6 files changed, 71 insertions(+), 32 deletions(-) + +diff --git src/test/test-udev.c src/test/test-udev.c +index 566a73a..f085262 100644 +--- src/test/test-udev.c ++++ src/test/test-udev.c +@@ -153,8 +153,8 @@ int main(int argc, char *argv[]) { + } + } + +- udev_event_execute_rules(event, USEC_PER_SEC, rules, &sigmask_orig); +- udev_event_execute_run(event, USEC_PER_SEC, NULL); ++ udev_event_execute_rules(event, 3 * USEC_PER_SEC, USEC_PER_SEC, rules, &sigmask_orig); ++ udev_event_execute_run(event, 3 * USEC_PER_SEC, USEC_PER_SEC, NULL); + out: + if (event != NULL && event->fd_signal >= 0) + close(event->fd_signal); +diff --git src/udev/udev-event.c src/udev/udev-event.c +index a883edc..e8d6676 100644 +--- src/udev/udev-event.c ++++ src/udev/udev-event.c +@@ -541,6 +541,7 @@ out: + + static int spawn_wait(struct udev_event *event, + usec_t timeout_usec, ++ usec_t timeout_warn_usec, + const char *cmd, pid_t pid) { + struct pollfd pfd[1]; + int err = 0; +@@ -550,6 +551,7 @@ static int spawn_wait(struct udev_event *event, + + while (pid > 0) { + int timeout; ++ int timeout_warn = 0; + int fdcount; + + if (timeout_usec > 0) { +@@ -558,13 +560,17 @@ static int spawn_wait(struct udev_event *event, + age_usec = now(CLOCK_MONOTONIC) - event->birth_usec; + if (age_usec >= timeout_usec) + timeout = 1000; +- else +- timeout = ((timeout_usec - age_usec) / USEC_PER_MSEC) + MSEC_PER_SEC; ++ else { ++ if (timeout_warn_usec > 0) ++ timeout_warn = ((timeout_warn_usec - age_usec) / USEC_PER_MSEC) + MSEC_PER_SEC; ++ ++ timeout = ((timeout_usec - timeout_warn_usec - age_usec) / USEC_PER_MSEC) + MSEC_PER_SEC; ++ } + } else { + timeout = -1; + } + +- fdcount = poll(pfd, 1, timeout); ++ fdcount = poll(pfd, 1, timeout_warn); + if (fdcount < 0) { + if (errno == EINTR) + continue; +@@ -573,8 +579,20 @@ static int spawn_wait(struct udev_event *event, + goto out; + } + if (fdcount == 0) { +- log_error("timeout: killing '%s' [%u]", cmd, pid); +- kill(pid, SIGKILL); ++ log_warning("slow: '%s' [%u]", cmd, pid); ++ ++ fdcount = poll(pfd, 1, timeout); ++ if (fdcount < 0) { ++ if (errno == EINTR) ++ continue; ++ err = -errno; ++ log_error("failed to poll: %m"); ++ goto out; ++ } ++ if (fdcount == 0) { ++ log_error("timeout: killing '%s' [%u]", cmd, pid); ++ kill(pid, SIGKILL); ++ } + } + + if (pfd[0].revents & POLLIN) { +@@ -654,6 +672,7 @@ out: + + int udev_event_spawn(struct udev_event *event, + usec_t timeout_usec, ++ usec_t timeout_warn_usec, + const char *cmd, char **envp, const sigset_t *sigmask, + char *result, size_t ressize) { + struct udev *udev = event->udev; +@@ -730,7 +749,7 @@ int udev_event_spawn(struct udev_event *event, + outpipe[READ_END], errpipe[READ_END], + result, ressize); + +- err = spawn_wait(event, timeout_usec, cmd, pid); ++ err = spawn_wait(event, timeout_usec, timeout_warn_usec, cmd, pid); + } + + out: +@@ -769,6 +788,7 @@ static int rename_netif(struct udev_event *event) { + + void udev_event_execute_rules(struct udev_event *event, + usec_t timeout_usec, ++ usec_t timeout_warn_usec, + struct udev_rules *rules, const sigset_t *sigmask) { + struct udev_device *dev = event->dev; + +@@ -783,7 +803,7 @@ void udev_event_execute_rules(struct udev_event *event, + if (major(udev_device_get_devnum(dev)) != 0) + udev_watch_end(event->udev, dev); + +- udev_rules_apply_to_event(rules, event, timeout_usec, sigmask); ++ udev_rules_apply_to_event(rules, event, timeout_usec, timeout_warn_usec, sigmask); + + if (major(udev_device_get_devnum(dev)) != 0) + udev_node_remove(dev); +@@ -816,7 +836,7 @@ void udev_event_execute_rules(struct udev_event *event, + } + } + +- udev_rules_apply_to_event(rules, event, timeout_usec, sigmask); ++ udev_rules_apply_to_event(rules, event, timeout_usec, timeout_warn_usec, sigmask); + + /* rename a new network interface, if needed */ + if (udev_device_get_ifindex(dev) > 0 && streq(udev_device_get_action(dev), "add") && +@@ -889,7 +909,7 @@ void udev_event_execute_rules(struct udev_event *event, + } + } + +-void udev_event_execute_run(struct udev_event *event, usec_t timeout_usec, const sigset_t *sigmask) { ++void udev_event_execute_run(struct udev_event *event, usec_t timeout_usec, usec_t timeout_warn_usec, const sigset_t *sigmask) { + struct udev_list_entry *list_entry; + + udev_list_entry_foreach(list_entry, udev_list_get_entry(&event->run_list)) { +@@ -912,7 +932,7 @@ void udev_event_execute_run(struct udev_event *event, usec_t timeout_usec, const + + udev_event_apply_format(event, cmd, program, sizeof(program)); + envp = udev_device_get_properties_envp(event->dev); +- udev_event_spawn(event, timeout_usec, program, envp, sigmask, NULL, 0); ++ udev_event_spawn(event, timeout_usec, timeout_warn_usec, program, envp, sigmask, NULL, 0); + } + } + } +diff --git src/udev/udev-rules.c src/udev/udev-rules.c +index 9514dde..db95442 100644 +--- src/udev/udev-rules.c ++++ src/udev/udev-rules.c +@@ -615,6 +615,7 @@ static int import_file_into_properties(struct udev_device *dev, const char *file + + static int import_program_into_properties(struct udev_event *event, + usec_t timeout_usec, ++ usec_t timeout_warn_usec, + const char *program, const sigset_t *sigmask) { + struct udev_device *dev = event->dev; + char **envp; +@@ -623,7 +624,7 @@ static int import_program_into_properties(struct udev_event *event, + int err; + + envp = udev_device_get_properties_envp(dev); +- err = udev_event_spawn(event, timeout_usec, program, envp, sigmask, result, sizeof(result)); ++ err = udev_event_spawn(event, timeout_usec, timeout_warn_usec, program, envp, sigmask, result, sizeof(result)); + if (err < 0) + return err; + +@@ -1862,6 +1863,7 @@ enum escape_type { + int udev_rules_apply_to_event(struct udev_rules *rules, + struct udev_event *event, + usec_t timeout_usec, ++ usec_t timeout_warn_usec, + const sigset_t *sigmask) { + struct token *cur; + struct token *rule; +@@ -2070,7 +2072,7 @@ int udev_rules_apply_to_event(struct udev_rules *rules, + rules_str(rules, rule->rule.filename_off), + rule->rule.filename_line); + +- if (udev_event_spawn(event, timeout_usec, program, envp, sigmask, result, sizeof(result)) < 0) { ++ if (udev_event_spawn(event, timeout_usec, timeout_warn_usec, program, envp, sigmask, result, sizeof(result)) < 0) { + if (cur->key.op != OP_NOMATCH) + goto nomatch; + } else { +@@ -2106,7 +2108,7 @@ int udev_rules_apply_to_event(struct udev_rules *rules, + rules_str(rules, rule->rule.filename_off), + rule->rule.filename_line); + +- if (import_program_into_properties(event, timeout_usec, import, sigmask) != 0) ++ if (import_program_into_properties(event, timeout_usec, timeout_warn_usec, import, sigmask) != 0) + if (cur->key.op != OP_NOMATCH) + goto nomatch; + break; +diff --git src/udev/udev.h src/udev/udev.h +index ed01da3..765ba9e 100644 +--- src/udev/udev.h ++++ src/udev/udev.h +@@ -73,7 +73,8 @@ struct udev_rules; + struct udev_rules *udev_rules_new(struct udev *udev, int resolve_names); + struct udev_rules *udev_rules_unref(struct udev_rules *rules); + bool udev_rules_check_timestamp(struct udev_rules *rules); +-int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event, usec_t timeout_usec, const sigset_t *sigmask); ++int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event, usec_t timeout_usec, usec_t timeout_warn_usec, ++ const sigset_t *sigmask); + int udev_rules_apply_static_dev_perms(struct udev_rules *rules); + + /* udev-event.c */ +@@ -84,10 +85,12 @@ int udev_event_apply_subsys_kernel(struct udev_event *event, const char *string, + char *result, size_t maxsize, int read_value); + int udev_event_spawn(struct udev_event *event, + usec_t timeout_usec, ++ usec_t timeout_warn_usec, + const char *cmd, char **envp, const sigset_t *sigmask, + char *result, size_t ressize); +-void udev_event_execute_rules(struct udev_event *event, usec_t timeout_usec, struct udev_rules *rules, const sigset_t *sigset); +-void udev_event_execute_run(struct udev_event *event, usec_t timeout_usec, const sigset_t *sigset); ++void udev_event_execute_rules(struct udev_event *event, usec_t timeout_usec, usec_t timeout_warn_usec, ++ struct udev_rules *rules, const sigset_t *sigset); ++void udev_event_execute_run(struct udev_event *event, usec_t timeout_usec, usec_t timeout_warn_usec, const sigset_t *sigset); + int udev_build_argv(struct udev *udev, char *cmd, int *argc, char *argv[]); + + /* udev-watch.c */ +diff --git src/udev/udevadm-test.c src/udev/udevadm-test.c +index 809adb6..4738b61 100644 +--- src/udev/udevadm-test.c ++++ src/udev/udevadm-test.c +@@ -136,7 +136,7 @@ static int adm_test(struct udev *udev, int argc, char *argv[]) { + goto out; + } + +- udev_event_execute_rules(event, 60 * USEC_PER_SEC, rules, &sigmask_orig); ++ udev_event_execute_rules(event, 60 * USEC_PER_SEC, 20 * USEC_PER_SEC, rules, &sigmask_orig); + + udev_list_entry_foreach(entry, udev_device_get_properties_list_entry(dev)) + printf("%s=%s\n", udev_list_entry_get_name(entry), udev_list_entry_get_value(entry)); +--- src/udev/udevd.c ++++ src/udev/udevd.c 2014-09-16 09:01:14.382735997 +0000 +@@ -75,6 +75,7 @@ static int children; + static int children_max; + static int exec_delay; + static usec_t event_timeout_usec = 180 * USEC_PER_SEC; ++static usec_t event_timeout_warn_usec = 180 * USEC_PER_SEC / 3; + static sigset_t sigmask_orig; + static UDEV_LIST(event_list); + static UDEV_LIST(worker_list); +@@ -129,6 +130,7 @@ struct worker { + enum worker_state state; + struct event *event; + usec_t event_start_usec; ++ bool event_warned; + }; + + /* passed from worker to main process */ +@@ -314,9 +316,9 @@ static void worker_new(struct event *eve + } + + /* apply rules, create node, symlinks */ +- udev_event_execute_rules(udev_event, event_timeout_usec, rules, &sigmask_orig); ++ udev_event_execute_rules(udev_event, event_timeout_usec, event_timeout_warn_usec, rules, &sigmask_orig); + +- udev_event_execute_run(udev_event, event_timeout_usec, &sigmask_orig); ++ udev_event_execute_run(udev_event, event_timeout_usec, event_timeout_warn_usec, &sigmask_orig); + + /* apply/restore inotify watch */ + if (udev_event->inotify_watch) { +@@ -410,6 +412,7 @@ out: + worker->pid = pid; + worker->state = WORKER_RUNNING; + worker->event_start_usec = now(CLOCK_MONOTONIC); ++ worker->event_warned = false; + worker->event = event; + event->state = EVENT_RUNNING; + udev_list_node_append(&worker->node, &worker_list); +@@ -441,6 +444,7 @@ static void event_run(struct event *even + worker->event = event; + worker->state = WORKER_RUNNING; + worker->event_start_usec = now(CLOCK_MONOTONIC); ++ worker->event_warned = false; + event->state = EVENT_RUNNING; + return; + } +@@ -1016,6 +1020,7 @@ static void kernel_cmdline_options(struc + exec_delay = strtoul(opt + 16, NULL, 0); + } else if (startswith(opt, "udev.event-timeout=")) { + event_timeout_usec = strtoul(opt + 16, NULL, 0) * USEC_PER_SEC; ++ event_timeout_warn_usec = (event_timeout_usec / 3) ? : 1; + } + + free(s); +@@ -1078,6 +1083,7 @@ int main(int argc, char *argv[]) { + break; + case 't': + event_timeout_usec = strtoul(optarg, NULL, 0) * USEC_PER_SEC; ++ event_timeout_warn_usec = (event_timeout_usec / 3) ? : 1; + break; + case 'D': + debug = true; +@@ -1413,21 +1419,29 @@ int main(int argc, char *argv[]) { + /* check for hanging events */ + udev_list_node_foreach(loop, &worker_list) { + struct worker *worker = node_to_worker(loop); ++ usec_t ts; + + if (worker->state != WORKER_RUNNING) + continue; + +- if ((now(CLOCK_MONOTONIC) - worker->event_start_usec) > event_timeout_usec) { +- log_error("worker [%u] %s timeout; kill it", worker->pid, worker->event->devpath); +- kill(worker->pid, SIGKILL); +- worker->state = WORKER_KILLED; +- +- /* drop reference taken for state 'running' */ +- worker_unref(worker); +- log_error("seq %llu '%s' killed", udev_device_get_seqnum(worker->event->dev), worker->event->devpath); +- worker->event->exitcode = -64; +- event_queue_delete(worker->event); +- worker->event = NULL; ++ ts = now(CLOCK_MONOTONIC); ++ ++ if ((ts - worker->event_start_usec) > event_timeout_warn_usec) { ++ if ((ts - worker->event_start_usec) > event_timeout_usec) { ++ log_error("worker [%u] %s timeout; kill it", worker->pid, worker->event->devpath); ++ kill(worker->pid, SIGKILL); ++ worker->state = WORKER_KILLED; ++ ++ /* drop reference taken for state 'running' */ ++ worker_unref(worker); ++ log_error("seq %llu '%s' killed", udev_device_get_seqnum(worker->event->dev), worker->event->devpath); ++ worker->event->exitcode = -64; ++ event_queue_delete(worker->event); ++ worker->event = NULL; ++ } else if (!worker->event_warned) { ++ log_warning("worker [%u] %s is taking a long time", worker->pid, worker->event->devpath); ++ worker->event_warned = true; ++ } + } + } + +-- +1.7.9.2 + diff --git a/1077-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch b/1077-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch new file mode 100644 index 00000000..57b2d699 --- /dev/null +++ b/1077-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch @@ -0,0 +1,350 @@ +Based on 671174136525ddf208cdbe75d6d6bd159afa961f Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Thu, 11 Sep 2014 18:49:04 +0200 +Subject: [PATCH] udev: timeout - warn after a third of the timeout before + killing + +--- + src/test/test-udev.c | 4 ++-- + src/udev/udev-event.c | 40 ++++++++++++++++++++++++++++++---------- + src/udev/udev-rules.c | 8 +++++--- + src/udev/udev.h | 9 ++++++--- + src/udev/udevadm-test.c | 2 +- + src/udev/udevd.c | 40 +++++++++++++++++++++++++++------------- + 6 files changed, 71 insertions(+), 32 deletions(-) + +diff --git src/test/test-udev.c src/test/test-udev.c +index 566a73a..f085262 100644 +--- src/test/test-udev.c ++++ src/test/test-udev.c +@@ -153,8 +153,8 @@ int main(int argc, char *argv[]) { + } + } + +- udev_event_execute_rules(event, USEC_PER_SEC, rules, &sigmask_orig); +- udev_event_execute_run(event, USEC_PER_SEC, NULL); ++ udev_event_execute_rules(event, 3 * USEC_PER_SEC, USEC_PER_SEC, rules, &sigmask_orig); ++ udev_event_execute_run(event, 3 * USEC_PER_SEC, USEC_PER_SEC, NULL); + out: + if (event != NULL && event->fd_signal >= 0) + close(event->fd_signal); +diff --git src/udev/udev-event.c src/udev/udev-event.c +index a883edc..e8d6676 100644 +--- src/udev/udev-event.c ++++ src/udev/udev-event.c +@@ -541,6 +541,7 @@ out: + + static int spawn_wait(struct udev_event *event, + usec_t timeout_usec, ++ usec_t timeout_warn_usec, + const char *cmd, pid_t pid) { + struct pollfd pfd[1]; + int err = 0; +@@ -550,6 +551,7 @@ static int spawn_wait(struct udev_event *event, + + while (pid > 0) { + int timeout; ++ int timeout_warn = 0; + int fdcount; + + if (timeout_usec > 0) { +@@ -558,13 +560,17 @@ static int spawn_wait(struct udev_event *event, + age_usec = now(CLOCK_MONOTONIC) - event->birth_usec; + if (age_usec >= timeout_usec) + timeout = 1000; +- else +- timeout = ((timeout_usec - age_usec) / USEC_PER_MSEC) + MSEC_PER_SEC; ++ else { ++ if (timeout_warn_usec > 0) ++ timeout_warn = ((timeout_warn_usec - age_usec) / USEC_PER_MSEC) + MSEC_PER_SEC; ++ ++ timeout = ((timeout_usec - timeout_warn_usec - age_usec) / USEC_PER_MSEC) + MSEC_PER_SEC; ++ } + } else { + timeout = -1; + } + +- fdcount = poll(pfd, 1, timeout); ++ fdcount = poll(pfd, 1, timeout_warn); + if (fdcount < 0) { + if (errno == EINTR) + continue; +@@ -573,8 +579,20 @@ static int spawn_wait(struct udev_event *event, + goto out; + } + if (fdcount == 0) { +- log_error("timeout: killing '%s' [%u]", cmd, pid); +- kill(pid, SIGKILL); ++ log_warning("slow: '%s' [%u]", cmd, pid); ++ ++ fdcount = poll(pfd, 1, timeout); ++ if (fdcount < 0) { ++ if (errno == EINTR) ++ continue; ++ err = -errno; ++ log_error("failed to poll: %m"); ++ goto out; ++ } ++ if (fdcount == 0) { ++ log_error("timeout: killing '%s' [%u]", cmd, pid); ++ kill(pid, SIGKILL); ++ } + } + + if (pfd[0].revents & POLLIN) { +@@ -654,6 +672,7 @@ out: + + int udev_event_spawn(struct udev_event *event, + usec_t timeout_usec, ++ usec_t timeout_warn_usec, + const char *cmd, char **envp, const sigset_t *sigmask, + char *result, size_t ressize) { + struct udev *udev = event->udev; +@@ -730,7 +749,7 @@ int udev_event_spawn(struct udev_event *event, + outpipe[READ_END], errpipe[READ_END], + result, ressize); + +- err = spawn_wait(event, timeout_usec, cmd, pid); ++ err = spawn_wait(event, timeout_usec, timeout_warn_usec, cmd, pid); + } + + out: +@@ -769,6 +788,7 @@ static int rename_netif(struct udev_event *event) { + + void udev_event_execute_rules(struct udev_event *event, + usec_t timeout_usec, ++ usec_t timeout_warn_usec, + struct udev_rules *rules, const sigset_t *sigmask) { + struct udev_device *dev = event->dev; + +@@ -783,7 +803,7 @@ void udev_event_execute_rules(struct udev_event *event, + if (major(udev_device_get_devnum(dev)) != 0) + udev_watch_end(event->udev, dev); + +- udev_rules_apply_to_event(rules, event, timeout_usec, sigmask); ++ udev_rules_apply_to_event(rules, event, timeout_usec, timeout_warn_usec, sigmask); + + if (major(udev_device_get_devnum(dev)) != 0) + udev_node_remove(dev); +@@ -816,7 +836,7 @@ void udev_event_execute_rules(struct udev_event *event, + } + } + +- udev_rules_apply_to_event(rules, event, timeout_usec, sigmask); ++ udev_rules_apply_to_event(rules, event, timeout_usec, timeout_warn_usec, sigmask); + + /* rename a new network interface, if needed */ + if (udev_device_get_ifindex(dev) > 0 && streq(udev_device_get_action(dev), "add") && +@@ -889,7 +909,7 @@ void udev_event_execute_rules(struct udev_event *event, + } + } + +-void udev_event_execute_run(struct udev_event *event, usec_t timeout_usec, const sigset_t *sigmask) { ++void udev_event_execute_run(struct udev_event *event, usec_t timeout_usec, usec_t timeout_warn_usec, const sigset_t *sigmask) { + struct udev_list_entry *list_entry; + + udev_list_entry_foreach(list_entry, udev_list_get_entry(&event->run_list)) { +@@ -912,7 +932,7 @@ void udev_event_execute_run(struct udev_event *event, usec_t timeout_usec, const + + udev_event_apply_format(event, cmd, program, sizeof(program)); + envp = udev_device_get_properties_envp(event->dev); +- udev_event_spawn(event, timeout_usec, program, envp, sigmask, NULL, 0); ++ udev_event_spawn(event, timeout_usec, timeout_warn_usec, program, envp, sigmask, NULL, 0); + } + } + } +diff --git src/udev/udev-rules.c src/udev/udev-rules.c +index 9514dde..db95442 100644 +--- src/udev/udev-rules.c ++++ src/udev/udev-rules.c +@@ -615,6 +615,7 @@ static int import_file_into_properties(struct udev_device *dev, const char *file + + static int import_program_into_properties(struct udev_event *event, + usec_t timeout_usec, ++ usec_t timeout_warn_usec, + const char *program, const sigset_t *sigmask) { + struct udev_device *dev = event->dev; + char **envp; +@@ -623,7 +624,7 @@ static int import_program_into_properties(struct udev_event *event, + int err; + + envp = udev_device_get_properties_envp(dev); +- err = udev_event_spawn(event, timeout_usec, program, envp, sigmask, result, sizeof(result)); ++ err = udev_event_spawn(event, timeout_usec, timeout_warn_usec, program, envp, sigmask, result, sizeof(result)); + if (err < 0) + return err; + +@@ -1862,6 +1863,7 @@ enum escape_type { + int udev_rules_apply_to_event(struct udev_rules *rules, + struct udev_event *event, + usec_t timeout_usec, ++ usec_t timeout_warn_usec, + const sigset_t *sigmask) { + struct token *cur; + struct token *rule; +@@ -2070,7 +2072,7 @@ int udev_rules_apply_to_event(struct udev_rules *rules, + rules_str(rules, rule->rule.filename_off), + rule->rule.filename_line); + +- if (udev_event_spawn(event, timeout_usec, program, envp, sigmask, result, sizeof(result)) < 0) { ++ if (udev_event_spawn(event, timeout_usec, timeout_warn_usec, program, envp, sigmask, result, sizeof(result)) < 0) { + if (cur->key.op != OP_NOMATCH) + goto nomatch; + } else { +@@ -2106,7 +2108,7 @@ int udev_rules_apply_to_event(struct udev_rules *rules, + rules_str(rules, rule->rule.filename_off), + rule->rule.filename_line); + +- if (import_program_into_properties(event, timeout_usec, import, sigmask) != 0) ++ if (import_program_into_properties(event, timeout_usec, timeout_warn_usec, import, sigmask) != 0) + if (cur->key.op != OP_NOMATCH) + goto nomatch; + break; +diff --git src/udev/udev.h src/udev/udev.h +index ed01da3..765ba9e 100644 +--- src/udev/udev.h ++++ src/udev/udev.h +@@ -73,7 +73,8 @@ struct udev_rules; + struct udev_rules *udev_rules_new(struct udev *udev, int resolve_names); + struct udev_rules *udev_rules_unref(struct udev_rules *rules); + bool udev_rules_check_timestamp(struct udev_rules *rules); +-int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event, usec_t timeout_usec, const sigset_t *sigmask); ++int udev_rules_apply_to_event(struct udev_rules *rules, struct udev_event *event, usec_t timeout_usec, usec_t timeout_warn_usec, ++ const sigset_t *sigmask); + int udev_rules_apply_static_dev_perms(struct udev_rules *rules); + + /* udev-event.c */ +@@ -84,10 +85,12 @@ int udev_event_apply_subsys_kernel(struct udev_event *event, const char *string, + char *result, size_t maxsize, int read_value); + int udev_event_spawn(struct udev_event *event, + usec_t timeout_usec, ++ usec_t timeout_warn_usec, + const char *cmd, char **envp, const sigset_t *sigmask, + char *result, size_t ressize); +-void udev_event_execute_rules(struct udev_event *event, usec_t timeout_usec, struct udev_rules *rules, const sigset_t *sigset); +-void udev_event_execute_run(struct udev_event *event, usec_t timeout_usec, const sigset_t *sigset); ++void udev_event_execute_rules(struct udev_event *event, usec_t timeout_usec, usec_t timeout_warn_usec, ++ struct udev_rules *rules, const sigset_t *sigset); ++void udev_event_execute_run(struct udev_event *event, usec_t timeout_usec, usec_t timeout_warn_usec, const sigset_t *sigset); + int udev_build_argv(struct udev *udev, char *cmd, int *argc, char *argv[]); + + /* udev-watch.c */ +diff --git src/udev/udevadm-test.c src/udev/udevadm-test.c +index 809adb6..4738b61 100644 +--- src/udev/udevadm-test.c ++++ src/udev/udevadm-test.c +@@ -136,7 +136,7 @@ static int adm_test(struct udev *udev, int argc, char *argv[]) { + goto out; + } + +- udev_event_execute_rules(event, 60 * USEC_PER_SEC, rules, &sigmask_orig); ++ udev_event_execute_rules(event, 60 * USEC_PER_SEC, 20 * USEC_PER_SEC, rules, &sigmask_orig); + + udev_list_entry_foreach(entry, udev_device_get_properties_list_entry(dev)) + printf("%s=%s\n", udev_list_entry_get_name(entry), udev_list_entry_get_value(entry)); +--- src/udev/udevd.c ++++ src/udev/udevd.c 2014-09-16 09:01:14.382735997 +0000 +@@ -75,6 +75,7 @@ static int children; + static int children_max; + static int exec_delay; + static usec_t event_timeout_usec = 180 * USEC_PER_SEC; ++static usec_t event_timeout_warn_usec = 180 * USEC_PER_SEC / 3; + static sigset_t sigmask_orig; + static UDEV_LIST(event_list); + static UDEV_LIST(worker_list); +@@ -129,6 +130,7 @@ struct worker { + enum worker_state state; + struct event *event; + usec_t event_start_usec; ++ bool event_warned; + }; + + /* passed from worker to main process */ +@@ -314,9 +316,9 @@ static void worker_new(struct event *eve + } + + /* apply rules, create node, symlinks */ +- udev_event_execute_rules(udev_event, event_timeout_usec, rules, &sigmask_orig); ++ udev_event_execute_rules(udev_event, event_timeout_usec, event_timeout_warn_usec, rules, &sigmask_orig); + +- udev_event_execute_run(udev_event, event_timeout_usec, &sigmask_orig); ++ udev_event_execute_run(udev_event, event_timeout_usec, event_timeout_warn_usec, &sigmask_orig); + + /* apply/restore inotify watch */ + if (udev_event->inotify_watch) { +@@ -410,6 +412,7 @@ out: + worker->pid = pid; + worker->state = WORKER_RUNNING; + worker->event_start_usec = now(CLOCK_MONOTONIC); ++ worker->event_warned = false; + worker->event = event; + event->state = EVENT_RUNNING; + udev_list_node_append(&worker->node, &worker_list); +@@ -441,6 +444,7 @@ static void event_run(struct event *even + worker->event = event; + worker->state = WORKER_RUNNING; + worker->event_start_usec = now(CLOCK_MONOTONIC); ++ worker->event_warned = false; + event->state = EVENT_RUNNING; + return; + } +@@ -1016,6 +1020,7 @@ static void kernel_cmdline_options(struc + exec_delay = strtoul(opt + 16, NULL, 0); + } else if (startswith(opt, "udev.event-timeout=")) { + event_timeout_usec = strtoul(opt + 16, NULL, 0) * USEC_PER_SEC; ++ event_timeout_warn_usec = (event_timeout_usec / 3) ? : 1; + } + + free(s); +@@ -1078,6 +1083,7 @@ int main(int argc, char *argv[]) { + break; + case 't': + event_timeout_usec = strtoul(optarg, NULL, 0) * USEC_PER_SEC; ++ event_timeout_warn_usec = (event_timeout_usec / 3) ? : 1; + break; + case 'D': + debug = true; +@@ -1413,21 +1419,29 @@ int main(int argc, char *argv[]) { + /* check for hanging events */ + udev_list_node_foreach(loop, &worker_list) { + struct worker *worker = node_to_worker(loop); ++ usec_t ts; + + if (worker->state != WORKER_RUNNING) + continue; + +- if ((now(CLOCK_MONOTONIC) - worker->event_start_usec) > event_timeout_usec) { +- log_error("worker [%u] %s timeout; kill it", worker->pid, worker->event->devpath); +- kill(worker->pid, SIGKILL); +- worker->state = WORKER_KILLED; +- +- /* drop reference taken for state 'running' */ +- worker_unref(worker); +- log_error("seq %llu '%s' killed", udev_device_get_seqnum(worker->event->dev), worker->event->devpath); +- worker->event->exitcode = -64; +- event_queue_delete(worker->event, true); +- worker->event = NULL; ++ ts = now(CLOCK_MONOTONIC); ++ ++ if ((ts - worker->event_start_usec) > event_timeout_warn_usec) { ++ if ((ts - worker->event_start_usec) > event_timeout_usec) { ++ log_error("worker [%u] %s timeout; kill it", worker->pid, worker->event->devpath); ++ kill(worker->pid, SIGKILL); ++ worker->state = WORKER_KILLED; ++ ++ /* drop reference taken for state 'running' */ ++ worker_unref(worker); ++ log_error("seq %llu '%s' killed", udev_device_get_seqnum(worker->event->dev), worker->event->devpath); ++ worker->event->exitcode = -64; ++ event_queue_delete(worker->event, true); ++ worker->event = NULL; ++ } else if (!worker->event_warned) { ++ log_warning("worker [%u] %s is taking a long time", worker->pid, worker->event->devpath); ++ worker->event_warned = true; ++ } + } + } + +-- +1.7.9.2 + diff --git a/1078-udev-remove-userspace-firmware-loading-support.patch b/1078-udev-remove-userspace-firmware-loading-support.patch new file mode 100644 index 00000000..42e0af98 --- /dev/null +++ b/1078-udev-remove-userspace-firmware-loading-support.patch @@ -0,0 +1,349 @@ +From be2ea723b1d023b3d385d3b791ee4607cbfb20ca Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Sat, 30 Aug 2014 11:34:20 +0200 +Subject: [PATCH] udev: remove userspace firmware loading support + +--- + Makefile.am | 12 --- + README | 9 +-- + TODO | 1 - + configure.ac | 20 ----- + src/udev/udev-builtin-firmware.c | 154 --------------------------------------- + src/udev/udev-builtin.c | 3 - + src/udev/udev.h | 6 -- + src/udev/udevd.c | 13 ---- + +Index: systemd-210/configure.ac +=================================================================== +--- systemd-210.orig/configure.ac ++++ systemd-210/configure.ac +@@ -902,25 +902,6 @@ if test "x$have_myhostname" != "xno"; th + fi + + # ------------------------------------------------------------------------------ +-AC_ARG_WITH(firmware-path, +- AS_HELP_STRING([--with-firmware-path=DIR[[[:DIR[...]]]]], +- [Firmware search path (default="")]), +- [], [with_firmware_path=""]) +-OLD_IFS=$IFS +-IFS=: +-for i in $with_firmware_path; do +- if test "x${FIRMWARE_PATH}" = "x"; then +- FIRMWARE_PATH="\\\"${i}/\\\"" +- else +- FIRMWARE_PATH="${FIRMWARE_PATH}, \\\"${i}/\\\"" +- fi +-done +-IFS=$OLD_IFS +-AC_SUBST(FIRMWARE_PATH) +-AS_IF([test "x${FIRMWARE_PATH}" != "x"], [ AC_DEFINE(HAVE_FIRMWARE, 1, [Define if FIRMWARE is available]) ]) +-AM_CONDITIONAL(ENABLE_FIRMWARE, [test "x${FIRMWARE_PATH}" != "x"]) +- +-# ------------------------------------------------------------------------------ + AC_ARG_ENABLE([gudev], + AS_HELP_STRING([--disable-gudev], [disable Gobject libudev support @<:@default=enabled@:>@]), + [], [enable_gudev=yes]) +@@ -1137,7 +1118,6 @@ AC_MSG_RESULT([ + Build Python: ${PYTHON} + Installation Python: ${PYTHON_BINARY} + sphinx binary: ${SPHINX_BUILD} +- firmware path: ${FIRMWARE_PATH} + PAM modules dir: ${with_pamlibdir} + PAM configuration dir: ${with_pamconfdir} + D-Bus policy dir: ${with_dbuspolicydir} +Index: systemd-210/Makefile.am +=================================================================== +--- systemd-210.orig/Makefile.am ++++ systemd-210/Makefile.am +@@ -2677,18 +2677,6 @@ libudev_core_la_LIBADD = \ + $(BLKID_LIBS) \ + $(KMOD_LIBS) + +-libudev_core_la_CPPFLAGS = \ +- $(AM_CPPFLAGS) \ +- -DFIRMWARE_PATH="$(FIRMWARE_PATH)" +- +-if ENABLE_FIRMWARE +-libudev_core_la_SOURCES += \ +- src/udev/udev-builtin-firmware.c +- +-dist_udevrules_DATA += \ +- rules/50-firmware.rules +-endif +- + if HAVE_KMOD + libudev_core_la_SOURCES += \ + src/udev/udev-builtin-kmod.c +Index: systemd-210/README +=================================================================== +--- systemd-210.orig/README ++++ systemd-210/README +@@ -51,14 +51,14 @@ REQUIREMENTS: + + Linux kernel >= 3.8 for Smack support + +- Udev will fail to work with the legacy layout: ++ Udev will fail to work with the legacy sysfs layout: + CONFIG_SYSFS_DEPRECATED=n + + Legacy hotplug slows down the system and confuses udev: + CONFIG_UEVENT_HELPER_PATH="" + +- Userspace firmware loading is deprecated, will go away, and +- sometimes causes problems: ++ Userspace firmware loading is not supported and should ++ be disabled in the kernel + CONFIG_FW_LOADER_USER_HELPER=n + + Some udev rules and virtualization detection relies on it: +Index: systemd-210/src/udev/udev-builtin.c +=================================================================== +--- systemd-210.orig/src/udev/udev-builtin.c ++++ systemd-210/src/udev/udev-builtin.c +@@ -34,9 +34,6 @@ static const struct udev_builtin *builti + [UDEV_BUILTIN_BLKID] = &udev_builtin_blkid, + #endif + [UDEV_BUILTIN_BTRFS] = &udev_builtin_btrfs, +-#ifdef HAVE_FIRMWARE +- [UDEV_BUILTIN_FIRMWARE] = &udev_builtin_firmware, +-#endif + [UDEV_BUILTIN_HWDB] = &udev_builtin_hwdb, + [UDEV_BUILTIN_INPUT_ID] = &udev_builtin_input_id, + [UDEV_BUILTIN_KEYBOARD] = &udev_builtin_keyboard, +Index: systemd-210/src/udev/udev-builtin-firmware.c +=================================================================== +--- systemd-210.orig/src/udev/udev-builtin-firmware.c ++++ /dev/null +@@ -1,157 +0,0 @@ +-/* +- * firmware - Kernel firmware loader +- * +- * Copyright (C) 2009 Piter Punk +- * Copyright (C) 2009-2011 Kay Sievers +- * +- * This program is free software; you can redistribute it and/or +- * modify it under the terms of the GNU General Public License as +- * published by the Free Software Foundation; either version 2 of the +- * License, or (at your option) any later version. +- * +- * This program is distributed in the hope that it will be useful, but +- * WITHOUT ANY WARRANTY; without even the implied warranty of +- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- * General Public License for more details:* +- */ +- +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +- +-#include "udev.h" +- +-static bool set_loading(struct udev *udev, char *loadpath, const char *state) +-{ +- FILE *ldfile; +- +- ldfile = fopen(loadpath, "we"); +- if (ldfile == NULL) { +- log_error("error: can not open '%s'", loadpath); +- return false; +- }; +- fprintf(ldfile, "%s\n", state); +- fclose(ldfile); +- return true; +-} +- +-static bool copy_firmware(struct udev *udev, const char *source, const char *target, size_t size) +-{ +- char *buf; +- FILE *fsource = NULL, *ftarget = NULL; +- bool ret = false; +- +- buf = malloc(size); +- if (buf == NULL) { +- log_error("No memory available to load firmware file"); +- return false; +- } +- +- log_debug("writing '%s' (%zi) to '%s'", source, size, target); +- +- fsource = fopen(source, "re"); +- if (fsource == NULL) +- goto exit; +- ftarget = fopen(target, "we"); +- if (ftarget == NULL) +- goto exit; +- if (fread(buf, size, 1, fsource) != 1) +- goto exit; +- if (fwrite(buf, size, 1, ftarget) == 1) +- ret = true; +-exit: +- if (ftarget != NULL) +- fclose(ftarget); +- if (fsource != NULL) +- fclose(fsource); +- free(buf); +- return ret; +-} +- +-static int builtin_firmware(struct udev_device *dev, int argc, char *argv[], bool test) +-{ +- struct udev *udev = udev_device_get_udev(dev); +- static const char *searchpath[] = { FIRMWARE_PATH }; +- char loadpath[UTIL_PATH_SIZE]; +- char datapath[UTIL_PATH_SIZE]; +- char fwpath[UTIL_PATH_SIZE]; +- const char *firmware; +- FILE *fwfile = NULL; +- struct utsname kernel; +- struct stat statbuf; +- unsigned int i; +- int rc = EXIT_SUCCESS; +- +- firmware = udev_device_get_property_value(dev, "FIRMWARE"); +- if (firmware == NULL) { +- log_error("firmware parameter missing"); +- rc = EXIT_FAILURE; +- goto exit; +- } +- +- /* lookup firmware file */ +- uname(&kernel); +- for (i = 0; i < ELEMENTSOF(searchpath); i++) { +- strscpyl(fwpath, sizeof(fwpath), searchpath[i], kernel.release, "/", firmware, NULL); +- fwfile = fopen(fwpath, "re"); +- if (fwfile != NULL) +- break; +- +- strscpyl(fwpath, sizeof(fwpath), searchpath[i], firmware, NULL); +- fwfile = fopen(fwpath, "re"); +- if (fwfile != NULL) +- break; +- } +- +- strscpyl(loadpath, sizeof(loadpath), udev_device_get_syspath(dev), "/loading", NULL); +- +- if (fwfile == NULL) { +- log_debug("did not find firmware file '%s'", firmware); +- rc = EXIT_FAILURE; +- /* +- * Do not cancel the request in the initrd, the real root might have +- * the firmware file and the 'coldplug' run in the real root will find +- * this pending request and fulfill or cancel it. +- * */ +- if (!in_initrd()) +- set_loading(udev, loadpath, "-1"); +- goto exit; +- } +- +- if (stat(fwpath, &statbuf) < 0 || statbuf.st_size == 0) { +- if (!in_initrd()) +- set_loading(udev, loadpath, "-1"); +- rc = EXIT_FAILURE; +- goto exit; +- } +- +- if (!set_loading(udev, loadpath, "1")) +- goto exit; +- +- strscpyl(datapath, sizeof(datapath), udev_device_get_syspath(dev), "/data", NULL); +- if (!copy_firmware(udev, fwpath, datapath, statbuf.st_size)) { +- log_error("error sending firmware '%s' to device", firmware); +- set_loading(udev, loadpath, "-1"); +- rc = EXIT_FAILURE; +- goto exit; +- }; +- +- set_loading(udev, loadpath, "0"); +-exit: +- if (fwfile) +- fclose(fwfile); +- return rc; +-} +- +-const struct udev_builtin udev_builtin_firmware = { +- .name = "firmware", +- .cmd = builtin_firmware, +- .help = "kernel firmware loader", +- .run_once = true, +-}; +Index: systemd-210/src/udev/udevd.c +=================================================================== +--- systemd-210.orig/src/udev/udevd.c ++++ systemd-210/src/udev/udevd.c +@@ -100,9 +100,6 @@ struct event { + dev_t devnum; + int ifindex; + bool is_block; +-#ifdef HAVE_FIRMWARE +- bool nodelay; +-#endif + }; + + static inline struct event *node_to_event(struct udev_list_node *node) +@@ -474,10 +471,6 @@ static int event_queue_insert(struct ude + event->devnum = udev_device_get_devnum(dev); + event->is_block = streq("block", udev_device_get_subsystem(dev)); + event->ifindex = udev_device_get_ifindex(dev); +-#ifdef HAVE_FIRMWARE +- if (streq(udev_device_get_subsystem(dev), "firmware")) +- event->nodelay = true; +-#endif + + udev_queue_export_device_queued(udev_queue_export, dev); + log_debug("seq %llu queued, '%s' '%s'", udev_device_get_seqnum(dev), +@@ -557,12 +550,6 @@ static bool is_devpath_busy(struct event + return true; + } + +-#ifdef HAVE_FIRMWARE +- /* allow to bypass the dependency tracking */ +- if (event->nodelay) +- continue; +-#endif +- + /* parent device event found */ + if (event->devpath[common] == '/') { + event->delaying_seqnum = loop_event->seqnum; +Index: systemd-210/src/udev/udev.h +=================================================================== +--- systemd-210.orig/src/udev/udev.h ++++ systemd-210/src/udev/udev.h +@@ -141,9 +141,6 @@ enum udev_builtin_cmd { + UDEV_BUILTIN_BLKID, + #endif + UDEV_BUILTIN_BTRFS, +-#ifdef HAVE_FIRMWARE +- UDEV_BUILTIN_FIRMWARE, +-#endif + UDEV_BUILTIN_HWDB, + UDEV_BUILTIN_INPUT_ID, + UDEV_BUILTIN_KEYBOARD, +@@ -172,9 +169,6 @@ struct udev_builtin { + extern const struct udev_builtin udev_builtin_blkid; + #endif + extern const struct udev_builtin udev_builtin_btrfs; +-#ifdef HAVE_FIRMWARE +-extern const struct udev_builtin udev_builtin_firmware; +-#endif + extern const struct udev_builtin udev_builtin_hwdb; + extern const struct udev_builtin udev_builtin_input_id; + extern const struct udev_builtin udev_builtin_keyboard; +Index: systemd-210/TODO +=================================================================== +--- systemd-210.orig/TODO ++++ systemd-210/TODO +@@ -541,7 +541,6 @@ Features: + * ExecOnFailure=/usr/bin/foo + + * udev: +- - remove src/udev/udev-builtin-firmware.c (CONFIG_FW_LOADER_USER_HELPER=n) + - move to LGPL + - kill scsi_id + - add trigger --subsystem-match=usb/usb_device device + diff --git a/1079-udev-remove-userspace-firmware-loading-support.patch b/1079-udev-remove-userspace-firmware-loading-support.patch new file mode 100644 index 00000000..37a5e752 --- /dev/null +++ b/1079-udev-remove-userspace-firmware-loading-support.patch @@ -0,0 +1,349 @@ +From be2ea723b1d023b3d385d3b791ee4607cbfb20ca Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Sat, 30 Aug 2014 11:34:20 +0200 +Subject: [PATCH] udev: remove userspace firmware loading support + +--- + Makefile.am | 12 --- + README | 9 +-- + TODO | 1 - + configure.ac | 20 ----- + src/udev/udev-builtin-firmware.c | 154 --------------------------------------- + src/udev/udev-builtin.c | 3 - + src/udev/udev.h | 6 -- + src/udev/udevd.c | 13 ---- + +Index: systemd-210/configure.ac +=================================================================== +--- systemd-210.orig/configure.ac ++++ systemd-210/configure.ac +@@ -902,25 +902,6 @@ if test "x$have_myhostname" != "xno"; th + fi + + # ------------------------------------------------------------------------------ +-AC_ARG_WITH(firmware-path, +- AS_HELP_STRING([--with-firmware-path=DIR[[[:DIR[...]]]]], +- [Firmware search path (default="")]), +- [], [with_firmware_path=""]) +-OLD_IFS=$IFS +-IFS=: +-for i in $with_firmware_path; do +- if test "x${FIRMWARE_PATH}" = "x"; then +- FIRMWARE_PATH="\\\"${i}/\\\"" +- else +- FIRMWARE_PATH="${FIRMWARE_PATH}, \\\"${i}/\\\"" +- fi +-done +-IFS=$OLD_IFS +-AC_SUBST(FIRMWARE_PATH) +-AS_IF([test "x${FIRMWARE_PATH}" != "x"], [ AC_DEFINE(HAVE_FIRMWARE, 1, [Define if FIRMWARE is available]) ]) +-AM_CONDITIONAL(ENABLE_FIRMWARE, [test "x${FIRMWARE_PATH}" != "x"]) +- +-# ------------------------------------------------------------------------------ + AC_ARG_ENABLE([gudev], + AS_HELP_STRING([--disable-gudev], [disable Gobject libudev support @<:@default=enabled@:>@]), + [], [enable_gudev=yes]) +@@ -1137,7 +1118,6 @@ AC_MSG_RESULT([ + Build Python: ${PYTHON} + Installation Python: ${PYTHON_BINARY} + sphinx binary: ${SPHINX_BUILD} +- firmware path: ${FIRMWARE_PATH} + PAM modules dir: ${with_pamlibdir} + PAM configuration dir: ${with_pamconfdir} + D-Bus policy dir: ${with_dbuspolicydir} +Index: systemd-210/Makefile.am +=================================================================== +--- systemd-210.orig/Makefile.am ++++ systemd-210/Makefile.am +@@ -2677,18 +2677,6 @@ libudev_core_la_LIBADD = \ + $(BLKID_LIBS) \ + $(KMOD_LIBS) + +-libudev_core_la_CPPFLAGS = \ +- $(AM_CPPFLAGS) \ +- -DFIRMWARE_PATH="$(FIRMWARE_PATH)" +- +-if ENABLE_FIRMWARE +-libudev_core_la_SOURCES += \ +- src/udev/udev-builtin-firmware.c +- +-dist_udevrules_DATA += \ +- rules/50-firmware.rules +-endif +- + if HAVE_KMOD + libudev_core_la_SOURCES += \ + src/udev/udev-builtin-kmod.c +Index: systemd-210/README +=================================================================== +--- systemd-210.orig/README ++++ systemd-210/README +@@ -51,14 +51,14 @@ REQUIREMENTS: + + Linux kernel >= 3.8 for Smack support + +- Udev will fail to work with the legacy layout: ++ Udev will fail to work with the legacy sysfs layout: + CONFIG_SYSFS_DEPRECATED=n + + Legacy hotplug slows down the system and confuses udev: + CONFIG_UEVENT_HELPER_PATH="" + +- Userspace firmware loading is deprecated, will go away, and +- sometimes causes problems: ++ Userspace firmware loading is not supported and should ++ be disabled in the kernel + CONFIG_FW_LOADER_USER_HELPER=n + + Some udev rules and virtualization detection relies on it: +Index: systemd-210/src/udev/udev-builtin.c +=================================================================== +--- systemd-210.orig/src/udev/udev-builtin.c ++++ systemd-210/src/udev/udev-builtin.c +@@ -34,9 +34,6 @@ static const struct udev_builtin *builti + [UDEV_BUILTIN_BLKID] = &udev_builtin_blkid, + #endif + [UDEV_BUILTIN_BTRFS] = &udev_builtin_btrfs, +-#ifdef HAVE_FIRMWARE +- [UDEV_BUILTIN_FIRMWARE] = &udev_builtin_firmware, +-#endif + [UDEV_BUILTIN_HWDB] = &udev_builtin_hwdb, + [UDEV_BUILTIN_INPUT_ID] = &udev_builtin_input_id, + [UDEV_BUILTIN_KEYBOARD] = &udev_builtin_keyboard, +Index: systemd-210/src/udev/udev-builtin-firmware.c +=================================================================== +--- systemd-210.orig/src/udev/udev-builtin-firmware.c ++++ /dev/null +@@ -1,157 +0,0 @@ +-/* +- * firmware - Kernel firmware loader +- * +- * Copyright (C) 2009 Piter Punk +- * Copyright (C) 2009-2011 Kay Sievers +- * +- * This program is free software; you can redistribute it and/or +- * modify it under the terms of the GNU General Public License as +- * published by the Free Software Foundation; either version 2 of the +- * License, or (at your option) any later version. +- * +- * This program is distributed in the hope that it will be useful, but +- * WITHOUT ANY WARRANTY; without even the implied warranty of +- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +- * General Public License for more details:* +- */ +- +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +- +-#include "udev.h" +- +-static bool set_loading(struct udev *udev, char *loadpath, const char *state) +-{ +- FILE *ldfile; +- +- ldfile = fopen(loadpath, "we"); +- if (ldfile == NULL) { +- log_error("error: can not open '%s'", loadpath); +- return false; +- }; +- fprintf(ldfile, "%s\n", state); +- fclose(ldfile); +- return true; +-} +- +-static bool copy_firmware(struct udev *udev, const char *source, const char *target, size_t size) +-{ +- char *buf; +- FILE *fsource = NULL, *ftarget = NULL; +- bool ret = false; +- +- buf = malloc(size); +- if (buf == NULL) { +- log_error("No memory available to load firmware file"); +- return false; +- } +- +- log_debug("writing '%s' (%zi) to '%s'", source, size, target); +- +- fsource = fopen(source, "re"); +- if (fsource == NULL) +- goto exit; +- ftarget = fopen(target, "we"); +- if (ftarget == NULL) +- goto exit; +- if (fread(buf, size, 1, fsource) != 1) +- goto exit; +- if (fwrite(buf, size, 1, ftarget) == 1) +- ret = true; +-exit: +- if (ftarget != NULL) +- fclose(ftarget); +- if (fsource != NULL) +- fclose(fsource); +- free(buf); +- return ret; +-} +- +-static int builtin_firmware(struct udev_device *dev, int argc, char *argv[], bool test) +-{ +- struct udev *udev = udev_device_get_udev(dev); +- static const char *searchpath[] = { FIRMWARE_PATH }; +- char loadpath[UTIL_PATH_SIZE]; +- char datapath[UTIL_PATH_SIZE]; +- char fwpath[UTIL_PATH_SIZE]; +- const char *firmware; +- FILE *fwfile = NULL; +- struct utsname kernel; +- struct stat statbuf; +- unsigned int i; +- int rc = EXIT_SUCCESS; +- +- firmware = udev_device_get_property_value(dev, "FIRMWARE"); +- if (firmware == NULL) { +- log_error("firmware parameter missing"); +- rc = EXIT_FAILURE; +- goto exit; +- } +- +- /* lookup firmware file */ +- uname(&kernel); +- for (i = 0; i < ELEMENTSOF(searchpath); i++) { +- strscpyl(fwpath, sizeof(fwpath), searchpath[i], kernel.release, "/", firmware, NULL); +- fwfile = fopen(fwpath, "re"); +- if (fwfile != NULL) +- break; +- +- strscpyl(fwpath, sizeof(fwpath), searchpath[i], firmware, NULL); +- fwfile = fopen(fwpath, "re"); +- if (fwfile != NULL) +- break; +- } +- +- strscpyl(loadpath, sizeof(loadpath), udev_device_get_syspath(dev), "/loading", NULL); +- +- if (fwfile == NULL) { +- log_debug("did not find firmware file '%s'", firmware); +- rc = EXIT_FAILURE; +- /* +- * Do not cancel the request in the initrd, the real root might have +- * the firmware file and the 'coldplug' run in the real root will find +- * this pending request and fulfill or cancel it. +- * */ +- if (!in_initrd()) +- set_loading(udev, loadpath, "-1"); +- goto exit; +- } +- +- if (stat(fwpath, &statbuf) < 0 || statbuf.st_size == 0) { +- if (!in_initrd()) +- set_loading(udev, loadpath, "-1"); +- rc = EXIT_FAILURE; +- goto exit; +- } +- +- if (!set_loading(udev, loadpath, "1")) +- goto exit; +- +- strscpyl(datapath, sizeof(datapath), udev_device_get_syspath(dev), "/data", NULL); +- if (!copy_firmware(udev, fwpath, datapath, statbuf.st_size)) { +- log_error("error sending firmware '%s' to device", firmware); +- set_loading(udev, loadpath, "-1"); +- rc = EXIT_FAILURE; +- goto exit; +- }; +- +- set_loading(udev, loadpath, "0"); +-exit: +- if (fwfile) +- fclose(fwfile); +- return rc; +-} +- +-const struct udev_builtin udev_builtin_firmware = { +- .name = "firmware", +- .cmd = builtin_firmware, +- .help = "kernel firmware loader", +- .run_once = true, +-}; +Index: systemd-210/src/udev/udevd.c +=================================================================== +--- systemd-210.orig/src/udev/udevd.c ++++ systemd-210/src/udev/udevd.c +@@ -100,9 +100,6 @@ struct event { + dev_t devnum; + int ifindex; + bool is_block; +-#ifdef HAVE_FIRMWARE +- bool nodelay; +-#endif + }; + + static inline struct event *node_to_event(struct udev_list_node *node) +@@ -474,10 +471,6 @@ static int event_queue_insert(struct ude + event->devnum = udev_device_get_devnum(dev); + event->is_block = streq("block", udev_device_get_subsystem(dev)); + event->ifindex = udev_device_get_ifindex(dev); +-#ifdef HAVE_FIRMWARE +- if (streq(udev_device_get_subsystem(dev), "firmware")) +- event->nodelay = true; +-#endif + + log_debug("seq %llu queued, '%s' '%s'", udev_device_get_seqnum(dev), + udev_device_get_action(dev), udev_device_get_subsystem(dev)); +@@ -557,12 +550,6 @@ static bool is_devpath_busy(struct event + return true; + } + +-#ifdef HAVE_FIRMWARE +- /* allow to bypass the dependency tracking */ +- if (event->nodelay) +- continue; +-#endif +- + /* parent device event found */ + if (event->devpath[common] == '/') { + event->delaying_seqnum = loop_event->seqnum; +Index: systemd-210/src/udev/udev.h +=================================================================== +--- systemd-210.orig/src/udev/udev.h ++++ systemd-210/src/udev/udev.h +@@ -141,9 +141,6 @@ enum udev_builtin_cmd { + UDEV_BUILTIN_BLKID, + #endif + UDEV_BUILTIN_BTRFS, +-#ifdef HAVE_FIRMWARE +- UDEV_BUILTIN_FIRMWARE, +-#endif + UDEV_BUILTIN_HWDB, + UDEV_BUILTIN_INPUT_ID, + UDEV_BUILTIN_KEYBOARD, +@@ -172,9 +169,6 @@ struct udev_builtin { + extern const struct udev_builtin udev_builtin_blkid; + #endif + extern const struct udev_builtin udev_builtin_btrfs; +-#ifdef HAVE_FIRMWARE +-extern const struct udev_builtin udev_builtin_firmware; +-#endif + extern const struct udev_builtin udev_builtin_hwdb; + extern const struct udev_builtin udev_builtin_input_id; + extern const struct udev_builtin udev_builtin_keyboard; +Index: systemd-210/TODO +=================================================================== +--- systemd-210.orig/TODO ++++ systemd-210/TODO +@@ -541,7 +541,6 @@ Features: + * ExecOnFailure=/usr/bin/foo + + * udev: +- - remove src/udev/udev-builtin-firmware.c (CONFIG_FW_LOADER_USER_HELPER=n) + - move to LGPL + - kill scsi_id + - add trigger --subsystem-match=usb/usb_device device + diff --git a/1080-udevd-parse_argv-warn-if-argumens-are-invalid.patch b/1080-udevd-parse_argv-warn-if-argumens-are-invalid.patch new file mode 100644 index 00000000..a623b566 --- /dev/null +++ b/1080-udevd-parse_argv-warn-if-argumens-are-invalid.patch @@ -0,0 +1,73 @@ +Based on 6f5cf8a8b1de763383f7382821147e538b7dbd6d Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Thu, 18 Sep 2014 19:02:03 +0200 +Subject: [PATCH] udevd: parse_argv - warn if argumens are invalid + +Found by Coverity. Fixes CID #1238780. +--- + src/udev/udevd.c | 34 ++++++++++++++++++++++++++-------- + 1 file changed, 26 insertions(+), 8 deletions(-) + +--- src/udev/udevd.c ++++ src/udev/udevd.c 2014-09-19 10:36:25.602735652 +0000 +@@ -1002,11 +1002,20 @@ static void kernel_cmdline_options(struc + log_set_max_level(prio); + udev_set_log_priority(udev, prio); + } else if (startswith(opt, "udev.children-max=")) { +- children_max = strtoul(opt + 18, NULL, 0); ++ r = safe_atoi(opt + 18, &children_max); ++ if (r < 0) ++ log_warning("Invalid udev.children-max ignored: %s", opt + 18); + } else if (startswith(opt, "udev.exec-delay=")) { +- exec_delay = strtoul(opt + 16, NULL, 0); ++ r = safe_atoi(opt + 16, &exec_delay); ++ if (r < 0) ++ log_warning("Invalid udev.exec-delay ignored: %s", opt + 16); + } else if (startswith(opt, "udev.event-timeout=")) { +- event_timeout_usec = strtoul(opt + 16, NULL, 0) * USEC_PER_SEC; ++ r = safe_atou64(opt + 16, &event_timeout_usec); ++ if (r < 0) { ++ log_warning("Invalid udev.event-timeout ignored: %s", opt + 16); ++ break; ++ } ++ event_timeout_usec *= USEC_PER_SEC; + event_timeout_warn_usec = (event_timeout_usec / 3) ? : 1; + } + +@@ -1052,7 +1061,7 @@ int main(int argc, char *argv[]) { + label_init("/dev"); + + for (;;) { +- int option; ++ int option, r; + + option = getopt_long(argc, argv, "c:de:DtN:hV", options, NULL); + if (option == -1) +@@ -1063,14 +1072,23 @@ int main(int argc, char *argv[]) { + daemonize = true; + break; + case 'c': +- children_max = strtoul(optarg, NULL, 0); ++ r = safe_atoi(optarg, &children_max); ++ if (r < 0) ++ log_warning("Invalid --children-max ignored: %s", optarg); + break; + case 'e': +- exec_delay = strtoul(optarg, NULL, 0); ++ r = safe_atoi(optarg, &exec_delay); ++ if (r < 0) ++ log_warning("Invalid --exec-delay ignored: %s", optarg); + break; + case 't': +- event_timeout_usec = strtoul(optarg, NULL, 0) * USEC_PER_SEC; +- event_timeout_warn_usec = (event_timeout_usec / 3) ? : 1; ++ r = safe_atou64(optarg, &event_timeout_usec); ++ if (r < 0) ++ log_warning("Invalig --event-timeout ignored: %s", optarg); ++ else { ++ event_timeout_usec *= USEC_PER_SEC; ++ event_timeout_warn_usec = (event_timeout_usec / 3) ? : 1; ++ } + break; + case 'D': + debug = true; diff --git a/1081-udevd-check-return-of-various-functions.patch b/1081-udevd-check-return-of-various-functions.patch new file mode 100644 index 00000000..819e4499 --- /dev/null +++ b/1081-udevd-check-return-of-various-functions.patch @@ -0,0 +1,55 @@ +Based on d457ff8319b1e7c522c146f75e272f1226f4720c Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Thu, 18 Sep 2014 19:07:02 +0200 +Subject: [PATCH] udevd: check return of various functions + +One reported by Coverity. Fixes CID #996252. +--- + src/udev/udevd.c | 20 ++++++++++++++++---- + 1 file changed, 16 insertions(+), 4 deletions(-) + +--- src/udev/udevd.c ++++ src/udev/udevd.c 2014-09-19 11:33:21.566236309 +0000 +@@ -1044,7 +1044,7 @@ int main(int argc, char *argv[]) { + int fd_worker = -1; + struct epoll_event ep_ctrl, ep_inotify, ep_signal, ep_netlink, ep_worker; + struct udev_ctrl_connection *ctrl_conn = NULL; +- int rc = 1; ++ int rc = 1, r; + + udev = udev_new(); + if (udev == NULL) +@@ -1058,7 +1058,11 @@ int main(int argc, char *argv[]) { + log_set_max_level(udev_get_log_priority(udev)); + + log_debug("version %s", VERSION); +- label_init("/dev"); ++ r = label_init("/dev"); ++ if (r < 0) { ++ log_error("could not initialize labelling: %s", strerror(-r)); ++ goto exit; ++ } + + for (;;) { + int option, r; +@@ -1137,10 +1141,18 @@ int main(int argc, char *argv[]) { + } + + /* set umask before creating any file/directory */ +- chdir("/"); ++ r = chdir("/"); ++ if (r < 0) { ++ log_error("could not change dir to /: %m"); ++ goto exit; ++ } + umask(022); + +- mkdir("/run/udev", 0755); ++ r = mkdir("/run/udev", 0755); ++ if (r < 0) { ++ log_error("could not create /run/udev: %m"); ++ goto exit; ++ } + + dev_setup(NULL); + diff --git a/1082-udevadm-hwdb-check-return-value-of-fseeko.patch b/1082-udevadm-hwdb-check-return-value-of-fseeko.patch new file mode 100644 index 00000000..27e6dc45 --- /dev/null +++ b/1082-udevadm-hwdb-check-return-value-of-fseeko.patch @@ -0,0 +1,45 @@ +From f901aaadd68050bc575c1c15b84f8f31fd4d494d Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Thu, 18 Sep 2014 19:16:54 +0200 +Subject: [PATCH] udevadm: hwdb - check return value of fseeko() + +Fonud by Coverity. Fixes CID #996255. +--- + src/udev/udevadm-hwdb.c | 14 ++++++++++++-- + 1 file changed, 12 insertions(+), 2 deletions(-) + +diff --git src/udev/udevadm-hwdb.c src/udev/udevadm-hwdb.c +index 65cbf61..64273fb 100644 +--- src/udev/udevadm-hwdb.c ++++ src/udev/udevadm-hwdb.c +@@ -365,7 +365,12 @@ static int trie_store(struct trie *trie, const char *filename) { + fchmod(fileno(t.f), 0444); + + /* write nodes */ +- fseeko(t.f, sizeof(struct trie_header_f), SEEK_SET); ++ err = fseeko(t.f, sizeof(struct trie_header_f), SEEK_SET); ++ if (err < 0) { ++ fclose(t.f); ++ unlink_noerrno(filename_tmp); ++ return -errno; ++ } + root_off = trie_store_nodes(&t, trie->root); + h.nodes_root_off = htole64(root_off); + pos = ftello(t.f); +@@ -378,7 +383,12 @@ static int trie_store(struct trie *trie, const char *filename) { + /* write header */ + size = ftello(t.f); + h.file_size = htole64(size); +- fseeko(t.f, 0, SEEK_SET); ++ err = fseeko(t.f, 0, SEEK_SET); ++ if (err < 0) { ++ fclose(t.f); ++ unlink_noerrno(filename_tmp); ++ return -errno; ++ } + fwrite(&h, sizeof(struct trie_header_f), 1, t.f); + err = ferror(t.f); + if (err) +-- +1.7.9.2 + diff --git a/1083-udev-node-warn-if-chmod-chown-fails.patch b/1083-udev-node-warn-if-chmod-chown-fails.patch new file mode 100644 index 00000000..0b78f626 --- /dev/null +++ b/1083-udev-node-warn-if-chmod-chown-fails.patch @@ -0,0 +1,34 @@ +From 543afdc63c02a5af3cf6bd2a264162f23474346a Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Thu, 18 Sep 2014 19:22:09 +0200 +Subject: [PATCH] udev: node - warn if chmod/chown fails + +No functional change, just log the warning. + +Fonud by Coverity. Fixes CID #1237544. +--- + src/udev/udev-node.c | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git src/udev/udev-node.c src/udev/udev-node.c +index c164603..8ef7889 100644 +--- src/udev/udev-node.c ++++ src/udev/udev-node.c +@@ -281,8 +281,12 @@ static int node_permissions_apply(struct udev_device *dev, bool apply, + + if ((stats.st_mode & 0777) != (mode & 0777) || stats.st_uid != uid || stats.st_gid != gid) { + log_debug("set permissions %s, %#o, uid=%u, gid=%u", devnode, mode, uid, gid); +- chmod(devnode, mode); +- chown(devnode, uid, gid); ++ err = chmod(devnode, mode); ++ if (err < 0) ++ log_warning("setting mode of %s to %#o failed: %m", devnode, mode); ++ err = chown(devnode, uid, gid); ++ if (err < 0) ++ log_warning("setting owner of %s to uid=%u, gid=%u failed: %m", devnode, uid, gid); + } else { + log_debug("preserve permissions %s, %#o, uid=%u, gid=%u", devnode, mode, uid, gid); + } +-- +1.7.9.2 + diff --git a/1084-udev-ctrl-log-if-setting-SO_PASSCRED-fails.patch b/1084-udev-ctrl-log-if-setting-SO_PASSCRED-fails.patch new file mode 100644 index 00000000..1e8f4fcf --- /dev/null +++ b/1084-udev-ctrl-log-if-setting-SO_PASSCRED-fails.patch @@ -0,0 +1,45 @@ +Based on 4bbdff757ed4e718a3348b93439a03055cc5e3bc Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Thu, 18 Sep 2014 19:26:11 +0200 +Subject: [PATCH] udev: ctrl - log if setting SO_PASSCRED fails + +No functional change. + +Found by Coverity. Fixes CID #1237533. +--- + src/udev/udev-ctrl.c | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +--- src/udev/udev-ctrl.c ++++ src/udev/udev-ctrl.c 2014-09-19 10:45:55.494236229 +0000 +@@ -74,6 +74,7 @@ struct udev_ctrl *udev_ctrl_new_from_fd( + { + struct udev_ctrl *uctrl; + const int on = 1; ++ int r; + + uctrl = new0(struct udev_ctrl, 1); + if (uctrl == NULL) +@@ -92,7 +93,9 @@ struct udev_ctrl *udev_ctrl_new_from_fd( + uctrl->bound = true; + uctrl->sock = fd; + } +- setsockopt(uctrl->sock, SOL_SOCKET, SO_PASSCRED, &on, sizeof(on)); ++ r = setsockopt(uctrl->sock, SOL_SOCKET, SO_PASSCRED, &on, sizeof(on)); ++ if (r < 0) ++ log_warning("could not set SO_PASSCRED: %m"); + + uctrl->saddr.sun_family = AF_LOCAL; + strscpy(uctrl->saddr.sun_path, sizeof(uctrl->saddr.sun_path), "/run/udev/control"); +@@ -209,7 +212,10 @@ struct udev_ctrl_connection *udev_ctrl_g + } + + /* enable receiving of the sender credentials in the messages */ +- setsockopt(conn->sock, SOL_SOCKET, SO_PASSCRED, &on, sizeof(on)); ++ r = setsockopt(conn->sock, SOL_SOCKET, SO_PASSCRED, &on, sizeof(on)); ++ if (r < 0) ++ log_warning("colud not set SO_PASSCRED: %m"); ++ + udev_ctrl_ref(uctrl); + return conn; + err: diff --git a/1085-udev-fix-typos.patch b/1085-udev-fix-typos.patch new file mode 100644 index 00000000..f6476200 --- /dev/null +++ b/1085-udev-fix-typos.patch @@ -0,0 +1,33 @@ +Based on 65fea570f03df51dadc06a3e0d261a71fe62aa01 Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Thu, 18 Sep 2014 20:25:33 +0200 +Subject: [PATCH] udev: fix typos + +Spotted by Andreas Henriksson. +--- + src/udev/udev-ctrl.c | 2 +- + src/udev/udevd.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +--- src/udev/udev-ctrl.c ++++ src/udev/udev-ctrl.c 2014-09-19 00:00:00.000000000 +0000 +@@ -214,7 +214,7 @@ struct udev_ctrl_connection *udev_ctrl_g + /* enable receiving of the sender credentials in the messages */ + r = setsockopt(conn->sock, SOL_SOCKET, SO_PASSCRED, &on, sizeof(on)); + if (r < 0) +- log_warning("colud not set SO_PASSCRED: %m"); ++ log_warning("could not set SO_PASSCRED: %m"); + + udev_ctrl_ref(uctrl); + return conn; +--- src/udev/udevd.c ++++ src/udev/udevd.c 2014-09-19 10:47:36.306235720 +0000 +@@ -1088,7 +1088,7 @@ int main(int argc, char *argv[]) { + case 't': + r = safe_atou64(optarg, &event_timeout_usec); + if (r < 0) +- log_warning("Invalig --event-timeout ignored: %s", optarg); ++ log_warning("Invalid --event-timeout ignored: %s", optarg); + else { + event_timeout_usec *= USEC_PER_SEC; + event_timeout_warn_usec = (event_timeout_usec / 3) ? : 1; diff --git a/1086-udevd-don-t-fail-if-run-udev-exists.patch b/1086-udevd-don-t-fail-if-run-udev-exists.patch new file mode 100644 index 00000000..7f574d6a --- /dev/null +++ b/1086-udevd-don-t-fail-if-run-udev-exists.patch @@ -0,0 +1,25 @@ +From 25773e7fc59b4ce53d67da4e18bfe4d13ab0b14b Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Thu, 18 Sep 2014 21:57:49 +0200 +Subject: [PATCH] udevd: don't fail if /run/udev exists + +--- + src/udev/udevd.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/udev/udevd.c src/udev/udevd.c +index 37db81c..29ccb51 100644 +--- src/udev/udevd.c ++++ src/udev/udevd.c +@@ -1155,7 +1155,7 @@ int main(int argc, char *argv[]) { + umask(022); + + r = mkdir("/run/udev", 0755); +- if (r < 0) { ++ if (r < 0 && errno != EEXIST) { + log_error("could not create /run/udev: %m"); + goto exit; + } +-- +1.7.9.2 + diff --git a/1087-infinit-timeout-for-kmod-loaded-modules.patch b/1087-infinit-timeout-for-kmod-loaded-modules.patch new file mode 100644 index 00000000..4208c21f --- /dev/null +++ b/1087-infinit-timeout-for-kmod-loaded-modules.patch @@ -0,0 +1,135 @@ +--- + src/udev/udev-event.c | 42 ++++++++++++++++++++++++++++++++++++++++++ + src/udev/udev.h | 1 + + src/udev/udevd.c | 23 +++++++++++++++++++++-- + 3 files changed, 64 insertions(+), 2 deletions(-) + +--- src/udev/udev-event.c ++++ src/udev/udev-event.c 2014-09-24 14:32:53.115639820 +0000 +@@ -959,6 +959,46 @@ void udev_event_execute_rules(struct ude + } + } + ++#ifdef HAVE_KMOD ++static inline void udev_check_and_set_kmod(enum udev_builtin_cmd builtin_cmd, struct udev_event *event) { ++ char filename[UTIL_PATH_SIZE]; ++ switch (builtin_cmd) { ++ case UDEV_BUILTIN_KMOD: ++ snprintf(filename, sizeof(filename), "/run/udev/kmod/%u", (unsigned)getpid()); ++ touch(filename); ++ default: ++ break; ++ } ++} ++ ++static inline void udev_check_and_unset_kmod(enum udev_builtin_cmd builtin_cmd, struct udev_event *event) { ++ char filename[UTIL_PATH_SIZE]; ++ switch (builtin_cmd) { ++ case UDEV_BUILTIN_KMOD: ++ snprintf(filename, sizeof(filename), "/run/udev/kmod/%u", (unsigned)getpid()); ++ unlink(filename); ++ default: ++ break; ++ } ++} ++ ++bool udev_check_for_kmod(pid_t pid) { ++ char filename[UTIL_PATH_SIZE]; ++ struct stat st; ++ snprintf(filename, sizeof(filename), "/run/udev/kmod/%u", (unsigned)pid); ++ if (stat(filename, &st) == 0) { ++ return true; ++ } ++ return false; ++} ++#else ++# define udev_set_kmod (a,b) ++# define udev_unset_kmod(a,b) ++bool udev_check_for_kmod(pid_t pid) { ++ return false; ++} ++#endif ++ + void udev_event_execute_run(struct udev_event *event, usec_t timeout_usec, usec_t timeout_warn_usec, const sigset_t *sigmask) { + struct udev_list_entry *list_entry; + +@@ -970,7 +1010,9 @@ void udev_event_execute_run(struct udev_ + char command[UTIL_PATH_SIZE]; + + udev_event_apply_format(event, cmd, command, sizeof(command)); ++ udev_check_and_set_kmod(builtin_cmd, event); + udev_builtin_run(event->dev, builtin_cmd, command, false); ++ udev_check_and_unset_kmod(builtin_cmd, event); + } else { + char program[UTIL_PATH_SIZE]; + char **envp; +--- src/udev/udevd.c ++++ src/udev/udevd.c 2014-09-24 15:02:30.895592379 +0000 +@@ -76,6 +76,7 @@ static int children_max; + static int exec_delay; + static usec_t event_timeout_usec = 180 * USEC_PER_SEC; + static usec_t event_timeout_warn_usec = 180 * USEC_PER_SEC / 3; ++static bool event_killkmod = false; + static sigset_t sigmask_orig; + static UDEV_LIST(event_list); + static UDEV_LIST(worker_list); +@@ -1017,6 +1018,12 @@ static void kernel_cmdline_options(struc + } + event_timeout_usec *= USEC_PER_SEC; + event_timeout_warn_usec = (event_timeout_usec / 3) ? : 1; ++ } else if (startswith(opt, "udev.killkmod=")) { ++ r = parse_boolean(opt + 14); ++ if (r < 0) ++ log_warning("Invalid udev.killkmod Ignoring: %s", opt + 14); ++ else ++ event_killkmod = r; + } + + free(s); +@@ -1065,7 +1072,7 @@ int main(int argc, char *argv[]) { + } + + for (;;) { +- int option, r; ++ int option; + + option = getopt_long(argc, argv, "c:de:DtN:hV", options, NULL); + if (option == -1) +@@ -1356,6 +1363,12 @@ int main(int argc, char *argv[]) { + udev_list_node_init(&event_list); + udev_list_node_init(&worker_list); + ++ r = mkdir_p("/run/udev/kmod", 0755); ++ if (r < 0 && errno != EEXIST) { ++ log_error("could not create /run/udev/kmod: %m"); ++ goto exit; ++ } ++ + for (;;) { + static usec_t last_usec; + struct epoll_event ev[8]; +@@ -1440,7 +1453,13 @@ int main(int argc, char *argv[]) { + + if (worker->state != WORKER_RUNNING) + continue; +- ++#ifdef HAVE_KMOD ++ if (udev_check_for_kmod(worker->pid)) { ++ log_debug("worker [%u] %s is using kmod", worker->pid, worker->event->devpath); ++ if (!event_killkmod) ++ continue; ++ } ++#endif + ts = now(CLOCK_MONOTONIC); + + if ((ts - worker->event_start_usec) > event_timeout_warn_usec) { +--- src/udev/udev.h ++++ src/udev/udev.h 2014-09-24 14:33:33.824008084 +0000 +@@ -88,6 +88,7 @@ int udev_event_spawn(struct udev_event * + char *result, size_t ressize); + void udev_event_execute_rules(struct udev_event *event, usec_t timeout_usec, usec_t timeout_warn_usec, + struct udev_rules *rules, const sigset_t *sigset); ++bool udev_check_for_kmod(pid_t pid); + void udev_event_execute_run(struct udev_event *event, usec_t timeout_usec, usec_t timeout_warn_usec, const sigset_t *sigset); + int udev_build_argv(struct udev *udev, char *cmd, int *argc, char *argv[]); + diff --git a/1089-fix-cgroup-device-controller.patch b/1089-fix-cgroup-device-controller.patch new file mode 100644 index 00000000..cd68533f --- /dev/null +++ b/1089-fix-cgroup-device-controller.patch @@ -0,0 +1,74 @@ +From eb0f0863f5af48865fb4569e2076d5f9e2313995 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 10 Mar 2014 21:36:01 +0100 +Subject: nspawn: don't try mknod() of /dev/console with the correct + major/minor + +We overmount /dev/console with an external pty anyway, hence there's no +point in using the real major/minor when we create the node to +overmount. Instead, use the one of /dev/null now. + +This fixes a race against the cgroup device controller setup we are +using. In case /dev/console was create before the cgroup policy was +applied all was good, but if created in the opposite order the mknod() +would fail, since creating /dev/console is not allowed by it. Creating +/dev/null instances is however permitted, and hence use it. + +diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c +index d8d0dae..bef866a 100644 +--- a/src/nspawn/nspawn.c ++++ b/src/nspawn/nspawn.c +@@ -879,23 +879,19 @@ static int setup_ptmx(const char *dest) { + } + + static int setup_dev_console(const char *dest, const char *console) { ++ _cleanup_umask_ mode_t u; ++ const char *to; + struct stat st; +- _cleanup_free_ char *to = NULL; + int r; +- _cleanup_umask_ mode_t u; + + assert(dest); + assert(console); + + u = umask(0000); + +- if (stat(console, &st) < 0) { +- log_error("Failed to stat %s: %m", console); ++ if (stat("/dev/null", &st) < 0) { ++ log_error("Failed to stat /dev/null: %m"); + return -errno; +- +- } else if (!S_ISCHR(st.st_mode)) { +- log_error("/dev/console is not a char device"); +- return -EIO; + } + + r = chmod_and_chown(console, 0600, 0, 0); +@@ -904,16 +900,15 @@ static int setup_dev_console(const char *dest, const char *console) { + return r; + } + +- if (asprintf(&to, "%s/dev/console", dest) < 0) +- return log_oom(); +- + /* We need to bind mount the right tty to /dev/console since + * ptys can only exist on pts file systems. To have something +- * to bind mount things on we create a device node first, that +- * has the right major/minor (note that the major minor +- * doesn't actually matter here, since we mount it over +- * anyway). */ ++ * to bind mount things on we create a device node first, and ++ * use /dev/null for that since we the cgroups device policy ++ * allows us to create that freely, while we cannot create ++ * /dev/console. (Note that the major minor doesn't actually ++ * matter here, since we mount it over anyway). */ + ++ to = strappenda(dest, "/dev/console"); + if (mknod(to, (st.st_mode & ~07777) | 0600, st.st_rdev) < 0) { + log_error("mknod() for /dev/console failed: %m"); + return -errno; +-- +cgit v0.10.2 + diff --git a/1090-udev-path_id-set-supported_parent-for-well-known-SCS.patch b/1090-udev-path_id-set-supported_parent-for-well-known-SCS.patch new file mode 100644 index 00000000..3a3ad550 --- /dev/null +++ b/1090-udev-path_id-set-supported_parent-for-well-known-SCS.patch @@ -0,0 +1,58 @@ +Based on cc821d02a37c8c76aaf15bae2d33fee1bdc4b2e0 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Tue, 28 Oct 2014 16:50:24 +0100 +Subject: [PATCH] udev: path_id - set supported_parent for well-known SCSI + setups + +--- + src/udev/udev-builtin-path_id.c | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +--- src/udev/udev-builtin-path_id.c ++++ src/udev/udev-builtin-path_id.c 2014-11-03 14:12:48.129956655 +0000 +@@ -379,7 +379,7 @@ out: + return hostdev; + } + +-static struct udev_device *handle_scsi(struct udev_device *parent, char **path) ++static struct udev_device *handle_scsi(struct udev_device *parent, char **path, bool *supported_parent) + { + const char *devtype; + const char *name; +@@ -394,6 +394,7 @@ static struct udev_device *handle_scsi(s + if (id != NULL) { + parent = skip_subsystem(parent, "scsi"); + path_prepend(path, "ieee1394-0x%s", id); ++ *supported_parent = true; + goto out; + } + +@@ -402,16 +403,19 @@ static struct udev_device *handle_scsi(s + + if (strstr(name, "/rport-") != NULL) { + parent = handle_scsi_fibre_channel(parent, path); ++ *supported_parent = true; + goto out; + } + + if (strstr(name, "/end_device-") != NULL) { + parent = handle_scsi_sas(parent, path); ++ *supported_parent = true; + goto out; + } + + if (strstr(name, "/session") != NULL) { + parent = handle_scsi_iscsi(parent, path); ++ *supported_parent = true; + goto out; + } + +@@ -545,7 +549,7 @@ static int builtin_path_id(struct udev_d + } else if (streq(subsys, "scsi_tape")) { + handle_scsi_tape(parent, &path); + } else if (streq(subsys, "scsi")) { +- parent = handle_scsi(parent, &path); ++ parent = handle_scsi(parent, &path, &supported_parent); + supported_transport = true; + } else if (streq(subsys, "cciss")) { + parent = handle_cciss(parent, &path); diff --git a/1091-udev-path_id-update-comments.patch b/1091-udev-path_id-update-comments.patch new file mode 100644 index 00000000..a695f0db --- /dev/null +++ b/1091-udev-path_id-update-comments.patch @@ -0,0 +1,42 @@ +From a42cdff19f2d34f12ceca0f40707421a8aaa2c2f Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Thu, 30 Oct 2014 01:18:34 +0100 +Subject: [PATCH] udev: path_id - update comments + +--- + src/udev/udev-builtin-path_id.c | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git src/udev/udev-builtin-path_id.c src/udev/udev-builtin-path_id.c +index 0d247f6..df996cb 100644 +--- src/udev/udev-builtin-path_id.c ++++ src/udev/udev-builtin-path_id.c +@@ -548,9 +548,9 @@ static int builtin_path_id(struct udev_device *dev, int argc, char *argv[], bool + } + + /* +- * Do return devices with have an unknown type of parent device, they +- * might produce conflicting IDs below multiple independent parent +- * devices. ++ * Do not return devices with an unknown parent device type. They ++ * might produce conflicting IDs if the parent does not provide a ++ * unique and predictable name. + */ + if (!supported_parent) { + free(path); +@@ -558,9 +558,9 @@ static int builtin_path_id(struct udev_device *dev, int argc, char *argv[], bool + } + + /* +- * Do not return a have-only a single-parent block devices, some +- * have entire hidden buses behind it, and not create predictable +- * IDs that way. ++ * Do not return block devices without a well-known transport. Some ++ * devices do not expose their buses and do not provide a unique ++ * and predictable name that way. + */ + if (streq(udev_device_get_subsystem(dev), "block") && !supported_transport) { + free(path); +-- +1.7.9.2 + diff --git a/1092-libudev-do-not-accept-invalid-log-levels.patch b/1092-libudev-do-not-accept-invalid-log-levels.patch new file mode 100644 index 00000000..10b78859 --- /dev/null +++ b/1092-libudev-do-not-accept-invalid-log-levels.patch @@ -0,0 +1,67 @@ +Based on ee7122c0ec6aa11f02e9e8d94254b353f12d2c14 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sat, 1 Nov 2014 12:06:41 -0400 +Subject: [PATCH] libudev: do not accept invalid log levels + +Invalid log levels lead to a assert failure later on. + +https://bugs.freedesktop.org/show_bug.cgi?id=85657 +--- + src/libudev/libudev-util.c | 10 +++++++--- + src/libudev/libudev.c | 19 ++++++++++++++++--- + 2 files changed, 23 insertions(+), 6 deletions(-) + +--- src/libudev/libudev-util.c ++++ src/libudev/libudev-util.c 2014-11-10 11:33:26.269519209 +0000 +@@ -255,9 +255,13 @@ int util_log_priority(const char *priori + char *endptr; + int prio; + +- prio = strtol(priority, &endptr, 10); +- if (endptr[0] == '\0' || isspace(endptr[0])) +- return prio; ++ prio = strtoul(priority, &endptr, 10); ++ if (endptr[0] == '\0' || isspace(endptr[0])) { ++ if (prio >= 0 && prio <= 7) ++ return prio; ++ else ++ return -ERANGE; ++ } + if (startswith(priority, "err")) + return LOG_ERR; + if (startswith(priority, "info")) +--- src/libudev/libudev.c ++++ src/libudev/libudev.c +@@ -193,7 +193,13 @@ _public_ struct udev *udev_new(void) + } + + if (streq(key, "udev_log")) { +- udev_set_log_priority(udev, util_log_priority(val)); ++ int prio; ++ ++ prio = util_log_priority(val); ++ if (prio < 0) ++ udev_err(udev, "/etc/udev/udev.conf:%u: invalid logging level '%s', ignoring.\n", line_nr, val); ++ else ++ udev_set_log_priority(udev, prio); + continue; + } + } +@@ -201,8 +207,15 @@ _public_ struct udev *udev_new(void) + + /* environment overrides config */ + env = secure_getenv("UDEV_LOG"); +- if (env != NULL) +- udev_set_log_priority(udev, util_log_priority(env)); ++ if (env != NULL) { ++ int prio; ++ ++ prio = util_log_priority(env); ++ if (prio < 0) ++ udev_err(udev, "$UDEV_LOG specifies invalid logging level '%s', ignoring.\n", env); ++ else ++ udev_set_log_priority(udev, prio); ++ } + + return udev; + } diff --git a/1093-udev-Fix-parsing-of-udev.event-timeout-kernel-parame.patch b/1093-udev-Fix-parsing-of-udev.event-timeout-kernel-parame.patch new file mode 100644 index 00000000..5f3bb576 --- /dev/null +++ b/1093-udev-Fix-parsing-of-udev.event-timeout-kernel-parame.patch @@ -0,0 +1,23 @@ +Based on f671774f52838d35d78e62ddcb781b5b65b3373f Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Tue, 4 Nov 2014 23:45:15 +0000 +Subject: [PATCH] udev: Fix parsing of udev.event-timeout kernel parameter. + +--- + src/udev/udevd.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- src/udev/udevd.c ++++ src/udev/udevd.c 2014-11-10 12:28:20.385559165 +0000 +@@ -1011,9 +1011,9 @@ static void kernel_cmdline_options(struc + if (r < 0) + log_warning("Invalid udev.exec-delay ignored: %s", opt + 16); + } else if (startswith(opt, "udev.event-timeout=")) { +- r = safe_atou64(opt + 16, &event_timeout_usec); ++ r = safe_atou64(opt + 19, &event_timeout_usec); + if (r < 0) { +- log_warning("Invalid udev.event-timeout ignored: %s", opt + 16); ++ log_warning("Invalid udev.event-timeout ignored: %s", opt + 19); + break; + } + event_timeout_usec *= USEC_PER_SEC; diff --git a/1094-udev-avoid-magic-constants-in-kernel-cmdline-parsers.patch b/1094-udev-avoid-magic-constants-in-kernel-cmdline-parsers.patch new file mode 100644 index 00000000..3cd42e5c --- /dev/null +++ b/1094-udev-avoid-magic-constants-in-kernel-cmdline-parsers.patch @@ -0,0 +1,58 @@ +Based on cfe2061add5479710f6597899d632e64c54e62ef Mon Sep 17 00:00:00 2001 +From: David Herrmann +Date: Wed, 5 Nov 2014 12:56:49 +0100 +Subject: [PATCH] udev: avoid magic constants in kernel-cmdline parsers + +Lets recognize the fact that startswith() returns a pointer to the tail on +success. Use it instead of hard-coding string-lengths as magic constants. +--- + src/udev/udevd.c | 24 ++++++++++++------------ + 1 file changed, 12 insertions(+), 12 deletions(-) + +--- src/udev/udevd.c ++++ src/udev/udevd.c 2014-11-10 12:31:15.745519116 +0000 +@@ -984,7 +984,7 @@ static void kernel_cmdline_options(struc + return; + + FOREACH_WORD_QUOTED(w, l, line, state) { +- char *s, *opt; ++ char *s, *opt, *value; + + s = strndup(w, l); + if (!s) +@@ -996,24 +996,24 @@ static void kernel_cmdline_options(struc + else + opt = s; + +- if (startswith(opt, "udev.log-priority=")) { ++ if ((value = startswith(opt, "udev.log-priority="))) { + int prio; + +- prio = util_log_priority(opt + 18); ++ prio = util_log_priority(value); + log_set_max_level(prio); + udev_set_log_priority(udev, prio); +- } else if (startswith(opt, "udev.children-max=")) { +- r = safe_atoi(opt + 18, &children_max); ++ } else if ((value = startswith(opt, "udev.children-max="))) { ++ r = safe_atoi(value, &children_max); + if (r < 0) +- log_warning("Invalid udev.children-max ignored: %s", opt + 18); +- } else if (startswith(opt, "udev.exec-delay=")) { +- r = safe_atoi(opt + 16, &exec_delay); ++ log_warning("Invalid udev.children-max ignored: %s", value); ++ } else if ((value = startswith(opt, "udev.exec-delay="))) { ++ r = safe_atoi(value, &exec_delay); + if (r < 0) +- log_warning("Invalid udev.exec-delay ignored: %s", opt + 16); +- } else if (startswith(opt, "udev.event-timeout=")) { +- r = safe_atou64(opt + 19, &event_timeout_usec); ++ log_warning("Invalid udev.exec-delay ignored: %s", value); ++ } else if ((value = startswith(opt, "udev.event-timeout="))) { ++ r = safe_atou64(value, &event_timeout_usec); + if (r < 0) { +- log_warning("Invalid udev.event-timeout ignored: %s", opt + 19); ++ log_warning("Invalid udev.event-timeout ignored: %s", value); + break; + } + event_timeout_usec *= USEC_PER_SEC; diff --git a/1095-set-ssd-disk-to-use-deadline-scheduler.patch b/1095-set-ssd-disk-to-use-deadline-scheduler.patch index d9d128f2..39c4a74a 100644 --- a/1095-set-ssd-disk-to-use-deadline-scheduler.patch +++ b/1095-set-ssd-disk-to-use-deadline-scheduler.patch @@ -1,24 +1,19 @@ ---- - Makefile.am | 1 + - rules/60-ssd-scheduler.rules | 11 +++++++++++ - 2 files changed, 12 insertions(+) - -Index: systemd/Makefile.am +Index: systemd-210/Makefile.am =================================================================== ---- systemd.orig/Makefile.am -+++ systemd/Makefile.am -@@ -3576,6 +3576,7 @@ dist_udevrules_DATA += \ +--- systemd-210.orig/Makefile.am ++++ systemd-210/Makefile.am +@@ -2546,6 +2546,7 @@ dist_udevrules_DATA += \ rules/60-persistent-input.rules \ rules/60-persistent-alsa.rules \ rules/60-persistent-storage.rules \ + rules/60-ssd-scheduler.rules \ rules/64-btrfs.rules \ - rules/70-mouse.rules \ - rules/70-touchpad.rules \ -Index: systemd/rules/60-ssd-scheduler.rules + rules/75-net-description.rules \ + rules/75-tty-description.rules \ +Index: systemd-210/rules/60-ssd-scheduler.rules =================================================================== --- /dev/null -+++ systemd/rules/60-ssd-scheduler.rules ++++ systemd-210/rules/60-ssd-scheduler.rules @@ -0,0 +1,11 @@ +# do not edit this file, it will be overwritten on update + diff --git a/1096-new-udev-root-symlink-generator.patch b/1096-new-udev-root-symlink-generator.patch index 7f09f46e..49c1b2c9 100644 --- a/1096-new-udev-root-symlink-generator.patch +++ b/1096-new-udev-root-symlink-generator.patch @@ -1,16 +1,9 @@ ---- - Makefile.am | 19 +++++ - src/udev/rootsymlink_generator/rootsymlink_generator.c | 57 +++++++++++++++++ - units/systemd-udev-root-symlink.service | 10 ++ - units/systemd-udev-root-symlink.service.in | 10 ++ - 4 files changed, 96 insertions(+) - -Index: systemd/Makefile.am +Index: systemd-210/Makefile.am =================================================================== ---- systemd.orig/Makefile.am -+++ systemd/Makefile.am -@@ -3862,6 +3862,25 @@ EXTRA_DIST += \ - +--- systemd-210.orig/Makefile.am ++++ systemd-210/Makefile.am +@@ -2791,6 +2791,25 @@ EXTRA_DIST += \ + test/rule-syntax-check.py # ------------------------------------------------------------------------------ +rootsymlink_generator_SOURCES = \ @@ -35,11 +28,11 @@ Index: systemd/Makefile.am ata_id_SOURCES = \ src/udev/ata_id/ata_id.c -Index: systemd/src/udev/rootsymlink_generator/rootsymlink_generator.c +Index: systemd-210/src/udev/rootsymlink_generator/rootsymlink_generator.c =================================================================== --- /dev/null -+++ systemd/src/udev/rootsymlink_generator/rootsymlink_generator.c -@@ -0,0 +1,57 @@ ++++ systemd-210/src/udev/rootsymlink_generator/rootsymlink_generator.c +@@ -0,0 +1,65 @@ +/* + * Copyright (C) 2014-2015 Robert Milasan + * @@ -71,51 +64,44 @@ Index: systemd/src/udev/rootsymlink_generator/rootsymlink_generator.c +#define _PATH_ "/run/udev/rules.d" +#define _FILE_ "10-root-symlink.rules" + -+int main(void) ++int main() +{ -+ char filename[BUFFER_SIZE], buf[BUFFER_SIZE]; + struct stat statbuf; -+ int fd; + -+ if (stat(_ROOTDEV_, &statbuf) < 0) ++ if (stat(_ROOTDEV_, &statbuf) != 0) + return 1; -+ if (major(statbuf.st_dev) <= 0) -+ return 0; -+ if (mkdir(_PATH_, 0755) < 0 && errno != EEXIST) -+ return errno; -+ snprintf(filename, BUFFER_SIZE, "%s/%s", _PATH_, _FILE_); -+ fd = open(filename, O_CREAT | O_WRONLY | O_TRUNC, 0644); -+ if (fd < 0) -+ return errno; -+ snprintf(buf, BUFFER_SIZE, -+ "ACTION==\"add|change\", SUBSYSTEM==\"block\", " -+ "ENV{MAJOR}==\"%d\", ENV{MINOR}==\"%d\", SYMLINK+=\"root\"\n", -+ major(statbuf.st_dev), minor(statbuf.st_dev)); -+ if (write(fd, buf, strlen(buf)) < 0) -+ return errno; -+ if (close(fd) < 0) -+ return errno; ++ ++ if (major(statbuf.st_dev) > 0) { ++ int fd = -1; ++ char filename[BUFFER_SIZE]; ++ ++ if (mkdir(_PATH_, 0755) != 0 && errno != EEXIST) ++ return errno; ++ ++ snprintf(filename, BUFFER_SIZE, "%s/%s", _PATH_, _FILE_); ++ ++ if ((fd = open(filename, O_CREAT|O_WRONLY|O_TRUNC, 0644)) == -1) ++ return errno; ++ else { ++ char buf[BUFFER_SIZE]; ++ ++ snprintf(buf, BUFFER_SIZE, "ACTION==\"add|change\", SUBSYSTEM==\"block\", ENV{MAJOR}==\"%d\", ENV{MINOR}==\"%d\", SYMLINK+=\"root\"\n", ++ major(statbuf.st_dev), minor(statbuf.st_dev)); ++ ++ if (write(fd, buf, strlen(buf)) == -1) ++ return errno; ++ ++ if (close(fd) == -1) ++ return errno; ++ } ++ } ++ + return 0; +} -Index: systemd/units/systemd-udev-root-symlink.service +Index: systemd-210/units/systemd-udev-root-symlink.service.in =================================================================== --- /dev/null -+++ systemd/units/systemd-udev-root-symlink.service -@@ -0,0 +1,10 @@ -+[Unit] -+Description=Rule generator for /dev/root symlink -+Before=systemd-udevd.service -+DefaultDependencies=no -+ConditionPathIsReadWrite=/run/udev -+ -+[Service] -+Type=oneshot -+RemainAfterExit=yes -+ExecStart=/usr/lib/udev/rootsymlink-generator -Index: systemd/units/systemd-udev-root-symlink.service.in -=================================================================== ---- /dev/null -+++ systemd/units/systemd-udev-root-symlink.service.in ++++ systemd-210/units/systemd-udev-root-symlink.service.in @@ -0,0 +1,10 @@ +[Unit] +Description=Rule generator for /dev/root symlink @@ -127,3 +113,18 @@ Index: systemd/units/systemd-udev-root-symlink.service.in +Type=oneshot +RemainAfterExit=yes +ExecStart=@udevlibexec@/rootsymlink-generator +Index: systemd-210/units/systemd-udev-root-symlink.service +=================================================================== +--- /dev/null ++++ systemd-210/units/systemd-udev-root-symlink.service +@@ -0,0 +1,10 @@ ++[Unit] ++Description=Rule generator for /dev/root symlink ++Before=systemd-udevd.service ++DefaultDependencies=no ++ConditionPathIsReadWrite=/run/udev ++ ++[Service] ++Type=oneshot ++RemainAfterExit=yes ++ExecStart=/usr/lib/udev/rootsymlink-generator diff --git a/1097-udevd-increase-maximum-number-of-children.patch b/1097-udevd-increase-maximum-number-of-children.patch index 486be9b2..50bbc56f 100644 --- a/1097-udevd-increase-maximum-number-of-children.patch +++ b/1097-udevd-increase-maximum-number-of-children.patch @@ -1,26 +1,22 @@ ---- - src/udev/udevd.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -Index: systemd-218/src/udev/udevd.c +Index: systemd-210/src/udev/udevd.c =================================================================== ---- systemd-218.orig/src/udev/udevd.c -+++ systemd-218/src/udev/udevd.c -@@ -446,7 +446,7 @@ static void event_run(struct event *even +--- systemd-210.orig/src/udev/udevd.c ++++ systemd-210/src/udev/udevd.c +@@ -454,7 +454,7 @@ static void event_run(struct event *even - if (children >= arg_children_max) { - if (arg_children_max > 1) + if (children >= children_max) { + if (children_max > 1) - log_debug("maximum number (%i) of children reached", children); + log_error("maximum number (%i) of children reached", children); return; } -@@ -1265,7 +1265,7 @@ int main(int argc, char *argv[]) { - arg_children_max = 8; +@@ -1277,7 +1277,7 @@ int main(int argc, char *argv[]) { + children_max = 8; if (sched_getaffinity(0, sizeof (cpu_set), &cpu_set) == 0) { -- arg_children_max += CPU_COUNT(&cpu_set) * 2; -+ arg_children_max += CPU_COUNT(&cpu_set) * 64; +- children_max += CPU_COUNT(&cpu_set) * 2; ++ children_max += CPU_COUNT(&cpu_set) * 64; } } - log_debug("set children_max to %u", arg_children_max); + log_debug("set children_max to %u", children_max); diff --git a/1098-udev-link_setup-respect-kernel-name-assign-policy.patch b/1098-udev-link_setup-respect-kernel-name-assign-policy.patch new file mode 100644 index 00000000..6772f650 --- /dev/null +++ b/1098-udev-link_setup-respect-kernel-name-assign-policy.patch @@ -0,0 +1,154 @@ +Based on 04b67d49254d956d31bcfe80340fb9df7ed332d3 Mon Sep 17 00:00:00 2001 +From: Tom Gundersen +Date: Tue, 15 Jul 2014 17:57:43 +0200 +Subject: [PATCH] udev: link_setup - respect kernel name assign policy + +Newer kernels export meta-information about the origin of an ifname. Respect this +from the ifname rename logic. We do not rename any interfaces that was originally +named by userspace, nor once which have already been renamed from userspace. + +Moreover, we optionally do not (the default) rename interfaces which the kernel +claims to have named in a predictable way. +--- + man/udev.xml | 13 ++++++++++- + network/99-default.link | 2 - + src/shared/missing.h | 21 +++++++++++++++++ + src/udev/net/link-config.c | 53 +++++++++++++++++++++++++++++++++++++-------- + src/udev/net/link-config.h | 1 + 5 files changed, 79 insertions(+), 11 deletions(-) + +Index: man/udev.xml +=================================================================== +--- man/udev.xml.orig ++++ man/udev.xml +@@ -914,10 +914,12 @@ + successful one is used. The name is not set directly, but + is exported to udev as the property ID_NET_NAME, + which is, by default, used by a udev rule to set +- NAME. The available policies are: ++ NAME. If the name has already ++ been set by userspace, no renaming is performed. ++ The available policies are: + + +- ++ + database + + The name is set based on entries in the Hardware +Index: src/shared/missing.h +=================================================================== +--- src/shared/missing.h.orig ++++ src/shared/missing.h +@@ -362,3 +362,24 @@ static inline int setns(int fd, int nsty + return syscall(__NR_setns, fd, nstype); + } + #endif ++ ++#ifndef NET_ADDR_RANDOM ++# define NET_ADDR_RANDOM 1 ++#endif ++ ++#ifndef NET_NAME_ENUM ++# define NET_NAME_ENUM 1 ++#endif ++ ++#ifndef NET_NAME_PREDICTABLE ++# define NET_NAME_PREDICTABLE 2 ++#endif ++ ++#ifndef NET_NAME_USER ++# define NET_NAME_USER 3 ++#endif ++ ++#ifndef NET_NAME_RENAMED ++# define NET_NAME_RENAMED 4 ++#endif ++ +Index: src/udev/net/link-config.c +=================================================================== +--- src/udev/net/link-config.c.orig ++++ src/udev/net/link-config.c +@@ -20,10 +20,11 @@ + ***/ + + #include +-#include ++#include + + #include "sd-id128.h" + ++#include "missing.h" + #include "link-config.h" + #include "ethtool-util.h" + +@@ -297,23 +298,30 @@ static bool mac_is_random(struct udev_de + return false; + + /* check for NET_ADDR_RANDOM */ +- return type == 1; ++ return type == NET_ADDR_RANDOM; + } + +-static bool mac_is_permanent(struct udev_device *device) { ++static bool should_rename(struct udev_device *device) { + const char *s; + unsigned type; + int r; + +- s = udev_device_get_sysattr_value(device, "addr_assign_type"); ++ s = udev_device_get_sysattr_value(device, "name_assign_type"); + if (!s) +- return true; /* if we don't know, assume it is permanent */ ++ return true; /* if we don't know, assume we should rename */ + r = safe_atou(s, &type); + if (r < 0) + return true; + +- /* check for NET_ADDR_PERM */ +- return type == 0; ++ switch (type) { ++ case NET_NAME_USER: ++ case NET_NAME_RENAMED: ++ return false; /* these were already named by userspace, do not touch again */ ++ case NET_NAME_PREDICTABLE: ++ case NET_NAME_ENUM: ++ default: ++ return true; /* the name is known to be bad, or of an unknown type */ ++ } + } + + #define HASH_KEY SD_ID128_MAKE(d3,1e,48,fa,90,fe,4b,4c,9d,af,d5,d7,a1,b1,2e,8a) +@@ -429,16 +437,16 @@ int link_config_apply(link_config_ctx *c + } + } + +- if (new_name) +- *name = new_name; /* a name was set by a policy */ +- else if (config->name) +- *name = config->name; /* a name was set manually in the config */ +- else +- *name = NULL; ++ if (should_rename(device)) { ++ if (!new_name) ++ /* if not set by policy, fall back manually set name */ ++ new_name = config->name; ++ } else ++ new_name = NULL; + + switch (config->mac_policy) { + case MACPOLICY_PERSISTENT: +- if (!mac_is_permanent(device)) { ++ if (mac_is_random(device)) { + r = get_mac(device, false, &generated_mac); + if (r == -ENOENT) + break; +@@ -467,6 +475,8 @@ int link_config_apply(link_config_ctx *c + return r; + } + ++ *name = new_name; ++ + return 0; + } + diff --git a/513-nspawn-veth.patch b/513-nspawn-veth.patch new file mode 100644 index 00000000..b24ecf6c --- /dev/null +++ b/513-nspawn-veth.patch @@ -0,0 +1,39 @@ +diff -Naur systemd-210/src/libsystemd/sd-rtnl/rtnl-message.c systemd-210.mod/src/libsystemd/sd-rtnl/rtnl-message.c +--- systemd-210/src/libsystemd/sd-rtnl/rtnl-message.c 2014-11-19 13:10:23.998310815 +0100 ++++ systemd-210.mod/src/libsystemd/sd-rtnl/rtnl-message.c 2014-12-08 12:03:18.059734333 +0100 +@@ -722,6 +722,7 @@ + + int sd_rtnl_message_open_container(sd_rtnl_message *m, unsigned short type) { + uint16_t rtm_type; ++ int r; + + assert_return(m, -EINVAL); + assert_return(!m->sealed, -EPERM); +@@ -729,15 +730,21 @@ + sd_rtnl_message_get_type(m, &rtm_type); + + if (rtnl_message_type_is_link(rtm_type)) { +- + if ((type == IFLA_LINKINFO && m->n_containers == 0) || + (type == IFLA_INFO_DATA && m->n_containers == 1 && +- GET_CONTAINER(m, 0)->rta_type == IFLA_LINKINFO)) +- return add_rtattr(m, type, NULL, 0); +- else if (type == VETH_INFO_PEER && m->n_containers == 2 && ++ GET_CONTAINER(m, 0)->rta_type == IFLA_LINKINFO)) { ++ r = add_rtattr(m, type, NULL, 0); ++ if ( r > 0) ++ m->container_offsets[m->n_containers ++] = r; ++ return r; ++ } else if (type == VETH_INFO_PEER && m->n_containers == 2 && + GET_CONTAINER(m, 1)->rta_type == IFLA_INFO_DATA && +- GET_CONTAINER(m, 0)->rta_type == IFLA_LINKINFO) +- return add_rtattr(m, type, NULL, sizeof(struct ifinfomsg)); ++ GET_CONTAINER(m, 0)->rta_type == IFLA_LINKINFO) { ++ r = add_rtattr(m, type, NULL, sizeof(struct ifinfomsg)); ++ if ( r > 0) ++ m->container_offsets[m->n_containers ++] = r; ++ return r; ++ } + } + + return -ENOTSUP; diff --git a/Fix-run-lock-directories-permissions-to-follow-openSUSE-po.patch b/Fix-run-lock-directories-permissions-to-follow-openSUSE-po.patch index 95c19107..8e0a00a7 100644 --- a/Fix-run-lock-directories-permissions-to-follow-openSUSE-po.patch +++ b/Fix-run-lock-directories-permissions-to-follow-openSUSE-po.patch @@ -5,21 +5,18 @@ Subject: Fix /run/lock directories permissions to follow openSUSE policy disable /var/lock/{subsys,lockdev} and change default permissions on /var/lock (bnc#733523). --- - tmpfiles.d/legacy.conf | 7 ++++--- + tmpfiles.d/legacy.conf | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) -Index: systemd-218/tmpfiles.d/legacy.conf -=================================================================== ---- systemd-218.orig/tmpfiles.d/legacy.conf -+++ systemd-218/tmpfiles.d/legacy.conf -@@ -10,13 +10,14 @@ +--- systemd-206_git201308300826.orig/tmpfiles.d/legacy.conf ++++ systemd-206_git201308300826/tmpfiles.d/legacy.conf +@@ -10,12 +10,13 @@ # These files are considered legacy and are unnecessary on legacy-free # systems. -d /run/lock 0755 root root - -+# changed for openSUSE: only /run/lock should be available. ++# changed for openSUSE : only /run/lock should be available +d /run/lock 0775 root lock - - L /var/lock - - - - ../run/lock # /run/lock/subsys is used for serializing SysV service execution, and # hence without use on SysV-less systems. @@ -29,7 +26,7 @@ Index: systemd-218/tmpfiles.d/legacy.conf # /run/lock/lockdev is used to serialize access to tty devices via # LCK..xxx style lock files, For more information see: -@@ -24,7 +25,7 @@ d /run/lock/subsys 0755 root root - +@@ -23,7 +24,7 @@ d /run/lock/subsys 0755 root root - # On modern systems a BSD file lock is a better choice if # serialization is needed on those devices. diff --git a/Forward-suspend-hibernate-calls-to-pm-utils.patch b/Forward-suspend-hibernate-calls-to-pm-utils.patch index 96de1ed2..0c06b4dc 100644 --- a/Forward-suspend-hibernate-calls-to-pm-utils.patch +++ b/Forward-suspend-hibernate-calls-to-pm-utils.patch @@ -4,23 +4,21 @@ Subject: Forward suspend / hibernate calls to pm-utils forward suspend/hibernation calls to pm-utils, if installed (bnc#790157) --- - src/sleep/sleep.c | 27 ++++++++++++++++++++++----- - 1 file changed, 22 insertions(+), 5 deletions(-) + src/sleep/sleep.c | 26 ++++++++++++++++++++++---- + 1 file changed, 22 insertions(+), 4 deletions(-) -Index: systemd/src/sleep/sleep.c -=================================================================== ---- systemd.orig/src/sleep/sleep.c -+++ systemd/src/sleep/sleep.c +--- systemd-206.orig/src/sleep/sleep.c ++++ systemd-206/src/sleep/sleep.c @@ -24,6 +24,7 @@ #include #include #include +#include - #include "sd-id128.h" - #include "sd-messages.h" -@@ -36,6 +37,8 @@ - #include "def.h" + #include "systemd/sd-id128.h" + #include "systemd/sd-messages.h" +@@ -35,6 +36,8 @@ + #include "sleep-config.h" static char* arg_verb = NULL; +static bool delegate_to_pmutils = false; @@ -28,37 +26,36 @@ Index: systemd/src/sleep/sleep.c static int write_mode(char **modes) { int r = 0; -@@ -53,10 +56,6 @@ static int write_mode(char **modes) { - if (r == 0) +@@ -50,9 +53,6 @@ static int write_mode(char **modes) { r = k; } -- + - if (r < 0) -- log_error_errno(r, "Failed to write mode to /sys/power/disk: %m"); -- +- log_error("Failed to write mode to /sys/power/disk: %s", +- strerror(-r)); + return r; } - -@@ -97,6 +96,8 @@ static int execute(char **modes, char ** - int r; +@@ -90,6 +90,8 @@ static int execute(char **modes, char ** _cleanup_fclose_ FILE *f = NULL; + const char* note = strappenda("SLEEP=", arg_verb); + if (!delegate_to_pmutils) { + /* This file is opened first, so that if we hit an error, * we can abort before modifying any state. */ f = fopen("/sys/power/state", "we"); -@@ -107,6 +108,7 @@ static int execute(char **modes, char ** +@@ -102,6 +104,7 @@ static int execute(char **modes, char ** r = write_mode(modes); if (r < 0) return r; + } - execute_directories(dirs, DEFAULT_TIMEOUT_USEC, arguments); - -@@ -115,8 +117,10 @@ static int execute(char **modes, char ** - LOG_MESSAGE("Suspending system..."), - "SLEEP=%s", arg_verb, + arguments[0] = NULL; + arguments[1] = (char*) "pre"; +@@ -114,8 +117,10 @@ static int execute(char **modes, char ** + "MESSAGE=Suspending system...", + note, NULL); - + if (!delegate_to_pmutils) @@ -68,7 +65,7 @@ Index: systemd/src/sleep/sleep.c if (r < 0) return r; -@@ -156,6 +160,7 @@ static int parse_argv(int argc, char *ar +@@ -158,6 +163,7 @@ static int parse_argv(int argc, char *ar }; int c; @@ -76,7 +73,7 @@ Index: systemd/src/sleep/sleep.c assert(argc >= 0); assert(argv); -@@ -193,6 +198,18 @@ static int parse_argv(int argc, char *ar +@@ -196,6 +202,18 @@ static int parse_argv(int argc, char *ar return -EINVAL; } diff --git a/Revert-service-drop-support-for-SysV-scripts-for-the-early.patch b/Revert-service-drop-support-for-SysV-scripts-for-the-early.patch new file mode 100644 index 00000000..41d51bfa --- /dev/null +++ b/Revert-service-drop-support-for-SysV-scripts-for-the-early.patch @@ -0,0 +1,140 @@ +From: Frederic Crozat +Date: Fri, 12 Apr 2013 16:56:26 +0200 +Subject: Revert "service: drop support for SysV scripts for the early boot" + +This reverts commit 3cdebc217c42c8529086f2965319b6a48eaaeabe. + +Conflicts: + src/core/service.c +--- + src/core/service.c | 51 ++++++++++++++++++++++++++++++++++++++++++++++----- + 1 file changed, 46 insertions(+), 5 deletions(-) + +Index: systemd-208/src/core/service.c +=================================================================== +--- systemd-208.orig/src/core/service.c ++++ systemd-208/src/core/service.c +@@ -51,7 +51,8 @@ + + typedef enum RunlevelType { + RUNLEVEL_UP, +- RUNLEVEL_DOWN ++ RUNLEVEL_DOWN, ++ RUNLEVEL_SYSINIT + } RunlevelType; + + static const struct { +@@ -66,6 +67,16 @@ static const struct { + { "rc4.d", SPECIAL_RUNLEVEL4_TARGET, RUNLEVEL_UP }, + { "rc5.d", SPECIAL_RUNLEVEL5_TARGET, RUNLEVEL_UP }, + ++#ifdef HAVE_SYSV_COMPAT ++ /* SUSE style boot.d */ ++ { "boot.d", SPECIAL_SYSINIT_TARGET, RUNLEVEL_SYSINIT }, ++#endif ++ ++#if defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU) || defined(TARGET_ANGSTROM) ++ /* Debian style rcS.d */ ++ { "rcS.d", SPECIAL_SYSINIT_TARGET, RUNLEVEL_SYSINIT }, ++#endif ++ + /* Standard SysV runlevels for shutdown */ + { "rc0.d", SPECIAL_POWEROFF_TARGET, RUNLEVEL_DOWN }, + { "rc6.d", SPECIAL_REBOOT_TARGET, RUNLEVEL_DOWN } +@@ -74,10 +85,12 @@ static const struct { + directories in this order, and we want to make sure that + sysv_start_priority is known when we first load the + unit. And that value we only know from S links. Hence +- UP must be read before DOWN */ ++ UP/SYSINIT must be read before DOWN */ + }; + + #define RUNLEVELS_UP "12345" ++/* #define RUNLEVELS_DOWN "06" */ ++#define RUNLEVELS_BOOT "bBsS" + #endif + + static const UnitActiveState state_translation_table[_SERVICE_STATE_MAX] = { +@@ -340,6 +353,9 @@ static char *sysv_translate_name(const c + if (endswith(name, ".sh")) + /* Drop .sh suffix */ + strcpy(stpcpy(r, name) - 3, ".service"); ++ if (startswith(name, "boot.")) ++ /* Drop SuSE-style boot. prefix */ ++ strcpy(stpcpy(r, name + 5), ".service"); + else + /* Normal init script name */ + strcpy(stpcpy(r, name), ".service"); +@@ -942,6 +958,13 @@ static int service_load_sysv_path(Servic + + if ((r = sysv_exec_commands(s, supports_reload)) < 0) + goto finish; ++ if (s->sysv_runlevels && ++ chars_intersect(RUNLEVELS_BOOT, s->sysv_runlevels) && ++ chars_intersect(RUNLEVELS_UP, s->sysv_runlevels)) { ++ /* Service has both boot and "up" runlevels ++ configured. Kill the "up" ones. */ ++ delete_chars(s->sysv_runlevels, RUNLEVELS_UP); ++ } + + if (s->sysv_runlevels && !chars_intersect(RUNLEVELS_UP, s->sysv_runlevels)) { + /* If there a runlevels configured for this service +@@ -1023,6 +1046,9 @@ static int service_load_sysv_name(Servic + if (endswith(name, ".sh.service")) + return -ENOENT; + ++ if (startswith(name, "boot.")) ++ return -ENOENT; ++ + STRV_FOREACH(p, UNIT(s)->manager->lookup_paths.sysvinit_path) { + char *path; + int r; +@@ -1043,6 +1069,18 @@ static int service_load_sysv_name(Servic + } + free(path); + ++ if (r >= 0 && UNIT(s)->load_state == UNIT_STUB) { ++ /* Try SUSE style boot.* init scripts */ ++ ++ path = strjoin(*p, "/boot.", name, NULL); ++ if (!path) ++ return -ENOMEM; ++ ++ /* Drop .service suffix */ ++ path[strlen(path)-8] = 0; ++ r = service_load_sysv_path(s, path); ++ free(path); ++ } + if (r < 0) + return r; + +@@ -3574,7 +3612,7 @@ static int service_enumerate(Manager *m) + + if (de->d_name[0] == 'S') { + +- if (rcnd_table[i].type == RUNLEVEL_UP) { ++ if (rcnd_table[i].type == RUNLEVEL_UP || rcnd_table[i].type == RUNLEVEL_SYSINIT) { + SERVICE(service)->sysv_start_priority_from_rcnd = + MAX(a*10 + b, SERVICE(service)->sysv_start_priority_from_rcnd); + +@@ -3591,7 +3629,8 @@ static int service_enumerate(Manager *m) + goto finish; + + } else if (de->d_name[0] == 'K' && +- (rcnd_table[i].type == RUNLEVEL_DOWN)) { ++ (rcnd_table[i].type == RUNLEVEL_DOWN || ++ rcnd_table[i].type == RUNLEVEL_SYSINIT)) { + + r = set_ensure_allocated(&shutdown_services, + trivial_hash_func, trivial_compare_func); +@@ -3631,7 +3670,9 @@ static int service_enumerate(Manager *m) + * runlevels we assume the stop jobs will be implicitly added + * by the core logic. Also, we don't really distinguish here + * between the runlevels 0 and 6 and just add them to the +- * special shutdown target. */ ++ * special shutdown target. On SUSE the boot.d/ runlevel is ++ * also used for shutdown, so we add links for that too to the ++ * shutdown target.*/ + SET_FOREACH(service, shutdown_services, j) { + service = unit_follow_merge(service); + diff --git a/avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch b/avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch new file mode 100644 index 00000000..04afafb9 --- /dev/null +++ b/avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch @@ -0,0 +1,24 @@ +From: Ludwig Nussel +Date: Mon, 26 Nov 2012 09:49:42 +0100 +Subject: avoid assertion if invalid address familily is passed to + gethostbyaddr_r (bnc#791101) + +--- + src/nss-myhostname/nss-myhostname.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +--- systemd-206_git201308300826.orig/src/nss-myhostname/nss-myhostname.c ++++ systemd-206_git201308300826/src/nss-myhostname/nss-myhostname.c +@@ -442,6 +442,12 @@ enum nss_status _nss_myhostname_gethostb + uint32_t local_address_ipv4 = LOCALADDRESS_IPV4; + const char *canonical = NULL, *additional = NULL; + ++ if (af != AF_INET && af != AF_INET6) { ++ *errnop = EAFNOSUPPORT; ++ *h_errnop = NO_DATA; ++ return NSS_STATUS_UNAVAIL; ++ } ++ + if (len != PROTO_ADDRESS_SIZE(af)) { + *errnop = EINVAL; + *h_errnop = NO_RECOVERY; diff --git a/avoid-leaking-socket-descriptors.patch b/avoid-leaking-socket-descriptors.patch new file mode 100644 index 00000000..d65d1196 --- /dev/null +++ b/avoid-leaking-socket-descriptors.patch @@ -0,0 +1,339 @@ +Based on 249968612f16a71df909d6e73785c18a9ff36a65 +with src/core/dbus.c as well and corrected systemctl +error messages for killing a unit. + +--- + src/analyze/analyze.c | 2 +- + src/bus-proxyd/bus-proxyd.c | 4 +--- + src/cgroups-agent/cgroups-agent.c | 4 +--- + src/core/dbus.c | 2 +- + src/fsck/fsck.c | 2 +- + src/hostname/hostnamectl.c | 2 +- + src/hostname/hostnamed.c | 4 ++-- + src/libsystemd/sd-bus/bus-util.h | 9 +++++++++ + src/libsystemd/sd-bus/busctl.c | 2 +- + src/locale/localectl.c | 2 +- + src/locale/localed.c | 4 ++-- + src/login/inhibit.c | 2 +- + src/login/loginctl.c | 2 +- + src/login/pam-module.c | 4 ++-- + src/machine/machinectl.c | 4 ++-- + src/nspawn/nspawn.c | 4 ++-- + src/run/run.c | 2 +- + src/systemctl/systemctl.c | 2 +- + src/timedate/timedatectl.c | 2 +- + src/timedate/timedated.c | 4 ++-- + 20 files changed, 34 insertions(+), 29 deletions(-) + +--- src/analyze/analyze.c ++++ src/analyze/analyze.c 2014-10-21 11:13:56.113045992 +0000 +@@ -1264,7 +1264,7 @@ static int parse_argv(int argc, char *ar + } + + int main(int argc, char *argv[]) { +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + setlocale(LC_ALL, ""); +--- src/bus-proxyd/bus-proxyd.c ++++ src/bus-proxyd/bus-proxyd.c 2014-10-21 11:16:16.303837968 +0000 +@@ -427,7 +427,7 @@ static int patch_sender(sd_bus *a, sd_bu + + int main(int argc, char *argv[]) { + +- _cleanup_bus_unref_ sd_bus *a = NULL, *b = NULL; ++ _cleanup_bus_close_unref_ sd_bus *a = NULL, *b = NULL; + sd_id128_t server_id; + int r, in_fd, out_fd; + bool got_hello = false; +@@ -777,8 +777,6 @@ int main(int argc, char *argv[]) { + r = 0; + + finish: +- sd_bus_flush(a); +- sd_bus_flush(b); + + return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS; + } +--- src/cgroups-agent/cgroups-agent.c ++++ src/cgroups-agent/cgroups-agent.c 2014-10-21 11:17:37.400197469 +0000 +@@ -26,7 +26,7 @@ + #include "bus-util.h" + + int main(int argc, char *argv[]) { +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + if (argc != 2) { +@@ -62,7 +62,5 @@ int main(int argc, char *argv[]) { + return EXIT_FAILURE; + } + +- sd_bus_flush(bus); +- + return EXIT_SUCCESS; + } +--- src/core/dbus.c ++++ src/core/dbus.c 2014-10-17 09:52:47.000000000 +0000 +@@ -639,7 +639,7 @@ static int bus_setup_disconnected_match( + } + + static int bus_on_connection(sd_event_source *s, int fd, uint32_t revents, void *userdata) { +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + _cleanup_close_ int nfd = -1; + Manager *m = userdata; + sd_id128_t id; +--- src/fsck/fsck.c ++++ src/fsck/fsck.c 2014-10-21 11:18:06.003838037 +0000 +@@ -45,7 +45,7 @@ static bool arg_show_progress = false; + + static void start_target(const char *target) { + _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL; +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + assert(target); +--- src/hostname/hostnamectl.c ++++ src/hostname/hostnamectl.c 2014-10-21 11:18:19.915858156 +0000 +@@ -468,7 +468,7 @@ static int hostnamectl_main(sd_bus *bus, + } + + int main(int argc, char *argv[]) { +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + setlocale(LC_ALL, ""); +--- src/hostname/hostnamed.c ++++ src/hostname/hostnamed.c 2014-10-21 11:24:07.737447673 +0000 +@@ -566,7 +566,7 @@ static const sd_bus_vtable hostname_vtab + }; + + static int connect_bus(Context *c, sd_event *event, sd_bus **_bus) { +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + assert(c); +@@ -607,7 +607,7 @@ int main(int argc, char *argv[]) { + Context context = {}; + + _cleanup_event_unref_ sd_event *event = NULL; +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + log_set_target(LOG_TARGET_AUTO); +--- src/libsystemd/sd-bus/bus-util.h ++++ src/libsystemd/sd-bus/bus-util.h 2014-10-17 09:51:34.000000000 +0000 +@@ -137,11 +137,20 @@ typedef struct UnitInfo { + + int bus_parse_unit_info(sd_bus_message *message, UnitInfo *u); + ++static inline void sd_bus_close_unrefp(sd_bus **bus) { ++ if (*bus) { ++ sd_bus_flush(*bus); ++ sd_bus_close(*bus); ++ sd_bus_unref(*bus); ++ } ++} ++ + DEFINE_TRIVIAL_CLEANUP_FUNC(sd_bus*, sd_bus_unref); + DEFINE_TRIVIAL_CLEANUP_FUNC(sd_bus_message*, sd_bus_message_unref); + DEFINE_TRIVIAL_CLEANUP_FUNC(sd_bus_creds*, sd_bus_creds_unref); + + #define _cleanup_bus_unref_ _cleanup_(sd_bus_unrefp) ++#define _cleanup_bus_close_unref_ _cleanup_(sd_bus_close_unrefp) + #define _cleanup_bus_message_unref_ _cleanup_(sd_bus_message_unrefp) + #define _cleanup_bus_creds_unref_ _cleanup_(sd_bus_creds_unrefp) + #define _cleanup_bus_error_free_ _cleanup_(sd_bus_error_free) +--- src/libsystemd/sd-bus/busctl.c ++++ src/libsystemd/sd-bus/busctl.c 2014-10-21 11:19:01.472337887 +0000 +@@ -484,7 +484,7 @@ static int busctl_main(sd_bus *bus, int + } + + int main(int argc, char *argv[]) { +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + log_parse_environment(); +--- src/locale/localectl.c ++++ src/locale/localectl.c 2014-10-21 11:19:13.811947994 +0000 +@@ -796,7 +796,7 @@ static int localectl_main(sd_bus *bus, i + } + + int main(int argc, char*argv[]) { +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + setlocale(LC_ALL, ""); +--- src/locale/localed.c ++++ src/locale/localed.c 2014-10-21 11:19:28.415837424 +0000 +@@ -1076,7 +1076,7 @@ static const sd_bus_vtable locale_vtable + }; + + static int connect_bus(Context *c, sd_event *event, sd_bus **_bus) { +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + assert(c); +@@ -1116,7 +1116,7 @@ static int connect_bus(Context *c, sd_ev + int main(int argc, char *argv[]) { + Context context = {}; + _cleanup_event_unref_ sd_event *event = NULL; +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + log_set_target(LOG_TARGET_AUTO); +--- src/login/inhibit.c ++++ src/login/inhibit.c 2014-10-21 11:19:44.470844885 +0000 +@@ -221,7 +221,7 @@ static int parse_argv(int argc, char *ar + + int main(int argc, char *argv[]) { + _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL; +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + log_parse_environment(); +--- src/login/loginctl.c ++++ src/login/loginctl.c 2014-10-21 11:20:16.695837857 +0000 +@@ -1298,7 +1298,7 @@ static int loginctl_main(sd_bus *bus, in + } + + int main(int argc, char *argv[]) { +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + setlocale(LC_ALL, ""); +--- src/login/pam-module.c ++++ src/login/pam-module.c 2014-10-21 10:48:20.000000000 +0000 +@@ -213,7 +213,7 @@ _public_ PAM_EXTERN int pam_sm_open_sess + *seat = NULL, + *type = NULL, *class = NULL, + *class_pam = NULL, *type_pam = NULL, *cvtnr = NULL, *desktop = NULL; +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int session_fd = -1, existing, r; + bool debug = false, remote; + struct passwd *pw; +@@ -517,7 +517,7 @@ _public_ PAM_EXTERN int pam_sm_close_ses + int argc, const char **argv) { + + _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL; +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + const void *existing = NULL; + const char *id; + int r; +--- src/machine/machinectl.c ++++ src/machine/machinectl.c 2014-10-21 11:20:45.747838104 +0000 +@@ -550,7 +550,7 @@ static int openpt_in_namespace(pid_t pid + static int login_machine(sd_bus *bus, char **args, unsigned n) { + _cleanup_bus_message_unref_ sd_bus_message *reply = NULL, *reply2 = NULL, *reply3 = NULL; + _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL; +- _cleanup_bus_unref_ sd_bus *container_bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *container_bus = NULL; + _cleanup_close_ int master = -1; + _cleanup_free_ char *getty = NULL; + const char *path, *pty, *p; +@@ -879,7 +879,7 @@ static int machinectl_main(sd_bus *bus, + } + + int main(int argc, char*argv[]) { +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + setlocale(LC_ALL, ""); +--- src/nspawn/nspawn.c ++++ src/nspawn/nspawn.c 2014-10-21 11:21:05.561523449 +0000 +@@ -1163,7 +1163,7 @@ static int drop_capabilities(void) { + + static int register_machine(pid_t pid) { + _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL; +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + if (!arg_register) +@@ -1285,7 +1285,7 @@ static int register_machine(pid_t pid) { + static int terminate_machine(pid_t pid) { + _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL; + _cleanup_bus_message_unref_ sd_bus_message *reply = NULL; +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + const char *path; + int r; + +--- src/run/run.c ++++ src/run/run.c 2014-10-21 11:22:35.163838021 +0000 +@@ -462,7 +462,7 @@ static int start_transient_scope( + + int main(int argc, char* argv[]) { + _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL; +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + _cleanup_free_ char *description = NULL, *command = NULL; + int r; + +--- src/systemctl/systemctl.c ++++ src/systemctl/systemctl.c 2014-10-22 09:36:33.399838318 +0000 +@@ -2601,7 +2601,7 @@ static int kill_unit(sd_bus *bus, char * + "ssi", *names, arg_kill_who, arg_signal); + if (q < 0) { + log_error("Failed to kill unit %s: %s", +- *names, bus_error_message(&error, r)); ++ *names, bus_error_message(&error, q)); + if (r == 0) + r = q; + } +@@ -6436,7 +6436,7 @@ static int runlevel_main(void) { + } + + int main(int argc, char*argv[]) { +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + setlocale(LC_ALL, ""); +--- src/timedate/timedatectl.c ++++ src/timedate/timedatectl.c 2014-10-21 11:23:06.107837988 +0000 +@@ -593,7 +593,7 @@ static int timedatectl_main(sd_bus *bus, + } + + int main(int argc, char *argv[]) { +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + setlocale(LC_ALL, ""); +--- src/timedate/timedated.c ++++ src/timedate/timedated.c 2014-10-21 11:23:26.047838675 +0000 +@@ -779,7 +779,7 @@ static const sd_bus_vtable timedate_vtab + }; + + static int connect_bus(Context *c, sd_event *event, sd_bus **_bus) { +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + assert(c); +@@ -825,7 +825,7 @@ int main(int argc, char *argv[]) { + }; + + _cleanup_event_unref_ sd_event *event = NULL; +- _cleanup_bus_unref_ sd_bus *bus = NULL; ++ _cleanup_bus_close_unref_ sd_bus *bus = NULL; + int r; + + log_set_target(LOG_TARGET_AUTO); diff --git a/boot.udev b/boot.udev new file mode 100644 index 00000000..4fa0bd63 --- /dev/null +++ b/boot.udev @@ -0,0 +1,74 @@ +#!/bin/sh +# +### BEGIN INIT INFO +# Provides: boot.udev +# Required-Start: +# Required-Stop: +# Should-Start: +# Should-Stop: +# Default-Start: B +# Default-Stop: +# Short-Description: manage /dev and kernel device-events +# Description: udevd daemon to manage /dev and kernel device events +### END INIT INFO + +. /etc/rc.status + +PATH="/sbin:/bin:/usr/sbin:/usr/bin" +DAEMON="@@SYSTEMD@@/systemd-udevd" +UDEVADM="@@BINDIR@@/udevadm" +WRITERULE="@@PREFIX@@/write_dev_root_rule" +udev_timeout=180 + +case "$1" in + start) + # create /dev/root symlink with dynamic rule + if [ -x ${WRITERULE} ]; then + ${WRITERULE} >/dev/null 2>&1 || true + fi + + # start udevd + echo -n "Starting udevd: " + ${DAEMON} --daemon + if [ $? -ne 0 ]; then + rc_status -v + rc_exit + fi + rc_status -v + + # trigger events for all devices + echo -n "Loading drivers, configuring devices: " + ${UDEVADM} trigger --type=subsystems --action=add + ${UDEVADM} trigger --type=devices --action=add + + # wait for events to finish + ${UDEVADM} settle --timeout=$udev_timeout + rc_status -v + ;; + stop) + echo -n "Stopping udevd: " + killproc ${DAEMON} + rc_status -v + ;; + restart) + echo -n "Restarting udevd: " + killproc ${DAEMON} + ${DAEMON} --daemon + rc_status -v + ;; + status) + echo -n "Checking for udevd: " + checkproc ${DAEMON} + rc_status -v + ;; + reload|force-reload) + echo -n "Reloading udevd: " + killproc -G -HUP ${DAEMON} + rc_status -v + ;; + *) + echo "Usage: $0 {start|stop|restart|status|reload|force-reload}" + exit 1 + ;; +esac +rc_exit diff --git a/disable-nss-myhostname-warning-bnc-783841.patch b/disable-nss-myhostname-warning-bnc-783841.patch new file mode 100644 index 00000000..c20aad94 --- /dev/null +++ b/disable-nss-myhostname-warning-bnc-783841.patch @@ -0,0 +1,18 @@ +From: Ludwig Nussel +Date: Tue, 12 Feb 2013 17:24:35 +0100 +Subject: disable nss-myhostname warning (bnc#783841) + +--- + src/hostname/hostnamed.c | 1 + + 1 file changed, 1 insertion(+) + +--- systemd-206.orig/src/hostname/hostnamed.c ++++ systemd-206/src/hostname/hostnamed.c +@@ -134,6 +134,7 @@ static int read_data(void) { + + static bool check_nss(void) { + void *dl; ++ return true; + + dl = dlopen("libnss_myhostname.so.2", RTLD_LAZY); + if (dl) { diff --git a/ensure-shortname-is-set-as-hostname-bnc-820213.patch b/ensure-shortname-is-set-as-hostname-bnc-820213.patch index 77bed82d..3f6b0eb4 100644 --- a/ensure-shortname-is-set-as-hostname-bnc-820213.patch +++ b/ensure-shortname-is-set-as-hostname-bnc-820213.patch @@ -4,13 +4,11 @@ Subject: ensure shortname is set as hostname (bnc#820213) strip hostname so the domain part isn't set as part of the hostname --- - src/core/hostname-setup.c | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) + src/core/hostname-setup.c | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) -Index: systemd-218/src/core/hostname-setup.c -=================================================================== ---- systemd-218.orig/src/core/hostname-setup.c -+++ systemd-218/src/core/hostname-setup.c +--- systemd-206.orig/src/core/hostname-setup.c ++++ systemd-206/src/core/hostname-setup.c @@ -32,7 +32,7 @@ #include "fileio.h" @@ -20,13 +18,14 @@ Index: systemd-218/src/core/hostname-setup.c int r; assert(path); -@@ -49,6 +49,10 @@ static int read_and_strip_hostname(const +@@ -49,6 +49,11 @@ static int read_and_strip_hostname(const return -ENOENT; } + /* strip any leftover of a domain name */ -+ if ((domain = strchr(s, '.')) != NULL) -+ *domain = '\0'; ++ if (domain = strchr(s, '.')) { ++ *domain = NULL; ++ } + *hn = s; return 0; diff --git a/fix-owner-of-var-log-btmp.patch b/fix-owner-of-var-log-btmp.patch new file mode 100644 index 00000000..954c60ca --- /dev/null +++ b/fix-owner-of-var-log-btmp.patch @@ -0,0 +1,20 @@ +From: Frederic Crozat +Date: Tue, 20 Nov 2012 09:36:43 +0000 +Subject: fix owner of /var/log/btmp + +ensure btmp is owned only by root (bnc#777405). +--- + tmpfiles.d/systemd.conf | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- systemd-206_git201308300826.orig/tmpfiles.d/systemd.conf ++++ systemd-206_git201308300826/tmpfiles.d/systemd.conf +@@ -11,7 +11,7 @@ d /run/user 0755 root root ~10d + F! /run/utmp 0664 root utmp - + + f /var/log/wtmp 0664 root utmp - +-f /var/log/btmp 0600 root utmp - ++f /var/log/btmp 0600 root root - + + d /var/cache/man - - - 30d + diff --git a/fix-support-for-boot-prefixed-initscript-bnc-746506.patch b/fix-support-for-boot-prefixed-initscript-bnc-746506.patch index c4875197..b8fea652 100644 --- a/fix-support-for-boot-prefixed-initscript-bnc-746506.patch +++ b/fix-support-for-boot-prefixed-initscript-bnc-746506.patch @@ -3,17 +3,15 @@ Date: Thu, 23 Aug 2012 11:08:25 +0200 Subject: fix support for boot prefixed initscript (bnc#746506) --- - src/systemctl/systemctl.c | 20 +++++++++++++++++++- - 1 file changed, 19 insertions(+), 1 deletion(-) + src/systemctl/systemctl.c | 22 +++++++++++++++++++++- + 1 file changed, 21 insertions(+), 1 deletion(-) -Index: systemd-218/src/systemctl/systemctl.c -=================================================================== ---- systemd-218.orig/src/systemctl/systemctl.c -+++ systemd-218/src/systemctl/systemctl.c -@@ -5202,8 +5202,26 @@ static int enable_sysv_units(const char - - p[strlen(p) - strlen(".service")] = 0; +--- systemd-206_git201308300826.orig/src/systemctl/systemctl.c ++++ systemd-206_git201308300826/src/systemctl/systemctl.c +@@ -4169,8 +4169,28 @@ static int enable_sysv_units(char **args + p[strlen(p) - sizeof(".service") + 1] = 0; found_sysv = access(p, F_OK) >= 0; + - if (!found_sysv) + if (!found_sysv) { +#ifdef HAVE_SYSV_COMPAT @@ -23,8 +21,10 @@ Index: systemd-218/src/systemctl/systemctl.c + asprintf(&p, "%s/" SYSTEM_SYSVINIT_PATH "/boot.%s", arg_root, name); + else + asprintf(&p, SYSTEM_SYSVINIT_PATH "/boot.%s", name); -+ if (!p) -+ return -ENOMEM; ++ if (!p) { ++ r = log_oom(); ++ goto finish; ++ } + p[strlen(p) - sizeof(".service") + 1] = 0; + found_sysv = access(p, F_OK) >= 0; + @@ -36,5 +36,5 @@ Index: systemd-218/src/systemctl/systemctl.c +#endif + } - log_info("%s is not a native service, redirecting to /sbin/chkconfig.", name); - + /* Mark this entry, so that we don't try enabling it as native unit */ + args[f] = (char*) ""; diff --git a/handle-SYSTEMCTL_OPTIONS-environment-variable.patch b/handle-SYSTEMCTL_OPTIONS-environment-variable.patch new file mode 100644 index 00000000..c7fa0726 --- /dev/null +++ b/handle-SYSTEMCTL_OPTIONS-environment-variable.patch @@ -0,0 +1,42 @@ +From: Frederic Crozat +Date: Tue, 22 Jan 2013 17:02:04 +0000 +Subject: handle SYSTEMCTL_OPTIONS environment variable + +(bnc#798620) +--- + src/systemctl/systemctl.c | 22 ++++++++++++++++++++++ + 1 file changed, 22 insertions(+) + +Index: systemd-208/src/systemctl/systemctl.c +=================================================================== +--- systemd-208.orig/src/systemctl/systemctl.c ++++ systemd-208/src/systemctl/systemctl.c +@@ -6115,6 +6115,28 @@ int main(int argc, char*argv[]) { + * ellipsized. */ + original_stdout_is_tty = isatty(STDOUT_FILENO); + ++ if (secure_getenv("SYSTEMCTL_OPTIONS") && ++ (!program_invocation_short_name || ++ (program_invocation_short_name && strstr(program_invocation_short_name, "systemctl")))) { ++ char **parsed_systemctl_options = strv_split_quoted(getenv("SYSTEMCTL_OPTIONS")); ++ ++ if (*parsed_systemctl_options && **parsed_systemctl_options) { ++ char **k,**a; ++ char **new_argv = new(char*, strv_length(argv) + strv_length(parsed_systemctl_options) + 1); ++ new_argv[0] = strdup(argv[0]); ++ for (k = new_argv+1, a = parsed_systemctl_options; *a; k++, a++) { ++ *k = strdup(*a); ++ } ++ for (a = argv+1; *a; k++, a++) { ++ *k = strdup(*a); ++ } ++ *k = NULL; ++ argv = new_argv; ++ argc = strv_length(new_argv); ++ strv_free (parsed_systemctl_options); ++ } ++ } ++ + r = parse_argv(argc, argv); + if (r <= 0) + goto finish; diff --git a/handle-disable_caplock-and-compose_table-and-kbd_rate.patch b/handle-disable_caplock-and-compose_table-and-kbd_rate.patch index 52af3ee9..96213505 100644 --- a/handle-disable_caplock-and-compose_table-and-kbd_rate.patch +++ b/handle-disable_caplock-and-compose_table-and-kbd_rate.patch @@ -4,13 +4,13 @@ Subject: handle disable_caplock and compose_table and kbd_rate (bnc#746595) --- - src/vconsole/vconsole-setup.c | 151 +++++++++++++++++++++++++++++++++++++++++- - 1 file changed, 148 insertions(+), 3 deletions(-) + src/vconsole/vconsole-setup.c | 156 +++++++++++++++++++++++++++++++++++++++++- + 1 file changed, 153 insertions(+), 3 deletions(-) -Index: systemd-218/src/vconsole/vconsole-setup.c +Index: systemd-210/src/vconsole/vconsole-setup.c =================================================================== ---- systemd-218.orig/src/vconsole/vconsole-setup.c -+++ systemd-218/src/vconsole/vconsole-setup.c +--- systemd-210.orig/src/vconsole/vconsole-setup.c ++++ systemd-210/src/vconsole/vconsole-setup.c @@ -40,6 +40,7 @@ #include "macro.h" #include "virt.h" @@ -19,7 +19,7 @@ Index: systemd-218/src/vconsole/vconsole-setup.c static bool is_vconsole(int fd) { unsigned char data[1]; -@@ -101,8 +102,8 @@ static int enable_utf8(int fd) { +@@ -99,8 +100,8 @@ static int enable_utf8(int fd) { return r; } @@ -30,7 +30,7 @@ Index: systemd-218/src/vconsole/vconsole-setup.c int i = 0; pid_t pid; -@@ -121,6 +122,8 @@ static int keymap_load(const char *vc, c +@@ -119,6 +120,8 @@ static int keymap_load(const char *vc, c args[i++] = map; if (map_toggle) args[i++] = map_toggle; @@ -39,7 +39,7 @@ Index: systemd-218/src/vconsole/vconsole-setup.c args[i++] = NULL; pid = fork(); -@@ -236,11 +239,113 @@ static void font_copy_to_all_vcs(int fd) +@@ -212,6 +215,101 @@ static void font_copy_to_all_vcs(int fd) } } @@ -140,20 +140,25 @@ Index: systemd-218/src/vconsole/vconsole-setup.c + int main(int argc, char **argv) { const char *vc; - _cleanup_free_ char - *vc_keymap = NULL, *vc_keymap_toggle = NULL, - *vc_font = NULL, *vc_font_map = NULL, *vc_font_unimap = NULL; + char *vc_keymap = NULL; +@@ -219,8 +317,16 @@ int main(int argc, char **argv) { + char *vc_font = NULL; + char *vc_font_map = NULL; + char *vc_font_unimap = NULL; +#ifdef HAVE_SYSV_COMPAT -+ _cleanup_free_ char -+ *vc_kbd_delay = NULL, *vc_kbd_rate = NULL, -+ *vc_kbd_disable_caps_lock = NULL, *vc_compose_table = NULL; ++ char *vc_kbd_delay = NULL; ++ char *vc_kbd_rate = NULL; ++ char *vc_kbd_disable_caps_lock = NULL; ++ char *vc_compose_table = NULL; + pid_t kbd_rate_pid = 0, compose_table_pid = 0; +#endif -+ bool disable_capslock = false; - _cleanup_close_ int fd = -1; + int fd = -1; bool utf8; ++ bool disable_capslock = false; pid_t font_pid = 0, keymap_pid = 0; -@@ -273,6 +378,28 @@ int main(int argc, char **argv) { + bool font_copy = false; + int r = EXIT_FAILURE; +@@ -251,6 +357,28 @@ int main(int argc, char **argv) { utf8 = is_locale_utf8(); @@ -182,37 +187,45 @@ Index: systemd-218/src/vconsole/vconsole-setup.c r = parse_env_file("/etc/vconsole.conf", NEWLINE, "KEYMAP", &vc_keymap, "KEYMAP_TOGGLE", &vc_keymap_toggle, -@@ -312,14 +439,32 @@ int main(int argc, char **argv) { - if (font_pid > 0) - wait_for_terminate_and_warn(KBD_SETFONT, font_pid, true); +@@ -282,7 +410,12 @@ int main(int argc, char **argv) { + disable_utf8(fd); -- r = keymap_load(vc, vc_keymap, vc_keymap_toggle, utf8, &keymap_pid); -+ r = keymap_load(vc, vc_keymap, vc_keymap_toggle, utf8, disable_capslock, &keymap_pid); - if (r < 0) { - log_error_errno(r, "Failed to start " KBD_LOADKEYS ": %m"); - return EXIT_FAILURE; - } + r = EXIT_FAILURE; +- if (keymap_load(vc, vc_keymap, vc_keymap_toggle, utf8, &keymap_pid) >= 0 && ++ ++ if (keymap_load(vc, vc_keymap, vc_keymap_toggle, utf8, disable_capslock, &keymap_pid) >= 0 && +#ifdef HAVE_SYSV_COMPAT -+ r = load_compose_table(vc, vc_compose_table, &compose_table_pid); -+ if (r < 0) { -+ log_error_errno(r, "Failed to start " KBD_LOADKEYS " loading the compose table: %m"); -+ return EXIT_FAILURE; -+ } -+ r = set_kbd_rate(vc, vc_kbd_rate, vc_kbd_delay, &kbd_rate_pid); -+ if (r < 0) { -+ log_error_errno(r, "Failed to start kbdrate: %m"); -+ return EXIT_FAILURE; -+ } ++ load_compose_table(vc, vc_compose_table, &compose_table_pid) >= 0 && ++ set_kbd_rate(vc, vc_kbd_rate, vc_kbd_delay, &kbd_rate_pid) >= 0 && +#endif + font_load(vc, vc_font, vc_font_map, vc_font_unimap, &font_pid) >= 0) + r = EXIT_SUCCESS; +@@ -290,6 +423,14 @@ finish: if (keymap_pid > 0) - wait_for_terminate_and_warn(KBD_LOADKEYS, keymap_pid, true); + wait_for_terminate_and_warn(KBD_LOADKEYS, keymap_pid); + +#ifdef HAVE_SYSV_COMPAT + if (compose_table_pid > 0) -+ wait_for_terminate_and_warn(KBD_LOADKEYS, compose_table_pid, true); ++ wait_for_terminate_and_warn(KBD_LOADKEYS, compose_table_pid); ++ + if (kbd_rate_pid > 0) -+ wait_for_terminate_and_warn("/usr/bin/kbdrate", kbd_rate_pid, true); ++ wait_for_terminate_and_warn("/bin/kbdrate", kbd_rate_pid); ++#endif ++ + if (font_pid > 0) { + wait_for_terminate_and_warn(KBD_SETFONT, font_pid); + if (font_copy) +@@ -300,6 +441,12 @@ finish: + free(vc_font); + free(vc_font_map); + free(vc_font_unimap); ++#ifdef HAVE_SYSV_COMPAT ++ free(vc_kbd_delay); ++ free(vc_kbd_rate); ++ free(vc_kbd_disable_caps_lock); ++ free(vc_compose_table); +#endif - /* Only copy the font when we started setfont successfully */ - if (font_copy && font_pid > 0) + if (fd >= 0) + close_nointr_nofail(fd); diff --git a/handle-etc-HOSTNAME.patch b/handle-etc-HOSTNAME.patch new file mode 100644 index 00000000..57a74f0d --- /dev/null +++ b/handle-etc-HOSTNAME.patch @@ -0,0 +1,77 @@ +From: Frederic Crozat +Date: Fri, 15 Feb 2013 16:04:39 +0000 +Subject: handle /etc/HOSTNAME + +(bnc#803653) +--- + src/core/hostname-setup.c | 22 +++++++++++++++++----- + src/hostname/hostnamed.c | 12 +++++++++++- + 2 files changed, 28 insertions(+), 6 deletions(-) + +--- systemd-206/src/core/hostname-setup.c ++++ systemd-206/src/core/hostname-setup.c +@@ -61,12 +61,24 @@ int hostname_setup(void) { + + r = read_and_strip_hostname("/etc/hostname", &b); + if (r < 0) { +- if (r == -ENOENT) +- enoent = true; +- else +- log_warning("Failed to read configured hostname: %s", strerror(-r)); ++ if (r == -ENOENT) { ++ /* use SUSE fallback */ ++ r = read_and_strip_hostname("/etc/HOSTNAME", &b); ++ if (r < 0) { ++ if (r == -ENOENT) ++ enoent = true; ++ else ++ log_warning("Failed to read configured hostname: %s", strerror(-r)); ++ hn = NULL; ++ } ++ else ++ hn = b; + +- hn = NULL; ++ } ++ else { ++ log_warning("Failed to read configured hostname: %s", strerror(-r)); ++ hn = NULL; ++ } + } else + hn = b; + +--- systemd-209/src/hostname/hostnamed.c ++++ systemd-209/src/hostname/hostnamed.c 2014-02-28 11:36:30.594735241 +0000 +@@ -89,6 +89,10 @@ static int context_read_data(Context *c) + if (r < 0 && r != -ENOENT) + return r; + ++ r = read_one_line_file("/etc/HOSTNAME", &c->data[PROP_STATIC_HOSTNAME]); ++ if (r < 0 && r != -ENOENT) ++ return r; ++ + return 0; + } + +@@ -246,6 +250,7 @@ static int context_write_data_hostname(C + } + + static int context_write_data_static_hostname(Context *c) { ++ int r; + + assert(c); + +@@ -256,7 +261,12 @@ static int context_write_data_static_hos + + return 0; + } +- return write_string_file_atomic_label("/etc/hostname", c->data[PROP_STATIC_HOSTNAME]); ++ ++ r = write_string_file_atomic_label("/etc/hostname", c->data[PROP_STATIC_HOSTNAME]); ++ if (!r) { ++ r = symlink_atomic("/etc/hostname", "/etc/HOSTNAME"); ++ } ++ return r; + } + + static int context_write_data_other(Context *c) { diff --git a/handle-numlock-value-in-etc-sysconfig-keyboard.patch b/handle-numlock-value-in-etc-sysconfig-keyboard.patch index a9f6924a..4278436c 100644 --- a/handle-numlock-value-in-etc-sysconfig-keyboard.patch +++ b/handle-numlock-value-in-etc-sysconfig-keyboard.patch @@ -6,19 +6,105 @@ Authors: Stanislav Brabec Cristian Rodríguez ---- - Makefile.am | 13 ++++++++++ - rules/73-seat-numlock.rules | 8 ++++++ - src/login/numlock-on.c | 34 +++++++++++++++++++++++++++ - src/vconsole/vconsole-setup.c | 40 ++++++++++++++++++++++++++++++-- - units/systemd-vconsole-setup.service.in | 2 - - 5 files changed, 94 insertions(+), 3 deletions(-) - -Index: systemd-218/Makefile.am +Index: systemd-210/src/vconsole/vconsole-setup.c =================================================================== ---- systemd-218.orig/Makefile.am -+++ systemd-218/Makefile.am -@@ -3715,6 +3715,19 @@ dist_udevrules_DATA += \ +--- systemd-210.orig/src/vconsole/vconsole-setup.c ++++ systemd-210/src/vconsole/vconsole-setup.c +@@ -42,6 +42,10 @@ + #include "fileio.h" + #include "strv.h" + ++#define BIOS_DATA_AREA 0x400 ++#define BDA_KEYBOARD_STATUS_FLAGS_4 0x97 ++#define BDA_KSF4_NUMLOCK_MASK 0x02 ++ + static bool is_vconsole(int fd) { + unsigned char data[1]; + +@@ -321,12 +325,14 @@ int main(int argc, char **argv) { + char *vc_kbd_delay = NULL; + char *vc_kbd_rate = NULL; + char *vc_kbd_disable_caps_lock = NULL; ++ char *vc_kbd_numlock = NULL; + char *vc_compose_table = NULL; + pid_t kbd_rate_pid = 0, compose_table_pid = 0; + #endif + int fd = -1; + bool utf8; + bool disable_capslock = false; ++ bool numlock = false; + pid_t font_pid = 0, keymap_pid = 0; + bool font_copy = false; + int r = EXIT_FAILURE; +@@ -363,6 +369,7 @@ int main(int argc, char **argv) { + "KBD_DELAY", &vc_kbd_delay, + "KBD_RATE", &vc_kbd_rate, + "KBD_DISABLE_CAPS_LOCK", &vc_kbd_disable_caps_lock, ++ "KBD_NUMLOCK", &vc_kbd_numlock, + "COMPOSETABLE", &vc_compose_table, + NULL); + if (r < 0 && r != -ENOENT) +@@ -377,6 +384,36 @@ int main(int argc, char **argv) { + log_warning("Failed to read /etc/sysconfig/console: %s", strerror(-r)); + + disable_capslock = vc_kbd_disable_caps_lock && strcasecmp(vc_kbd_disable_caps_lock, "YES") == 0; ++#if defined(__i386__) || defined(__x86_64__) ++ if (vc_kbd_numlock && strcaseeq(vc_kbd_numlock, "bios")) { ++ int _cleanup_close_ fdmem; ++ char c; ++ ++ fdmem = open ("/dev/mem", O_RDONLY); ++ ++ if(fdmem < 0) { ++ r = EXIT_FAILURE; ++ log_error("Failed to open /dev/mem: %m"); ++ goto finish; ++ } ++ ++ if(lseek(fdmem, BIOS_DATA_AREA + BDA_KEYBOARD_STATUS_FLAGS_4, SEEK_SET) == (off_t) -1) { ++ r = EXIT_FAILURE; ++ log_error("Failed to seek /dev/mem: %m"); ++ goto finish; ++ } ++ ++ if(read (fdmem, &c, sizeof(char)) == -1) { ++ r = EXIT_FAILURE; ++ log_error("Failed to read /dev/mem: %m"); ++ goto finish; ++ } ++ ++ if (c & BDA_KSF4_NUMLOCK_MASK) ++ numlock = true; ++ } else ++#endif ++ numlock = vc_kbd_numlock && strcaseeq(vc_kbd_numlock, "yes"); + #endif + + r = parse_env_file("/etc/vconsole.conf", NEWLINE, +@@ -422,6 +459,10 @@ int main(int argc, char **argv) { + finish: + if (keymap_pid > 0) + wait_for_terminate_and_warn(KBD_LOADKEYS, keymap_pid); ++ if (numlock) ++ touch("/run/numlock-on"); ++ else ++ unlink("/run/numlock-on"); + + #ifdef HAVE_SYSV_COMPAT + if (compose_table_pid > 0) +@@ -441,6 +482,7 @@ finish: + free(vc_font); + free(vc_font_map); + free(vc_font_unimap); ++ free(vc_kbd_numlock); + #ifdef HAVE_SYSV_COMPAT + free(vc_kbd_delay); + free(vc_kbd_rate); +Index: systemd-210/Makefile.am +=================================================================== +--- systemd-210.orig/Makefile.am ++++ systemd-210/Makefile.am +@@ -2847,6 +2847,19 @@ dist_udevrules_DATA += \ rules/61-accelerometer.rules # ------------------------------------------------------------------------------ @@ -38,10 +124,10 @@ Index: systemd-218/Makefile.am if ENABLE_GUDEV if ENABLE_GTK_DOC SUBDIRS += \ -Index: systemd-218/rules/73-seat-numlock.rules +Index: systemd-210/rules/73-seat-numlock.rules =================================================================== --- /dev/null -+++ systemd-218/rules/73-seat-numlock.rules ++++ systemd-210/rules/73-seat-numlock.rules @@ -0,0 +1,8 @@ +# This file is part of SUSE customization of systemd. +# @@ -51,10 +137,10 @@ Index: systemd-218/rules/73-seat-numlock.rules +# (at your option) any later version. + +SUBSYSTEM=="tty", ACTION=="add", KERNEL=="tty[0-9]|tty1[0-2]", TEST=="/run/numlock-on", RUN+="numlock-on $env{DEVNAME}" -Index: systemd-218/src/login/numlock-on.c +Index: systemd-210/src/login/numlock-on.c =================================================================== --- /dev/null -+++ systemd-218/src/login/numlock-on.c ++++ systemd-210/src/login/numlock-on.c @@ -0,0 +1,34 @@ +/* + * numlock-on.c: Turn numlock-on @@ -90,95 +176,14 @@ Index: systemd-218/src/login/numlock-on.c + + exit(0); +} -Index: systemd-218/src/vconsole/vconsole-setup.c +Index: systemd-210/units/systemd-vconsole-setup.service.in =================================================================== ---- systemd-218.orig/src/vconsole/vconsole-setup.c -+++ systemd-218/src/vconsole/vconsole-setup.c -@@ -42,6 +42,10 @@ - #include "fileio.h" - #include "strv.h" - -+#define BIOS_DATA_AREA 0x400 -+#define BDA_KEYBOARD_STATUS_FLAGS_4 0x97 -+#define BDA_KSF4_NUMLOCK_MASK 0x02 -+ - static bool is_vconsole(int fd) { - unsigned char data[1]; - -@@ -342,10 +346,11 @@ int main(int argc, char **argv) { - #ifdef HAVE_SYSV_COMPAT - _cleanup_free_ char - *vc_kbd_delay = NULL, *vc_kbd_rate = NULL, -- *vc_kbd_disable_caps_lock = NULL, *vc_compose_table = NULL; -+ *vc_kbd_disable_caps_lock = NULL, *vc_compose_table = NULL, -+ *vc_kbd_numlock = NULL; - pid_t kbd_rate_pid = 0, compose_table_pid = 0; - #endif -- bool disable_capslock = false; -+ bool disable_capslock = false, numlock = false; - _cleanup_close_ int fd = -1; - bool utf8; - pid_t font_pid = 0, keymap_pid = 0; -@@ -384,6 +389,7 @@ int main(int argc, char **argv) { - "KBD_DELAY", &vc_kbd_delay, - "KBD_RATE", &vc_kbd_rate, - "KBD_DISABLE_CAPS_LOCK", &vc_kbd_disable_caps_lock, -+ "KBD_NUMLOCK", &vc_kbd_numlock, - "COMPOSETABLE", &vc_compose_table, - NULL); - if (r < 0 && r != -ENOENT) -@@ -398,6 +404,32 @@ int main(int argc, char **argv) { - log_warning("Failed to read /etc/sysconfig/console: %s", strerror(-r)); - - disable_capslock = vc_kbd_disable_caps_lock && strcasecmp(vc_kbd_disable_caps_lock, "YES") == 0; -+#if defined(__i386__) || defined(__x86_64__) -+ if (vc_kbd_numlock && strcaseeq(vc_kbd_numlock, "bios")) { -+ int _cleanup_close_ fdmem; -+ char c; -+ -+ fdmem = open ("/dev/mem", O_RDONLY); -+ if (fdmem < 0) { -+ log_error("Failed to open /dev/mem: %m"); -+ return EXIT_FAILURE; -+ } -+ -+ if (lseek(fdmem, BIOS_DATA_AREA + BDA_KEYBOARD_STATUS_FLAGS_4, SEEK_SET) == (off_t) -1) { -+ log_error("Failed to seek /dev/mem: %m"); -+ return EXIT_FAILURE; -+ } -+ -+ if (read (fdmem, &c, sizeof(char)) == -1) { -+ log_error("Failed to read /dev/mem: %m"); -+ return EXIT_FAILURE; -+ } -+ -+ if (c & BDA_KSF4_NUMLOCK_MASK) -+ numlock = true; -+ } else -+#endif -+ numlock = vc_kbd_numlock && strcaseeq(vc_kbd_numlock, "yes"); - #endif - - r = parse_env_file("/etc/vconsole.conf", NEWLINE, -@@ -444,6 +476,10 @@ int main(int argc, char **argv) { - log_error_errno(r, "Failed to start " KBD_LOADKEYS ": %m"); - return EXIT_FAILURE; - } -+ if (numlock) -+ touch("/run/numlock-on"); -+ else -+ unlink("/run/numlock-on"); - #ifdef HAVE_SYSV_COMPAT - r = load_compose_table(vc, vc_compose_table, &compose_table_pid); - if (r < 0) { -Index: systemd-218/units/systemd-vconsole-setup.service.in -=================================================================== ---- systemd-218.orig/units/systemd-vconsole-setup.service.in -+++ systemd-218/units/systemd-vconsole-setup.service.in -@@ -10,7 +10,7 @@ Description=Setup Virtual Console - Documentation=man:systemd-vconsole-setup.service(8) man:vconsole.conf(5) +--- systemd-210.orig/units/systemd-vconsole-setup.service.in ++++ systemd-210/units/systemd-vconsole-setup.service.in +@@ -11,7 +11,7 @@ Documentation=man:systemd-vconsole-setup DefaultDependencies=no Conflicts=shutdown.target + After=systemd-readahead-collect.service systemd-readahead-replay.service -Before=sysinit.target shutdown.target +Before=sysinit.target shutdown.target systemd-udev-trigger.service ConditionPathExists=/dev/tty0 diff --git a/handle-root_uses_lang-value-in-etc-sysconfig-language.patch b/handle-root_uses_lang-value-in-etc-sysconfig-language.patch index a441dd59..d7bea39c 100644 --- a/handle-root_uses_lang-value-in-etc-sysconfig-language.patch +++ b/handle-root_uses_lang-value-in-etc-sysconfig-language.patch @@ -4,16 +4,16 @@ Subject: handle root_uses_lang value in /etc/sysconfig/language handle ROOT_USES_LANG=ctype (bnc#792182). --- - src/core/locale-setup.c | 26 ++++++++++++++++++++++++++ - 1 file changed, 26 insertions(+) + src/core/locale-setup.c | 27 +++++++++++++++++++++++++++ + 1 file changed, 27 insertions(+) -Index: systemd-218/src/core/locale-setup.c +Index: systemd-208/src/core/locale-setup.c =================================================================== ---- systemd-218.orig/src/core/locale-setup.c -+++ systemd-218/src/core/locale-setup.c -@@ -36,6 +36,11 @@ int locale_setup(char ***environment) { +--- systemd-208.orig/src/core/locale-setup.c ++++ systemd-208/src/core/locale-setup.c +@@ -73,6 +73,11 @@ int locale_setup(char ***environment) { char **add; - char *variables[_VARIABLE_LC_MAX] = {}; + char *variables[_VARIABLE_MAX] = {}; int r = 0, i; +#ifdef HAVE_SYSV_COMPAT + char _cleanup_free_ *root_uses_lang; @@ -23,9 +23,9 @@ Index: systemd-218/src/core/locale-setup.c if (detect_container(NULL) <= 0) { r = parse_env_file("/proc/cmdline", WHITESPACE, -@@ -82,6 +87,27 @@ int locale_setup(char ***environment) { +@@ -119,6 +124,27 @@ int locale_setup(char ***environment) { if (r < 0 && r != -ENOENT) - log_warning_errno(r, "Failed to read /etc/locale.conf: %m"); + log_warning("Failed to read /etc/locale.conf: %s", strerror(-r)); } +#ifdef HAVE_SYSV_COMPAT + if (r <= 0 && @@ -50,4 +50,4 @@ Index: systemd-218/src/core/locale-setup.c +#endif add = NULL; - for (i = 0; i < _VARIABLE_LC_MAX; i++) { + for (i = 0; i < _VARIABLE_MAX; i++) { diff --git a/insserv-generator.patch b/insserv-generator.patch index 1e1cdf4e..5525222a 100644 --- a/insserv-generator.patch +++ b/insserv-generator.patch @@ -6,30 +6,29 @@ Subject: [PATCH] insserv.conf generator parse /etc/insserv.conf.dd content and /etc/insserv.conf and generate systemd unit drop-in files to add dependencies --- - Makefile.am | 9 - src/insserv-generator/Makefile | 28 ++ - src/insserv-generator/insserv-generator.c | 312 ++++++++++++++++++++++++++++++ - 3 files changed, 349 insertions(+) + Makefile.am | 9 + + src/insserv-generator/Makefile | 28 +++ + src/insserv-generator/insserv-generator.c | 309 ++++++++++++++++++++++++++++++ + 3 files changed, 346 insertions(+) create mode 100644 src/insserv-generator/Makefile create mode 100644 src/insserv-generator/insserv-generator.c ---- systemd-219.orig/Makefile.am -+++ systemd-219/Makefile.am -@@ -621,7 +621,8 @@ nodist_systemunit_DATA += \ +Index: systemd-210/Makefile.am +=================================================================== +--- systemd-210.orig/Makefile.am ++++ systemd-210/Makefile.am +@@ -343,6 +343,7 @@ rootlibexec_PROGRAMS = \ + systemd-socket-proxyd - systemgenerator_PROGRAMS += \ - systemd-sysv-generator \ -- systemd-rc-local-generator -+ systemd-rc-local-generator \ -+ systemd-insserv-generator - endif - - EXTRA_DIST += \ -@@ -2565,6 +2566,14 @@ systemd_rc_local_generator_LDADD = \ - libsystemd-label.la \ + systemgenerator_PROGRAMS = \ ++ systemd-insserv-generator \ + systemd-getty-generator \ + systemd-fstab-generator \ + systemd-system-update-generator +@@ -1728,6 +1729,14 @@ systemd_delta_LDADD = \ libsystemd-shared.la -+#------------------------------------------------------------------------------- + # ------------------------------------------------------------------------------ +systemd_insserv_generator_SOURCES = \ + src/insserv-generator/insserv-generator.c + @@ -37,11 +36,14 @@ systemd unit drop-in files to add dependencies + libsystemd-label.la \ + libsystemd-shared.la + - # ------------------------------------------------------------------------------ - systemd_remount_fs_SOURCES = \ - src/remount-fs/remount-fs.c \ ++# ------------------------------------------------------------------------------ + systemd_getty_generator_SOURCES = \ + src/getty-generator/getty-generator.c + +Index: systemd-210/src/insserv-generator/Makefile +=================================================================== --- /dev/null -+++ systemd-219/src/insserv-generator/Makefile ++++ systemd-210/src/insserv-generator/Makefile @@ -0,0 +1,28 @@ +# This file is part of systemd. +# @@ -71,8 +73,10 @@ systemd unit drop-in files to add dependencies + $(MAKE) -C .. clean + +.PHONY: all clean +Index: systemd-210/src/insserv-generator/insserv-generator.c +=================================================================== --- /dev/null -+++ systemd-219/src/insserv-generator/insserv-generator.c ++++ systemd-210/src/insserv-generator/insserv-generator.c @@ -0,0 +1,312 @@ +/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/ + @@ -350,7 +354,7 @@ systemd unit drop-in files to add dependencies + + while ((de = readdir(d))) { + char *path = NULL; -+ if (hidden_file(de->d_name)) ++ if (ignore_file(de->d_name)) + continue; + + path = strjoin("/etc/insserv.conf.d/", de->d_name, NULL); diff --git a/journald-advice-about-use-of-memory.patch b/journald-advice-about-use-of-memory.patch index 4caf994f..008a72ef 100644 --- a/journald-advice-about-use-of-memory.patch +++ b/journald-advice-about-use-of-memory.patch @@ -1,135 +1,143 @@ -From: werner@suse.de -Upstream: marked as openSUSE-specific fix originally, but may well - worth be to be sent upstream. - -Original description: - (none) - -Notes [jengelh@inai.de]: -MAP_NONBLOCK is documented (mmap(2) in man-pages-3.69+) to render -MAP_POPULATE ineffective. Why do we have it? -What is the rationale for MAP_STACK? --- - src/journal/catalog.c | 12 +++++++++++- - src/journal/journal-authenticate.c | 7 +++++-- - src/journal/journald-kmsg.c | 3 ++- - src/journal/mmap-cache.c | 16 +++++++++++++++- - 4 files changed, 33 insertions(+), 5 deletions(-) + src/journal/catalog.c | 21 +++++++++++++++++++-- + src/journal/journal-authenticate.c | 4 ++-- + src/journal/journal-file.c | 2 +- + src/journal/journald-kmsg.c | 2 +- + src/journal/mmap-cache.c | 24 ++++++++++++++++++++++-- + 5 files changed, 45 insertions(+), 8 deletions(-) -Index: systemd/src/journal/catalog.c -=================================================================== ---- systemd.orig/src/journal/catalog.c -+++ systemd/src/journal/catalog.c -@@ -470,6 +470,10 @@ finish: +--- src/journal/catalog.c ++++ src/journal/catalog.c 2014-10-24 11:44:59.079838065 +0000 +@@ -472,9 +472,19 @@ finish: static int open_mmap(const char *database, int *_fd, struct stat *_st, void **_p) { const CatalogHeader *h; -+ static const unsigned int advice[] = -+ {MADV_WILLNEED, MADV_SEQUENTIAL, MADV_DONTDUMP, MADV_DONTFORK}; -+ unsigned int n; -+ size_t psize; - int fd; +- int fd; ++ static const struct { ++ const int index; ++ int advise; ++ } advises[] = { ++ {0,MADV_WILLNEED}, ++ {1,MADV_SEQUENTIAL}, ++ {2,MADV_DONTDUMP}, ++ {3,MADV_DONTFORK} ++ }; ++ int n, fd; void *p; struct stat st; -@@ -492,12 +496,18 @@ static int open_mmap(const char *databas ++ size_t psize; + + assert(_fd); + assert(_st); +@@ -494,12 +504,19 @@ static int open_mmap(const char *databas return -EINVAL; } - p = mmap(NULL, PAGE_ALIGN(st.st_size), PROT_READ, MAP_SHARED, fd, 0); + psize = PAGE_ALIGN(st.st_size); -+ p = mmap(NULL, psize, PROT_READ, MAP_SHARED | MAP_POPULATE | -+ MAP_NONBLOCK, fd, 0); ++ p = mmap(NULL, psize, PROT_READ, MAP_SHARED|MAP_POPULATE|MAP_NONBLOCK, fd, 0); if (p == MAP_FAILED) { - safe_close(fd); + close_nointr_nofail(fd); return -errno; } -+ for (n = 0; n < sizeof(advice) / sizeof(*advice); ++n) -+ if (madvise(p, psize, advice[n]) < 0) ++ for (n=0; n < sizeof(advises)/sizeof(advises[0]); n++) { ++ int r = madvise(p, psize, advises[n].advise); ++ if (r < 0) + log_warning("Failed to give advice about use of memory: %m"); ++ } + h = p; if (memcmp(h->signature, CATALOG_SIGNATURE, sizeof(h->signature)) != 0 || le64toh(h->header_size) < sizeof(CatalogHeader) || -Index: systemd/src/journal/journal-authenticate.c -=================================================================== ---- systemd.orig/src/journal/journal-authenticate.c -+++ systemd/src/journal/journal-authenticate.c -@@ -355,7 +355,8 @@ int journal_file_fss_load(JournalFile *f +--- src/journal/journal-authenticate.c ++++ src/journal/journal-authenticate.c 2014-10-24 07:41:09.271837523 +0000 +@@ -355,7 +355,7 @@ int journal_file_fss_load(JournalFile *f goto finish; } - m = mmap(NULL, PAGE_ALIGN(sizeof(FSSHeader)), PROT_READ, MAP_SHARED, fd, 0); -+ m = mmap(NULL, PAGE_ALIGN(sizeof(FSSHeader)), PROT_READ, -+ MAP_SHARED | MAP_STACK, fd, 0); ++ m = mmap(NULL, PAGE_ALIGN(sizeof(FSSHeader)), PROT_READ, MAP_SHARED|MAP_STACK, fd, 0); if (m == MAP_FAILED) { m = NULL; r = -errno; -@@ -399,7 +400,9 @@ int journal_file_fss_load(JournalFile *f +@@ -399,7 +399,7 @@ int journal_file_fss_load(JournalFile *f goto finish; } - f->fss_file = mmap(NULL, PAGE_ALIGN(f->fss_file_size), PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0); -+ f->fss_file = mmap(NULL, PAGE_ALIGN(f->fss_file_size), -+ PROT_READ | PROT_WRITE, MAP_SHARED | MAP_STACK, -+ fd, 0); ++ f->fss_file = mmap(NULL, PAGE_ALIGN(f->fss_file_size), PROT_READ|PROT_WRITE, MAP_SHARED|MAP_STACK, fd, 0); if (f->fss_file == MAP_FAILED) { f->fss_file = NULL; r = -errno; -Index: systemd/src/journal/journald-kmsg.c -=================================================================== ---- systemd.orig/src/journal/journald-kmsg.c -+++ systemd/src/journal/journald-kmsg.c -@@ -454,7 +454,8 @@ int server_open_kernel_seqnum(Server *s) +--- src/journal/journal-file.c ++++ src/journal/journal-file.c 2014-10-24 07:39:25.603837720 +0000 +@@ -2554,7 +2554,7 @@ int journal_file_open( + goto fail; + } + +- f->header = mmap(NULL, PAGE_ALIGN(sizeof(Header)), prot_from_flags(flags), MAP_SHARED, f->fd, 0); ++ f->header = mmap(NULL, PAGE_ALIGN(sizeof(Header)), prot_from_flags(flags), MAP_SHARED|MAP_STACK, f->fd, 0); + if (f->header == MAP_FAILED) { + f->header = NULL; + r = -errno; +--- src/journal/journald-kmsg.c ++++ src/journal/journald-kmsg.c 2014-10-24 07:38:01.967837989 +0000 +@@ -473,7 +473,7 @@ int server_open_kernel_seqnum(Server *s) return 0; } - p = mmap(NULL, sizeof(uint64_t), PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0); -+ p = mmap(NULL, sizeof(uint64_t), PROT_READ | PROT_WRITE, -+ MAP_SHARED | MAP_STACK, fd, 0); ++ p = mmap(NULL, sizeof(uint64_t), PROT_READ|PROT_WRITE, MAP_SHARED|MAP_STACK, fd, 0); if (p == MAP_FAILED) { - log_error_errno(errno, "Failed to map sequential number file, ignoring: %m"); - return 0; -Index: systemd/src/journal/mmap-cache.c -=================================================================== ---- systemd.orig/src/journal/mmap-cache.c -+++ systemd/src/journal/mmap-cache.c -@@ -467,11 +467,14 @@ static int add_mmap( + log_error("Failed to map sequential number file, ignoring: %m"); + close_nointr_nofail(fd); +--- src/journal/mmap-cache.c ++++ src/journal/mmap-cache.c 2014-10-24 11:16:47.759837744 +0000 +@@ -439,12 +439,21 @@ static int add_mmap( struct stat *st, void **ret) { -+ static const unsigned int advice[] = -+ {MADV_WILLNEED, MADV_SEQUENTIAL, MADV_DONTDUMP, MADV_DONTFORK}; ++ static const struct { ++ const int index; ++ int vise; ++ } ad[] = { ++ {0, MADV_WILLNEED}, ++ {1, MADV_SEQUENTIAL}, ++ {2, MADV_DONTDUMP}, ++ {3, MADV_DONTFORK} ++ }; uint64_t woffset, wsize; Context *c; FileDescriptor *f; Window *w; void *d; -+ unsigned int n; - int r; +- int r; ++ int n, r; assert(m); -@@ -510,7 +513,8 @@ static int add_mmap( + assert(m->n_ref > 0); +@@ -481,7 +490,7 @@ static int add_mmap( } for (;;) { - d = mmap(NULL, wsize, prot, MAP_SHARED, fd, woffset); -+ d = mmap(NULL, wsize, prot, MAP_SHARED | MAP_POPULATE | -+ MAP_NONBLOCK, fd, woffset); ++ d = mmap(NULL, wsize, prot, MAP_SHARED|MAP_POPULATE|MAP_NONBLOCK, fd, woffset); if (d != MAP_FAILED) break; if (errno != ENOMEM) -@@ -523,6 +527,16 @@ static int add_mmap( +@@ -494,6 +503,17 @@ static int add_mmap( return -ENOMEM; } -+ for (n = 0; n < sizeof(advice) / sizeof(*advice); ++n) { -+ if (advice[n] == MADV_DONTFORK) { ++ for (n=0; n < sizeof(ad)/sizeof(ad[0]); n++) { ++ if (ad[n].vise == MADV_DONTFORK) { + int flags = fcntl(fd, F_GETFD); + if (flags < 0 || !(flags & FD_CLOEXEC)) + continue; + } -+ if (madvise(d, wsize, advice[n]) < 0) ++ r = madvise(d, wsize, ad[n].vise); ++ if (r < 0) + log_warning("Failed to give advice about use of memory: %m"); + } + diff --git a/kbd-model-map.patch b/kbd-model-map.patch index b7327892..743a67b2 100644 --- a/kbd-model-map.patch +++ b/kbd-model-map.patch @@ -1,18 +1,13 @@ -From: werner@suse.de -Date: Tue Jan 20 11:33:59 UTC 2015 - --- src/locale/kbd-model-map | 13 +++++++++++++ 1 file changed, 13 insertions(+) -Index: systemd/src/locale/kbd-model-map -=================================================================== ---- systemd.orig/src/locale/kbd-model-map -+++ systemd/src/locale/kbd-model-map -@@ -66,3 +66,16 @@ lt.baltic lt pc105 - terminate:ctrl_a - lt.l4 lt pc105 - terminate:ctrl_alt_bksp +--- src/locale/kbd-model-map ++++ src/locale/kbd-model-map 2015-01-20 11:31:38.357518811 +0000 +@@ -63,3 +63,16 @@ by by,us pc105 - terminate:ctrl_alt_ + il il pc105 - terminate:ctrl_alt_bksp + kazakh kz,us pc105 - terminate:ctrl_alt_bksp,grp:shifts_toggle,grp_led:scroll lt lt pc105 - terminate:ctrl_alt_bksp - khmer kh,us pc105 - terminate:ctrl_alt_bksp +# Additional layouts offered by YaST +Pl02 pl pc105 - terminate:ctrl_alt_bksp +arabic ara,us pc105 - terminate:ctrl_alt_bksp,grp:shift_toggle diff --git a/let-linker-find-libudev-for-libdevmapper.patch b/let-linker-find-libudev-for-libdevmapper.patch index 4879c708..e2bbdda1 100644 --- a/let-linker-find-libudev-for-libdevmapper.patch +++ b/let-linker-find-libudev-for-libdevmapper.patch @@ -1,13 +1,6 @@ ---- - Makefile.am | 4 ++++ - configure.ac | 4 ---- - 2 files changed, 4 insertions(+), 4 deletions(-) - -Index: systemd/Makefile.am -=================================================================== ---- systemd.orig/Makefile.am -+++ systemd/Makefile.am -@@ -4789,6 +4789,10 @@ systemd_cryptsetup_CFLAGS = \ +--- systemd-210/Makefile.am ++++ systemd-210/Makefile.am 2014-03-13 08:54:36.010736086 +0000 +@@ -3691,6 +3691,10 @@ systemd_cryptsetup_CFLAGS = \ $(AM_CFLAGS) \ $(LIBCRYPTSETUP_CFLAGS) @@ -18,18 +11,27 @@ Index: systemd/Makefile.am systemd_cryptsetup_LDADD = \ libsystemd-label.la \ libudev-internal.la \ -Index: systemd/configure.ac -=================================================================== ---- systemd.orig/configure.ac -+++ systemd/configure.ac -@@ -206,10 +206,6 @@ AS_CASE([$CC], [*clang*], - -Wno-gnu-variable-sized-type-not-at-end \ - ])]) +--- systemd-210/Makefile.in ++++ systemd-210/Makefile.in 2014-03-13 09:19:48.950238725 +0000 +@@ -8964,7 +8964,7 @@ src/cryptsetup/systemd_cryptsetup-crypts + systemd-cryptsetup$(EXEEXT): $(systemd_cryptsetup_OBJECTS) $(systemd_cryptsetup_DEPENDENCIES) $(EXTRA_systemd_cryptsetup_DEPENDENCIES) + @rm -f systemd-cryptsetup$(EXEEXT) +- $(AM_V_CCLD)$(systemd_cryptsetup_LINK) $(systemd_cryptsetup_OBJECTS) $(systemd_cryptsetup_LDADD) $(LIBS) ++ $(AM_V_CCLD)$(systemd_cryptsetup_LINK) $(systemd_cryptsetup_OBJECTS) $(systemd_cryptsetup_LDFLAGS) $(systemd_cryptsetup_LDADD) $(LIBS) + src/cryptsetup/cryptsetup-generator.$(OBJEXT): \ + src/cryptsetup/$(am__dirstamp) \ + src/cryptsetup/$(DEPDIR)/$(am__dirstamp) +--- systemd-210/configure.ac ++++ systemd-210/configure.ac 2014-03-13 13:46:24.394235954 +0000 +@@ -156,10 +156,6 @@ CC_CHECK_FLAGS_APPEND([with_cflags], [CF + -fdata-sections \ + -fstack-protector \ + --param=ssp-buffer-size=4]) -AS_CASE([$CFLAGS], [*-O[[12345\ ]]*], - [CC_CHECK_FLAGS_APPEND([with_cflags], [CFLAGS], [\ -- -flto -ffat-lto-objects])], +- -flto])], - [AC_MSG_RESULT([skipping -flto, optimization not enabled])]) - AC_SUBST([OUR_CFLAGS], "$with_cflags $sanitizer_cflags") + AC_SUBST([OUR_CFLAGS], "$with_cflags $address_sanitizer_cflags") AS_CASE([$CFLAGS], [*-O[[12345\ ]]*], diff --git a/localfs.service b/localfs.service new file mode 100644 index 00000000..da3facec --- /dev/null +++ b/localfs.service @@ -0,0 +1,8 @@ +[Unit] +Description=Shadow /etc/init.d/boot.localfs +DefaultDependencies=no +After=local-fs.target + +[Service] +RemainAfterExit=true +ExecStart=/bin/true diff --git a/log-target-null-instead-kmsg.patch b/log-target-null-instead-kmsg.patch new file mode 100644 index 00000000..4e715385 --- /dev/null +++ b/log-target-null-instead-kmsg.patch @@ -0,0 +1,116 @@ +--- + src/journal/journald-kmsg.c | 16 +++++++++++++++- + src/libudev/libudev-util.c | 16 +++++++++++++++- + src/shared/log.c | 16 +++++++++++++++- + src/shared/util.c | 6 +++++- + 4 files changed, 50 insertions(+), 4 deletions(-) + +Index: systemd-210/src/journal/journald-kmsg.c +=================================================================== +--- systemd-210.orig/src/journal/journald-kmsg.c ++++ systemd-210/src/journal/journald-kmsg.c +@@ -391,12 +391,24 @@ static int dispatch_dev_kmsg(sd_event_so + return server_read_dev_kmsg(s); + } + ++static int parse_proc_cmdline_word(const char *word) { ++ if (streq(word, "systemd.log_target=null")) ++ return -115; ++ ++ return 0; ++} ++ + int server_open_dev_kmsg(Server *s) { + int r; + + assert(s); + +- s->dev_kmsg_fd = open("/dev/kmsg", O_RDWR|O_CLOEXEC|O_NONBLOCK|O_NOCTTY); ++ if (parse_proc_cmdline(parse_proc_cmdline_word) == -115) { ++ s->dev_kmsg_fd = open("/dev/null", O_RDWR|O_CLOEXEC|O_NONBLOCK|O_NOCTTY); ++ } else { ++ s->dev_kmsg_fd = open("/dev/kmsg", O_RDWR|O_CLOEXEC|O_NONBLOCK|O_NOCTTY); ++ } ++ + if (s->dev_kmsg_fd < 0) { + log_full(errno == ENOENT ? LOG_DEBUG : LOG_WARNING, + "Failed to open /dev/kmsg, ignoring: %m"); +Index: systemd-210/src/libudev/libudev-util.c +=================================================================== +--- systemd-210.orig/src/libudev/libudev-util.c ++++ systemd-210/src/libudev/libudev-util.c +@@ -416,6 +416,13 @@ uint64_t util_string_bloom64(const char + return bits; + } + ++static int parse_proc_cmdline_word(const char *word) { ++ if (streq(word, "systemd.log_target=null")) ++ return -115; ++ ++ return 0; ++} ++ + ssize_t print_kmsg(const char *fmt, ...) + { + _cleanup_close_ int fd = -1; +@@ -424,7 +431,12 @@ ssize_t print_kmsg(const char *fmt, ...) + ssize_t len; + ssize_t ret; + +- fd = open("/dev/kmsg", O_WRONLY|O_NOCTTY|O_CLOEXEC); ++ if (parse_proc_cmdline(parse_proc_cmdline_word) == -115) { ++ fd = open("/dev/null", O_WRONLY|O_NOCTTY|O_CLOEXEC); ++ } else { ++ fd = open("/dev/kmsg", O_WRONLY|O_NOCTTY|O_CLOEXEC); ++ } ++ + if (fd < 0) + return -errno; + +Index: systemd-210/src/shared/log.c +=================================================================== +--- systemd-210.orig/src/shared/log.c ++++ systemd-210/src/shared/log.c +@@ -92,12 +92,24 @@ void log_close_kmsg(void) { + kmsg_fd = -1; + } + ++static int parse_proc_cmdline_word(const char *word) { ++ if (streq(word, "systemd.log_target=null")) ++ return -115; ++ ++ return 0; ++} ++ + static int log_open_kmsg(void) { + + if (kmsg_fd >= 0) + return 0; + +- kmsg_fd = open("/dev/kmsg", O_WRONLY|O_NOCTTY|O_CLOEXEC); ++ if (parse_proc_cmdline(parse_proc_cmdline_word) == -115) { ++ kmsg_fd = open("/dev/null", O_WRONLY|O_NOCTTY|O_CLOEXEC); ++ } else { ++ kmsg_fd = open("/dev/kmsg", O_WRONLY|O_NOCTTY|O_CLOEXEC); ++ } ++ + if (kmsg_fd < 0) + return -errno; + +Index: systemd-210/src/shared/util.c +=================================================================== +--- systemd-210.orig/src/shared/util.c ++++ systemd-210/src/shared/util.c +@@ -6069,7 +6069,11 @@ int parse_proc_cmdline(int (*parse_word) + + r = parse_word(word); + if (r < 0) { +- log_error("Failed on cmdline argument %s: %s", word, strerror(-r)); ++ if (r == -115) { ++ log_error("Warning: %s set, redirecting messages to /dev/null.", word); ++ } else { ++ log_error("Failed on cmdline argument %s: %s", word, strerror(-r)); ++ } + return r; + } + } diff --git a/macros.systemd.upstream b/macros.systemd.upstream index 8c2e84f6..323d1d48 100644 --- a/macros.systemd.upstream +++ b/macros.systemd.upstream @@ -26,9 +26,7 @@ %_udevrulesdir @udevrulesdir@ %_journalcatalogdir @catalogdir@ %_tmpfilesdir @tmpfilesdir@ -%_sysusersdir @sysusersdir@ %_sysctldir @sysctldir@ -%_binfmtdir @binfmtdir@ %systemd_requires \ Requires(post): systemd \ @@ -39,71 +37,42 @@ Requires(postun): systemd \ %systemd_post() \ if [ $1 -eq 1 ] ; then \ # Initial installation \ - systemctl preset %{?*} >/dev/null 2>&1 || : \ + @rootbindir@/systemctl preset %{?*} >/dev/null 2>&1 || : \ fi \ %{nil} -%systemd_user_post() %systemd_post --user --global %{?*} - %systemd_preun() \ if [ $1 -eq 0 ] ; then \ # Package removal, not upgrade \ - systemctl --no-reload disable %{?*} > /dev/null 2>&1 || : \ - systemctl stop %{?*} > /dev/null 2>&1 || : \ -fi \ -%{nil} - -%systemd_user_preun() \ -if [ $1 -eq 0 ] ; then \ - # Package removal, not upgrade \ - systemctl --no-reload --user --global disable %{?*} > /dev/null 2>&1 || : \ + @rootbindir@/systemctl --no-reload disable %{?*} > /dev/null 2>&1 || : \ + @rootbindir@/systemctl stop %{?*} > /dev/null 2>&1 || : \ fi \ %{nil} %systemd_postun() \ -systemctl daemon-reload >/dev/null 2>&1 || : \ +@rootbindir@/systemctl daemon-reload >/dev/null 2>&1 || : \ %{nil} -%systemd_user_postun() %{nil} - %systemd_postun_with_restart() \ -systemctl daemon-reload >/dev/null 2>&1 || : \ +@rootbindir@/systemctl daemon-reload >/dev/null 2>&1 || : \ if [ $1 -ge 1 ] ; then \ # Package upgrade, not uninstall \ - systemctl try-restart %{?*} >/dev/null 2>&1 || : \ + @rootbindir@/systemctl try-restart %{?*} >/dev/null 2>&1 || : \ fi \ %{nil} -%systemd_user_postun_with_restart() %{nil} - %udev_hwdb_update() \ -udevadm hwdb --update >/dev/null 2>&1 || : \ +@rootbindir@/udevadm hwdb --update >/dev/null 2>&1 || : \ %{nil} %udev_rules_update() \ -udevadm control --reload >/dev/null 2>&1 || : \ +@rootbindir@/udevadm control --reload >/dev/null 2>&1 || : \ %{nil} %journal_catalog_update() \ -journalctl --update-catalog >/dev/null 2>&1 || : \ +@rootbindir@/journalctl --update-catalog >/dev/null 2>&1 || : \ %{nil} %tmpfiles_create() \ -systemd-tmpfiles --create %{?*} >/dev/null 2>&1 || : \ -%{nil} - -%sysusers_create() \ -systemd-sysusers %{?*} >/dev/null 2>&1 || : \ -%{nil} - -%sysusers_create_inline() \ -echo %{?*} | systemd-sysusers - >/dev/null 2>&1 || : \ -%{nil} - -%sysctl_apply() \ -@rootlibexecdir@/systemd-sysctl %{?*} >/dev/null 2>&1 || : \ -%{nil} - -%binfmt_apply() \ -@rootlibexecdir@/systemd-binfmt %{?*} >/dev/null 2>&1 || : \ +@rootbindir@/systemd-tmpfiles --create %{?*} >/dev/null 2>&1 || : \ %{nil} diff --git a/make-emergency.service-conflict-with-syslog.socket.patch b/make-emergency.service-conflict-with-syslog.socket.patch index d5814921..63e513cc 100644 --- a/make-emergency.service-conflict-with-syslog.socket.patch +++ b/make-emergency.service-conflict-with-syslog.socket.patch @@ -7,19 +7,16 @@ As a workaround explicitly stop syslog.socket when entering emergency.service. Reference: bnc#852232 ---- - units/emergency.service.in | 1 + - 1 file changed, 1 insertion(+) - -Index: systemd-218/units/emergency.service.in +Index: systemd-208/units/emergency.service.in =================================================================== ---- systemd-218.orig/units/emergency.service.in -+++ systemd-218/units/emergency.service.in -@@ -11,6 +11,7 @@ Documentation=man:sulogin(8) +--- systemd-208/units/emergency.service.in ++++ systemd-208/units/emergency.service.in +@@ -9,7 +9,7 @@ + Description=Emergency Shell + Documentation=man:sulogin(8) DefaultDependencies=no - Conflicts=shutdown.target - Conflicts=rescue.service -+Conflicts=syslog.socket +-Conflicts=shutdown.target ++Conflicts=shutdown.target syslog.socket Before=shutdown.target [Service] diff --git a/module-load-handle-SUSE-etc-sysconfig-kernel-module-list.patch b/module-load-handle-SUSE-etc-sysconfig-kernel-module-list.patch new file mode 100644 index 00000000..4f557c54 --- /dev/null +++ b/module-load-handle-SUSE-etc-sysconfig-kernel-module-list.patch @@ -0,0 +1,64 @@ +From: Frederic Crozat +Date: Wed, 12 Oct 2011 15:18:29 +0200 +Subject: module-load: handle SUSE /etc/sysconfig/kernel module list + +--- + src/modules-load/modules-load.c | 27 ++++++++++++++++++++++++++- + units/systemd-modules-load.service.in | 1 + + 2 files changed, 27 insertions(+), 1 deletion(-) + +--- systemd-206_git201308300826.orig/src/modules-load/modules-load.c ++++ systemd-206_git201308300826/src/modules-load/modules-load.c +@@ -262,6 +262,9 @@ static int parse_argv(int argc, char *ar + int main(int argc, char *argv[]) { + int r, k; + struct kmod_ctx *ctx; ++#ifdef HAVE_SYSV_COMPAT ++ _cleanup_free_ char *modules_on_boot = NULL; ++#endif + + r = parse_argv(argc, argv); + if (r <= 0) +@@ -318,7 +321,31 @@ int main(int argc, char *argv[]) { + r = k; + } + } +- ++#ifdef HAVE_SYSV_COMPAT ++ log_debug("apply: /etc/sysconfig/kernel MODULES_LOADED_ON_BOOT"); ++ if ((r = parse_env_file("/etc/sysconfig/kernel", NEWLINE, ++ "MODULES_LOADED_ON_BOOT", &modules_on_boot, ++ NULL)) < 0) { ++ if (r != -ENOENT) ++ log_warning("Failed to read /etc/sysconfig/kernel: %s", strerror(-r)); ++ else ++ r = EXIT_SUCCESS; ++ } else ++ r = EXIT_SUCCESS; ++ if (modules_on_boot) { ++ char **modules = strv_split(modules_on_boot,WHITESPACE); ++ char **module; ++ ++ if (modules) { ++ STRV_FOREACH(module, modules) { ++ k = load_module(ctx, *module); ++ if (k < 0) ++ r = EXIT_FAILURE; ++ } ++ } ++ strv_free(modules); ++ } ++#endif + finish: + kmod_unref(ctx); + strv_free(arg_proc_cmdline_modules); +--- systemd-206_git201308300826.orig/units/systemd-modules-load.service.in ++++ systemd-206_git201308300826/units/systemd-modules-load.service.in +@@ -13,6 +13,7 @@ Conflicts=shutdown.target + After=systemd-readahead-collect.service systemd-readahead-replay.service + Before=sysinit.target shutdown.target + ConditionCapability=CAP_SYS_MODULE ++ConditionPathExists=|/etc/sysconfig/kernel + ConditionDirectoryNotEmpty=|/lib/modules-load.d + ConditionDirectoryNotEmpty=|/usr/lib/modules-load.d + ConditionDirectoryNotEmpty=|/usr/local/lib/modules-load.d diff --git a/optionally-warn-if-nss-myhostname-is-called.patch b/optionally-warn-if-nss-myhostname-is-called.patch new file mode 100644 index 00000000..5b296a18 --- /dev/null +++ b/optionally-warn-if-nss-myhostname-is-called.patch @@ -0,0 +1,102 @@ +From: Ludwig Nussel +Date: Fri, 20 May 2011 15:38:46 +0200 +Subject: optionally warn if nss-myhostname is called + +--- + configure.ac | 11 +++++++++++ + src/nss-myhostname/nss-myhostname.c | 32 ++++++++++++++++++++++++++++++++ + 2 files changed, 43 insertions(+) + +--- systemd-206_git201308300826.orig/configure.ac ++++ systemd-206_git201308300826/configure.ac +@@ -817,6 +817,17 @@ if test "x$enable_myhostname" != "xno"; + fi + AM_CONDITIONAL(HAVE_MYHOSTNAME, [test "$have_myhostname" = "yes"]) + ++if test "x$have_myhostname" != "xno"; then ++ AC_MSG_CHECKING([log warning messages for nss-myhostname]) ++ AC_ARG_WITH(nss-my-hostname-warning, AS_HELP_STRING([--with-nss-my-hostname-warning], [log warning to syslog when nss-myhostname is called (default=no)]),[],[with_nss_my_hostname_warning=no]) ++ AC_MSG_RESULT([$with_nss_my_hostname_warning]) ++ ++ if test x$with_nss_my_hostname_warning != xno; then ++ AC_CHECK_HEADERS([syslog.h]) ++ AC_DEFINE([LOG_NSS_MY_HOSTNAME_WARNING],[1],[whether to log warning message for nss-myhostname]) ++ fi ++fi ++ + # ------------------------------------------------------------------------------ + AC_ARG_WITH(firmware-path, + AS_HELP_STRING([--with-firmware-path=DIR[[[:DIR[...]]]]], +--- systemd-206_git201308300826.orig/src/nss-myhostname/nss-myhostname.c ++++ systemd-206_git201308300826/src/nss-myhostname/nss-myhostname.c +@@ -29,6 +29,9 @@ + #include + #include + #include ++#ifdef LOG_NSS_MY_HOSTNAME_WARNING ++#include ++#endif + + #include "ifconf.h" + #include "macro.h" +@@ -47,6 +50,10 @@ + #define LOCALADDRESS_IPV6 &in6addr_loopback + #define LOOPBACK_INTERFACE "lo" + ++#ifdef LOG_NSS_MY_HOSTNAME_WARNING ++static void warn(const char* hn); ++#endif ++ + enum nss_status _nss_myhostname_gethostbyname4_r( + const char *name, + struct gaih_addrtuple **pat, +@@ -129,6 +136,9 @@ enum nss_status _nss_myhostname_gethostb + return NSS_STATUS_NOTFOUND; + } + ++#ifdef LOG_NSS_MY_HOSTNAME_WARNING ++ warn(hn); ++#endif + /* If this fails, n_addresses is 0. Which is fine */ + ifconf_acquire_addresses(&addresses, &n_addresses); + +@@ -382,6 +392,9 @@ enum nss_status _nss_myhostname_gethostb + local_address_ipv4 = LOCALADDRESS_IPV4; + } + ++#ifdef LOG_NSS_MY_HOSTNAME_WARNING ++ warn(hn); ++#endif + return fill_in_hostent( + canonical, additional, + af, +@@ -509,6 +522,9 @@ found: + canonical = hn; + } + ++#ifdef LOG_NSS_MY_HOSTNAME_WARNING ++ warn(hn); ++#endif + return fill_in_hostent( + canonical, additional, + af, +@@ -537,3 +553,19 @@ enum nss_status _nss_myhostname_gethostb + errnop, h_errnop, + NULL); + } ++ ++#ifdef LOG_NSS_MY_HOSTNAME_WARNING ++static void warn(const char* hn) { ++ if (strstr(program_invocation_short_name, "nscd")) { ++ syslog(LOG_WARNING, ++ "Some application tried to resolve hostname \"%s\" which is not in DNS. Stop nscd to find out which one.\n", ++ hn); ++ } else { ++ syslog(LOG_WARNING, ++ "%s(%u) tried to resolve hostname \"%s\" which is not in DNS. This might be the reason for the delays you experience.\n", ++ program_invocation_short_name, ++ getpid(), ++ hn); ++ } ++} ++#endif diff --git a/parse-crypttab-for-noauto-option.patch b/parse-crypttab-for-noauto-option.patch index 4226b51c..8709dc70 100644 --- a/parse-crypttab-for-noauto-option.patch +++ b/parse-crypttab-for-noauto-option.patch @@ -1,14 +1,14 @@ --- - src/fstab-generator/fstab-generator.c | 45 +++++++++++++++++++++++++++++++++- - 1 file changed, 44 insertions(+), 1 deletion(-) + src/fstab-generator/fstab-generator.c | 52 ++++++++++++++++++++++++++++++++-- + 1 file changed, 50 insertions(+), 2 deletions(-) -Index: systemd/src/fstab-generator/fstab-generator.c +Index: systemd-210/src/fstab-generator/fstab-generator.c =================================================================== ---- systemd.orig/src/fstab-generator/fstab-generator.c -+++ systemd/src/fstab-generator/fstab-generator.c -@@ -48,6 +48,49 @@ static char *arg_usr_what = NULL; - static char *arg_usr_fstype = NULL; - static char *arg_usr_options = NULL; +--- systemd-210.orig/src/fstab-generator/fstab-generator.c ++++ systemd-210/src/fstab-generator/fstab-generator.c +@@ -37,6 +37,50 @@ + static const char *arg_dest = "/tmp"; + static bool arg_enabled = true; +static int check_crypttab(const char *what) { + _cleanup_fclose_ FILE *f = NULL; @@ -53,15 +53,26 @@ Index: systemd/src/fstab-generator/fstab-generator.c + return 1; +} + - static int add_swap( - const char *what, - struct mntent *me, -@@ -118,7 +161,7 @@ static int add_swap( - if (r < 0) - return r; ++ + static int mount_find_pri(struct mntent *me, int *ret) { + char *end, *pri; + unsigned long r; +@@ -212,7 +256,7 @@ static int add_mount( + *name = NULL, *unit = NULL, *lnk = NULL, + *automount_name = NULL, *automount_unit = NULL; + _cleanup_fclose_ FILE *f = NULL; +- int r; ++ int r, c; + + assert(what); + assert(where); +@@ -288,7 +332,8 @@ static int add_mount( + return -errno; + } - if (!noauto) { -+ if (!noauto && check_crypttab(what) != 0) { - lnk = strjoin(arg_dest, "/" SPECIAL_SWAP_TARGET, - nofail ? ".wants/" : ".requires/", name, NULL); - if (!lnk) ++ c = check_crypttab(what); ++ if (!noauto && (c != 0)) { + if (post) { + lnk = strjoin(arg_dest, "/", post, nofail || automount ? ".wants/" : ".requires/", name, NULL); + if (!lnk) diff --git a/plymouth-quit-and-wait-for-emergency-service.patch b/plymouth-quit-and-wait-for-emergency-service.patch index 242a05d1..560f9f3f 100644 --- a/plymouth-quit-and-wait-for-emergency-service.patch +++ b/plymouth-quit-and-wait-for-emergency-service.patch @@ -1,40 +1,16 @@ ---- - units/console-shell.service.m4.in | 2 ++ - units/emergency.service.in | 3 ++- - units/rescue.service.in | 3 ++- - 3 files changed, 6 insertions(+), 2 deletions(-) - -Index: systemd/units/console-shell.service.m4.in -=================================================================== ---- systemd.orig/units/console-shell.service.m4.in -+++ systemd/units/console-shell.service.m4.in +--- systemd-208/units/console-shell.service.m4.in ++++ systemd-208/units/console-shell.service.m4.in 2014-02-05 11:28:31.446735287 +0000 @@ -17,6 +17,8 @@ Before=getty.target [Service] Environment=HOME=/root WorkingDirectory=/root +ExecStartPre=-/usr/bin/plymouth quit +ExecStartPre=-/usr/bin/plymouth --wait - ExecStart=-@SULOGIN@ + ExecStart=-/usr/sbin/sulogin ExecStopPost=-@SYSTEMCTL@ poweroff Type=idle -Index: systemd/units/emergency.service.in -=================================================================== ---- systemd.orig/units/emergency.service.in -+++ systemd/units/emergency.service.in -@@ -17,7 +17,8 @@ Before=shutdown.target - [Service] - Environment=HOME=/root - WorkingDirectory=/root --ExecStartPre=-/bin/plymouth quit -+ExecStartPre=-/usr/bin/plymouth quit -+ExecStartPre=-/usr/bin/plymouth --wait - ExecStartPre=-/bin/echo -e 'Welcome to emergency mode! After logging in, type "journalctl -xb" to view\\nsystem logs, "systemctl reboot" to reboot, "systemctl default" or ^D to\\ntry again to boot into default mode.' - ExecStart=-/bin/sh -c "@SULOGIN@; @SYSTEMCTL@ --fail --no-block default" - Type=idle -Index: systemd/units/rescue.service.in -=================================================================== ---- systemd.orig/units/rescue.service.in -+++ systemd/units/rescue.service.in +--- systemd-208/units/rescue.service.m4.in ++++ systemd-208/units/rescue.service.m4.in 2014-02-05 11:28:45.214235524 +0000 @@ -16,7 +16,8 @@ Before=shutdown.target [Service] Environment=HOME=/root @@ -42,6 +18,18 @@ Index: systemd/units/rescue.service.in -ExecStartPre=-/bin/plymouth quit +ExecStartPre=-/usr/bin/plymouth quit +ExecStartPre=-/usr/bin/plymouth --wait - ExecStartPre=-/bin/echo -e 'Welcome to emergency mode! After logging in, type "journalctl -xb" to view\\nsystem logs, "systemctl reboot" to reboot, "systemctl default" or ^D to\\nboot into default mode.' - ExecStart=-/bin/sh -c "@SULOGIN@; @SYSTEMCTL@ --fail --no-block default" - Type=idle + ExecStartPre=-/bin/echo -e 'Welcome to rescue mode! Type "systemctl default" or ^D to enter default mode.\\nType "journalctl -xb" to view system logs. Type "systemctl reboot" to reboot.' + ExecStart=-/usr/sbin/sulogin + ExecStopPost=-@SYSTEMCTL@ --fail --no-block default +--- systemd-208/units/emergency.service.in ++++ systemd-208/units/emergency.service.in 2014-02-05 11:28:51.782235282 +0000 +@@ -15,7 +15,8 @@ Before=shutdown.target + [Service] + Environment=HOME=/root + WorkingDirectory=/root +-ExecStartPre=-/bin/plymouth quit ++ExecStartPre=-/usr/bin/plymouth quit ++ExecStartPre=-/usr/bin/plymouth --wait + ExecStartPre=-/bin/echo -e 'Welcome to emergency mode! After logging in, type "journalctl -xb" to view\\nsystem logs, "systemctl reboot" to reboot, "systemctl default" to try again\\nto boot into default mode.' + ExecStart=-/usr/sbin/sulogin + ExecStopPost=@SYSTEMCTL@ --fail --no-block default diff --git a/prepare-suspend-to-disk.patch b/prepare-suspend-to-disk.patch new file mode 100644 index 00000000..01f95f9d --- /dev/null +++ b/prepare-suspend-to-disk.patch @@ -0,0 +1,28 @@ +diff -Naur systemd-210/units/systemd-hibernate.service.in systemd-210-mod/units/systemd-hibernate.service.in +--- systemd-210/units/systemd-hibernate.service.in 2013-08-13 22:02:52.808756274 +0200 ++++ systemd-210-mod/units/systemd-hibernate.service.in 2014-03-25 12:27:44.995995220 +0100 +@@ -11,7 +11,10 @@ + DefaultDependencies=no + Requires=sleep.target + After=sleep.target ++ConditionKernelCommandLine=resume + + [Service] + Type=oneshot ++ExecStart=@rootbindir@/systemd-sleep-grub pre + ExecStart=@rootlibexecdir@/systemd-sleep hibernate ++ExecStopPost=@rootbindir@/systemd-sleep-grub post +diff -Naur systemd-210/units/systemd-hybrid-sleep.service.in systemd-210-mod/units/systemd-hybrid-sleep.service.in +--- systemd-210/units/systemd-hybrid-sleep.service.in 2013-08-13 22:02:52.809756282 +0200 ++++ systemd-210-mod/units/systemd-hybrid-sleep.service.in 2014-03-25 12:27:56.115994902 +0100 +@@ -11,7 +11,10 @@ + DefaultDependencies=no + Requires=sleep.target + After=sleep.target ++ConditionKernelCommandLine=resume + + [Service] + Type=oneshot ++ExecStart=@rootbindir@/systemd-sleep-grub pre + ExecStart=@rootlibexecdir@/systemd-sleep hybrid-sleep ++ExecStopPost=@rootbindir@/systemd-sleep-grub post diff --git a/remain_after_exit-initscript-heuristic-and-add-new-LSB-hea.patch b/remain_after_exit-initscript-heuristic-and-add-new-LSB-hea.patch new file mode 100644 index 00000000..f1e0dfcb --- /dev/null +++ b/remain_after_exit-initscript-heuristic-and-add-new-LSB-hea.patch @@ -0,0 +1,91 @@ +From: Frederic Crozat +Date: Wed, 7 Dec 2011 15:15:07 +0000 +Subject: remain_after_exit initscript heuristic and add new LSB headers + +Add remain_after_exit heuristic for initscripts and add LSB headers +PIDFile: and X-Systemd-RemainAfterExit to control it. + +(bnc#721426) (bnc#727771) +--- + src/core/service.c | 34 ++++++++++++++++++++++++++++++++-- + src/core/service.h | 1 + + 2 files changed, 33 insertions(+), 2 deletions(-) + +Index: systemd-208/src/core/service.c +=================================================================== +--- systemd-208.orig/src/core/service.c ++++ systemd-208/src/core/service.c +@@ -135,6 +135,7 @@ static void service_init(Unit *u) { + #ifdef HAVE_SYSV_COMPAT + s->sysv_start_priority = -1; + s->sysv_start_priority_from_rcnd = -1; ++ s->sysv_remain_after_exit_heuristic = true; + #endif + s->socket_fd = -1; + s->guess_main_pid = true; +@@ -883,6 +884,34 @@ static int service_load_sysv_path(Servic + free(short_description); + short_description = d; + ++ } else if (startswith_no_case(t, "PIDFile:")) { ++ char *fn; ++ ++ state = LSB; ++ ++ fn = strstrip(t+8); ++ if (!path_is_absolute(fn)) { ++ log_warning("[%s:%u] PID file not absolute. Ignoring.", path, line); ++ continue; ++ } ++ ++ if (!(fn = strdup(fn))) { ++ r = -ENOMEM; ++ goto finish; ++ } ++ ++ free(s->pid_file); ++ s->pid_file = fn; ++ s->sysv_remain_after_exit_heuristic = false; ++ s->remain_after_exit = false; ++ } else if (startswith_no_case(t, "X-Systemd-RemainAfterExit:")) { ++ char *j; ++ ++ state = LSB; ++ if ((j = strstrip(t+26)) && *j) { ++ s->remain_after_exit = parse_boolean(j); ++ s->sysv_remain_after_exit_heuristic = false; ++ } + } else if (state == LSB_DESCRIPTION) { + + if (startswith(l, "#\t") || startswith(l, "# ")) { +@@ -933,7 +962,8 @@ static int service_load_sysv_path(Servic + + /* Special setting for all SysV services */ + s->type = SERVICE_FORKING; +- s->remain_after_exit = !s->pid_file; ++ if (s->sysv_remain_after_exit_heuristic) ++ s->remain_after_exit = !s->pid_file; + s->guess_main_pid = false; + s->restart = SERVICE_RESTART_NO; + s->exec_context.ignore_sigpipe = false; +@@ -2080,7 +2110,7 @@ static void service_enter_running(Servic + if ((main_pid_ok > 0 || (main_pid_ok < 0 && cgroup_ok != 0)) && + (s->bus_name_good || s->type != SERVICE_DBUS)) { + #ifdef HAVE_SYSV_COMPAT +- if (s->sysv_enabled && !s->pid_file) ++ if (s->sysv_enabled && !s->pid_file && s->sysv_remain_after_exit_heuristic) + s->remain_after_exit = false; + #endif + service_set_state(s, SERVICE_RUNNING); +Index: systemd-208/src/core/service.h +=================================================================== +--- systemd-208.orig/src/core/service.h ++++ systemd-208/src/core/service.h +@@ -178,6 +178,7 @@ struct Service { + bool is_sysv:1; + bool sysv_has_lsb:1; + bool sysv_enabled:1; ++ bool sysv_remain_after_exit_heuristic:1; + int sysv_start_priority_from_rcnd; + int sysv_start_priority; + diff --git a/respect-nfs-bg-option.patch b/respect-nfs-bg-option.patch index 91822e07..ccf7cea4 100644 --- a/respect-nfs-bg-option.patch +++ b/respect-nfs-bg-option.patch @@ -1,22 +1,19 @@ ---- - src/fstab-generator/fstab-generator.c | 7 +++++-- - 1 file changed, 5 insertions(+), 2 deletions(-) - -Index: systemd-218/src/fstab-generator/fstab-generator.c -=================================================================== ---- systemd-218.orig/src/fstab-generator/fstab-generator.c -+++ systemd-218/src/fstab-generator/fstab-generator.c -@@ -238,8 +238,11 @@ static int add_mount( - "Documentation=man:fstab(5) man:systemd-fstab-generator(8)\n", - source); +--- systemd-210/src/fstab-generator/fstab-generator.c 2014-02-17 15:49:21.070855641 +0100 ++++ systemd-210/src/fstab-generator/fstab-generator.c 2014-04-25 16:25:13.256106126 +0200 +@@ -255,10 +255,12 @@ + "SourcePath=%s\n", + source); - if (post && !noauto && !nofail && !automount) -- fprintf(f, "Before=%s\n", post); +- fprintf(f, +- "Before=%s\n", +- post); + if (post && !noauto && !nofail && !automount) { -+ bool is_nfs = fstype != NULL && streq(fstype, "nfs"); -+ if (!is_nfs || strstr(opts, "bg") == NULL) -+ fprintf(f, "Before=%s\n", post); ++ if (!streq(type, "nfs") || (streq(type, "nfs") && !strstr(opts, "bg"))) ++ fprintf(f, ++ "Before=%s\n", ++ post); + } - if (passno != 0) { - r = generator_write_fsck_deps(f, arg_dest, what, where, fstype); + r = add_fsck(f, what, where, type, passno); + if (r < 0) diff --git a/restore-var-run-and-var-lock-bind-mount-if-they-aren-t-sym.patch b/restore-var-run-and-var-lock-bind-mount-if-they-aren-t-sym.patch index 132b73e1..422f23ca 100644 --- a/restore-var-run-and-var-lock-bind-mount-if-they-aren-t-sym.patch +++ b/restore-var-run-and-var-lock-bind-mount-if-they-aren-t-sym.patch @@ -3,20 +3,18 @@ Date: Mon, 29 Oct 2012 13:01:20 +0000 Subject: restore /var/run and /var/lock bind mount if they aren't symlink --- - Makefile.am | 9 +++++++++ - units/var-lock.mount | 19 +++++++++++++++++++ - units/var-run.mount | 19 +++++++++++++++++++ + Makefile.am | 9 +++++++++ + units/var-lock.mount | 19 +++++++++++++++++++ + units/var-run.mount | 19 +++++++++++++++++++ 3 files changed, 47 insertions(+) create mode 100644 units/var-lock.mount create mode 100644 units/var-run.mount -Index: systemd-218/Makefile.am -=================================================================== ---- systemd-218.orig/Makefile.am -+++ systemd-218/Makefile.am -@@ -516,6 +516,12 @@ endif - dist_systemunit_DATA_busnames += \ - units/busnames.target +--- systemd-206_git201308300826.orig/Makefile.am ++++ systemd-206_git201308300826/Makefile.am +@@ -419,6 +419,12 @@ dist_systemunit_DATA = \ + units/system-update.target \ + units/initrd-switch-root.target +if HAVE_SYSV_COMPAT +dist_systemunit_DATA += \ @@ -27,7 +25,7 @@ Index: systemd-218/Makefile.am nodist_systemunit_DATA = \ units/getty@.service \ units/serial-getty@.service \ -@@ -6086,6 +6092,9 @@ RUNLEVEL4_TARGET_WANTS += \ +@@ -4379,6 +4385,9 @@ RUNLEVEL4_TARGET_WANTS += \ systemd-update-utmp-runlevel.service RUNLEVEL5_TARGET_WANTS += \ systemd-update-utmp-runlevel.service @@ -35,12 +33,10 @@ Index: systemd-218/Makefile.am + var-run.mount \ + var-lock.mount endif - SYSINIT_TARGET_WANTS += \ -Index: systemd-218/units/var-lock.mount -=================================================================== + systemd-update-utmp.service --- /dev/null -+++ systemd-218/units/var-lock.mount ++++ systemd-206_git201308300826/units/var-lock.mount @@ -0,0 +1,19 @@ +# This file is part of systemd. +# @@ -61,10 +57,8 @@ Index: systemd-218/units/var-lock.mount +Where=/var/lock +Type=bind +Options=bind -Index: systemd-218/units/var-run.mount -=================================================================== --- /dev/null -+++ systemd-218/units/var-run.mount ++++ systemd-206_git201308300826/units/var-run.mount @@ -0,0 +1,19 @@ +# This file is part of systemd. +# diff --git a/service-flags-sysv-service-with-detected-pid-as-RemainAfte.patch b/service-flags-sysv-service-with-detected-pid-as-RemainAfte.patch new file mode 100644 index 00000000..d0e907bb --- /dev/null +++ b/service-flags-sysv-service-with-detected-pid-as-RemainAfte.patch @@ -0,0 +1,31 @@ +From: Frederic Crozat +Date: Fri, 30 Sep 2011 12:58:17 +0200 +Subject: service: flags sysv service with detected pid as + RemainAfterExit=false + +LSB header doesn't give pidfile, so all LSB initscripts have +RemainAfterExit=false, causing daemon termination to not be reported as +such by systemd. Checking at startup if daemon is still running for +sysv initscript to disable RemainAfterExit helps a lot. +Fixes https://bugzilla.novell.com/show_bug.cgi?id=721426 +--- + src/core/service.c | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +--- systemd-206_git201308300826.orig/src/core/service.c ++++ systemd-206_git201308300826/src/core/service.c +@@ -2100,8 +2100,13 @@ static void service_enter_running(Servic + cgroup_ok = cgroup_good(s); + + if ((main_pid_ok > 0 || (main_pid_ok < 0 && cgroup_ok != 0)) && +- (s->bus_name_good || s->type != SERVICE_DBUS)) ++ (s->bus_name_good || s->type != SERVICE_DBUS)) { ++#ifdef HAVE_SYSV_COMPAT ++ if (s->sysv_enabled && !s->pid_file) ++ s->remain_after_exit = false; ++#endif + service_set_state(s, SERVICE_RUNNING); ++ } + else if (s->remain_after_exit) + service_set_state(s, SERVICE_EXITED); + else diff --git a/set-and-use-default-logconsole.patch b/set-and-use-default-logconsole.patch index 23bd0163..e13cb6dd 100644 --- a/set-and-use-default-logconsole.patch +++ b/set-and-use-default-logconsole.patch @@ -6,8 +6,10 @@ Use and set default logging console for both journald and kernel messages src/journal/journald-server.c | 5 ++ 3 files changed, 105 insertions(+) ---- systemd-219.orig/src/journal/journald-console.c -+++ systemd-219/src/journal/journald-console.c +Index: src/journal/journald-console.c +=================================================================== +--- src/journal/journald-console.c.orig ++++ src/journal/journald-console.c @@ -23,6 +23,14 @@ #include #include @@ -23,13 +25,13 @@ Use and set default logging console for both journald and kernel messages #include "fileio.h" #include "journald-server.h" -@@ -43,6 +51,76 @@ static bool prefix_timestamp(void) { +@@ -43,6 +51,74 @@ static bool prefix_timestamp(void) { return cached_printk_time; } ++#ifdef HAVE_SYSV_COMPAT +void defaul_tty_path(Server *s) +{ -+#ifdef HAVE_SYSV_COMPAT + static const char list[] = "/dev/tty10\0" "/dev/console\0"; + const char *vc; + @@ -49,12 +51,10 @@ Use and set default logging console for both journald and kernel messages + s->tty_path = strdup(vc); + break; + } -+#endif +} + +void klogconsole(Server *s) +{ -+#ifdef HAVE_SYSV_COMPAT + _cleanup_free_ char *klogconsole_params = NULL; + _cleanup_close_ int fd = -1; + const char *vc = s->tty_path; @@ -94,29 +94,27 @@ Use and set default logging console for both journald and kernel messages + num = klogconsole_params + strcspn(klogconsole_params, "0123456789"); + if (safe_atoi(num, &r) == 0) + klogctl(8, 0, r); -+#endif +} ++#endif + void server_forward_console( Server *s, int priority, -@@ -64,6 +142,12 @@ void server_forward_console( +@@ -64,6 +140,10 @@ void server_forward_console( if (LOG_PRI(priority) > s->max_level_console) return; -+#ifdef HAVE_SYSV_COMPAT + /* Do not write security/authorization (private) messages to console */ + if ((priority & LOG_FACMASK) == LOG_AUTHPRIV) + return; -+#endif + /* First: timestamp */ if (prefix_timestamp()) { assert_se(clock_gettime(CLOCK_MONOTONIC, &ts) == 0); -@@ -100,7 +184,23 @@ void server_forward_console( +@@ -101,7 +181,23 @@ void server_forward_console( fd = open_terminal(tty, O_WRONLY|O_NOCTTY|O_CLOEXEC); if (fd < 0) { - log_debug_errno(errno, "Failed to open %s for logging: %m", tty); + log_debug("Failed to open %s for logging: %m", tty); +#ifdef HAVE_SYSV_COMPAT + if (fd != -ENOENT && fd != -ENODEV) + return; @@ -137,18 +135,23 @@ Use and set default logging console for both journald and kernel messages } if (writev(fd, iovec, n) < 0) ---- systemd-219.orig/src/journal/journald-console.h -+++ systemd-219/src/journal/journald-console.h -@@ -24,3 +24,6 @@ +Index: src/journal/journald-console.h +=================================================================== +--- src/journal/journald-console.h.orig ++++ src/journal/journald-console.h +@@ -24,3 +24,7 @@ #include "journald-server.h" - void server_forward_console(Server *s, int priority, const char *identifier, const char *message, const struct ucred *ucred); -+ + void server_forward_console(Server *s, int priority, const char *identifier, const char *message, struct ucred *ucred); ++#ifdef HAVE_SYSV_COMPAT +void klogconsole(Server *s); +void defaul_tty_path(Server *s); ---- systemd-219.orig/src/journal/journald-server.c -+++ systemd-219/src/journal/journald-server.c -@@ -1520,6 +1520,11 @@ int server_init(Server *s) { ++#endif +Index: src/journal/journald-server.c +=================================================================== +--- src/journal/journald-server.c.orig ++++ src/journal/journald-server.c +@@ -1509,6 +1509,11 @@ int server_init(Server *s) { server_parse_config_file(s); server_parse_proc_cmdline(s); @@ -158,5 +161,5 @@ Use and set default logging console for both journald and kernel messages + klogconsole(s); + if (!!s->rate_limit_interval ^ !!s->rate_limit_burst) { - log_debug("Setting both rate limit interval and burst from "USEC_FMT",%u to 0,0", - s->rate_limit_interval, s->rate_limit_burst); + log_debug("Setting both rate limit interval and burst from %llu,%u to 0,0", + (long long unsigned) s->rate_limit_interval, diff --git a/shut-up-annoying-assertion-monotonic-clock-message.patch b/shut-up-annoying-assertion-monotonic-clock-message.patch new file mode 100644 index 00000000..ecdf4bc0 --- /dev/null +++ b/shut-up-annoying-assertion-monotonic-clock-message.patch @@ -0,0 +1,38 @@ +Stop flooding the kernel's message ring buffer with useless +messages on dual_timestamp_is_set is failed. This is a backport +from upstream code. + +--- + src/libsystemd/sd-event/sd-event.c | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +--- systemd-210/src/libsystemd/sd-event/sd-event.c ++++ systemd-210/src/libsystemd/sd-event/sd-event.c 2014-05-02 10:01:23.366235185 +0000 +@@ -2191,9 +2191,12 @@ _public_ int sd_event_exit(sd_event *e, + _public_ int sd_event_get_now_realtime(sd_event *e, uint64_t *usec) { + assert_return(e, -EINVAL); + assert_return(usec, -EINVAL); +- assert_return(dual_timestamp_is_set(&e->timestamp), -ENODATA); + assert_return(!event_pid_changed(e), -ECHILD); + ++ /* If we haven't run yet, just get the actual time */ ++ if (!dual_timestamp_is_set(&e->timestamp)) ++ return -ENODATA; ++ + *usec = e->timestamp.realtime; + return 0; + } +@@ -2201,9 +2204,12 @@ _public_ int sd_event_get_now_realtime(s + _public_ int sd_event_get_now_monotonic(sd_event *e, uint64_t *usec) { + assert_return(e, -EINVAL); + assert_return(usec, -EINVAL); +- assert_return(dual_timestamp_is_set(&e->timestamp), -ENODATA); + assert_return(!event_pid_changed(e), -ECHILD); + ++ /* If we haven't run yet, just get the actual time */ ++ if (!dual_timestamp_is_set(&e->timestamp)) ++ return -ENODATA; ++ + *usec = e->timestamp.monotonic; + return 0; + } diff --git a/shut-up-rpmlint-on-var-log-journal.patch b/shut-up-rpmlint-on-var-log-journal.patch index 2304a184..3230a8f1 100644 --- a/shut-up-rpmlint-on-var-log-journal.patch +++ b/shut-up-rpmlint-on-var-log-journal.patch @@ -1,12 +1,6 @@ ---- - Makefile.am | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -Index: systemd-218/Makefile.am -=================================================================== ---- systemd-218.orig/Makefile.am -+++ systemd-218/Makefile.am -@@ -4209,11 +4209,11 @@ noinst_LTLIBRARIES += \ +--- systemd-210/Makefile.am ++++ systemd-210/Makefile.am 2014-07-28 09:05:41.002735451 +0000 +@@ -3242,11 +3242,11 @@ noinst_LTLIBRARIES += \ libsystemd-journal-core.la journal-install-hook: @@ -22,4 +16,4 @@ Index: systemd-218/Makefile.am + -@echo setfacl -nm g:wheel:rx,d:g:wheel:rx $(DESTDIR)/var/log/journal/ journal-uninstall-hook: - -rmdir $(DESTDIR)/var/log/journal/remote + -rmdir $(DESTDIR)/var/log/journal/ diff --git a/suse-sysv-bootd-support.diff b/suse-sysv-bootd-support.diff deleted file mode 100644 index b11ea682..00000000 --- a/suse-sysv-bootd-support.diff +++ /dev/null @@ -1,86 +0,0 @@ -From: Frederic Crozat -Date: Fri, 12 Apr 2013 16:56:26 +0200 -Subject: Revert "service: drop support for SysV scripts for the early boot" - -This reverts commit 3cdebc217c42c8529086f2965319b6a48eaaeabe. - -[Implementation note: currently, the unit is generated, but not -activated even if symlinks exist in boot.d. Hmmm... -jengelh@inai.de] ---- - src/sysv-generator/sysv-generator.c | 26 +++++++++++++++++++++----- - 1 file changed, 21 insertions(+), 5 deletions(-) - ---- systemd-219.orig/src/sysv-generator/sysv-generator.c -+++ systemd-219/src/sysv-generator/sysv-generator.c -@@ -42,7 +42,8 @@ - - typedef enum RunlevelType { - RUNLEVEL_UP, -- RUNLEVEL_DOWN -+ RUNLEVEL_DOWN, -+ RUNLEVEL_SYSINIT, - } RunlevelType; - - static const struct { -@@ -50,6 +51,9 @@ static const struct { - const char *target; - const RunlevelType type; - } rcnd_table[] = { -+ /* SUSE style boot.d */ -+ { "boot.d", SPECIAL_SYSINIT_TARGET, RUNLEVEL_SYSINIT }, -+ - /* Standard SysV runlevels for start-up */ - { "rc1.d", SPECIAL_RESCUE_TARGET, RUNLEVEL_UP }, - { "rc2.d", SPECIAL_RUNLEVEL2_TARGET, RUNLEVEL_UP }, -@@ -65,7 +69,7 @@ static const struct { - directories in this order, and we want to make sure that - sysv_start_priority is known when we first load the - unit. And that value we only know from S links. Hence -- UP must be read before DOWN */ -+ UP/SYSINIT must be read before DOWN */ - }; - - typedef struct SysvStub { -@@ -83,7 +87,7 @@ typedef struct SysvStub { - bool reload; - } SysvStub; - --const char *arg_dest = "/tmp"; -+static const char *arg_dest = "/tmp"; - - static int add_symlink(const char *service, const char *where) { - _cleanup_free_ char *from = NULL, *to = NULL; -@@ -235,6 +239,10 @@ static bool usage_contains_reload(const - static char *sysv_translate_name(const char *name) { - char *r; - -+ if (startswith(name, "boot.")) -+ /* Drop SuSE-style boot. prefix */ -+ name += 5; -+ - r = new(char, strlen(name) + strlen(".service") + 1); - if (!r) - return NULL; -@@ -864,10 +872,10 @@ static int set_dependencies_from_rcnd(Lo - - if (de->d_name[0] == 'S') { - -- if (rcnd_table[i].type == RUNLEVEL_UP) { -+ if (rcnd_table[i].type == RUNLEVEL_UP || -+ rcnd_table[i].type == RUNLEVEL_SYSINIT) - service->sysv_start_priority = - MAX(a*10 + b, service->sysv_start_priority); -- } - - r = set_ensure_allocated(&runlevel_services[i], NULL); - if (r < 0) -@@ -878,7 +886,8 @@ static int set_dependencies_from_rcnd(Lo - goto finish; - - } else if (de->d_name[0] == 'K' && -- (rcnd_table[i].type == RUNLEVEL_DOWN)) { -+ (rcnd_table[i].type == RUNLEVEL_DOWN || -+ rcnd_table[i].type == RUNLEVEL_SYSINIT)) { - - r = set_ensure_allocated(&shutdown_services, NULL); - if (r < 0) diff --git a/sysctl-handle-boot-sysctl.conf-kernel_release.patch b/sysctl-handle-boot-sysctl.conf-kernel_release.patch index 08247c82..9b3defb9 100644 --- a/sysctl-handle-boot-sysctl.conf-kernel_release.patch +++ b/sysctl-handle-boot-sysctl.conf-kernel_release.patch @@ -6,14 +6,14 @@ Subject: [PATCH] sysctl: handle /boot/sysctl.conf- Add support for kernel release sysctl.conf files (for per-flavor configuration), needed by openSUSE (bnc#809420). --- - src/sysctl/sysctl.c | 8 ++++++++ - units/systemd-sysctl.service.in | 2 ++ - 2 files changed, 10 insertions(+) + src/sysctl/sysctl.c | 8 ++++++++ + units/systemd-sysctl.service.in | 1 + + 2 files changed, 9 insertions(+) -Index: systemd-218/src/sysctl/sysctl.c +Index: systemd-207/src/sysctl/sysctl.c =================================================================== ---- systemd-218.orig/src/sysctl/sysctl.c -+++ systemd-218/src/sysctl/sysctl.c +--- systemd-207.orig/src/sysctl/sysctl.c ++++ systemd-207/src/sysctl/sysctl.c @@ -26,6 +26,7 @@ #include #include @@ -22,7 +22,7 @@ Index: systemd-218/src/sysctl/sysctl.c #include "log.h" #include "strv.h" -@@ -310,6 +311,13 @@ int main(int argc, char *argv[]) { +@@ -299,6 +300,13 @@ int main(int argc, char *argv[]) { } else { _cleanup_strv_free_ char **files = NULL; char **f; @@ -36,14 +36,14 @@ Index: systemd-218/src/sysctl/sysctl.c r = conf_files_list_nulstr(&files, ".conf", NULL, conf_file_dirs); if (r < 0) { -Index: systemd-218/units/systemd-sysctl.service.in +Index: systemd-207/units/systemd-sysctl.service.in =================================================================== ---- systemd-218.orig/units/systemd-sysctl.service.in -+++ systemd-218/units/systemd-sysctl.service.in -@@ -13,6 +13,8 @@ Conflicts=shutdown.target - After=systemd-modules-load.service - Before=sysinit.target shutdown.target - ConditionPathIsReadWrite=/proc/sys/ +--- systemd-207.orig/units/systemd-sysctl.service.in ++++ systemd-207/units/systemd-sysctl.service.in +@@ -19,6 +19,8 @@ ConditionDirectoryNotEmpty=|/usr/lib/sys + ConditionDirectoryNotEmpty=|/usr/local/lib/sysctl.d + ConditionDirectoryNotEmpty=|/etc/sysctl.d + ConditionDirectoryNotEmpty=|/run/sysctl.d +ConditionPathExistsGlob=|/boot/sysctl.conf-%v +RequiresMountsFor=/boot diff --git a/systemctl-set-default-target.patch b/systemctl-set-default-target.patch index 86aec7e9..4dd058d9 100644 --- a/systemctl-set-default-target.patch +++ b/systemctl-set-default-target.patch @@ -3,14 +3,12 @@ Mention that --force is required to override an already existing default.target This solves the bug bnc#868439 --- - man/systemctl.xml | 4 +++- + systemctl.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) -Index: systemd/man/systemctl.xml -=================================================================== ---- systemd.orig/man/systemctl.xml -+++ systemd/man/systemctl.xml -@@ -445,7 +445,7 @@ along with systemd; If not, see @@ -19,12 +17,12 @@ Index: systemd/man/systemctl.xml any existing conflicting symlinks. When used with halt, -@@ -1215,6 +1215,8 @@ kobject-uevent 1 systemd-udevd-kernel.so - Return the default target to boot into. This returns - the target unit name default.target - is aliased (symlinked) to. +@@ -1036,6 +1036,8 @@ kobject-uevent 1 systemd-udevd-kernel.so + + Set the default target to boot into. Command links + default.target to the given unit. + If combined with , override + an already existing symlink for the default target. - + diff --git a/systemd-210.tar.xz b/systemd-210.tar.xz new file mode 100644 index 00000000..dd2041d8 --- /dev/null +++ b/systemd-210.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2b3ddf9bf82f05cc3079650e86ae05b558381fd034cf1b03a592bcadd1610c4 +size 2620924 diff --git a/systemd-219.tar.xz b/systemd-219.tar.xz deleted file mode 100644 index d90808ee..00000000 --- a/systemd-219.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5c57113454e37c040d0cb481bd960ae7cf3a3fe0a231ff4945259bc74503f2d9 -size 3938228 diff --git a/systemd-add-user-keep.patch b/systemd-add-user-keep.patch index 8eb7f440..c1c06ba5 100644 --- a/systemd-add-user-keep.patch +++ b/systemd-add-user-keep.patch @@ -1,27 +1,25 @@ ---- - man/tmpfiles.d.xml | 3 +++ - src/tmpfiles/tmpfiles.c | 48 ++++++++++++++++++++++++++++++++++++++++-------- - 2 files changed, 43 insertions(+), 8 deletions(-) - -Index: systemd/man/tmpfiles.d.xml -=================================================================== ---- systemd.orig/man/tmpfiles.d.xml -+++ systemd/man/tmpfiles.d.xml -@@ -489,6 +489,9 @@ - f, F, and - w may be used to specify a short string that - is written to the file, suffixed by a newline. For -+ x, X, a comma separated list of -+ usernames. If given, only paths belonging to these users will be excluded -+ during directory cleanup. Ignored for all other lines. For - C, specifies the source file or - directory. For t determines extended - attributes to be set. For a determines -Index: systemd/src/tmpfiles/tmpfiles.c -=================================================================== ---- systemd.orig/src/tmpfiles/tmpfiles.c -+++ systemd/src/tmpfiles/tmpfiles.c -@@ -345,6 +345,7 @@ static int dir_cleanup( +diff -Naur systemd-210/man/tmpfiles.d.xml systemd-210.mod/man/tmpfiles.d.xml +--- systemd-210/man/tmpfiles.d.xml 2014-12-18 09:40:29.403629407 +0100 ++++ systemd-210.mod/man/tmpfiles.d.xml 2014-12-18 10:34:06.274130934 +0100 +@@ -435,8 +435,12 @@ + f, F, + and w may be used to + specify a short string that is written to the +- file, suffixed by a newline. Ignored for all +- other lines. ++ file, suffixed by a newline. ++ For x, X ++ a comma separated list of usernames. If given, ++ only paths belonging to these users will be ++ excluded during directory cleanup. ++ Ignored for all other lines. + + + +diff -Naur systemd-210/src/tmpfiles/tmpfiles.c systemd-210.mod/src/tmpfiles/tmpfiles.c +--- systemd-210/src/tmpfiles/tmpfiles.c 2014-12-18 09:40:29.342629177 +0100 ++++ systemd-210.mod/src/tmpfiles/tmpfiles.c 2014-12-18 11:58:16.686576974 +0100 +@@ -263,6 +263,7 @@ struct timespec times[2]; bool deleted = false; int r = 0; @@ -29,57 +27,52 @@ Index: systemd/src/tmpfiles/tmpfiles.c while ((dent = readdir(d))) { struct stat s; -@@ -395,14 +396,45 @@ static int dir_cleanup( +@@ -306,11 +307,43 @@ } /* Is there an item configured for this path? */ -- if (hashmap_get(items, sub_path)) { -- log_debug("Ignoring \"%s\": a separate entry exists.", sub_path); +- if (hashmap_get(items, sub_path)) - continue; -- } - -- if (find_glob(globs, sub_path)) { -- log_debug("Ignoring \"%s\": a separate glob exists.", sub_path); +- if (find_glob(globs, sub_path)) - continue; -+ bool found_glob = false; + found = hashmap_get(items, sub_path); -+ if (!found) { -+ found_glob = true; -+ found = find_glob(globs, sub_path); -+ } -+ if (found) { -+ struct passwd *pw; -+ char *userfound = NULL, *args; -+ bool match = false; -+ uid_t uid = -1; ++ ++ if (!found) ++ found = find_glob(globs, sub_path); + ++ if (found) { + /* evaluate username arguments in ignore statements */ -+ if ((found->type != IGNORE_PATH && found->type != IGNORE_DIRECTORY_PATH) || -+ !found->argument) { -+ if (found_glob) -+ log_debug("Ignoring \"%s\": a separate glob exists.", sub_path); -+ else -+ log_debug("Ignoring \"%s\": a separate entry exists.", sub_path); -+ continue; -+ } -+ args = strdup(found->argument); -+ assert_se(args != NULL); -+ while ((userfound = strsep(&args, ",")) != NULL) { -+ pw = getpwnam(userfound); -+ if (pw == NULL) { -+ log_error("Unknown user '%s' in ignore statement.", userfound); -+ continue; ++ if (found->type == IGNORE_PATH || found->type == IGNORE_DIRECTORY_PATH) { ++ if (!found->argument) ++ continue; ++ else { ++ struct passwd *pw; ++ char *userfound = NULL, *args = strdup(found->argument); ++ bool match = false; ++ int uid = -1; ++ ++ while ((userfound = strsep(&args, ","))) { ++ pw = getpwnam(userfound); ++ ++ if (!pw) ++ log_error("Unknown user '%s' in ignore statement.", userfound); ++ else { ++ uid = pw->pw_uid; ++ if (s.st_uid == uid) { ++ match = true; ++ break; ++ } ++ } ++ } ++ if (match) { ++ found = NULL; ++ continue; ++ } + } -+ uid = pw->pw_uid; -+ if (s.st_uid == uid) { -+ match = true; -+ break; -+ } -+ } -+ if (match) { -+ found = NULL; -+ continue; -+ } - } ++ } else ++ continue; ++ } if (S_ISDIR(s.st_mode)) { + diff --git a/systemd-dbus-system-bus-address.patch b/systemd-dbus-system-bus-address.patch index 89c83e42..cede24c9 100644 --- a/systemd-dbus-system-bus-address.patch +++ b/systemd-dbus-system-bus-address.patch @@ -1,14 +1,18 @@ ---- - src/libsystemd/sd-bus/sd-bus.c | 4 ++-- - src/shared/def.h | 2 +- - 2 files changed, 3 insertions(+), 3 deletions(-) - -Index: systemd/src/libsystemd/sd-bus/sd-bus.c -=================================================================== ---- systemd.orig/src/libsystemd/sd-bus/sd-bus.c -+++ systemd/src/libsystemd/sd-bus/sd-bus.c -@@ -809,8 +809,8 @@ static int parse_container_unix_address( - b->nspid = 0; +--- systemd-210/src/shared/def.h ++++ systemd-210/src/shared/def.h 2014-03-12 13:11:06.502235254 +0000 +@@ -61,7 +61,7 @@ + "/usr/lib/kbd/keymaps/\0" + #endif + +-#define UNIX_SYSTEM_BUS_PATH "unix:path=/var/run/dbus/system_bus_socket" ++#define UNIX_SYSTEM_BUS_PATH "unix:path=/run/dbus/system_bus_socket" + #define KERNEL_SYSTEM_BUS_PATH "kernel:path=/dev/kdbus/0-system/bus" + + #ifdef ENABLE_KDBUS +--- systemd-210/src/libsystemd/sd-bus/sd-bus.c ++++ systemd-210/src/libsystemd/sd-bus/sd-bus.c 2014-03-12 14:31:09.966736492 +0000 +@@ -794,8 +794,8 @@ static int parse_container_unix_address( + machine = NULL; b->sockaddr.un.sun_family = AF_UNIX; - strncpy(b->sockaddr.un.sun_path, "/var/run/dbus/system_bus_socket", sizeof(b->sockaddr.un.sun_path)); @@ -18,16 +22,3 @@ Index: systemd/src/libsystemd/sd-bus/sd-bus.c return 0; } -Index: systemd/src/shared/def.h -=================================================================== ---- systemd.orig/src/shared/def.h -+++ systemd/src/shared/def.h -@@ -61,7 +61,7 @@ - "/usr/lib/kbd/keymaps/\0" - #endif - --#define UNIX_SYSTEM_BUS_ADDRESS "unix:path=/var/run/dbus/system_bus_socket" -+#define UNIX_SYSTEM_BUS_ADDRESS "unix:path=/run/dbus/system_bus_socket" - #define KERNEL_SYSTEM_BUS_ADDRESS "kernel:path=/sys/fs/kdbus/0-system/bus" - - #ifdef ENABLE_KDBUS diff --git a/systemd-journald.init b/systemd-journald.init new file mode 100644 index 00000000..0b8d5081 --- /dev/null +++ b/systemd-journald.init @@ -0,0 +1,33 @@ +#! /bin/sh +# +# Copyright (c) 2001-2002 SuSE Linux AG, Nuernberg, Germany. +# All rights reserved. +# +# /etc/init.d/systemd-journald +# +### BEGIN INIT INFO +# Provides: syslog +# Required-Start: $null +# Required-Stop: $null +# Default-Start: 2 3 5 +# Default-Stop: +# Short-Description: compat wrapper for journald +# Description: compat wrapper for journald +### END INIT INFO + +. /etc/rc.status + +rc_reset + +case "$1" in + start|stop|restart) + rc_failed 3 + rc_status -v + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 + ;; +esac + +rc_exit diff --git a/systemd-mini-rpmlintrc b/systemd-mini-rpmlintrc index a9e12af8..def95a7d 100644 --- a/systemd-mini-rpmlintrc +++ b/systemd-mini-rpmlintrc @@ -1,4 +1,3 @@ -addFilter("invalid-pkgconfig-file") addFilter(".*dangling-symlink /sbin/(halt|init|poweroff|telinit|shutdown|runlevel|reboot).*") addFilter(".*dangling-symlink .* /dev/null.*") addFilter(".*files-duplicate .*/reboot\.8.*") @@ -17,7 +16,6 @@ addFilter(".*libgudev-.*shlib-fixed-dependency.*") addFilter(".*suse-filelist-forbidden-systemd-userdirs.*") addFilter("libudev-mini.*shlib-policy-name-error.*") addFilter("nss-myhostname.*shlib-policy-name-error.*") -addFilter("nss-mymachines.*shlib-policy-name-error.*") addFilter("systemd-logger.*useless-provides sysvinit(syslog).*") addFilter("devel-file-in-non-devel-package.*/usr/share/pkgconfig/(udev|systemd)\.pc.*") addFilter(".*script-without-shebang.*/usr/lib/udev/rule_generator.functions.*") diff --git a/systemd-mini.changes b/systemd-mini.changes index 7a555d36..78b33870 100644 --- a/systemd-mini.changes +++ b/systemd-mini.changes @@ -1,575 +1,9 @@ -------------------------------------------------------------------- -Tue Mar 3 16:03:07 UTC 2015 - jengelh@inai.de - -- Add 0001-core-rework-device-state-logic.patch to fix spurious - automated umount after mount. - -------------------------------------------------------------------- -Wed Feb 18 12:13:52 UTC 2015 - meissner@suse.com - -- mark more subpackages as !bootstrap for systemd-mini usage. - -------------------------------------------------------------------- -Wed Feb 18 05:01:38 UTC 2015 - crrodriguez@opensuse.org - -- spec : remove --with-firmware-path, firmware loader was removed in v217 -- spec: remove --disable-multi-seat-x, gone.(fixed in xorg) -- spec: Do not enable systemd-readahead-collect.service and -systemd-readahead-replay.service as these do not exist anymore. -- spec: drop timedate-add-support-for-openSUSE-version-of-etc-sysconfig.patch - Yast was fixed to write all timezone changes exactly how timedated expects - things to be done. -- spec: remove handle-etc-HOSTNAME.patch, since late 2014 the netcfg - package handles the migration from /etc/HOSTNAME to /etc/hostname - and owns both files. --spec: remove boot.udev and systemd-journald.init as they currently - serve no purpose. -- suse-sysv-bootd-support.diff: Remove HAVE_SYSVINIT conditions, we - are in sysvcompat-only codepath, also remove the code targetting other - distributions, never compiled as the TARGET_$DISTRO macros are never defined. -- systemd-powerd-initctl-support.patch guard with HAVE_SYSV_COMPAT -- set-and-use-default-logconsole.patch: fix HAVE_SYSV_COMPAT guards -- insserv-generator.patch: Only build when sysvcompat is enabled -- vhangup-on-all-consoles.patch add a comment indicating this is a workaround - for a kernel bug. -- spec: Add option to allow disabling sysvinit compat at build time. -- spec: Add option to enable resolved at build time. -- spec: Remove all %ifs for !factory products, current systemd releases can - neither be built nor installed in older products without upgrading - several components of the base system. - (removed: 1008-add-msft-compability-rules.patch was only for =< 13.1) -- spec: remove all dummy "aliases" to /etc/init.d, that made sense only when - those init scripts still existed. (dummy localfs.service source: gone) -- systemd-sleep-grub: moved to the grub2 package where it belongs as a - suspend/resume hook (SR#286533) (drops prepare-suspend-to-disk.patch) -- remove LFS_CFLAGS from CFLAGS, never needed in systemd as it force feds - config.h everywhere in the preprocessor cmdline. - -------------------------------------------------------------------- -Mon Feb 16 23:46:11 UTC 2015 - jengelh@inai.de - -- Update to new upstream release 219 -* systemd units can now be "unsupported" (like, for example, - .device in a containers), similar to the "skipped" state in - SUSE's prior sysvinit scripts. -* tmpfiles gained the 'v' type for creating btrfs subvolumes. -* tmpfiles gained the 'a' type for setting ACLs. -* systemd-nspawn gained new switches: --ephemeral, --template -* The /var/lib/containers location is deprecated and replaced by - /var/lib/machines. -* machinectl gained the copy-from and copy-to commands. -* machinectl now knows a "bind" command (for use with nspawn) -* new "systemd-importd" daemon to download container images and run - them as nspawn containers. -* networkd collects LLDP network announcements, if available, and - so shown in networkctl. -* The fallback terminal type was changed from "vt102" to "vt220", - allowing PgUp/PgDn keys to work. -* Pressing Ctrl-Alt-Del 7x in 2 seconds forces a umount+reboot now, - useful should the regular shutdown hang. -* Removing storage will cause systemd to unmount the associated - mountpoints so that they don't linger around. - -------------------------------------------------------------------- -Mon Feb 16 11:47:04 UTC 2015 - jengelh@inai.de - -- Add suse-sysv-bootd-support.diff (reinstate old - Revert-service-drop-support-for-SysV-scripts-for-the-early.patch) - -------------------------------------------------------------------- -Mon Feb 16 10:18:18 UTC 2015 - jengelh@inai.de - -- Update to systemd v218-1050-g38ab096 -- Remove patches - use-usr-sbin-sulogin-for-emergency-service.patch (upstream fixed it) -- Reinstate and improve (remove huge indents from) - tty-ask-password-agent-on-console.patch, - 0014-journald-with-journaling-FS.patch, rootsymlink_generator. - -------------------------------------------------------------------- -Mon Feb 16 09:42:48 UTC 2015 - meissner@suse.com - -- disable systemd-resolved for now as it interacts not well with - our methods and security has concerns regarding spoofing. bsc#917781 - ------------------------------------------------------------------- Tue Jan 20 11:33:59 UTC 2015 - werner@suse.de - Add patch kbd-model-map.patch to add missed keyboard layouts which are offered by YaST2 (bsc#910643 and boo#897803) -------------------------------------------------------------------- -Fri Jan 9 18:48:28 UTC 2015 - jengelh@inai.de - -- Update to new upstream release 218 -* New utilities: systemd-timesyncd (SNTP client), - systemd-resolved, systemd-networkd, networkctl, - systemd-sysusers -* machinectl gained a "poweroff" command for clean container shutdown -* The udev hwdb now contains DPI information for mice. -* Userspace firmware loading support has been removed and - the minimum supported kernel version is thus bumped to 3.7. -- Remove patches: - G=gone locally, is upstream; - D=dropped: no longer needed; - N=no longer applies to source nor is it deemed needed; - K=killed: no longer applicable and too complex to resolve: - ---- - G 0002-rfkill-rework-how-we-generate-file-names-from-rfkill.patch - G avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch - K service-flags-sysv-service-with-detected-pid-as-RemainAfte.patch - K remain_after_exit-initscript-heuristic-and-add-new-LSB-hea.patch - K handle-SYSTEMCTL_OPTIONS-environment-variable.patch - K 0018-Make-LSB-Skripts-know-about-Required-and-Should.patch - K log-target-null-instead-kmsg.patch - K tty-ask-password-agent-on-console.patch - K 513-nspawn-veth.patch - K 1087-infinit-timeout-for-kmod-loaded-modules.patch - D module-load-handle-SUSE-etc-sysconfig-kernel-module-list.patch - D avoid-leaking-socket-descriptors.patch - D 0001-make-fortify-happy-with-ppoll.patch - N fix-owner-of-var-log-btmp.patch - N disable-nss-myhostname-warning-bnc-783841.patch - N Revert-service-drop-support-for-SysV-scripts-for-the-early.patch - N 0001-make-209-working-on-older-dist.patch - N 0001-Don-t-snprintf-a-potentially-NULL-pointer.patch - N tmpfiles-do-not-clean-for-mandb-index-files.patch - G 0001-sd-bus-don-t-look-for-a-64bit-value-when-we-only-hav.patch - G avoid-assertion-if-invalid-address-familily-is-passed-to-g.patc - G optionally-warn-if-nss-myhostname-is-called.patch - G 0001-units-systemd-sysctl.service.in-run-after-load-modul.patch - G 0004-getty-generator-properly-escape-instance-names.patch - G rules-add-lid-switch-of-ARM-based-Chromebook-as-a-power-sw.patch - G 0008-Reset-signal-mask-on-re-exec-to-init.patch - G 0001-login-fix-pos-array-allocation.patch - G 0002-login-set-pos-slot-to-fallback-on-pos-eviction.patch - G 0003-login-Allow-calling-org.freedesktop.login1.Seat.Swit.patch - G 0004-fix-typo-in-iDRAC-network-interface-name-irdac-idrac.patch - G 0005-Replace-var-run-with-run-in-remaining-places.patch - G 0006-Revert-back-to-var-run-at-a-couple-of-problems.patch - G 0007-README-document-that-var-run-must-be-a-symlink-run.patch - G 0008-Use-var-run-dbus-system_bus_socket-for-the-D-Bus-soc.patch - G 0009-mount-don-t-send-out-PropertiesChanged-message-if-ac.patch - G 0010-mount-don-t-fire-PropertiesChanged-signals-for-mount.patch - G 0011-logs-show-fix-corrupt-output-with-empty-messages.patch - G 0012-journalctl-refuse-extra-arguments-with-verify-and-si.patch - G 0014-nspawn-fix-detection-of-missing-proc-self-loginuid.patch - G 0001-Fix-systemd-stdio-bridge-symlink.patch - G 0002-execute-free-directory-path-if-we-fail-to-remove-it-.patch - G 0003-Do-not-print-invalid-UTF-8-in-error-messages.patch - G 0004-man-document-missing-options-of-systemd-run.patch - G 0005-systemd-run-add-some-extra-safety-checks.patch - G 0006-journal-assume-that-next-entry-is-after-previous-ent.patch - G 0007-journal-forget-file-after-encountering-an-error.patch - G 0008-core-correctly-unregister-PIDs-from-PID-hashtables.patch - G 0009-logind-fix-reference-to-systemd-user-sessions.servic.patch - G 0010-man-update-link-to-LSB.patch - G 0011-man-systemd-bootchart-fix-spacing-in-command.patch - G 0012-man-add-missing-comma.patch - G 0013-units-Do-not-unescape-instance-name-in-systemd-backl.patch - G 0001-core-busname-add-lookup-string-for-BUSNAME_FAILURE_S.patch - G 0002-manager-flush-memory-stream-before-using-the-buffer.patch - G 0003-busname-don-t-drop-service-from-the-result-string.patch - G 0004-fix-off-by-one-error-in-array-index-assertion.patch - G 0005-logind-fix-policykit-checks.patch - G 0006-rules-mark-loop-device-as-SYSTEMD_READY-0-if-no-file.patch - G 0008-man-multiple-sleep-modes-are-to-be-separated-by-whit.patch - G 0001-gpt-auto-generator-don-t-return-OOM-on-parentless-de.patch - G 0002-bus-fix-memory-leak-when-kdbus-is-not-enabled.patch - G 0006-Do-not-return-1-EINVAL-on-allocation-error.patch - G 0007-networkd-fix-typo.patch - G 0008-sd-bus-don-t-access-invalid-memory-if-a-signal-match.patch - G 0009-sd-bus-don-t-choke-if-somebody-sends-us-a-message-wi.patch - G 0012-journald-remove-stray-reset-of-error-return-value.patch - G 0013-core-libsystemd-systemd-timedate-udev-spelling-fixes.patch - G 0001-cgroup-it-s-not-OK-to-invoke-alloca-in-loops.patch - G 0002-machined-fix-Kill-bus-call-on-machine-objects-when-w.patch - G 0003-sd-bus-don-t-use-assert_return-to-check-for-disconne.patch - G 0004-core-don-t-try-to-relabel-mounts-before-we-loaded-th.patch - G 0005-sd-daemon-fix-incorrect-variable-access.patch - G 0006-sd-event-initialization-perturbation-value-right-bef.patch - G 0007-sd-event-don-t-accidentally-turn-of-watchdog-timer-e.patch - G 0008-systemctl-kill-mode-is-long-long-gone-don-t-mention-.patch - G 0009-ask-password-when-the-user-types-a-overly-long-passw.patch - G 0001-journal-fix-export-of-messages-containing-newlines.patch - G 0002-systemctl-update-NAME-to-PATTERN-in-help.patch - G 0003-tty-ask-password-agent-return-negative-errno.patch - G 0004-systemd-python-use-.hex-instead-of-.get_hex.patch - G 0005-systemd-python-fix-failing-assert.patch - G 0007-dbus-suppress-duplicate-and-misleading-messages.patch - G 0001-reduce-the-amount-of-messages-logged-to-dev-kmsg-whe.patch - G 0001-bash-completion-fix-__get_startable_units.patch - G 0002-sysctl-replaces-some-slashes-with-dots.patch - G 0003-delta-do-not-use-unicode-chars-in-C-locale.patch - G 0004-implement-a-union-to-pad-out-file_handle.patch - G shut-up-annoying-assertion-monotonic-clock-message.patch - G 0001-sd-rtnl-message-append-fix-uninitialized-memory.patch - G 0001-tmpfiles-fix-permissions-on-new-journal-files.patch - G 0001-errno-make-sure-to-handle-the-3-errnos-that-are-alia.patch - G 0003-analyze-fix-plot-with-bad-y-size.patch - G 0004-job-add-waiting-jobs-to-run-queue-in-unit_coldplug.patch - G 0005-job-always-add-waiting-jobs-to-run-queue-during-cold.patch - G 0001-backlight-Avoid-restoring-brightness-to-an-unreadabl.patch - G 0002-backlight-do-nothing-if-max_brightness-is-0.patch - G 0003-backlight-unify-error-messages.patch - G 0004-backlight-warn-if-kernel-exposes-backlight-device-wi.patch - G 0005-backlight-handle-saved-brightness-exceeding-max-brig.patch - G 0001-replace-more-dup-by-F_DUPFD_CLOEXEC.patch - G 0002-pam_systemd-use-F_DUPFD_CLOEXEC-when-dupping-session.patch - G 0001-core-close-socket-fds-asynchronously.patch - G 0002-logind-bring-polkit-policy-for-hibernate-in-line-wit.patch - G 0003-core-make-sure-to-serialize-jobs-for-all-units.patch - G 0001-logind-ignore-lid-switch-if-more-than-1-display-is-c.patch - G 0002-logind-fix-printf-format.patch - G 0003-logind-ignore-lid-switch-events-for-30s-after-each-s.patch - G 0004-logind-Do-not-fail-display-count-if-a-device-has-no-.patch - G 0005-logind-move-lid-switch-handling-from-logind-main-to-.patch - G 0006-man-clarify-that-the-ExecReload-command-should-be-sy.patch - G 0007-man-readahead-fix-cmdline-switch-inconsistency-betwe.patch - G 0008-man-update-journald-rate-limit-defaults.patch - G 0009-nspawn-properly-format-container_uuid-in-UUID-format.patch - G 0010-logind-allow-suspending-if-there-are-no-displays.patch - G 0001-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0002-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0003-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0004-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0005-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0001-conf-parser-silently-ignore-sections-starting-with-X.patch - G 0002-man-note-that-entire-sections-can-now-be-ignored.patch - G 0004-machined-make-sure-GetMachineAddresses-is-available-.patch - G 0005-core-Filter-by-state-behind-the-D-Bus-API-not-in-the.patch - G 0006-login-add-mir-to-the-list-of-session-types.patch - G 0007-logind-fix-Display-property-of-user-objects.patch - G 0001-hwdb-update.patch - G 0002-hwdb-update.patch - G 0003-hwdb-PCI-include-primary-model-string-in-subsystem-m.patch - G 0004-hwdb-update.patch - G 0005-hwdb-update.patch - G 0001-journal-cleanup-up-error-handling-in-update_catalog.patch - G 0002-journal-properly-detect-language-specified-in-line.patch - G 0003-man-mention-XDG_CONFIG_HOME-in-systemd.unit.patch - G 0001-keymap-Add-Lenovo-Enhanced-USB-Keyboard.patch - G 0002-keymap-Asus-EeePC-touchpad-toggle-key.patch - G 0001-nspawn-allow-to-bind-mount-journal-on-top-of-a-non-e.patch - G 0002-nspawn-restore-journal-directory-is-empty-check.patch - G 0003-core-never-consider-failure-when-reading-drop-ins-fa.patch - G 0004-socket-properly-handle-if-our-service-vanished-durin.patch - G 0001-Do-not-unescape-unit-names-in-Install-section.patch - G 0002-analyze-run-use-bus_open_transport_systemd-instead-o.patch - G 0001-virt-rework-container-detection-logic.patch - G 0002-fsck-include-device-name-in-the-message-about-missin.patch - G 0003-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch - G 0004-util-ignore_file-should-not-allow-files-ending-with.patch - G 0006-tty-ask-password-agent-Do-tell-what-directory-we-fai.patch - G 0007-keyboard-add-Plantronics-.Audio-mute-button.patch - G 0001-build-sys-use-glibc-s-xattr-support-instead-of-requi.patch - G 0001-hwdb-fix-case-sensitive-match.patch - G 0001-sd-event-restore-correct-timeout-behaviour.patch - G 0002-bus-make-use-of-sd_bus_try_close-in-exit-on-idle-ser.patch - G 0001-umount-modernizations.patch - G 0002-namespace-when-setting-up-an-inaccessible-mount-poin.patch - G 0003-core-allow-transient-mount-units.patch - G 0004-systemd-detect-virt-only-discover-Xen-domU.patch - G 0005-backlight-Do-not-clamp-brightness-for-LEDs.patch - G 0006-log-honour-the-kernel-s-quiet-cmdline-argument.patch - G 0001-core-fix-invalid-free-in-killall.patch - G 0003-install-fix-invalid-free-in-unit_file_mask.patch - G 0001-systemd-detect-virt-detect-s390-virtualization.patch - G 0001-core-sysvcompat-network-should-be-equivalent-to-netw.patch - G 0002-units-add-missing-caps-so-that-GetAddresses-can-work.patch - G 0003-units-order-systemd-tmpfiles-clean.service-after-tim.patch - G 0005-po-add-Greek-translation.patch - G 0006-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0007-po-add-German-translation.patch - G 0009-core-clean-up-signal-reset-logic-when-reexec.patch - G 0010-util-treat-fuse.sshfs-as-a-network-filesystem.patch - G 0011-build-sys-add-pthread-flag-for-libsystemd-shared.patch - G 0012-core-transaction-avoid-misleading-error-message-when.patch - G 0001-vconsole-also-copy-character-maps-not-just-fonts-fro.patch - G 0002-core-make-sure-Environment-fields-passed-in-for-tran.patch - G 0003-core-You-can-not-put-the-cached-result-of-use_smack-.patch - G 0004-cryptsetup-don-t-add-unit-dependency-on-dev-null-dev.patch - G 0005-man-fix-path-in-crypttab-5.patch - G 0001-units-order-network-online.target-after-network.targ.patch - G 0001-core-use-correct-format-string-for-UIDs.patch - G 0002-core-transaction-fix-cycle-break-attempts-outside-tr.patch - G 0003-fsck-consider-a-fsck-implementation-linked-to-bin-tr.patch - G 0001-main-uid_to_name-might-fail-due-to-OOM-protect-again.patch - G 0002-journald-make-MaxFileSec-really-default-to-1month.patch - G 0003-units-remove-RefuseManualStart-from-units-which-are-.patch - G 0004-util-refuse-considering-UID-0xFFFF-and-0xFFFFFFFF-va.patch - G 0005-nspawn-block-open_by_handle_at-and-others-via-seccom.patch - G 0006-tmpfiles-don-t-do-automatic-cleanup-in-XDG_RUNTIME_D.patch - G 0007-units-skip-mounting-tmp-if-it-is-a-symlink.patch - G 0001-parse_uid-return-ENXIO-for-1-uids.patch - G 0002-util-when-unescaping-strings-don-t-allow-smuggling-i.patch - G 0003-localed-consider-an-unset-model-as-a-wildcard.patch - G 0004-sd-bus-when-an-event-loop-terminates-explicitly-clos.patch - G 0005-bus-close-a-bus-that-failed-to-connect.patch - G 0006-hwdb-update.patch - G 0007-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0001-architecture-Add-tilegx.patch - G 0002-architecture-Add-cris.patch - G 0003-arch-add-crisv32-to-uname-check.patch - G 0004-architecture-remove-cris-from-uname-list.patch - G 0003-namespace-make-sure-tmp-var-tmp-and-dev-are-writable.patch - G 0002-namespace-fix-uninitialized-memory-access.patch - G 0001-machine-don-t-return-uninitialized-variable.patch - G 0002-vconsole-setup-run-setfont-before-loadkeys.patch - G 0001-util-consider-0x7F-a-control-chracter-which-it-is-DE.patch - G 0002-util-don-t-consider-tabs-special-in-string_has_cc-an.patch - G 0003-architecture-add-string-table-entries-for-mips-le-ar.patch - G 0004-core-Added-support-for-ERRNO-NOTIFY_SOCKET-message-p.patch - G 0005-service-don-t-accept-negative-ERRNO-notification-mes.patch - G 0006-systemctl-show-StatusErrno-value-in-systemctl-status.patch - G 0007-service-flush-status-text-and-errno-values-each-time.patch - G 0001-journal-compress-return-early-in-uncompress_startswi.patch - G 0002-journal-compress-improve-xz-compression-performance.patch - G 0001-logind-allow-switching-to-unused-VTs-via-SwitchTo.patch - G 0002-hostnamed-add-a-new-chassis-type-for-watches.patch - G 0001-units-make-ExecStopPost-action-part-of-ExecStart.patch - G 0001-event-pull-in-sd-event.h-from-event-util.h.patch - G 0002-util-fix-has-cc-check-and-add-test.patch - G 0003-sd-event-always-call-epoll_ctl-on-mask-updates-if-ed.patch - G 0004-fileio-quote-more-shell-characters-in-envfiles.patch - G 0001-Clear-up-confusion-wrt.-ENTRY_SIZE_MAX-and-DATA_SIZE.patch - G 0002-units-serial-getty-.service-use-the-default-RestartS.patch - G 0001-po-add-Ukrainian-translation.patch - G 0002-man-document-yearly-and-annually-in-systemd.time-7.patch - G 0003-core-nicer-message-when-inotify-watches-are-exhauste.patch - G 0001-detect-virt-Fix-Xen-domU-discovery.patch - G 0002-Be-more-verbose-when-bind-or-listen-fails.patch - G 0003-Add-quotes-to-warning-message.patch - G 0004-systemd-return-the-first-error-from-manager_startup.patch - G 0001-bash-completion-p-option-for-journalctl.patch - G 0002-journalctl-man-allow-only-between-terms.patch - G 0003-systemd-use-pager-for-test-and-help.patch - G 0001-bus-proxyd-fix-incorrect-comparison.patch - G 0002-shell-completion-prevent-mangling-unit-names.patch - G 0003-Always-check-asprintf-return-code.patch - G 0004-bash-completion-use-list-unit-files-to-get-all-units.patch - G 0005-core-only-set-the-kernel-s-timezone-when-the-RTC-run.patch - G 0006-parse_boolean-require-exact-matches.patch - G 0007-drop_duplicates-copy-full-BindMount-struct.patch - G 0008-shell-completion-prevent-mangling-unit-names-bash.patch - G 0009-journald-always-add-syslog-facility-for-messages-com.patch - G 0001-sysv-order-initscripts-which-provide-network-before-.patch - G 0002-keymap-Add-microphone-mute-keymap-for-Dell-Latitude.patch - G 0003-keymap-Annotate-all-micmute-workarounds.patch - G 0007-hwdb-update.patch - G 0001-nspawn-fix-truncation-of-machine-names-in-interface-.patch - G 0002-switch-root-umount-the-old-root-correctly.patch - G 0003-bootchart-it-s-not-OK-to-return-1-from-a-main-progra.patch - G 0004-login-set_controller-should-fail-if-prepare_vt-fails.patch - G 0005-sd-resolve-fix-allocation-if-query-ids-never-reuse-t.patch - G 0006-login-share-VT-signal-handler-between-sessions.patch - G 0007-journald-also-increase-the-SendBuffer-of-dev-log-to-.patch - G 0008-mount-setup-fix-counting-of-early-mounts-without-SMA.patch - G 0009-journald-Fix-off-by-one-error-in-Missed-X-kernel-mes.patch - G 0010-machine_kill-Don-t-kill-the-unit-when-killing-the-le.patch - G 0011-units-fix-BindsTo-logic-when-applied-relative-to-ser.patch - G 0012-util-try-to-be-a-bit-more-NFS-compatible-when-checki.patch - G 0001-hwdb-keymaps-for-Samsung-900X3E-900X3F.patch - G 0002-Add-hwdb-entry-for-Samsung-Series-7-Ultra.patch - G 0003-keymap-Fix-HP-Pavillon-DV7.patch - G 0004-hwdb-update-format-description-and-document-reloadin.patch - G 0008-hwdb-update.patch - G 0001-systemctl-Correct-error-message-printed-when-bus_pro.patch - G 0002-units-order-systemd-fsck-.service-after-local-fs-pre.patch - G 0003-keymap-Adjust-for-more-Samsung-900X4-series.patch - G 0001-login-fix-memory-leak-on-DropController.patch - G 0002-util-fix-minimal-race-where-we-might-miss-SIGTERMs-w.patch - G 0003-sd-journal-properly-convert-object-size-on-big-endia.patch - G 0004-sd-journal-verify-that-object-start-with-the-field-n.patch - G 0001-nspawn-fix-network-interface.patch - G 0001-completion-filter-templates-from-restartable-units.patch - G 0002-systemd-fix-error-message.patch - G 0003-Quote-unit-names-in-suggested-systemctl-commandlines.patch - G 0004-config-parser-fix-mem-leak.patch - G 0005-login-fix-mem-leak.patch - G 0001-login-simplify-controller-handling.patch - G 0001-initrd-parse-etc.service-ignore-return-code-of-daemo.patch - G 0008-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0009-hwdb-update.patch - G 0001-systemctl-allow-to-change-the-default-target-without.patch - G 0001-activate-fix-fd-leak-in-do_accept.patch - G 0002-analyze-avoid-a-null-dereference.patch - G 0003-analyze-fix-mem-leak.patch - G 0004-backlight-Avoid-error-when-state-restore-is-disabled.patch - G 0005-bus-avoid-using-m-kdbus-after-freeing-it.patch - G 0006-bus-unref-buscreds-on-failure.patch - G 0007-core-fix-a-potential-mem-leak.patch - G 0008-core-smack-setup-Actually-allow-for-succesfully-load.patch - G 0009-journal-do-not-leak-mmaps-on-OOM.patch - G 0010-manager-use-correct-cleanup-function.patch - G 0001-core-fix-resource-leak-in-manager_environment_add.patch - G 0002-util-remove-a-unnecessary-check.patch - G 0003-udev-event-explicitly-don-t-read-from-invalid-fd.patch - G 0004-shared-conf-parser.patch - G 0005-logind-fix-typo.patch - G 0006-systemctl-fix-resource-leak-CID-1237747.patch - G 0007-libudev-monitor-warn-if-we-fail-to-request-SO_PASSCR.patch - G 0008-shared-conf-parser-don-t-leak-memory-on-error-in-DEF.patch - G 0009-bus-fix-bus_print_property-to-use-int-for-booleans.patch - G 0001-journal-Do-not-count-on-the-compiler-initializing-fo.patch - G 0002-include-fcntl.h-rather-than-sys-fcntl.h.patch - G 0003-mount-order-options-before-other-arguments-to-mount.patch - G 0004-shared-wtmp-utmp-don-t-clear-store_wtmp-in-utmp_put_.patch - G 0005-shared-label.h-add-missing-stdio.h-include.patch - G 0006-shared-sparse-endian.h-add-missing-byteswap.h-includ.patch - G 0001-login-pause-devices-before-acknowledging-VT-switches.patch - G 0001-nspawn-don-t-try-to-create-veth-link-with-too-long-i.patch - G 0001-socket-introduce-SELinuxContextFromNet-option.patch - G 0002-util-avoid-non-portable-__WORDSIZE.patch - G 0001-Fix-warning-about-unused-variable-with-SELINUX.patch - G 0002-bus-remove-unused-check.patch - G 0001-systemd-tmpfiles-Fix-IGNORE_DIRECTORY_PATH-age-handl.patch - G 0001-logind-add-support-for-Triton2-Power-Button.patch - G 0002-logind-add-support-for-TPS65217-Power-Button.patch - G 0001-shutdownd-clean-up-initialization-of-struct.patch - G 0003-bootchart-parse-userinput-with-safe_atoi.patch - G 0004-bootchart-check-return-of-strftime.patch - G 0005-bootchart-Do-not-try-to-access-data-for-non-existing.patch - G 0001-journalctl-do-not-output-reboot-markers-when-running.patch - G 0002-udev-hwdb-New-Entry-for-Dell-XPS12-9Q33-keyboard.patch - G 0001-core-swap-only-make-configured-units-part-of-swap.ta.patch - G 0009-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0001-virt-detect-that-we-are-running-inside-the-docker-co.patch - G 0002-bootchart-use-n-a-if-PRETTY_NAME-is-not-found.patch - G 0003-fileio-label-return-error-when-writing-fails.patch - G 0001-sd-event-don-t-require-a-signal-event-source-to-be-e.patch - G 0004-sd-event-check-the-value-of-received-signal.patch - G 0005-sd-id128-do-stricter-checking-of-random-boot-id.patch - G 0001-keymap-Fix-touchpad-toggle-on-Toshiba-Satellite-P75-.patch - G 0001-units-introduce-network-pre.target-as-place-to-hook-.patch - G 0002-keymap-Fix-touchpad-toggle-key-on-Asus-laptops.patch - G 0003-sd-bus-check-return-value-of-vasprintf.patch - G 0004-core-map-the-rescue-argument-to-rescue.target.patch - G 0005-util-avoid-double-close-of-fd.patch - G 0001-systemctl-when-mangle-unit-names-for-the-isolate-suf.patch - G 0001-tmpfiles-compare-return-against-correct-errno.patch - G 0001-shell-completion-fix-completion-of-inactive-units.patch - G 0002-shell-completion-propose-templates-for-disable-re-en.patch - G 0003-man-we-don-t-have-Wanted-dependency.patch - G 0004-selinux-fix-potential-double-free-crash-in-child-pro.patch - G 0001-systemd-continue-switch-root-even-if-umount-fails.patch - G 0002-systemd-try-harder-to-bind-to-notify-socket.patch - G 0001-strv-add-an-additional-overflow-check-when-enlarging.patch - G 0002-hwdb-Add-mapping-for-special-keys-on-compaq-ku-0133-.patch - G 0003-journald-add-CAP_MAC_OVERRIDE-in-journald-for-SMACK-.patch - G 0004-journal-do-server_vacuum-for-sigusr1.patch - G 0005-cryptsetup-fix-an-OOM-check.patch - G 0002-shutdown-pass-own-argv-to-run-initramfs-shutdown.patch - G 0001-manager-Linux-on-hppa-has-fewer-rtsigs-hence-avoid-u.patch - G 0002-time-also-support-infinity-syntax-in-parse_nsec.patch - G 0003-time-earlier-exit-from-format_timestamp_relative-on-.patch - G 0004-sd-bus-if-we-don-t-manage-to-properly-allocate-the-e.patch - G 0005-journalctl-correct-help-text-for-until.patch - G 0006-calendarspec-fix-typo-in-annually.patch - G 0007-systemctl-do-not-ignore-errors-in-symlink-removal.patch - G 0008-util-introduce-sethostname_idempotent.patch - G 0009-util-fix-copy-paste-error-and-actually-set-the-new-h.patch - G 0010-shutdown-do-final-unmounting-only-if-not-running-ins.patch - G 0011-selinux-make-sure-we-do-not-try-to-print-missing-fie.patch - G 0012-manager-do-not-print-anything-while-passwords-are-be.patch - G 0001-sd-bus-properly-handle-removals-of-non-existing-matc.patch - G 0002-keymap-Ignore-brightness-keys-on-Dell-Inspiron-1520-.patch - G 0001-core-don-t-allow-enabling-if-unit-is-masked.patch - G 0002-snapshot-return-error-when-snapshot-exists.patch - G 0003-shared-install-avoid-prematurely-rejecting-missing-u.patch - G 0004-Raise-level-of-Found-dependency.-lines.patch - G 0005-units-order-sd-journal-flush-after-sd-remount-fs.patch - G 0006-journald-fix-minor-memory-leak.patch - G 0007-journald-also-check-journal-file-size-to-deduce-if-i.patch - G 0008-journald-fix-memory-leak-on-error-path.patch - G 0009-units-make-systemd-journald.service-Type-notify.patch - G 0010-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0001-login-rerun-vconsole-setup-when-switching-from-vgaco.patch - G 0002-shutdown-fix-arguments-to-run-initramfs-shutdown.patch - G 0003-utf8-when-looking-at-the-next-unichar-honour-the-siz.patch - G 0001-keymap-Add-support-for-IBM-ThinkPad-X41-Tablet.patch - G 0002-keymap-Fix-special-keys-on-ThinkPad-X60-X61-Tablet.patch - G 0001-systemctl-let-list-units-unit-files-honour-type.patch - G 0002-systemctl-obey-state-in-list-unit-files.patch - G 0002-core-watchdog-bus-properties-cannot-be-both-writable.patch - G 0003-sd-bus-refuse-properties-that-claim-to-be-both-writa.patch - G 0001-units-make-sure-rfkill-service-is-bount-to-the-actua.patch - G 0001-selinux-access-fix-broken-ternary-operator.patch - G 0002-systemctl-show-BindsTo-BoundBy-in-list-dependencies.patch - G 0003-cryptsetup-default-to-no-hash-when-keyfile-is-specif.patch - G 0004-core-fix-transaction-destructiveness-check-once-more.patch - G 0001-units-tmpfiles-setup-dev-allow-unsafe-file-creation-.patch - G 0002-man-tmpfiles.d-recommend-using-b-and-c.patch - G 1009-cdrom_id-use-the-old-MMC-fallback.patch - G 1010-udev-increase-result-size-for-programs.patch - G 1014-udev-update-net_id-comments.patch - G 1015-udev-persistent-naming-we-cannot-use-virtio-numbers-.patch - G 1016-udev-warn-when-name_to_handle_at-is-not-implemented.patch - G 1017-udev-serialize-synchronize-block-device-event-handli.patch - G 1018-udev-do-not-skip-the-execution-of-RUN-when-renaming-.patch - G 1019-udev-avoid-use-of-uninitialized-err.patch - G 1020-udev-keyboard-also-hook-into-change-events.patch - G 1022-udev-remove-seqnum-API-and-all-assumptions-about-seq.patch - G 1023-udev-builtin-keyboard-do-tell-on-which-device-EVIOCS.patch - G 1024-udev-always-close-lock-file-descriptor.patch - G 1025-udev-exclude-device-mapper-from-block-device-ownersh.patch - G 1026-udevd-inotify-modernizations.patch - G 1027-udev-synthesize-change-events-for-partitions-when-to.patch - G 1028-udev-link-config-fix-mem-leak.patch - G 1029-udev-try-first-re-reading-the-partition-table.patch - G 1030-udev-guard-REREADP-logic-with-open-O_ECXL.patch - G 1031-udev-make-sure-we-always-get-change-for-the-disk.patch - G 1032-udev-guard-REREADPT-by-exclusive-lock-instead-of-O_E.patch - G 1033-udev-really-exclude-device-mapper-from-block-device.patch - G 1034-udev-check-the-return-value-from-udev_enumerate_scan.patch - G 1038-udev-fix-invalid-free-in-enable_name_policy.patch - G 1039-udevadm-settle-fixed-return-code-for-empty-queue.patch - G 1041-libudev-fix-udev_queue_get_queue_is_empty-logic.patch - G 1042-libudev-queue-provide-file-descriptor-to-watch-busy-.patch - G 1043-libudev-queue-watch-entire-directory-to-allow-the-re.patch - G 1044-rules-update-qemu-hid-rules.patch - G 1045-rules-don-t-enable-usb-pm-for-Avocent-devices.patch - G 1047-udev-net_setup_link-builtin-should-print-the-reason-.patch - G 1048-udev-net_setup_link-add-a-bit-more-logging.patch - G 1049-udev-link_config-ignore-errors-due-to-missing-MAC-ad.patch - G 1052-rules-uaccess-add-ID_SOFTWARE_RADIO.patch - G 1054-udev-exclude-MD-from-block-device-ownership-event-lo.patch - G 1056-udevd-add-event-timeout-commandline-option.patch - G 1057-udev-unify-event-timeout-handling.patch - G 1058-udev-unify-event-timeout-handling.patch - G 1059-udev-fixup-commit-dd5eddd28a74a49607a8fffcaf960040db.patch - G 1061-rules-allow-systemd-to-manage-loop-device-partitions.patch - G 1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch - G 1064-udev-hwdb-do-not-look-at-usb_device-parents.patch - G 1065-udev-bump-event-timeout-to-60-seconds.patch - G 1067-udev-always-resolve-correctly-database-names-on-chan.patch - G 1068-udev-net_setup_link-export-the-.link-filename-applie.patch - G 1069-rules-net-setup-link-preserve-ID_NET_LINK_FILE-and-I.patch - G 1070-rules-net-setup-link-remove-stray-linebreak.patch - G 1071-udev-import-the-full-db-on-MOVE-events-for-devices-w.patch - G 1072-udev-netif_rename-don-t-log-to-kmsg.patch - G 1073-udev-drop-print_kmsg.patch - G 1074-udev-fix-copy-paste-error-in-log-message.patch - G 1075-udev-timeout-increase-timeout.patch - G 1076-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch - G 1077-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch - G 1078-udev-remove-userspace-firmware-loading-support.patch - G 1079-udev-remove-userspace-firmware-loading-support.patch - G 1080-udevd-parse_argv-warn-if-argumens-are-invalid.patch - G 1081-udevd-check-return-of-various-functions.patch - G 1082-udevadm-hwdb-check-return-value-of-fseeko.patch - G 1083-udev-node-warn-if-chmod-chown-fails.patch - G 1084-udev-ctrl-log-if-setting-SO_PASSCRED-fails.patch - G 1085-udev-fix-typos.patch - G 1086-udevd-don-t-fail-if-run-udev-exists.patch - G 1089-fix-cgroup-device-controller.patch - G 1090-udev-path_id-set-supported_parent-for-well-known-SCS.patch - G 1091-udev-path_id-update-comments.patch - G 1092-libudev-do-not-accept-invalid-log-levels.patch - G 1093-udev-Fix-parsing-of-udev.event-timeout-kernel-parame.patch - G 1094-udev-avoid-magic-constants-in-kernel-cmdline-parsers.patch - G 1098-udev-link_setup-respect-kernel-name-assign-policy.patch - ------------------------------------------------------------------- Wed Jan 7 11:44:27 UTC 2015 - arvidjaar@gmail.com diff --git a/systemd-mini.spec b/systemd-mini.spec index 3399d28d..015e1e0c 100644 --- a/systemd-mini.spec +++ b/systemd-mini.spec @@ -1,7 +1,7 @@ # # spec file for package systemd-mini # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -23,9 +23,8 @@ %define udevpkgname udev-mini %define udev_major 1 %bcond_without bash_completion +%bcond_without compat_libs %bcond_with networkd -%bcond_without sysvcompat -%bcond_with resolved %bcond_with python %bcond_with parentpathid %ifarch %{ix86} x86_64 aarch64 @@ -46,7 +45,7 @@ Name: systemd-mini Url: http://www.freedesktop.org/wiki/Software/systemd -Version: 219 +Version: 210 Release: 0 Summary: A System and Session Manager License: LGPL-2.1+ @@ -57,69 +56,112 @@ Provides: %{real} = %{version}-%{release} BuildRequires: acl BuildRequires: audit-devel -BuildRequires: autoconf -BuildRequires: automake +%if %{with compat_libs} +# See gold_archs in binutils.spec +%ifarch %ix86 %arm x86_64 ppc ppc64 ppc64le %sparc +BuildRequires: binutils-gold +%endif +%endif +BuildRequires: config(suse-module-tools) +%if ! 0%{?bootstrap} +BuildRequires: docbook-xsl-stylesheets +%endif BuildRequires: fdupes +%if ! 0%{?bootstrap} +BuildRequires: gobject-introspection-devel +%endif BuildRequires: gperf +%if ! 0%{?bootstrap} BuildRequires: gtk-doc +%endif BuildRequires: intltool BuildRequires: libacl-devel BuildRequires: libcap-devel +BuildRequires: libkmod-devel BuildRequires: libsepol-devel BuildRequires: libtool +%if ! 0%{?bootstrap} +BuildRequires: libusb-devel +BuildRequires: libxslt-tools +%endif BuildRequires: pam-devel +%if 0%{?suse_version} > 1310 BuildRequires: systemd-rpm-macros +%endif +%if 0%{?suse_version} <= 1315 +BuildRequires: tcpd-devel +%endif BuildRequires: xz -BuildRequires: config(suse-module-tools) -BuildRequires: pkgconfig(blkid) >= 2.24 +BuildRequires: pkgconfig(blkid) >= 2.20 +%if ! 0%{?bootstrap} +BuildRequires: libgcrypt-devel +%if %{with python} +BuildRequires: python +%endif +BuildRequires: pkgconfig(glib-2.0) >= 2.22.0 +BuildRequires: pkgconfig(libcryptsetup) >= 1.6.0 +%endif +%if 0%{?suse_version} <= 1310 +BuildRequires: pkgconfig(libkmod) >= 14 +%else BuildRequires: pkgconfig(libkmod) >= 15 +%endif BuildRequires: pkgconfig(liblzma) +%if ! 0%{?bootstrap} +BuildRequires: pkgconfig(libmicrohttpd) +%endif BuildRequires: pkgconfig(libpci) >= 3 BuildRequires: pkgconfig(libpcre) -BuildRequires: pkgconfig(mount) >= 2.20 +%if ! 0%{?bootstrap} +BuildRequires: pkgconfig(libqrencode) +BuildRequires: pkgconfig(usbutils) >= 0.82 +%endif +%if 0%{?suse_version} >= 1315 %ifarch %ix86 x86_64 x32 %arm ppc64le s390x BuildRequires: pkgconfig(libseccomp) %endif +%else +%if 0%{?suse_version} >= 1310 +%ifarch %ix86 x86_64 x32 %arm +BuildRequires: pkgconfig(libseccomp) +%endif +%endif +%endif +%if ! 0%{?bootstrap} +BuildRequires: libapparmor-devel +%endif BuildRequires: pkgconfig(libselinux) >= 2.1.9 BuildRequires: pkgconfig(libsepol) +%if 0%{?suse_version} > 1310 Conflicts: sysvinit +%endif %if 0%{?bootstrap} #!BuildIgnore: dbus-1 Requires: this-is-only-for-build-envs Conflicts: systemd Conflicts: kiwi %else -BuildRequires: docbook-xsl-stylesheets -BuildRequires: gobject-introspection-devel -BuildRequires: gtk-doc -BuildRequires: libgcrypt-devel -BuildRequires: libusb-devel -BuildRequires: libxslt-tools -%if %{with python} -BuildRequires: python -%endif -BuildRequires: libapparmor-devel -BuildRequires: pkgconfig(glib-2.0) >= 2.22.0 -BuildRequires: pkgconfig(libcryptsetup) >= 1.6.0 -BuildRequires: pkgconfig(libmicrohttpd) -BuildRequires: pkgconfig(libqrencode) -BuildRequires: pkgconfig(usbutils) >= 0.82 # the buildignore is important for bootstrapping #!BuildIgnore: udev Requires: %{udevpkgname} >= 172 Recommends: %{name}-bash-completion Requires: dbus-1 >= 1.4.0 Requires: kbd +%if 0%{?suse_version} <= 1310 +Requires: kmod >= 14 +%else Requires: kmod >= 15 +%endif Requires: netcfg Requires: pam-config >= 0.79-5 -BuildRequires: pam-config >= 0.79-5 Requires: pwdutils Requires: systemd-presets-branding Requires: sysvinit-tools -Requires: util-linux >= 2.25 +Requires: util-linux >= 2.21 Requires(post): coreutils Requires(post): findutils +%endif +%if ! 0%{?bootstrap} Requires(post): pam-config >= 0.79-5 %endif Requires(pre): /usr/bin/getent @@ -131,31 +173,47 @@ Conflicts: filesystem < 11.5 Conflicts: mkinitrd < 2.7.0 Obsoletes: systemd-analyze < 201 Provides: systemd-analyze = %{version} - -#Git-Clone: git://anongit.freedesktop.org/systemd/systemd -Source: http://freedesktop.org/software/systemd/systemd-%version.tar.xz +Source0: http://www.freedesktop.org/software/systemd/systemd-%{version}.tar.xz %if ! 0%{?bootstrap} Source1: systemd-rpmlintrc %else Source1: systemd-mini-rpmlintrc %endif +Source2: localfs.service Source3: systemd-sysv-convert Source6: baselibs.conf Source7: libgcrypt.m4 +Source8: systemd-journald.init Source9: nss-myhostname-config Source10: macros.systemd.upstream Source11: after-local.service +Source1060: boot.udev Source1063: udev-generate-persistent-rule.sh +Source1064: systemd-sleep-grub Source1065: systemd-remount-tmpfs +# +# PATCH-FIX-UPSTREAM avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch lnussel@suse.com bnc#791101 -- avoid assertion if invalid address familily is passed to gethostbyaddr_r +Patch0: avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch +# PATCH-FIX-UPSTREAM optionally-warn-if-nss-myhostname-is-called.patch lnussel@suse.com -- optionally warn if nss-myhostname is called +Patch1: optionally-warn-if-nss-myhostname-is-called.patch # handle SUSE specific kbd settings Patch3: handle-disable_caplock-and-compose_table-and-kbd_rate.patch Patch4: handle-numlock-value-in-etc-sysconfig-keyboard.patch Patch6: insserv-generator.patch +Patch7: service-flags-sysv-service-with-detected-pid-as-RemainAfte.patch +Patch8: module-load-handle-SUSE-etc-sysconfig-kernel-module-list.patch +Patch9: remain_after_exit-initscript-heuristic-and-add-new-LSB-hea.patch Patch12: Fix-run-lock-directories-permissions-to-follow-openSUSE-po.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch13: 0001-units-systemd-sysctl.service.in-run-after-load-modul.patch +Patch15: timedate-add-support-for-openSUSE-version-of-etc-sysconfig.patch Patch16: fix-support-for-boot-prefixed-initscript-bnc-746506.patch Patch17: restore-var-run-and-var-lock-bind-mount-if-they-aren-t-sym.patch +Patch18: fix-owner-of-var-log-btmp.patch +# PATCH-FIX-UPSTREAM Avoid error message about not existing getty@3270 file +Patch19: 0004-getty-generator-properly-escape-instance-names.patch # PATCH-FIX-OPENSUSE ensure-ask-password-wall-starts-after-getty-tty1.patch -- don't start getty on tty1 until all password request are done Patch5: ensure-ask-password-wall-starts-after-getty-tty1.patch @@ -163,11 +221,14 @@ Patch5: ensure-ask-password-wall-starts-after-getty-tty1.patch Patch20: handle-root_uses_lang-value-in-etc-sysconfig-language.patch # PATCH-FIX-OPENSUSE allow-multiple-sulogin-to-be-started.patch bnc#793182 fcrozat@suse.com -- handle multiple sulogin Patch21: allow-multiple-sulogin-to-be-started.patch +# PATCH-FIX-OPENSUSE handle-SYSTEMCTL_OPTIONS-environment-variable.patch bnc#798620 fcrozat@suse.com -- handle SYSTEMCTL_OPTIONS environment variable +Patch22: handle-SYSTEMCTL_OPTIONS-environment-variable.patch # PATCH-FIX-OPENSUSE apply-ACL-for-nvidia-device-nodes.patch bnc#808319 -- set ACL on nvidia devices Patch27: apply-ACL-for-nvidia-device-nodes.patch # PATCH-FIX-OPENSUSE apply-ACL-for-nvidia-uvm-device-node.patch bnc#879767 -- set ACL on nvidia-uvm device Patch28: apply-ACL-for-nvidia-uvm-device-node.patch -Patch37: suse-sysv-bootd-support.diff +# PATCH-FIX-OPENSUSE Revert-service-drop-support-for-SysV-scripts-for-the-early.patch fcrozat@suse.com -- handle boot.* initscripts +Patch37: Revert-service-drop-support-for-SysV-scripts-for-the-early.patch # PATCH-FIX-OPENSUSE systemd-tmp-safe-defaults.patch FATE#314974 max@suse.de -- Return to SUSE's "safe defaults" policy on deleting files from tmp direcorie. Patch39: systemd-tmp-safe-defaults.patch # PATCH-FIX-OPENSUSE sysctl-handle-boot-sysctl.conf-kernel_release.patch bnc#809420 fcrozat@suse.com -- handle /boot/sysctl.conf- file @@ -180,10 +241,18 @@ Patch42: systemd-pam_config.patch # Never add any patches to this package without the upstream commit id # in the patch. Any patches added here without a very good reason to make # an exception will be silently removed with the next version update. +# PATCH-FIX-OPENSUSE disable-nss-myhostname-warning-bnc-783841.diff lnussel@suse.de -- disable nss-myhostname warning (bnc#783841) +Patch23: disable-nss-myhostname-warning-bnc-783841.patch +# PATCH-FIX-OPENSUSE handle-HOSTNAME.patch fcrozat@suse.com -- handle /etc/HOSTNAME (bnc#803653) +Patch24: handle-etc-HOSTNAME.patch # PATCH-FIX-OPENSUSE forward to pm-utils -- until boo#904828 is addressed Patch25: Forward-suspend-hibernate-calls-to-pm-utils.patch # PATCH-FIX-UPSTREAM rules-add-lid-switch-of-ARM-based-Chromebook-as-a-power-sw.patch rjschwei@suse.com -- add lid switch of ARM based Chromebook as a power switch to logind Patch38: rules-add-lid-switch-of-ARM-based-Chromebook-as-a-power-sw.patch +# PATCH-FIX-OPENSUSE use-usr-sbin-sulogin-for-emergency-service.patch arvidjaar@gmail.com -- fix path to sulogin +Patch46: use-usr-sbin-sulogin-for-emergency-service.patch +# PATCH-FIX-OPENSUSE Make systemd talk with dbus-daemon even on big endian +Patch47: 0001-sd-bus-don-t-look-for-a-64bit-value-when-we-only-hav.patch # PATCH-FIX-OPENSUSE make-emergency.service-conflict-with-syslog.socket.patch (bnc#852232) Patch84: make-emergency.service-conflict-with-syslog.socket.patch # PATCH-FIX-SUSE 0001-add-hdflush-for-reboot-or-hddown-for-poweroff.patch @@ -192,8 +261,126 @@ Patch86: 0001-add-hdflush-for-reboot-or-hddown-for-poweroff.patch Patch90: 0001-On_s390_con3270_disable_ANSI_colour_esc.patch # PATCH-FIX-SUSE plymouth-quit-and-wait-for-emergency-service.patch -- Make sure that no plymouthd is locking the tty Patch91: plymouth-quit-and-wait-for-emergency-service.patch +# PATCH-FIX-SUSE 0001-Don-t-snprintf-a-potentially-NULL-pointer.patch -- Avoid systemd crash on resume (bnc#861488) +Patch93: 0001-Don-t-snprintf-a-potentially-NULL-pointer.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch114: 0008-Reset-signal-mask-on-re-exec-to-init.patch +# PATCH-FIX-SUSE 0001-make-209-working-on-older-dist.patch werner@suse.com +Patch117: 0001-make-209-working-on-older-dist.patch +# PATCH-FIX-SUSE 0001-make-fortify-happy-with-ppoll.patch werner@suse.com +Patch119: 0001-make-fortify-happy-with-ppoll.patch # PATCH-FIX-SUSE 0001-avoid-abort-due-timeout-at-user-service.patch werner@suse.com Patch120: 0001-avoid-abort-due-timeout-at-user-service.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch121: 0001-login-fix-pos-array-allocation.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch122: 0002-login-set-pos-slot-to-fallback-on-pos-eviction.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch123: 0003-login-Allow-calling-org.freedesktop.login1.Seat.Swit.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch124: 0004-fix-typo-in-iDRAC-network-interface-name-irdac-idrac.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch125: 0005-Replace-var-run-with-run-in-remaining-places.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch126: 0006-Revert-back-to-var-run-at-a-couple-of-problems.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch127: 0007-README-document-that-var-run-must-be-a-symlink-run.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch128: 0008-Use-var-run-dbus-system_bus_socket-for-the-D-Bus-soc.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch129: 0009-mount-don-t-send-out-PropertiesChanged-message-if-ac.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch130: 0010-mount-don-t-fire-PropertiesChanged-signals-for-mount.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch131: 0011-logs-show-fix-corrupt-output-with-empty-messages.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch132: 0012-journalctl-refuse-extra-arguments-with-verify-and-si.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch133: 0014-nspawn-fix-detection-of-missing-proc-self-loginuid.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch134: 0001-Fix-systemd-stdio-bridge-symlink.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch135: 0002-execute-free-directory-path-if-we-fail-to-remove-it-.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch136: 0003-Do-not-print-invalid-UTF-8-in-error-messages.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch137: 0004-man-document-missing-options-of-systemd-run.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch138: 0005-systemd-run-add-some-extra-safety-checks.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch139: 0006-journal-assume-that-next-entry-is-after-previous-ent.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch140: 0007-journal-forget-file-after-encountering-an-error.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch141: 0008-core-correctly-unregister-PIDs-from-PID-hashtables.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch142: 0009-logind-fix-reference-to-systemd-user-sessions.servic.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch143: 0010-man-update-link-to-LSB.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch144: 0011-man-systemd-bootchart-fix-spacing-in-command.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch145: 0012-man-add-missing-comma.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch146: 0013-units-Do-not-unescape-instance-name-in-systemd-backl.patch +# PATCH-FIX-USTREAM added at 2014/03/11 +Patch147: 0001-core-busname-add-lookup-string-for-BUSNAME_FAILURE_S.patch +# PATCH-FIX-USTREAM added at 2014/03/11 +Patch148: 0002-manager-flush-memory-stream-before-using-the-buffer.patch +# PATCH-FIX-USTREAM added at 2014/03/11 +Patch149: 0003-busname-don-t-drop-service-from-the-result-string.patch +# PATCH-FIX-USTREAM added at 2014/03/11 +Patch150: 0004-fix-off-by-one-error-in-array-index-assertion.patch +# PATCH-FIX-USTREAM added at 2014/03/11 +Patch151: 0005-logind-fix-policykit-checks.patch +# PATCH-FIX-USTREAM added at 2014/03/11 +Patch152: 0006-rules-mark-loop-device-as-SYSTEMD_READY-0-if-no-file.patch +# PATCH-FIX-USTREAM added at 2014/03/11 +Patch153: 0008-man-multiple-sleep-modes-are-to-be-separated-by-whit.patch +# PATCH-FIX-USTREAM added at 2014/03/18 +Patch154: 0001-gpt-auto-generator-don-t-return-OOM-on-parentless-de.patch +# PATCH-FIX-USTREAM added at 2014/03/18 +Patch155: 0002-bus-fix-memory-leak-when-kdbus-is-not-enabled.patch +# PATCH-FIX-USTREAM added at 2014/03/18 +Patch157: 0006-Do-not-return-1-EINVAL-on-allocation-error.patch +# PATCH-FIX-USTREAM added at 2014/03/18 +Patch158: 0007-networkd-fix-typo.patch +# PATCH-FIX-USTREAM added at 2014/03/18 +Patch159: 0008-sd-bus-don-t-access-invalid-memory-if-a-signal-match.patch +# PATCH-FIX-USTREAM added at 2014/03/18 +Patch160: 0009-sd-bus-don-t-choke-if-somebody-sends-us-a-message-wi.patch +# PATCH-FIX-USTREAM added at 2014/03/18 +Patch161: 0012-journald-remove-stray-reset-of-error-return-value.patch +# PATCH-FIX-USTREAM added at 2014/03/18 +Patch162: 0013-core-libsystemd-systemd-timedate-udev-spelling-fixes.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch163: 0001-cgroup-it-s-not-OK-to-invoke-alloca-in-loops.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch164: 0002-machined-fix-Kill-bus-call-on-machine-objects-when-w.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch165: 0003-sd-bus-don-t-use-assert_return-to-check-for-disconne.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch166: 0004-core-don-t-try-to-relabel-mounts-before-we-loaded-th.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch167: 0005-sd-daemon-fix-incorrect-variable-access.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch168: 0006-sd-event-initialization-perturbation-value-right-bef.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch169: 0007-sd-event-don-t-accidentally-turn-of-watchdog-timer-e.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch170: 0008-systemctl-kill-mode-is-long-long-gone-don-t-mention-.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch171: 0009-ask-password-when-the-user-types-a-overly-long-passw.patch +# PATCH-FIX-USTREAM added at 2014/04/08 +Patch172: 0001-journal-fix-export-of-messages-containing-newlines.patch +# PATCH-FIX-USTREAM added at 2014/04/08 +Patch173: 0002-systemctl-update-NAME-to-PATTERN-in-help.patch +# PATCH-FIX-USTREAM added at 2014/04/08 +Patch174: 0003-tty-ask-password-agent-return-negative-errno.patch +# PATCH-FIX-USTREAM added at 2014/04/08 +Patch175: 0004-systemd-python-use-.hex-instead-of-.get_hex.patch +# PATCH-FIX-USTREAM added at 2014/04/08 +Patch176: 0005-systemd-python-fix-failing-assert.patch # PATCH-FIX-OPENSUSE 0009-make-xsltproc-use-correct-ROFF-links.patch -- Make ROFF links working again in manual pages (bnc#842844) Patch177: 0009-make-xsltproc-use-correct-ROFF-links.patch # PATCH-FIX-OPENSUSE 0010-do-not-install-sulogin-unit-with-poweroff.patch -- Avoid installing console-shell.service (bnc#849071) @@ -202,6 +389,8 @@ Patch178: 0010-do-not-install-sulogin-unit-with-poweroff.patch Patch179: 0001-pam_systemd_do_override_XDG_RUNTIME_DIR_of_the_original_user.patch # PATCH-FIX-OPENSUSE 0014-journald-with-journaling-FS.patch Patch180: 0014-journald-with-journaling-FS.patch +# PATCH-FIX-SUSE 0018-Make-LSB-Skripts-know-about-Required-and-Should.patch +Patch181: 0018-Make-LSB-Skripts-know-about-Required-and-Should.patch # PATCH-FIX-SUSE 0019-make-completion-smart-to-be-able-to-redirect.patch Patch182: 0019-make-completion-smart-to-be-able-to-redirect.patch # PATCH-FIX-SUSE 0001-add-network-device-after-NFS-mount-units.patch werner@suse.com @@ -210,6 +399,8 @@ Patch183: 0001-add-network-device-after-NFS-mount-units.patch Patch185: systemd-powerd-initctl-support.patch # PATCH-FIX-SUSE systemctl-set-default-target.patch Patch186: systemctl-set-default-target.patch +# PATCH-FIX-SUSE prepare-suspend-to-disk.patch (fate #316824) +Patch187: prepare-suspend-to-disk.patch # PATCH-FIX-SUSE boot-local-start.patch (bnc #869142) Patch188: boot-local-start.patch # PATCH-FIX-SUSE avoid random hangs on timeouts due lost cwd at terminating user manager @@ -222,38 +413,657 @@ Patch191: systemd-dbus-system-bus-address.patch Patch192: let-linker-find-libudev-for-libdevmapper.patch # PATCH-FIX-SUSE Make sure that rpcbind socket as well as service is up with the target Patch193: portmap-wants-rpcbind-socket.patch +# PATCH-FIX-USTREAM added at 2014/03/11 +Patch194: 0007-dbus-suppress-duplicate-and-misleading-messages.patch +# PATCH-FIX-USTREAM added at 2014/03/14 +Patch195: 0001-reduce-the-amount-of-messages-logged-to-dev-kmsg-whe.patch +# PATCH-FIX-SUSE Do not clean the data base files of the manual pages +Patch196: tmpfiles-do-not-clean-for-mandb-index-files.patch # PATCH-FIX-SUSE Avoid that emergency and rescue sulogin are fighting on console Patch197: rescue-emergency-target-conflicts.patch # PATCH-FIX-SUSE Avoid a divide by zero sigtrap Patch198: avoid-divide-by-zero-sigtrap.patch +# PATCH-FIX-USTREAM added at 2014/04/28 +Patch199: 0001-bash-completion-fix-__get_startable_units.patch +# PATCH-FIX-USTREAM added at 2014/04/28 +Patch200: 0002-sysctl-replaces-some-slashes-with-dots.patch +# PATCH-FIX-USTREAM added at 2014/04/28 +Patch201: 0003-delta-do-not-use-unicode-chars-in-C-locale.patch +# PATCH-FIX-USTREAM added at 2014/04/28 +Patch202: 0004-implement-a-union-to-pad-out-file_handle.patch # PATCH-FIX-SUSE System fails to boot if nfs mounts get added to fstab (bnc#874665) Patch203: respect-nfs-bg-option.patch +# PATCH-FIX-UPSTREAM Stop useless messages on dual_timestamp_is_set is failed. +Patch204: shut-up-annoying-assertion-monotonic-clock-message.patch +# PATCH-FIX-UPSTREAM Fix uninitialized memory +Patch206: 0001-sd-rtnl-message-append-fix-uninitialized-memory.patch +# PATCH-FIX-UPSTREAM Make systemd user journal accessible by users (bnc#876694) +Patch207: 0001-tmpfiles-fix-permissions-on-new-journal-files.patch # PATCH-FIX-SUSE Do not ignores option 'noauto' in /etc/crypttab (bnc#742774) Patch208: parse-crypttab-for-noauto-option.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch209: 0001-errno-make-sure-to-handle-the-3-errnos-that-are-alia.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch211: 0003-analyze-fix-plot-with-bad-y-size.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch212: 0004-job-add-waiting-jobs-to-run-queue-in-unit_coldplug.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch213: 0005-job-always-add-waiting-jobs-to-run-queue-during-cold.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch214: 0001-backlight-Avoid-restoring-brightness-to-an-unreadabl.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch215: 0002-backlight-do-nothing-if-max_brightness-is-0.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch216: 0003-backlight-unify-error-messages.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch217: 0004-backlight-warn-if-kernel-exposes-backlight-device-wi.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch218: 0005-backlight-handle-saved-brightness-exceeding-max-brig.patch +# PATCH-FIX-SUSE Do not poison kmsg ring buffer with systemd/udev messages (bnc#877021) +Patch219: log-target-null-instead-kmsg.patch +# PATCH-FIX-UPSTREAM added at 2014/05/14 +Patch220: 0001-replace-more-dup-by-F_DUPFD_CLOEXEC.patch +# PATCH-FIX-UPSTREAM added at 2014/05/14 +Patch221: 0002-pam_systemd-use-F_DUPFD_CLOEXEC-when-dupping-session.patch +# PATCH-FIX-UPSTREAM added at 2014/05/16 +Patch222: 0001-core-close-socket-fds-asynchronously.patch +# PATCH-FIX-UPSTREAM added at 2014/05/16 +Patch223: 0002-logind-bring-polkit-policy-for-hibernate-in-line-wit.patch +# PATCH-FIX-UPSTREAM added at 2014/05/16 +Patch224: 0003-core-make-sure-to-serialize-jobs-for-all-units.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch225: 0001-logind-ignore-lid-switch-if-more-than-1-display-is-c.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch226: 0002-logind-fix-printf-format.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch227: 0003-logind-ignore-lid-switch-events-for-30s-after-each-s.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch228: 0004-logind-Do-not-fail-display-count-if-a-device-has-no-.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch229: 0005-logind-move-lid-switch-handling-from-logind-main-to-.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch230: 0006-man-clarify-that-the-ExecReload-command-should-be-sy.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch231: 0007-man-readahead-fix-cmdline-switch-inconsistency-betwe.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch232: 0008-man-update-journald-rate-limit-defaults.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch233: 0009-nspawn-properly-format-container_uuid-in-UUID-format.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch234: 0010-logind-allow-suspending-if-there-are-no-displays.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch235: 0001-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch236: 0002-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch237: 0003-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch238: 0004-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch239: 0005-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch240: 0001-conf-parser-silently-ignore-sections-starting-with-X.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch241: 0002-man-note-that-entire-sections-can-now-be-ignored.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch242: 0004-machined-make-sure-GetMachineAddresses-is-available-.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch243: 0005-core-Filter-by-state-behind-the-D-Bus-API-not-in-the.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch244: 0006-login-add-mir-to-the-list-of-session-types.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch245: 0007-logind-fix-Display-property-of-user-objects.patch +# PATCH-FIX-UPSTREAM added at 2014/05/21 +Patch246: 0001-hwdb-update.patch +# PATCH-FIX-UPSTREAM added at 2014/05/21 +Patch247: 0002-hwdb-update.patch +# PATCH-FIX-UPSTREAM added at 2014/05/21 +Patch248: 0003-hwdb-PCI-include-primary-model-string-in-subsystem-m.patch +# PATCH-FIX-UPSTREAM added at 2014/05/21 +Patch249: 0004-hwdb-update.patch +# PATCH-FIX-UPSTREAM added at 2014/05/21 +Patch250: 0005-hwdb-update.patch +# PATCH-FIX-UPSTREAM added at 2014/05/21 +Patch251: 0001-journal-cleanup-up-error-handling-in-update_catalog.patch +# PATCH-FIX-UPSTREAM added at 2014/05/21 +Patch252: 0002-journal-properly-detect-language-specified-in-line.patch +# PATCH-FIX-UPSTREAM added at 2014/05/21 +Patch253: 0003-man-mention-XDG_CONFIG_HOME-in-systemd.unit.patch +# PATCH-FIX-UPSTREAM added at 2014/05/26 +Patch254: 0001-keymap-Add-Lenovo-Enhanced-USB-Keyboard.patch +# PATCH-FIX-UPSTREAM added at 2014/05/26 +Patch255: 0002-keymap-Asus-EeePC-touchpad-toggle-key.patch +# PATCH-FIX-UPSTREAM added at 2014/05/26 +Patch256: 0001-nspawn-allow-to-bind-mount-journal-on-top-of-a-non-e.patch +# PATCH-FIX-UPSTREAM added at 2014/05/26 +Patch257: 0002-nspawn-restore-journal-directory-is-empty-check.patch +# PATCH-FIX-UPSTREAM added at 2014/05/26 +Patch258: 0003-core-never-consider-failure-when-reading-drop-ins-fa.patch +# PATCH-FIX-UPSTREAM added at 2014/05/26 +Patch259: 0004-socket-properly-handle-if-our-service-vanished-durin.patch +# PATCH-FIX-UPSTREAM added at 2014/05/27 +Patch260: 0001-Do-not-unescape-unit-names-in-Install-section.patch +# PATCH-FIX-UPSTREAM added at 2014/05/27 +Patch261: 0002-analyze-run-use-bus_open_transport_systemd-instead-o.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch262: 0001-virt-rework-container-detection-logic.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch263: 0002-fsck-include-device-name-in-the-message-about-missin.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch264: 0003-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch265: 0004-util-ignore_file-should-not-allow-files-ending-with.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch266: 0006-tty-ask-password-agent-Do-tell-what-directory-we-fai.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch267: 0007-keyboard-add-Plantronics-.Audio-mute-button.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch268: 0001-build-sys-use-glibc-s-xattr-support-instead-of-requi.patch +# PATCH-FIX-UPSTREAM added at 2014/06/05 +Patch269: 0001-hwdb-fix-case-sensitive-match.patch +# PATCH-FIX-UPSTREAM added at 2014/06/06 +Patch270: 0001-sd-event-restore-correct-timeout-behaviour.patch +# PATCH-FIX-UPSTREAM added at 2014/06/06 +Patch271: 0002-bus-make-use-of-sd_bus_try_close-in-exit-on-idle-ser.patch +# PATCH-FIX-UPSTREAM added at 2014/06/11 +Patch272: 0001-umount-modernizations.patch +# PATCH-FIX-UPSTREAM added at 2014/06/11 +Patch273: 0002-namespace-when-setting-up-an-inaccessible-mount-poin.patch +# PATCH-FIX-UPSTREAM added at 2014/06/11 +Patch274: 0003-core-allow-transient-mount-units.patch +# PATCH-FIX-UPSTREAM added at 2014/06/11 - Detect XEN dom0 as well as domU +Patch275: 0004-systemd-detect-virt-only-discover-Xen-domU.patch +# PATCH-FIX-UPSTREAM added at 2014/06/11 +Patch276: 0005-backlight-Do-not-clamp-brightness-for-LEDs.patch +# PATCH-FIX-UPSTREAM added at 2014/06/11 +Patch277: 0006-log-honour-the-kernel-s-quiet-cmdline-argument.patch +# PATCH-FIX-UPSTREAM added at 2014/06/17 +Patch278: 0001-core-fix-invalid-free-in-killall.patch +# PATCH-FIX-UPSTREAM added at 2014/06/17 +Patch279: 0003-install-fix-invalid-free-in-unit_file_mask.patch +# PATCH-FIX-UPSTREAM detect virtualization layers on S390 (bnc#880438) +Patch280: 0001-systemd-detect-virt-detect-s390-virtualization.patch +# PATCH-FIX-UPSTREAM 0001-core-sysvcompat-network-should-be-equivalent-to-netw.patch arvidjaar@gmail.com -- Ensure legacy services are started after network is available +Patch281: 0001-core-sysvcompat-network-should-be-equivalent-to-netw.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch282: 0002-units-add-missing-caps-so-that-GetAddresses-can-work.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch283: 0003-units-order-systemd-tmpfiles-clean.service-after-tim.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch284: 0005-po-add-Greek-translation.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch285: 0006-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch286: 0007-po-add-German-translation.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch287: 0009-core-clean-up-signal-reset-logic-when-reexec.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch288: 0010-util-treat-fuse.sshfs-as-a-network-filesystem.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch289: 0011-build-sys-add-pthread-flag-for-libsystemd-shared.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch290: 0012-core-transaction-avoid-misleading-error-message-when.patch +# PATCH-FIX-UPSTREAM added at 2014/06/25 +Patch291: 0001-vconsole-also-copy-character-maps-not-just-fonts-fro.patch +# PATCH-FIX-UPSTREAM added at 2014/06/25 +Patch292: 0002-core-make-sure-Environment-fields-passed-in-for-tran.patch +# PATCH-FIX-UPSTREAM added at 2014/06/25 +Patch293: 0003-core-You-can-not-put-the-cached-result-of-use_smack-.patch +# PATCH-FIX-UPSTREAM added at 2014/06/25 +Patch294: 0004-cryptsetup-don-t-add-unit-dependency-on-dev-null-dev.patch +# PATCH-FIX-UPSTREAM added at 2014/06/25 +Patch295: 0005-man-fix-path-in-crypttab-5.patch +# PATCH-FIX-UPSTREAM added at 2014/06/26 +Patch296: 0001-units-order-network-online.target-after-network.targ.patch +# PATCH-FIX-UPSTREAM added at 2014/06/26 +Patch297: 0001-core-use-correct-format-string-for-UIDs.patch +# PATCH-FIX-UPSTREAM added at 2014/06/26 +Patch298: 0002-core-transaction-fix-cycle-break-attempts-outside-tr.patch +# PATCH-FIX-UPSTREAM added at 2014/06/26 +Patch299: 0003-fsck-consider-a-fsck-implementation-linked-to-bin-tr.patch +# PATCH-FIX-UPSTREAM added at 2014/07/01 +Patch300: 0001-main-uid_to_name-might-fail-due-to-OOM-protect-again.patch +# PATCH-FIX-UPSTREAM added at 2014/07/01 +Patch301: 0002-journald-make-MaxFileSec-really-default-to-1month.patch +# PATCH-FIX-UPSTREAM added at 2014/07/01 +Patch302: 0003-units-remove-RefuseManualStart-from-units-which-are-.patch +# PATCH-FIX-UPSTREAM added at 2014/07/01 +Patch303: 0004-util-refuse-considering-UID-0xFFFF-and-0xFFFFFFFF-va.patch +# PATCH-FIX-UPSTREAM added at 2014/07/01 +Patch304: 0005-nspawn-block-open_by_handle_at-and-others-via-seccom.patch +# PATCH-FIX-UPSTREAM added at 2014/07/01 +Patch305: 0006-tmpfiles-don-t-do-automatic-cleanup-in-XDG_RUNTIME_D.patch +# PATCH-FIX-UPSTREAM added at 2014/07/01 +Patch306: 0007-units-skip-mounting-tmp-if-it-is-a-symlink.patch +# PATCH-FIX-UPSTREAM added at 2014/07/03 +Patch307: 0001-parse_uid-return-ENXIO-for-1-uids.patch +# PATCH-FIX-UPSTREAM added at 2014/07/03 +Patch308: 0002-util-when-unescaping-strings-don-t-allow-smuggling-i.patch +# PATCH-FIX-UPSTREAM added at 2014/07/03 +Patch309: 0003-localed-consider-an-unset-model-as-a-wildcard.patch +# PATCH-FIX-UPSTREAM added at 2014/07/03 +Patch310: 0004-sd-bus-when-an-event-loop-terminates-explicitly-clos.patch +# PATCH-FIX-UPSTREAM added at 2014/07/03 +Patch311: 0005-bus-close-a-bus-that-failed-to-connect.patch +# PATCH-FIX-UPSTREAM added at 2014/07/04 +Patch312: 0006-hwdb-update.patch +# PATCH-FIX-UPSTREAM added at 2014/07/04 +Patch313: 0007-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/07/04 +Patch314: 0001-architecture-Add-tilegx.patch +# PATCH-FIX-UPSTREAM added at 2014/07/04 +Patch315: 0002-architecture-Add-cris.patch +# PATCH-FIX-UPSTREAM added at 2014/07/04 +Patch316: 0003-arch-add-crisv32-to-uname-check.patch +# PATCH-FIX-UPSTREAM added at 2014/07/04 +Patch317: 0004-architecture-remove-cris-from-uname-list.patch +# PATCH-FIX-UPSTREAM added at 2014/07/04 +Patch318: 0003-namespace-make-sure-tmp-var-tmp-and-dev-are-writable.patch +# PATCH-FIX-UPSTREAM added at 2014/07/04 +Patch319: 0002-namespace-fix-uninitialized-memory-access.patch +# PATCH-FIX-UPSTREAM added at 2014/07/07 +Patch320: 0001-machine-don-t-return-uninitialized-variable.patch +# PATCH-FIX-UPSTREAM added at 2014/07/07 +Patch321: 0002-vconsole-setup-run-setfont-before-loadkeys.patch +# PATCH-FIX-UPSTREAM added at 2014/07/08 +Patch322: 0001-util-consider-0x7F-a-control-chracter-which-it-is-DE.patch +# PATCH-FIX-UPSTREAM added at 2014/07/08 +Patch323: 0002-util-don-t-consider-tabs-special-in-string_has_cc-an.patch +# PATCH-FIX-UPSTREAM added at 2014/07/08 +Patch324: 0003-architecture-add-string-table-entries-for-mips-le-ar.patch +# PATCH-FIX-UPSTREAM added at 2014/07/08 +Patch325: 0004-core-Added-support-for-ERRNO-NOTIFY_SOCKET-message-p.patch +# PATCH-FIX-UPSTREAM added at 2014/07/08 +Patch326: 0005-service-don-t-accept-negative-ERRNO-notification-mes.patch +# PATCH-FIX-UPSTREAM added at 2014/07/08 +Patch327: 0006-systemctl-show-StatusErrno-value-in-systemctl-status.patch +# PATCH-FIX-UPSTREAM added at 2014/07/08 +Patch328: 0007-service-flush-status-text-and-errno-values-each-time.patch +# PATCH-FIX-UPSTREAM added at 2014/07/09 +Patch329: 0001-journal-compress-return-early-in-uncompress_startswi.patch +# PATCH-FIX-UPSTREAM added at 2014/07/09 +Patch330: 0002-journal-compress-improve-xz-compression-performance.patch +# PATCH-FIX-UPSTREAM added at 2014/07/09 +Patch331: 0001-logind-allow-switching-to-unused-VTs-via-SwitchTo.patch +# PATCH-FIX-UPSTREAM added at 2014/07/09 +Patch332: 0002-hostnamed-add-a-new-chassis-type-for-watches.patch +# PATCH-FIX-UPSTREAM added at 2014/07/10 +Patch333: 0001-units-make-ExecStopPost-action-part-of-ExecStart.patch +# PATCH-FIX-UPSTREAM added at 2014/07/14 +Patch334: 0001-event-pull-in-sd-event.h-from-event-util.h.patch +# PATCH-FIX-UPSTREAM added at 2014/07/14 +Patch335: 0002-util-fix-has-cc-check-and-add-test.patch +# PATCH-FIX-UPSTREAM added at 2014/07/14 +Patch336: 0003-sd-event-always-call-epoll_ctl-on-mask-updates-if-ed.patch +# PATCH-FIX-UPSTREAM added at 2014/07/14 +Patch337: 0004-fileio-quote-more-shell-characters-in-envfiles.patch # PATCH-FIX-SUSE Do a vhangup on all consoles lines (bnc#886599) Patch338: vhangup-on-all-consoles.patch +# PATCH-FIX-UPSTREAM added at 2014/07/16 +Patch339: 0001-Clear-up-confusion-wrt.-ENTRY_SIZE_MAX-and-DATA_SIZE.patch +# PATCH-FIX-UPSTREAM added at 2014/07/16 +Patch340: 0002-units-serial-getty-.service-use-the-default-RestartS.patch +# PATCH-FIX-UPSTREAM added at 2014/07/17 +Patch341: 0001-po-add-Ukrainian-translation.patch +# PATCH-FIX-UPSTREAM added at 2014/07/17 +Patch342: 0002-man-document-yearly-and-annually-in-systemd.time-7.patch +# PATCH-FIX-UPSTREAM added at 2014/07/17 +Patch343: 0003-core-nicer-message-when-inotify-watches-are-exhauste.patch +# PATCH-FIX-UPSTREAM Fix patch 0004-systemd-detect-virt-only-discover-Xen-domU.patch +Patch344: 0001-detect-virt-Fix-Xen-domU-discovery.patch # PATCH-FIX-SUSE Shut up rpmlint warning Patch345: shut-up-rpmlint-on-var-log-journal.patch +# PATCH-FIX-UPSTREAM added at 2014/07/21 +Patch346: 0002-Be-more-verbose-when-bind-or-listen-fails.patch +# PATCH-FIX-UPSTREAM added at 2014/07/21 +Patch347: 0003-Add-quotes-to-warning-message.patch +# PATCH-FIX-UPSTREAM added at 2014/07/21 +Patch348: 0004-systemd-return-the-first-error-from-manager_startup.patch +# PATCH-FIX-UPSTREAM added at 2014/07/21 +Patch349: 0001-bash-completion-p-option-for-journalctl.patch +# PATCH-FIX-UPSTREAM added at 2014/07/21 +Patch350: 0002-journalctl-man-allow-only-between-terms.patch +# PATCH-FIX-UPSTREAM added at 2014/07/21 +Patch351: 0003-systemd-use-pager-for-test-and-help.patch # PATCH-FIX-SUSE Patch352: set-and-use-default-logconsole.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch353: 0001-bus-proxyd-fix-incorrect-comparison.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch354: 0002-shell-completion-prevent-mangling-unit-names.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch355: 0003-Always-check-asprintf-return-code.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch356: 0004-bash-completion-use-list-unit-files-to-get-all-units.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch357: 0005-core-only-set-the-kernel-s-timezone-when-the-RTC-run.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch358: 0006-parse_boolean-require-exact-matches.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch359: 0007-drop_duplicates-copy-full-BindMount-struct.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch360: 0008-shell-completion-prevent-mangling-unit-names-bash.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch361: 0009-journald-always-add-syslog-facility-for-messages-com.patch +# PATCH-FIX-SUSE For system console do ask passphrases on all devices of the console Patch362: tty-ask-password-agent-on-console.patch +# PATCH-FIX-UPSTREAM added at 2014/07/30 +Patch363: 0001-sysv-order-initscripts-which-provide-network-before-.patch +# PATCH-FIX-UPSTREAM added at 2014/07/30 +Patch364: 0002-keymap-Add-microphone-mute-keymap-for-Dell-Latitude.patch +# PATCH-FIX-UPSTREAM added at 2014/07/30 +Patch365: 0003-keymap-Annotate-all-micmute-workarounds.patch # PATCH-FIX-SUSE Provide the /var/lock/subsys at start (bnc#889357) Patch366: tomcat6-var-lock-subsys-legacy.patch +# PATCH-FIX-UPSTREAM added at 2014/08/01 +Patch367: 0007-hwdb-update.patch # PATCH-FIX-SUSE Remove error messages for tab completion for systemctl isolate (bnc#892162) Patch368: 0001-let-systemctl-completion-ignore-at-names.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch369: 0001-nspawn-fix-truncation-of-machine-names-in-interface-.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch370: 0002-switch-root-umount-the-old-root-correctly.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch371: 0003-bootchart-it-s-not-OK-to-return-1-from-a-main-progra.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch372: 0004-login-set_controller-should-fail-if-prepare_vt-fails.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch373: 0005-sd-resolve-fix-allocation-if-query-ids-never-reuse-t.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch374: 0006-login-share-VT-signal-handler-between-sessions.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch375: 0007-journald-also-increase-the-SendBuffer-of-dev-log-to-.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch376: 0008-mount-setup-fix-counting-of-early-mounts-without-SMA.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch377: 0009-journald-Fix-off-by-one-error-in-Missed-X-kernel-mes.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch378: 0010-machine_kill-Don-t-kill-the-unit-when-killing-the-le.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch379: 0011-units-fix-BindsTo-logic-when-applied-relative-to-ser.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch380: 0012-util-try-to-be-a-bit-more-NFS-compatible-when-checki.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch381: 0001-hwdb-keymaps-for-Samsung-900X3E-900X3F.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch382: 0002-Add-hwdb-entry-for-Samsung-Series-7-Ultra.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch383: 0003-keymap-Fix-HP-Pavillon-DV7.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch384: 0004-hwdb-update-format-description-and-document-reloadin.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch385: 0008-hwdb-update.patch # PATCH-FIX-SUSE Use RNDADDENTROPY ioctl to load random-seed and to increase entropy count as well (bnc#892096) Patch386: use-rndaddentropy-ioctl-to-load-random-seed.patch +# PATCH-FIX-UPSTREAM added at 2014/08/27 +Patch387: 0001-systemctl-Correct-error-message-printed-when-bus_pro.patch +# PATCH-FIX-UPSTREAM added at 2014/08/27 +Patch388: 0002-units-order-systemd-fsck-.service-after-local-fs-pre.patch +# PATCH-FIX-UPSTREAM added at 2014/08/27 +Patch389: 0003-keymap-Adjust-for-more-Samsung-900X4-series.patch +# PATCH-FIX-UPSTREAM added at 2014/08/28 +Patch390: 0001-login-fix-memory-leak-on-DropController.patch +# PATCH-FIX-UPSTREAM added at 2014/08/28 +Patch391: 0002-util-fix-minimal-race-where-we-might-miss-SIGTERMs-w.patch +# PATCH-FIX-UPSTREAM added at 2014/08/28 +Patch392: 0003-sd-journal-properly-convert-object-size-on-big-endia.patch +# PATCH-FIX-UPSTREAM added at 2014/08/28 +Patch393: 0004-sd-journal-verify-that-object-start-with-the-field-n.patch +# PATCH-FIX-UPSTREAM added at 2014/08/29 +Patch394: 0001-nspawn-fix-network-interface.patch +# PATCH-FIX-UPSTREAM added at 2014/09/01 +Patch395: 0001-completion-filter-templates-from-restartable-units.patch +# PATCH-FIX-UPSTREAM added at 2014/09/01 +Patch396: 0002-systemd-fix-error-message.patch +# PATCH-FIX-UPSTREAM added at 2014/09/01 +Patch397: 0003-Quote-unit-names-in-suggested-systemctl-commandlines.patch +# PATCH-FIX-UPSTREAM added at 2014/09/01 +Patch398: 0004-config-parser-fix-mem-leak.patch +# PATCH-FIX-UPSTREAM added at 2014/09/01 +Patch399: 0005-login-fix-mem-leak.patch +# PATCH-FIX-UPSTREAM added at 2014/09/02 +Patch400: 0001-login-simplify-controller-handling.patch +# PATCH-FIX-UPSTREAM added at 2014/09/05 +Patch401: 0001-initrd-parse-etc.service-ignore-return-code-of-daemo.patch +# PATCH-FIX-UPSTREAM added at 2014/09/08 +Patch402: 0008-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/09/09 +Patch403: 0009-hwdb-update.patch +# PATCH-FIX-UPSTREAM bnc896664: Allow to override default target without --force +Patch404: 0001-systemctl-allow-to-change-the-default-target-without.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch405: 0001-activate-fix-fd-leak-in-do_accept.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch406: 0002-analyze-avoid-a-null-dereference.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch407: 0003-analyze-fix-mem-leak.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch408: 0004-backlight-Avoid-error-when-state-restore-is-disabled.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch409: 0005-bus-avoid-using-m-kdbus-after-freeing-it.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch410: 0006-bus-unref-buscreds-on-failure.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch411: 0007-core-fix-a-potential-mem-leak.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch412: 0008-core-smack-setup-Actually-allow-for-succesfully-load.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch413: 0009-journal-do-not-leak-mmaps-on-OOM.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch414: 0010-manager-use-correct-cleanup-function.patch +# PATCH-FIX-UPSTREAM added at 2014/09/18 +Patch415: 0001-core-fix-resource-leak-in-manager_environment_add.patch +# PATCH-FIX-UPSTREAM added at 2014/09/18 +Patch416: 0002-util-remove-a-unnecessary-check.patch +# PATCH-FIX-UPSTREAM added at 2014/09/18 +Patch417: 0003-udev-event-explicitly-don-t-read-from-invalid-fd.patch +# PATCH-FIX-UPSTREAM added at 2014/09/18 +Patch418: 0004-shared-conf-parser.patch +# PATCH-FIX-UPSTREAM added at 2014/09/18 +Patch419: 0005-logind-fix-typo.patch +# PATCH-FIX-UPSTREAM added at 2014/09/18 +Patch420: 0006-systemctl-fix-resource-leak-CID-1237747.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch421: 0007-libudev-monitor-warn-if-we-fail-to-request-SO_PASSCR.patch +# PATCH-FIX-UPSTREAM added at 2014/09/18 +Patch422: 0008-shared-conf-parser-don-t-leak-memory-on-error-in-DEF.patch +# PATCH-FIX-UPSTREAM added at 2014/09/18 -- Be aware that the size of the type bool may vary +Patch423: 0009-bus-fix-bus_print_property-to-use-int-for-booleans.patch +# PATCH-FIX-UPSTREAM added at 2014/09/19 +Patch424: 0001-journal-Do-not-count-on-the-compiler-initializing-fo.patch +# PATCH-FIX-UPSTREAM added at 2014/09/19 +Patch425: 0002-include-fcntl.h-rather-than-sys-fcntl.h.patch +# PATCH-FIX-UPSTREAM added at 2014/09/19 +Patch426: 0003-mount-order-options-before-other-arguments-to-mount.patch +# PATCH-FIX-UPSTREAM added at 2014/09/19 +Patch427: 0004-shared-wtmp-utmp-don-t-clear-store_wtmp-in-utmp_put_.patch +# PATCH-FIX-UPSTREAM added at 2014/09/19 +Patch428: 0005-shared-label.h-add-missing-stdio.h-include.patch +# PATCH-FIX-UPSTREAM added at 2014/09/19 +Patch429: 0006-shared-sparse-endian.h-add-missing-byteswap.h-includ.patch # PATCH-FIX-SUSE AUDIT-0: Power button press at gdm login should not prompt for credentials (bnc#888612) Patch430: 0001-bnc888612-logind-polkit-acpi.patch -# PATCH-FIX-SUSE added on 2014/10/24 +# PATCH-FIX-UPSTREAM added at 2014/09/24 -- May help that history of the shell is saved +Patch431: 0001-login-pause-devices-before-acknowledging-VT-switches.patch +# PATCH-FIX-UPSTREAM added at 2014/09/24 +Patch432: 0001-nspawn-don-t-try-to-create-veth-link-with-too-long-i.patch +# PATCH-FIX-UPSTREAM added at 2014/09/24 (bsc#897801) +Patch433: 0001-socket-introduce-SELinuxContextFromNet-option.patch +# PATCH-FIX-UPSTREAM added at 2014/09/24 +Patch434: 0002-util-avoid-non-portable-__WORDSIZE.patch +# PATCH-FIX-UPSTREAM added at 2014/09/25 +Patch435: 0001-Fix-warning-about-unused-variable-with-SELINUX.patch +# PATCH-FIX-UPSTREAM added at 2014/09/25 +Patch436: 0002-bus-remove-unused-check.patch +# PATCH-FIX-UPSTREAM added at 2014/09/26 +Patch437: 0001-systemd-tmpfiles-Fix-IGNORE_DIRECTORY_PATH-age-handl.patch +# PATCH-FIX-UPSTREAM added at 2014/09/29 +Patch438: 0001-logind-add-support-for-Triton2-Power-Button.patch +# PATCH-FIX-UPSTREAM added at 2014/09/29 +Patch439: 0002-logind-add-support-for-TPS65217-Power-Button.patch +# PATCH-FIX-UPSTREAM added at 2014/09/29 +Patch440: 0001-shutdownd-clean-up-initialization-of-struct.patch +# PATCH-FIX-UPSTREAM added at 2014/09/29 +Patch441: 0003-bootchart-parse-userinput-with-safe_atoi.patch +# PATCH-FIX-UPSTREAM added at 2014/09/29 +Patch442: 0004-bootchart-check-return-of-strftime.patch +# PATCH-FIX-UPSTREAM added at 2014/09/29 +Patch443: 0005-bootchart-Do-not-try-to-access-data-for-non-existing.patch +# PATCH-FIX-UPSTREAM added at 2014/09/30 +Patch444: 0001-journalctl-do-not-output-reboot-markers-when-running.patch +# PATCH-FIX-UPSTREAM added at 2014/09/30 +Patch445: 0002-udev-hwdb-New-Entry-for-Dell-XPS12-9Q33-keyboard.patch +# PATCH-FIX-UPSTREAM added at 2014/10/02 +Patch446: 0001-core-swap-only-make-configured-units-part-of-swap.ta.patch +# PATCH-FIX-UPSTREAM added at 2014/10/02 +Patch447: 0009-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/10/07 +Patch448: 0001-virt-detect-that-we-are-running-inside-the-docker-co.patch +# PATCH-FIX-UPSTREAM added at 2014/10/07 +Patch449: 0002-bootchart-use-n-a-if-PRETTY_NAME-is-not-found.patch +# PATCH-FIX-UPSTREAM added at 2014/10/07 +Patch450: 0003-fileio-label-return-error-when-writing-fails.patch +# PATCH-FIX-UPSTREAM added at 2014/10/07 +Patch451: 0001-sd-event-don-t-require-a-signal-event-source-to-be-e.patch +# PATCH-FIX-UPSTREAM added at 2014/10/07 +Patch452: 0004-sd-event-check-the-value-of-received-signal.patch +# PATCH-FIX-UPSTREAM added at 2014/10/07 +Patch453: 0005-sd-id128-do-stricter-checking-of-random-boot-id.patch +# PATCH-FIX-UPSTREAM added at 2014/10/10 +Patch454: 0001-keymap-Fix-touchpad-toggle-on-Toshiba-Satellite-P75-.patch +# PATCH-FIX-UPSTREAM added at 2014/10/10 +Patch455: 0001-units-introduce-network-pre.target-as-place-to-hook-.patch +# PATCH-FIX-UPSTREAM added at 2014/10/10 +Patch456: 0002-keymap-Fix-touchpad-toggle-key-on-Asus-laptops.patch +# PATCH-FIX-UPSTREAM added at 2014/10/10 +Patch457: 0003-sd-bus-check-return-value-of-vasprintf.patch +# PATCH-FIX-UPSTREAM added at 2014/10/10 +Patch458: 0004-core-map-the-rescue-argument-to-rescue.target.patch +# PATCH-FIX-UPSTREAM added at 2014/10/10 +Patch459: 0005-util-avoid-double-close-of-fd.patch +# PATCH-FIX-UPSTREAM added at 2014/10/13 +Patch460: 0001-systemctl-when-mangle-unit-names-for-the-isolate-suf.patch +# PATCH-FIX-UPSTREAM added at 2014/10/14 +Patch461: 0001-tmpfiles-compare-return-against-correct-errno.patch +# PATCH-FIX-UPSTREAM added at 2014/10/15 +Patch462: 0001-shell-completion-fix-completion-of-inactive-units.patch +# PATCH-FIX-UPSTREAM added at 2014/10/15 +Patch463: 0002-shell-completion-propose-templates-for-disable-re-en.patch +# PATCH-FIX-UPSTREAM added at 2014/10/15 +Patch464: 0003-man-we-don-t-have-Wanted-dependency.patch +# PATCH-FIX-UPSTREAM added at 2014/10/15 +Patch465: 0004-selinux-fix-potential-double-free-crash-in-child-pro.patch +# PATCH-FIX-UPSTREAM added at 2014/10/20 +Patch466: 0001-systemd-continue-switch-root-even-if-umount-fails.patch +# PATCH-FIX-UPSTREAM added at 2014/10/20 +Patch467: 0002-systemd-try-harder-to-bind-to-notify-socket.patch +# PATCH-FIX-SUSE added at 2014/10/15 +Patch468: avoid-leaking-socket-descriptors.patch +# PATCH-FIX-UPSTREAM added at 2014/10/23 +Patch469: 0001-strv-add-an-additional-overflow-check-when-enlarging.patch +# PATCH-FIX-UPSTREAM added at 2014/10/23 +Patch470: 0002-hwdb-Add-mapping-for-special-keys-on-compaq-ku-0133-.patch +# PATCH-FIX-UPSTREAM added at 2014/10/23 +Patch471: 0003-journald-add-CAP_MAC_OVERRIDE-in-journald-for-SMACK-.patch +# PATCH-FIX-UPSTREAM added at 2014/10/23 +Patch472: 0004-journal-do-server_vacuum-for-sigusr1.patch +# PATCH-FIX-UPSTREAM added at 2014/10/23 +Patch473: 0005-cryptsetup-fix-an-OOM-check.patch +# PATCH-FIX-UPSTREAM added at 2014/10/24 +Patch474: 0002-shutdown-pass-own-argv-to-run-initramfs-shutdown.patch +# PATCH-FIX-SUSE added at 2014/10/24 Patch475: journald-advice-about-use-of-memory.patch -# PATCH-FIX-SUSE added on 2014/11/05 +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch476: 0001-manager-Linux-on-hppa-has-fewer-rtsigs-hence-avoid-u.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch477: 0002-time-also-support-infinity-syntax-in-parse_nsec.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch478: 0003-time-earlier-exit-from-format_timestamp_relative-on-.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch479: 0004-sd-bus-if-we-don-t-manage-to-properly-allocate-the-e.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch480: 0005-journalctl-correct-help-text-for-until.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch481: 0006-calendarspec-fix-typo-in-annually.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch482: 0007-systemctl-do-not-ignore-errors-in-symlink-removal.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch483: 0008-util-introduce-sethostname_idempotent.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch484: 0009-util-fix-copy-paste-error-and-actually-set-the-new-h.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch485: 0010-shutdown-do-final-unmounting-only-if-not-running-ins.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch486: 0011-selinux-make-sure-we-do-not-try-to-print-missing-fie.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch487: 0012-manager-do-not-print-anything-while-passwords-are-be.patch +# PATCH-FIX-UPSTREAM added at 2014/10/31 +Patch488: 0001-sd-bus-properly-handle-removals-of-non-existing-matc.patch +# PATCH-FIX-UPSTREAM added at 2014/10/31 +Patch489: 0002-keymap-Ignore-brightness-keys-on-Dell-Inspiron-1520-.patch +# PATCH-FIX-SUSE added at 2014/11/05 Patch490: watch_resolv.conf_for_become_changed.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch491: 0001-core-don-t-allow-enabling-if-unit-is-masked.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch492: 0002-snapshot-return-error-when-snapshot-exists.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch493: 0003-shared-install-avoid-prematurely-rejecting-missing-u.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch494: 0004-Raise-level-of-Found-dependency.-lines.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch495: 0005-units-order-sd-journal-flush-after-sd-remount-fs.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch496: 0006-journald-fix-minor-memory-leak.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch497: 0007-journald-also-check-journal-file-size-to-deduce-if-i.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch498: 0008-journald-fix-memory-leak-on-error-path.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch499: 0009-units-make-systemd-journald.service-Type-notify.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch500: 0010-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/11/10 +Patch501: 0001-login-rerun-vconsole-setup-when-switching-from-vgaco.patch +# PATCH-FIX-UPSTREAM added at 2014/11/10 +Patch502: 0002-shutdown-fix-arguments-to-run-initramfs-shutdown.patch +# PATCH-FIX-UPSTREAM added at 2014/11/10 +Patch503: 0003-utf8-when-looking-at-the-next-unichar-honour-the-siz.patch +# PATCH-FIX-UPSTREAM added at 2014/11/18 +Patch504: 0001-keymap-Add-support-for-IBM-ThinkPad-X41-Tablet.patch +# PATCH-FIX-UPSTREAM added at 2014/11/18 +Patch505: 0002-keymap-Fix-special-keys-on-ThinkPad-X60-X61-Tablet.patch +# PATCH-FIX-UPSTREAM added at 2014/11/18 +Patch506: 0001-systemctl-let-list-units-unit-files-honour-type.patch +# PATCH-FIX-UPSTREAM added at 2014/11/18 +Patch507: 0002-systemctl-obey-state-in-list-unit-files.patch +# PATCH-FIX-UPSTREAM added at 2014/11/20 +Patch509: 0002-core-watchdog-bus-properties-cannot-be-both-writable.patch +# PATCH-FIX-UPSTREAM added at 2014/11/20 +Patch510: 0003-sd-bus-refuse-properties-that-claim-to-be-both-writa.patch +# PATCH-FIX-UPSTREAM added at 2014/12/05 +Patch511: 0001-units-make-sure-rfkill-service-is-bount-to-the-actua.patch +# PATCH-FIX-UPSTREAM added at 2014/12/05 +Patch512: 0002-rfkill-rework-how-we-generate-file-names-from-rfkill.patch +# PATCH-FIX-SUSE 513-nspawn-veth.patch (bnc#906709) +Patch513: 513-nspawn-veth.patch +# PATCH-FIX-UPSTREAM added at 2014/12/15 +Patch514: 0001-selinux-access-fix-broken-ternary-operator.patch +# PATCH-FIX-UPSTREAM added at 2014/12/15 +Patch515: 0002-systemctl-show-BindsTo-BoundBy-in-list-dependencies.patch +# PATCH-FIX-UPSTREAM added at 2014/12/15 +Patch516: 0003-cryptsetup-default-to-no-hash-when-keyfile-is-specif.patch +# PATCH-FIX-UPSTREAM added at 2014/12/15 +Patch517: 0004-core-fix-transaction-destructiveness-check-once-more.patch +# PATCH-FIX-UPSTREAM added at 2014/12/16 +Patch518: 0001-units-tmpfiles-setup-dev-allow-unsafe-file-creation-.patch +# PATCH-FIX-UPSTREAM added at 2014/12/16 +Patch519: 0002-man-tmpfiles.d-recommend-using-b-and-c.patch # PATCH-FIX-SUSE systemd-add-user-keep.patch (bnc#903009) Patch520: systemd-add-user-keep.patch # PATCH-FIX-SUSE systemd-add-user-keep.patch (bnc#903009) Patch521: kbd-model-map.patch -Patch522: 0001-core-rework-device-state-logic.patch +# # UDEV PATCHES # ============ @@ -275,46 +1085,188 @@ Patch1005: 1005-create-default-links-for-primary-cd_dvd-drive.patch Patch1006: 1006-udev-always-rename-network.patch # PATCH-FIX-OPENSUSE 1007-physical-hotplug-cpu-and-memory.patch Patch1007: 1007-physical-hotplug-cpu-and-memory.patch +# PATCH-FIX-OPENSUSE 1008-add-msft-compability-rules.patch -- for code base <= 1310 +Patch1008: 1008-add-msft-compability-rules.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch1009: 1009-cdrom_id-use-the-old-MMC-fallback.patch +# PATCH-FIX-SUSE increase result size for programs (bnc#867840) +Patch1010: 1010-udev-increase-result-size-for-programs.patch # PATCH-FIX-SUSE skip btrfs check if devices are not ready (bnc#872929) Patch1011: 1011-64-btrfs.rules-skip-btrfs-check-if-devices-are-not-r.patch # PATCH-FIX-SUSE skip persistent device link creation on mp device (bnc#872929) Patch1012: 1012-Skip-persistent-device-link-creation-on-multipath-de.patch # PATCH-FIX-SUSE Do not use runtime PM for some IBM consoles (bnc#868931) Patch1013: 1013-no-runtime-PM-for-IBM-consoles.patch +# PATCH-FIX-USTREAM 1014-udev-update-net_id-comments.patch +Patch1014: 1014-udev-update-net_id-comments.patch +# PATCH-FIX-USTREAM 1015-udev-persistent-naming-we-cannot-use-virtio-numbers-.patch +Patch1015: 1015-udev-persistent-naming-we-cannot-use-virtio-numbers-.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch1016: 1016-udev-warn-when-name_to_handle_at-is-not-implemented.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch1017: 1017-udev-serialize-synchronize-block-device-event-handli.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch1018: 1018-udev-do-not-skip-the-execution-of-RUN-when-renaming-.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch1019: 1019-udev-avoid-use-of-uninitialized-err.patch +# PATCH-FIX-UPSTREAM added at 2014/05/26 +Patch1020: 1020-udev-keyboard-also-hook-into-change-events.patch # PATCH-FIX-SUSE 1021-udev-re-add-persistent-net-rules.patch Patch1021: 1021-udev-re-add-persistent-net-rules.patch +# PATCH-FIX-UPSTREAM 1022-udev-remove-seqnum-API-and-all-assumptions-about-seq.patch +Patch1022: 1022-udev-remove-seqnum-API-and-all-assumptions-about-seq.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch1023: 1023-udev-builtin-keyboard-do-tell-on-which-device-EVIOCS.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch1024: 1024-udev-always-close-lock-file-descriptor.patch +# PATCH-FIX-UPSTREAM 1025-udev-exclude-device-mapper-from-block-device-ownersh.patch +Patch1025: 1025-udev-exclude-device-mapper-from-block-device-ownersh.patch +# PATCH-FIX-UPSTREAM 1026-udevd-inotify-modernizations.patch +Patch1026: 1026-udevd-inotify-modernizations.patch +# PATCH-FIX-UPSTREAM 1027-udev-synthesize-change-events-for-partitions-when-to.patch +Patch1027: 1027-udev-synthesize-change-events-for-partitions-when-to.patch +# PATCH-FIX-UPSTREAM 1028-udev-link-config-fix-mem-leak.patch +Patch1028: 1028-udev-link-config-fix-mem-leak.patch +# PATCH-FIX-UPSTREAM 1029-udev-try-first-re-reading-the-partition-table.patch +Patch1029: 1029-udev-try-first-re-reading-the-partition-table.patch +# PATCH-FIX-UPSTREAM 1030-udev-guard-REREADP-logic-with-open-O_ECXL.patch +Patch1030: 1030-udev-guard-REREADP-logic-with-open-O_ECXL.patch +# PATCH-FIX-UPSTREAM 1031-udev-make-sure-we-always-get-change-for-the-disk.patch +Patch1031: 1031-udev-make-sure-we-always-get-change-for-the-disk.patch +# PATCH-FIX-UPSTREAM 1032-udev-guard-REREADPT-by-exclusive-lock-instead-of-O_E.patch +Patch1032: 1032-udev-guard-REREADPT-by-exclusive-lock-instead-of-O_E.patch +# PATCH-FIX-UPSTREAM 1033-udev-really-exclude-device-mapper-from-block-device.patch +Patch1033: 1033-udev-really-exclude-device-mapper-from-block-device.patch +# PATCH-FIX-UPSTREAM 1034-udev-check-the-return-value-from-udev_enumerate_scan.patch +Patch1034: 1034-udev-check-the-return-value-from-udev_enumerate_scan.patch # PATCH-FIX-SUSE 1035-99-systemd.rules-Ignore-devices-with-SYSTEMD_READY-0.patch Patch1035: 1035-99-systemd.rules-Ignore-devices-with-SYSTEMD_READY-0.patch # PATCH-FIX-SUSE 1036-rules-disable-usage-of-dev_id-in-persistent-rules.patch Patch1036: 1036-rules-disable-usage-of-dev_id-in-persistent-rules.patch # PATCH-FIX-SUSE See bnc#882714 comment #51 Patch1037: 1037-udev-exclude-cd-dvd-from-block-device.patch +# PATCH-FIX-UPSTREAM 1038-udev-fix-invalid-free-in-enable_name_policy.patch +Patch1038: 1038-udev-fix-invalid-free-in-enable_name_policy.patch +# PATCH-FIX-UPSTREAM 1039-udevadm-settle-fixed-return-code-for-empty-queue.patch +Patch1039: 1039-udevadm-settle-fixed-return-code-for-empty-queue.patch # PATCH-FIX-SUSE 1040-re-enable-dev_id-conditionally-in-persistent-rules.patch (bnc#884403 and bnc#882714) Patch1040: 1040-re-enable-dev_id-conditionally-in-persistent-rules.patch +# PATCH-FIX-UPSTREAM 1041-libudev-fix-udev_queue_get_queue_is_empty-logic.patch +Patch1041: 1041-libudev-fix-udev_queue_get_queue_is_empty-logic.patch +# PATCH-FIX-UPSTREAM 1042-libudev-queue-provide-file-descriptor-to-watch-busy-.patch +Patch1042: 1042-libudev-queue-provide-file-descriptor-to-watch-busy-.patch +# PATCH-FIX-UPSTREAM 1043-libudev-queue-watch-entire-directory-to-allow-the-re.patch +Patch1043: 1043-libudev-queue-watch-entire-directory-to-allow-the-re.patch +# PATCH-FIX-UPSTREAM 1044-rules-update-qemu-hid-rules.patch +Patch1044: 1044-rules-update-qemu-hid-rules.patch +# PATCH-FIX-UPSTREAM 1045-rules-don-t-enable-usb-pm-for-Avocent-devices.patch +Patch1045: 1045-rules-don-t-enable-usb-pm-for-Avocent-devices.patch # PATCH-FIX-SUSE 1046-fix-duplicated-rules-with-layer3-interfaces.patch (bnc#882714) Patch1046: 1046-fix-duplicated-rules-with-layer3-interfaces.patch +# PATCH-FIX-UPSTREAM added at 2014/07/03 +Patch1047: 1047-udev-net_setup_link-builtin-should-print-the-reason-.patch +# PATCH-FIX-UPSTREAM 1048-udev-net_setup_link-add-a-bit-more-logging.patch +Patch1048: 1048-udev-net_setup_link-add-a-bit-more-logging.patch +# PATCH-FIX-UPSTREAM 1049-udev-link_config-ignore-errors-due-to-missing-MAC-ad.patch +Patch1049: 1049-udev-link_config-ignore-errors-due-to-missing-MAC-ad.patch # PATCH-FIX-SUSE 1050-only-rename-SRIOV-VF-devices-when-name-starts-with-eth.patch (bnc#885232) Patch1050: 1050-only-rename-SRIOV-VF-devices-when-name-starts-with-eth.patch # PATCH-FIX-SUSE 1051-check-if-NAME-has-a-value.patch (bnc#885232) Patch1051: 1051-check-if-NAME-has-a-value.patch +# PATCH-FIX-UPSTREAM 1052-rules-uaccess-add-ID_SOFTWARE_RADIO.patch +Patch1052: 1052-rules-uaccess-add-ID_SOFTWARE_RADIO.patch # PATCH-FIX-SUSE 1053-better-checks-in-write_net_rules.patch (bnc#888178) Patch1053: 1053-better-checks-in-write_net_rules.patch +# PATCH-FIX-SUSE 0001-udev-exclude-MD-from-block-device-ownership-event-lo.patch +Patch1054: 1054-udev-exclude-MD-from-block-device-ownership-event-lo.patch # PATCH-FIX-SUSE 1055-let-9719859c07aa13539ed2cd4b31972cd30f678543-apply.patch Patch1055: 1055-let-9719859c07aa13539ed2cd4b31972cd30f678543-apply.patch +# PATCH-FIX-UPSTREAM 1056-udevd-add-event-timeout-commandline-option.patch +Patch1056: 1056-udevd-add-event-timeout-commandline-option.patch +# PATCH-FIX-UPSTREAM 1057-udev-unify-event-timeout-handling.patch +Patch1057: 1057-udev-unify-event-timeout-handling.patch +# PATCH-FIX-UPSTREAM 1058-udev-unify-event-timeout-handling.patch +Patch1058: 1058-udev-unify-event-timeout-handling.patch +# PATCH-FIX-UPSTREAM 1059-udev-fixup-commit-dd5eddd28a74a49607a8fffcaf960040db.patch +Patch1059: 1059-udev-fixup-commit-dd5eddd28a74a49607a8fffcaf960040db.patch # PATCH-FIX-SUSE 1060-udev-use-device-mapper-target-name-for-btrfs-device-ready.patch Patch1060: 1060-udev-use-device-mapper-target-name-for-btrfs-device-ready.patch +# PATCH-FIX-UPSTREAM 1061-rules-allow-systemd-to-manage-loop-device-partitions.patch +Patch1061: 1061-rules-allow-systemd-to-manage-loop-device-partitions.patch # PATCH-FIX-SUSE 1062-rules-set-default-permissions-for-GenWQE-devices.patch (bnc#890977) Patch1062: 1062-rules-set-default-permissions-for-GenWQE-devices.patch +# PATCH-FIX-UPSTREAM 1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch +Patch1063: 1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch +# PATCH-FIX-UPSTREAM 1064-udev-hwdb-do-not-look-at-usb_device-parents.patch +Patch1064: 1064-udev-hwdb-do-not-look-at-usb_device-parents.patch +# PATCH-FIX-UPSTREAM 1065-udev-bump-event-timeout-to-60-seconds.patch +Patch1065: 1065-udev-bump-event-timeout-to-60-seconds.patch # PATCH-FIX-SUSE 1066-udev-add-compatibility-links-for-truncated-by-id-links.patch (bnc#886852) Patch1066: 1066-udev-add-compatibility-links-for-truncated-by-id-links.patch +# PATCH-FIX-UPSTREAM 1067-udev-always-resolve-correctly-database-names-on-chan.patch (bnc#864745) +Patch1067: 1067-udev-always-resolve-correctly-database-names-on-chan.patch +# PATCH-FIX-UPSTREAM 1068-udev-net_setup_link-export-the-.link-filename-applie.patch +Patch1068: 1068-udev-net_setup_link-export-the-.link-filename-applie.patch +# PATCH-FIX-UPSTREAM 1069-rules-net-setup-link-preserve-ID_NET_LINK_FILE-and-I.patch +Patch1069: 1069-rules-net-setup-link-preserve-ID_NET_LINK_FILE-and-I.patch +# PATCH-FIX-UPSTREAM 1070-rules-net-setup-link-remove-stray-linebreak.patch +Patch1070: 1070-rules-net-setup-link-remove-stray-linebreak.patch +# PATCH-FIX-UPSTREAM 1071-udev-import-the-full-db-on-MOVE-events-for-devices-w.patch +Patch1071: 1071-udev-import-the-full-db-on-MOVE-events-for-devices-w.patch +# PATCH-FIX-UPSTREAM 1072-udev-netif_rename-don-t-log-to-kmsg.patch +Patch1072: 1072-udev-netif_rename-don-t-log-to-kmsg.patch +# PATCH-FIX-UPSTREAM 1073-udev-drop-print_kmsg.patch +Patch1073: 1073-udev-drop-print_kmsg.patch +# PATCH-FIX-UPSTREAM 1074-udev-fix-copy-paste-error-in-log-message.patch +Patch1074: 1074-udev-fix-copy-paste-error-in-log-message.patch +# PATCH-FIX-UPSTREAM 1075-udev-timeout-increase-timeout.patch +Patch1075: 1075-udev-timeout-increase-timeout.patch +# PATCH-FIX-UPSTREAM 1076-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch +Patch1076: 1076-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch +# PATCH-FIX-UPSTREAM 1077-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch +Patch1077: 1077-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch +# PATCH-FIX-UPSTREAM 1078-udev-remove-userspace-firmware-loading-support.patch +Patch1078: 1078-udev-remove-userspace-firmware-loading-support.patch +# PATCH-FIX-UPSTREAM 1079-udev-remove-userspace-firmware-loading-support.patch +Patch1079: 1079-udev-remove-userspace-firmware-loading-support.patch +# PATCH-FIX-UPSTREAM 1080-udevd-parse_argv-warn-if-argumens-are-invalid.patch +Patch1080: 1080-udevd-parse_argv-warn-if-argumens-are-invalid.patch +# PATCH-FIX-UPSTREAM 1081-udevd-check-return-of-various-functions.patch +Patch1081: 1081-udevd-check-return-of-various-functions.patch +# PATCH-FIX-UPSTREAM 1082-udevadm-hwdb-check-return-value-of-fseeko.patch +Patch1082: 1082-udevadm-hwdb-check-return-value-of-fseeko.patch +# PATCH-FIX-UPSTREAM 1083-udev-node-warn-if-chmod-chown-fails.patch +Patch1083: 1083-udev-node-warn-if-chmod-chown-fails.patch +# PATCH-FIX-UPSTREAM 1084-udev-ctrl-log-if-setting-SO_PASSCRED-fails.patch +Patch1084: 1084-udev-ctrl-log-if-setting-SO_PASSCRED-fails.patch +# PATCH-FIX-UPSTREAM 1085-udev-fix-typos.patch +Patch1085: 1085-udev-fix-typos.patch +# PATCH-FIX-UPSTREAM 1085-udevd-don-t-fail-if-run-udev-exists.patch +Patch1086: 1086-udevd-don-t-fail-if-run-udev-exists.patch +# PATCH-FIX-SUSE 1087-infinit-timeout-for-kmod-loaded-modules.patch +Patch1087: 1087-infinit-timeout-for-kmod-loaded-modules.patch # PATCH-FIX-SUSE 1088-drop-renaming-of-virtual-interfaces-in-guest.patch (bnc#898432) Patch1088: 1088-drop-renaming-of-virtual-interfaces-in-guest.patch +# PATCH-FIX-UPSTREAM 1089-fix-cgroup-device-controller.patch +Patch1089: 1089-fix-cgroup-device-controller.patch +# PATCH-FIX-UPSTREAM 1090-udev-path_id-set-supported_parent-for-well-known-SCS.patch +Patch1090: 1090-udev-path_id-set-supported_parent-for-well-known-SCS.patch +# PATCH-FIX-UPSTREAM 1091-udev-path_id-update-comments.patch +Patch1091: 1091-udev-path_id-update-comments.patch +# PATCH-FIX-UPSTREAM 1092-libudev-do-not-accept-invalid-log-levels.patch +Patch1092: 1092-libudev-do-not-accept-invalid-log-levels.patch +# PATCH-FIX-UPSTREAM 1093-udev-Fix-parsing-of-udev.event-timeout-kernel-parame.patch +Patch1093: 1093-udev-Fix-parsing-of-udev.event-timeout-kernel-parame.patch +# PATCH-FIX-UPSTREAM 1094-udev-avoid-magic-constants-in-kernel-cmdline-parsers.patch +Patch1094: 1094-udev-avoid-magic-constants-in-kernel-cmdline-parsers.patch # PATCH-FIX-SUSE 1095-set-ssd-disk-to-use-deadline-scheduler.patch (bnc#904517) Patch1095: 1095-set-ssd-disk-to-use-deadline-scheduler.patch # PATCH-FIX-SUSE 1096-new-udev-root-symlink-generator.patch Patch1096: 1096-new-udev-root-symlink-generator.patch # PATCH-FIX-SUSE 1097-udevd-increase-maximum-number-of-children.patch Patch1097: 1097-udevd-increase-maximum-number-of-children.patch +# PATCH-FIX-UPSTREAM 1098-udev-link_setup-respect-kernel-name-assign-policy.patch +Patch1098: 1098-udev-link_setup-respect-kernel-name-assign-policy.patch %description Systemd is a system and service manager, compatible with SysV and LSB @@ -522,24 +1474,6 @@ is logged to /var/log/messages. Please check whether that's worth a bug report then. This package marks the installation to not use syslog but only the journal. -%package -n nss-mymachines -Summary: Plugin for local virtual host name resolution -License: LGPL-2.1+ -Group: System/Libraries - -%description -n nss-mymachines -nss-myhostname is a plugin for the GNU Name Service Switch (NSS) -functionality of the GNU C Library (glibc) providing host name -resolution for the locally configured containers and virtual machines -systemd-machined knows about. - -%package -n nss-resolve -Summary: Plugin for local hostname resolution via systemd-resolved -License: LGPL-2.1+ -Group: System/Libraries - -%description -n nss-resolve - %package journal-gateway Summary: Gateway for serving journal events over the network using HTTP License: LGPL-2.1+ @@ -551,12 +1485,13 @@ Requires(postun): systemd %description journal-gateway systemd-journal-gatewayd serves journal events over the network using HTTP. + %endif %prep -%setup -q -n systemd-%version +%setup -q -n systemd-%{version} echo "Checking whether upstream rpm macros changed..." -diff -au "%{S:10}" src/core/macros.systemd.in +[ -z "`diff -Naru "%{S:10}" src/core/macros.systemd.in`" ] || exit 1 # only needed for bootstrap %if 0%{?bootstrap} @@ -564,15 +1499,29 @@ cp %{SOURCE7} m4/ %endif # systemd patches +%patch0 -p1 +%patch1 -p1 %patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 +%patch7 -p1 +%if 0%{?suse_version} <= 1310 +%patch8 -p1 +%endif +%patch9 -p1 %patch12 -p1 +%patch13 -p0 +%patch15 -p1 %patch16 -p1 %patch17 -p1 +%patch18 -p1 +%patch19 -p0 %patch20 -p1 %patch21 -p1 +%patch22 -p1 +%patch23 -p1 +%patch24 -p1 %patch25 -p1 # check if this is still needed, or can be derived from fbdev uaccess rule # http://lists.freedesktop.org/archives/systemd-devel/2012-November/007561.html @@ -583,45 +1532,418 @@ cp %{SOURCE7} m4/ %patch40 -p1 %patch41 -p1 %patch42 -p1 +%patch46 -p1 +%patch47 -p1 %patch84 -p1 %patch86 -p1 %patch90 -p1 %patch91 -p1 +%patch93 -p1 +%patch114 -p0 +%if 0%{?suse_version} <= 1310 +%patch117 -p1 +%endif +%patch119 -p1 %patch120 -p1 +%patch121 -p0 +%patch122 -p0 +%patch123 -p0 +%patch124 -p0 +%patch125 -p0 +%patch126 -p0 +%patch127 -p0 +%patch128 -p0 +%patch129 -p0 +%patch130 -p0 +%patch131 -p0 +%patch132 -p0 +%patch133 -p0 +%patch134 -p0 +%patch135 -p0 +%patch136 -p0 +%patch137 -p0 +%patch138 -p0 +%patch139 -p0 +%patch140 -p0 +%patch141 -p0 +%patch142 -p0 +%patch143 -p0 +%patch144 -p0 +%patch145 -p0 +%patch146 -p0 +%patch147 -p0 +%patch148 -p0 +%patch149 -p0 +%patch150 -p0 +%patch151 -p0 +%patch152 -p0 +%patch153 -p0 +%patch154 -p0 +%patch155 -p0 +%patch157 -p0 +%patch158 -p0 +%patch159 -p0 +%patch160 -p0 +%patch161 -p0 +%patch162 -p0 +%patch163 -p0 +%patch164 -p0 +%patch165 -p0 +%patch166 -p0 +%patch167 -p0 +%patch168 -p0 +%patch169 -p0 +%patch170 -p0 +%patch171 -p0 +%patch172 -p0 +%patch173 -p0 +%patch174 -p0 +%patch175 -p0 +%patch176 -p0 %patch177 -p1 %patch178 -p1 %patch179 -p1 %patch180 -p1 +%patch181 -p1 %patch182 -p1 %patch183 -p1 %patch185 -p1 %patch186 -p1 +%patch187 -p1 %patch188 -p1 %patch189 -p1 %patch190 -p1 %patch191 -p1 %patch192 -p1 %patch193 -p1 +%patch194 -p0 +%patch196 -p1 +%patch195 -p0 %patch197 -p1 %patch198 -p1 +%patch199 -p0 +%patch200 -p0 +%patch201 -p0 +%patch202 -p0 %patch203 -p1 +%patch204 -p1 +%patch206 -p0 +%patch207 -p0 %patch208 -p1 -%patch338 -p1 +%patch209 -p0 +%patch211 -p0 +%patch212 -p0 +%patch213 -p0 +%patch214 -p0 +%patch215 -p0 +%patch216 -p0 +%patch217 -p0 +%patch218 -p0 +%patch219 -p1 +%patch220 -p0 +%patch221 -p0 +%patch222 -p0 +%patch223 -p0 +%patch224 -p0 +%patch225 -p0 +%patch226 -p0 +%patch227 -p0 +%patch228 -p0 +%patch229 -p0 +%patch230 -p0 +%patch231 -p0 +%patch232 -p0 +%patch233 -p0 +%patch234 -p0 +%patch235 -p0 +%patch236 -p0 +%patch237 -p0 +%patch238 -p0 +%patch239 -p0 +%patch240 -p0 +%patch241 -p0 +%patch242 -p0 +%patch243 -p0 +%patch244 -p0 +%patch245 -p0 +%patch246 -p0 +%patch247 -p0 +%patch248 -p0 +%patch249 -p0 +%patch250 -p0 +%patch251 -p0 +%patch252 -p0 +%patch253 -p0 +%patch254 -p0 +%patch255 -p0 +%patch256 -p0 +%patch257 -p0 +%patch258 -p0 +%patch259 -p0 +%patch260 -p0 +%patch261 -p0 +%patch262 -p0 +%patch263 -p0 +%patch264 -p0 +%patch265 -p0 +%patch266 -p0 +%patch267 -p0 +%patch268 -p0 +%patch269 -p0 +%patch270 -p0 +%patch271 -p0 +%patch272 -p0 +%patch273 -p0 +%patch274 -p0 +%patch275 -p0 +%patch276 -p0 +%patch277 -p0 +%patch278 -p0 +%patch279 -p0 +%patch280 -p0 +%patch281 -p1 +%patch282 -p0 +%patch283 -p0 +%patch284 -p0 +%patch285 -p0 +%patch286 -p0 +%patch287 -p0 +%patch288 -p0 +%patch289 -p0 +%patch290 -p0 +%patch291 -p0 +%patch292 -p0 +%patch293 -p0 +%patch294 -p0 +%patch295 -p0 +%patch296 -p0 +%patch297 -p0 +%patch298 -p0 +%patch299 -p0 +%patch300 -p0 +%patch301 -p0 +%patch302 -p0 +%patch303 -p0 +%patch304 -p0 +%patch305 -p0 +%patch306 -p0 +%patch307 -p0 +%patch308 -p0 +%patch309 -p0 +%patch310 -p0 +%patch311 -p0 +%patch312 -p0 +%patch313 -p0 +%patch314 -p0 +%patch315 -p0 +%patch316 -p0 +%patch317 -p0 +%patch318 -p0 +%patch319 -p0 +%patch320 -p0 +%patch321 -p0 +%patch322 -p0 +%patch323 -p0 +%patch324 -p0 +%patch325 -p0 +%patch326 -p0 +%patch327 -p0 +%patch328 -p0 +%patch329 -p0 +%patch330 -p0 +%patch331 -p0 +%patch332 -p0 +%patch333 -p0 +%patch334 -p0 +%patch335 -p0 +%patch336 -p0 +%patch337 -p0 +%patch338 -p0 +%patch339 -p0 +%patch340 -p0 +%patch341 -p0 +%patch342 -p0 +%patch343 -p0 +%patch344 -p0 %patch345 -p1 -%patch352 -p1 +%patch346 -p0 +%patch347 -p0 +%patch348 -p0 +%patch349 -p0 +%patch350 -p0 +%patch351 -p0 +%patch352 -p0 +%patch353 -p0 +%patch354 -p0 +%patch355 -p0 +%patch356 -p0 +%patch357 -p0 +%patch358 -p0 +%patch359 -p0 +%patch360 -p0 +%patch361 -p0 %patch362 -p1 +%patch363 -p0 +%patch364 -p0 +%patch365 -p0 %patch366 -p1 +%patch367 -p0 %patch368 -p1 +%patch369 -p0 +%patch370 -p0 +%patch371 -p0 +%patch372 -p0 +%patch373 -p0 +%patch374 -p0 +%patch375 -p0 +%patch376 -p0 +%patch377 -p0 +%patch378 -p0 +%patch379 -p0 +%patch380 -p0 +%patch381 -p0 +%patch382 -p0 +%patch383 -p0 +%patch384 -p0 +%patch385 -p0 %patch386 -p1 +%patch387 -p0 +%patch388 -p0 +%patch389 -p0 +%patch390 -p0 +%patch391 -p0 +%patch392 -p0 +%patch393 -p0 +%patch394 -p0 +%patch395 -p0 +%patch396 -p0 +%patch397 -p0 +%patch398 -p0 +%patch399 -p0 +%patch400 -p0 +%patch401 -p0 +%patch402 -p0 +%patch403 -p0 +%patch404 -p0 +%patch405 -p0 +%patch406 -p0 +%patch407 -p0 +%patch408 -p0 +%patch409 -p0 +%patch410 -p0 +%patch411 -p0 +%patch412 -p0 +%patch413 -p0 +%patch414 -p0 +%patch415 -p0 +%patch416 -p0 +%patch417 -p0 +%patch418 -p0 +%patch419 -p0 +%patch420 -p0 +%patch421 -p0 +%patch422 -p0 +%patch423 -p0 +%patch424 -p0 +%patch425 -p0 +%patch426 -p0 +%patch427 -p0 +%patch428 -p0 +%patch429 -p0 %patch430 -p1 -%patch475 -p1 +%patch431 -p0 +%patch432 -p0 +%patch433 -p0 +%patch434 -p0 +%patch435 -p0 +%patch436 -p0 +%patch437 -p0 +%patch438 -p0 +%patch439 -p0 %ifarch %arm %patch38 -p1 %endif -%patch490 -p1 +%patch440 -p0 +%patch441 -p0 +%patch442 -p0 +%patch443 -p0 +%patch444 -p0 +%patch445 -p0 +%patch446 -p0 +%patch447 -p0 +%patch448 -p0 +%patch449 -p0 +%patch450 -p0 +%patch451 -p0 +%patch452 -p0 +%patch453 -p0 +%patch454 -p0 +%patch455 -p0 +%patch456 -p0 +%patch457 -p0 +%patch458 -p0 +%patch459 -p0 +%patch460 -p0 +%patch461 -p0 +%patch462 -p0 +%patch463 -p0 +%patch464 -p0 +%patch465 -p0 +%patch466 -p0 +%patch467 -p0 +%patch468 -p0 +%patch469 -p0 +%patch470 -p0 +%patch471 -p0 +%patch472 -p0 +%patch473 -p0 +%patch474 -p0 +%patch475 -p0 +%patch476 -p0 +%patch477 -p0 +%patch478 -p0 +%patch479 -p0 +%patch480 -p0 +%patch481 -p0 +%patch482 -p0 +%patch483 -p0 +%patch484 -p0 +%patch485 -p0 +%patch486 -p0 +%patch487 -p0 +%patch488 -p0 +%patch489 -p0 +%patch490 -p0 +%patch491 -p0 +%patch492 -p0 +%patch493 -p0 +%patch494 -p0 +%patch495 -p0 +%patch496 -p0 +%patch497 -p0 +%patch498 -p0 +%patch499 -p0 +%patch500 -p0 +%patch501 -p0 +%patch502 -p0 +%patch503 -p0 +%patch504 -p0 +%patch505 -p0 +%patch506 -p0 +%patch507 -p0 +%patch509 -p0 +%patch510 -p0 +%patch511 -p0 +%patch512 -p0 +%patch513 -p1 +%patch514 -p0 +%patch515 -p0 +%patch516 -p0 +%patch517 -p0 +%patch518 -p1 +%patch519 -p1 %patch520 -p1 -%patch521 -p1 -%patch522 -p1 +%patch521 -p0 # udev patches %patch1001 -p1 @@ -630,31 +1952,131 @@ cp %{SOURCE7} m4/ %patch1005 -p1 %patch1006 -p1 %patch1007 -p1 +%if 0%{?suse_version} <= 1310 +%patch1008 -p1 +%endif +%patch1009 -p1 +%patch1010 -p1 %patch1011 -p1 %patch1012 -p1 %patch1013 -p1 +%patch1014 -p1 +%patch1015 -p1 +%patch1016 -p0 +%patch1017 -p0 +%patch1018 -p0 +%patch1019 -p0 +%patch1020 -p0 %patch1021 -p1 +%if %{with udevsettle} +%patch1022 -p1 +%endif +%patch1023 -p0 +%patch1024 -p0 +%if %{with blkrrpart} +%patch1025 -p1 +%endif +%patch1026 -p1 +%if %{with blkrrpart} +%patch1027 -p1 +%endif +%patch1028 -p1 +%if %{with blkrrpart} +%patch1029 -p1 +%patch1030 -p1 +%patch1031 -p1 +%patch1032 -p1 +%patch1033 -p1 +%patch1034 -p1 +%endif %patch1035 -p1 %patch1036 -p1 %if %{with blkrrpart} %patch1037 -p1 %endif +%patch1038 -p0 +%if %{with udevsettle} +%patch1039 -p0 +%endif %patch1040 -p1 +%if %{with udevsettle} +%patch1041 -p0 +%patch1042 -p0 +%patch1043 -p0 +%endif +%patch1044 -p0 +%patch1045 -p0 %patch1046 -p1 +%patch1047 -p0 +%patch1048 -p0 +%patch1049 -p0 %patch1050 -p1 %patch1051 -p1 +%patch1052 -p0 %patch1053 -p1 %if %{with blkrrpart} +%patch1054 -p0 %else %patch1055 -p1 %endif +%patch1056 -p0 +%if %{with udevsettle} +%patch1057 -p0 +%else +%patch1058 -p0 +%endif +%patch1059 -p0 %patch1060 -p1 +%patch1061 -p0 %patch1062 -p1 +%if %{with parentpathid} +%patch1063 -p0 +%endif +%patch1064 -p0 +%patch1065 -p0 %patch1066 -p1 +%patch1067 -p1 +%patch1068 -p0 +%patch1069 -p0 +%patch1070 -p0 +%patch1071 -p0 +%patch1072 -p0 +%patch1073 -p0 +%patch1074 -p0 +%patch1075 -p0 +%if %{with udevsettle} +%patch1076 -p0 +%else +%patch1077 -p0 +%endif +%if 0%{?suse_version} > 1310 +%if %{with udevsettle} +%patch1079 -p1 +%else +%patch1078 -p1 +%endif +%endif +%patch1080 -p0 +%patch1081 -p0 +%patch1082 -p0 +%patch1083 -p0 +%patch1084 -p0 +%patch1085 -p0 +%patch1086 -p0 +%patch1087 -p0 %patch1088 -p1 +%patch1089 -p1 +%if %{with parentpathid} +%patch1090 -p0 +%patch1091 -p0 +%endif +%patch1092 -p0 +%patch1093 -p0 +%patch1094 -p0 %patch1095 -p1 %patch1096 -p1 %patch1097 -p1 +%patch1098 -p0 # remove patch backups find -name '*.orig' -exec rm -f '{}' \+ @@ -674,6 +2096,17 @@ else sed -ri 's@^([[:blank:]]+)(cmdline\[i\+\+\][[:blank:]]+=[[:blank:]]+"-l")(;)@\1/* \2 */\3@' src/fsck/fsck.c fi +%if 0%{?suse_version} <= 1310 +# +# Older versions like oS 13.1 do not distinguish between +# network.target and network-online.target +# +for f in src/core/service.c src/insserv-generator/insserv-generator.c +do + sed -ri '/"network",.*SPECIAL_NETWORK_ONLINE_TARGET,/{ s/SPECIAL_NETWORK_ONLINE_TARGET/SPECIAL_NETWORK_TARGET/}' $f +done +%endif + # # In combination with Patch352 set-and-use-default-logconsole.patch # Ensure that journald log on tty10 @@ -714,11 +2147,11 @@ cflags () esac set +o noclobber } -autoreconf -fi +autoreconf -fiv # prevent pre-generated and distributed files from re-building find . -name "*.[1-8]" -exec touch '{}' '+'; export V=e -export CFLAGS="%{optflags}" +export CFLAGS="%{optflags} $(getconf LFS_CFLAGS)" export LDFLAGS %if 0%{?suse_version} == 1315 CFLAGS="$CFLAGS -DNET_IFNAMES=1" @@ -744,7 +2177,6 @@ cflags -Wl,--hash-size=8599 LDFLAGS --disable-gudev \ --disable-myhostname \ --disable-manpages \ - --disable-machined \ %else --enable-manpages \ %if %{with python} @@ -752,10 +2184,16 @@ cflags -Wl,--hash-size=8599 LDFLAGS %endif --enable-gtk-doc \ --with-nss-my-hostname-warning \ +%endif +%if %{with compat_libs} + --enable-compat-libs \ %endif --enable-selinux \ --enable-split-usr \ --disable-static \ +%if 0%{?suse_version} <= 1310 + --with-firmware-path="%{_prefix}/lib/firmware:/lib/firmware" \ +%endif %if ! 0%{?has_efi} --disable-efi \ %endif @@ -764,15 +2202,11 @@ cflags -Wl,--hash-size=8599 LDFLAGS --with-debug-shell=/bin/bash \ --disable-smack \ --disable-ima \ +%if 0%{?suse_version} > 1310 + --disable-multi-seat-x \ +%endif %if %{without networkd} --disable-networkd \ -%endif -%if %{without sysvcompat} - --with-sysvinit-path= \ - --with-sysvrcnd-path= \ -%endif -%if %{without resolved} - --disable-resolved \ %endif --disable-kdbus make %{?_smp_mflags} @@ -781,9 +2215,19 @@ make %{?_smp_mflags} update-man-list man %endif %install -%if !0%{?bootstrap} -cp man/man[0-9]/*.[0-9] man/ -%endif +# Use refreshed manual pages +for man in man/*.[0-9] +do + section=${man##*.} + test -d man/man${section} || continue + new=man/man${section}/${man##*/} + if test -s $new -a $new -nt $man + then + cp -p $new $man + else + sed -ri 's@"(systemd) 209"@"\1 %{version}"@' $man + fi +done make install DESTDIR="%buildroot" # move to %{_lib} @@ -796,17 +2240,24 @@ ln -sf %{_bindir}/udevadm %{buildroot}/sbin/udevadm ln -sf %{_bindir}/systemd-ask-password %{buildroot}/bin/systemd-ask-password ln -sf %{_bindir}/systemctl %{buildroot}/bin/systemctl ln -sf %{_prefix}/lib/systemd/systemd-udevd %{buildroot}/sbin/udevd - %if ! 0%{?bootstrap} ln -sf systemd-udevd.8 %{buildroot}/%{_mandir}/man8/udevd.8 %endif - +%if 0%{?suse_version} <= 1310 +ln -sf /lib/firmware %{buildroot}/usr/lib/firmware +%endif %if ! 0%{?bootstrap} +install -m755 -D %{S:8} %{buildroot}/etc/init.d/systemd-journald install -D -m 755 %{S:9} %{buildroot}%{_sbindir}/nss-myhostname-config %endif +sed -ie "s|@@PREFIX@@|%{_prefix}/lib/udev|g" %{S:1060} +sed -ie "s|@@SYSTEMD@@|%{_prefix}/lib/systemd|g" %{S:1060} +sed -ie "s|@@BINDIR@@|%{_bindir}|g" %{S:1060} +install -m755 -D %{S:1060} %{buildroot}/etc/init.d/boot.udev ln -s systemd-udevd.service %{buildroot}/%{_prefix}/lib/systemd/system/udev.service install -m755 -D %{S:1063} %{buildroot}/%{_prefix}/lib/udev/udev-generate-persistent-rule +install -m755 -D %{S:1064} %{buildroot}/%{_bindir}/systemd-sleep-grub install -m755 -D %{S:1065} %{buildroot}/%{_prefix}/lib/udev/remount-tmpfs mkdir -p %{buildroot}/%{_prefix}/lib/systemd/system/basic.target.wants rm -rf %{buildroot}%{_sysconfdir}/rpm @@ -824,7 +2275,28 @@ ln -s ../usr/bin/systemctl %{buildroot}/sbin/telinit ln -s ../usr/bin/systemctl %{buildroot}/sbin/runlevel rm -rf %{buildroot}/etc/systemd/system/*.target.wants rm -f %{buildroot}/etc/systemd/system/default.target - +# aliases for /etc/init.d/* +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/cgroup.service +ln -s systemd-tmpfiles-setup.service %{buildroot}/%{_prefix}/lib/systemd/system/cleanup.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/clock.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/crypto.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/crypto-early.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/device-mapper.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/earlysyslog.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/kbd.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/ldconfig.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/loadmodules.service +install -m644 %{S:2} %{buildroot}/%{_prefix}/lib/systemd/system/localfs.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/localnet.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/proc.service +ln -s systemd-fsck-root.service %{buildroot}/%{_prefix}/lib/systemd/system/rootfsck.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/single.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/swap.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/startpreload.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/stoppreload.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/earlyxdm.service +ln -s systemd-sysctl.service %{buildroot}/%{_prefix}/lib/systemd/system/sysctl.service +ln -s systemd-random-seed.service %{buildroot}/%{_prefix}/lib/systemd/system/random.service # don't mount /tmp as tmpfs for now rm %{buildroot}/%{_prefix}/lib/systemd/system/local-fs.target.wants/tmp.mount @@ -897,6 +2369,15 @@ EOF install -m 644 %{S:11} %{buildroot}/%{_prefix}/lib/systemd/system/ ln -s ../after-local.service %{buildroot}/%{_prefix}/lib/systemd/system/multi-user.target.wants/ +%if ! 0%{?bootstrap} +%if %{without python} +for man in systemd.directives.7 systemd.index.7 +do + install -m 0644 man/$man %{buildroot}%{_mandir}/man7/ +done +%endif +%endif + mkdir -p %{buildroot}%{_localstatedir}/lib/systemd/backlight mkdir -p %{buildroot}%{_localstatedir}/lib/systemd/random-seed @@ -913,8 +2394,10 @@ done > files.completion > files.completion %endif +%if 0%{suse_version} >= 1310 # packaged in systemd-rpm-macros rm -f %{buildroot}/%{_prefix}/lib/rpm/macros.d/macros.systemd +%endif %if %{without compat_libs} lib=%{_libdir}/libsystemd.so @@ -926,6 +2409,30 @@ do done %endif +%if 0%{suse_version} <= 1310 +cat > %{buildroot}/%{_prefix}/lib/systemd/system/fix.service <<-'EOF' + [Unit] + Description=Fix against deadlock at shutdown + Wants=remote-fs.target remote-fs-pre.target + Before=remote-fs.target systemd-logind.service + After=remote-fs-pre.target network.target rpcbind.target nss-lookup.target nss-user-lookup.target + ConditionPathExists=|/etc/init.d/autofs + ConditionPathExists=|/etc/init.d/nfs + + [Service] + Type=oneshot + RemainAfterExit=true + ExecStart=/bin/true + ExecStop=-/etc/init.d/autofs stop + ExecStop=-/etc/init.d/nfs stop + + [Install] + WantedBy=remote-fs.target + EOF + mkdir -p %{buildroot}/%{_prefix}/lib/systemd/system/remote-fs.target.wants + ln -sf ../fix.service %{buildroot}/%{_prefix}/lib/systemd/system/remote-fs.target.wants +%endif + # Some files which may created by us or by the admin later on mkdir -p %{buildroot}%{_sysconfdir}/X11/xorg.conf.d for ghost in X11/xorg.conf.d/00-keyboard.conf vconsole.conf locale.conf \ @@ -973,7 +2480,6 @@ fi getent group wheel && setfacl -Rnm g:wheel:rx,d:g:wheel:rx %{_localstatedir}/log/journal/ > /dev/null 2>&1 || : getent group adm && setfacl -Rnm g:adm:rx,d:g:adm:rx %{_localstatedir}/log/journal/ > /dev/null 2>&1 || : %endif -systemd-sysusers || : # Try to read default runlevel from the old inittab if it exists if [ ! -e /etc/systemd/system/default.target -a -e /etc/inittab ]; then @@ -1021,6 +2527,8 @@ fi if [ $1 -eq 0 ]; then /usr/bin/systemctl disable \ getty@.service \ + systemd-readahead-collect.service \ + systemd-readahead-replay.service \ remote-fs.target >/dev/null 2>&1 || : rm -f /etc/systemd/system/default.target 2>&1 || : fi @@ -1050,6 +2558,7 @@ fi %post -n %{udevpkgname} /usr/bin/udevadm hwdb --update >/dev/null 2>&1 || : +%{fillup_and_insserv -Y boot.udev} # add KERNEL name match to existing persistent net rules sed -ri '/KERNEL/ ! { s/NAME="(eth|wlan|ath)([0-9]+)"/KERNEL=="\1*", NAME="\1\2"/}' \ /etc/udev/rules.d/70-persistent-net.rules >/dev/null 2>&1 || : @@ -1148,9 +2657,6 @@ fi %postun -n nss-myhostname -p /sbin/ldconfig -%post -n nss-mymachines -p /sbin/ldconfig -%postun -n nss-mymachines -p /sbin/ldconfig - %pre journal-gateway getent passwd systemd-journal-gateway >/dev/null || useradd -r -l -g systemd-journal-gateway -d %{_localstatedir}/log/journal/ -s /usr/sbin/nologin -c "Journal Gateway" systemd-journal-gateway >/dev/null 2>&1 || : getent group systemd-journal-gateway >/dev/null || groupadd -r systemd-journal-gateway || : @@ -1173,26 +2679,17 @@ exit 0 /bin/systemd /bin/systemd-ask-password /bin/systemctl -%if %{with networkd} -%{_bindir}/networkctl -%endif +%{_bindir}/systemd-sleep-grub %{_bindir}/busctl %{_bindir}/kernel-install %{_bindir}/hostnamectl %{_bindir}/localectl -%if ! 0%{?bootstrap} %{_bindir}/machinectl -%endif %{_bindir}/systemctl %{_bindir}/systemd-analyze -%{_bindir}/coredumpctl +%{_bindir}/systemd-coredumpctl %{_bindir}/systemd-delta -%{_bindir}/systemd-escape -%{_bindir}/systemd-firstboot -%{_bindir}/systemd-path -%{_bindir}/systemd-sysusers %{_bindir}/systemd-notify -%{_bindir}/systemd-hwdb %{_bindir}/systemd-run %{_bindir}/systemd-journalctl %{_bindir}/journalctl @@ -1235,6 +2732,7 @@ exit 0 %exclude %{_prefix}/lib/systemd/system/systemd-journal-gatewayd.* %endif %{_prefix}/lib/systemd/system/*.automount +%{_prefix}/lib/systemd/system/*.busname %{_prefix}/lib/systemd/system/*.service %{_prefix}/lib/systemd/system/*.slice %{_prefix}/lib/systemd/system/*.target @@ -1273,19 +2771,12 @@ exit 0 %{_bindir}/bootctl %{_prefix}/lib/systemd/system-generators/systemd-efi-boot-generator %endif -%{_prefix}/lib/systemd/system-generators/systemd-debug-generator -%{_prefix}/lib/systemd/system-generators/systemd-hibernate-resume-generator -%if %{with sysvcompat} -%{_prefix}/lib/systemd/system-generators/systemd-sysv-generator -%{_prefix}/lib/systemd/system-generators/systemd-rc-local-generator -%{_prefix}/lib/systemd/system-generators/systemd-insserv-generator -%endif %{_prefix}/lib/systemd/system-generators/systemd-getty-generator +%{_prefix}/lib/systemd/system-generators/systemd-rc-local-generator %{_prefix}/lib/systemd/system-generators/systemd-fstab-generator %{_prefix}/lib/systemd/system-generators/systemd-system-update-generator +%{_prefix}/lib/systemd/system-generators/systemd-insserv-generator %{_prefix}/lib/systemd/system-generators/systemd-gpt-auto-generator -%{_prefix}/lib/systemd/system-preset/ -%{_prefix}/lib/sysusers.d/ /%{_lib}/security/pam_systemd.so %config /etc/pam.d/systemd-user @@ -1314,23 +2805,13 @@ exit 0 %dir %{_datadir}/dbus-1/services %dir %{_datadir}/dbus-1/system-services %config(noreplace) %{_sysconfdir}/systemd/bootchart.conf -%config(noreplace) %{_sysconfdir}/systemd/coredump.conf -%if !0%{?bootstrap} -%config(noreplace) %{_sysconfdir}/systemd/journal-remote.conf -%endif -%config(noreplace) %{_sysconfdir}/systemd/timesyncd.conf %config(noreplace) %{_sysconfdir}/systemd/system.conf %config(noreplace) %{_sysconfdir}/systemd/logind.conf %config(noreplace) %{_sysconfdir}/systemd/journald.conf %config(noreplace) %{_sysconfdir}/systemd/user.conf %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.locale1.conf %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.login1.conf -%if !0%{?bootstrap} %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.machine1.conf -%endif -%if %{with networkd} -%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.network1.conf -%endif %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.systemd1.conf %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.hostname1.conf %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.timedate1.conf @@ -1347,24 +2828,15 @@ exit 0 %ghost %config(noreplace) %{_sysconfdir}/systemd/system/runlevel4.target %ghost %config(noreplace) %{_sysconfdir}/systemd/system/runlevel5.target -%{_datadir}/factory/ %{_datadir}/dbus-1/services/org.freedesktop.systemd1.service -%if %{with networkd} -%{_datadir}/dbus-1/system-services/org.freedesktop.network1.service -%endif %{_datadir}/dbus-1/system-services/org.freedesktop.systemd1.service %{_datadir}/dbus-1/system-services/org.freedesktop.locale1.service %{_datadir}/dbus-1/system-services/org.freedesktop.login1.service %{_datadir}/dbus-1/system-services/org.freedesktop.hostname1.service -%if !0%{?bootstrap} %{_datadir}/dbus-1/system-services/org.freedesktop.machine1.service -%endif %{_datadir}/dbus-1/system-services/org.freedesktop.timedate1.service %dir %{_datadir}/polkit-1 %dir %{_datadir}/polkit-1/actions -%if !0%{?bootstrap} -%{_datadir}/polkit-1/actions/org.freedesktop.machine1.policy -%endif %{_datadir}/polkit-1/actions/org.freedesktop.systemd1.policy %{_datadir}/polkit-1/actions/org.freedesktop.hostname1.policy %{_datadir}/polkit-1/actions/org.freedesktop.locale1.policy @@ -1414,11 +2886,8 @@ exit 0 %{_datadir}/zsh/site-functions/* %ghost %{_localstatedir}/lib/systemd/backlight %ghost %{_localstatedir}/lib/systemd/random-seed -%if %{with resolved} -%{_sysconfdir}/dbus-1/system.d/org.freedesktop.resolve1.conf -%{_sysconfdir}/systemd/resolved.conf -%{_libdir}/libnss_resolve.so.2 -%{_datadir}/dbus-1/system-services/org.freedesktop.resolve1.service +%if 0%{?suse_version} > 1310 +%{_datadir}/pkgconfig/systemd.pc %endif %if ! 0%{?bootstrap} @@ -1443,7 +2912,9 @@ exit 0 %{_includedir}/systemd/sd-journal.h %{_includedir}/systemd/sd-messages.h %{_includedir}/systemd/_sd-common.h -%{_libdir}/pkgconfig/systemd.pc +%if 0%{?suse_version} <= 1310 +%{_datadir}/pkgconfig/systemd.pc +%endif %{_libdir}/pkgconfig/libsystemd.pc %{_libdir}/pkgconfig/libsystemd-daemon.pc %{_libdir}/pkgconfig/libsystemd-login.pc @@ -1505,6 +2976,7 @@ exit 0 %{_prefix}/lib/udev/rules.d/*.rules %dir %{_prefix}/lib/udev/hwdb.d %{_prefix}/lib/udev/hwdb.d/* +%{_sysconfdir}/init.d/boot.udev %dir %{_sysconfdir}/udev/ %dir %{_sysconfdir}/udev/rules.d/ %ghost %{_sysconfdir}/udev/hwdb.bin @@ -1535,6 +3007,9 @@ exit 0 %defattr(-,root,root) %{_includedir}/libudev.h %{_libdir}/libudev.so +%if 0%{?suse_version} <= 1310 +%{_datadir}/pkgconfig/udev.pc +%endif %{_libdir}/pkgconfig/libudev.pc %if ! 0%{?bootstrap} %dir %{_datadir}/gtk-doc @@ -1568,9 +3043,8 @@ exit 0 %files logger %defattr(-,root,root) %dir %attr(2755,root,systemd-journal) %{_localstatedir}/log/journal/ -%if %{with sysvcompat} %{_localstatedir}/log/README -%endif +/etc/init.d/systemd-journald %files -n nss-myhostname %defattr(-, root, root) @@ -1583,10 +3057,6 @@ exit 0 %{_prefix}/lib/systemd/systemd-journal-gatewayd %{_mandir}/man8/systemd-journal-gatewayd.* %{_datadir}/systemd/gatewayd - -%files -n nss-mymachines -%defattr(-,root,root) -%_libdir/libnss_mymachines.so* %endif %changelog diff --git a/systemd-pam_config.patch b/systemd-pam_config.patch index 898a6548..85027c50 100644 --- a/systemd-pam_config.patch +++ b/systemd-pam_config.patch @@ -1,16 +1,14 @@ ---- - src/login/systemd-user | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -Index: systemd-218/src/login/systemd-user -=================================================================== ---- systemd-218.orig/src/login/systemd-user -+++ systemd-218/src/login/systemd-user -@@ -2,5 +2,5 @@ - # - # Used by systemd --user instances. +diff --git a/src/login/systemd-user b/src/login/systemd-user +index 7b57dbf..c0fc793 100644 +--- a/src/login/systemd-user ++++ b/src/login/systemd-user +@@ -2,7 +2,7 @@ --account include system-auth --session include system-auth -+account include common-account -+session include common-session + # Used by systemd when launching systemd user instances. + +-account include system-auth +-session include system-auth ++account include common-account ++session include common-session + auth required pam_deny.so + password required pam_deny.so diff --git a/systemd-powerd-initctl-support.patch b/systemd-powerd-initctl-support.patch index 675124ba..bc0e3ca4 100644 --- a/systemd-powerd-initctl-support.patch +++ b/systemd-powerd-initctl-support.patch @@ -12,8 +12,10 @@ Signed-off-by: Hannes Reinecke src/initctl/initctl.c | 71 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 70 insertions(+), 1 deletion(-) ---- systemd-219.orig/src/initctl/initctl.c -+++ systemd-219/src/initctl/initctl.c +diff --git a/src/initctl/initctl.c b/src/initctl/initctl.c +index 468df35..d4794a6 100644 +--- a/src/initctl/initctl.c ++++ b/src/initctl/initctl.c @@ -32,8 +32,11 @@ #include #include @@ -34,12 +36,11 @@ Signed-off-by: Hannes Reinecke #define SERVER_FD_MAX 16 #define TIMEOUT_MSEC ((int) (DEFAULT_EXIT_USEC/USEC_PER_MSEC)) -@@ -141,7 +145,54 @@ static void change_runlevel(Server *s, i +@@ -141,7 +145,53 @@ static void change_runlevel(Server *s, int runlevel) { } } +static int send_shutdownd(unsigned delay, char mode, const char *message) { -+#ifdef HAVE_SYSV_COMPAT + usec_t t = now(CLOCK_REALTIME) + delay * USEC_PER_MINUTE; + struct sd_shutdown_command c = { + .usec = t, @@ -80,7 +81,7 @@ Signed-off-by: Hannes Reinecke + + if (sendmsg(fd, &msghdr, MSG_NOSIGNAL) < 0) + return -errno; -+#endif ++ + return 0; +} + @@ -89,7 +90,7 @@ Signed-off-by: Hannes Reinecke assert(s); assert(req); -@@ -184,9 +235,28 @@ static void request_process(Server *s, c +@@ -184,9 +234,28 @@ static void request_process(Server *s, const struct init_request *req) { return; case INIT_CMD_POWERFAIL: @@ -119,3 +120,6 @@ Signed-off-by: Hannes Reinecke return; case INIT_CMD_CHANGECONS: +-- +1.8.1.4 + diff --git a/systemd-rpmlintrc b/systemd-rpmlintrc index a9e12af8..def95a7d 100644 --- a/systemd-rpmlintrc +++ b/systemd-rpmlintrc @@ -1,4 +1,3 @@ -addFilter("invalid-pkgconfig-file") addFilter(".*dangling-symlink /sbin/(halt|init|poweroff|telinit|shutdown|runlevel|reboot).*") addFilter(".*dangling-symlink .* /dev/null.*") addFilter(".*files-duplicate .*/reboot\.8.*") @@ -17,7 +16,6 @@ addFilter(".*libgudev-.*shlib-fixed-dependency.*") addFilter(".*suse-filelist-forbidden-systemd-userdirs.*") addFilter("libudev-mini.*shlib-policy-name-error.*") addFilter("nss-myhostname.*shlib-policy-name-error.*") -addFilter("nss-mymachines.*shlib-policy-name-error.*") addFilter("systemd-logger.*useless-provides sysvinit(syslog).*") addFilter("devel-file-in-non-devel-package.*/usr/share/pkgconfig/(udev|systemd)\.pc.*") addFilter(".*script-without-shebang.*/usr/lib/udev/rule_generator.functions.*") diff --git a/systemd-sleep-grub b/systemd-sleep-grub new file mode 100644 index 00000000..5cd8bef3 --- /dev/null +++ b/systemd-sleep-grub @@ -0,0 +1,204 @@ +#!/bin/bash +# +# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. + +set -x + +prepare-parameters() +{ + eval `grep LOADER_TYPE= /etc/sysconfig/bootloader` + + if [ x"$LOADER_TYPE" = "xgrub2" -o x"$LOADER_TYPE" = "xgrub2-efi" ]; then + GRUBONCE="/usr/sbin/grub2-once" + GRUBDEFAULT="/boot/grub2/grubenv" + GRUB2EDITENV="/usr/bin/grub2-editenv" + GRUB2CONF="/boot/grub2/grub.cfg" + BLKID="/usr/sbin/blkid" + getkernels="getkernels-grub2" + fi +} + +##################################################################### +# gets a list of available kernels from /boot/grub2/grub.cfg +# kernels are in the array $KERNELS, output to stdout to be eval-ed. +getkernels-grub2() +{ + local I DUMMY MNT ROOTDEV + declare -i I=0 J=-1 + + # we need the root partition later to decide if this is the kernel to select + while read ROOTDEV MNT DUMMY; do + [ "$ROOTDEV" = "rootfs" ] && continue # not what we are searching for + if [ "$MNT" = "/" ]; then + break + fi + done < /proc/mounts + + while read LINE; do + case $LINE in + menuentry\ *) + let J++ + ;; + set\ default*) + local DEFAULT=${LINE#*default=} + + if echo $DEFAULT | grep -q saved_entry ; then + local SAVED=`$GRUB2EDITENV $GRUBDEFAULT list | sed -n s/^saved_entry=//p` + if [ -n "$SAVED" ]; then + DEFAULT_BOOT=$($GRUBONCE --show-mapped "$SAVED") + fi + fi + + ;; + linux*noresume*|module*xen*noresume*) + echo " Skipping grub entry #${J}, because it has the noresume option" >&2 + ;; + linux*root=*|module*xen*root=*) + local ROOT + ROOT=${LINE#*root=} + DUMMY=($ROOT) + ROOT=${DUMMY[0]} + + if [ x"${ROOT:0:5}" = "xUUID=" ]; then + UUID=${ROOT#UUID=} + if [ -n "$UUID" ]; then + ROOT=$($BLKID -U $UUID) + fi + fi + + if [ "$(stat -Lc '%t:%T' $ROOT)" != "$(stat -Lc '%t:%T' $ROOTDEV)" ]; then + echo " Skipping grub entry #${J}, because its root= parameter ($ROOT)" >&2 + echo " does not match the current root device ($ROOTDEV)." >&2 + continue + fi + DUMMY=($LINE) # kernel (hd0,1)/boot/vmlinuz-ABC root=/dev/hda2 + echo "KERNELS[$I]='${DUMMY[1]##*/}'" # vmlinuz-ABC + echo "MENU_ENTRIES[$I]=$J" + # DEBUG "Found kernel entry #${I}: '${DUMMY[1]##*/}'" INFO + let I++ + ;; + linux*|module*xen*) + # a kernel without "root="? We better skip that one... + echo " Skipping grub entry #${J}, because it has no root= option" >&2 + ;; + *) ;; + esac + done < "$GRUB2CONF" +} + +############################################################# +# runs grubonce from the grub package to select which kernel +# to boot on next startup +grub-once() +{ + if [ -x "$GRUBONCE" ]; then + echo " running '$GRUBONCE $1'" + $GRUBONCE $1 + else + echo "WARNING: $GRUBONCE not found, not preparing bootloader" + fi +} + +############################################################# +# restore grub default after (eventually failed) resume +grub-once-restore() +{ + echo "INFO: running grub-once-restore" + prepare-parameters + $GRUB2EDITENV $GRUBDEFAULT unset next_entry +} + +############################################################################# +# try to find a kernel image that matches the actually running kernel. +# We need this, if more than one kernel is installed. This works reasonably +# well with grub, if all kernels are named "vmlinuz-`uname -r`" and are +# located in /boot. If they are not, good luck ;-) +find-kernel-entry() +{ + NEXT_BOOT=-1 + ARCH=`uname -m` + declare -i I=0 + # DEBUG "running kernel: $RUNNING" DIAG + while [ -n "${KERNELS[$I]}" ]; do + BOOTING="${KERNELS[$I]}" + if IMAGE=`readlink /boot/$BOOTING` && [ -e "/boot/${IMAGE##*/}" ]; then + # DEBUG "Found kernel symlink $BOOTING => $IMAGE" INFO + BOOTING=$IMAGE + fi + case $ARCH in + ppc*) BOOTING="${BOOTING#*vmlinux-}" ;; + *) BOOTING="${BOOTING#*vmlinuz-}" ;; + esac + if [ "$RUNNING" == "$BOOTING" ]; then + NEXT_BOOT=${MENU_ENTRIES[$I]} + echo " running kernel is grub menu entry $NEXT_BOOT (${KERNELS[$I]})" + break + fi + let I++ + done + # if we have not found a kernel, issue a warning. + # if we have found a kernel, we'll do "grub-once" later, after + # prepare_suspend finished. + if [ $NEXT_BOOT -eq -1 ]; then + echo "WARNING: no kernelfile matching the running kernel found" + fi +} + +############################################################################# +# if we did not find a kernel (or BOOT_LOADER is not GRUB) check, +# if the running kernel is still the one that will (probably) be booted for +# resume (default entry in menu.lst or, if there is none, the kernel file +# /boot/vmlinuz points to.) +# This will only work, if you use "original" SUSE kernels. +# you can always override with the config variable set to "yes" +prepare-grub() +{ + echo "INFO: running prepare-grub" + prepare-parameters + eval `$getkernels` + RUNNING=`uname -r` + find-kernel-entry + + RET=0 + + if [ $NEXT_BOOT -eq -1 ]; then + # which kernel is booted with the default entry? + BOOTING="${KERNELS[$DEFAULT_BOOT]}" + # if there is no default entry (no menu.lst?) we fall back to + # the default of /boot/vmlinuz. + [ -z "$BOOTING" ] && BOOTING="vmlinuz" + if IMAGE=`readlink /boot/$BOOTING` && [ -e "/boot/${IMAGE##*/}" ]; then + BOOTING=$IMAGE + fi + BOOTING="${BOOTING#*vmlinuz-}" + echo "running kernel: '$RUNNING', probably booting kernel: '$BOOTING'" + if [ "$BOOTING" != "$RUNNING" ]; then + echo "ERROR: kernel version mismatch, cannot suspend to disk" + echo "running: $RUNNING booting: $BOOTING" >> $INHIBIT + RET=1 + fi + else + # set the bootloader to the running kernel + echo " preparing boot-loader: selecting entry $NEXT_BOOT, kernel /boot/$BOOTING" + T1=`date +"%s%N"` + sync; sync; sync # this is needed to speed up grub-once on reiserfs + T2=`date +"%s%N"` + echo " grub-once: `grub-once $NEXT_BOOT`" + T3=`date +"%s%N"` + S=$(((T2-T1)/100000000)); S="$((S/10)).${S:0-1}" + G=$(((T3-T2)/100000000)); G="$((G/10)).${G:0-1}" + echo " time needed for sync: $S seconds, time needed for grub: $G seconds." + fi + + return $RET +} + + +###### main() + +if [ "$1" = pre ] ; then + prepare-grub +fi +if [ "$1" = post ] ; then + grub-once-restore +fi diff --git a/systemd-tmp-safe-defaults.patch b/systemd-tmp-safe-defaults.patch index dd7c0d80..61d05349 100644 --- a/systemd-tmp-safe-defaults.patch +++ b/systemd-tmp-safe-defaults.patch @@ -5,22 +5,20 @@ Subject: systemd tmp safe defaults Fix regression in the default for tmp auto-deletion (FATE#314974). SUSE policy is to not clean /tmp by default. --- - tmpfiles.d/tmp.conf | 5 +++-- + tmpfiles.d/tmp.conf | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) -Index: systemd/tmpfiles.d/tmp.conf -=================================================================== ---- systemd.orig/tmpfiles.d/tmp.conf -+++ systemd/tmpfiles.d/tmp.conf +--- systemd-206.orig/tmpfiles.d/tmp.conf ++++ systemd-206/tmpfiles.d/tmp.conf @@ -8,8 +8,9 @@ # See tmpfiles.d(5) for details # Clear tmp directories separately, to make them easier to override --v /tmp 1777 root root 10d --v /var/tmp 1777 root root 30d +-d /tmp 1777 root root 10d +-d /var/tmp 1777 root root 30d +# SUSE policy: we don't clean those directories -+v /tmp 1777 root root - -+v /var/tmp 1777 root root - ++d /tmp 1777 root root - ++d /var/tmp 1777 root root - # Exclude namespace mountpoints created with PrivateTmp=yes x /tmp/systemd-private-%b-* diff --git a/systemd.changes b/systemd.changes index 7a555d36..78b33870 100644 --- a/systemd.changes +++ b/systemd.changes @@ -1,575 +1,9 @@ -------------------------------------------------------------------- -Tue Mar 3 16:03:07 UTC 2015 - jengelh@inai.de - -- Add 0001-core-rework-device-state-logic.patch to fix spurious - automated umount after mount. - -------------------------------------------------------------------- -Wed Feb 18 12:13:52 UTC 2015 - meissner@suse.com - -- mark more subpackages as !bootstrap for systemd-mini usage. - -------------------------------------------------------------------- -Wed Feb 18 05:01:38 UTC 2015 - crrodriguez@opensuse.org - -- spec : remove --with-firmware-path, firmware loader was removed in v217 -- spec: remove --disable-multi-seat-x, gone.(fixed in xorg) -- spec: Do not enable systemd-readahead-collect.service and -systemd-readahead-replay.service as these do not exist anymore. -- spec: drop timedate-add-support-for-openSUSE-version-of-etc-sysconfig.patch - Yast was fixed to write all timezone changes exactly how timedated expects - things to be done. -- spec: remove handle-etc-HOSTNAME.patch, since late 2014 the netcfg - package handles the migration from /etc/HOSTNAME to /etc/hostname - and owns both files. --spec: remove boot.udev and systemd-journald.init as they currently - serve no purpose. -- suse-sysv-bootd-support.diff: Remove HAVE_SYSVINIT conditions, we - are in sysvcompat-only codepath, also remove the code targetting other - distributions, never compiled as the TARGET_$DISTRO macros are never defined. -- systemd-powerd-initctl-support.patch guard with HAVE_SYSV_COMPAT -- set-and-use-default-logconsole.patch: fix HAVE_SYSV_COMPAT guards -- insserv-generator.patch: Only build when sysvcompat is enabled -- vhangup-on-all-consoles.patch add a comment indicating this is a workaround - for a kernel bug. -- spec: Add option to allow disabling sysvinit compat at build time. -- spec: Add option to enable resolved at build time. -- spec: Remove all %ifs for !factory products, current systemd releases can - neither be built nor installed in older products without upgrading - several components of the base system. - (removed: 1008-add-msft-compability-rules.patch was only for =< 13.1) -- spec: remove all dummy "aliases" to /etc/init.d, that made sense only when - those init scripts still existed. (dummy localfs.service source: gone) -- systemd-sleep-grub: moved to the grub2 package where it belongs as a - suspend/resume hook (SR#286533) (drops prepare-suspend-to-disk.patch) -- remove LFS_CFLAGS from CFLAGS, never needed in systemd as it force feds - config.h everywhere in the preprocessor cmdline. - -------------------------------------------------------------------- -Mon Feb 16 23:46:11 UTC 2015 - jengelh@inai.de - -- Update to new upstream release 219 -* systemd units can now be "unsupported" (like, for example, - .device in a containers), similar to the "skipped" state in - SUSE's prior sysvinit scripts. -* tmpfiles gained the 'v' type for creating btrfs subvolumes. -* tmpfiles gained the 'a' type for setting ACLs. -* systemd-nspawn gained new switches: --ephemeral, --template -* The /var/lib/containers location is deprecated and replaced by - /var/lib/machines. -* machinectl gained the copy-from and copy-to commands. -* machinectl now knows a "bind" command (for use with nspawn) -* new "systemd-importd" daemon to download container images and run - them as nspawn containers. -* networkd collects LLDP network announcements, if available, and - so shown in networkctl. -* The fallback terminal type was changed from "vt102" to "vt220", - allowing PgUp/PgDn keys to work. -* Pressing Ctrl-Alt-Del 7x in 2 seconds forces a umount+reboot now, - useful should the regular shutdown hang. -* Removing storage will cause systemd to unmount the associated - mountpoints so that they don't linger around. - -------------------------------------------------------------------- -Mon Feb 16 11:47:04 UTC 2015 - jengelh@inai.de - -- Add suse-sysv-bootd-support.diff (reinstate old - Revert-service-drop-support-for-SysV-scripts-for-the-early.patch) - -------------------------------------------------------------------- -Mon Feb 16 10:18:18 UTC 2015 - jengelh@inai.de - -- Update to systemd v218-1050-g38ab096 -- Remove patches - use-usr-sbin-sulogin-for-emergency-service.patch (upstream fixed it) -- Reinstate and improve (remove huge indents from) - tty-ask-password-agent-on-console.patch, - 0014-journald-with-journaling-FS.patch, rootsymlink_generator. - -------------------------------------------------------------------- -Mon Feb 16 09:42:48 UTC 2015 - meissner@suse.com - -- disable systemd-resolved for now as it interacts not well with - our methods and security has concerns regarding spoofing. bsc#917781 - ------------------------------------------------------------------- Tue Jan 20 11:33:59 UTC 2015 - werner@suse.de - Add patch kbd-model-map.patch to add missed keyboard layouts which are offered by YaST2 (bsc#910643 and boo#897803) -------------------------------------------------------------------- -Fri Jan 9 18:48:28 UTC 2015 - jengelh@inai.de - -- Update to new upstream release 218 -* New utilities: systemd-timesyncd (SNTP client), - systemd-resolved, systemd-networkd, networkctl, - systemd-sysusers -* machinectl gained a "poweroff" command for clean container shutdown -* The udev hwdb now contains DPI information for mice. -* Userspace firmware loading support has been removed and - the minimum supported kernel version is thus bumped to 3.7. -- Remove patches: - G=gone locally, is upstream; - D=dropped: no longer needed; - N=no longer applies to source nor is it deemed needed; - K=killed: no longer applicable and too complex to resolve: - ---- - G 0002-rfkill-rework-how-we-generate-file-names-from-rfkill.patch - G avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch - K service-flags-sysv-service-with-detected-pid-as-RemainAfte.patch - K remain_after_exit-initscript-heuristic-and-add-new-LSB-hea.patch - K handle-SYSTEMCTL_OPTIONS-environment-variable.patch - K 0018-Make-LSB-Skripts-know-about-Required-and-Should.patch - K log-target-null-instead-kmsg.patch - K tty-ask-password-agent-on-console.patch - K 513-nspawn-veth.patch - K 1087-infinit-timeout-for-kmod-loaded-modules.patch - D module-load-handle-SUSE-etc-sysconfig-kernel-module-list.patch - D avoid-leaking-socket-descriptors.patch - D 0001-make-fortify-happy-with-ppoll.patch - N fix-owner-of-var-log-btmp.patch - N disable-nss-myhostname-warning-bnc-783841.patch - N Revert-service-drop-support-for-SysV-scripts-for-the-early.patch - N 0001-make-209-working-on-older-dist.patch - N 0001-Don-t-snprintf-a-potentially-NULL-pointer.patch - N tmpfiles-do-not-clean-for-mandb-index-files.patch - G 0001-sd-bus-don-t-look-for-a-64bit-value-when-we-only-hav.patch - G avoid-assertion-if-invalid-address-familily-is-passed-to-g.patc - G optionally-warn-if-nss-myhostname-is-called.patch - G 0001-units-systemd-sysctl.service.in-run-after-load-modul.patch - G 0004-getty-generator-properly-escape-instance-names.patch - G rules-add-lid-switch-of-ARM-based-Chromebook-as-a-power-sw.patch - G 0008-Reset-signal-mask-on-re-exec-to-init.patch - G 0001-login-fix-pos-array-allocation.patch - G 0002-login-set-pos-slot-to-fallback-on-pos-eviction.patch - G 0003-login-Allow-calling-org.freedesktop.login1.Seat.Swit.patch - G 0004-fix-typo-in-iDRAC-network-interface-name-irdac-idrac.patch - G 0005-Replace-var-run-with-run-in-remaining-places.patch - G 0006-Revert-back-to-var-run-at-a-couple-of-problems.patch - G 0007-README-document-that-var-run-must-be-a-symlink-run.patch - G 0008-Use-var-run-dbus-system_bus_socket-for-the-D-Bus-soc.patch - G 0009-mount-don-t-send-out-PropertiesChanged-message-if-ac.patch - G 0010-mount-don-t-fire-PropertiesChanged-signals-for-mount.patch - G 0011-logs-show-fix-corrupt-output-with-empty-messages.patch - G 0012-journalctl-refuse-extra-arguments-with-verify-and-si.patch - G 0014-nspawn-fix-detection-of-missing-proc-self-loginuid.patch - G 0001-Fix-systemd-stdio-bridge-symlink.patch - G 0002-execute-free-directory-path-if-we-fail-to-remove-it-.patch - G 0003-Do-not-print-invalid-UTF-8-in-error-messages.patch - G 0004-man-document-missing-options-of-systemd-run.patch - G 0005-systemd-run-add-some-extra-safety-checks.patch - G 0006-journal-assume-that-next-entry-is-after-previous-ent.patch - G 0007-journal-forget-file-after-encountering-an-error.patch - G 0008-core-correctly-unregister-PIDs-from-PID-hashtables.patch - G 0009-logind-fix-reference-to-systemd-user-sessions.servic.patch - G 0010-man-update-link-to-LSB.patch - G 0011-man-systemd-bootchart-fix-spacing-in-command.patch - G 0012-man-add-missing-comma.patch - G 0013-units-Do-not-unescape-instance-name-in-systemd-backl.patch - G 0001-core-busname-add-lookup-string-for-BUSNAME_FAILURE_S.patch - G 0002-manager-flush-memory-stream-before-using-the-buffer.patch - G 0003-busname-don-t-drop-service-from-the-result-string.patch - G 0004-fix-off-by-one-error-in-array-index-assertion.patch - G 0005-logind-fix-policykit-checks.patch - G 0006-rules-mark-loop-device-as-SYSTEMD_READY-0-if-no-file.patch - G 0008-man-multiple-sleep-modes-are-to-be-separated-by-whit.patch - G 0001-gpt-auto-generator-don-t-return-OOM-on-parentless-de.patch - G 0002-bus-fix-memory-leak-when-kdbus-is-not-enabled.patch - G 0006-Do-not-return-1-EINVAL-on-allocation-error.patch - G 0007-networkd-fix-typo.patch - G 0008-sd-bus-don-t-access-invalid-memory-if-a-signal-match.patch - G 0009-sd-bus-don-t-choke-if-somebody-sends-us-a-message-wi.patch - G 0012-journald-remove-stray-reset-of-error-return-value.patch - G 0013-core-libsystemd-systemd-timedate-udev-spelling-fixes.patch - G 0001-cgroup-it-s-not-OK-to-invoke-alloca-in-loops.patch - G 0002-machined-fix-Kill-bus-call-on-machine-objects-when-w.patch - G 0003-sd-bus-don-t-use-assert_return-to-check-for-disconne.patch - G 0004-core-don-t-try-to-relabel-mounts-before-we-loaded-th.patch - G 0005-sd-daemon-fix-incorrect-variable-access.patch - G 0006-sd-event-initialization-perturbation-value-right-bef.patch - G 0007-sd-event-don-t-accidentally-turn-of-watchdog-timer-e.patch - G 0008-systemctl-kill-mode-is-long-long-gone-don-t-mention-.patch - G 0009-ask-password-when-the-user-types-a-overly-long-passw.patch - G 0001-journal-fix-export-of-messages-containing-newlines.patch - G 0002-systemctl-update-NAME-to-PATTERN-in-help.patch - G 0003-tty-ask-password-agent-return-negative-errno.patch - G 0004-systemd-python-use-.hex-instead-of-.get_hex.patch - G 0005-systemd-python-fix-failing-assert.patch - G 0007-dbus-suppress-duplicate-and-misleading-messages.patch - G 0001-reduce-the-amount-of-messages-logged-to-dev-kmsg-whe.patch - G 0001-bash-completion-fix-__get_startable_units.patch - G 0002-sysctl-replaces-some-slashes-with-dots.patch - G 0003-delta-do-not-use-unicode-chars-in-C-locale.patch - G 0004-implement-a-union-to-pad-out-file_handle.patch - G shut-up-annoying-assertion-monotonic-clock-message.patch - G 0001-sd-rtnl-message-append-fix-uninitialized-memory.patch - G 0001-tmpfiles-fix-permissions-on-new-journal-files.patch - G 0001-errno-make-sure-to-handle-the-3-errnos-that-are-alia.patch - G 0003-analyze-fix-plot-with-bad-y-size.patch - G 0004-job-add-waiting-jobs-to-run-queue-in-unit_coldplug.patch - G 0005-job-always-add-waiting-jobs-to-run-queue-during-cold.patch - G 0001-backlight-Avoid-restoring-brightness-to-an-unreadabl.patch - G 0002-backlight-do-nothing-if-max_brightness-is-0.patch - G 0003-backlight-unify-error-messages.patch - G 0004-backlight-warn-if-kernel-exposes-backlight-device-wi.patch - G 0005-backlight-handle-saved-brightness-exceeding-max-brig.patch - G 0001-replace-more-dup-by-F_DUPFD_CLOEXEC.patch - G 0002-pam_systemd-use-F_DUPFD_CLOEXEC-when-dupping-session.patch - G 0001-core-close-socket-fds-asynchronously.patch - G 0002-logind-bring-polkit-policy-for-hibernate-in-line-wit.patch - G 0003-core-make-sure-to-serialize-jobs-for-all-units.patch - G 0001-logind-ignore-lid-switch-if-more-than-1-display-is-c.patch - G 0002-logind-fix-printf-format.patch - G 0003-logind-ignore-lid-switch-events-for-30s-after-each-s.patch - G 0004-logind-Do-not-fail-display-count-if-a-device-has-no-.patch - G 0005-logind-move-lid-switch-handling-from-logind-main-to-.patch - G 0006-man-clarify-that-the-ExecReload-command-should-be-sy.patch - G 0007-man-readahead-fix-cmdline-switch-inconsistency-betwe.patch - G 0008-man-update-journald-rate-limit-defaults.patch - G 0009-nspawn-properly-format-container_uuid-in-UUID-format.patch - G 0010-logind-allow-suspending-if-there-are-no-displays.patch - G 0001-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0002-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0003-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0004-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0005-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0001-conf-parser-silently-ignore-sections-starting-with-X.patch - G 0002-man-note-that-entire-sections-can-now-be-ignored.patch - G 0004-machined-make-sure-GetMachineAddresses-is-available-.patch - G 0005-core-Filter-by-state-behind-the-D-Bus-API-not-in-the.patch - G 0006-login-add-mir-to-the-list-of-session-types.patch - G 0007-logind-fix-Display-property-of-user-objects.patch - G 0001-hwdb-update.patch - G 0002-hwdb-update.patch - G 0003-hwdb-PCI-include-primary-model-string-in-subsystem-m.patch - G 0004-hwdb-update.patch - G 0005-hwdb-update.patch - G 0001-journal-cleanup-up-error-handling-in-update_catalog.patch - G 0002-journal-properly-detect-language-specified-in-line.patch - G 0003-man-mention-XDG_CONFIG_HOME-in-systemd.unit.patch - G 0001-keymap-Add-Lenovo-Enhanced-USB-Keyboard.patch - G 0002-keymap-Asus-EeePC-touchpad-toggle-key.patch - G 0001-nspawn-allow-to-bind-mount-journal-on-top-of-a-non-e.patch - G 0002-nspawn-restore-journal-directory-is-empty-check.patch - G 0003-core-never-consider-failure-when-reading-drop-ins-fa.patch - G 0004-socket-properly-handle-if-our-service-vanished-durin.patch - G 0001-Do-not-unescape-unit-names-in-Install-section.patch - G 0002-analyze-run-use-bus_open_transport_systemd-instead-o.patch - G 0001-virt-rework-container-detection-logic.patch - G 0002-fsck-include-device-name-in-the-message-about-missin.patch - G 0003-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch - G 0004-util-ignore_file-should-not-allow-files-ending-with.patch - G 0006-tty-ask-password-agent-Do-tell-what-directory-we-fai.patch - G 0007-keyboard-add-Plantronics-.Audio-mute-button.patch - G 0001-build-sys-use-glibc-s-xattr-support-instead-of-requi.patch - G 0001-hwdb-fix-case-sensitive-match.patch - G 0001-sd-event-restore-correct-timeout-behaviour.patch - G 0002-bus-make-use-of-sd_bus_try_close-in-exit-on-idle-ser.patch - G 0001-umount-modernizations.patch - G 0002-namespace-when-setting-up-an-inaccessible-mount-poin.patch - G 0003-core-allow-transient-mount-units.patch - G 0004-systemd-detect-virt-only-discover-Xen-domU.patch - G 0005-backlight-Do-not-clamp-brightness-for-LEDs.patch - G 0006-log-honour-the-kernel-s-quiet-cmdline-argument.patch - G 0001-core-fix-invalid-free-in-killall.patch - G 0003-install-fix-invalid-free-in-unit_file_mask.patch - G 0001-systemd-detect-virt-detect-s390-virtualization.patch - G 0001-core-sysvcompat-network-should-be-equivalent-to-netw.patch - G 0002-units-add-missing-caps-so-that-GetAddresses-can-work.patch - G 0003-units-order-systemd-tmpfiles-clean.service-after-tim.patch - G 0005-po-add-Greek-translation.patch - G 0006-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0007-po-add-German-translation.patch - G 0009-core-clean-up-signal-reset-logic-when-reexec.patch - G 0010-util-treat-fuse.sshfs-as-a-network-filesystem.patch - G 0011-build-sys-add-pthread-flag-for-libsystemd-shared.patch - G 0012-core-transaction-avoid-misleading-error-message-when.patch - G 0001-vconsole-also-copy-character-maps-not-just-fonts-fro.patch - G 0002-core-make-sure-Environment-fields-passed-in-for-tran.patch - G 0003-core-You-can-not-put-the-cached-result-of-use_smack-.patch - G 0004-cryptsetup-don-t-add-unit-dependency-on-dev-null-dev.patch - G 0005-man-fix-path-in-crypttab-5.patch - G 0001-units-order-network-online.target-after-network.targ.patch - G 0001-core-use-correct-format-string-for-UIDs.patch - G 0002-core-transaction-fix-cycle-break-attempts-outside-tr.patch - G 0003-fsck-consider-a-fsck-implementation-linked-to-bin-tr.patch - G 0001-main-uid_to_name-might-fail-due-to-OOM-protect-again.patch - G 0002-journald-make-MaxFileSec-really-default-to-1month.patch - G 0003-units-remove-RefuseManualStart-from-units-which-are-.patch - G 0004-util-refuse-considering-UID-0xFFFF-and-0xFFFFFFFF-va.patch - G 0005-nspawn-block-open_by_handle_at-and-others-via-seccom.patch - G 0006-tmpfiles-don-t-do-automatic-cleanup-in-XDG_RUNTIME_D.patch - G 0007-units-skip-mounting-tmp-if-it-is-a-symlink.patch - G 0001-parse_uid-return-ENXIO-for-1-uids.patch - G 0002-util-when-unescaping-strings-don-t-allow-smuggling-i.patch - G 0003-localed-consider-an-unset-model-as-a-wildcard.patch - G 0004-sd-bus-when-an-event-loop-terminates-explicitly-clos.patch - G 0005-bus-close-a-bus-that-failed-to-connect.patch - G 0006-hwdb-update.patch - G 0007-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0001-architecture-Add-tilegx.patch - G 0002-architecture-Add-cris.patch - G 0003-arch-add-crisv32-to-uname-check.patch - G 0004-architecture-remove-cris-from-uname-list.patch - G 0003-namespace-make-sure-tmp-var-tmp-and-dev-are-writable.patch - G 0002-namespace-fix-uninitialized-memory-access.patch - G 0001-machine-don-t-return-uninitialized-variable.patch - G 0002-vconsole-setup-run-setfont-before-loadkeys.patch - G 0001-util-consider-0x7F-a-control-chracter-which-it-is-DE.patch - G 0002-util-don-t-consider-tabs-special-in-string_has_cc-an.patch - G 0003-architecture-add-string-table-entries-for-mips-le-ar.patch - G 0004-core-Added-support-for-ERRNO-NOTIFY_SOCKET-message-p.patch - G 0005-service-don-t-accept-negative-ERRNO-notification-mes.patch - G 0006-systemctl-show-StatusErrno-value-in-systemctl-status.patch - G 0007-service-flush-status-text-and-errno-values-each-time.patch - G 0001-journal-compress-return-early-in-uncompress_startswi.patch - G 0002-journal-compress-improve-xz-compression-performance.patch - G 0001-logind-allow-switching-to-unused-VTs-via-SwitchTo.patch - G 0002-hostnamed-add-a-new-chassis-type-for-watches.patch - G 0001-units-make-ExecStopPost-action-part-of-ExecStart.patch - G 0001-event-pull-in-sd-event.h-from-event-util.h.patch - G 0002-util-fix-has-cc-check-and-add-test.patch - G 0003-sd-event-always-call-epoll_ctl-on-mask-updates-if-ed.patch - G 0004-fileio-quote-more-shell-characters-in-envfiles.patch - G 0001-Clear-up-confusion-wrt.-ENTRY_SIZE_MAX-and-DATA_SIZE.patch - G 0002-units-serial-getty-.service-use-the-default-RestartS.patch - G 0001-po-add-Ukrainian-translation.patch - G 0002-man-document-yearly-and-annually-in-systemd.time-7.patch - G 0003-core-nicer-message-when-inotify-watches-are-exhauste.patch - G 0001-detect-virt-Fix-Xen-domU-discovery.patch - G 0002-Be-more-verbose-when-bind-or-listen-fails.patch - G 0003-Add-quotes-to-warning-message.patch - G 0004-systemd-return-the-first-error-from-manager_startup.patch - G 0001-bash-completion-p-option-for-journalctl.patch - G 0002-journalctl-man-allow-only-between-terms.patch - G 0003-systemd-use-pager-for-test-and-help.patch - G 0001-bus-proxyd-fix-incorrect-comparison.patch - G 0002-shell-completion-prevent-mangling-unit-names.patch - G 0003-Always-check-asprintf-return-code.patch - G 0004-bash-completion-use-list-unit-files-to-get-all-units.patch - G 0005-core-only-set-the-kernel-s-timezone-when-the-RTC-run.patch - G 0006-parse_boolean-require-exact-matches.patch - G 0007-drop_duplicates-copy-full-BindMount-struct.patch - G 0008-shell-completion-prevent-mangling-unit-names-bash.patch - G 0009-journald-always-add-syslog-facility-for-messages-com.patch - G 0001-sysv-order-initscripts-which-provide-network-before-.patch - G 0002-keymap-Add-microphone-mute-keymap-for-Dell-Latitude.patch - G 0003-keymap-Annotate-all-micmute-workarounds.patch - G 0007-hwdb-update.patch - G 0001-nspawn-fix-truncation-of-machine-names-in-interface-.patch - G 0002-switch-root-umount-the-old-root-correctly.patch - G 0003-bootchart-it-s-not-OK-to-return-1-from-a-main-progra.patch - G 0004-login-set_controller-should-fail-if-prepare_vt-fails.patch - G 0005-sd-resolve-fix-allocation-if-query-ids-never-reuse-t.patch - G 0006-login-share-VT-signal-handler-between-sessions.patch - G 0007-journald-also-increase-the-SendBuffer-of-dev-log-to-.patch - G 0008-mount-setup-fix-counting-of-early-mounts-without-SMA.patch - G 0009-journald-Fix-off-by-one-error-in-Missed-X-kernel-mes.patch - G 0010-machine_kill-Don-t-kill-the-unit-when-killing-the-le.patch - G 0011-units-fix-BindsTo-logic-when-applied-relative-to-ser.patch - G 0012-util-try-to-be-a-bit-more-NFS-compatible-when-checki.patch - G 0001-hwdb-keymaps-for-Samsung-900X3E-900X3F.patch - G 0002-Add-hwdb-entry-for-Samsung-Series-7-Ultra.patch - G 0003-keymap-Fix-HP-Pavillon-DV7.patch - G 0004-hwdb-update-format-description-and-document-reloadin.patch - G 0008-hwdb-update.patch - G 0001-systemctl-Correct-error-message-printed-when-bus_pro.patch - G 0002-units-order-systemd-fsck-.service-after-local-fs-pre.patch - G 0003-keymap-Adjust-for-more-Samsung-900X4-series.patch - G 0001-login-fix-memory-leak-on-DropController.patch - G 0002-util-fix-minimal-race-where-we-might-miss-SIGTERMs-w.patch - G 0003-sd-journal-properly-convert-object-size-on-big-endia.patch - G 0004-sd-journal-verify-that-object-start-with-the-field-n.patch - G 0001-nspawn-fix-network-interface.patch - G 0001-completion-filter-templates-from-restartable-units.patch - G 0002-systemd-fix-error-message.patch - G 0003-Quote-unit-names-in-suggested-systemctl-commandlines.patch - G 0004-config-parser-fix-mem-leak.patch - G 0005-login-fix-mem-leak.patch - G 0001-login-simplify-controller-handling.patch - G 0001-initrd-parse-etc.service-ignore-return-code-of-daemo.patch - G 0008-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0009-hwdb-update.patch - G 0001-systemctl-allow-to-change-the-default-target-without.patch - G 0001-activate-fix-fd-leak-in-do_accept.patch - G 0002-analyze-avoid-a-null-dereference.patch - G 0003-analyze-fix-mem-leak.patch - G 0004-backlight-Avoid-error-when-state-restore-is-disabled.patch - G 0005-bus-avoid-using-m-kdbus-after-freeing-it.patch - G 0006-bus-unref-buscreds-on-failure.patch - G 0007-core-fix-a-potential-mem-leak.patch - G 0008-core-smack-setup-Actually-allow-for-succesfully-load.patch - G 0009-journal-do-not-leak-mmaps-on-OOM.patch - G 0010-manager-use-correct-cleanup-function.patch - G 0001-core-fix-resource-leak-in-manager_environment_add.patch - G 0002-util-remove-a-unnecessary-check.patch - G 0003-udev-event-explicitly-don-t-read-from-invalid-fd.patch - G 0004-shared-conf-parser.patch - G 0005-logind-fix-typo.patch - G 0006-systemctl-fix-resource-leak-CID-1237747.patch - G 0007-libudev-monitor-warn-if-we-fail-to-request-SO_PASSCR.patch - G 0008-shared-conf-parser-don-t-leak-memory-on-error-in-DEF.patch - G 0009-bus-fix-bus_print_property-to-use-int-for-booleans.patch - G 0001-journal-Do-not-count-on-the-compiler-initializing-fo.patch - G 0002-include-fcntl.h-rather-than-sys-fcntl.h.patch - G 0003-mount-order-options-before-other-arguments-to-mount.patch - G 0004-shared-wtmp-utmp-don-t-clear-store_wtmp-in-utmp_put_.patch - G 0005-shared-label.h-add-missing-stdio.h-include.patch - G 0006-shared-sparse-endian.h-add-missing-byteswap.h-includ.patch - G 0001-login-pause-devices-before-acknowledging-VT-switches.patch - G 0001-nspawn-don-t-try-to-create-veth-link-with-too-long-i.patch - G 0001-socket-introduce-SELinuxContextFromNet-option.patch - G 0002-util-avoid-non-portable-__WORDSIZE.patch - G 0001-Fix-warning-about-unused-variable-with-SELINUX.patch - G 0002-bus-remove-unused-check.patch - G 0001-systemd-tmpfiles-Fix-IGNORE_DIRECTORY_PATH-age-handl.patch - G 0001-logind-add-support-for-Triton2-Power-Button.patch - G 0002-logind-add-support-for-TPS65217-Power-Button.patch - G 0001-shutdownd-clean-up-initialization-of-struct.patch - G 0003-bootchart-parse-userinput-with-safe_atoi.patch - G 0004-bootchart-check-return-of-strftime.patch - G 0005-bootchart-Do-not-try-to-access-data-for-non-existing.patch - G 0001-journalctl-do-not-output-reboot-markers-when-running.patch - G 0002-udev-hwdb-New-Entry-for-Dell-XPS12-9Q33-keyboard.patch - G 0001-core-swap-only-make-configured-units-part-of-swap.ta.patch - G 0009-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0001-virt-detect-that-we-are-running-inside-the-docker-co.patch - G 0002-bootchart-use-n-a-if-PRETTY_NAME-is-not-found.patch - G 0003-fileio-label-return-error-when-writing-fails.patch - G 0001-sd-event-don-t-require-a-signal-event-source-to-be-e.patch - G 0004-sd-event-check-the-value-of-received-signal.patch - G 0005-sd-id128-do-stricter-checking-of-random-boot-id.patch - G 0001-keymap-Fix-touchpad-toggle-on-Toshiba-Satellite-P75-.patch - G 0001-units-introduce-network-pre.target-as-place-to-hook-.patch - G 0002-keymap-Fix-touchpad-toggle-key-on-Asus-laptops.patch - G 0003-sd-bus-check-return-value-of-vasprintf.patch - G 0004-core-map-the-rescue-argument-to-rescue.target.patch - G 0005-util-avoid-double-close-of-fd.patch - G 0001-systemctl-when-mangle-unit-names-for-the-isolate-suf.patch - G 0001-tmpfiles-compare-return-against-correct-errno.patch - G 0001-shell-completion-fix-completion-of-inactive-units.patch - G 0002-shell-completion-propose-templates-for-disable-re-en.patch - G 0003-man-we-don-t-have-Wanted-dependency.patch - G 0004-selinux-fix-potential-double-free-crash-in-child-pro.patch - G 0001-systemd-continue-switch-root-even-if-umount-fails.patch - G 0002-systemd-try-harder-to-bind-to-notify-socket.patch - G 0001-strv-add-an-additional-overflow-check-when-enlarging.patch - G 0002-hwdb-Add-mapping-for-special-keys-on-compaq-ku-0133-.patch - G 0003-journald-add-CAP_MAC_OVERRIDE-in-journald-for-SMACK-.patch - G 0004-journal-do-server_vacuum-for-sigusr1.patch - G 0005-cryptsetup-fix-an-OOM-check.patch - G 0002-shutdown-pass-own-argv-to-run-initramfs-shutdown.patch - G 0001-manager-Linux-on-hppa-has-fewer-rtsigs-hence-avoid-u.patch - G 0002-time-also-support-infinity-syntax-in-parse_nsec.patch - G 0003-time-earlier-exit-from-format_timestamp_relative-on-.patch - G 0004-sd-bus-if-we-don-t-manage-to-properly-allocate-the-e.patch - G 0005-journalctl-correct-help-text-for-until.patch - G 0006-calendarspec-fix-typo-in-annually.patch - G 0007-systemctl-do-not-ignore-errors-in-symlink-removal.patch - G 0008-util-introduce-sethostname_idempotent.patch - G 0009-util-fix-copy-paste-error-and-actually-set-the-new-h.patch - G 0010-shutdown-do-final-unmounting-only-if-not-running-ins.patch - G 0011-selinux-make-sure-we-do-not-try-to-print-missing-fie.patch - G 0012-manager-do-not-print-anything-while-passwords-are-be.patch - G 0001-sd-bus-properly-handle-removals-of-non-existing-matc.patch - G 0002-keymap-Ignore-brightness-keys-on-Dell-Inspiron-1520-.patch - G 0001-core-don-t-allow-enabling-if-unit-is-masked.patch - G 0002-snapshot-return-error-when-snapshot-exists.patch - G 0003-shared-install-avoid-prematurely-rejecting-missing-u.patch - G 0004-Raise-level-of-Found-dependency.-lines.patch - G 0005-units-order-sd-journal-flush-after-sd-remount-fs.patch - G 0006-journald-fix-minor-memory-leak.patch - G 0007-journald-also-check-journal-file-size-to-deduce-if-i.patch - G 0008-journald-fix-memory-leak-on-error-path.patch - G 0009-units-make-systemd-journald.service-Type-notify.patch - G 0010-hwdb-Update-database-of-Bluetooth-company-identifier.patch - G 0001-login-rerun-vconsole-setup-when-switching-from-vgaco.patch - G 0002-shutdown-fix-arguments-to-run-initramfs-shutdown.patch - G 0003-utf8-when-looking-at-the-next-unichar-honour-the-siz.patch - G 0001-keymap-Add-support-for-IBM-ThinkPad-X41-Tablet.patch - G 0002-keymap-Fix-special-keys-on-ThinkPad-X60-X61-Tablet.patch - G 0001-systemctl-let-list-units-unit-files-honour-type.patch - G 0002-systemctl-obey-state-in-list-unit-files.patch - G 0002-core-watchdog-bus-properties-cannot-be-both-writable.patch - G 0003-sd-bus-refuse-properties-that-claim-to-be-both-writa.patch - G 0001-units-make-sure-rfkill-service-is-bount-to-the-actua.patch - G 0001-selinux-access-fix-broken-ternary-operator.patch - G 0002-systemctl-show-BindsTo-BoundBy-in-list-dependencies.patch - G 0003-cryptsetup-default-to-no-hash-when-keyfile-is-specif.patch - G 0004-core-fix-transaction-destructiveness-check-once-more.patch - G 0001-units-tmpfiles-setup-dev-allow-unsafe-file-creation-.patch - G 0002-man-tmpfiles.d-recommend-using-b-and-c.patch - G 1009-cdrom_id-use-the-old-MMC-fallback.patch - G 1010-udev-increase-result-size-for-programs.patch - G 1014-udev-update-net_id-comments.patch - G 1015-udev-persistent-naming-we-cannot-use-virtio-numbers-.patch - G 1016-udev-warn-when-name_to_handle_at-is-not-implemented.patch - G 1017-udev-serialize-synchronize-block-device-event-handli.patch - G 1018-udev-do-not-skip-the-execution-of-RUN-when-renaming-.patch - G 1019-udev-avoid-use-of-uninitialized-err.patch - G 1020-udev-keyboard-also-hook-into-change-events.patch - G 1022-udev-remove-seqnum-API-and-all-assumptions-about-seq.patch - G 1023-udev-builtin-keyboard-do-tell-on-which-device-EVIOCS.patch - G 1024-udev-always-close-lock-file-descriptor.patch - G 1025-udev-exclude-device-mapper-from-block-device-ownersh.patch - G 1026-udevd-inotify-modernizations.patch - G 1027-udev-synthesize-change-events-for-partitions-when-to.patch - G 1028-udev-link-config-fix-mem-leak.patch - G 1029-udev-try-first-re-reading-the-partition-table.patch - G 1030-udev-guard-REREADP-logic-with-open-O_ECXL.patch - G 1031-udev-make-sure-we-always-get-change-for-the-disk.patch - G 1032-udev-guard-REREADPT-by-exclusive-lock-instead-of-O_E.patch - G 1033-udev-really-exclude-device-mapper-from-block-device.patch - G 1034-udev-check-the-return-value-from-udev_enumerate_scan.patch - G 1038-udev-fix-invalid-free-in-enable_name_policy.patch - G 1039-udevadm-settle-fixed-return-code-for-empty-queue.patch - G 1041-libudev-fix-udev_queue_get_queue_is_empty-logic.patch - G 1042-libudev-queue-provide-file-descriptor-to-watch-busy-.patch - G 1043-libudev-queue-watch-entire-directory-to-allow-the-re.patch - G 1044-rules-update-qemu-hid-rules.patch - G 1045-rules-don-t-enable-usb-pm-for-Avocent-devices.patch - G 1047-udev-net_setup_link-builtin-should-print-the-reason-.patch - G 1048-udev-net_setup_link-add-a-bit-more-logging.patch - G 1049-udev-link_config-ignore-errors-due-to-missing-MAC-ad.patch - G 1052-rules-uaccess-add-ID_SOFTWARE_RADIO.patch - G 1054-udev-exclude-MD-from-block-device-ownership-event-lo.patch - G 1056-udevd-add-event-timeout-commandline-option.patch - G 1057-udev-unify-event-timeout-handling.patch - G 1058-udev-unify-event-timeout-handling.patch - G 1059-udev-fixup-commit-dd5eddd28a74a49607a8fffcaf960040db.patch - G 1061-rules-allow-systemd-to-manage-loop-device-partitions.patch - G 1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch - G 1064-udev-hwdb-do-not-look-at-usb_device-parents.patch - G 1065-udev-bump-event-timeout-to-60-seconds.patch - G 1067-udev-always-resolve-correctly-database-names-on-chan.patch - G 1068-udev-net_setup_link-export-the-.link-filename-applie.patch - G 1069-rules-net-setup-link-preserve-ID_NET_LINK_FILE-and-I.patch - G 1070-rules-net-setup-link-remove-stray-linebreak.patch - G 1071-udev-import-the-full-db-on-MOVE-events-for-devices-w.patch - G 1072-udev-netif_rename-don-t-log-to-kmsg.patch - G 1073-udev-drop-print_kmsg.patch - G 1074-udev-fix-copy-paste-error-in-log-message.patch - G 1075-udev-timeout-increase-timeout.patch - G 1076-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch - G 1077-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch - G 1078-udev-remove-userspace-firmware-loading-support.patch - G 1079-udev-remove-userspace-firmware-loading-support.patch - G 1080-udevd-parse_argv-warn-if-argumens-are-invalid.patch - G 1081-udevd-check-return-of-various-functions.patch - G 1082-udevadm-hwdb-check-return-value-of-fseeko.patch - G 1083-udev-node-warn-if-chmod-chown-fails.patch - G 1084-udev-ctrl-log-if-setting-SO_PASSCRED-fails.patch - G 1085-udev-fix-typos.patch - G 1086-udevd-don-t-fail-if-run-udev-exists.patch - G 1089-fix-cgroup-device-controller.patch - G 1090-udev-path_id-set-supported_parent-for-well-known-SCS.patch - G 1091-udev-path_id-update-comments.patch - G 1092-libudev-do-not-accept-invalid-log-levels.patch - G 1093-udev-Fix-parsing-of-udev.event-timeout-kernel-parame.patch - G 1094-udev-avoid-magic-constants-in-kernel-cmdline-parsers.patch - G 1098-udev-link_setup-respect-kernel-name-assign-policy.patch - ------------------------------------------------------------------- Wed Jan 7 11:44:27 UTC 2015 - arvidjaar@gmail.com diff --git a/systemd.spec b/systemd.spec index 7b5b6805..307e3cab 100644 --- a/systemd.spec +++ b/systemd.spec @@ -1,7 +1,7 @@ # # spec file for package systemd # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -21,9 +21,8 @@ %define udevpkgname udev %define udev_major 1 %bcond_without bash_completion +%bcond_without compat_libs %bcond_with networkd -%bcond_without sysvcompat -%bcond_with resolved %bcond_with python %bcond_with parentpathid %ifarch %{ix86} x86_64 aarch64 @@ -44,7 +43,7 @@ Name: systemd Url: http://www.freedesktop.org/wiki/Software/systemd -Version: 219 +Version: 210 Release: 0 Summary: A System and Session Manager License: LGPL-2.1+ @@ -52,69 +51,112 @@ Group: System/Base BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: acl BuildRequires: audit-devel -BuildRequires: autoconf -BuildRequires: automake +%if %{with compat_libs} +# See gold_archs in binutils.spec +%ifarch %ix86 %arm x86_64 ppc ppc64 ppc64le %sparc +BuildRequires: binutils-gold +%endif +%endif +BuildRequires: config(suse-module-tools) +%if ! 0%{?bootstrap} +BuildRequires: docbook-xsl-stylesheets +%endif BuildRequires: fdupes +%if ! 0%{?bootstrap} +BuildRequires: gobject-introspection-devel +%endif BuildRequires: gperf +%if ! 0%{?bootstrap} BuildRequires: gtk-doc +%endif BuildRequires: intltool BuildRequires: libacl-devel BuildRequires: libcap-devel +BuildRequires: libkmod-devel BuildRequires: libsepol-devel BuildRequires: libtool +%if ! 0%{?bootstrap} +BuildRequires: libusb-devel +BuildRequires: libxslt-tools +%endif BuildRequires: pam-devel +%if 0%{?suse_version} > 1310 BuildRequires: systemd-rpm-macros +%endif +%if 0%{?suse_version} <= 1315 +BuildRequires: tcpd-devel +%endif BuildRequires: xz -BuildRequires: config(suse-module-tools) -BuildRequires: pkgconfig(blkid) >= 2.24 +BuildRequires: pkgconfig(blkid) >= 2.20 +%if ! 0%{?bootstrap} +BuildRequires: libgcrypt-devel +%if %{with python} +BuildRequires: python +%endif +BuildRequires: pkgconfig(glib-2.0) >= 2.22.0 +BuildRequires: pkgconfig(libcryptsetup) >= 1.6.0 +%endif +%if 0%{?suse_version} <= 1310 +BuildRequires: pkgconfig(libkmod) >= 14 +%else BuildRequires: pkgconfig(libkmod) >= 15 +%endif BuildRequires: pkgconfig(liblzma) +%if ! 0%{?bootstrap} +BuildRequires: pkgconfig(libmicrohttpd) +%endif BuildRequires: pkgconfig(libpci) >= 3 BuildRequires: pkgconfig(libpcre) -BuildRequires: pkgconfig(mount) >= 2.20 +%if ! 0%{?bootstrap} +BuildRequires: pkgconfig(libqrencode) +BuildRequires: pkgconfig(usbutils) >= 0.82 +%endif +%if 0%{?suse_version} >= 1315 %ifarch %ix86 x86_64 x32 %arm ppc64le s390x BuildRequires: pkgconfig(libseccomp) %endif +%else +%if 0%{?suse_version} >= 1310 +%ifarch %ix86 x86_64 x32 %arm +BuildRequires: pkgconfig(libseccomp) +%endif +%endif +%endif +%if ! 0%{?bootstrap} +BuildRequires: libapparmor-devel +%endif BuildRequires: pkgconfig(libselinux) >= 2.1.9 BuildRequires: pkgconfig(libsepol) +%if 0%{?suse_version} > 1310 Conflicts: sysvinit +%endif %if 0%{?bootstrap} #!BuildIgnore: dbus-1 Requires: this-is-only-for-build-envs Conflicts: systemd Conflicts: kiwi %else -BuildRequires: docbook-xsl-stylesheets -BuildRequires: gobject-introspection-devel -BuildRequires: gtk-doc -BuildRequires: libgcrypt-devel -BuildRequires: libusb-devel -BuildRequires: libxslt-tools -%if %{with python} -BuildRequires: python -%endif -BuildRequires: libapparmor-devel -BuildRequires: pkgconfig(glib-2.0) >= 2.22.0 -BuildRequires: pkgconfig(libcryptsetup) >= 1.6.0 -BuildRequires: pkgconfig(libmicrohttpd) -BuildRequires: pkgconfig(libqrencode) -BuildRequires: pkgconfig(usbutils) >= 0.82 # the buildignore is important for bootstrapping #!BuildIgnore: udev Requires: %{udevpkgname} >= 172 Recommends: %{name}-bash-completion Requires: dbus-1 >= 1.4.0 Requires: kbd +%if 0%{?suse_version} <= 1310 +Requires: kmod >= 14 +%else Requires: kmod >= 15 +%endif Requires: netcfg Requires: pam-config >= 0.79-5 -BuildRequires: pam-config >= 0.79-5 Requires: pwdutils Requires: systemd-presets-branding Requires: sysvinit-tools -Requires: util-linux >= 2.25 +Requires: util-linux >= 2.21 Requires(post): coreutils Requires(post): findutils +%endif +%if ! 0%{?bootstrap} Requires(post): pam-config >= 0.79-5 %endif Requires(pre): /usr/bin/getent @@ -126,31 +168,47 @@ Conflicts: filesystem < 11.5 Conflicts: mkinitrd < 2.7.0 Obsoletes: systemd-analyze < 201 Provides: systemd-analyze = %{version} - -#Git-Clone: git://anongit.freedesktop.org/systemd/systemd -Source: http://freedesktop.org/software/systemd/systemd-%version.tar.xz +Source0: http://www.freedesktop.org/software/systemd/systemd-%{version}.tar.xz %if ! 0%{?bootstrap} Source1: systemd-rpmlintrc %else Source1: systemd-mini-rpmlintrc %endif +Source2: localfs.service Source3: systemd-sysv-convert Source6: baselibs.conf Source7: libgcrypt.m4 +Source8: systemd-journald.init Source9: nss-myhostname-config Source10: macros.systemd.upstream Source11: after-local.service +Source1060: boot.udev Source1063: udev-generate-persistent-rule.sh +Source1064: systemd-sleep-grub Source1065: systemd-remount-tmpfs +# +# PATCH-FIX-UPSTREAM avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch lnussel@suse.com bnc#791101 -- avoid assertion if invalid address familily is passed to gethostbyaddr_r +Patch0: avoid-assertion-if-invalid-address-familily-is-passed-to-g.patch +# PATCH-FIX-UPSTREAM optionally-warn-if-nss-myhostname-is-called.patch lnussel@suse.com -- optionally warn if nss-myhostname is called +Patch1: optionally-warn-if-nss-myhostname-is-called.patch # handle SUSE specific kbd settings Patch3: handle-disable_caplock-and-compose_table-and-kbd_rate.patch Patch4: handle-numlock-value-in-etc-sysconfig-keyboard.patch Patch6: insserv-generator.patch +Patch7: service-flags-sysv-service-with-detected-pid-as-RemainAfte.patch +Patch8: module-load-handle-SUSE-etc-sysconfig-kernel-module-list.patch +Patch9: remain_after_exit-initscript-heuristic-and-add-new-LSB-hea.patch Patch12: Fix-run-lock-directories-permissions-to-follow-openSUSE-po.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch13: 0001-units-systemd-sysctl.service.in-run-after-load-modul.patch +Patch15: timedate-add-support-for-openSUSE-version-of-etc-sysconfig.patch Patch16: fix-support-for-boot-prefixed-initscript-bnc-746506.patch Patch17: restore-var-run-and-var-lock-bind-mount-if-they-aren-t-sym.patch +Patch18: fix-owner-of-var-log-btmp.patch +# PATCH-FIX-UPSTREAM Avoid error message about not existing getty@3270 file +Patch19: 0004-getty-generator-properly-escape-instance-names.patch # PATCH-FIX-OPENSUSE ensure-ask-password-wall-starts-after-getty-tty1.patch -- don't start getty on tty1 until all password request are done Patch5: ensure-ask-password-wall-starts-after-getty-tty1.patch @@ -158,11 +216,14 @@ Patch5: ensure-ask-password-wall-starts-after-getty-tty1.patch Patch20: handle-root_uses_lang-value-in-etc-sysconfig-language.patch # PATCH-FIX-OPENSUSE allow-multiple-sulogin-to-be-started.patch bnc#793182 fcrozat@suse.com -- handle multiple sulogin Patch21: allow-multiple-sulogin-to-be-started.patch +# PATCH-FIX-OPENSUSE handle-SYSTEMCTL_OPTIONS-environment-variable.patch bnc#798620 fcrozat@suse.com -- handle SYSTEMCTL_OPTIONS environment variable +Patch22: handle-SYSTEMCTL_OPTIONS-environment-variable.patch # PATCH-FIX-OPENSUSE apply-ACL-for-nvidia-device-nodes.patch bnc#808319 -- set ACL on nvidia devices Patch27: apply-ACL-for-nvidia-device-nodes.patch # PATCH-FIX-OPENSUSE apply-ACL-for-nvidia-uvm-device-node.patch bnc#879767 -- set ACL on nvidia-uvm device Patch28: apply-ACL-for-nvidia-uvm-device-node.patch -Patch37: suse-sysv-bootd-support.diff +# PATCH-FIX-OPENSUSE Revert-service-drop-support-for-SysV-scripts-for-the-early.patch fcrozat@suse.com -- handle boot.* initscripts +Patch37: Revert-service-drop-support-for-SysV-scripts-for-the-early.patch # PATCH-FIX-OPENSUSE systemd-tmp-safe-defaults.patch FATE#314974 max@suse.de -- Return to SUSE's "safe defaults" policy on deleting files from tmp direcorie. Patch39: systemd-tmp-safe-defaults.patch # PATCH-FIX-OPENSUSE sysctl-handle-boot-sysctl.conf-kernel_release.patch bnc#809420 fcrozat@suse.com -- handle /boot/sysctl.conf- file @@ -175,10 +236,18 @@ Patch42: systemd-pam_config.patch # Never add any patches to this package without the upstream commit id # in the patch. Any patches added here without a very good reason to make # an exception will be silently removed with the next version update. +# PATCH-FIX-OPENSUSE disable-nss-myhostname-warning-bnc-783841.diff lnussel@suse.de -- disable nss-myhostname warning (bnc#783841) +Patch23: disable-nss-myhostname-warning-bnc-783841.patch +# PATCH-FIX-OPENSUSE handle-HOSTNAME.patch fcrozat@suse.com -- handle /etc/HOSTNAME (bnc#803653) +Patch24: handle-etc-HOSTNAME.patch # PATCH-FIX-OPENSUSE forward to pm-utils -- until boo#904828 is addressed Patch25: Forward-suspend-hibernate-calls-to-pm-utils.patch # PATCH-FIX-UPSTREAM rules-add-lid-switch-of-ARM-based-Chromebook-as-a-power-sw.patch rjschwei@suse.com -- add lid switch of ARM based Chromebook as a power switch to logind Patch38: rules-add-lid-switch-of-ARM-based-Chromebook-as-a-power-sw.patch +# PATCH-FIX-OPENSUSE use-usr-sbin-sulogin-for-emergency-service.patch arvidjaar@gmail.com -- fix path to sulogin +Patch46: use-usr-sbin-sulogin-for-emergency-service.patch +# PATCH-FIX-OPENSUSE Make systemd talk with dbus-daemon even on big endian +Patch47: 0001-sd-bus-don-t-look-for-a-64bit-value-when-we-only-hav.patch # PATCH-FIX-OPENSUSE make-emergency.service-conflict-with-syslog.socket.patch (bnc#852232) Patch84: make-emergency.service-conflict-with-syslog.socket.patch # PATCH-FIX-SUSE 0001-add-hdflush-for-reboot-or-hddown-for-poweroff.patch @@ -187,8 +256,126 @@ Patch86: 0001-add-hdflush-for-reboot-or-hddown-for-poweroff.patch Patch90: 0001-On_s390_con3270_disable_ANSI_colour_esc.patch # PATCH-FIX-SUSE plymouth-quit-and-wait-for-emergency-service.patch -- Make sure that no plymouthd is locking the tty Patch91: plymouth-quit-and-wait-for-emergency-service.patch +# PATCH-FIX-SUSE 0001-Don-t-snprintf-a-potentially-NULL-pointer.patch -- Avoid systemd crash on resume (bnc#861488) +Patch93: 0001-Don-t-snprintf-a-potentially-NULL-pointer.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch114: 0008-Reset-signal-mask-on-re-exec-to-init.patch +# PATCH-FIX-SUSE 0001-make-209-working-on-older-dist.patch werner@suse.com +Patch117: 0001-make-209-working-on-older-dist.patch +# PATCH-FIX-SUSE 0001-make-fortify-happy-with-ppoll.patch werner@suse.com +Patch119: 0001-make-fortify-happy-with-ppoll.patch # PATCH-FIX-SUSE 0001-avoid-abort-due-timeout-at-user-service.patch werner@suse.com Patch120: 0001-avoid-abort-due-timeout-at-user-service.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch121: 0001-login-fix-pos-array-allocation.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch122: 0002-login-set-pos-slot-to-fallback-on-pos-eviction.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch123: 0003-login-Allow-calling-org.freedesktop.login1.Seat.Swit.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch124: 0004-fix-typo-in-iDRAC-network-interface-name-irdac-idrac.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch125: 0005-Replace-var-run-with-run-in-remaining-places.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch126: 0006-Revert-back-to-var-run-at-a-couple-of-problems.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch127: 0007-README-document-that-var-run-must-be-a-symlink-run.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch128: 0008-Use-var-run-dbus-system_bus_socket-for-the-D-Bus-soc.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch129: 0009-mount-don-t-send-out-PropertiesChanged-message-if-ac.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch130: 0010-mount-don-t-fire-PropertiesChanged-signals-for-mount.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch131: 0011-logs-show-fix-corrupt-output-with-empty-messages.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch132: 0012-journalctl-refuse-extra-arguments-with-verify-and-si.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch133: 0014-nspawn-fix-detection-of-missing-proc-self-loginuid.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch134: 0001-Fix-systemd-stdio-bridge-symlink.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch135: 0002-execute-free-directory-path-if-we-fail-to-remove-it-.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch136: 0003-Do-not-print-invalid-UTF-8-in-error-messages.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch137: 0004-man-document-missing-options-of-systemd-run.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch138: 0005-systemd-run-add-some-extra-safety-checks.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch139: 0006-journal-assume-that-next-entry-is-after-previous-ent.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch140: 0007-journal-forget-file-after-encountering-an-error.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch141: 0008-core-correctly-unregister-PIDs-from-PID-hashtables.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch142: 0009-logind-fix-reference-to-systemd-user-sessions.servic.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch143: 0010-man-update-link-to-LSB.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch144: 0011-man-systemd-bootchart-fix-spacing-in-command.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch145: 0012-man-add-missing-comma.patch +# PATCH-FIX-USTREAM added at 2014/03/07 +Patch146: 0013-units-Do-not-unescape-instance-name-in-systemd-backl.patch +# PATCH-FIX-USTREAM added at 2014/03/11 +Patch147: 0001-core-busname-add-lookup-string-for-BUSNAME_FAILURE_S.patch +# PATCH-FIX-USTREAM added at 2014/03/11 +Patch148: 0002-manager-flush-memory-stream-before-using-the-buffer.patch +# PATCH-FIX-USTREAM added at 2014/03/11 +Patch149: 0003-busname-don-t-drop-service-from-the-result-string.patch +# PATCH-FIX-USTREAM added at 2014/03/11 +Patch150: 0004-fix-off-by-one-error-in-array-index-assertion.patch +# PATCH-FIX-USTREAM added at 2014/03/11 +Patch151: 0005-logind-fix-policykit-checks.patch +# PATCH-FIX-USTREAM added at 2014/03/11 +Patch152: 0006-rules-mark-loop-device-as-SYSTEMD_READY-0-if-no-file.patch +# PATCH-FIX-USTREAM added at 2014/03/11 +Patch153: 0008-man-multiple-sleep-modes-are-to-be-separated-by-whit.patch +# PATCH-FIX-USTREAM added at 2014/03/18 +Patch154: 0001-gpt-auto-generator-don-t-return-OOM-on-parentless-de.patch +# PATCH-FIX-USTREAM added at 2014/03/18 +Patch155: 0002-bus-fix-memory-leak-when-kdbus-is-not-enabled.patch +# PATCH-FIX-USTREAM added at 2014/03/18 +Patch157: 0006-Do-not-return-1-EINVAL-on-allocation-error.patch +# PATCH-FIX-USTREAM added at 2014/03/18 +Patch158: 0007-networkd-fix-typo.patch +# PATCH-FIX-USTREAM added at 2014/03/18 +Patch159: 0008-sd-bus-don-t-access-invalid-memory-if-a-signal-match.patch +# PATCH-FIX-USTREAM added at 2014/03/18 +Patch160: 0009-sd-bus-don-t-choke-if-somebody-sends-us-a-message-wi.patch +# PATCH-FIX-USTREAM added at 2014/03/18 +Patch161: 0012-journald-remove-stray-reset-of-error-return-value.patch +# PATCH-FIX-USTREAM added at 2014/03/18 +Patch162: 0013-core-libsystemd-systemd-timedate-udev-spelling-fixes.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch163: 0001-cgroup-it-s-not-OK-to-invoke-alloca-in-loops.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch164: 0002-machined-fix-Kill-bus-call-on-machine-objects-when-w.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch165: 0003-sd-bus-don-t-use-assert_return-to-check-for-disconne.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch166: 0004-core-don-t-try-to-relabel-mounts-before-we-loaded-th.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch167: 0005-sd-daemon-fix-incorrect-variable-access.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch168: 0006-sd-event-initialization-perturbation-value-right-bef.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch169: 0007-sd-event-don-t-accidentally-turn-of-watchdog-timer-e.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch170: 0008-systemctl-kill-mode-is-long-long-gone-don-t-mention-.patch +# PATCH-FIX-USTREAM added at 2014/03/28 +Patch171: 0009-ask-password-when-the-user-types-a-overly-long-passw.patch +# PATCH-FIX-USTREAM added at 2014/04/08 +Patch172: 0001-journal-fix-export-of-messages-containing-newlines.patch +# PATCH-FIX-USTREAM added at 2014/04/08 +Patch173: 0002-systemctl-update-NAME-to-PATTERN-in-help.patch +# PATCH-FIX-USTREAM added at 2014/04/08 +Patch174: 0003-tty-ask-password-agent-return-negative-errno.patch +# PATCH-FIX-USTREAM added at 2014/04/08 +Patch175: 0004-systemd-python-use-.hex-instead-of-.get_hex.patch +# PATCH-FIX-USTREAM added at 2014/04/08 +Patch176: 0005-systemd-python-fix-failing-assert.patch # PATCH-FIX-OPENSUSE 0009-make-xsltproc-use-correct-ROFF-links.patch -- Make ROFF links working again in manual pages (bnc#842844) Patch177: 0009-make-xsltproc-use-correct-ROFF-links.patch # PATCH-FIX-OPENSUSE 0010-do-not-install-sulogin-unit-with-poweroff.patch -- Avoid installing console-shell.service (bnc#849071) @@ -197,6 +384,8 @@ Patch178: 0010-do-not-install-sulogin-unit-with-poweroff.patch Patch179: 0001-pam_systemd_do_override_XDG_RUNTIME_DIR_of_the_original_user.patch # PATCH-FIX-OPENSUSE 0014-journald-with-journaling-FS.patch Patch180: 0014-journald-with-journaling-FS.patch +# PATCH-FIX-SUSE 0018-Make-LSB-Skripts-know-about-Required-and-Should.patch +Patch181: 0018-Make-LSB-Skripts-know-about-Required-and-Should.patch # PATCH-FIX-SUSE 0019-make-completion-smart-to-be-able-to-redirect.patch Patch182: 0019-make-completion-smart-to-be-able-to-redirect.patch # PATCH-FIX-SUSE 0001-add-network-device-after-NFS-mount-units.patch werner@suse.com @@ -205,6 +394,8 @@ Patch183: 0001-add-network-device-after-NFS-mount-units.patch Patch185: systemd-powerd-initctl-support.patch # PATCH-FIX-SUSE systemctl-set-default-target.patch Patch186: systemctl-set-default-target.patch +# PATCH-FIX-SUSE prepare-suspend-to-disk.patch (fate #316824) +Patch187: prepare-suspend-to-disk.patch # PATCH-FIX-SUSE boot-local-start.patch (bnc #869142) Patch188: boot-local-start.patch # PATCH-FIX-SUSE avoid random hangs on timeouts due lost cwd at terminating user manager @@ -217,38 +408,657 @@ Patch191: systemd-dbus-system-bus-address.patch Patch192: let-linker-find-libudev-for-libdevmapper.patch # PATCH-FIX-SUSE Make sure that rpcbind socket as well as service is up with the target Patch193: portmap-wants-rpcbind-socket.patch +# PATCH-FIX-USTREAM added at 2014/03/11 +Patch194: 0007-dbus-suppress-duplicate-and-misleading-messages.patch +# PATCH-FIX-USTREAM added at 2014/03/14 +Patch195: 0001-reduce-the-amount-of-messages-logged-to-dev-kmsg-whe.patch +# PATCH-FIX-SUSE Do not clean the data base files of the manual pages +Patch196: tmpfiles-do-not-clean-for-mandb-index-files.patch # PATCH-FIX-SUSE Avoid that emergency and rescue sulogin are fighting on console Patch197: rescue-emergency-target-conflicts.patch # PATCH-FIX-SUSE Avoid a divide by zero sigtrap Patch198: avoid-divide-by-zero-sigtrap.patch +# PATCH-FIX-USTREAM added at 2014/04/28 +Patch199: 0001-bash-completion-fix-__get_startable_units.patch +# PATCH-FIX-USTREAM added at 2014/04/28 +Patch200: 0002-sysctl-replaces-some-slashes-with-dots.patch +# PATCH-FIX-USTREAM added at 2014/04/28 +Patch201: 0003-delta-do-not-use-unicode-chars-in-C-locale.patch +# PATCH-FIX-USTREAM added at 2014/04/28 +Patch202: 0004-implement-a-union-to-pad-out-file_handle.patch # PATCH-FIX-SUSE System fails to boot if nfs mounts get added to fstab (bnc#874665) Patch203: respect-nfs-bg-option.patch +# PATCH-FIX-UPSTREAM Stop useless messages on dual_timestamp_is_set is failed. +Patch204: shut-up-annoying-assertion-monotonic-clock-message.patch +# PATCH-FIX-UPSTREAM Fix uninitialized memory +Patch206: 0001-sd-rtnl-message-append-fix-uninitialized-memory.patch +# PATCH-FIX-UPSTREAM Make systemd user journal accessible by users (bnc#876694) +Patch207: 0001-tmpfiles-fix-permissions-on-new-journal-files.patch # PATCH-FIX-SUSE Do not ignores option 'noauto' in /etc/crypttab (bnc#742774) Patch208: parse-crypttab-for-noauto-option.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch209: 0001-errno-make-sure-to-handle-the-3-errnos-that-are-alia.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch211: 0003-analyze-fix-plot-with-bad-y-size.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch212: 0004-job-add-waiting-jobs-to-run-queue-in-unit_coldplug.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch213: 0005-job-always-add-waiting-jobs-to-run-queue-during-cold.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch214: 0001-backlight-Avoid-restoring-brightness-to-an-unreadabl.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch215: 0002-backlight-do-nothing-if-max_brightness-is-0.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch216: 0003-backlight-unify-error-messages.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch217: 0004-backlight-warn-if-kernel-exposes-backlight-device-wi.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch218: 0005-backlight-handle-saved-brightness-exceeding-max-brig.patch +# PATCH-FIX-SUSE Do not poison kmsg ring buffer with systemd/udev messages (bnc#877021) +Patch219: log-target-null-instead-kmsg.patch +# PATCH-FIX-UPSTREAM added at 2014/05/14 +Patch220: 0001-replace-more-dup-by-F_DUPFD_CLOEXEC.patch +# PATCH-FIX-UPSTREAM added at 2014/05/14 +Patch221: 0002-pam_systemd-use-F_DUPFD_CLOEXEC-when-dupping-session.patch +# PATCH-FIX-UPSTREAM added at 2014/05/16 +Patch222: 0001-core-close-socket-fds-asynchronously.patch +# PATCH-FIX-UPSTREAM added at 2014/05/16 +Patch223: 0002-logind-bring-polkit-policy-for-hibernate-in-line-wit.patch +# PATCH-FIX-UPSTREAM added at 2014/05/16 +Patch224: 0003-core-make-sure-to-serialize-jobs-for-all-units.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch225: 0001-logind-ignore-lid-switch-if-more-than-1-display-is-c.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch226: 0002-logind-fix-printf-format.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch227: 0003-logind-ignore-lid-switch-events-for-30s-after-each-s.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch228: 0004-logind-Do-not-fail-display-count-if-a-device-has-no-.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch229: 0005-logind-move-lid-switch-handling-from-logind-main-to-.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch230: 0006-man-clarify-that-the-ExecReload-command-should-be-sy.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch231: 0007-man-readahead-fix-cmdline-switch-inconsistency-betwe.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch232: 0008-man-update-journald-rate-limit-defaults.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch233: 0009-nspawn-properly-format-container_uuid-in-UUID-format.patch +# PATCH-FIX-UPSTREAM added at 2014/05/19 +Patch234: 0010-logind-allow-suspending-if-there-are-no-displays.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch235: 0001-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch236: 0002-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch237: 0003-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch238: 0004-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch239: 0005-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch240: 0001-conf-parser-silently-ignore-sections-starting-with-X.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch241: 0002-man-note-that-entire-sections-can-now-be-ignored.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch242: 0004-machined-make-sure-GetMachineAddresses-is-available-.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch243: 0005-core-Filter-by-state-behind-the-D-Bus-API-not-in-the.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch244: 0006-login-add-mir-to-the-list-of-session-types.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch245: 0007-logind-fix-Display-property-of-user-objects.patch +# PATCH-FIX-UPSTREAM added at 2014/05/21 +Patch246: 0001-hwdb-update.patch +# PATCH-FIX-UPSTREAM added at 2014/05/21 +Patch247: 0002-hwdb-update.patch +# PATCH-FIX-UPSTREAM added at 2014/05/21 +Patch248: 0003-hwdb-PCI-include-primary-model-string-in-subsystem-m.patch +# PATCH-FIX-UPSTREAM added at 2014/05/21 +Patch249: 0004-hwdb-update.patch +# PATCH-FIX-UPSTREAM added at 2014/05/21 +Patch250: 0005-hwdb-update.patch +# PATCH-FIX-UPSTREAM added at 2014/05/21 +Patch251: 0001-journal-cleanup-up-error-handling-in-update_catalog.patch +# PATCH-FIX-UPSTREAM added at 2014/05/21 +Patch252: 0002-journal-properly-detect-language-specified-in-line.patch +# PATCH-FIX-UPSTREAM added at 2014/05/21 +Patch253: 0003-man-mention-XDG_CONFIG_HOME-in-systemd.unit.patch +# PATCH-FIX-UPSTREAM added at 2014/05/26 +Patch254: 0001-keymap-Add-Lenovo-Enhanced-USB-Keyboard.patch +# PATCH-FIX-UPSTREAM added at 2014/05/26 +Patch255: 0002-keymap-Asus-EeePC-touchpad-toggle-key.patch +# PATCH-FIX-UPSTREAM added at 2014/05/26 +Patch256: 0001-nspawn-allow-to-bind-mount-journal-on-top-of-a-non-e.patch +# PATCH-FIX-UPSTREAM added at 2014/05/26 +Patch257: 0002-nspawn-restore-journal-directory-is-empty-check.patch +# PATCH-FIX-UPSTREAM added at 2014/05/26 +Patch258: 0003-core-never-consider-failure-when-reading-drop-ins-fa.patch +# PATCH-FIX-UPSTREAM added at 2014/05/26 +Patch259: 0004-socket-properly-handle-if-our-service-vanished-durin.patch +# PATCH-FIX-UPSTREAM added at 2014/05/27 +Patch260: 0001-Do-not-unescape-unit-names-in-Install-section.patch +# PATCH-FIX-UPSTREAM added at 2014/05/27 +Patch261: 0002-analyze-run-use-bus_open_transport_systemd-instead-o.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch262: 0001-virt-rework-container-detection-logic.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch263: 0002-fsck-include-device-name-in-the-message-about-missin.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch264: 0003-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch265: 0004-util-ignore_file-should-not-allow-files-ending-with.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch266: 0006-tty-ask-password-agent-Do-tell-what-directory-we-fai.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch267: 0007-keyboard-add-Plantronics-.Audio-mute-button.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch268: 0001-build-sys-use-glibc-s-xattr-support-instead-of-requi.patch +# PATCH-FIX-UPSTREAM added at 2014/06/05 +Patch269: 0001-hwdb-fix-case-sensitive-match.patch +# PATCH-FIX-UPSTREAM added at 2014/06/06 +Patch270: 0001-sd-event-restore-correct-timeout-behaviour.patch +# PATCH-FIX-UPSTREAM added at 2014/06/06 +Patch271: 0002-bus-make-use-of-sd_bus_try_close-in-exit-on-idle-ser.patch +# PATCH-FIX-UPSTREAM added at 2014/06/11 +Patch272: 0001-umount-modernizations.patch +# PATCH-FIX-UPSTREAM added at 2014/06/11 +Patch273: 0002-namespace-when-setting-up-an-inaccessible-mount-poin.patch +# PATCH-FIX-UPSTREAM added at 2014/06/11 +Patch274: 0003-core-allow-transient-mount-units.patch +# PATCH-FIX-UPSTREAM added at 2014/06/11 - Detect XEN dom0 as well as domU +Patch275: 0004-systemd-detect-virt-only-discover-Xen-domU.patch +# PATCH-FIX-UPSTREAM added at 2014/06/11 +Patch276: 0005-backlight-Do-not-clamp-brightness-for-LEDs.patch +# PATCH-FIX-UPSTREAM added at 2014/06/11 +Patch277: 0006-log-honour-the-kernel-s-quiet-cmdline-argument.patch +# PATCH-FIX-UPSTREAM added at 2014/06/17 +Patch278: 0001-core-fix-invalid-free-in-killall.patch +# PATCH-FIX-UPSTREAM added at 2014/06/17 +Patch279: 0003-install-fix-invalid-free-in-unit_file_mask.patch +# PATCH-FIX-UPSTREAM detect virtualization layers on S390 (bnc#880438) +Patch280: 0001-systemd-detect-virt-detect-s390-virtualization.patch +# PATCH-FIX-UPSTREAM 0001-core-sysvcompat-network-should-be-equivalent-to-netw.patch arvidjaar@gmail.com -- Ensure legacy services are started after network is available +Patch281: 0001-core-sysvcompat-network-should-be-equivalent-to-netw.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch282: 0002-units-add-missing-caps-so-that-GetAddresses-can-work.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch283: 0003-units-order-systemd-tmpfiles-clean.service-after-tim.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch284: 0005-po-add-Greek-translation.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch285: 0006-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch286: 0007-po-add-German-translation.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch287: 0009-core-clean-up-signal-reset-logic-when-reexec.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch288: 0010-util-treat-fuse.sshfs-as-a-network-filesystem.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch289: 0011-build-sys-add-pthread-flag-for-libsystemd-shared.patch +# PATCH-FIX-UPSTREAM added at 2014/06/24 +Patch290: 0012-core-transaction-avoid-misleading-error-message-when.patch +# PATCH-FIX-UPSTREAM added at 2014/06/25 +Patch291: 0001-vconsole-also-copy-character-maps-not-just-fonts-fro.patch +# PATCH-FIX-UPSTREAM added at 2014/06/25 +Patch292: 0002-core-make-sure-Environment-fields-passed-in-for-tran.patch +# PATCH-FIX-UPSTREAM added at 2014/06/25 +Patch293: 0003-core-You-can-not-put-the-cached-result-of-use_smack-.patch +# PATCH-FIX-UPSTREAM added at 2014/06/25 +Patch294: 0004-cryptsetup-don-t-add-unit-dependency-on-dev-null-dev.patch +# PATCH-FIX-UPSTREAM added at 2014/06/25 +Patch295: 0005-man-fix-path-in-crypttab-5.patch +# PATCH-FIX-UPSTREAM added at 2014/06/26 +Patch296: 0001-units-order-network-online.target-after-network.targ.patch +# PATCH-FIX-UPSTREAM added at 2014/06/26 +Patch297: 0001-core-use-correct-format-string-for-UIDs.patch +# PATCH-FIX-UPSTREAM added at 2014/06/26 +Patch298: 0002-core-transaction-fix-cycle-break-attempts-outside-tr.patch +# PATCH-FIX-UPSTREAM added at 2014/06/26 +Patch299: 0003-fsck-consider-a-fsck-implementation-linked-to-bin-tr.patch +# PATCH-FIX-UPSTREAM added at 2014/07/01 +Patch300: 0001-main-uid_to_name-might-fail-due-to-OOM-protect-again.patch +# PATCH-FIX-UPSTREAM added at 2014/07/01 +Patch301: 0002-journald-make-MaxFileSec-really-default-to-1month.patch +# PATCH-FIX-UPSTREAM added at 2014/07/01 +Patch302: 0003-units-remove-RefuseManualStart-from-units-which-are-.patch +# PATCH-FIX-UPSTREAM added at 2014/07/01 +Patch303: 0004-util-refuse-considering-UID-0xFFFF-and-0xFFFFFFFF-va.patch +# PATCH-FIX-UPSTREAM added at 2014/07/01 +Patch304: 0005-nspawn-block-open_by_handle_at-and-others-via-seccom.patch +# PATCH-FIX-UPSTREAM added at 2014/07/01 +Patch305: 0006-tmpfiles-don-t-do-automatic-cleanup-in-XDG_RUNTIME_D.patch +# PATCH-FIX-UPSTREAM added at 2014/07/01 +Patch306: 0007-units-skip-mounting-tmp-if-it-is-a-symlink.patch +# PATCH-FIX-UPSTREAM added at 2014/07/03 +Patch307: 0001-parse_uid-return-ENXIO-for-1-uids.patch +# PATCH-FIX-UPSTREAM added at 2014/07/03 +Patch308: 0002-util-when-unescaping-strings-don-t-allow-smuggling-i.patch +# PATCH-FIX-UPSTREAM added at 2014/07/03 +Patch309: 0003-localed-consider-an-unset-model-as-a-wildcard.patch +# PATCH-FIX-UPSTREAM added at 2014/07/03 +Patch310: 0004-sd-bus-when-an-event-loop-terminates-explicitly-clos.patch +# PATCH-FIX-UPSTREAM added at 2014/07/03 +Patch311: 0005-bus-close-a-bus-that-failed-to-connect.patch +# PATCH-FIX-UPSTREAM added at 2014/07/04 +Patch312: 0006-hwdb-update.patch +# PATCH-FIX-UPSTREAM added at 2014/07/04 +Patch313: 0007-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/07/04 +Patch314: 0001-architecture-Add-tilegx.patch +# PATCH-FIX-UPSTREAM added at 2014/07/04 +Patch315: 0002-architecture-Add-cris.patch +# PATCH-FIX-UPSTREAM added at 2014/07/04 +Patch316: 0003-arch-add-crisv32-to-uname-check.patch +# PATCH-FIX-UPSTREAM added at 2014/07/04 +Patch317: 0004-architecture-remove-cris-from-uname-list.patch +# PATCH-FIX-UPSTREAM added at 2014/07/04 +Patch318: 0003-namespace-make-sure-tmp-var-tmp-and-dev-are-writable.patch +# PATCH-FIX-UPSTREAM added at 2014/07/04 +Patch319: 0002-namespace-fix-uninitialized-memory-access.patch +# PATCH-FIX-UPSTREAM added at 2014/07/07 +Patch320: 0001-machine-don-t-return-uninitialized-variable.patch +# PATCH-FIX-UPSTREAM added at 2014/07/07 +Patch321: 0002-vconsole-setup-run-setfont-before-loadkeys.patch +# PATCH-FIX-UPSTREAM added at 2014/07/08 +Patch322: 0001-util-consider-0x7F-a-control-chracter-which-it-is-DE.patch +# PATCH-FIX-UPSTREAM added at 2014/07/08 +Patch323: 0002-util-don-t-consider-tabs-special-in-string_has_cc-an.patch +# PATCH-FIX-UPSTREAM added at 2014/07/08 +Patch324: 0003-architecture-add-string-table-entries-for-mips-le-ar.patch +# PATCH-FIX-UPSTREAM added at 2014/07/08 +Patch325: 0004-core-Added-support-for-ERRNO-NOTIFY_SOCKET-message-p.patch +# PATCH-FIX-UPSTREAM added at 2014/07/08 +Patch326: 0005-service-don-t-accept-negative-ERRNO-notification-mes.patch +# PATCH-FIX-UPSTREAM added at 2014/07/08 +Patch327: 0006-systemctl-show-StatusErrno-value-in-systemctl-status.patch +# PATCH-FIX-UPSTREAM added at 2014/07/08 +Patch328: 0007-service-flush-status-text-and-errno-values-each-time.patch +# PATCH-FIX-UPSTREAM added at 2014/07/09 +Patch329: 0001-journal-compress-return-early-in-uncompress_startswi.patch +# PATCH-FIX-UPSTREAM added at 2014/07/09 +Patch330: 0002-journal-compress-improve-xz-compression-performance.patch +# PATCH-FIX-UPSTREAM added at 2014/07/09 +Patch331: 0001-logind-allow-switching-to-unused-VTs-via-SwitchTo.patch +# PATCH-FIX-UPSTREAM added at 2014/07/09 +Patch332: 0002-hostnamed-add-a-new-chassis-type-for-watches.patch +# PATCH-FIX-UPSTREAM added at 2014/07/10 +Patch333: 0001-units-make-ExecStopPost-action-part-of-ExecStart.patch +# PATCH-FIX-UPSTREAM added at 2014/07/14 +Patch334: 0001-event-pull-in-sd-event.h-from-event-util.h.patch +# PATCH-FIX-UPSTREAM added at 2014/07/14 +Patch335: 0002-util-fix-has-cc-check-and-add-test.patch +# PATCH-FIX-UPSTREAM added at 2014/07/14 +Patch336: 0003-sd-event-always-call-epoll_ctl-on-mask-updates-if-ed.patch +# PATCH-FIX-UPSTREAM added at 2014/07/14 +Patch337: 0004-fileio-quote-more-shell-characters-in-envfiles.patch # PATCH-FIX-SUSE Do a vhangup on all consoles lines (bnc#886599) Patch338: vhangup-on-all-consoles.patch +# PATCH-FIX-UPSTREAM added at 2014/07/16 +Patch339: 0001-Clear-up-confusion-wrt.-ENTRY_SIZE_MAX-and-DATA_SIZE.patch +# PATCH-FIX-UPSTREAM added at 2014/07/16 +Patch340: 0002-units-serial-getty-.service-use-the-default-RestartS.patch +# PATCH-FIX-UPSTREAM added at 2014/07/17 +Patch341: 0001-po-add-Ukrainian-translation.patch +# PATCH-FIX-UPSTREAM added at 2014/07/17 +Patch342: 0002-man-document-yearly-and-annually-in-systemd.time-7.patch +# PATCH-FIX-UPSTREAM added at 2014/07/17 +Patch343: 0003-core-nicer-message-when-inotify-watches-are-exhauste.patch +# PATCH-FIX-UPSTREAM Fix patch 0004-systemd-detect-virt-only-discover-Xen-domU.patch +Patch344: 0001-detect-virt-Fix-Xen-domU-discovery.patch # PATCH-FIX-SUSE Shut up rpmlint warning Patch345: shut-up-rpmlint-on-var-log-journal.patch +# PATCH-FIX-UPSTREAM added at 2014/07/21 +Patch346: 0002-Be-more-verbose-when-bind-or-listen-fails.patch +# PATCH-FIX-UPSTREAM added at 2014/07/21 +Patch347: 0003-Add-quotes-to-warning-message.patch +# PATCH-FIX-UPSTREAM added at 2014/07/21 +Patch348: 0004-systemd-return-the-first-error-from-manager_startup.patch +# PATCH-FIX-UPSTREAM added at 2014/07/21 +Patch349: 0001-bash-completion-p-option-for-journalctl.patch +# PATCH-FIX-UPSTREAM added at 2014/07/21 +Patch350: 0002-journalctl-man-allow-only-between-terms.patch +# PATCH-FIX-UPSTREAM added at 2014/07/21 +Patch351: 0003-systemd-use-pager-for-test-and-help.patch # PATCH-FIX-SUSE Patch352: set-and-use-default-logconsole.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch353: 0001-bus-proxyd-fix-incorrect-comparison.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch354: 0002-shell-completion-prevent-mangling-unit-names.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch355: 0003-Always-check-asprintf-return-code.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch356: 0004-bash-completion-use-list-unit-files-to-get-all-units.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch357: 0005-core-only-set-the-kernel-s-timezone-when-the-RTC-run.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch358: 0006-parse_boolean-require-exact-matches.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch359: 0007-drop_duplicates-copy-full-BindMount-struct.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch360: 0008-shell-completion-prevent-mangling-unit-names-bash.patch +# PATCH-FIX-UPSTREAM added at 2014/07/28 +Patch361: 0009-journald-always-add-syslog-facility-for-messages-com.patch +# PATCH-FIX-SUSE For system console do ask passphrases on all devices of the console Patch362: tty-ask-password-agent-on-console.patch +# PATCH-FIX-UPSTREAM added at 2014/07/30 +Patch363: 0001-sysv-order-initscripts-which-provide-network-before-.patch +# PATCH-FIX-UPSTREAM added at 2014/07/30 +Patch364: 0002-keymap-Add-microphone-mute-keymap-for-Dell-Latitude.patch +# PATCH-FIX-UPSTREAM added at 2014/07/30 +Patch365: 0003-keymap-Annotate-all-micmute-workarounds.patch # PATCH-FIX-SUSE Provide the /var/lock/subsys at start (bnc#889357) Patch366: tomcat6-var-lock-subsys-legacy.patch +# PATCH-FIX-UPSTREAM added at 2014/08/01 +Patch367: 0007-hwdb-update.patch # PATCH-FIX-SUSE Remove error messages for tab completion for systemctl isolate (bnc#892162) Patch368: 0001-let-systemctl-completion-ignore-at-names.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch369: 0001-nspawn-fix-truncation-of-machine-names-in-interface-.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch370: 0002-switch-root-umount-the-old-root-correctly.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch371: 0003-bootchart-it-s-not-OK-to-return-1-from-a-main-progra.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch372: 0004-login-set_controller-should-fail-if-prepare_vt-fails.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch373: 0005-sd-resolve-fix-allocation-if-query-ids-never-reuse-t.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch374: 0006-login-share-VT-signal-handler-between-sessions.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch375: 0007-journald-also-increase-the-SendBuffer-of-dev-log-to-.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch376: 0008-mount-setup-fix-counting-of-early-mounts-without-SMA.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch377: 0009-journald-Fix-off-by-one-error-in-Missed-X-kernel-mes.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch378: 0010-machine_kill-Don-t-kill-the-unit-when-killing-the-le.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch379: 0011-units-fix-BindsTo-logic-when-applied-relative-to-ser.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch380: 0012-util-try-to-be-a-bit-more-NFS-compatible-when-checki.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch381: 0001-hwdb-keymaps-for-Samsung-900X3E-900X3F.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch382: 0002-Add-hwdb-entry-for-Samsung-Series-7-Ultra.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch383: 0003-keymap-Fix-HP-Pavillon-DV7.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch384: 0004-hwdb-update-format-description-and-document-reloadin.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch385: 0008-hwdb-update.patch # PATCH-FIX-SUSE Use RNDADDENTROPY ioctl to load random-seed and to increase entropy count as well (bnc#892096) Patch386: use-rndaddentropy-ioctl-to-load-random-seed.patch +# PATCH-FIX-UPSTREAM added at 2014/08/27 +Patch387: 0001-systemctl-Correct-error-message-printed-when-bus_pro.patch +# PATCH-FIX-UPSTREAM added at 2014/08/27 +Patch388: 0002-units-order-systemd-fsck-.service-after-local-fs-pre.patch +# PATCH-FIX-UPSTREAM added at 2014/08/27 +Patch389: 0003-keymap-Adjust-for-more-Samsung-900X4-series.patch +# PATCH-FIX-UPSTREAM added at 2014/08/28 +Patch390: 0001-login-fix-memory-leak-on-DropController.patch +# PATCH-FIX-UPSTREAM added at 2014/08/28 +Patch391: 0002-util-fix-minimal-race-where-we-might-miss-SIGTERMs-w.patch +# PATCH-FIX-UPSTREAM added at 2014/08/28 +Patch392: 0003-sd-journal-properly-convert-object-size-on-big-endia.patch +# PATCH-FIX-UPSTREAM added at 2014/08/28 +Patch393: 0004-sd-journal-verify-that-object-start-with-the-field-n.patch +# PATCH-FIX-UPSTREAM added at 2014/08/29 +Patch394: 0001-nspawn-fix-network-interface.patch +# PATCH-FIX-UPSTREAM added at 2014/09/01 +Patch395: 0001-completion-filter-templates-from-restartable-units.patch +# PATCH-FIX-UPSTREAM added at 2014/09/01 +Patch396: 0002-systemd-fix-error-message.patch +# PATCH-FIX-UPSTREAM added at 2014/09/01 +Patch397: 0003-Quote-unit-names-in-suggested-systemctl-commandlines.patch +# PATCH-FIX-UPSTREAM added at 2014/09/01 +Patch398: 0004-config-parser-fix-mem-leak.patch +# PATCH-FIX-UPSTREAM added at 2014/09/01 +Patch399: 0005-login-fix-mem-leak.patch +# PATCH-FIX-UPSTREAM added at 2014/09/02 +Patch400: 0001-login-simplify-controller-handling.patch +# PATCH-FIX-UPSTREAM added at 2014/09/05 +Patch401: 0001-initrd-parse-etc.service-ignore-return-code-of-daemo.patch +# PATCH-FIX-UPSTREAM added at 2014/09/08 +Patch402: 0008-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/09/09 +Patch403: 0009-hwdb-update.patch +# PATCH-FIX-UPSTREAM bnc896664: Allow to override default target without --force +Patch404: 0001-systemctl-allow-to-change-the-default-target-without.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch405: 0001-activate-fix-fd-leak-in-do_accept.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch406: 0002-analyze-avoid-a-null-dereference.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch407: 0003-analyze-fix-mem-leak.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch408: 0004-backlight-Avoid-error-when-state-restore-is-disabled.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch409: 0005-bus-avoid-using-m-kdbus-after-freeing-it.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch410: 0006-bus-unref-buscreds-on-failure.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch411: 0007-core-fix-a-potential-mem-leak.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch412: 0008-core-smack-setup-Actually-allow-for-succesfully-load.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch413: 0009-journal-do-not-leak-mmaps-on-OOM.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch414: 0010-manager-use-correct-cleanup-function.patch +# PATCH-FIX-UPSTREAM added at 2014/09/18 +Patch415: 0001-core-fix-resource-leak-in-manager_environment_add.patch +# PATCH-FIX-UPSTREAM added at 2014/09/18 +Patch416: 0002-util-remove-a-unnecessary-check.patch +# PATCH-FIX-UPSTREAM added at 2014/09/18 +Patch417: 0003-udev-event-explicitly-don-t-read-from-invalid-fd.patch +# PATCH-FIX-UPSTREAM added at 2014/09/18 +Patch418: 0004-shared-conf-parser.patch +# PATCH-FIX-UPSTREAM added at 2014/09/18 +Patch419: 0005-logind-fix-typo.patch +# PATCH-FIX-UPSTREAM added at 2014/09/18 +Patch420: 0006-systemctl-fix-resource-leak-CID-1237747.patch +# PATCH-FIX-UPSTREAM added at 2014/09/16 +Patch421: 0007-libudev-monitor-warn-if-we-fail-to-request-SO_PASSCR.patch +# PATCH-FIX-UPSTREAM added at 2014/09/18 +Patch422: 0008-shared-conf-parser-don-t-leak-memory-on-error-in-DEF.patch +# PATCH-FIX-UPSTREAM added at 2014/09/18 -- Be aware that the size of the type bool may vary +Patch423: 0009-bus-fix-bus_print_property-to-use-int-for-booleans.patch +# PATCH-FIX-UPSTREAM added at 2014/09/19 +Patch424: 0001-journal-Do-not-count-on-the-compiler-initializing-fo.patch +# PATCH-FIX-UPSTREAM added at 2014/09/19 +Patch425: 0002-include-fcntl.h-rather-than-sys-fcntl.h.patch +# PATCH-FIX-UPSTREAM added at 2014/09/19 +Patch426: 0003-mount-order-options-before-other-arguments-to-mount.patch +# PATCH-FIX-UPSTREAM added at 2014/09/19 +Patch427: 0004-shared-wtmp-utmp-don-t-clear-store_wtmp-in-utmp_put_.patch +# PATCH-FIX-UPSTREAM added at 2014/09/19 +Patch428: 0005-shared-label.h-add-missing-stdio.h-include.patch +# PATCH-FIX-UPSTREAM added at 2014/09/19 +Patch429: 0006-shared-sparse-endian.h-add-missing-byteswap.h-includ.patch # PATCH-FIX-SUSE AUDIT-0: Power button press at gdm login should not prompt for credentials (bnc#888612) Patch430: 0001-bnc888612-logind-polkit-acpi.patch -# PATCH-FIX-SUSE added on 2014/10/24 +# PATCH-FIX-UPSTREAM added at 2014/09/24 -- May help that history of the shell is saved +Patch431: 0001-login-pause-devices-before-acknowledging-VT-switches.patch +# PATCH-FIX-UPSTREAM added at 2014/09/24 +Patch432: 0001-nspawn-don-t-try-to-create-veth-link-with-too-long-i.patch +# PATCH-FIX-UPSTREAM added at 2014/09/24 (bsc#897801) +Patch433: 0001-socket-introduce-SELinuxContextFromNet-option.patch +# PATCH-FIX-UPSTREAM added at 2014/09/24 +Patch434: 0002-util-avoid-non-portable-__WORDSIZE.patch +# PATCH-FIX-UPSTREAM added at 2014/09/25 +Patch435: 0001-Fix-warning-about-unused-variable-with-SELINUX.patch +# PATCH-FIX-UPSTREAM added at 2014/09/25 +Patch436: 0002-bus-remove-unused-check.patch +# PATCH-FIX-UPSTREAM added at 2014/09/26 +Patch437: 0001-systemd-tmpfiles-Fix-IGNORE_DIRECTORY_PATH-age-handl.patch +# PATCH-FIX-UPSTREAM added at 2014/09/29 +Patch438: 0001-logind-add-support-for-Triton2-Power-Button.patch +# PATCH-FIX-UPSTREAM added at 2014/09/29 +Patch439: 0002-logind-add-support-for-TPS65217-Power-Button.patch +# PATCH-FIX-UPSTREAM added at 2014/09/29 +Patch440: 0001-shutdownd-clean-up-initialization-of-struct.patch +# PATCH-FIX-UPSTREAM added at 2014/09/29 +Patch441: 0003-bootchart-parse-userinput-with-safe_atoi.patch +# PATCH-FIX-UPSTREAM added at 2014/09/29 +Patch442: 0004-bootchart-check-return-of-strftime.patch +# PATCH-FIX-UPSTREAM added at 2014/09/29 +Patch443: 0005-bootchart-Do-not-try-to-access-data-for-non-existing.patch +# PATCH-FIX-UPSTREAM added at 2014/09/30 +Patch444: 0001-journalctl-do-not-output-reboot-markers-when-running.patch +# PATCH-FIX-UPSTREAM added at 2014/09/30 +Patch445: 0002-udev-hwdb-New-Entry-for-Dell-XPS12-9Q33-keyboard.patch +# PATCH-FIX-UPSTREAM added at 2014/10/02 +Patch446: 0001-core-swap-only-make-configured-units-part-of-swap.ta.patch +# PATCH-FIX-UPSTREAM added at 2014/10/02 +Patch447: 0009-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/10/07 +Patch448: 0001-virt-detect-that-we-are-running-inside-the-docker-co.patch +# PATCH-FIX-UPSTREAM added at 2014/10/07 +Patch449: 0002-bootchart-use-n-a-if-PRETTY_NAME-is-not-found.patch +# PATCH-FIX-UPSTREAM added at 2014/10/07 +Patch450: 0003-fileio-label-return-error-when-writing-fails.patch +# PATCH-FIX-UPSTREAM added at 2014/10/07 +Patch451: 0001-sd-event-don-t-require-a-signal-event-source-to-be-e.patch +# PATCH-FIX-UPSTREAM added at 2014/10/07 +Patch452: 0004-sd-event-check-the-value-of-received-signal.patch +# PATCH-FIX-UPSTREAM added at 2014/10/07 +Patch453: 0005-sd-id128-do-stricter-checking-of-random-boot-id.patch +# PATCH-FIX-UPSTREAM added at 2014/10/10 +Patch454: 0001-keymap-Fix-touchpad-toggle-on-Toshiba-Satellite-P75-.patch +# PATCH-FIX-UPSTREAM added at 2014/10/10 +Patch455: 0001-units-introduce-network-pre.target-as-place-to-hook-.patch +# PATCH-FIX-UPSTREAM added at 2014/10/10 +Patch456: 0002-keymap-Fix-touchpad-toggle-key-on-Asus-laptops.patch +# PATCH-FIX-UPSTREAM added at 2014/10/10 +Patch457: 0003-sd-bus-check-return-value-of-vasprintf.patch +# PATCH-FIX-UPSTREAM added at 2014/10/10 +Patch458: 0004-core-map-the-rescue-argument-to-rescue.target.patch +# PATCH-FIX-UPSTREAM added at 2014/10/10 +Patch459: 0005-util-avoid-double-close-of-fd.patch +# PATCH-FIX-UPSTREAM added at 2014/10/13 +Patch460: 0001-systemctl-when-mangle-unit-names-for-the-isolate-suf.patch +# PATCH-FIX-UPSTREAM added at 2014/10/14 +Patch461: 0001-tmpfiles-compare-return-against-correct-errno.patch +# PATCH-FIX-UPSTREAM added at 2014/10/15 +Patch462: 0001-shell-completion-fix-completion-of-inactive-units.patch +# PATCH-FIX-UPSTREAM added at 2014/10/15 +Patch463: 0002-shell-completion-propose-templates-for-disable-re-en.patch +# PATCH-FIX-UPSTREAM added at 2014/10/15 +Patch464: 0003-man-we-don-t-have-Wanted-dependency.patch +# PATCH-FIX-UPSTREAM added at 2014/10/15 +Patch465: 0004-selinux-fix-potential-double-free-crash-in-child-pro.patch +# PATCH-FIX-UPSTREAM added at 2014/10/20 +Patch466: 0001-systemd-continue-switch-root-even-if-umount-fails.patch +# PATCH-FIX-UPSTREAM added at 2014/10/20 +Patch467: 0002-systemd-try-harder-to-bind-to-notify-socket.patch +# PATCH-FIX-SUSE added at 2014/10/15 +Patch468: avoid-leaking-socket-descriptors.patch +# PATCH-FIX-UPSTREAM added at 2014/10/23 +Patch469: 0001-strv-add-an-additional-overflow-check-when-enlarging.patch +# PATCH-FIX-UPSTREAM added at 2014/10/23 +Patch470: 0002-hwdb-Add-mapping-for-special-keys-on-compaq-ku-0133-.patch +# PATCH-FIX-UPSTREAM added at 2014/10/23 +Patch471: 0003-journald-add-CAP_MAC_OVERRIDE-in-journald-for-SMACK-.patch +# PATCH-FIX-UPSTREAM added at 2014/10/23 +Patch472: 0004-journal-do-server_vacuum-for-sigusr1.patch +# PATCH-FIX-UPSTREAM added at 2014/10/23 +Patch473: 0005-cryptsetup-fix-an-OOM-check.patch +# PATCH-FIX-UPSTREAM added at 2014/10/24 +Patch474: 0002-shutdown-pass-own-argv-to-run-initramfs-shutdown.patch +# PATCH-FIX-SUSE added at 2014/10/24 Patch475: journald-advice-about-use-of-memory.patch -# PATCH-FIX-SUSE added on 2014/11/05 +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch476: 0001-manager-Linux-on-hppa-has-fewer-rtsigs-hence-avoid-u.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch477: 0002-time-also-support-infinity-syntax-in-parse_nsec.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch478: 0003-time-earlier-exit-from-format_timestamp_relative-on-.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch479: 0004-sd-bus-if-we-don-t-manage-to-properly-allocate-the-e.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch480: 0005-journalctl-correct-help-text-for-until.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch481: 0006-calendarspec-fix-typo-in-annually.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch482: 0007-systemctl-do-not-ignore-errors-in-symlink-removal.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch483: 0008-util-introduce-sethostname_idempotent.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch484: 0009-util-fix-copy-paste-error-and-actually-set-the-new-h.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch485: 0010-shutdown-do-final-unmounting-only-if-not-running-ins.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch486: 0011-selinux-make-sure-we-do-not-try-to-print-missing-fie.patch +# PATCH-FIX-UPSTREAM added at 2014/10/28 +Patch487: 0012-manager-do-not-print-anything-while-passwords-are-be.patch +# PATCH-FIX-UPSTREAM added at 2014/10/31 +Patch488: 0001-sd-bus-properly-handle-removals-of-non-existing-matc.patch +# PATCH-FIX-UPSTREAM added at 2014/10/31 +Patch489: 0002-keymap-Ignore-brightness-keys-on-Dell-Inspiron-1520-.patch +# PATCH-FIX-SUSE added at 2014/11/05 Patch490: watch_resolv.conf_for_become_changed.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch491: 0001-core-don-t-allow-enabling-if-unit-is-masked.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch492: 0002-snapshot-return-error-when-snapshot-exists.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch493: 0003-shared-install-avoid-prematurely-rejecting-missing-u.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch494: 0004-Raise-level-of-Found-dependency.-lines.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch495: 0005-units-order-sd-journal-flush-after-sd-remount-fs.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch496: 0006-journald-fix-minor-memory-leak.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch497: 0007-journald-also-check-journal-file-size-to-deduce-if-i.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch498: 0008-journald-fix-memory-leak-on-error-path.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch499: 0009-units-make-systemd-journald.service-Type-notify.patch +# PATCH-FIX-UPSTREAM added at 2014/11/07 +Patch500: 0010-hwdb-Update-database-of-Bluetooth-company-identifier.patch +# PATCH-FIX-UPSTREAM added at 2014/11/10 +Patch501: 0001-login-rerun-vconsole-setup-when-switching-from-vgaco.patch +# PATCH-FIX-UPSTREAM added at 2014/11/10 +Patch502: 0002-shutdown-fix-arguments-to-run-initramfs-shutdown.patch +# PATCH-FIX-UPSTREAM added at 2014/11/10 +Patch503: 0003-utf8-when-looking-at-the-next-unichar-honour-the-siz.patch +# PATCH-FIX-UPSTREAM added at 2014/11/18 +Patch504: 0001-keymap-Add-support-for-IBM-ThinkPad-X41-Tablet.patch +# PATCH-FIX-UPSTREAM added at 2014/11/18 +Patch505: 0002-keymap-Fix-special-keys-on-ThinkPad-X60-X61-Tablet.patch +# PATCH-FIX-UPSTREAM added at 2014/11/18 +Patch506: 0001-systemctl-let-list-units-unit-files-honour-type.patch +# PATCH-FIX-UPSTREAM added at 2014/11/18 +Patch507: 0002-systemctl-obey-state-in-list-unit-files.patch +# PATCH-FIX-UPSTREAM added at 2014/11/20 +Patch509: 0002-core-watchdog-bus-properties-cannot-be-both-writable.patch +# PATCH-FIX-UPSTREAM added at 2014/11/20 +Patch510: 0003-sd-bus-refuse-properties-that-claim-to-be-both-writa.patch +# PATCH-FIX-UPSTREAM added at 2014/12/05 +Patch511: 0001-units-make-sure-rfkill-service-is-bount-to-the-actua.patch +# PATCH-FIX-UPSTREAM added at 2014/12/05 +Patch512: 0002-rfkill-rework-how-we-generate-file-names-from-rfkill.patch +# PATCH-FIX-SUSE 513-nspawn-veth.patch (bnc#906709) +Patch513: 513-nspawn-veth.patch +# PATCH-FIX-UPSTREAM added at 2014/12/15 +Patch514: 0001-selinux-access-fix-broken-ternary-operator.patch +# PATCH-FIX-UPSTREAM added at 2014/12/15 +Patch515: 0002-systemctl-show-BindsTo-BoundBy-in-list-dependencies.patch +# PATCH-FIX-UPSTREAM added at 2014/12/15 +Patch516: 0003-cryptsetup-default-to-no-hash-when-keyfile-is-specif.patch +# PATCH-FIX-UPSTREAM added at 2014/12/15 +Patch517: 0004-core-fix-transaction-destructiveness-check-once-more.patch +# PATCH-FIX-UPSTREAM added at 2014/12/16 +Patch518: 0001-units-tmpfiles-setup-dev-allow-unsafe-file-creation-.patch +# PATCH-FIX-UPSTREAM added at 2014/12/16 +Patch519: 0002-man-tmpfiles.d-recommend-using-b-and-c.patch # PATCH-FIX-SUSE systemd-add-user-keep.patch (bnc#903009) Patch520: systemd-add-user-keep.patch # PATCH-FIX-SUSE systemd-add-user-keep.patch (bnc#903009) Patch521: kbd-model-map.patch -Patch522: 0001-core-rework-device-state-logic.patch +# # UDEV PATCHES # ============ @@ -270,46 +1080,188 @@ Patch1005: 1005-create-default-links-for-primary-cd_dvd-drive.patch Patch1006: 1006-udev-always-rename-network.patch # PATCH-FIX-OPENSUSE 1007-physical-hotplug-cpu-and-memory.patch Patch1007: 1007-physical-hotplug-cpu-and-memory.patch +# PATCH-FIX-OPENSUSE 1008-add-msft-compability-rules.patch -- for code base <= 1310 +Patch1008: 1008-add-msft-compability-rules.patch +# PATCH-FIX-USTREAM added at 2014/03/03 +Patch1009: 1009-cdrom_id-use-the-old-MMC-fallback.patch +# PATCH-FIX-SUSE increase result size for programs (bnc#867840) +Patch1010: 1010-udev-increase-result-size-for-programs.patch # PATCH-FIX-SUSE skip btrfs check if devices are not ready (bnc#872929) Patch1011: 1011-64-btrfs.rules-skip-btrfs-check-if-devices-are-not-r.patch # PATCH-FIX-SUSE skip persistent device link creation on mp device (bnc#872929) Patch1012: 1012-Skip-persistent-device-link-creation-on-multipath-de.patch # PATCH-FIX-SUSE Do not use runtime PM for some IBM consoles (bnc#868931) Patch1013: 1013-no-runtime-PM-for-IBM-consoles.patch +# PATCH-FIX-USTREAM 1014-udev-update-net_id-comments.patch +Patch1014: 1014-udev-update-net_id-comments.patch +# PATCH-FIX-USTREAM 1015-udev-persistent-naming-we-cannot-use-virtio-numbers-.patch +Patch1015: 1015-udev-persistent-naming-we-cannot-use-virtio-numbers-.patch +# PATCH-FIX-UPSTREAM added at 2014/05/12 +Patch1016: 1016-udev-warn-when-name_to_handle_at-is-not-implemented.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch1017: 1017-udev-serialize-synchronize-block-device-event-handli.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch1018: 1018-udev-do-not-skip-the-execution-of-RUN-when-renaming-.patch +# PATCH-FIX-UPSTREAM added at 2014/05/20 +Patch1019: 1019-udev-avoid-use-of-uninitialized-err.patch +# PATCH-FIX-UPSTREAM added at 2014/05/26 +Patch1020: 1020-udev-keyboard-also-hook-into-change-events.patch # PATCH-FIX-SUSE 1021-udev-re-add-persistent-net-rules.patch Patch1021: 1021-udev-re-add-persistent-net-rules.patch +# PATCH-FIX-UPSTREAM 1022-udev-remove-seqnum-API-and-all-assumptions-about-seq.patch +Patch1022: 1022-udev-remove-seqnum-API-and-all-assumptions-about-seq.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch1023: 1023-udev-builtin-keyboard-do-tell-on-which-device-EVIOCS.patch +# PATCH-FIX-UPSTREAM added at 2014/06/03 +Patch1024: 1024-udev-always-close-lock-file-descriptor.patch +# PATCH-FIX-UPSTREAM 1025-udev-exclude-device-mapper-from-block-device-ownersh.patch +Patch1025: 1025-udev-exclude-device-mapper-from-block-device-ownersh.patch +# PATCH-FIX-UPSTREAM 1026-udevd-inotify-modernizations.patch +Patch1026: 1026-udevd-inotify-modernizations.patch +# PATCH-FIX-UPSTREAM 1027-udev-synthesize-change-events-for-partitions-when-to.patch +Patch1027: 1027-udev-synthesize-change-events-for-partitions-when-to.patch +# PATCH-FIX-UPSTREAM 1028-udev-link-config-fix-mem-leak.patch +Patch1028: 1028-udev-link-config-fix-mem-leak.patch +# PATCH-FIX-UPSTREAM 1029-udev-try-first-re-reading-the-partition-table.patch +Patch1029: 1029-udev-try-first-re-reading-the-partition-table.patch +# PATCH-FIX-UPSTREAM 1030-udev-guard-REREADP-logic-with-open-O_ECXL.patch +Patch1030: 1030-udev-guard-REREADP-logic-with-open-O_ECXL.patch +# PATCH-FIX-UPSTREAM 1031-udev-make-sure-we-always-get-change-for-the-disk.patch +Patch1031: 1031-udev-make-sure-we-always-get-change-for-the-disk.patch +# PATCH-FIX-UPSTREAM 1032-udev-guard-REREADPT-by-exclusive-lock-instead-of-O_E.patch +Patch1032: 1032-udev-guard-REREADPT-by-exclusive-lock-instead-of-O_E.patch +# PATCH-FIX-UPSTREAM 1033-udev-really-exclude-device-mapper-from-block-device.patch +Patch1033: 1033-udev-really-exclude-device-mapper-from-block-device.patch +# PATCH-FIX-UPSTREAM 1034-udev-check-the-return-value-from-udev_enumerate_scan.patch +Patch1034: 1034-udev-check-the-return-value-from-udev_enumerate_scan.patch # PATCH-FIX-SUSE 1035-99-systemd.rules-Ignore-devices-with-SYSTEMD_READY-0.patch Patch1035: 1035-99-systemd.rules-Ignore-devices-with-SYSTEMD_READY-0.patch # PATCH-FIX-SUSE 1036-rules-disable-usage-of-dev_id-in-persistent-rules.patch Patch1036: 1036-rules-disable-usage-of-dev_id-in-persistent-rules.patch # PATCH-FIX-SUSE See bnc#882714 comment #51 Patch1037: 1037-udev-exclude-cd-dvd-from-block-device.patch +# PATCH-FIX-UPSTREAM 1038-udev-fix-invalid-free-in-enable_name_policy.patch +Patch1038: 1038-udev-fix-invalid-free-in-enable_name_policy.patch +# PATCH-FIX-UPSTREAM 1039-udevadm-settle-fixed-return-code-for-empty-queue.patch +Patch1039: 1039-udevadm-settle-fixed-return-code-for-empty-queue.patch # PATCH-FIX-SUSE 1040-re-enable-dev_id-conditionally-in-persistent-rules.patch (bnc#884403 and bnc#882714) Patch1040: 1040-re-enable-dev_id-conditionally-in-persistent-rules.patch +# PATCH-FIX-UPSTREAM 1041-libudev-fix-udev_queue_get_queue_is_empty-logic.patch +Patch1041: 1041-libudev-fix-udev_queue_get_queue_is_empty-logic.patch +# PATCH-FIX-UPSTREAM 1042-libudev-queue-provide-file-descriptor-to-watch-busy-.patch +Patch1042: 1042-libudev-queue-provide-file-descriptor-to-watch-busy-.patch +# PATCH-FIX-UPSTREAM 1043-libudev-queue-watch-entire-directory-to-allow-the-re.patch +Patch1043: 1043-libudev-queue-watch-entire-directory-to-allow-the-re.patch +# PATCH-FIX-UPSTREAM 1044-rules-update-qemu-hid-rules.patch +Patch1044: 1044-rules-update-qemu-hid-rules.patch +# PATCH-FIX-UPSTREAM 1045-rules-don-t-enable-usb-pm-for-Avocent-devices.patch +Patch1045: 1045-rules-don-t-enable-usb-pm-for-Avocent-devices.patch # PATCH-FIX-SUSE 1046-fix-duplicated-rules-with-layer3-interfaces.patch (bnc#882714) Patch1046: 1046-fix-duplicated-rules-with-layer3-interfaces.patch +# PATCH-FIX-UPSTREAM added at 2014/07/03 +Patch1047: 1047-udev-net_setup_link-builtin-should-print-the-reason-.patch +# PATCH-FIX-UPSTREAM 1048-udev-net_setup_link-add-a-bit-more-logging.patch +Patch1048: 1048-udev-net_setup_link-add-a-bit-more-logging.patch +# PATCH-FIX-UPSTREAM 1049-udev-link_config-ignore-errors-due-to-missing-MAC-ad.patch +Patch1049: 1049-udev-link_config-ignore-errors-due-to-missing-MAC-ad.patch # PATCH-FIX-SUSE 1050-only-rename-SRIOV-VF-devices-when-name-starts-with-eth.patch (bnc#885232) Patch1050: 1050-only-rename-SRIOV-VF-devices-when-name-starts-with-eth.patch # PATCH-FIX-SUSE 1051-check-if-NAME-has-a-value.patch (bnc#885232) Patch1051: 1051-check-if-NAME-has-a-value.patch +# PATCH-FIX-UPSTREAM 1052-rules-uaccess-add-ID_SOFTWARE_RADIO.patch +Patch1052: 1052-rules-uaccess-add-ID_SOFTWARE_RADIO.patch # PATCH-FIX-SUSE 1053-better-checks-in-write_net_rules.patch (bnc#888178) Patch1053: 1053-better-checks-in-write_net_rules.patch +# PATCH-FIX-SUSE 0001-udev-exclude-MD-from-block-device-ownership-event-lo.patch +Patch1054: 1054-udev-exclude-MD-from-block-device-ownership-event-lo.patch # PATCH-FIX-SUSE 1055-let-9719859c07aa13539ed2cd4b31972cd30f678543-apply.patch Patch1055: 1055-let-9719859c07aa13539ed2cd4b31972cd30f678543-apply.patch +# PATCH-FIX-UPSTREAM 1056-udevd-add-event-timeout-commandline-option.patch +Patch1056: 1056-udevd-add-event-timeout-commandline-option.patch +# PATCH-FIX-UPSTREAM 1057-udev-unify-event-timeout-handling.patch +Patch1057: 1057-udev-unify-event-timeout-handling.patch +# PATCH-FIX-UPSTREAM 1058-udev-unify-event-timeout-handling.patch +Patch1058: 1058-udev-unify-event-timeout-handling.patch +# PATCH-FIX-UPSTREAM 1059-udev-fixup-commit-dd5eddd28a74a49607a8fffcaf960040db.patch +Patch1059: 1059-udev-fixup-commit-dd5eddd28a74a49607a8fffcaf960040db.patch # PATCH-FIX-SUSE 1060-udev-use-device-mapper-target-name-for-btrfs-device-ready.patch Patch1060: 1060-udev-use-device-mapper-target-name-for-btrfs-device-ready.patch +# PATCH-FIX-UPSTREAM 1061-rules-allow-systemd-to-manage-loop-device-partitions.patch +Patch1061: 1061-rules-allow-systemd-to-manage-loop-device-partitions.patch # PATCH-FIX-SUSE 1062-rules-set-default-permissions-for-GenWQE-devices.patch (bnc#890977) Patch1062: 1062-rules-set-default-permissions-for-GenWQE-devices.patch +# PATCH-FIX-UPSTREAM 1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch +Patch1063: 1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch +# PATCH-FIX-UPSTREAM 1064-udev-hwdb-do-not-look-at-usb_device-parents.patch +Patch1064: 1064-udev-hwdb-do-not-look-at-usb_device-parents.patch +# PATCH-FIX-UPSTREAM 1065-udev-bump-event-timeout-to-60-seconds.patch +Patch1065: 1065-udev-bump-event-timeout-to-60-seconds.patch # PATCH-FIX-SUSE 1066-udev-add-compatibility-links-for-truncated-by-id-links.patch (bnc#886852) Patch1066: 1066-udev-add-compatibility-links-for-truncated-by-id-links.patch +# PATCH-FIX-UPSTREAM 1067-udev-always-resolve-correctly-database-names-on-chan.patch (bnc#864745) +Patch1067: 1067-udev-always-resolve-correctly-database-names-on-chan.patch +# PATCH-FIX-UPSTREAM 1068-udev-net_setup_link-export-the-.link-filename-applie.patch +Patch1068: 1068-udev-net_setup_link-export-the-.link-filename-applie.patch +# PATCH-FIX-UPSTREAM 1069-rules-net-setup-link-preserve-ID_NET_LINK_FILE-and-I.patch +Patch1069: 1069-rules-net-setup-link-preserve-ID_NET_LINK_FILE-and-I.patch +# PATCH-FIX-UPSTREAM 1070-rules-net-setup-link-remove-stray-linebreak.patch +Patch1070: 1070-rules-net-setup-link-remove-stray-linebreak.patch +# PATCH-FIX-UPSTREAM 1071-udev-import-the-full-db-on-MOVE-events-for-devices-w.patch +Patch1071: 1071-udev-import-the-full-db-on-MOVE-events-for-devices-w.patch +# PATCH-FIX-UPSTREAM 1072-udev-netif_rename-don-t-log-to-kmsg.patch +Patch1072: 1072-udev-netif_rename-don-t-log-to-kmsg.patch +# PATCH-FIX-UPSTREAM 1073-udev-drop-print_kmsg.patch +Patch1073: 1073-udev-drop-print_kmsg.patch +# PATCH-FIX-UPSTREAM 1074-udev-fix-copy-paste-error-in-log-message.patch +Patch1074: 1074-udev-fix-copy-paste-error-in-log-message.patch +# PATCH-FIX-UPSTREAM 1075-udev-timeout-increase-timeout.patch +Patch1075: 1075-udev-timeout-increase-timeout.patch +# PATCH-FIX-UPSTREAM 1076-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch +Patch1076: 1076-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch +# PATCH-FIX-UPSTREAM 1077-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch +Patch1077: 1077-udev-timeout-warn-after-a-third-of-the-timeout-befor.patch +# PATCH-FIX-UPSTREAM 1078-udev-remove-userspace-firmware-loading-support.patch +Patch1078: 1078-udev-remove-userspace-firmware-loading-support.patch +# PATCH-FIX-UPSTREAM 1079-udev-remove-userspace-firmware-loading-support.patch +Patch1079: 1079-udev-remove-userspace-firmware-loading-support.patch +# PATCH-FIX-UPSTREAM 1080-udevd-parse_argv-warn-if-argumens-are-invalid.patch +Patch1080: 1080-udevd-parse_argv-warn-if-argumens-are-invalid.patch +# PATCH-FIX-UPSTREAM 1081-udevd-check-return-of-various-functions.patch +Patch1081: 1081-udevd-check-return-of-various-functions.patch +# PATCH-FIX-UPSTREAM 1082-udevadm-hwdb-check-return-value-of-fseeko.patch +Patch1082: 1082-udevadm-hwdb-check-return-value-of-fseeko.patch +# PATCH-FIX-UPSTREAM 1083-udev-node-warn-if-chmod-chown-fails.patch +Patch1083: 1083-udev-node-warn-if-chmod-chown-fails.patch +# PATCH-FIX-UPSTREAM 1084-udev-ctrl-log-if-setting-SO_PASSCRED-fails.patch +Patch1084: 1084-udev-ctrl-log-if-setting-SO_PASSCRED-fails.patch +# PATCH-FIX-UPSTREAM 1085-udev-fix-typos.patch +Patch1085: 1085-udev-fix-typos.patch +# PATCH-FIX-UPSTREAM 1085-udevd-don-t-fail-if-run-udev-exists.patch +Patch1086: 1086-udevd-don-t-fail-if-run-udev-exists.patch +# PATCH-FIX-SUSE 1087-infinit-timeout-for-kmod-loaded-modules.patch +Patch1087: 1087-infinit-timeout-for-kmod-loaded-modules.patch # PATCH-FIX-SUSE 1088-drop-renaming-of-virtual-interfaces-in-guest.patch (bnc#898432) Patch1088: 1088-drop-renaming-of-virtual-interfaces-in-guest.patch +# PATCH-FIX-UPSTREAM 1089-fix-cgroup-device-controller.patch +Patch1089: 1089-fix-cgroup-device-controller.patch +# PATCH-FIX-UPSTREAM 1090-udev-path_id-set-supported_parent-for-well-known-SCS.patch +Patch1090: 1090-udev-path_id-set-supported_parent-for-well-known-SCS.patch +# PATCH-FIX-UPSTREAM 1091-udev-path_id-update-comments.patch +Patch1091: 1091-udev-path_id-update-comments.patch +# PATCH-FIX-UPSTREAM 1092-libudev-do-not-accept-invalid-log-levels.patch +Patch1092: 1092-libudev-do-not-accept-invalid-log-levels.patch +# PATCH-FIX-UPSTREAM 1093-udev-Fix-parsing-of-udev.event-timeout-kernel-parame.patch +Patch1093: 1093-udev-Fix-parsing-of-udev.event-timeout-kernel-parame.patch +# PATCH-FIX-UPSTREAM 1094-udev-avoid-magic-constants-in-kernel-cmdline-parsers.patch +Patch1094: 1094-udev-avoid-magic-constants-in-kernel-cmdline-parsers.patch # PATCH-FIX-SUSE 1095-set-ssd-disk-to-use-deadline-scheduler.patch (bnc#904517) Patch1095: 1095-set-ssd-disk-to-use-deadline-scheduler.patch # PATCH-FIX-SUSE 1096-new-udev-root-symlink-generator.patch Patch1096: 1096-new-udev-root-symlink-generator.patch # PATCH-FIX-SUSE 1097-udevd-increase-maximum-number-of-children.patch Patch1097: 1097-udevd-increase-maximum-number-of-children.patch +# PATCH-FIX-UPSTREAM 1098-udev-link_setup-respect-kernel-name-assign-policy.patch +Patch1098: 1098-udev-link_setup-respect-kernel-name-assign-policy.patch %description Systemd is a system and service manager, compatible with SysV and LSB @@ -517,24 +1469,6 @@ is logged to /var/log/messages. Please check whether that's worth a bug report then. This package marks the installation to not use syslog but only the journal. -%package -n nss-mymachines -Summary: Plugin for local virtual host name resolution -License: LGPL-2.1+ -Group: System/Libraries - -%description -n nss-mymachines -nss-myhostname is a plugin for the GNU Name Service Switch (NSS) -functionality of the GNU C Library (glibc) providing host name -resolution for the locally configured containers and virtual machines -systemd-machined knows about. - -%package -n nss-resolve -Summary: Plugin for local hostname resolution via systemd-resolved -License: LGPL-2.1+ -Group: System/Libraries - -%description -n nss-resolve - %package journal-gateway Summary: Gateway for serving journal events over the network using HTTP License: LGPL-2.1+ @@ -546,12 +1480,13 @@ Requires(postun): systemd %description journal-gateway systemd-journal-gatewayd serves journal events over the network using HTTP. + %endif %prep -%setup -q -n systemd-%version +%setup -q -n systemd-%{version} echo "Checking whether upstream rpm macros changed..." -diff -au "%{S:10}" src/core/macros.systemd.in +[ -z "`diff -Naru "%{S:10}" src/core/macros.systemd.in`" ] || exit 1 # only needed for bootstrap %if 0%{?bootstrap} @@ -559,15 +1494,29 @@ cp %{SOURCE7} m4/ %endif # systemd patches +%patch0 -p1 +%patch1 -p1 %patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 +%patch7 -p1 +%if 0%{?suse_version} <= 1310 +%patch8 -p1 +%endif +%patch9 -p1 %patch12 -p1 +%patch13 -p0 +%patch15 -p1 %patch16 -p1 %patch17 -p1 +%patch18 -p1 +%patch19 -p0 %patch20 -p1 %patch21 -p1 +%patch22 -p1 +%patch23 -p1 +%patch24 -p1 %patch25 -p1 # check if this is still needed, or can be derived from fbdev uaccess rule # http://lists.freedesktop.org/archives/systemd-devel/2012-November/007561.html @@ -578,45 +1527,418 @@ cp %{SOURCE7} m4/ %patch40 -p1 %patch41 -p1 %patch42 -p1 +%patch46 -p1 +%patch47 -p1 %patch84 -p1 %patch86 -p1 %patch90 -p1 %patch91 -p1 +%patch93 -p1 +%patch114 -p0 +%if 0%{?suse_version} <= 1310 +%patch117 -p1 +%endif +%patch119 -p1 %patch120 -p1 +%patch121 -p0 +%patch122 -p0 +%patch123 -p0 +%patch124 -p0 +%patch125 -p0 +%patch126 -p0 +%patch127 -p0 +%patch128 -p0 +%patch129 -p0 +%patch130 -p0 +%patch131 -p0 +%patch132 -p0 +%patch133 -p0 +%patch134 -p0 +%patch135 -p0 +%patch136 -p0 +%patch137 -p0 +%patch138 -p0 +%patch139 -p0 +%patch140 -p0 +%patch141 -p0 +%patch142 -p0 +%patch143 -p0 +%patch144 -p0 +%patch145 -p0 +%patch146 -p0 +%patch147 -p0 +%patch148 -p0 +%patch149 -p0 +%patch150 -p0 +%patch151 -p0 +%patch152 -p0 +%patch153 -p0 +%patch154 -p0 +%patch155 -p0 +%patch157 -p0 +%patch158 -p0 +%patch159 -p0 +%patch160 -p0 +%patch161 -p0 +%patch162 -p0 +%patch163 -p0 +%patch164 -p0 +%patch165 -p0 +%patch166 -p0 +%patch167 -p0 +%patch168 -p0 +%patch169 -p0 +%patch170 -p0 +%patch171 -p0 +%patch172 -p0 +%patch173 -p0 +%patch174 -p0 +%patch175 -p0 +%patch176 -p0 %patch177 -p1 %patch178 -p1 %patch179 -p1 %patch180 -p1 +%patch181 -p1 %patch182 -p1 %patch183 -p1 %patch185 -p1 %patch186 -p1 +%patch187 -p1 %patch188 -p1 %patch189 -p1 %patch190 -p1 %patch191 -p1 %patch192 -p1 %patch193 -p1 +%patch194 -p0 +%patch196 -p1 +%patch195 -p0 %patch197 -p1 %patch198 -p1 +%patch199 -p0 +%patch200 -p0 +%patch201 -p0 +%patch202 -p0 %patch203 -p1 +%patch204 -p1 +%patch206 -p0 +%patch207 -p0 %patch208 -p1 -%patch338 -p1 +%patch209 -p0 +%patch211 -p0 +%patch212 -p0 +%patch213 -p0 +%patch214 -p0 +%patch215 -p0 +%patch216 -p0 +%patch217 -p0 +%patch218 -p0 +%patch219 -p1 +%patch220 -p0 +%patch221 -p0 +%patch222 -p0 +%patch223 -p0 +%patch224 -p0 +%patch225 -p0 +%patch226 -p0 +%patch227 -p0 +%patch228 -p0 +%patch229 -p0 +%patch230 -p0 +%patch231 -p0 +%patch232 -p0 +%patch233 -p0 +%patch234 -p0 +%patch235 -p0 +%patch236 -p0 +%patch237 -p0 +%patch238 -p0 +%patch239 -p0 +%patch240 -p0 +%patch241 -p0 +%patch242 -p0 +%patch243 -p0 +%patch244 -p0 +%patch245 -p0 +%patch246 -p0 +%patch247 -p0 +%patch248 -p0 +%patch249 -p0 +%patch250 -p0 +%patch251 -p0 +%patch252 -p0 +%patch253 -p0 +%patch254 -p0 +%patch255 -p0 +%patch256 -p0 +%patch257 -p0 +%patch258 -p0 +%patch259 -p0 +%patch260 -p0 +%patch261 -p0 +%patch262 -p0 +%patch263 -p0 +%patch264 -p0 +%patch265 -p0 +%patch266 -p0 +%patch267 -p0 +%patch268 -p0 +%patch269 -p0 +%patch270 -p0 +%patch271 -p0 +%patch272 -p0 +%patch273 -p0 +%patch274 -p0 +%patch275 -p0 +%patch276 -p0 +%patch277 -p0 +%patch278 -p0 +%patch279 -p0 +%patch280 -p0 +%patch281 -p1 +%patch282 -p0 +%patch283 -p0 +%patch284 -p0 +%patch285 -p0 +%patch286 -p0 +%patch287 -p0 +%patch288 -p0 +%patch289 -p0 +%patch290 -p0 +%patch291 -p0 +%patch292 -p0 +%patch293 -p0 +%patch294 -p0 +%patch295 -p0 +%patch296 -p0 +%patch297 -p0 +%patch298 -p0 +%patch299 -p0 +%patch300 -p0 +%patch301 -p0 +%patch302 -p0 +%patch303 -p0 +%patch304 -p0 +%patch305 -p0 +%patch306 -p0 +%patch307 -p0 +%patch308 -p0 +%patch309 -p0 +%patch310 -p0 +%patch311 -p0 +%patch312 -p0 +%patch313 -p0 +%patch314 -p0 +%patch315 -p0 +%patch316 -p0 +%patch317 -p0 +%patch318 -p0 +%patch319 -p0 +%patch320 -p0 +%patch321 -p0 +%patch322 -p0 +%patch323 -p0 +%patch324 -p0 +%patch325 -p0 +%patch326 -p0 +%patch327 -p0 +%patch328 -p0 +%patch329 -p0 +%patch330 -p0 +%patch331 -p0 +%patch332 -p0 +%patch333 -p0 +%patch334 -p0 +%patch335 -p0 +%patch336 -p0 +%patch337 -p0 +%patch338 -p0 +%patch339 -p0 +%patch340 -p0 +%patch341 -p0 +%patch342 -p0 +%patch343 -p0 +%patch344 -p0 %patch345 -p1 -%patch352 -p1 +%patch346 -p0 +%patch347 -p0 +%patch348 -p0 +%patch349 -p0 +%patch350 -p0 +%patch351 -p0 +%patch352 -p0 +%patch353 -p0 +%patch354 -p0 +%patch355 -p0 +%patch356 -p0 +%patch357 -p0 +%patch358 -p0 +%patch359 -p0 +%patch360 -p0 +%patch361 -p0 %patch362 -p1 +%patch363 -p0 +%patch364 -p0 +%patch365 -p0 %patch366 -p1 +%patch367 -p0 %patch368 -p1 +%patch369 -p0 +%patch370 -p0 +%patch371 -p0 +%patch372 -p0 +%patch373 -p0 +%patch374 -p0 +%patch375 -p0 +%patch376 -p0 +%patch377 -p0 +%patch378 -p0 +%patch379 -p0 +%patch380 -p0 +%patch381 -p0 +%patch382 -p0 +%patch383 -p0 +%patch384 -p0 +%patch385 -p0 %patch386 -p1 +%patch387 -p0 +%patch388 -p0 +%patch389 -p0 +%patch390 -p0 +%patch391 -p0 +%patch392 -p0 +%patch393 -p0 +%patch394 -p0 +%patch395 -p0 +%patch396 -p0 +%patch397 -p0 +%patch398 -p0 +%patch399 -p0 +%patch400 -p0 +%patch401 -p0 +%patch402 -p0 +%patch403 -p0 +%patch404 -p0 +%patch405 -p0 +%patch406 -p0 +%patch407 -p0 +%patch408 -p0 +%patch409 -p0 +%patch410 -p0 +%patch411 -p0 +%patch412 -p0 +%patch413 -p0 +%patch414 -p0 +%patch415 -p0 +%patch416 -p0 +%patch417 -p0 +%patch418 -p0 +%patch419 -p0 +%patch420 -p0 +%patch421 -p0 +%patch422 -p0 +%patch423 -p0 +%patch424 -p0 +%patch425 -p0 +%patch426 -p0 +%patch427 -p0 +%patch428 -p0 +%patch429 -p0 %patch430 -p1 -%patch475 -p1 +%patch431 -p0 +%patch432 -p0 +%patch433 -p0 +%patch434 -p0 +%patch435 -p0 +%patch436 -p0 +%patch437 -p0 +%patch438 -p0 +%patch439 -p0 %ifarch %arm %patch38 -p1 %endif -%patch490 -p1 +%patch440 -p0 +%patch441 -p0 +%patch442 -p0 +%patch443 -p0 +%patch444 -p0 +%patch445 -p0 +%patch446 -p0 +%patch447 -p0 +%patch448 -p0 +%patch449 -p0 +%patch450 -p0 +%patch451 -p0 +%patch452 -p0 +%patch453 -p0 +%patch454 -p0 +%patch455 -p0 +%patch456 -p0 +%patch457 -p0 +%patch458 -p0 +%patch459 -p0 +%patch460 -p0 +%patch461 -p0 +%patch462 -p0 +%patch463 -p0 +%patch464 -p0 +%patch465 -p0 +%patch466 -p0 +%patch467 -p0 +%patch468 -p0 +%patch469 -p0 +%patch470 -p0 +%patch471 -p0 +%patch472 -p0 +%patch473 -p0 +%patch474 -p0 +%patch475 -p0 +%patch476 -p0 +%patch477 -p0 +%patch478 -p0 +%patch479 -p0 +%patch480 -p0 +%patch481 -p0 +%patch482 -p0 +%patch483 -p0 +%patch484 -p0 +%patch485 -p0 +%patch486 -p0 +%patch487 -p0 +%patch488 -p0 +%patch489 -p0 +%patch490 -p0 +%patch491 -p0 +%patch492 -p0 +%patch493 -p0 +%patch494 -p0 +%patch495 -p0 +%patch496 -p0 +%patch497 -p0 +%patch498 -p0 +%patch499 -p0 +%patch500 -p0 +%patch501 -p0 +%patch502 -p0 +%patch503 -p0 +%patch504 -p0 +%patch505 -p0 +%patch506 -p0 +%patch507 -p0 +%patch509 -p0 +%patch510 -p0 +%patch511 -p0 +%patch512 -p0 +%patch513 -p1 +%patch514 -p0 +%patch515 -p0 +%patch516 -p0 +%patch517 -p0 +%patch518 -p1 +%patch519 -p1 %patch520 -p1 -%patch521 -p1 -%patch522 -p1 +%patch521 -p0 # udev patches %patch1001 -p1 @@ -625,31 +1947,131 @@ cp %{SOURCE7} m4/ %patch1005 -p1 %patch1006 -p1 %patch1007 -p1 +%if 0%{?suse_version} <= 1310 +%patch1008 -p1 +%endif +%patch1009 -p1 +%patch1010 -p1 %patch1011 -p1 %patch1012 -p1 %patch1013 -p1 +%patch1014 -p1 +%patch1015 -p1 +%patch1016 -p0 +%patch1017 -p0 +%patch1018 -p0 +%patch1019 -p0 +%patch1020 -p0 %patch1021 -p1 +%if %{with udevsettle} +%patch1022 -p1 +%endif +%patch1023 -p0 +%patch1024 -p0 +%if %{with blkrrpart} +%patch1025 -p1 +%endif +%patch1026 -p1 +%if %{with blkrrpart} +%patch1027 -p1 +%endif +%patch1028 -p1 +%if %{with blkrrpart} +%patch1029 -p1 +%patch1030 -p1 +%patch1031 -p1 +%patch1032 -p1 +%patch1033 -p1 +%patch1034 -p1 +%endif %patch1035 -p1 %patch1036 -p1 %if %{with blkrrpart} %patch1037 -p1 %endif +%patch1038 -p0 +%if %{with udevsettle} +%patch1039 -p0 +%endif %patch1040 -p1 +%if %{with udevsettle} +%patch1041 -p0 +%patch1042 -p0 +%patch1043 -p0 +%endif +%patch1044 -p0 +%patch1045 -p0 %patch1046 -p1 +%patch1047 -p0 +%patch1048 -p0 +%patch1049 -p0 %patch1050 -p1 %patch1051 -p1 +%patch1052 -p0 %patch1053 -p1 %if %{with blkrrpart} +%patch1054 -p0 %else %patch1055 -p1 %endif +%patch1056 -p0 +%if %{with udevsettle} +%patch1057 -p0 +%else +%patch1058 -p0 +%endif +%patch1059 -p0 %patch1060 -p1 +%patch1061 -p0 %patch1062 -p1 +%if %{with parentpathid} +%patch1063 -p0 +%endif +%patch1064 -p0 +%patch1065 -p0 %patch1066 -p1 +%patch1067 -p1 +%patch1068 -p0 +%patch1069 -p0 +%patch1070 -p0 +%patch1071 -p0 +%patch1072 -p0 +%patch1073 -p0 +%patch1074 -p0 +%patch1075 -p0 +%if %{with udevsettle} +%patch1076 -p0 +%else +%patch1077 -p0 +%endif +%if 0%{?suse_version} > 1310 +%if %{with udevsettle} +%patch1079 -p1 +%else +%patch1078 -p1 +%endif +%endif +%patch1080 -p0 +%patch1081 -p0 +%patch1082 -p0 +%patch1083 -p0 +%patch1084 -p0 +%patch1085 -p0 +%patch1086 -p0 +%patch1087 -p0 %patch1088 -p1 +%patch1089 -p1 +%if %{with parentpathid} +%patch1090 -p0 +%patch1091 -p0 +%endif +%patch1092 -p0 +%patch1093 -p0 +%patch1094 -p0 %patch1095 -p1 %patch1096 -p1 %patch1097 -p1 +%patch1098 -p0 # remove patch backups find -name '*.orig' -exec rm -f '{}' \+ @@ -669,6 +2091,17 @@ else sed -ri 's@^([[:blank:]]+)(cmdline\[i\+\+\][[:blank:]]+=[[:blank:]]+"-l")(;)@\1/* \2 */\3@' src/fsck/fsck.c fi +%if 0%{?suse_version} <= 1310 +# +# Older versions like oS 13.1 do not distinguish between +# network.target and network-online.target +# +for f in src/core/service.c src/insserv-generator/insserv-generator.c +do + sed -ri '/"network",.*SPECIAL_NETWORK_ONLINE_TARGET,/{ s/SPECIAL_NETWORK_ONLINE_TARGET/SPECIAL_NETWORK_TARGET/}' $f +done +%endif + # # In combination with Patch352 set-and-use-default-logconsole.patch # Ensure that journald log on tty10 @@ -709,11 +2142,11 @@ cflags () esac set +o noclobber } -autoreconf -fi +autoreconf -fiv # prevent pre-generated and distributed files from re-building find . -name "*.[1-8]" -exec touch '{}' '+'; export V=e -export CFLAGS="%{optflags}" +export CFLAGS="%{optflags} $(getconf LFS_CFLAGS)" export LDFLAGS %if 0%{?suse_version} == 1315 CFLAGS="$CFLAGS -DNET_IFNAMES=1" @@ -739,7 +2172,6 @@ cflags -Wl,--hash-size=8599 LDFLAGS --disable-gudev \ --disable-myhostname \ --disable-manpages \ - --disable-machined \ %else --enable-manpages \ %if %{with python} @@ -747,10 +2179,16 @@ cflags -Wl,--hash-size=8599 LDFLAGS %endif --enable-gtk-doc \ --with-nss-my-hostname-warning \ +%endif +%if %{with compat_libs} + --enable-compat-libs \ %endif --enable-selinux \ --enable-split-usr \ --disable-static \ +%if 0%{?suse_version} <= 1310 + --with-firmware-path="%{_prefix}/lib/firmware:/lib/firmware" \ +%endif %if ! 0%{?has_efi} --disable-efi \ %endif @@ -759,15 +2197,11 @@ cflags -Wl,--hash-size=8599 LDFLAGS --with-debug-shell=/bin/bash \ --disable-smack \ --disable-ima \ +%if 0%{?suse_version} > 1310 + --disable-multi-seat-x \ +%endif %if %{without networkd} --disable-networkd \ -%endif -%if %{without sysvcompat} - --with-sysvinit-path= \ - --with-sysvrcnd-path= \ -%endif -%if %{without resolved} - --disable-resolved \ %endif --disable-kdbus make %{?_smp_mflags} @@ -776,9 +2210,19 @@ make %{?_smp_mflags} update-man-list man %endif %install -%if !0%{?bootstrap} -cp man/man[0-9]/*.[0-9] man/ -%endif +# Use refreshed manual pages +for man in man/*.[0-9] +do + section=${man##*.} + test -d man/man${section} || continue + new=man/man${section}/${man##*/} + if test -s $new -a $new -nt $man + then + cp -p $new $man + else + sed -ri 's@"(systemd) 209"@"\1 %{version}"@' $man + fi +done make install DESTDIR="%buildroot" # move to %{_lib} @@ -791,17 +2235,24 @@ ln -sf %{_bindir}/udevadm %{buildroot}/sbin/udevadm ln -sf %{_bindir}/systemd-ask-password %{buildroot}/bin/systemd-ask-password ln -sf %{_bindir}/systemctl %{buildroot}/bin/systemctl ln -sf %{_prefix}/lib/systemd/systemd-udevd %{buildroot}/sbin/udevd - %if ! 0%{?bootstrap} ln -sf systemd-udevd.8 %{buildroot}/%{_mandir}/man8/udevd.8 %endif - +%if 0%{?suse_version} <= 1310 +ln -sf /lib/firmware %{buildroot}/usr/lib/firmware +%endif %if ! 0%{?bootstrap} +install -m755 -D %{S:8} %{buildroot}/etc/init.d/systemd-journald install -D -m 755 %{S:9} %{buildroot}%{_sbindir}/nss-myhostname-config %endif +sed -ie "s|@@PREFIX@@|%{_prefix}/lib/udev|g" %{S:1060} +sed -ie "s|@@SYSTEMD@@|%{_prefix}/lib/systemd|g" %{S:1060} +sed -ie "s|@@BINDIR@@|%{_bindir}|g" %{S:1060} +install -m755 -D %{S:1060} %{buildroot}/etc/init.d/boot.udev ln -s systemd-udevd.service %{buildroot}/%{_prefix}/lib/systemd/system/udev.service install -m755 -D %{S:1063} %{buildroot}/%{_prefix}/lib/udev/udev-generate-persistent-rule +install -m755 -D %{S:1064} %{buildroot}/%{_bindir}/systemd-sleep-grub install -m755 -D %{S:1065} %{buildroot}/%{_prefix}/lib/udev/remount-tmpfs mkdir -p %{buildroot}/%{_prefix}/lib/systemd/system/basic.target.wants rm -rf %{buildroot}%{_sysconfdir}/rpm @@ -819,7 +2270,28 @@ ln -s ../usr/bin/systemctl %{buildroot}/sbin/telinit ln -s ../usr/bin/systemctl %{buildroot}/sbin/runlevel rm -rf %{buildroot}/etc/systemd/system/*.target.wants rm -f %{buildroot}/etc/systemd/system/default.target - +# aliases for /etc/init.d/* +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/cgroup.service +ln -s systemd-tmpfiles-setup.service %{buildroot}/%{_prefix}/lib/systemd/system/cleanup.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/clock.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/crypto.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/crypto-early.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/device-mapper.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/earlysyslog.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/kbd.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/ldconfig.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/loadmodules.service +install -m644 %{S:2} %{buildroot}/%{_prefix}/lib/systemd/system/localfs.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/localnet.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/proc.service +ln -s systemd-fsck-root.service %{buildroot}/%{_prefix}/lib/systemd/system/rootfsck.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/single.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/swap.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/startpreload.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/stoppreload.service +ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/earlyxdm.service +ln -s systemd-sysctl.service %{buildroot}/%{_prefix}/lib/systemd/system/sysctl.service +ln -s systemd-random-seed.service %{buildroot}/%{_prefix}/lib/systemd/system/random.service # don't mount /tmp as tmpfs for now rm %{buildroot}/%{_prefix}/lib/systemd/system/local-fs.target.wants/tmp.mount @@ -892,6 +2364,15 @@ EOF install -m 644 %{S:11} %{buildroot}/%{_prefix}/lib/systemd/system/ ln -s ../after-local.service %{buildroot}/%{_prefix}/lib/systemd/system/multi-user.target.wants/ +%if ! 0%{?bootstrap} +%if %{without python} +for man in systemd.directives.7 systemd.index.7 +do + install -m 0644 man/$man %{buildroot}%{_mandir}/man7/ +done +%endif +%endif + mkdir -p %{buildroot}%{_localstatedir}/lib/systemd/backlight mkdir -p %{buildroot}%{_localstatedir}/lib/systemd/random-seed @@ -908,8 +2389,10 @@ done > files.completion > files.completion %endif +%if 0%{suse_version} >= 1310 # packaged in systemd-rpm-macros rm -f %{buildroot}/%{_prefix}/lib/rpm/macros.d/macros.systemd +%endif %if %{without compat_libs} lib=%{_libdir}/libsystemd.so @@ -921,6 +2404,30 @@ do done %endif +%if 0%{suse_version} <= 1310 +cat > %{buildroot}/%{_prefix}/lib/systemd/system/fix.service <<-'EOF' + [Unit] + Description=Fix against deadlock at shutdown + Wants=remote-fs.target remote-fs-pre.target + Before=remote-fs.target systemd-logind.service + After=remote-fs-pre.target network.target rpcbind.target nss-lookup.target nss-user-lookup.target + ConditionPathExists=|/etc/init.d/autofs + ConditionPathExists=|/etc/init.d/nfs + + [Service] + Type=oneshot + RemainAfterExit=true + ExecStart=/bin/true + ExecStop=-/etc/init.d/autofs stop + ExecStop=-/etc/init.d/nfs stop + + [Install] + WantedBy=remote-fs.target + EOF + mkdir -p %{buildroot}/%{_prefix}/lib/systemd/system/remote-fs.target.wants + ln -sf ../fix.service %{buildroot}/%{_prefix}/lib/systemd/system/remote-fs.target.wants +%endif + # Some files which may created by us or by the admin later on mkdir -p %{buildroot}%{_sysconfdir}/X11/xorg.conf.d for ghost in X11/xorg.conf.d/00-keyboard.conf vconsole.conf locale.conf \ @@ -968,7 +2475,6 @@ fi getent group wheel && setfacl -Rnm g:wheel:rx,d:g:wheel:rx %{_localstatedir}/log/journal/ > /dev/null 2>&1 || : getent group adm && setfacl -Rnm g:adm:rx,d:g:adm:rx %{_localstatedir}/log/journal/ > /dev/null 2>&1 || : %endif -systemd-sysusers || : # Try to read default runlevel from the old inittab if it exists if [ ! -e /etc/systemd/system/default.target -a -e /etc/inittab ]; then @@ -1016,6 +2522,8 @@ fi if [ $1 -eq 0 ]; then /usr/bin/systemctl disable \ getty@.service \ + systemd-readahead-collect.service \ + systemd-readahead-replay.service \ remote-fs.target >/dev/null 2>&1 || : rm -f /etc/systemd/system/default.target 2>&1 || : fi @@ -1045,6 +2553,7 @@ fi %post -n %{udevpkgname} /usr/bin/udevadm hwdb --update >/dev/null 2>&1 || : +%{fillup_and_insserv -Y boot.udev} # add KERNEL name match to existing persistent net rules sed -ri '/KERNEL/ ! { s/NAME="(eth|wlan|ath)([0-9]+)"/KERNEL=="\1*", NAME="\1\2"/}' \ /etc/udev/rules.d/70-persistent-net.rules >/dev/null 2>&1 || : @@ -1143,9 +2652,6 @@ fi %postun -n nss-myhostname -p /sbin/ldconfig -%post -n nss-mymachines -p /sbin/ldconfig -%postun -n nss-mymachines -p /sbin/ldconfig - %pre journal-gateway getent passwd systemd-journal-gateway >/dev/null || useradd -r -l -g systemd-journal-gateway -d %{_localstatedir}/log/journal/ -s /usr/sbin/nologin -c "Journal Gateway" systemd-journal-gateway >/dev/null 2>&1 || : getent group systemd-journal-gateway >/dev/null || groupadd -r systemd-journal-gateway || : @@ -1168,26 +2674,17 @@ exit 0 /bin/systemd /bin/systemd-ask-password /bin/systemctl -%if %{with networkd} -%{_bindir}/networkctl -%endif +%{_bindir}/systemd-sleep-grub %{_bindir}/busctl %{_bindir}/kernel-install %{_bindir}/hostnamectl %{_bindir}/localectl -%if ! 0%{?bootstrap} %{_bindir}/machinectl -%endif %{_bindir}/systemctl %{_bindir}/systemd-analyze -%{_bindir}/coredumpctl +%{_bindir}/systemd-coredumpctl %{_bindir}/systemd-delta -%{_bindir}/systemd-escape -%{_bindir}/systemd-firstboot -%{_bindir}/systemd-path -%{_bindir}/systemd-sysusers %{_bindir}/systemd-notify -%{_bindir}/systemd-hwdb %{_bindir}/systemd-run %{_bindir}/systemd-journalctl %{_bindir}/journalctl @@ -1230,6 +2727,7 @@ exit 0 %exclude %{_prefix}/lib/systemd/system/systemd-journal-gatewayd.* %endif %{_prefix}/lib/systemd/system/*.automount +%{_prefix}/lib/systemd/system/*.busname %{_prefix}/lib/systemd/system/*.service %{_prefix}/lib/systemd/system/*.slice %{_prefix}/lib/systemd/system/*.target @@ -1268,19 +2766,12 @@ exit 0 %{_bindir}/bootctl %{_prefix}/lib/systemd/system-generators/systemd-efi-boot-generator %endif -%{_prefix}/lib/systemd/system-generators/systemd-debug-generator -%{_prefix}/lib/systemd/system-generators/systemd-hibernate-resume-generator -%if %{with sysvcompat} -%{_prefix}/lib/systemd/system-generators/systemd-sysv-generator -%{_prefix}/lib/systemd/system-generators/systemd-rc-local-generator -%{_prefix}/lib/systemd/system-generators/systemd-insserv-generator -%endif %{_prefix}/lib/systemd/system-generators/systemd-getty-generator +%{_prefix}/lib/systemd/system-generators/systemd-rc-local-generator %{_prefix}/lib/systemd/system-generators/systemd-fstab-generator %{_prefix}/lib/systemd/system-generators/systemd-system-update-generator +%{_prefix}/lib/systemd/system-generators/systemd-insserv-generator %{_prefix}/lib/systemd/system-generators/systemd-gpt-auto-generator -%{_prefix}/lib/systemd/system-preset/ -%{_prefix}/lib/sysusers.d/ /%{_lib}/security/pam_systemd.so %config /etc/pam.d/systemd-user @@ -1309,23 +2800,13 @@ exit 0 %dir %{_datadir}/dbus-1/services %dir %{_datadir}/dbus-1/system-services %config(noreplace) %{_sysconfdir}/systemd/bootchart.conf -%config(noreplace) %{_sysconfdir}/systemd/coredump.conf -%if !0%{?bootstrap} -%config(noreplace) %{_sysconfdir}/systemd/journal-remote.conf -%endif -%config(noreplace) %{_sysconfdir}/systemd/timesyncd.conf %config(noreplace) %{_sysconfdir}/systemd/system.conf %config(noreplace) %{_sysconfdir}/systemd/logind.conf %config(noreplace) %{_sysconfdir}/systemd/journald.conf %config(noreplace) %{_sysconfdir}/systemd/user.conf %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.locale1.conf %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.login1.conf -%if !0%{?bootstrap} %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.machine1.conf -%endif -%if %{with networkd} -%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.network1.conf -%endif %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.systemd1.conf %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.hostname1.conf %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.timedate1.conf @@ -1342,24 +2823,15 @@ exit 0 %ghost %config(noreplace) %{_sysconfdir}/systemd/system/runlevel4.target %ghost %config(noreplace) %{_sysconfdir}/systemd/system/runlevel5.target -%{_datadir}/factory/ %{_datadir}/dbus-1/services/org.freedesktop.systemd1.service -%if %{with networkd} -%{_datadir}/dbus-1/system-services/org.freedesktop.network1.service -%endif %{_datadir}/dbus-1/system-services/org.freedesktop.systemd1.service %{_datadir}/dbus-1/system-services/org.freedesktop.locale1.service %{_datadir}/dbus-1/system-services/org.freedesktop.login1.service %{_datadir}/dbus-1/system-services/org.freedesktop.hostname1.service -%if !0%{?bootstrap} %{_datadir}/dbus-1/system-services/org.freedesktop.machine1.service -%endif %{_datadir}/dbus-1/system-services/org.freedesktop.timedate1.service %dir %{_datadir}/polkit-1 %dir %{_datadir}/polkit-1/actions -%if !0%{?bootstrap} -%{_datadir}/polkit-1/actions/org.freedesktop.machine1.policy -%endif %{_datadir}/polkit-1/actions/org.freedesktop.systemd1.policy %{_datadir}/polkit-1/actions/org.freedesktop.hostname1.policy %{_datadir}/polkit-1/actions/org.freedesktop.locale1.policy @@ -1409,11 +2881,8 @@ exit 0 %{_datadir}/zsh/site-functions/* %ghost %{_localstatedir}/lib/systemd/backlight %ghost %{_localstatedir}/lib/systemd/random-seed -%if %{with resolved} -%{_sysconfdir}/dbus-1/system.d/org.freedesktop.resolve1.conf -%{_sysconfdir}/systemd/resolved.conf -%{_libdir}/libnss_resolve.so.2 -%{_datadir}/dbus-1/system-services/org.freedesktop.resolve1.service +%if 0%{?suse_version} > 1310 +%{_datadir}/pkgconfig/systemd.pc %endif %if ! 0%{?bootstrap} @@ -1438,7 +2907,9 @@ exit 0 %{_includedir}/systemd/sd-journal.h %{_includedir}/systemd/sd-messages.h %{_includedir}/systemd/_sd-common.h -%{_libdir}/pkgconfig/systemd.pc +%if 0%{?suse_version} <= 1310 +%{_datadir}/pkgconfig/systemd.pc +%endif %{_libdir}/pkgconfig/libsystemd.pc %{_libdir}/pkgconfig/libsystemd-daemon.pc %{_libdir}/pkgconfig/libsystemd-login.pc @@ -1500,6 +2971,7 @@ exit 0 %{_prefix}/lib/udev/rules.d/*.rules %dir %{_prefix}/lib/udev/hwdb.d %{_prefix}/lib/udev/hwdb.d/* +%{_sysconfdir}/init.d/boot.udev %dir %{_sysconfdir}/udev/ %dir %{_sysconfdir}/udev/rules.d/ %ghost %{_sysconfdir}/udev/hwdb.bin @@ -1530,6 +3002,9 @@ exit 0 %defattr(-,root,root) %{_includedir}/libudev.h %{_libdir}/libudev.so +%if 0%{?suse_version} <= 1310 +%{_datadir}/pkgconfig/udev.pc +%endif %{_libdir}/pkgconfig/libudev.pc %if ! 0%{?bootstrap} %dir %{_datadir}/gtk-doc @@ -1563,9 +3038,8 @@ exit 0 %files logger %defattr(-,root,root) %dir %attr(2755,root,systemd-journal) %{_localstatedir}/log/journal/ -%if %{with sysvcompat} %{_localstatedir}/log/README -%endif +/etc/init.d/systemd-journald %files -n nss-myhostname %defattr(-, root, root) @@ -1578,10 +3052,6 @@ exit 0 %{_prefix}/lib/systemd/systemd-journal-gatewayd %{_mandir}/man8/systemd-journal-gatewayd.* %{_datadir}/systemd/gatewayd - -%files -n nss-mymachines -%defattr(-,root,root) -%_libdir/libnss_mymachines.so* %endif %changelog diff --git a/timedate-add-support-for-openSUSE-version-of-etc-sysconfig.patch b/timedate-add-support-for-openSUSE-version-of-etc-sysconfig.patch new file mode 100644 index 00000000..fb97a2f1 --- /dev/null +++ b/timedate-add-support-for-openSUSE-version-of-etc-sysconfig.patch @@ -0,0 +1,24 @@ +From: Frederic Crozat +Date: Tue, 14 Aug 2012 14:26:16 +0200 +Subject: timedate: add support for openSUSE version of /etc/sysconfig/clock + +--- + src/timedate/timedated.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +--- systemd-206_git201308300826.orig/src/timedate/timedated.c ++++ systemd-206_git201308300826/src/timedate/timedated.c +@@ -182,6 +182,13 @@ static int read_data(void) { + goto have_timezone; + } + } ++#ifdef HAVE_SYSV_COMPAT ++ r = parse_env_file("/etc/sysconfig/clock", NEWLINE, ++ "TIMEZONE", &c->zone, ++ NULL); ++ if (r < 0 && r != -ENOENT) ++ log_warning("Failed to read /etc/sysconfig/clock: %s", strerror(-r)); ++#endif + + have_timezone: + if (isempty(c->zone)) { diff --git a/tmpfiles-do-not-clean-for-mandb-index-files.patch b/tmpfiles-do-not-clean-for-mandb-index-files.patch new file mode 100644 index 00000000..3bfd928f --- /dev/null +++ b/tmpfiles-do-not-clean-for-mandb-index-files.patch @@ -0,0 +1,22 @@ +There is no need to clean out all 30 days the index data base +files nor the cachedir tags of mandb. Those files are used +for whatis(1) as well as for apropos(1). + +--- + systemd-210/tmpfiles.d/systemd.conf | 5 +++++ + 1 file changed, 5 insertions(+) + +--- systemd-210/tmpfiles.d/systemd.conf ++++ systemd-210/tmpfiles.d/systemd.conf 2014-06-11 13:47:59.470236564 +0000 +@@ -14,6 +14,11 @@ f /var/log/wtmp 0664 root utmp - + f /var/log/btmp 0600 root root - + + d /var/cache/man - - - 30d ++# mandb uses data base file which should not be cleared ++x /var/cache/man/index.* ++x /var/cache/man/CACHEDIR.TAG ++x /var/cache/man/*/index.* ++x /var/cache/man/*/CACHEDIR.TAG + + d /run/systemd/ask-password 0755 root root - + d /run/systemd/seats 0755 root root - diff --git a/tty-ask-password-agent-on-console.patch b/tty-ask-password-agent-on-console.patch index ee7e73d8..1091a730 100644 --- a/tty-ask-password-agent-on-console.patch +++ b/tty-ask-password-agent-on-console.patch @@ -1,99 +1,110 @@ --- - src/tty-ask-password-agent/tty-ask-password-agent.c | 171 +++++++++++++++++++- - 1 file changed, 166 insertions(+), 5 deletions(-) + src/tty-ask-password-agent/tty-ask-password-agent.c | 190 +++++++++++++++++++- + 1 file changed, 185 insertions(+), 5 deletions(-) -Index: systemd/src/tty-ask-password-agent/tty-ask-password-agent.c -=================================================================== ---- systemd.orig/src/tty-ask-password-agent/tty-ask-password-agent.c -+++ systemd/src/tty-ask-password-agent/tty-ask-password-agent.c -@@ -31,6 +31,10 @@ - #include - #include - #include +--- systemd-210/src/tty-ask-password-agent/tty-ask-password-agent.c ++++ systemd-210/src/tty-ask-password-agent/tty-ask-password-agent.c 2014-07-30 10:48:43.602052750 +0000 +@@ -28,8 +28,12 @@ + #include + #include + #include +#include + #include +#include +#include + #include +#include + #include #include "util.h" - #include "mkdir.h" -@@ -42,6 +46,9 @@ +@@ -41,6 +45,9 @@ + #include "ask-password-api.h" #include "strv.h" #include "build.h" - #include "def.h" +#include "fileio.h" +#include "macro.h" +#include "list.h" static enum { ACTION_LIST, -@@ -50,6 +57,22 @@ static enum { +@@ -49,6 +56,21 @@ static enum { ACTION_WALL } arg_action = ACTION_QUERY; +struct console { + LIST_FIELDS(struct console, handle); -+ const char *tty; ++ char *tty; + pid_t pid; + int id; -+ char dev[]; +}; + -+static volatile unsigned long *usemask; ++static volatile uint32_t *usemask; +static volatile sig_atomic_t sigchild; +static void chld_handler(int sig) +{ + (void)sig; -+ ++sigchild; ++ sigchild++; +} + static bool arg_plymouth = false; static bool arg_console = false; -@@ -208,6 +231,58 @@ static int ask_password_plymouth( - return 0; +@@ -246,12 +268,77 @@ finish: + return r; } +static const char *current_dev = "/dev/console"; +static LIST_HEAD(struct console, consoles); +static int collect_consoles(void) { + _cleanup_free_ char *active = NULL; -+ const char *word, *state; -+ struct console *con; -+ size_t len; -+ int ret, id = 0; ++ char *w, *state; ++ struct console *c; ++ size_t l; ++ int id; ++ int r; + -+ ret = read_one_line_file("/sys/class/tty/console/active", &active); -+ if (ret < 0) -+ return ret; -+ FOREACH_WORD(word, len, active, state) { ++ r = read_one_line_file("/sys/class/tty/console/active", &active); ++ if (r < 0) ++ return r; ++ ++ id = 0; ++ FOREACH_WORD(w, l, active, state) { + _cleanup_free_ char *tty = NULL; + -+ if (strneq(word, "tty0", len) && -+ read_one_line_file("/sys/class/tty/tty0/active", &tty) >= 0) { -+ word = tty; -+ len = strlen(tty); ++ if (strneq(w, "tty0", l)) { ++ if (read_one_line_file("/sys/class/tty/tty0/active", &tty) >= 0) { ++ w = tty; ++ l = strlen(tty); ++ } + } -+ con = malloc0(sizeof(*con) + strlen("/dev/") + len + 1); -+ if (con == NULL) { ++ ++ c = malloc0(sizeof(struct console)+5+l+1); ++ if (!c) { + log_oom(); + continue; + } -+ sprintf(con->dev, "/dev/%.*s", (int)len, word); -+ con->tty = con->dev; -+ con->id = id++; -+ LIST_PREPEND(handle, consoles, con); ++ ++ c->tty = ((char*)c)+sizeof(struct console); ++ stpncpy(stpcpy(c->tty, "/dev/"),w,l); ++ c->id = id++; ++ ++ LIST_PREPEND(handle, consoles, c); + } -+ if (consoles == NULL) { -+ con = malloc0(sizeof(*con)); -+ if (con == NULL) { ++ ++ if (!consoles) { ++ ++ c = malloc0(sizeof(struct console)); ++ if (!c) { + log_oom(); + return -ENOMEM; + } -+ con->tty = current_dev; -+ con->id = id++; -+ LIST_PREPEND(handle, consoles, con); ++ ++ c->tty = (char *)current_dev; ++ c->id = id++; ++ ++ LIST_PREPEND(handle, consoles, c); + } ++ + return 0; +} + @@ -107,133 +118,168 @@ Index: systemd/src/tty-ask-password-agent/tty-ask-password-agent.c +} + static int parse_password(const char *filename, char **wall) { - _cleanup_free_ char *socket_name = NULL, *message = NULL, *packet = NULL; + char *socket_name = NULL, *message = NULL, *packet = NULL; uint64_t not_after = 0; -@@ -308,7 +383,7 @@ static int parse_password(const char *fi - _cleanup_free_ char *password = NULL; + unsigned pid = 0; + int socket_fd = -1; + bool accept_cached = false; ++ size_t packet_length = 0; - if (arg_console) { -- tty_fd = acquire_terminal("/dev/console", false, false, false, USEC_INFINITY); -+ tty_fd = acquire_terminal(current_dev, false, false, false, USEC_INFINITY); - if (tty_fd < 0) - return tty_fd; + const ConfigTableItem items[] = { + { "Ask", "Socket", config_parse_string, 0, &socket_name }, +@@ -323,7 +410,6 @@ static int parse_password(const char *fi + struct sockaddr sa; + struct sockaddr_un un; + } sa = {}; +- size_t packet_length = 0; + + assert(arg_action == ACTION_QUERY || + arg_action == ACTION_WATCH); +@@ -365,7 +451,7 @@ static int parse_password(const char *fi + char *password = NULL; + + if (arg_console) +- if ((tty_fd = acquire_terminal("/dev/console", false, false, false, (usec_t) -1)) < 0) { ++ if ((tty_fd = acquire_terminal(current_dev, false, false, true, (usec_t) -1)) < 0) { + r = tty_fd; + goto finish; + } +@@ -386,6 +472,7 @@ static int parse_password(const char *fi + strcpy(packet+1, password); + } + ++ memset(password, 0, strlen(password)); + free(password); } -@@ -612,9 +687,85 @@ static int parse_argv(int argc, char *ar - return 1; + } +@@ -423,6 +510,7 @@ finish: + if (socket_fd >= 0) + close_nointr_nofail(socket_fd); + ++ memset(packet, 0, packet_length); + free(packet); + free(socket_name); + free(message); +@@ -726,8 +814,10 @@ static int parse_argv(int argc, char *ar } -+static int zzz(void) -+{ -+ struct console *con; -+ struct sigaction sig = { -+ .sa_handler = chld_handler, -+ .sa_flags = SA_NOCLDSTOP | SA_RESTART, -+ }; -+ struct sigaction oldsig; -+ sigset_t set, oldset; -+ int status = 0, ret; -+ pid_t job; -+ -+ collect_consoles(); -+ if (!consoles->handle_next) { -+ consoles->pid = 0; -+ con = consoles; -+ goto nofork; -+ } -+ -+ assert_se(sigemptyset(&set) == 0); -+ assert_se(sigaddset(&set, SIGHUP) == 0); -+ assert_se(sigaddset(&set, SIGCHLD) == 0); -+ assert_se(sigemptyset(&sig.sa_mask) == 0); -+ assert_se(sigprocmask(SIG_UNBLOCK, &set, &oldset) == 0); -+ assert_se(sigaction(SIGCHLD, &sig, &oldsig) == 0); -+ sig.sa_handler = SIG_DFL; -+ assert_se(sigaction(SIGHUP, &sig, NULL) == 0); -+ -+ LIST_FOREACH(handle, con, consoles) { -+ switch ((con->pid = fork())) { -+ case 0: -+ if (prctl(PR_SET_PDEATHSIG, SIGHUP) < 0) -+ _exit(EXIT_FAILURE); -+ zero(sig); -+ assert_se(sigprocmask(SIG_UNBLOCK, &oldset, NULL) == 0); -+ assert_se(sigaction(SIGCHLD, &oldsig, NULL) == 0); -+ nofork: -+ setsid(); -+ release_terminal(); -+ *usemask |= 1 << con->id; -+ current_dev = con->tty; -+ return con->id; /* child */ -+ case -1: -+ log_error("Failed to query password: %s", strerror(errno)); -+ exit(EXIT_FAILURE); -+ default: -+ break; -+ } -+ } -+ -+ ret = 0; -+ while ((job = wait(&status)) != 0) { -+ if (job < 0) { -+ if (errno != EINTR) -+ break; -+ continue; -+ } -+ LIST_FOREACH(handle, con, consoles) { -+ if (con->pid == job || kill(con->pid, 0) < 0) { -+ *usemask &= ~(1 << con->id); -+ continue; -+ } -+ if (*usemask & (1 << con->id)) -+ continue; -+ kill(con->pid, SIGHUP); -+ usleep(50000); -+ kill(con->pid, SIGKILL); -+ } -+ if (WIFEXITED(status) && ret == 0) -+ ret = WEXITSTATUS(status); -+ } -+ free_consoles(); -+ exit(ret != 0 ? EXIT_FAILURE : EXIT_SUCCESS); /* parent */ -+} -+ int main(int argc, char *argv[]) { -- int r; -+ int r, id = 0; ++ int id = 0; + int r; + LIST_HEAD_INIT(consoles); log_set_target(LOG_TARGET_AUTO); log_parse_environment(); log_open(); -@@ -625,11 +776,19 @@ int main(int argc, char *argv[]) { - if (r <= 0) +@@ -737,11 +827,99 @@ int main(int argc, char *argv[]) { + if ((r = parse_argv(argc, argv)) <= 0) goto finish; -+ usemask = mmap(NULL, sizeof(*usemask), PROT_READ | PROT_WRITE, -+ MAP_ANONYMOUS | MAP_SHARED, -1, 0); -+ assert_se(usemask != NULL); ++ usemask = (uint32_t*) mmap(NULL, sizeof(uint32_t), PROT_READ|PROT_WRITE, ++ MAP_ANONYMOUS|MAP_SHARED, -1, 0); + if (arg_console) { - setsid(); - release_terminal(); +- } + if (!arg_plymouth && arg_action != ACTION_WALL && + arg_action != ACTION_LIST) { -+ id = zzz(); ++ struct console *c; ++ struct sigaction sig = { ++ .sa_handler = chld_handler, ++ .sa_flags = SA_NOCLDSTOP|SA_RESTART, ++ }; ++ struct sigaction oldsig; ++ sigset_t set, oldset; ++ int status = 0; ++ pid_t job; ++ ++ collect_consoles(); ++ ++ if (!consoles->handle_next) { ++ consoles->pid = 0; ++ c = consoles; ++ goto nofork; ++ } + ++ assert_se(sigemptyset(&set) == 0); ++ assert_se(sigaddset(&set, SIGHUP) == 0); ++ assert_se(sigaddset(&set, SIGCHLD) == 0); ++ assert_se(sigemptyset(&sig.sa_mask) == 0); ++ ++ assert_se(sigprocmask(SIG_UNBLOCK, &set, &oldset) == 0); ++ assert_se(sigaction(SIGCHLD, &sig, &oldsig) == 0); ++ sig.sa_handler = SIG_DFL; ++ assert_se(sigaction(SIGHUP, &sig, NULL) == 0); ++ LIST_FOREACH(handle, c, consoles) { ++ ++ switch ((c->pid = fork())) { ++ case 0: ++ if (prctl(PR_SET_PDEATHSIG, SIGHUP) < 0) ++ _exit(EXIT_FAILURE); ++ zero(sig); ++ assert_se(sigprocmask(SIG_UNBLOCK, &oldset, NULL) == 0); ++ assert_se(sigaction(SIGCHLD, &oldsig, NULL) == 0); ++ /* fall through */ ++ nofork: ++ setsid(); ++ release_terminal(); ++ id = c->id; ++ *usemask |= (1<tty; ++ goto forked; /* child */ ++ case -1: ++ log_error("Failed to query password: %s", strerror(errno)); ++ return EXIT_FAILURE; ++ default: ++ break; ++ } ++ } ++ ++ r = 0; ++ while ((job = wait(&status))) { ++ if (job < 0) { ++ if (errno != EINTR) ++ break; ++ continue; ++ } ++ LIST_FOREACH(handle, c, consoles) { ++ if (c->pid == job) { ++ *usemask &= ~(1<id); ++ continue; ++ } ++ if (kill(c->pid, 0) < 0) { ++ *usemask &= ~(1<id); ++ continue; ++ } ++ if (*usemask & (1<id)) ++ continue; ++ kill(c->pid, SIGHUP); ++ usleep(50000); ++ kill(c->pid, SIGKILL); ++ } ++ ++ if (WIFEXITED(status) && !r) ++ r = WEXITSTATUS(status); ++ } ++ free_consoles(); ++ return r != 0 ? EXIT_FAILURE : EXIT_SUCCESS; /* parent */ ++ + } else { + setsid(); + release_terminal(); + } - } -- - if (IN_SET(arg_action, ACTION_WATCH, ACTION_WALL)) ++ } ++forked: + if (arg_action == ACTION_WATCH || + arg_action == ACTION_WALL) r = watch_passwords(); - else -@@ -638,6 +797,8 @@ int main(int argc, char *argv[]) { +@@ -751,6 +929,8 @@ int main(int argc, char *argv[]) { if (r < 0) - log_error_errno(r, "Error: %m"); + log_error("Error: %s", strerror(-r)); + free_consoles(); -+ *usemask &= ~(1 << id); ++ *usemask &= ~(1< #include @@ -39,7 +37,7 @@ Index: systemd-218/src/random-seed/random-seed.c + entropy_fd = open(RANDOM_SEED_DIR "entropy_count", O_RDONLY|O_CLOEXEC|O_NOCTTY, 0600); + if (entropy_fd < 0) { -+ entropy_count = 0; ++ entropy_count = 0; + if (errno != ENOENT) { + log_error("Failed to open " RANDOM_SEED "/entropy_count: %m"); + r = -errno; @@ -57,13 +55,13 @@ Index: systemd-218/src/random-seed/random-seed.c seed_fd = open(RANDOM_SEED, O_RDWR|O_CLOEXEC|O_NOCTTY|O_CREAT, 0600); if (seed_fd < 0) { seed_fd = open(RANDOM_SEED, O_RDONLY|O_CLOEXEC|O_NOCTTY); -@@ -113,12 +133,34 @@ int main(int argc, char *argv[]) { +@@ -113,16 +133,37 @@ int main(int argc, char *argv[]) { } else { lseek(seed_fd, 0, SEEK_SET); -- r = loop_write(random_fd, buf, (size_t) k, false); -- if (r < 0) -- log_error_errno(r, "Failed to write seed to /dev/urandom: %m"); +- k = loop_write(random_fd, buf, (size_t) k, false); +- if (k <= 0) { +- log_error("Failed to write seed to /dev/urandom: %s", r < 0 ? strerror(-r) : "short write"); + if (entropy_count && (size_t) k == buf_size) { + struct rand_pool_info entropy = { + .entropy_count = entropy_count, @@ -79,12 +77,15 @@ Index: systemd-218/src/random-seed/random-seed.c + k = loop_write(random_fd, buf, (size_t) k, false); + if (k <= 0) { + log_error("Failed to write seed to /dev/urandom: %s", r < 0 ? strerror(-r) : "short write"); + +- r = k == 0 ? -EIO : (int) k; + r = k == 0 ? -EIO : (int) k; + } -+ } + } } } else if (streq(argv[1], "save")) { + + /* Read available entropy count, if possible */ + f = fopen("/proc/sys/kernel/random/entropy_avail", "re"); + if (f) { @@ -92,10 +93,11 @@ Index: systemd-218/src/random-seed/random-seed.c + entropy_count = 0; + fclose(f); + } - ++ seed_fd = open(RANDOM_SEED, O_WRONLY|O_CLOEXEC|O_NOCTTY|O_CREAT, 0600); if (seed_fd < 0) { -@@ -134,6 +176,21 @@ int main(int argc, char *argv[]) { + log_error("Failed to open " RANDOM_SEED ": %m"); +@@ -137,6 +178,21 @@ int main(int argc, char *argv[]) { goto finish; } diff --git a/use-usr-sbin-sulogin-for-emergency-service.patch b/use-usr-sbin-sulogin-for-emergency-service.patch new file mode 100644 index 00000000..e29f4b28 --- /dev/null +++ b/use-usr-sbin-sulogin-for-emergency-service.patch @@ -0,0 +1,44 @@ +From: Andrey Borzenkov +Subject: use /usr/sbin/sulogin in emergency service + +In current Factory sulogin is in /usr/sbin which makes it impossible +to enter emergency service. +Index: systemd-207/units/emergency.service.in +=================================================================== +--- systemd-207.orig/units/emergency.service.in ++++ systemd-207/units/emergency.service.in +@@ -17,7 +17,7 @@ Environment=HOME=/root + WorkingDirectory=/root + ExecStartPre=-/bin/plymouth quit + ExecStartPre=-/bin/echo -e 'Welcome to emergency mode! After logging in, type "journalctl -xb" to view\\nsystem logs, "systemctl reboot" to reboot, "systemctl default" to try again\\nto boot into default mode.' +-ExecStart=-/sbin/sulogin ++ExecStart=-/usr/sbin/sulogin + ExecStopPost=@SYSTEMCTL@ --fail --no-block default + Type=idle + StandardInput=tty-force +Index: systemd-207/units/console-shell.service.m4.in +=================================================================== +--- systemd-207.orig/units/console-shell.service.m4.in ++++ systemd-207/units/console-shell.service.m4.in +@@ -17,7 +17,7 @@ Before=getty.target + [Service] + Environment=HOME=/root + WorkingDirectory=/root +-ExecStart=-/sbin/sulogin ++ExecStart=-/usr/sbin/sulogin + ExecStopPost=-@SYSTEMCTL@ poweroff + Type=idle + StandardInput=tty-force +Index: systemd-207/units/rescue.service.m4.in +=================================================================== +--- systemd-207.orig/units/rescue.service.m4.in ++++ systemd-207/units/rescue.service.m4.in +@@ -18,7 +18,7 @@ Environment=HOME=/root + WorkingDirectory=/root + ExecStartPre=-/bin/plymouth quit + ExecStartPre=-/bin/echo -e 'Welcome to rescue mode! Type "systemctl default" or ^D to enter default mode.\\nType "journalctl -xb" to view system logs. Type "systemctl reboot" to reboot.' +-ExecStart=-/sbin/sulogin ++ExecStart=-/usr/sbin/sulogin + ExecStopPost=-@SYSTEMCTL@ --fail --no-block default + Type=idle + StandardInput=tty-force diff --git a/vhangup-on-all-consoles.patch b/vhangup-on-all-consoles.patch index 3273aba6..b318b124 100644 --- a/vhangup-on-all-consoles.patch +++ b/vhangup-on-all-consoles.patch @@ -2,22 +2,12 @@ Related to bnc#886599 and others. That is use the vhangup(8) tool to explicit do a virtually hangup on the specified on the terminal line to give e.g. the bash a few seconds to e.g. safe its history. -[crrodriguez@opensuse.org: Feb 2015 -This a known kernel bug, no notification from the cgroup subsystem -arrives and the processes in the "scope" units have -to be SIGKILL'ed without delay in order not to hang shutdown -Status: fix not available as of Feb 16 2015 -track progress: https://bugzilla.redhat.com/show_bug.cgi?id=1141137 -] - --- units/getty@.service.m4 | 1 + units/serial-getty@.service.m4 | 1 + 2 files changed, 2 insertions(+) -Index: systemd-218/units/getty@.service.m4 -=================================================================== ---- systemd-218.orig/units/getty@.service.m4 -+++ systemd-218/units/getty@.service.m4 +--- units/getty@.service.m4 ++++ units/getty@.service.m4 2014-07-15 07:30:28.006235859 +0000 @@ -29,6 +29,7 @@ ConditionPathExists=/dev/tty0 [Service] # the VT is cleared by TTYVTDisallocate @@ -26,15 +16,13 @@ Index: systemd-218/units/getty@.service.m4 Type=idle Restart=always RestartSec=0 -Index: systemd-218/units/serial-getty@.service.m4 -=================================================================== ---- systemd-218.orig/units/serial-getty@.service.m4 -+++ systemd-218/units/serial-getty@.service.m4 +--- units/serial-getty@.service.m4 ++++ units/serial-getty@.service.m4 2014-07-15 07:30:01.366235017 +0000 @@ -24,6 +24,7 @@ IgnoreOnIsolate=yes [Service] - ExecStart=-/sbin/agetty --keep-baud 115200,38400,9600 %I $TERM + ExecStart=-/sbin/agetty --keep-baud %I 115200,38400,9600 $TERM +ExecStopPost=-/sbin/vhangup /dev/%I Type=idle Restart=always - UtmpIdentifier=%I + RestartSec=0 diff --git a/watch_resolv.conf_for_become_changed.patch b/watch_resolv.conf_for_become_changed.patch index 8aec94ac..41a2b6dc 100644 --- a/watch_resolv.conf_for_become_changed.patch +++ b/watch_resolv.conf_for_become_changed.patch @@ -1,12 +1,10 @@ --- - src/core/manager.c | 93 +++++++++++++++++++++++++++++++++++++++++++++++++++++ + src/core/manager.c | 103 +++++++++++++++++++++++++++++++++++++++++++++++++++++ src/core/manager.h | 5 ++ - 2 files changed, 98 insertions(+) + 2 files changed, 108 insertions(+) -Index: systemd-218/src/core/manager.c -=================================================================== ---- systemd-218.orig/src/core/manager.c -+++ systemd-218/src/core/manager.c +--- src/core/manager.c ++++ src/core/manager.c 2014-11-07 11:12:58.334193988 +0000 @@ -37,6 +37,7 @@ #include #include @@ -15,7 +13,7 @@ Index: systemd-218/src/core/manager.c #ifdef HAVE_AUDIT #include -@@ -302,6 +303,91 @@ static int manager_check_ask_password(Ma +@@ -304,6 +305,101 @@ static int manager_check_ask_password(Ma return m->have_ask_password; } @@ -37,8 +35,13 @@ Index: systemd-218/src/core/manager.c + flush_fd(fd); + + m->resolv_conf_event_source = sd_event_source_unref(m->resolv_conf_event_source); -+ m->resolv_conf_inotify_fd = safe_close(m->resolv_conf_inotify_fd); ++ ++ if (m->resolv_conf_inotify_fd >= 0) ++ close_nointr_nofail(m->resolv_conf_inotify_fd); ++ m->resolv_conf_inotify_fd = -1; ++ + manager_setup_resolv_conf_change(m); ++ + return m->resolv_conf_noent ? 0 : res_init(); +} + @@ -93,7 +96,10 @@ Index: systemd-218/src/core/manager.c + + return 0; +fail: -+ m->resolv_conf_inotify_fd = safe_close(m->resolv_conf_inotify_fd); ++ if (m->resolv_conf_inotify_fd >= 0) ++ close_nointr_nofail(m->resolv_conf_inotify_fd); ++ m->resolv_conf_inotify_fd = -1; ++ + return 0; /* Ignore error here */ +} + @@ -101,21 +107,23 @@ Index: systemd-218/src/core/manager.c + assert(m); + + m->resolv_conf_event_source = sd_event_source_unref(m->resolv_conf_event_source); -+ m->resolv_conf_inotify_fd = safe_close(m->resolv_conf_inotify_fd); ++ if (m->resolv_conf_inotify_fd >= 0) ++ close_nointr_nofail(m->resolv_conf_inotify_fd); ++ m->resolv_conf_inotify_fd = -1; +} + static int manager_watch_idle_pipe(Manager *m) { int r; -@@ -557,6 +643,7 @@ int manager_new(SystemdRunningAs running - m->pin_cgroupfs_fd = m->notify_fd = m->signal_fd = m->time_change_fd = m->dev_autofs_fd = m->private_listen_fd = m->kdbus_fd = m->utab_inotify_fd = -1; +@@ -562,6 +658,7 @@ int manager_new(SystemdRunningAs running + m->pin_cgroupfs_fd = m->notify_fd = m->signal_fd = m->time_change_fd = m->dev_autofs_fd = m->private_listen_fd = m->kdbus_fd = -1; m->current_job_id = 1; /* start as id #1, so that we can leave #0 around as "null-like" value */ + m->resolv_conf_inotify_fd = -1; m->ask_password_inotify_fd = -1; m->have_ask_password = -EINVAL; /* we don't know */ -@@ -618,6 +705,10 @@ int manager_new(SystemdRunningAs running +@@ -613,6 +710,10 @@ int manager_new(SystemdRunningAs running if (r < 0) goto fail; @@ -126,22 +134,20 @@ Index: systemd-218/src/core/manager.c m->udev = udev_new(); if (!m->udev) { r = -ENOMEM; -@@ -896,6 +987,8 @@ Manager* manager_free(Manager *m) { - if (!m) - return NULL; +@@ -906,6 +1007,8 @@ void manager_free(Manager *m) { + + assert(m); + manager_shutdown_resolv_conf_change(m); + manager_clear_jobs_and_units(m); for (c = 0; c < _UNIT_TYPE_MAX; c++) -Index: systemd-218/src/core/manager.h -=================================================================== ---- systemd-218.orig/src/core/manager.h -+++ systemd-218/src/core/manager.h -@@ -185,6 +185,11 @@ struct Manager { - int utab_inotify_fd; - sd_event_source *mount_utab_event_source; +--- src/core/manager.h ++++ src/core/manager.h 2014-11-07 11:06:41.466019636 +0000 +@@ -157,6 +157,11 @@ struct Manager { + FILE *proc_self_mountinfo; + sd_event_source *mount_event_source; + /* Watch out any change of /etc/resolv.conf */ + int resolv_conf_inotify_fd;