Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 11 Apr 2006 18:48:27 GMT
From:      Marcel Moolenaar <marcel@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 95009 for review
Message-ID:  <200604111848.k3BImRFf076301@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=95009

Change 95009 by marcel@marcel_nfs on 2006/04/11 18:47:32

	First commit of multiple to reduce the size of puc_devices:
	o  All ports have the same RCLK. Use a single value that 
	   applies to all serial ports instead of having one per port. 
	   Non-standard cases (i.e. cards that do have different RCLK
	   values per UART) will be handled dynamically once I'm done.
	
	 This almost cuts the size in half.

Affected files ...

.. //depot/projects/uart/dev/puc/puc.c#20 edit
.. //depot/projects/uart/dev/puc/pucdata.c#19 edit
.. //depot/projects/uart/dev/puc/pucvar.h#15 edit

Differences ...

==== //depot/projects/uart/dev/puc/puc.c#20 (text+ko) ====

@@ -312,7 +312,7 @@
 			rman_set_bushandle(rle->res, bh);
 		}
 
-		pdev->serialfreq = sc->sc_desc.ports[i].serialfreq;
+		pdev->serialfreq = sc->sc_desc.serialfreq;
 
 		childunit = puc_find_free_unit(typestr);
 		sc->sc_ports[i].dev = device_add_child(dev, typestr,

==== //depot/projects/uart/dev/puc/pucdata.c#19 (text+ko) ====

@@ -45,8 +45,6 @@
 #include <dev/sio/sioreg.h>
 #include <dev/puc/pucvar.h>
 
-#define COM_FREQ	DEFAULT_RCLK
-
 int puc_config_win877(struct puc_softc *);
 
 const struct puc_device_description puc_devices[] = {
@@ -54,133 +52,145 @@
 	{   "Sunix SUN1889",
 	    {	0x0009,	0x7168,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 8,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
 	    },
 	},
 
 	{   "Diva Serial [GSP] Multiport UART",
 	    {	0x103c,	0x1048,	0x103c,	0x1282	},
 	    {	0xffff,	0xffff,	0xffff,	0xffff	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, 0 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x10, 0 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x38, 0 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x38 },
 	    },
 	},
 
 	{   "Comtrol RocketPort 550/4 RJ45",
 	    {	0x11fe,	0x8014,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 4,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18 },
 	    },
 	},
 
 	{   "Comtrol RocketPort 550/Quad",
 	    {	0x11fe,	0x8015,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 4,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18 },
 	    },
 	},
 
 	{   "Comtrol RocketPort 550/8 RJ11 part A",
 	    {	0x11fe,	0x8010,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 4,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18 },
 	    },
 	},
 	{   "Comtrol RocketPort 550/8 RJ11 part B",
 	    {	0x11fe,	0x8011,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 4,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18 },
 	    },
 	},
 
 	{   "Comtrol RocketPort 550/8 Octa part A",
 	    {	0x11fe,	0x8012,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 4,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18 },
 	    },
 	},
 	{   "Comtrol RocketPort 550/8 Octa part B",
 	    {	0x11fe,	0x8013,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 4,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18 },
 	    },
 	},
 
 	{   "Comtrol RocketPort 550/8 part A",
 	    {	0x11fe,	0x8018,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 4,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18 },
 	    },
 	},
 	{   "Comtrol RocketPort 550/8 part B",
 	    {	0x11fe,	0x8019,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 4,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18 },
 	    },
 	},
 
 	{   "Comtrol RocketPort 550/16 part A",
 	    {	0x11fe,	0x8016,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 4,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18 },
 	    },
 	},
 	{   "Comtrol RocketPort 550/16 part B",
 	    {	0x11fe,	0x8017,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 4,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x20, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x28, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x30, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x38, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x40, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x48, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x50, COM_FREQ * 4 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x58, COM_FREQ * 4 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x20 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x28 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x30 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x38 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x40 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x48 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x50 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x58 },
 	    },
 	},
 
