kern/128219: puc driver can not handle parallel port card with
SUN1888 chip.
Thinker K.F. Li
thinker at branda.to
Sun Oct 19 04:50:02 UTC 2008
>Number: 128219
>Category: kern
>Synopsis: puc driver can not handle parallel port card with SUN1888 chip.
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: update
>Submitter-Id: current-users
>Arrival-Date: Sun Oct 19 04:50:01 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator: Thinker K.F. Li
>Release: FreeBSD 8.0-CURRENT i386
>Organization:
allwitz.com
>Environment:
System: FreeBSD cowboy.branda.to 8.0-CURRENT FreeBSD 8.0-CURRENT #7: Fri Oct 17 22:32:29 CST 2008 thinker at cowboy.branda.to:/usr/src/sys/i386/compile/cowboy i386
>Description:
puc(4) is a Universal driver for serial & parallel ports. It supports
variaous chips & boards except the one I bought from market, SUnix's
daul ports parallel card with SUN1888 chip.
>How-To-Repeat:
Plug a parallel port card with SUN1888 to your FreeBSD box and try to
drive it with puc driver module. Nothing is happening.
puc(4) can not even recoganize the card.
>Fix:
apply following small patch on src/sys/dev/puc/, and rebuild the
module in src/sys/modules/puc/.
--- patch-freebsd-puc.diff begins here ---
--- puc.c.orig 2008-10-17 23:55:22.000000000 +0800
+++ puc.c 2008-10-18 15:50:10.000000000 +0800
@@ -606,7 +606,7 @@
if (cookiep == NULL || res != port->p_ires)
return (EINVAL);
/* We demand that serdev devices use filter_only interrupts. */
- if (ihand != NULL)
+ if (ihand != NULL && port->p_type == PUC_TYPE_SERIAL)
return (ENXIO);
if (rman_get_device(port->p_ires) != originator)
return (ENXIO);
--- pucdata.c.orig 2008-10-17 15:50:37.000000000 +0800
+++ pucdata.c 2008-10-18 03:01:56.000000000 +0800
@@ -586,6 +586,12 @@
.config_function = puc_config_timedia
},
+ { 0x1409, 0x7268, 0xffff, 0,
+ "Sunix SUN1888 2 Port Parallel",
+ DEFAULT_RCLK * 8,
+ PUC_PORT_2P, 0x10, 8, 0,
+ },
+
/*
* Boards with an Oxford Semiconductor chip.
*
--- patch-freebsd-puc.diff ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list