From owner-freebsd-hackers Sat Apr 22 15:31: 6 2000 Delivered-To: freebsd-hackers@freebsd.org Received: from moffetimages.com (alar.scruz.predictive.com [207.251.1.130]) by hub.freebsd.org (Postfix) with ESMTP id 15D9737B89E for ; Sat, 22 Apr 2000 15:31:02 -0700 (PDT) (envelope-from brianm@moffetimages.com) Received: (from brianm@localhost) by moffetimages.com (8.9.3/8.9.3) id PAA00767 for hackers@freebsd.org; Sat, 22 Apr 2000 15:30:58 -0700 (PDT) (envelope-from brianm) Date: Sat, 22 Apr 2000 15:30:58 -0700 (PDT) From: "Brian D. Moffet" Message-Id: <200004222230.PAA00767@moffetimages.com> To: hackers@freebsd.org Subject: Okay, I'm baffled. (printer init problems.) Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG I send this to the hackers list because it seems to be well beyond the questions list.. If I was wrong, I apologize. My system, or parts of the dmesg output as preface: FreeBSD 3.3-RELEASE #41: Sat Apr 22 15:05:32 PDT 2000 CPU: Celeron (400.91-MHz 686-class CPU) ppc0 at 0x378 irq 7 flags 0x40 on isa ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/16 bytes threshold ppb0: IEEE1284 device found /NIBBLE/ECP Probing for PnP devices on ppbus0: ppbus0: MLC,PCL,PML lpt0: on ppbus 0 lpt0: Interrupt-driven port ppi0: on ppbus 0 I have a HP-694C on my parallel port, and when printing large printjobs from a windows box to Samba, the last part of the printout is cut off. (of a 4 page printout, 3.3 pages will be printed and the printer will sound like it initialized right at 3.3 pages.) I have mx=0 in the printcap file. I put in a filter which sleeps after the print job is finished, and that delays the cut off point, so it is not a file size problem. I would rather not put in a sleep of 120 seconds after each print job to allow the printer buffer to clear. Now many years ago, (like 10) I ran across a similar problem in SCO Unix, which was caused by the parallel driver sending a printer INIT to the controller port. We fixed that problem by on initializing the printer on boot up, not on open or close. The problem was that the init would cause the printer to clear the internal buffer, and thus it would lose the data that it had accepted, but not printed. I noticed in the lpt.c driver in ppbus that a LPT_NINIT is sent to the control port in lptattach, lptopen, and lptclose. So, I modified it so that it was only done in the lptattach routine. Unfortunately, this did not solve the problem. I did verify that I was actually using that driver by putting in a kernel printf in lptclose(). Any suggestions? Am I missing something in the way that the ppbus driver works, or the parallel port/driver? Has anyone else already solved this problem? I looked in the various FAQs, archives, etc... But I only found reference to the mx variable in printcap. Thanks very much Brian Moffet To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message