@@ -198,9 +208,10 @@
 	{   "Dolphin Peripherals 4014",
 	    {	0x10b5,	0x9050,	0xd84d,	0x6810	},
 	    {	0xffff,	0xffff,	0xffff,	0xffff	},
+	    0,
 	    {
-		{ PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
-		{ PUC_PORT_TYPE_LPT, 0x24, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x20, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x24, 0x00 },
 	    },
 	},
 
@@ -218,9 +229,10 @@
 	{   "Dolphin Peripherals 4035",
 	    {	0x10b5,	0x9050,	0xd84d,	0x6808	},
 	    {	0xffff,	0xffff,	0xffff,	0xffff	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x1c, 0x00 },
 	    },
 	},
 
@@ -231,9 +243,10 @@
 	{   "Dolphin Peripherals 4036",
 	    {	0x1409,	0x7168,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 8,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
 	    },
 	},
 
@@ -261,9 +274,10 @@
 	{   "SIIG Cyber I/O PCI 16C550 (10x family)",
 	    {	0x131f,	0x1010,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00 },
 	    },
 	},
 
@@ -271,9 +285,10 @@
 	{   "SIIG Cyber I/O PCI 16C650 (10x family)",
 	    {	0x131f,	0x1011,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00 },
 	    },
 	},
 
@@ -281,9 +296,10 @@
 	{   "SIIG Cyber I/O PCI 16C850 (10x family)",
 	    {	0x131f,	0x1012,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00 },
 	    },
 	},
 
@@ -291,8 +307,9 @@
 	{   "SIIG Cyber Parallel PCI (10x family)",
 	    {	0x131f,	0x1020,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    0,
 	    {
-		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x18, 0x00 },
 	    },
 	},
 
@@ -300,9 +317,10 @@
 	{   "SIIG Cyber Parallel Dual PCI (10x family)",
 	    {	0x131f,	0x1021,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    0,
 	    {
-		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
-		{ PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x20, 0x00 },
 	    },
 	},
 
@@ -310,9 +328,10 @@
 	{   "SIIG Cyber Serial Dual PCI 16C550 (10x family)",
 	    {	0x131f,	0x1030,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x1c, 0x00 },
 	    },
 	},
 
@@ -320,9 +339,10 @@
 	{   "SIIG Cyber Serial Dual PCI 16C650 (10x family)",
 	    {	0x131f,	0x1031,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x1c, 0x00 },
 	    },
 	},
 
@@ -330,9 +350,10 @@
 	{   "SIIG Cyber Serial Dual PCI 16C850 (10x family)",
 	    {	0x131f,	0x1032,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x1c, 0x00 },
 	    },
 	},
 
@@ -340,10 +361,11 @@
 	{   "SIIG Cyber 2S1P PCI 16C550 (10x family)",
 	    {	0x131f,	0x1034,	0,	0	},	/* XXX really? */
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x1c, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x20, 0x00 },
 	    },
 	},
 
@@ -351,10 +373,11 @@
 	{   "SIIG Cyber 2S1P PCI 16C650 (10x family)",
 	    {	0x131f,	0x1035,	0,	0	},	/* XXX really? */
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x1c, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x20, 0x00 },
 	    },
 	},
 
@@ -362,10 +385,11 @@
 	{   "SIIG Cyber 2S1P PCI 16C850 (10x family)",
 	    {	0x131f,	0x1036,	0,	0	},	/* XXX really? */
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_LPT, 0x20, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x1c, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x20, 0x00 },
 	    },
 	},
 
@@ -373,11 +397,12 @@
 	{   "SIIG Cyber 4S PCI 16C550 (10x family)",
 	    {	0x131f,	0x1050,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x24, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x1c, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x20, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x24, 0x00 },
 	    },
 	},
 
@@ -385,11 +410,12 @@
 	{   "SIIG Cyber 4S PCI 16C650 (10x family)",
 	    {	0x131f,	0x1051,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x24, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x1c, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x20, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x24, 0x00 },
 	    },
 	},
 
@@ -397,11 +423,12 @@
 	{   "SIIG Cyber 4S PCI 16C850 (10x family)",
 	    {	0x131f,	0x1052,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x24, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x1c, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x20, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x24, 0x00 },
 	    },
 	},
 
