Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Jun 2010 17:58:42 +0200
From:      Hans Petter Selasky <hselasky@c2i.net>
To:        freebsd-usb@freebsd.org
Cc:        Friedrich Schick <friedrich.schick@x2e.de>
Subject:   Re: Standalone version
Message-ID:  <201006241758.42608.hselasky@c2i.net>
In-Reply-To: <81cb17da958b5d9242d0267c59e31d8a@groupware>
References:  <81cb17da958b5d9242d0267c59e31d8a@groupware>

next in thread | previous in thread | raw e-mail | index | archive | help

On Thursday 24 June 2010 14:24:01 Friedrich Schick wrote:
> Hello,
> 
> we have an embedded system running the eCos real-time operating system. Now
> we consider porting the USB stack from FreeBSD to eCos. What needs to be
> done to have a running standalone version of the FreeBSD USB stack? The
>  work may also be interesting to anybody, who runs an embedded system
>  without having a real operting system as FreeBSD or Linux.
> 

Hi,

On the high-level you need to wrap malloc, newbus, thread creation, timers, 
mutexes and condition variables. If you want DMA enabled devices to work like 
the EHCI, you also need a wrapper for busdma. This can be compile-time opted 
out.

I have created a wrapper layer that allows you to compile the core of the 
FreeBSD 8.x USB stack in userspace. I could send you a link off-list if you 
are interested.

Minimum footprint I've seen using the stock USB core is: 64-128Kbytes

It is possible to feature reduce the USB stack and then the executable 
footprint will be reduced aswell.

--HPS



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201006241758.42608.hselasky>