CVS commit: src/sys/rump/dev/lib/libpci
Module Name:src Committed By: pooka Date: Mon Jan 18 14:37:54 UTC 2016 Modified Files: src/sys/rump/dev/lib/libpci: rumpdev_bus_space.c Log Message: Implement the inverse of a nop. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 src/sys/rump/dev/lib/libpci/rumpdev_bus_space.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/rump/dev/lib/libpci/rumpdev_bus_space.c diff -u src/sys/rump/dev/lib/libpci/rumpdev_bus_space.c:1.6 src/sys/rump/dev/lib/libpci/rumpdev_bus_space.c:1.7 --- src/sys/rump/dev/lib/libpci/rumpdev_bus_space.c:1.6 Tue Aug 11 22:28:34 2015 +++ src/sys/rump/dev/lib/libpci/rumpdev_bus_space.c Mon Jan 18 14:37:53 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: rumpdev_bus_space.c,v 1.6 2015/08/11 22:28:34 pooka Exp $ */ +/* $NetBSD: rumpdev_bus_space.c,v 1.7 2016/01/18 14:37:53 pooka Exp $ */ /*- * Copyright (c) 2013 Antti Kantee. All Rights Reserved. @@ -272,6 +272,9 @@ bus_space_unmap(bus_space_tag_t bst, bus bus_size_t size) { + if (bst == 0) + return; + panic("%s: unimplemented", __func__); }
CVS commit: src/share/man/man4
Module Name:src Committed By: wiz Date: Mon Jan 18 09:18:00 UTC 2016 Modified Files: src/share/man/man4: full.4 Log Message: Use standard markup for ENOSPC. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/share/man/man4/full.4 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/share/man/man4/full.4 diff -u src/share/man/man4/full.4:1.1 src/share/man/man4/full.4:1.2 --- src/share/man/man4/full.4:1.1 Mon Jan 18 00:21:44 2016 +++ src/share/man/man4/full.4 Mon Jan 18 09:17:59 2016 @@ -1,4 +1,4 @@ -.\" $NetBSD: full.4,v 1.1 2016/01/18 00:21:44 kamil Exp $ +.\" $NetBSD: full.4,v 1.2 2016/01/18 09:17:59 wiz Exp $ .\" .\" Copyright (c) 2016 The NetBSD Foundation, Inc. .\" All rights reserved. @@ -37,7 +37,7 @@ The .Nm device always return -.Vt ENOSPC +.Bq Er ENOSPC on writing, .Pp In all other cases it behaves like the
CVS commit: src/sys
Module Name:src Committed By: pooka Date: Mon Jan 18 16:46:08 UTC 2016 Modified Files: src/sys/rump/librump/rumpkern: rump.c rump_private.h src/sys/sys: module.h sysctl.h Log Message: Fix dlopen()/dlclose()+RUMP_USE_CTOR to not leave dangling pointers around. To generate a diff of this commit: cvs rdiff -u -r1.325 -r1.326 src/sys/rump/librump/rumpkern/rump.c cvs rdiff -u -r1.92 -r1.93 src/sys/rump/librump/rumpkern/rump_private.h cvs rdiff -u -r1.39 -r1.40 src/sys/sys/module.h cvs rdiff -u -r1.217 -r1.218 src/sys/sys/sysctl.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/rump/librump/rumpkern/rump.c diff -u src/sys/rump/librump/rumpkern/rump.c:1.325 src/sys/rump/librump/rumpkern/rump.c:1.326 --- src/sys/rump/librump/rumpkern/rump.c:1.325 Mon Aug 31 07:38:48 2015 +++ src/sys/rump/librump/rumpkern/rump.c Mon Jan 18 16:46:08 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: rump.c,v 1.325 2015/08/31 07:38:48 ozaki-r Exp $ */ +/* $NetBSD: rump.c,v 1.326 2016/01/18 16:46:08 pooka Exp $ */ /* * Copyright (c) 2007-2011 Antti Kantee. All Rights Reserved. @@ -26,7 +26,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: rump.c,v 1.325 2015/08/31 07:38:48 ozaki-r Exp $"); +__KERNEL_RCSID(0, "$NetBSD: rump.c,v 1.326 2016/01/18 16:46:08 pooka Exp $"); #include #define ELFSIZE ARCH_ELFSIZE @@ -314,7 +314,8 @@ rump_init(void) { struct sysctl_setup_chain *ssc; - LIST_FOREACH(ssc, _boot_chain, ssc_entries) { + while ((ssc = LIST_FIRST(_boot_chain)) != NULL) { + LIST_REMOVE(ssc, ssc_entries); ssc->ssc_func(NULL); } } @@ -544,6 +545,10 @@ rump_component_load(const struct rump_co { struct rump_component *rc, *rc_iter; + /* time for rump component loading and unloading has passed */ + if (!cold) + return; + /* * XXX: this is ok since the "const" was removed from the * definition of RUMP_COMPONENT(). @@ -565,6 +570,20 @@ rump_component_load(const struct rump_co compcounter[rc->rc_type]++; } +void +rump_component_unload(struct rump_component *rc) +{ + + /* + * Checking for cold is enough because rump_init() both + * flips it and handles component loading. + */ + if (!cold) + return; + + LIST_REMOVE(rc, rc_entries); +} + int rump_component_count(enum rump_component_type type) { Index: src/sys/rump/librump/rumpkern/rump_private.h diff -u src/sys/rump/librump/rumpkern/rump_private.h:1.92 src/sys/rump/librump/rumpkern/rump_private.h:1.93 --- src/sys/rump/librump/rumpkern/rump_private.h:1.92 Wed Apr 22 17:38:33 2015 +++ src/sys/rump/librump/rumpkern/rump_private.h Mon Jan 18 16:46:08 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: rump_private.h,v 1.92 2015/04/22 17:38:33 pooka Exp $ */ +/* $NetBSD: rump_private.h,v 1.93 2016/01/18 16:46:08 pooka Exp $ */ /* * Copyright (c) 2007-2011 Antti Kantee. All Rights Reserved. @@ -90,6 +90,11 @@ static void rumpcomp_ctor##type(void) __ static void rumpcomp_ctor##type(void) \ { \ rump_component_load(##type);\ +} \ +static void rumpcomp_dtor##type(void) __attribute__((destructor)); \ +static void rumpcomp_dtor##type(void) \ +{ \ + rump_component_unload(##type);\ } #else /* RUMP_USE_CTOR */ @@ -130,6 +135,7 @@ struct rump_spctl { #define RUMP_SPVM2CTL(vm) (((struct rump_spctl *)vm)->spctl) void rump_component_load(const struct rump_component *); +void rump_component_unload(struct rump_component *); void rump_component_init(enum rump_component_type); int rump_component_count(enum rump_component_type); Index: src/sys/sys/module.h diff -u src/sys/sys/module.h:1.39 src/sys/sys/module.h:1.40 --- src/sys/sys/module.h:1.39 Wed Nov 4 04:28:58 2015 +++ src/sys/sys/module.h Mon Jan 18 16:46:08 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: module.h,v 1.39 2015/11/04 04:28:58 pgoyette Exp $ */ +/* $NetBSD: module.h,v 1.40 2016/01/18 16:46:08 pooka Exp $ */ /*- * Copyright (c) 2008 The NetBSD Foundation, Inc. @@ -65,6 +65,7 @@ typedef enum modcmd { #ifdef _KERNEL +#include #include #include @@ -105,6 +106,12 @@ typedef struct module { * Alternatively, in some environments rump kernels use * __attribute__((constructor)) due to link sets being * difficult (impossible?) to implement (e.g. GNU gold, OS X, etc.) + * If we're cold (read: rump_init() has not been called), we lob the + * module onto the list to be handled when rump_init() runs. + * nb. it's not possible to use in-kernel locking mechanisms here since + * the code runs before rump_init(). We solve the problem by decreeing + * that thou shalt not call dlopen()/dlclose() for rump kernel components + * from multiple threads before calling rump_init(). */ #ifdef RUMP_USE_CTOR @@ -114,14 +121,26 @@ struct modinfo_chain { }; LIST_HEAD(modinfo_boot_chain, modinfo_chain); #define _MODULE_REGISTER(name) \ +static struct modinfo_chain __CONCAT(mc,name) = { \ + .mc_info = &__CONCAT(name,_modinfo),\ +};
CVS commit: src/sys/rump/librump/rumpkern
Module Name:src Committed By: pooka Date: Mon Jan 18 15:53:38 UTC 2016 Modified Files: src/sys/rump/librump/rumpkern: emul.c Log Message: boottime is a timespec, not timeval To generate a diff of this commit: cvs rdiff -u -r1.174 -r1.175 src/sys/rump/librump/rumpkern/emul.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/rump/librump/rumpkern/emul.c diff -u src/sys/rump/librump/rumpkern/emul.c:1.174 src/sys/rump/librump/rumpkern/emul.c:1.175 --- src/sys/rump/librump/rumpkern/emul.c:1.174 Tue Dec 29 10:22:05 2015 +++ src/sys/rump/librump/rumpkern/emul.c Mon Jan 18 15:53:38 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: emul.c,v 1.174 2015/12/29 10:22:05 pgoyette Exp $ */ +/* $NetBSD: emul.c,v 1.175 2016/01/18 15:53:38 pooka Exp $ */ /* * Copyright (c) 2007-2011 Antti Kantee. All Rights Reserved. @@ -26,7 +26,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: emul.c,v 1.174 2015/12/29 10:22:05 pgoyette Exp $"); +__KERNEL_RCSID(0, "$NetBSD: emul.c,v 1.175 2016/01/18 15:53:38 pooka Exp $"); #include #include @@ -36,6 +36,7 @@ __KERNEL_RCSID(0, "$NetBSD: emul.c,v 1.1 #include #include #include +#include #include #include #include @@ -86,7 +87,7 @@ dev_t rootdev = NODEV; const int schedppq = 1; bool mp_online = false; -struct timeval boottime; +struct timespec boottime; int cold = 1; int boothowto = AB_SILENT; struct tty *constty;
CVS commit: src/sys/rump/librump/rumpkern
Module Name:src Committed By: pooka Date: Mon Jan 18 23:27:20 UTC 2016 Modified Files: src/sys/rump/librump/rumpkern: emul.c lwproc.c Log Message: put lwp/proc stuff into the same source module (emul.c -> lwproc.c) To generate a diff of this commit: cvs rdiff -u -r1.176 -r1.177 src/sys/rump/librump/rumpkern/emul.c cvs rdiff -u -r1.35 -r1.36 src/sys/rump/librump/rumpkern/lwproc.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/rump/librump/rumpkern/emul.c diff -u src/sys/rump/librump/rumpkern/emul.c:1.176 src/sys/rump/librump/rumpkern/emul.c:1.177 --- src/sys/rump/librump/rumpkern/emul.c:1.176 Mon Jan 18 23:21:28 2016 +++ src/sys/rump/librump/rumpkern/emul.c Mon Jan 18 23:27:20 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: emul.c,v 1.176 2016/01/18 23:21:28 pooka Exp $ */ +/* $NetBSD: emul.c,v 1.177 2016/01/18 23:27:20 pooka Exp $ */ /* * Copyright (c) 2007-2011 Antti Kantee. All Rights Reserved. @@ -26,7 +26,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: emul.c,v 1.176 2016/01/18 23:21:28 pooka Exp $"); +__KERNEL_RCSID(0, "$NetBSD: emul.c,v 1.177 2016/01/18 23:27:20 pooka Exp $"); #include #include @@ -55,11 +55,6 @@ int physmem = PHYSMEM; int nkmempages = PHYSMEM/2; /* from le chapeau */ #undef PHYSMEM -struct lwp lwp0 = { - .l_lid = 1, - .l_proc = , - .l_fd = , -}; struct vnode *rootvp; dev_t rootdev = NODEV; @@ -90,8 +85,6 @@ int booted_partition; kmutex_t tty_lock; krwlock_t exec_lock; -struct lwplist alllwp = LIST_HEAD_INITIALIZER(alllwp); - /* sparc doesn't sport constant page size, pretend we have 4k pages */ #ifdef __sparc__ int nbpg = 4096; @@ -130,8 +123,6 @@ struct emul emul_netbsd = { .e_sc_autoload = netbsd_syscalls_autoload, }; -u_int nprocs = 1; - cprng_strong_t *kern_cprng; /* not used, but need the symbols for pointer comparisons */ @@ -158,34 +149,6 @@ kpause(const char *wmesg, bool intr, int return 0; } -void -lwp_unsleep(lwp_t *l, bool cleanup) -{ - - KASSERT(mutex_owned(l->l_mutex)); - - (*l->l_syncobj->sobj_unsleep)(l, cleanup); -} - -void -lwp_update_creds(struct lwp *l) -{ - struct proc *p; - kauth_cred_t oldcred; - - p = l->l_proc; - oldcred = l->l_cred; - l->l_prflag &= ~LPR_CRMOD; - - mutex_enter(p->p_lock); - kauth_cred_hold(p->p_cred); - l->l_cred = p->p_cred; - mutex_exit(p->p_lock); - - if (oldcred != NULL) - kauth_cred_free(oldcred); -} - vaddr_t calc_cache_size(vsize_t vasz, int pct, int va_pct) { Index: src/sys/rump/librump/rumpkern/lwproc.c diff -u src/sys/rump/librump/rumpkern/lwproc.c:1.35 src/sys/rump/librump/rumpkern/lwproc.c:1.36 --- src/sys/rump/librump/rumpkern/lwproc.c:1.35 Sat Apr 18 15:49:18 2015 +++ src/sys/rump/librump/rumpkern/lwproc.c Mon Jan 18 23:27:20 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: lwproc.c,v 1.35 2015/04/18 15:49:18 pooka Exp $ */ +/* $NetBSD: lwproc.c,v 1.36 2016/01/18 23:27:20 pooka Exp $ */ /* * Copyright (c) 2010, 2011 Antti Kantee. All Rights Reserved. @@ -28,7 +28,7 @@ #define RUMP__CURLWP_PRIVATE #include -__KERNEL_RCSID(0, "$NetBSD: lwproc.c,v 1.35 2015/04/18 15:49:18 pooka Exp $"); +__KERNEL_RCSID(0, "$NetBSD: lwproc.c,v 1.36 2016/01/18 23:27:20 pooka Exp $"); #include #include @@ -47,9 +47,46 @@ __KERNEL_RCSID(0, "$NetBSD: lwproc.c,v 1 #include "rump_private.h" #include "rump_curlwp.h" +struct lwp lwp0 = { + .l_lid = 1, + .l_proc = , + .l_fd = , +}; +struct lwplist alllwp = LIST_HEAD_INITIALIZER(alllwp); + +u_int nprocs = 1; + struct emul *emul_default = _netbsd; void +lwp_unsleep(lwp_t *l, bool cleanup) +{ + + KASSERT(mutex_owned(l->l_mutex)); + + (*l->l_syncobj->sobj_unsleep)(l, cleanup); +} + +void +lwp_update_creds(struct lwp *l) +{ + struct proc *p; + kauth_cred_t oldcred; + + p = l->l_proc; + oldcred = l->l_cred; + l->l_prflag &= ~LPR_CRMOD; + + mutex_enter(p->p_lock); + kauth_cred_hold(p->p_cred); + l->l_cred = p->p_cred; + mutex_exit(p->p_lock); + + if (oldcred != NULL) + kauth_cred_free(oldcred); +} + +void rump_lwproc_init(void) {
CVS commit: src/sys/sys
Module Name:src Committed By: pooka Date: Mon Jan 18 23:27:49 UTC 2016 Modified Files: src/sys/sys: sysctl.h Log Message: Include only if it's needed. (fix build failure) To generate a diff of this commit: cvs rdiff -u -r1.218 -r1.219 src/sys/sys/sysctl.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/sys/sysctl.h diff -u src/sys/sys/sysctl.h:1.218 src/sys/sys/sysctl.h:1.219 --- src/sys/sys/sysctl.h:1.218 Mon Jan 18 16:46:08 2016 +++ src/sys/sys/sysctl.h Mon Jan 18 23:27:49 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: sysctl.h,v 1.218 2016/01/18 16:46:08 pooka Exp $ */ +/* $NetBSD: sysctl.h,v 1.219 2016/01/18 23:27:49 pooka Exp $ */ /* * Copyright (c) 1989, 1993 @@ -50,8 +50,6 @@ #include #include #include - -#include #endif @@ -1150,6 +1148,8 @@ extern struct ctldebug debug15, debug16, oname, l, node #ifdef RUMP_USE_CTOR +#include + struct sysctl_setup_chain { void (*ssc_func)(struct sysctllog **); LIST_ENTRY(sysctl_setup_chain) ssc_entries;
CVS commit: src/sys/rump/librump/rumpkern
Module Name:src Committed By: pooka Date: Mon Jan 18 23:21:28 UTC 2016 Modified Files: src/sys/rump/librump/rumpkern: emul.c Log Message: massively reduce header pollution from times prehistoric To generate a diff of this commit: cvs rdiff -u -r1.175 -r1.176 src/sys/rump/librump/rumpkern/emul.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/rump/librump/rumpkern/emul.c diff -u src/sys/rump/librump/rumpkern/emul.c:1.175 src/sys/rump/librump/rumpkern/emul.c:1.176 --- src/sys/rump/librump/rumpkern/emul.c:1.175 Mon Jan 18 15:53:38 2016 +++ src/sys/rump/librump/rumpkern/emul.c Mon Jan 18 23:21:28 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: emul.c,v 1.175 2016/01/18 15:53:38 pooka Exp $ */ +/* $NetBSD: emul.c,v 1.176 2016/01/18 23:21:28 pooka Exp $ */ /* * Copyright (c) 2007-2011 Antti Kantee. All Rights Reserved. @@ -26,42 +26,20 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: emul.c,v 1.175 2016/01/18 15:53:38 pooka Exp $"); +__KERNEL_RCSID(0, "$NetBSD: emul.c,v 1.176 2016/01/18 23:21:28 pooka Exp $"); #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include #include -#include -#include -#include -#include -#include +#include #include -#include #include #include -#include -#include -#include -#include #include #include -#include - #include "rump_private.h" void (*rump_vfs_fini)(void) = (void *)nullop;
CVS commit: src/sys/dev/usb
Module Name:src Committed By: msaitoh Date: Tue Jan 19 03:24:58 UTC 2016 Modified Files: src/sys/dev/usb: usbdevs Log Message: Add some DisplayLink devices. 0x0117 and 0x0377 are from FreeBSD. 0x0335 is from Swift Griggs. To generate a diff of this commit: cvs rdiff -u -r1.707 -r1.708 src/sys/dev/usb/usbdevs Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/usb/usbdevs diff -u src/sys/dev/usb/usbdevs:1.707 src/sys/dev/usb/usbdevs:1.708 --- src/sys/dev/usb/usbdevs:1.707 Thu Dec 10 14:30:56 2015 +++ src/sys/dev/usb/usbdevs Tue Jan 19 03:24:58 2016 @@ -1,4 +1,4 @@ -$NetBSD: usbdevs,v 1.707 2015/12/10 14:30:56 leot Exp $ +$NetBSD: usbdevs,v 1.708 2016/01/19 03:24:58 msaitoh Exp $ /* * Copyright (c) 1998-2004 The NetBSD Foundation, Inc. @@ -1315,6 +1315,7 @@ product DISPLAYLINK GUC2020 0x0059 IOGEA product DISPLAYLINK LD220 0x0100 Samsung LD220 product DISPLAYLINK LD190 0x0102 Samsung LD190 product DISPLAYLINK U70 0x0103 Samsung U70 +product DISPLAYLINK POLARIS2 0x0117 Polaris2 USB dock product DISPLAYLINK VCUD60 0x0136 Rextron DVI product DISPLAYLINK CONV 0x0138 StarTech CONV-USB2DVI product DISPLAYLINK DLDVI 0x0141 DisplayLink DVI @@ -1336,6 +1337,8 @@ product DISPLAYLINK SWDVI 0x024c SUNWEIT product DISPLAYLINK LUM70 0x02a9 Lilliput UM-70 product DISPLAYLINK LCD8000UD_DVI 0x02b8 LCD-8000UD-DVI product DISPLAYLINK LDEWX015U 0x02e3 Logitec LDE-WX015U +product DISPLAYLINK MIMO 0x0335 DisplayLink MIMO +product DISPLAYLINK PLUGABLE 0x0377 Plugable docking station product DISPLAYLINK LT1421WIDE 0x03e0 Lenovo ThinkVision LT1421 Wide product DISPLAYLINK SD_U2VDH 0x046d AREA SD-U2VDH product DISPLAYLINK UM7X0 0x401a nanovision MiMo
CVS commit: src/sys/dev/usb
Module Name:src Committed By: msaitoh Date: Tue Jan 19 03:44:41 UTC 2016 Modified Files: src/sys/dev/usb: udl.c Log Message: Add three devices: - Polaris2 USB dock and Plugable docking station from FreeBSD. - DisplayLink MIMO from Swift Griggs. To generate a diff of this commit: cvs rdiff -u -r1.12 -r1.13 src/sys/dev/usb/udl.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/usb/udl.c diff -u src/sys/dev/usb/udl.c:1.12 src/sys/dev/usb/udl.c:1.13 --- src/sys/dev/usb/udl.c:1.12 Fri Dec 12 05:19:33 2014 +++ src/sys/dev/usb/udl.c Tue Jan 19 03:44:41 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: udl.c,v 1.12 2014/12/12 05:19:33 msaitoh Exp $ */ +/* $NetBSD: udl.c,v 1.13 2016/01/19 03:44:41 msaitoh Exp $ */ /*- * Copyright (c) 2009 FUKAUMI Naoki. @@ -53,7 +53,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: udl.c,v 1.12 2014/12/12 05:19:33 msaitoh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: udl.c,v 1.13 2016/01/19 03:44:41 msaitoh Exp $"); #include #include @@ -304,6 +304,7 @@ static const struct usb_devno udl_devs[] { USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_LD220 }, { USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_LD190 }, { USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_U70 }, + { USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_POLARIS2 }, { USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_VCUD60 }, { USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_CONV }, { USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_DLDVI }, @@ -325,6 +326,8 @@ static const struct usb_devno udl_devs[] { USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_LUM70 }, { USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_LCD8000UD_DVI }, { USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_LDEWX015U }, + { USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_MIMO }, + { USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_PLUGABLE }, { USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_LT1421WIDE }, { USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_SD_U2VDH }, { USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_UM7X0 }