@@ -413,8 +440,9 @@
 	{   "SIIG Cyber Parallel PCI (20x family)",
 	    {	0x131f,	0x2020,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    0,
 	    {
-		{ PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x10, 0x00 },
 	    },
 	},
 
@@ -422,9 +450,10 @@
 	{   "SIIG Cyber Parallel Dual PCI (20x family)",
 	    {	0x131f,	0x2021,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    0,
 	    {
-		{ PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
-		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x18, 0x00 },
 	    },
 	},
 
@@ -432,10 +461,11 @@
 	{   "SIIG Cyber 2P1S PCI 16C550 (20x family)",
 	    {	0x131f,	0x2040,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
-		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x14, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00 },
 	    },
 	},
 
@@ -443,10 +473,11 @@
 	{   "SIIG Cyber 2P1S PCI 16C650 (20x family)",
 	    {	0x131f,	0x2041,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
-		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x14, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00 },
 	    },
 	},
 
@@ -454,10 +485,11 @@
 	{   "SIIG Cyber 2P1S PCI 16C850 (20x family)",
 	    {	0x131f,	0x2042,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
-		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x14, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x1c, 0x00 },
 	    },
 	},
 
@@ -465,9 +497,10 @@
 	{   "SIIG Cyber I/O PCI 16C550 (20x family)",
 	    {	0x131f,	0x2010,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x14, 0x00 },
 	    },
 	},
 
@@ -475,9 +508,10 @@
 	{   "SIIG Cyber I/O PCI 16C650 (20x family)",
 	    {	0x131f,	0x2011,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x14, 0x00 },
 	    },
 	},
 
@@ -485,9 +519,10 @@
 	{   "SIIG Cyber I/O PCI 16C850 (20x family)",
 	    {	0x131f,	0x2012,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x14, 0x00 },
 	    },
 	},
 
@@ -495,9 +530,10 @@
 	{   "SIIG Cyber Serial Dual PCI 16C550 (20x family)",
 	    {	0x131f,	0x2030,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00 },
 	    },
 	},
 
@@ -505,9 +541,10 @@
 	{   "SIIG Cyber Serial Dual PCI 16C650 (20x family)",
 	    {	0x131f,	0x2031,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00 },
 	    },
 	},
 
@@ -515,9 +552,10 @@
 	{   "SIIG Cyber Serial Dual PCI 16C850 (20x family)",
 	    {	0x131f,	0x2032,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00 },
 	    },
 	},
 
@@ -525,10 +563,11 @@
 	{   "SIIG Cyber 2S1P PCI 16C550 (20x family)",
 	    {	0x131f,	0x2060,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x18, 0x00 },
 	    },
 	},
 
@@ -536,10 +575,11 @@
 	{   "SIIG Cyber 2S1P PCI 16C650 (20x family)",
 	    {	0x131f,	0x2061,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x18, 0x00 },
 	    },
 	},
 
@@ -547,10 +587,11 @@
 	{   "SIIG Cyber 2S1P PCI 16C850 (20x family)",
 	    {	0x131f,	0x2062,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x18, 0x00 },
 	    },
 	},
 
@@ -558,11 +599,12 @@
 	{   "SIIG Cyber 4S PCI 16C550 (20x family)",
 	    {	0x131f,	0x2050,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x1c, 0x00 },
 	    },
 	},
 
@@ -570,11 +612,12 @@
 	{   "SIIG Cyber 4S PCI 16C650 (20x family)",
 	    {	0x131f,	0x2051,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x1c, 0x00 },
 	    },
 	},
 
@@ -582,11 +625,12 @@
 	{   "SIIG Cyber 4S PCI 16C850 (20x family)",
 	    {	0x131f,	0x2052,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x1c, 0x00 },
 	    },
 	},
 
@@ -594,9 +638,10 @@
 	{   "VScom PCI-200L",
 	    {	0x14d2,	0x8020,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 8,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
 	    },
 	},
 
@@ -604,11 +649,12 @@
 	{   "VScom PCI-400",
 	    {	0x10b5,	0x1077,	0x10b5,	0x1077	},
 	    {	0xffff,	0xffff,	0xffff,	0xffff	},
+	    DEFAULT_RCLK * 8,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x18 },
 	    },
 	},
 
