From owner-freebsd-hackers@FreeBSD.ORG Tue Mar 8 23:25:37 2005 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 21C0A16A4CE for ; Tue, 8 Mar 2005 23:25:37 +0000 (GMT) Received: from duchess.speedfactory.net (duchess.speedfactory.net [66.23.201.84]) by mx1.FreeBSD.org (Postfix) with SMTP id ABBEE43D55 for ; Tue, 8 Mar 2005 23:25:36 +0000 (GMT) (envelope-from ups@tree.com) Received: (qmail 4234 invoked by uid 89); 8 Mar 2005 23:25:35 -0000 Received: from duchess.speedfactory.net (66.23.201.84) by duchess.speedfactory.net with SMTP; 8 Mar 2005 23:25:35 -0000 Received: (qmail 4220 invoked by uid 89); 8 Mar 2005 23:25:34 -0000 Received: from unknown (HELO palm.tree.com) (66.23.216.49) by duchess.speedfactory.net with SMTP; 8 Mar 2005 23:25:34 -0000 Received: from [127.0.0.1] (localhost.tree.com [127.0.0.1]) by palm.tree.com (8.12.10/8.12.10) with ESMTP id j28NPYw6047666; Tue, 8 Mar 2005 18:25:34 -0500 (EST) (envelope-from ups@tree.com) From: Stephan Uphoff To: jtoung@arc.nasa.gov In-Reply-To: <200503081449.32741.jtoung@arc.nasa.gov> References: <200503081404.39320.jtoung@arc.nasa.gov> <200503081449.32741.jtoung@arc.nasa.gov> Content-Type: text/plain Message-Id: <1110324334.29804.7913.camel@palm> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.4.6 Date: Tue, 08 Mar 2005 18:25:34 -0500 Content-Transfer-Encoding: 7bit cc: hackers Subject: Re: send data to serial port from kernel code X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 08 Mar 2005 23:25:37 -0000 On Tue, 2005-03-08 at 17:49, Jerry Toung wrote: > Because all my IP traffic is directed to kernel module I wrote. It appends > some headers after the IP header and when it's done with the specific > processing, the packet can now be sent. > At that point I used to make a call to the ethernet output routine > (*ifp->if_start)() and all is well. > > Today I have a new requirement. I need to send those packets to the first > serial port from the kernel module. > > Still looking for inputs. > Thank you Is it still a legal IP package when you are done with it? Is the framing on the serial protocol specified or can you roll your own? I really would recommend layering/tunneling your protocol on/with PPP to avoid re-inventing the wheel - but if this does not work for you take a look at NG_TTY(4) > On Tuesday 08 March 2005 02:26 pm, Stephan Uphoff wrote: > > On Tue, 2005-03-08 at 17:04, Jerry Toung wrote: > > > Good afternoon list, > > > I am looking for a way to write data to the serial interface (/dev/cuaa0) > > > from a kernel module and also read /dev/ttyd0 still from that same kernel > > > module. Any pointers to doing that will be great. > > > > > > I want on exchange IP traffic from FreeBSD to another host with different > > > OS via serial cable (null modem). So instead of making a call the NIC > > > driver, I want to use the serial port as may physical layer. > > > Any other ideas for doing this is welcome as well. > > > > > > I know the basics of serial programming from a regular C application: > > > > > > #include > > > > > > fd = open("/dev/cuaa0", O_RDWR|O_NDELAY) > > > tcsetattr and tcgetattr > > > etc etc. > > > > > > > > > but that's not what I am looking for. > > > > > > Thank you. > > > Jerry > > > > What is wrong with just using PPP ? > > > > Stephan