Knowledgebase
Online Technical Support
Software Upgrades: Please check our latest Download section.
Search Tip: You can increase the accuracy of your searches by using as many keywords as possible. Remove any common words such as "a", "or", "the" as they will be used in the search. Do not use any operands such as +, or quotation marks to enclose phrases.
|
Issue:
for customers that want to use the Speed LE product on FreeBSD.
Solution:
FreeBSD provides native support for our serial cards through the PUC serial driver (PCI Universal Communications driver). This driver supports Oxford chip based serial UARTS.
Modification of the pucdata.c file would be required to add new entries, and then the kernel recompiled.
/sys/dev/puc/pucdata.c
Contents of patch file noted at end of this document.
The puc driver supports 2, 4, and 8 port cards.
Note: single port cards (serial or parallel) will not work with the PUC driver, as the driver code is programmed to ignore these types:
/* We don't attach to single-port serial cards. */
if (cfg->ports == PUC_PORT_1S || cfg->ports == PUC_PORT_1P)
return (EDOOFUS);
It is noted by the FreeBSD maintainers that single port cards should be added to /sys/dev/uart/uart_bus_pci.c or /sys/dev/ppc/ppc_pci.c
The kernel configuration must have the puc driver enabled:
# If you've got a "dumb" serial or parallel PCI card that is
# supported by the puc(4) glue driver, uncomment the following
# line to enable it (connects to sio, uart and/or ppc drivers):
device puc
The serial device names will be /dev/ttyu[Uart#]
Example of detection of Perle Speed8 LE PCI card (as this card uses dual quad UARTS it will appear twice) by the puc serial driver. Device nodes /dev/ttyu2 through ttyu9 will be allocated:
freebsd82# dmesg | grep puc
puc0:
puc0: [FILTER]
uart2: <16550 or compatible> on puc0
uart3: <16550 or compatible> on puc0
uart4: <16550 or compatible> on puc0
uart5: <16550 or compatible> on puc0
puc1:
puc1: [FILTER]
uart6: <16950 or compatible> on puc1
uart7: <16950 or compatible> on puc1
uart8: <16950 or compatible> on puc1
uart9: <16950 or compatible> on puc1
patchfile for FreeBSD 8.2-RELEASE:
--- pucdata.orig.c 2012-02-10 12:24:47.000000000 -0500
+++ pucdata.c 2012-02-10 12:40:34.000000000 -0500
@@ -668,11 +668,35 @@
*/
{ 0x155f, 0x0331, 0xffff, 0,
- "Perle Speed4 LE",
+ "Perle Ultraport4 Express",
DEFAULT_RCLK * 8,
PUC_PORT_4S, 0x10, 0, 8,
},
+ { 0x155f, 0xB012, 0xffff, 0,
+ "Perle Speed2 LE",
+ DEFAULT_RCLK * 8,
+ PUC_PORT_2S, 0x10, 0, 8,
+ },
+
+ { 0x155f, 0xB022, 0xffff, 0,
+ "Perle Speed2 LE",
+ DEFAULT_RCLK * 8,
+ PUC_PORT_2S, 0x10, 0, 8,
+ },
+
+ { 0x155f, 0xB004, 0xffff, 0,
+ "Perle Speed4 LE",
+ DEFAULT_RCLK * 8,
+ PUC_PORT_4S, 0x10, 0, 8,
+ },
+
+ { 0x155f, 0xB008, 0xffff, 0,
+ "Perle Speed8 LE",
+ DEFAULT_RCLK * 8,
+ PUC_PORT_8S, 0x10, 0, 8,
+ },
+
{ 0x14d2, 0x8010, 0xffff, 0,
"VScom PCI-100L",
DEFAULT_RCLK * 8,
We can provide more information about our products or arrange for a price quotation.
Send an Email Call Us