From nobody Tue Sep 05 15:12:08 2023 X-Original-To: freebsd-usb@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Rg8BM2mhbz4rpCc for ; Tue, 5 Sep 2023 15:12:27 +0000 (UTC) (envelope-from archimedes.gaviola@gmail.com) Received: from mail-ej1-x630.google.com (mail-ej1-x630.google.com [IPv6:2a00:1450:4864:20::630]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Rg8BL21tqz4RSg for ; Tue, 5 Sep 2023 15:12:26 +0000 (UTC) (envelope-from archimedes.gaviola@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20221208 header.b=VNHtzcsX; spf=pass (mx1.freebsd.org: domain of archimedes.gaviola@gmail.com designates 2a00:1450:4864:20::630 as permitted sender) smtp.mailfrom=archimedes.gaviola@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-ej1-x630.google.com with SMTP id a640c23a62f3a-99c3c8adb27so399301866b.1 for ; Tue, 05 Sep 2023 08:12:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1693926744; x=1694531544; darn=freebsd.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=98HpU2MWu62Q4d/rTHeKq6PXGyx0erXkqSxCPfT3iVk=; b=VNHtzcsX5tEv/ETuszVZkMYNDDyyxHPV6hs341EWaYDZusf3sLLKMcJNOGhsyF7kfY DYhOb9W2TSbReIHg+yuFlAfh/k6i9RU05Fl2b61j65xSe70HJC5SGNr+5GWaipWT8u1Q 2FHM7lMhLymSaL7lKwp4v4VjHvQMZc6uRmvbcD2a5Q7VlwwnqoAyAwl5R98nPG8U+0p8 ofKGeuQUYRdwnb5zz/oAhoqZFuADEkj4G/F715KaErRbChsbY75yC1F4NDloWUu9a3ud 2HsPfxRSMS7Y7n8sP662BEeBdwXlHL9NPxVQ76ipJsAyJEbFZTMkj8SMhE7rAS2XyJJI Z0Sg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693926744; x=1694531544; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=98HpU2MWu62Q4d/rTHeKq6PXGyx0erXkqSxCPfT3iVk=; b=X62yu9j/NJGKJOdLSfQbqnvBZDQ1UV6q3+QMEQmueMM/Qzpf2/Y6OFN5Dx6B0iYttg mdHUzXPh2JRod3N1ExjPvhy9LwERW/tGqRtDOl+++BIRIfU0fQgo7Ur7bztFQ3v6VV94 k7qPNU0IZdmMZkbYLVNOIzhvXjYKjcj5AW5uqBo7EIM2tVkWdG5gncuVVYxjGLnnYkZW 1DMVqKIGegWu+m3Tx++89K2hDWKi9NaYCVOVivBNXW48NR+C3+zQO533l4nno+fybBh5 BecVwCR7E6ltsZj1a+O7jimQlZM2XOemstqh0ntXD0CO1ROM6VdrfqYmTDzFfUG4aJPi jkSA== X-Gm-Message-State: AOJu0YwWUzrKtC0akejGx0sw7OT/C6YrW0akuMo5Tdut7S0QFPiGMjUN axFXZN5hEvOTYLjK17KvRhD1QAitkiXXyvqAG2YTaA4X4Yg= X-Google-Smtp-Source: AGHT+IGMZC8ylVB6E+LmGYR9V2sQW3oAq1zc3kUwwgctolKd04Ov3CnC2LQNqjXtYzSf7uqnuRE8XOUDYjJ7Ay5JHws= X-Received: by 2002:a17:906:24b:b0:9a5:ebfd:79a3 with SMTP id 11-20020a170906024b00b009a5ebfd79a3mr94629ejl.29.1693926744378; Tue, 05 Sep 2023 08:12:24 -0700 (PDT) List-Id: FreeBSD List-Archive: https://lists.freebsd.org/archives/freebsd-usb List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-usb@freebsd.org X-BeenThere: freebsd-usb@freebsd.org MIME-Version: 1.0 From: Archimedes Gaviola Date: Tue, 5 Sep 2023 23:12:08 +0800 Message-ID: Subject: udl(4) patch for SIIG USB 2.0 DVI/VGA Pro support To: freebsd-usb@freebsd.org Content-Type: multipart/alternative; boundary="000000000000dfd2da06049e0d02" X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.99)[-0.986]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; R_SPF_ALLOW(-0.20)[+ip6:2a00:1450:4000::/36:c]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20221208]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; TO_MATCH_ENVRCPT_ALL(0.00)[]; FROM_HAS_DN(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com]; PREVIOUSLY_DELIVERED(0.00)[freebsd-usb@freebsd.org]; ARC_NA(0.00)[]; BLOCKLISTDE_FAIL(0.00)[2a00:1450:4864:20::630:server fail]; RCPT_COUNT_ONE(0.00)[1]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; TAGGED_FROM(0.00)[]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US]; DKIM_TRACE(0.00)[gmail.com:+]; MID_RHS_MATCH_FROMTLD(0.00)[]; TO_DN_NONE(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[2a00:1450:4864:20::630:from]; RCVD_COUNT_ONE(0.00)[1]; RCVD_TLS_LAST(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; MIME_TRACE(0.00)[0:+,1:+,2:~]; MLMMJ_DEST(0.00)[freebsd-usb@freebsd.org] X-Rspamd-Queue-Id: 4Rg8BL21tqz4RSg --000000000000dfd2da06049e0d02 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi, I would like to submit some patches below for the SIIG USB 2.0 DVI/VGA Pro device support for the udl(4) video driver. You can see actual device here https://www.siig.com/usb-2-0-to-dvi-vga-pro.html. This has been tested on both 14.0-ALPHA4 and 15.0-CURRENT in a compiled kernel and in the loadable module. Either way both are working. There are two files being patched (1) /usr/src/sys/dev/usb/usbdevs and (2) /usr/src/sys/dev/usb/video/udl.c. These changes apply for both 14.0-ALPHA4 and 15.0-CURRENT. root@fbsd14a4:~ # uname -a FreeBSD fbsd14a4 14.0-ALPHA4 FreeBSD 14.0-ALPHA4 amd64 1400097 #0 stable/14-n265026-4c3f144478d4: Fri Sep 1 05:47:56 UTC 2023 root@releng1.nyi.freebsd.org:/usr/obj/usr/src/amd64.amd64/sys/GENERIC amd64 root@fbsd15:~ # uname -a FreeBSD fbsd15 15.0-CURRENT FreeBSD 15.0-CURRENT i386 1500000 #0 main-n265091-e04c4b4a369d: Thu Aug 31 03:48:01 UTC 2023 root@releng3.nyi.freebsd.org:/usr/obj/usr/src/i386.i386/sys/GENERIC i386 root@fbsd14a4:~ # diff -Nur /usr/src/sys/dev/usb/usbdevs.orig /usr/src/sys/dev/usb/usbdevs --- /usr/src/sys/dev/usb/usbdevs.orig 2023-09-03 04:16:01.453679000 +0800 +++ /usr/src/sys/dev/usb/usbdevs 2023-09-03 09:23:33.848897000 +0800 @@ -1808,6 +1808,7 @@ product DISPLAYLINK M01061 0x01e2 Lenovo DVI product DISPLAYLINK SWDVI 0x024c SUNWEIT DVI product DISPLAYLINK NBDOCK 0x0215 VideoHome NBdock1920 +product DISPLAYLINK AN2440D3 0x028f SIIG USB 2.0 DVI/VGA Pro product DISPLAYLINK LUM70 0x02a9 Lilliput UM-70 product DISPLAYLINK DVI_19 0x0360 USB to DVI-19 product DISPLAYLINK UM7X0 0x401a nanovision MiMo root@fbsd14a4:~ # diff -Nur /usr/src/sys/dev/usb/video/udl.c.orig /usr/src/sys/dev/usb/video/udl.c --- /usr/src/sys/dev/usb/video/udl.c.orig 2023-09-03 04:15:21.204875000 +0800 +++ /usr/src/sys/dev/usb/video/udl.c 2023-09-03 09:25:23.893228000 +0800 @@ -179,6 +179,7 @@ {USB_VPI(USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_LT1421, DLUNK)}, {USB_VPI(USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_ITEC, DL165)}, {USB_VPI(USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_DVI_19, DL165)}, + {USB_VPI(USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_AN2440D3, DL195)}, Some relevant info below upon detection of the device after patched (only 14.0-ALPHA4 is shown as 15.0-CURRENT is the same). Because the videomode driver is also a dependency to the udl(4) driver, it is also able to detect my Dell VGA monitor for available screen resolutions and video modes. root@fbsd14a4:~ # kldload udl root@fbsd14a4:~ # kldstat Id Refs Address Size Name 1 10 0xffffffff80200000 1d339a8 kernel 2 1 0xffffffff8261f000 3690 udl.ko 3 1 0xffffffff82623000 5028 videomode.ko root@fbsd14a4:~ # kldstat -v -n kernel | grep udl 107 udl/fbd 282 uhub/udl root@fbsd14a4:~ # dmesg ugen0.2: at usbus0 udl0 on uhub0 udl0: on usbus0 Vendor: [DEL] Dell Product: [2004] D1918H Serial number: GC2RW07C8PHX Manufactured 2019 Week 28 EDID Version 1.3 EDID Comment: Video Input: 68 Analog -0.7, 0.0V Separate syncs Gamma: 2.20 Max Size: 41 cm x 23 cm Features: 2a DPMS active-off RGB Preferred timing Chroma Info: Red X: 0.635 Red Y: 0.635 Grn X: 0.330 Grn Y: 0.627 Blu X: 0.155 Blu Y: 0.046 Wht X: 0.313 Wht Y: 0.329 Range: Horizontal: 30 - 83 kHz Vertical: 56 - 75 Hz Max Dot Clock: 135 MHz Video modes: 720x400 @ 70Hz (28320 738 846 900 412 414 449 -H +V) 640x480 @ 60Hz (25175 656 752 800 490 492 525 -H -V) 640x480 @ 75Hz (31500 656 720 840 481 484 500 -H -V) 800x600 @ 60Hz (40000 840 968 1056 601 605 628 +H +V) 800x600 @ 75Hz (49500 816 896 1056 601 604 625 +H +V) 1024x768 @ 60Hz (65000 1048 1184 1344 771 777 806 -H -V) 1024x768 @ 75Hz (78750 1040 1136 1312 769 772 800 +H +V) 1280x1024 @ 75Hz (135000 1296 1440 1688 1025 1028 1066 +H +V) 1366x768 @ 60Hz (85500 1436 1579 1792 771 774 798 +H +V) Preferred mode: 1366x768 @ 60Hz Number of extension blocks: 0 udl0: Mode selected 1280x1024 @ 75Hz fbd0 on udl0 root@fbsd14a4:~ # usbconfig -d ugen0.2 dump_device_desc ugen0.2: at usbus0, cfg=3D0 md=3DHOST spd=3DFULL (12= Mbps) pwr=3DON (500mA) bLength =3D 0x0012 bDescriptorType =3D 0x0001 bcdUSB =3D 0x0110 bDeviceClass =3D 0x0000 bDeviceSubClass =3D 0x0000 bDeviceProtocol =3D 0x0000 bMaxPacketSize0 =3D 0x0040 idVendor =3D 0x17e9 idProduct =3D 0x028f bcdDevice =3D 0x0001 iManufacturer =3D 0x0001 iProduct =3D 0x0002 iSerialNumber =3D 0x0003 <111018> bNumConfigurations =3D 0x0001 root@fbsd14a4:~ # sysctl -a | grep udl udl0 on uhub0 udl0: on usbus0 udl0: Mode selected 1280x1024 @ 75Hz fbd0 on udl0 device udl hw.usb.udl.fps: 25 hw.usb.udl.debug: 0 dev.fbd.0.%parent: udl0 dev.udl.0.mode: 17 dev.udl.0.mode_force: -1 dev.udl.0.chipid: 4 dev.udl.0.chipid_force: -1 dev.udl.0.%parent: uhub0 dev.udl.0.%pnpinfo: vendor=3D0x17e9 product=3D0x028f devclass=3D0x00 devsubclass=3D0x00 devproto=3D0x00 sernum=3D"111018" release=3D0x0001 mode= =3Dhost intclass=3D0xff intsubclass=3D0x00 intprotocol=3D0x00 dev.udl.0.%location: bus=3D0 hubaddr=3D1 port=3D1 devaddr=3D2 interface=3D0 ugen=3Dugen0.2 dev.udl.0.%driver: udl dev.udl.0.%desc: DisplayLink AN2440D3, class 0/0, rev 1.10/0.01, addr 2 dev.udl.%parent: Lastly, I would also submit a patch for the udl(4) manual for update. First, there's a need to include DL-195 in the description since this model is the chipset of SIIG USB 2.0 DVI/VGA Pro which is working as tested. Second, the udl(4) driver must be accompanied with the videomode driver otherwise kernel compilation will fail and third, adding the SIIG USB 2.0 DVI/VGA Pro device in the list. root@fbsd14a4:~ # diff -Nur udl-manual.orig udl-manual --- udl-manual.orig 2023-08-18 00:13:25.583021000 +0000 +++ udl-manual 2023-08-18 15:06:41.896163000 +0000 @@ -1,13 +1,14 @@ UDL(4) FreeBSD Kernel Interfaces Manual UDL(4) NAME - udl =E2=80=93 DisplayLink DL-120 / DL-160 USB display devices + udl =E2=80=93 DisplayLink DL-120 / DL-160 / DL-195 USB display device= s SYNOPSIS - To compile this driver into the kernel, place the following line in your + To compile this driver into the kernel, place the following lines in your kernel configuration file: device udl + device videomode Alternatively, to load the driver as a module at boot time, place the following line in loader.conf(5): @@ -16,7 +17,7 @@ DESCRIPTION The udl driver supports USB display devices based on the DisplayLink - DL-120 / DL-160 graphic chip. + DL-120 / DL-160 / DL-195 graphic chip. HARDWARE The following devices should work: @@ -40,6 +41,7 @@ Unitek Y-2240 USB to DVI VideoHome NBdock1920 i-tec USB 2.0 Docking Station (USBDVIDOCK) + SIIG USB 2.0 DVI/VGA Pro Thanks, Archimedes --000000000000dfd2da06049e0d02 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi,

I would like to submit some patches=20 below for the SIIG USB 2.0 DVI/VGA Pro device support for the udl(4)=20 video driver. You can see actual device here https://www.siig.com/usb-2= -0-to-dvi-vga-pro.html. This has been tested on both 14.0-ALPHA4 and 15.0-CURRENT in a compiled kernel and in the loadable module. Either way both are working. There=20 are two files being patched (1)=20 /usr/src/sys/dev/usb/usbdevs and (2)=20 /usr/src/sys/dev/usb/video/udl.c. These changes apply for both 14.0-ALPHA4 = and 15.0-CURRENT.

root@fbsd14a4:~ # uname -a
Fr= eeBSD fbsd14a4 14.0-ALPHA4 FreeBSD 14.0-ALPHA4 amd64 1400097 #0 stable/14-n= 265026-4c3f144478d4: Fri Sep =C2=A01 05:47:56 UTC 2023 =C2=A0 =C2=A0 root@r= eleng1.nyi.freebsd.org:/usr/obj/usr/src/amd64.amd64/sys/GENERIC amd64
root@fbsd15:~ # uname -a
FreeBSD fbsd15 15.0-CURRENT FreeBSD 15.0-CURRENT i386 1500000 #0=20 main-n265091-e04c4b4a369d: Thu Aug 31 03:48:01 UTC 2023 =C2=A0 =C2=A0=20 root@releng3.nyi.freebsd.org:/usr/obj/usr/src/i386.i386/sys/GENERIC i386

root@fbsd14a4:~ # diff -Nur /usr/src/sys/dev/usb/= usbdevs.orig /usr/src/sys/dev/usb/usbdevs
--- /usr/src/sys/dev/usb/usbde= vs.orig =C2=A0 2023-09-03 04:16:01.453679000 +0800
+++ /usr/src/sys/dev/= usb/usbdevs =C2=A0 =C2=A0 =C2=A0 =C2=A02023-09-03 09:23:33.848897000 +0800<= br>@@ -1808,6 +1808,7 @@
=C2=A0product DISPLAYLINK M01061 =C2=A0 =C2=A0 = 0x01e2 =C2=A0Lenovo DVI
=C2=A0product DISPLAYLINK SWDVI =C2=A0 =C2=A0 = =C2=A00x024c =C2=A0SUNWEIT DVI
=C2=A0product DISPLAYLINK NBDOCK =C2=A0 = =C2=A0 0x0215 =C2=A0VideoHome NBdock1920
+product DISPLAYLINK AN2440D3 = =C2=A0 0x028f =C2=A0SIIG USB 2.0 DVI/VGA Pro
=C2=A0product DISPLAYLINK L= UM70 =C2=A0 =C2=A0 =C2=A00x02a9 =C2=A0Lilliput UM-70
=C2=A0product DISPL= AYLINK DVI_19 =C2=A0 =C2=A0 0x0360 =C2=A0USB to DVI-19
=C2=A0product DIS= PLAYLINK UM7X0 =C2=A0 =C2=A0 =C2=A00x401a =C2=A0nanovision MiMo

root= @fbsd14a4:~ # diff -Nur /usr/src/sys/dev/usb/video/udl.c.orig /usr/src/sys/= dev/usb/video/udl.c
--- /usr/src/sys/dev/usb/video/udl.c.orig =C2=A0 =C2= =A0 =C2=A0 2023-09-03 04:15:21.204875000 +0800
+++ /usr/src/sys/dev/usb/= video/udl.c =C2=A0 =C2=A02023-09-03 09:25:23.893228000 +0800
@@ -179,6 += 179,7 @@
=C2=A0 =C2=A0 =C2=A0 =C2=A0 {USB_VPI(USB_VENDOR_DISPLAYLINK, US= B_PRODUCT_DISPLAYLINK_LT1421, DLUNK)},
=C2=A0 =C2=A0 =C2=A0 =C2=A0 {USB_= VPI(USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPLAYLINK_ITEC, DL165)},
=C2= =A0 =C2=A0 =C2=A0 =C2=A0 {USB_VPI(USB_VENDOR_DISPLAYLINK, USB_PRODUCT_DISPL= AYLINK_DVI_19, DL165)},
+ =C2=A0 =C2=A0 =C2=A0 {USB_VPI(USB_VENDOR_DISPL= AYLINK, USB_PRODUCT_DISPLAYLINK_AN2440D3, DL195)},

=
Some relevant info below upon detection of the device after patched (only 14.0-= ALPHA4 is shown as 15.0-CURRENT is the same). Because the videomode driver is also a dependency to the udl(4) driver, it is=20 also able to detect my Dell VGA monitor for available screen resolutions and video modes.

root@fbsd14a4:~ # kldload ud= l
root@fbsd14a4:~ # kldstat
Id Refs Address =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Size Name
=C2=A01 =C2=A0 10 0xffffffff802= 00000 =C2=A01d339a8 kernel
=C2=A02 =C2=A0=C2=A0 1 0xffffffff8261f000 =C2= =A0 =C2=A0 3690 udl.ko
=C2=A03 =C2=A0=C2=A0 1 0xffffffff82623000 =C2=A0 = =C2=A0 5028 videomode.ko

root@fbsd14a4:~ # kldstat -v -n kernel | gr= ep udl
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 107 udl/f= bd
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 282 uhub/udl<= /div>

root@fbsd14a4:~ # dmesg
ugen0.2: <DisplayLink AN2440D3> at usbus0
udl0 on uhub0
udl= 0: <DisplayLink AN2440D3, class 0/0, rev 1.10/0.01, addr 2> on usbus0=
Vendor: [DEL] Dell
Product: [2004] D1918H
Serial number: GC2RW07C= 8PHX
Manufactured 2019 Week 28
EDID Version 1.3
EDID Comment:
V= ideo Input: 68
=C2=A0 =C2=A0 =C2=A0 =C2=A0 Analog
=C2=A0 =C2=A0 =C2= =A0 =C2=A0 -0.7, 0.0V
=C2=A0 =C2=A0 =C2=A0 =C2=A0 Separate syncs
Gamm= a: 2.20
Max Size: 41 cm x 23 cm
Features: 2a
=C2=A0 =C2=A0 =C2=A0 = =C2=A0 DPMS active-off
=C2=A0 =C2=A0 =C2=A0 =C2=A0 RGB
=C2=A0 =C2=A0 = =C2=A0 =C2=A0 Preferred timing
Chroma Info:
=C2=A0 =C2=A0 =C2=A0 =C2= =A0 Red X: 0.635
=C2=A0 =C2=A0 =C2=A0 =C2=A0 Red Y: 0.635
=C2=A0 =C2= =A0 =C2=A0 =C2=A0 Grn X: 0.330
=C2=A0 =C2=A0 =C2=A0 =C2=A0 Grn Y: 0.627<= br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 Blu X: 0.155
=C2=A0 =C2=A0 =C2=A0 =C2=A0 = Blu Y: 0.046
=C2=A0 =C2=A0 =C2=A0 =C2=A0 Wht X: 0.313
=C2=A0 =C2=A0 = =C2=A0 =C2=A0 Wht Y: 0.329
Range:
=C2=A0 =C2=A0 =C2=A0 =C2=A0 Horizon= tal: 30 - 83 kHz
=C2=A0 =C2=A0 =C2=A0 =C2=A0 Vertical: 56 - 75 Hz
=C2= =A0 =C2=A0 =C2=A0 =C2=A0 Max Dot Clock: 135 MHz
Video modes:
=C2=A0 = =C2=A0 =C2=A0 =C2=A0 720x400 @ 70Hz (28320 738 846 900 412 414 449 -H +V)=C2=A0 =C2=A0 =C2=A0 =C2=A0 640x480 @ 60Hz (25175 656 752 800 490 492 525= -H -V)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 640x480 @ 75Hz (31500 656 720 840 48= 1 484 500 -H -V)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 800x600 @ 60Hz (40000 840 9= 68 1056 601 605 628 +H +V)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 800x600 @ 75Hz (4= 9500 816 896 1056 601 604 625 +H +V)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 1024x76= 8 @ 60Hz (65000 1048 1184 1344 771 777 806 -H -V)
=C2=A0 =C2=A0 =C2=A0 = =C2=A0 1024x768 @ 75Hz (78750 1040 1136 1312 769 772 800 +H +V)
=C2=A0 = =C2=A0 =C2=A0 =C2=A0 1280x1024 @ 75Hz (135000 1296 1440 1688 1025 1028 1066= +H +V)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 1366x768 @ 60Hz (85500 1436 1579 179= 2 771 774 798 +H +V)
Preferred mode: 1366x768 @ 60Hz
Number of extens= ion blocks: 0
udl0: Mode selected 1280x1024 @ 75Hz
fbd0 on udl0
=

root@fbsd14a4:~ # usbconfig -d ugen0.2 dump_device_desc=
ugen0.2: <DisplayLink AN2440D3> at usbus0, cfg=3D0 md=3DHOST spd= =3DFULL (12Mbps) pwr=3DON (500mA)

=C2=A0 bLength =3D 0x0012
=C2= =A0 bDescriptorType =3D 0x0001
=C2=A0 bcdUSB =3D 0x0110
=C2=A0 bDevic= eClass =3D 0x0000 =C2=A0<Probed by interface class>
=C2=A0 bDevice= SubClass =3D 0x0000
=C2=A0 bDeviceProtocol =3D 0x0000
=C2=A0 bMaxPack= etSize0 =3D 0x0040
=C2=A0 idVendor =3D 0x17e9
=C2=A0 idProduct =3D 0x= 028f
=C2=A0 bcdDevice =3D 0x0001
=C2=A0 iManufacturer =3D 0x0001 =C2= =A0<DisplayLink>
=C2=A0 iProduct =3D 0x0002 =C2=A0<AN2440D3>=
=C2=A0 iSerialNumber =3D 0x0003 =C2=A0<111018>
=C2=A0 bNumConf= igurations =3D 0x0001

root@fbsd14a4:~ # sysctl -a | grep udl
udl0= on uhub0
udl0: <DisplayLink AN2440D3, class 0/0, rev 1.10/0.01, addr= 2> on usbus0
udl0: Mode selected 1280x1024 @ 75Hz
fbd0 on udl0device =C2=A0udl
hw.usb.udl.fps: 25
hw.usb.udl.debug: 0
dev.fbd.0= .%parent: udl0
dev.udl.0.mode: 17
dev.udl.0.mode_force: -1
dev.udl= .0.chipid: 4
dev.udl.0.chipid_force: -1
dev.udl.0.%parent: uhub0
d= ev.udl.0.%pnpinfo: vendor=3D0x17e9 product=3D0x028f devclass=3D0x00 devsubclass=3D0x00=20 devproto=3D0x00 sernum=3D"111018" release=3D0x0001 mode=3Dhost in= tclass=3D0xff=20 intsubclass=3D0x00 intprotocol=3D0x00
dev.udl.0.%location: bus=3D0 hubad= dr=3D1 port=3D1 devaddr=3D2 interface=3D0 ugen=3Dugen0.2
dev.udl.0.%driv= er: udl
dev.udl.0.%desc: DisplayLink AN2440D3, class 0/0, rev 1.10/0.01,= addr 2
dev.udl.%parent:

Lastly, I would also submit a patch for the udl(4) manual for update. First,=20 there's a need to include DL-195 in the description since this model is the chipset of=20 SIIG USB 2.0 DVI/VGA Pro which is working as tested. Second, the udl(4) driver must be=20 accompanied with the videomode driver otherwise kernel compilation will fai= l and third, adding the SIIG USB 2.0 DVI/VGA Pro device in the list.

root@fbsd14a4:~ # diff -Nur udl-manual.orig udl-manua= l
--- udl-manual.orig =C2=A0 =C2=A0 2023-08-18 00:13:25.583021000 +0000<= br>+++ udl-manual =C2=A02023-08-18 15:06:41.896163000 +0000
@@ -1,13 +1,= 14 @@
=C2=A0UDL(4) =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 FreeBSD Kernel Interfaces Manual =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 UDL(4)

=C2=A0NAME
- =C2=A0 =C2=A0 udl =E2=80=93= DisplayLink DL-120 / DL-160 USB display devices
+ =C2=A0 =C2=A0 udl =E2= =80=93 DisplayLink DL-120 / DL-160 / DL-195 USB display devices

=C2= =A0SYNOPSIS
- =C2=A0 =C2=A0 To compile this driver into the kernel, plac= e the following line in your
+ =C2=A0 =C2=A0 To compile this driver into= the kernel, place the following lines in your
=C2=A0 =C2=A0 =C2=A0 kern= el configuration file:

=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 dev= ice udl
+ =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 device videomode

=C2= =A0 =C2=A0 =C2=A0 Alternatively, to load the driver as a module at boot tim= e, place the
=C2=A0 =C2=A0 =C2=A0 following line in loader.conf(5):
@= @ -16,7 +17,7 @@

=C2=A0DESCRIPTION
=C2=A0 =C2=A0 =C2=A0 The udl d= river supports USB display devices based on the DisplayLink
- =C2=A0 =C2= =A0 DL-120 / DL-160 graphic chip.
+ =C2=A0 =C2=A0 DL-120 / DL-160 / DL-1= 95 graphic chip.

=C2=A0HARDWARE
=C2=A0 =C2=A0 =C2=A0 The followin= g devices should work:
@@ -40,6 +41,7 @@
=C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 Unitek Y-2240 USB to DVI
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 VideoHome NBdock1920
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 i-tec USB 2.0 Docking Station (USBDVIDOCK)
+ =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 SIIG USB 2.0 DVI/VGA Pro

Thanks,
Archimedes
--000000000000dfd2da06049e0d02--