From owner-freebsd-hardware@FreeBSD.ORG Wed Feb 22 19:27:23 2012 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 672761065677 for ; Wed, 22 Feb 2012 19:27:23 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id 277408FC14 for ; Wed, 22 Feb 2012 19:27:23 +0000 (UTC) Received: from bigwig.baldwin.cx (bigwig.baldwin.cx [96.47.65.170]) by cyrus.watson.org (Postfix) with ESMTPSA id CC8AC46B39; Wed, 22 Feb 2012 14:27:22 -0500 (EST) Received: from jhbbsd.localnet (unknown [209.249.190.124]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id 3EF8BB955; Wed, 22 Feb 2012 14:27:22 -0500 (EST) From: John Baldwin To: freebsd-hardware@freebsd.org Date: Wed, 22 Feb 2012 09:57:55 -0500 User-Agent: KMail/1.13.5 (FreeBSD/8.2-CBSD-20110714-p10; KDE/4.5.5; amd64; ; ) References: <20120220220237.7474cc1e@atom.dino.sk> <20120221231535.641419b1@atom.dino.sk> <20120222135843.7b3693ff@atom.dino.sk> In-Reply-To: <20120222135843.7b3693ff@atom.dino.sk> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <201202220957.56016.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Wed, 22 Feb 2012 14:27:22 -0500 (EST) Cc: Milan Obuch Subject: Re: PER-C40C minipci card under FreeBSD X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 22 Feb 2012 19:27:23 -0000 On Wednesday, February 22, 2012 7:58:43 am Milan Obuch wrote: > On Tue, 21 Feb 2012 23:15:35 +0100 > Milan Obuch wrote: > > [ snip ] > > > After consulting datasheet, I found this part of pucdata.c looks > > erroneously to me: > > > > { 0x1415, 0x9511, 0xffff, 0, > > "Oxford Semiconductor OX9160/OX16PCI954 UARTs (function 1)", > > DEFAULT_RCLK, > > PUC_PORT_4S, 0x10, 0, 8, > > }, > > > > Function 1 is actually local bus/parallel port, and this could really > > be the reason for hang I observed. Comparing what I found in datasheet > > with other entries I found replacing above entry with > > > > { 0x1415, 0x9505, 0xffff, 0, > > "Oxford Semiconductor OXuPCI952 UARTs (function 0)", > > DEFAULT_RCLK, > > PUC_PORT_2S, 0x10, 4, 0, > > }, > > > > makes me happier, I see some well looking lines in console log: > > > > puc0: port > > 0x1400-0x1407,0x1440-0x1447,0x1480-0x1487,0x14c0-0x14c7,0x1800-0x181f > > mem 0xe0040000-0xe0040fff irq 9 at device 12.00 > > uart1: <16550 or compatible> at port 1 on puc0 > > uart1: fast interrupt > > uart2: <16550 or compatible> at port 2 on puc0 > > uart2: fast interrupt > > > > [ snip ] > > This is final patch which works for me: > > --- pucdata.c.orig 2012-02-21 16:47:33.000000000 +0100 > +++ pucdata.c.patched 2012-02-22 12:10:44.000000000 +0100 > @@ -696,6 +696,12 @@ > PUC_PORT_4S, 0x10, 0, 8, > }, > > + { 0x1415, 0x9505, 0xffff, 0, > + "Oxford Semiconductor OXuPCI952 UARTs (function 0)", > + DEFAULT_RCLK * 8, > + PUC_PORT_2S, 0x10, 4, 0, > + }, > + > { 0x1415, 0x950a, 0x131f, 0x2030, > "SIIG Cyber 2S PCIe", > DEFAULT_RCLK * 10, > @@ -708,11 +714,13 @@ > PUC_PORT_4S, 0x10, 0, 8, > }, > > +#if 0 > { 0x1415, 0x9511, 0xffff, 0, > "Oxford Semiconductor OX9160/OX16PCI954 UARTs (function 1)", > DEFAULT_RCLK, > PUC_PORT_4S, 0x10, 0, 8, > }, > +#endif > > { 0x1415, 0x9521, 0xffff, 0, > "Oxford Semiconductor OX16PCI952 UARTs", > > pciconf -lv tells following about card functions: > > puc0@pci0:0:12:0: class=0x070006 card=0x00001415 chip=0x95051415 rev=0x01 hdr=0x00 > vendor = 'Oxford Semiconductor Ltd' > device = 'OXuPCI952 (Dual 16C950 UART)' > class = simple comms > subclass = UART > none1@pci0:0:12:1: class=0x068000 card=0x00001415 chip=0x95111415 rev=0x01 hdr=0x00 > vendor = 'Oxford Semiconductor Ltd' > device = 'OX16PCI954 (Quad 16950 UART) function 1 (8bit bus)' > class = bridge > > This patch works for me on both 10-CURRENT and 8.3-PRERELEASE. Hmm, ok. Unfortunately there are other devices that need the commented out entry. I've sent a followup to that original PR to see if that device has a subvendor device ID. -- John Baldwin