From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30828 invoked by alias); 12 Jun 2012 13:12:42 -0000 Received: (qmail 30761 invoked by uid 22791); 12 Jun 2012 13:12:40 -0000 X-SWARE-Spam-Status: No, hits=-2.9 required=5.0 tests=AWL,BAYES_00,KHOP_THREADED,SPF_HELO_PASS,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from www.meduna.org (HELO meduna.org) (92.240.244.38) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 12 Jun 2012 13:12:27 +0000 Received: from dial-95-105-165-4-orange.orange.sk ([95.105.165.4] helo=[192.168.130.22]) by meduna.org with esmtpsa (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.72) (envelope-from ) id 1SeQtQ-0001lh-7D for ecos-devel@ecos.sourceware.org; Tue, 12 Jun 2012 15:12:24 +0200 Message-ID: <4FD7402F.2040602@meduna.org> Date: Tue, 12 Jun 2012 13:12:00 -0000 From: Stanislav Meduna User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20120428 Thunderbird/12.0.1 MIME-Version: 1.0 To: ecos-devel@ecos.sourceware.org Subject: Re: Handling RTS with an UART that doesn't directly drives the RTS pin References: <4FD7374A.1090602@kuantic.com> In-Reply-To: <4FD7374A.1090602@kuantic.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Authenticated-User: stano@meduna.org X-Authenticator: dovecot_plain X-Spam-Score: -6.9 X-Spam-Score-Int: -68 X-Exim-Version: 4.72 (build at 12-May-2011 18:13:45) X-Date: 2012-06-12 15:12:24 X-Connected-IP: 95.105.165.4:54085 X-Message-Linecount: 32 X-Body-Linecount: 18 X-Message-Size: 1239 X-Body-Size: 701 X-Received-Count: 1 X-Recipient-Count: 1 X-Local-Recipient-Count: 1 X-Local-Recipient-Defer-Count: 0 X-Local-Recipient-Fail-Count: 0 X-IsSubscribed: yes Mailing-List: contact ecos-devel-help@ecos.sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: ecos-devel-owner@ecos.sourceware.org X-SW-Source: 2012-06/txt/msg00001.txt.bz2 On 12.06.2012 14:34, Bernard Fouché wrote: > I think the change is to be done in serial.c, since it's the part of the > code that takes the decision to call throttle_rx() or restart_rx() Is this the correct place at all? As far as I can tell the flow-control here depends on channel buffer watermarks. It does not protect you from overflowing the 16x5x FIFO; it does not even know how deep it is. I do not know what UART speeds, UART FIFO sizes and maximum guaranteed DSR latency do you have in your system, but in case you want to protect against UART FIFO overflow I'm afraid the only reliable way is to modify the low level driver's ISR. Regards -- Stano