From owner-freebsd-current Fri Nov 22 18:56:24 2002 Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8749237B401 for ; Fri, 22 Nov 2002 18:56:22 -0800 (PST) Received: from scl8owa02.int.exodus.net (scl8out02.exodus.net [66.35.230.242]) by mx1.FreeBSD.org (Postfix) with ESMTP id B9A6643E91 for ; Fri, 22 Nov 2002 18:56:21 -0800 (PST) (envelope-from Maksim.Yevmenkin@cw.com) Received: from SJDCEX01.int.exodus.net ([165.193.27.80]) by scl8owa02.int.exodus.net with Microsoft SMTPSVC(5.0.2195.5329); Fri, 22 Nov 2002 18:56:21 -0800 X-MimeOLE: Produced By Microsoft Exchange V6.0.6249.0 content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable Subject: RE: Bluetooth questions Date: Fri, 22 Nov 2002 18:56:21 -0800 Message-ID: <45258A4365C6B24A9832BFE224837D552B1264@sjdcex01.int.exodus.net> X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Bluetooth questions Thread-Index: AcKSmFvtpmBTUx1HRRO2y5e7PvATrgAAIuUe From: "Maksim Yevmenkin" To: "M. Warner Losh" Cc: , , X-OriginalArrivalTime: 23 Nov 2002 02:56:21.0605 (UTC) FILETIME=[E72FC950:01C2929B] Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Warner, > In message: <3DDD57A6.7712B1C5@exodus.net> > Maksim Yevmenkin writes: > : PCCARD: 3COM and Xircom(*). Xircom card is a 16550A > : UART based card and may not work very well because of > : "sio" driver issues. The same is true for any 16550A > : UART based card. However if you can convince your > : system give separate IRQ for PCCARD and "sio" driver > : uses fast interrupts then this card might work well > : for you. I managed to do so on my not so -current > : and OLDCARD. >=20 > What's the issue with non-fast sio interrupts? It works great for me > on current with my 56k modem, modulo the message on boot about using > non-fast interrupt handler. Right now ISA interrupts aren't even > supported in NEWCARD, nor will they be unless there's some real issue > here... I see a lot of "silo overflow" errors under moderate load. As a result bytes get dropped on the floor. The Bluetooth spec defines extremely simple serial protocol (H4). It simply cannot tolerate UARTs that drop bytes. If at least one byte gets dropped the entire HCI frame is lost. If HCI frame gets dropped then "out of sync" condition exist and all bets are off. The only way to get back "in sync" is to send Reset to the device. After Reset device goes into standby state and all operational state is lost.=20 In some cases it is possible to get back "in sync" by just ignoring "broken" HCI frame and trying to pick up the next one. This might work for HCI data frames (however upper layers may not like it), but it does not work for HCI event frames, especially for Number_Of_Completed_Packets event. This event is used for flow control. The stack should not send new packets unless device told it to. So if NOCP event gets dropped the connection is stuck. Thanks, max To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message