From owner-freebsd-hardware@FreeBSD.ORG Wed Feb 22 12:58:57 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 E8D721065670 for ; Wed, 22 Feb 2012 12:58:56 +0000 (UTC) (envelope-from freebsd-hardware@dino.sk) Received: from loki.netlab.sk (ns3.netlab.sk [84.245.65.11]) by mx1.freebsd.org (Postfix) with ESMTP id 558618FC14 for ; Wed, 22 Feb 2012 12:58:55 +0000 (UTC) Received: from atom.dino.sk (fw1.dino.sk [84.245.95.252]) (AUTH: LOGIN milan, TLS: TLSv1/SSLv3,128bits,AES128-SHA) by loki.netlab.sk with ESMTPSA; Wed, 22 Feb 2012 13:59:35 +0100 id 00033C0D.4F44E6B7.00004270 Date: Wed, 22 Feb 2012 13:58:43 +0100 From: Milan Obuch To: freebsd-hardware@freebsd.org Message-ID: <20120222135843.7b3693ff@atom.dino.sk> In-Reply-To: <20120221231535.641419b1@atom.dino.sk> References: <20120220220237.7474cc1e@atom.dino.sk> <20120221124333.0e8a9763@atom.dino.sk> <20120221231535.641419b1@atom.dino.sk> X-Mailer: Claws Mail 3.8.0 (GTK+ 2.24.6; amd64-portbld-freebsd8.2) Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAGFBMVEX+/v7++v6YOTrq8PCcuIX989UvOSj++v0BNCbpAAAAB3RJTUUHsQwfFzs7RBhzUQAAAhJJREFUOI1dU8GOqzAMNKIoV1bvwD1i0ysqrHplIdBrVSX7ATSbd03VVvn9tQNtQy0hjAdn7LED4AAcPtWm9RV+MPSfxhBLx9ajd6X/ngB6/mTwnRSZua7i7Ca+0ctZKo4Qmz+JY13X6I3nFZBxIYW1PbgfQ5RP8g0XlltEWGf3cV03joYpRnFbvYDKbXjZlXyyhEZA4lI+cN3NaVXE4VKjSwTExO10eTEkkJVqIAD5z0nUBQJluQDRSQjcrBiHAJxZlAH5CUMBMC7OcJ4LMQNnxhZ1HYPscMc6J4UlWRMNwzOpCcAHKSICd1EDn83abdREIbXsHkD1OinP1aCUCOEVRaa1lMcvywUWdYgk13JQUpYNKmvXQ8Kw5ML9YI5h8SakctBc7E/IYuLhYd/zZIk+1gM1vNweQBvHE0j+oYah3sMqAytQYlZk6+ANaaawJdu3OFzYGMZ3iGpa3qMlq9ZH0VZTgrCtw/ngdYkEIIpSbP1bWQAdFdX9vocBdkH2qVjVmuMu3gI5rjs814EUdrCZgWlPaxZZ3RiLFUtr+ud0PXwp2dnQSNXgePt6AZpBj6UMJ7VQkzN4utVeaSW1Dhn/kblGrKeMvNGnzwX4zuEDarYz1KdPtR60Gul0Gued+515SJXhCsl+Tx/3kY/UDvicPll9mfu50t3tvQ/thZpJYgeuwdSKNJ6tCD98MCgoxLDaPxbwqqwPWaWiAAAAAElFTkSuQmCC X-Face: ak5rwz4-aUa>hPFZlcg,bXxn.(TN}e9DGFrKU\.i_'B[&5=pAd9o"j)5VSUYW:BRQG#^42Ev$Il|; Ztn=,C X-Operating-System: FreeBSD/amd64 8.2-STABLE Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit 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 12:58:57 -0000 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. Regards, Milan