From owner-freebsd-questions@FreeBSD.ORG Fri Aug 5 20:31:21 2011 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8D161106564A for ; Fri, 5 Aug 2011 20:31:21 +0000 (UTC) (envelope-from perquam@gmail.com) Received: from mail-gy0-f182.google.com (mail-gy0-f182.google.com [209.85.160.182]) by mx1.freebsd.org (Postfix) with ESMTP id 4F26C8FC15 for ; Fri, 5 Aug 2011 20:31:21 +0000 (UTC) Received: by gyd10 with SMTP id 10so889003gyd.13 for ; Fri, 05 Aug 2011 13:31:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:cc:content-type; bh=wEJkFOXx5cdyHJy6HiTNvOHbuMxKCq97EYjJGjjkxhg=; b=L7aSRxc2p8ODqpZQeg70dYKNBKI++7zTzpYoMLw+bv5IiGZ58zAQqgxZl0YC8WSAtL Vlldwb6DWP1QlLWbAH4CHJKS9JXlCcMCPRRcldfaAmN+ursSj7FnRBiATzQ8WKPtvi+Y UXyXz7Hn2FhRf1PtlbLiFgh8pHC8k6GmYF7Eo= MIME-Version: 1.0 Received: by 10.150.72.29 with SMTP id u29mr595159yba.235.1312574466846; Fri, 05 Aug 2011 13:01:06 -0700 (PDT) Received: by 10.150.12.15 with HTTP; Fri, 5 Aug 2011 13:01:06 -0700 (PDT) Date: Fri, 5 Aug 2011 22:01:06 +0200 Message-ID: From: =?ISO-8859-2?Q?Pawe=B3_Michalicki?= To: freebsd-questions@freebsd.org X-Mailman-Approved-At: Fri, 05 Aug 2011 21:42:54 +0000 Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: =?ISO-8859-2?Q?Pawe=B3_Michalicki?= Subject: TIOCGSERIAL? X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 05 Aug 2011 20:31:21 -0000 Hi First, apologies if this is the wrong group to ask my question. I looked through all the group titles and this one looked suitable. The question is related to programming under FreeBSD. I have a certain device which can be hooked to a PC via RS232 connection. Since my PC does not have a true COM port, I am using an USB<->COM converter, which contains the FTDI chip. I wrote a program to handle the communications via the /dev/cuaU0, and all this works very well. The device at the other end has an UART which is capable of wild variety of baudrates, including standard rates of 19200, 38400 and 57600 bits per second. In my program on FreeBSD I am using that last baudrate. However, the "wild variety of baudrates" which can be used includes also such baudrates as 88, 98, 110 kbps and the highest possible one is 126 kbps (note: no 115,2 kbps). I'd like to use 126 kbps instead of 57,6 kbps. Now, it is possible on Linux using ioctl(TIOCGSERIAL) and ioctl(TIOCSSERIAL). As I understand, using these you can very precisely control the serial baudrate on COM ports (or at least on USB ports with an USB<->COM converter hooked up). Sadly, these do not seem available on FreeBSD. My question is: is there any equivalent of TIOCGSERIAL/TIOCSSERIAL available on FreeBSD, or maybe there is some special driver I could load and use? As I've written above, the USB<-> COM converter I use is the FTDI chip, but the uftdi module does not seem to provide such functionality. I do not want to write my own kernel module or FTDI device driver just for that purpose. The system is FreeBSD 6.4 but (judging from grep -r TIOCGSERIAL on /usr/include) this applies to 8.0 as well. Thanks!