Date: Tue, 05 Sep 2000 19:18:07 -0400 From: amg <ursa@cris.com> To: Bugs@FreeBSD.org Subject: kernel lpt? support Message-ID: <39B57F2F.167EB0E7@cris.com>
next in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
Gentlemen:
Version: 4.1 CDROM
Hardwar: IBM PPro 200MHz 64MB Ram
Symptomes: I am unable to get printer support (lpt?)
in any kernel that I build. FYI, there
was no printer support in the GENERIC kernel.
The criterion for "no support", that I am
using, is that there is not mention of any
lpt? in the output of dmesg.
My actions: I have followed the procedure, in the
handbook, for building printer support
into a custom kernel.
Additionally: I know that its not the hardware, as
I just recently converted this node
from 2.2.8, where printing worked fine,
to 4.1.
Attached: KERNEL_MAX1 - the kernel config file for
the node in question.
!! bugs.html - email between myself and
marko@FreeBSD.org, where he points
out the code snippet that generates
the error msg - pfc.c, line 157.
dmesg.out - output of dmesg
Conclusion: I believe that the problem is not of my
doing.
Any help you could lend in this matter
will be appreciated.
Addendium: I just spoke with another programmer who
has downloaded 4.1-Install.iso and his
GENERIC kernel does have lpt support.
Have some bad disks escaped? If so, how
do I go about getting a good disk?
august
ursa@cris.com
[-- Attachment #2 --]
#
# GENERIC -- Generic kernel configuration file for FreeBSD/i386
#
# For more information on this file, please read the handbook section on
# Kernel Configuration Files:
#
# http://www.FreeBSD.org/handbook/kernelconfig-config.html
#
# The handbook is also available locally in /usr/share/doc/handbook
# if you've installed the doc distribution, otherwise always see the
# FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
# latest information.
#
# An exhaustive list of options and more detailed explanations of the
# device lines is also present in the ./LINT configuration file. If you are
# in doubt as to the purpose or necessity of a line, check first in LINT.
#
# $FreeBSD: src/sys/i386/conf/GENERIC,v 1.246.2.8 2000/07/20 02:51:02 msmith Exp $
machine i386
##cpu I386_CPU
##cpu I486_CPU
##cpu I586_CPU
cpu I686_CPU
ident KERNEL_MAX1
maxusers 8
#makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
##options MATH_EMULATE #Support for x87 emulation
options INET #InterNETworking
options INET6 #IPv6 communications protocols
options FFS #Berkeley Fast Filesystem
options FFS_ROOT #FFS usable as root device [keep this!]
options SOFTUPDATES #Enable FFS soft updates support
options MFS #Memory Filesystem
##options MD_ROOT #MD is a potential root device
options NFS #Network Filesystem
options NFS_ROOT #NFS usable as root device, NFS required
options MSDOSFS #MSDOS Filesystem
options CD9660 #ISO 9660 Filesystem
options CD9660_ROOT #CD-ROM usable as root, CD9660 required
options EXT2FS #linux Filesystem
options PROCFS #Process filesystem
options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!]
options COMPAT_LINUX #Run linux binaries
##options SCSI_DELAY=15000 #Delay (in ms) before probing SCSI
options SCSI_DELAY=8000 #Delay (in ms) before probing SCSI
options UCONSOLE #Allow users to grab the console
options USERCONFIG #boot -c editor
options VISUAL_USERCONFIG #visual boot -c editor
options KTRACE #ktrace(1) support
options SYSVSHM #SYSV-style shared memory
options SYSVMSG #SYSV-style message queues
options SYSVSEM #SYSV-style semaphores
##options P1003_1B #Posix P1003_1B real-time extensions
options _KPOSIX_PRIORITY_SCHEDULING
options ICMP_BANDLIM #Rate limit bad replies
options KBD_INSTALL_CDEV #Install a CDEV entry in /dev
options VESA #Suport for VESA video modes
options SC_HISTORY_SIZE=200 #Number of history buffer lines
# To make an SMP kernel, the next two are needed
#options SMP # Symmetric MultiProcessor Kernel
#options APIC_IO # Symmetric (APIC) I/O
# Optionally these may need tweaking, (defaults shown):
#options NCPU=2 # number of CPUs
#options NBUS=4 # number of busses
#options NAPIC=1 # number of IO APICs
#options NINTR=24 # number of INTs
device isa
device eisa
device pci
# Floppy drives
device fdc0 at isa? port IO_FD1 irq 6 drq 2
device fd0 at fdc0 drive 0
device fd1 at fdc0 drive 1
# ATA and ATAPI devices
##device ata0 at isa? port IO_WD1 irq 14
##device ata1 at isa? port IO_WD2 irq 15
device ata
##device atadisk # ATA disk drives
##device atapicd # ATAPI CDROM drives
##device atapifd # ATAPI floppy drives
##device atapist # ATAPI tape drives
##options ATA_STATIC_ID #Static device numbering
#options ATA_ENABLE_ATAPI_DMA #Enable DMA on ATAPI devices
# SCSI Controllers
##device ahb # EISA AHA1742 family
device ahc # AHA2940 and onboard AIC7xxx devices
##device amd # AMD 53C974 (Teckram DC-390(T))
##device dpt # DPT Smartcache - See LINT for options!
##device isp # Qlogic family
##device ncr # NCR/Symbios Logic
##device sym # NCR/Symbios Logic (newer chipsets)
##options SYM_SETUP_LP_PROBE_MAP=0x40
# Allow ncr to attach legacy NCR devices when
# both sym and ncr are configured
##device adv0 at isa?
##device adw
##device bt0 at isa?
##device aha0 at isa?
##device aic0 at isa?
# SCSI peripherals
device scbus # SCSI bus (required)
device da # Direct Access (disks)
device sa # Sequential Access (tape etc)
device cd # CD
device pass # Passthrough device (direct SCSI access)
# RAID controllers
##device ida # Compaq Smart RAID
##device amr # AMI MegaRAID
##device mlx # Mylex DAC960 family
##device twe # 3ware Escalade
# atkbdc0 controls both the keyboard and the PS/2 mouse
device atkbdc0 at isa? port IO_KBD
device atkbd0 at atkbdc? irq 1 flags 0x1
device psm0 at atkbdc? irq 12
device vga0 at isa?
# splash screen/screen saver
pseudo-device splash
# syscons is the default console driver, resembling an SCO console
device sc0 at isa? flags 0x100
# Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver
#device vt0 at isa?
#options XSERVER # support for X server on a vt console
#options FAT_CURSOR # start with block cursor
# If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines
#options PCVT_SCANSET=2 # IBM keyboards are non-std
# Floating point support - do not disable.
device npx0 at nexus? port IO_NPX irq 13
# Power management support (see LINT for more options)
##device apm0 at nexus? disable flags 0x20 # Advanced Power Mgmt
# PCCARD (PCMCIA) support
##device card
##device pcic0 at isa? irq 10 port 0x3e0 iomem 0xd0000
##device pcic1 at isa? irq 11 port 0x3e2 iomem 0xd4000 disable
# Serial (COM) ports
device sio0 at isa? port IO_COM1 flags 0x10 irq 4
device sio1 at isa? port IO_COM2 irq 3
##device sio2 at isa? disable port IO_COM3 irq 5
##device sio3 at isa? disable port IO_COM4 irq 9
# Parallel port
device ppc0 at isa? irq 7
device ppbus # Parallel port bus (required)
device lpt # Printer
##device lpt0 at isa? port? tty irq 7 vector lptintr
device ppi # Parallel port interface device
##device plip # TCP/IP over parallel
#device vpo # Requires scbus and da
# PCI Ethernet NICs.
##device de # DEC/Intel DC21x4x (``Tulip'')
##device fxp # Intel EtherExpress PRO/100B (82557, 82558)
##device tx # SMC 9432TX (83c170 ``EPIC'')
##device vx # 3Com 3c590, 3c595 (``Vortex'')
##device wx # Intel Gigabit Ethernet Card (``Wiseman'')
# PCI Ethernet NICs that use the common MII bus controller code.
##device miibus # MII bus support
##device dc # DEC/Intel 21143 and various workalikes
##device rl # RealTek 8129/8139
##device sf # Adaptec AIC-6915 (``Starfire'')
##device sis # Silicon Integrated Systems SiS 900/SiS 7016
##device ste # Sundance ST201 (D-Link DFE-550TX)
##device tl # Texas Instruments ThunderLAN
##device vr # VIA Rhine, Rhine II
##device wb # Winbond W89C840F
##device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'')
# ISA Ethernet NICs.
device ed0 at isa? port 0x300 irq 5 iomem 0xd8000
##device ed0 at isa? port 0x280 irq 10 iomem 0xd8000
##device ex
##device ep
# WaveLAN/IEEE 802.11 wireless NICs. Note: the WaveLAN/IEEE really
# exists only as a PCMCIA device, so there is no ISA attatement needed
# and resources will always be dynamically assigned by the pccard code.
##device wi
# Aironet 4500/4800 802.11 wireless NICs. Note: the declaration below will
# work for PCMCIA and PCI cards, as well as ISA cards set to ISA PnP
# mode (the factory default). If you set the switches on your ISA
# card for a manually chosen I/O address and IRQ, you must specify
# those paremeters here.
##device an
# Xircom Ethernet
##device xe
# The probe order of these is presently determined by i386/isa/isa_compat.c.
##device ie0 at isa? port 0x300 irq 10 iomem 0xd0000
##device fe0 at isa? port 0x300
##device le0 at isa? port 0x300 irq 5 iomem 0xd0000
##device lnc0 at isa? port 0x280 irq 10 drq 0
##device cs0 at isa? port 0x300
##device sn0 at isa? port 0x300 irq 10
# Pseudo devices - the number indicates how many units to allocated.
pseudo-device loop # Network loopback
pseudo-device ether # Ethernet support
##pseudo-device sl 1 # Kernel SLIP
pseudo-device ppp 1 # Kernel PPP
pseudo-device tun # Packet tunnel.
pseudo-device pty # Pseudo-ttys (telnet etc)
pseudo-device md # Memory "disks"
pseudo-device gzip # Exec gzipped a.out's
pseudo-device gif 4 # IPv6 and IPv4 tunneling
pseudo-device faith 1 # IPv6-to-IPv4 relaying (translation)
# The `bpf' pseudo-device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
pseudo-device bpf #Berkeley packet filter
# USB support
device uhci # UHCI PCI->USB interface
device ohci # OHCI PCI->USB interface
device usb # USB Bus (required)
device ugen # Generic
device uhid # "Human Interface Devices"
device umass # Disks/Mass storage - Requires scbus and da
device ukbd # Keyboard
device ulpt # Printer
device ums # Mouse
# USB Ethernet, requires mii
##device aue # ADMtek USB ethernet
##device cue # CATC USB ethernet
##device kue # Kawasaki LSI USB ethernet
[-- Attachment #3 --]
<BASE HREF="/usr/home/amg/bugs.html">
>
> On Mon, Sep 04, 2000 at 04:29:03PM -0400, amg wrote:
> >
> > Mark:
> >
> > Thanks for your prompt reply.
> > I changed the config file accordingly,
> > however, there still is not kernel support
> > for the lpt? device. Any other ideas??
> >
>
> Not really, sorry. The error you see at boot:
>
> ppc0: cannot reserve I/O port range
>
> comes from /usr/src/sys/i386/isa/pcf.c:157
>
> /* IO port is mandatory */
> pcf->res_ioport = bus_alloc_resource(pcfdev, SYS_RES_IOPORT,
> &pcf->rid_ioport, 0ul, ~0ul,
> IO_PCFSIZE, RF_ACTIVE);
> if (pcf->res_ioport == 0) {
> device_printf(pcfdev, "cannot reserve I/O port range\n");
> goto error;
> }
>
> but as to the cause, especially since it worked in earlier versions
> of FreeBSD, I've no idea.
>
> BTW, I've put -questions back in the Cc:. It's always a good idea not
> to remove the mailing list from the Cc: in case the person who you
> replied to is unable to solve your problem, as is the case here.
> Others will assume that you have fixed the problem if they don't see
> the messages.
>
> Hopefully someone else will jump in and help out here.
>
> >
> > august
> > ursa@cris.com
> >
> >
> >
> >
> >
> > Mark Ovens wrote:
> > >
> > > On Mon, Sep 04, 2000 at 01:23:45PM -0400, amg wrote:
> > > > Questions:
> > > >
> > > > Version: FreeBSD 4.1 CDROM
> > > >
> > > > Hardwar: IBM PPro 200MHz 64MB Ram
> > > >
> > > > Symptomes: Printer not functioning
> > > >
> > > > Attached: dmesg.out - output of dmesg
> > > > KERNEL_MAX1 - kernel config file
> > > > dev.files - lpt devices in /dev
> > > >
> > > >
> > > > When I recently switched from 2.2.8 to 4.1, the
> > > > printer no longer prints. When issuing the
> > > > following commands, the following output appears:
> > > >
> > > > "cat myfile > /dev/lpt0" yields:
> > > >
> > > > ksh: cannot create /dev/ltp0: Device not configured
> > > >
> > > > "lpr myfile" produces no error msg to the screen
> > > > but NO printer output either.
> > > >
> > > > As far as I know, I have followd the directions in the
> > > > "handbook".
> > > >
> > > > I see no mention of lpt? in the output of dmesg, which
> > > > leads me to believe that there is not kernel support.
> > > > However, I have added printer support to the kernel
> > > > config file and rebuilt the kernel, twice, with the
> > > > same results, see attached files.
> > > >
> > > > Additionally, there was not support for lpt? in the
> > > > GENERIC kernel.
> > > >
> > > > I'd appreciate any wisdom on this, as I need to be
> > > > able to print any number of files.
> > > >
> > > >
> > > > august
> > > > ursa@cris.com
> > >
> > > [snip]
> > >
> > > >
> > > > # Parallel port
> > > > device ppc0 at isa? irq 7
> > > > device ppbus # Parallel port bus (required)
> > > > device lpt # Printer
> > > > device lpt0 at isa? port? tty irq 7 vector lptintr
> > > > ##device plip # TCP/IP over parallel
> > > > ##device ppi # Parallel port interface device
> > > > #device vpo # Requires scbus and da
> > > >
> > >
> > > Try removing the ``device lpt0'' line and uncommenting the ``device
> > > ppi'' line. Here's what I have in my config file and it works fine (HP
> > > 610C):
> > >
> > > # Parallel port
> > > device ppc0 at isa? irq 7
> > > device ppbus # Parallel port bus (required)
> > > device lpt # Printer
> > > device plip # TCP/IP over parallel
> > > device ppi # Parallel port interface device
> > >
> > > --
> > > 4.4 - The number of the Beastie
> > > ________________________________________________________________
> > > 51.44°N FreeBSD - The Power To Serve http://www.freebsd.org
> > > 2.057°W My Webpage http://ukug.uk.freebsd.org/~mark
> > > mailto:marko@freebsd.org http://www.radan.com
[-- Attachment #4 --]
Copyright (c) 1992-2000 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD 4.1-RELEASE #4: Mon Sep 4 16:03:11 EDT 2000
amg@UrsaMax.Ursa.com:/usr/src/sys/compile/KERNEL_MAX1
Timecounter "i8254" frequency 1193182 Hz
Timecounter "TSC" frequency 199310511 Hz
CPU: Pentium Pro (199.31-MHz 686-class CPU)
Origin = "GenuineIntel" Id = 0x619 Stepping = 9
Features=0xfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV>
real memory = 67108864 (65536K bytes)
config> di pcic0
No such device: pcic0
Invalid command or syntax. Type `?' for help.
config> di sn0
No such device: sn0
Invalid command or syntax. Type `?' for help.
config> di lnc0
No such device: lnc0
Invalid command or syntax. Type `?' for help.
config> di le0
No such device: le0
Invalid command or syntax. Type `?' for help.
config> di ie0
No such device: ie0
Invalid command or syntax. Type `?' for help.
config> di fe0
No such device: fe0
Invalid command or syntax. Type `?' for help.
config> di cs0
No such device: cs0
Invalid command or syntax. Type `?' for help.
config> di bt0
No such device: bt0
Invalid command or syntax. Type `?' for help.
config> di ata1
No such device: ata1
Invalid command or syntax. Type `?' for help.
config> di ata0
No such device: ata0
Invalid command or syntax. Type `?' for help.
config> di aic0
No such device: aic0
Invalid command or syntax. Type `?' for help.
config> di aha0
No such device: aha0
Invalid command or syntax. Type `?' for help.
config> di adv0
No such device: adv0
Invalid command or syntax. Type `?' for help.
config> q
avail memory = 61943808 (60492K bytes)
Preloaded elf kernel "kernel" at 0xc0354000.
Preloaded userconfig_script "/boot/kernel.conf" at 0xc035409c.
VESA: v1.2, 512k memory, flags:0x0, mode table:0xc02f3d74 (1000014)
VESA: Cirrus Logic GD-54xx VGA
Pentium Pro MTRR support enabled
md0: Malloc disk
npx0: <math processor> on motherboard
npx0: INT 16 interface
pcib0: <Host to PCI bridge> on motherboard
pci0: <PCI bus> on pcib0
Correcting Natoma config for non-SMP
Correcting Natoma config for non-SMP
isab0: <Intel 82371SB PCI to ISA bridge> at device 1.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel PIIX3 ATA controller> port 0xfff0-0xffff at device 1.1 on pci0
uhci0: <Intel 82371SB (PIIX3) USB controller> port 0x5400-0x541f irq 15 at device 1.2 on pci0
usb0: <Intel 82371SB (PIIX3) USB controller> on uhci0
usb0: USB revision 1.0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
uhub0: port 1 power on failed, IOERROR
uhub0: port 2 power on failed, IOERROR
pcib1: <DEC 21152 PCI-PCI bridge> at device 2.0 on pci0
pci1: <PCI bus> on pcib1
ahc0: <Adaptec 2940 Ultra SCSI adapter> port 0x5000-0x50ff mem 0x90000000-0x90000fff irq 15 at device 15.0 on pci0
ahc0: aic7880 Wide Channel A, SCSI Id=7, 16/255 SCBs
pci0: <Number Nine Imagine 128 graphics accelerator> at 16.0
fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
psm0: failed to get data.
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
ppc0: cannot reserve I/O port range
ed0 at port 0x300-0x31f iomem 0xd8000 irq 5 on isa0
ed0: address 00:c0:f0:10:de:08, type NE2000 (16 bit)
Waiting 8 seconds for SCSI devices to settle
Mounting root from ufs:/dev/da0s1a
cd0 at ahc0 bus 0 target 4 lun 0
cd0: <MATSHITA CD-R CW-7502 4.17> Removable CD-ROM SCSI-2 device
cd0: 10.000MB/s transfers (10.000MHz, offset 8)
cd0: Attempt to query device size failed: NOT READY, Medium not present - tray closed
da0 at ahc0 bus 0 target 0 lun 0
da0: <IBM DCHS04U 6464> Fixed Direct Access SCSI-2 device
da0: 40.000MB/s transfers (20.000MHz, offset 8, 16bit), Tagged Queueing Enabled
da0: 4303MB (8813870 512 byte sectors: 64H 32S/T 4303C)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?39B57F2F.167EB0E7>
