Date: Mon, 22 Jan 2001 14:45:39 +0100 (MET) From: "Wilhelm B. Kloke" <wb@vestein.arb-phys.uni-dortmund.de> To: FreeBSD-gnats-submit@freebsd.org Subject: kern/24528: Bad tracking of Modem status Message-ID: <200101221345.OAA36440@yorikke.arb-phys.uni-dortmund.de>
next in thread | raw e-mail | index | archive | help
>Number: 24528 >Category: kern >Synopsis: Bad tracking of Modem status >Confidential: yes >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Mon Jan 22 05:50:00 PST 2001 >Closed-Date: >Last-Modified: >Originator: Wilhelm B. Kloke >Release: FreeBSD 4.0-STABLE i386 >Organization: >Environment: FreeBSD 4.0-STABLE #6: Mon Jul 10 19:48:43 MET DST 2000 wb@wbk1:/usr/src-4.0/sys/compile/WBK Timecounter "i8254" frequency 1193182 Hz CPU: AMD-K6(tm) 3D processor (501.14-MHz 586-class CPU) Origin = "AuthenticAMD" Id = 0x58c Stepping = 12 Features=0x8021bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,PGE,MMX> AMD Features=0x80000800<SYSCALL,3DNow!> real memory = 67043328 (65472K bytes) avail memory = 61763584 (60316K bytes) Preloaded elf kernel "kernel" at 0xc0371000. md0: Malloc disk npx0: <math processor> on motherboard npx0: INT 16 interface pcib0: <Host to PCI bridge> on motherboard pci0: <PCI bus> on pcib0 pcib2: <VIA 82C598MVP (Apollo MVP3) PCI-PCI (AGP) bridge> at device 1.0 on pci0 pci1: <PCI bus> on pcib2 pci1: <ATI Mach64-GM graphics accelerator> at 0.0 isab0: <VIA 82C596B PCI-ISA bridge> at device 7.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <VIA 82C596 ATA33 controller> port 0xd000-0xd00f at device 7.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 pci0: <VIA 83C572 USB controller> at 7.2 irq 11 pcm0: <AudioPCI ES1371> port 0xd800-0xd83f irq 10 at device 8.0 on pci0 pci0: <unknown card> (vendor=0x109e, dev=0x036e) at 9.0 irq 12 pci0: <unknown card> (vendor=0x109e, dev=0x0878) at 9.1 irq 12 amd0: <Tekram DC390(T)/AMD53c974 SCSI Host Adapter> port 0xdc00-0xdc7f i rq 9 at device 10.0 on pci0 amd0: driver is using old-style compatability shims ed0: <NE2000 PCI Ethernet (RealTek 8029)> port 0xe000-0xe01f irq 9 at de vice 11.0 on pci0 ed0: supplying EUI64: 00:48:45:ff:fe:00:96:87 ed0: address 00:48:45:00:96:87, type NE2000 (16 bit) pcib1: <Host to PCI bridge> on motherboard pci2: <PCI bus> on pcib1 fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa 0 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> irq 1 on atkbdc0 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa 0 sc0: <System console> on isa0 sc0: VGA <16 virtual consoles, flags=0x200> 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: <Parallel port> at port 0x378-0x37f irq 7 on isa0 ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/16 bytes threshold ppi0: <Parallel I/O> on ppbus0 >Description: I tried to adapt a Linux application for model railroads (Digital Direct for Linux). I got no acceptable acknowledge from the NMRA-programmer application. AFAIS this is due to the following defect in the handling of Modem status signals: The input signal is on RI. After triggering the corresponding status bit further reads via TIOCMGET don't reflect the state of the line until output occurs. >How-To-Repeat: Use kermit and 'show modem'. RI goes to off only after output (in connect state e.g.). >Fix: IMHO TIOCMGET should update the internal copy of MSR, at least after reading. Thus the next TIOCMGET gets the right info. I saw that sio is heavily affected by current development. So I just fix it at home, and give you just the information. Further comments on the 16550A driver. I feel that there are reasons to relieve unnecessary restrictions on the baud rates. The hardware is able to produce at least 3 more useful Baud rates: 1. (and least) NMRA timing needs 58us pulses resulting in ~17000Bd, 2. The bus of my NMRA-DCC is on 62500 Bd, 3. (probably the only important) MIDI is on 31250Bd. You could just accept any Bd rate not exceeding some upper limit for this device. >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200101221345.OAA36440>