From owner-freebsd-hackers@FreeBSD.ORG Sun Jul 4 12:56:25 2004 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 2E10016A4CE for ; Sun, 4 Jul 2004 12:56:25 +0000 (GMT) Received: from mailsrv2.tranzpeer.net (mailsrv2.tranzpeer.net [202.180.66.208]) by mx1.FreeBSD.org (Postfix) with ESMTP id CB79E43D31 for ; Sun, 4 Jul 2004 12:56:24 +0000 (GMT) (envelope-from idownes@slingshot.co.nz) Received: from websrv1.tranzpeer.net ([202.180.66.211] helo=Debug) by mailsrv2.tranzpeer.net with smtp (Exim 4.12) id 1Bh6Xf-0005UW-02 for freebsd-hackers@freebsd.org; Mon, 05 Jul 2004 00:56:23 +1200 To: freebsd-hackers@freebsd.org From: Date: Sun, 4 Jul 2004 12:53:39 GMT X-Posting-IP: 202.180.104.50 X-Mailer: Endymion MailMan Professional Edition v3.2.9 Message-Id: Subject: where to get info to write basic usb driver for own device? 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: Sun, 04 Jul 2004 12:56:25 -0000 Hi all, As part of my uni honours project I need to write a basic USB driver for a device I am building. I need to talk to a Texas Instruments DSP (C5509) which has on chip USB (2.0 compliant, full speed). TI supply a library for the DSP side of the USB but I need to write a basic program to retrieve data from it, nothing fancy at all. I have full control over the software on the DSP. There is a basic generic Windows driver I could use (theyscon.de) but I don't really want to do it under Windows - instead I'd much rather do it with FreeBSD. So what I guess what I am asking is how hard would this be? (I have a reasonable knowledge of C and Java and have been using FreeBSD for a couple of years but have never written a device driver (for any OS)) Do I actually need to write a driver or can I use something already existing? Where would I get information on how to do this? So far I've been looking at the existing drivers; ugen, ufm etc., the programmers handbook and am starting to look at libusb...? Sorry for the long message. Any pointers etc. would be greatly appreciated. Thanks Ian