USB printing on Dell 720 using Linux binary driver

Pieter de Boer pieter at thedarkside.nl
Sat Nov 12 03:28:57 PST 2005


Hello there,

I'm trying to get a Dell 720 USB inkjet printer working on FreeBSD, but 
don't have much success. The printer can be made to work on Linux using 
a Lexmark z600 driver for CUPS, which is a Linux binary and an 
accompanying .ppd-file. Using the Linux binary on FreeBSD doesn't seem 
to work: the printing process stalls and can't be killed (hangs in 
'D'/uninterruptable-state after a SIGKILL).

I've recompiled a kernel with USB_DEBUG turned on and got the following 
debugging output (hw.usb.debug=1, hw.usb.ulpt.debug=1, hw.usb.uhub.debug=1):

uhub_explore: status change hub=1 port=2
usbd_new_device bus=0xc22a9000 port=2 depth=1 speed=2
usbd_new_device: adding unit addr=3, rev=200, class=0, subclass=0, 
protocol=0, maxpacket=8, len=18, speed=2
usbd_new_device: new dev (addr 3), dev=0xc2c45c00, parent=0xc2360900
usbd_probe_and_attach: trying device specific drivers
usbd_probe_and_attach: no device specific driver found
usbd_probe_and_attach: looping over 1 configurations
usbd_set_config_index: status=0x0001, error=NORMAL_COMPLETION
usbd_set_config_index: (addr 1) cno=3 attr=0xc0, selfpowered=1, power=4
usbd_set_config_index: set config 1
ulpt0: Dell Dell Photo Printer 720, rev 2.00/1.00, addr 3, iclass 7/1
ulpt0: using bi-directional mode
ulptopen: flags=0x0
usbd_do_request: status = 0x0000
ulpt_open: open input pipe
ulpt_open: start read callout
ulptopen: done, error=0
ulptread
usbd_bulk_transfer: error=13
ulptread: error=13
ulptread

This is after a clean boot with the printer detached, then turning 
debugging on, attaching the printer and starting a print job.

After trying to kill the process, the following is logged:
usbd_bulk_transfer: tsleep=-1


Can anyone shed some light on this? Can /dev/ulpt* be used with Linux 
binaries at all, or should I write a wrapper or such?

-- 
Pieter


More information about the freebsd-emulation mailing list