@@ -616,15 +662,16 @@
 	{   "VScom PCI-800",
 	    {	0x10b5,	0x1076,	0x10b5,	0x1076	},
 	    {	0xffff,	0xffff,	0xffff,	0xffff	},
+	    DEFAULT_RCLK * 8,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x18, 0x08, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x18, 0x10, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x18, 0x18, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x18, 0x20, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x18, 0x28, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x18, 0x30, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x18, 0x38, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x18 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x20 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x28 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x30 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x38 },
 	    },
 	},
 	/*
@@ -635,38 +682,42 @@
 	{   "Titan PCI-800H",
 	    {	0x14d2,	0xa003,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 8,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18 },
 	    },
 	},
 	{   "Titan PCI-800H",
 	    {	0x14d2,	0xa004,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 8,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18 },
 	    },
 	},
 	{   "Titan PCI-200H",
 	    {	0x14d2,	0xa005,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 8,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
 	    },
 	},
 
 	{   "Titan VScom PCI-200HV2",	/* 2S */
 	    {	0x14d2,	0xe020,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 8,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00 },
 	    },
 	},
 	/*
@@ -681,15 +732,16 @@
 	{   "Titan VScom PCI-800L",
 	    {	0x14d2,	0x8080,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK * 8,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x20, 0x00, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x20, 0x08, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x20, 0x10, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x20, 0x18, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x20, 0x20, COM_FREQ * 8 },
-		{ PUC_PORT_TYPE_COM, 0x20, 0x28, COM_FREQ * 8 },
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x20, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x20, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x20, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x20, 0x18 },
+		{ PUC_PORT_TYPE_COM, 0x20, 0x20 },
+		{ PUC_PORT_TYPE_COM, 0x20, 0x28 },
 	    },
 	},
 
@@ -697,8 +749,9 @@
 	{   "Lava Computers 2SP-PCI parallel port",
 	    {	0x1407,	0x8000,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    0,
 	    {
-		{ PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x10, 0x00 },
 	    },
 	},
 
@@ -706,9 +759,10 @@
 	{   "Lava Computers dual serial port",
 	    {	0x1407,	0x0100,	0,	0	},
 	    {	0xffff,	0xfffc,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00 },
 	    },
 	},
 
@@ -716,9 +770,10 @@
 	{   "Lava Computers Quattro-PCI serial port",
 	    {	0x1407,	0x0120,	0,	0	},
 	    {	0xffff,	0xfffc,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00 },
 	    },
 	},
 
@@ -726,11 +781,12 @@
 	{   "Lava Computers Octopus-550 8-port serial",
 	    {	0x1407,	0x0180,	0,	0	},
 	    {	0xffff,	0xfffc,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x18, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x1c, 0x00 },
 	    },
 	},
 
@@ -748,8 +804,9 @@
 	{   "Oxford Semiconductor OX12PCI840 Parallel port",
 	    {	0x1415,	0x8403,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    0,
 	    {
-		{ PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x10, 0x00 },
 	    },
 	},
 
@@ -757,11 +814,12 @@
 	{   "Oxford Semiconductor OX16PCI954 UARTs",
 	    {	0x1415,	0x9501,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18 },
 	    },
 	},
 
@@ -769,11 +827,12 @@
 	{   "Oxford Semiconductor OX16PCI954 UARTs",
 	    {	0x1415,	0x950a,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18 },
 	    },
 	},
 
@@ -784,11 +843,12 @@
 	{   "Oxford Semiconductor OX9160/OX16PCI954 UARTs (function 1)",
 	    {	0x1415,	0x9511,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18 },
 	    },
 	},
 
@@ -796,8 +856,9 @@
 	{   "Oxford Semiconductor OX16PCI954 Parallel port",
 	    {	0x1415,	0x9513,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    0,
 	    {
-		{ PUC_PORT_TYPE_LPT, 0x10, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x10, 0x00 },
 	    },
 	},
 
@@ -805,10 +866,11 @@
 	{   "NetMos NM9835 Dual UART and 1284 Printer port",
 	    {	0x9710,	0x9835,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},
+	    DEFAULT_RCLK,
 	    {
-		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ },
-		{ PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00 },
+		{ PUC_PORT_TYPE_COM, 0x14, 0x00 },
+		{ PUC_PORT_TYPE_LPT, 0x18, 0x00 },
 	    },
 	},
 
@@ -816,11 +878,12 @@
 	{   "NetMos NM9845 Quad UART",
 	    {	0x9710,	0x9845,	0,	0	},

>>> TRUNCATED FOR MAIL (1000 lines) <<<



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200604111848.k3BImRFf076301>