Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 12 Oct 2005 13:31:22 +0100
From:      Joao Barros <joao.barros@gmail.com>
To:        Pete <TheManifestShadow@gmail.com>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: Driver Development Books?
Message-ID:  <70e8236f0510120531m33942c8dwb72c4729b83e264b@mail.gmail.com>
In-Reply-To: <434BECA0.9050501@gmail.com>
References:  <434BECA0.9050501@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 10/11/05, Pete <TheManifestShadow@gmail.com> wrote:
> Hello,
>     I have what may seem to be a silly question, but I cannot find any
> other decent resources on the web. >.< The problem that I am having
> right now is
> that I have a fairly nice graphics card which, for the moment is only
> supported on Windows Operating systems, and old 2.4 Linux kernels. So
> far there has
> not been much positive outlook in porting the drivers to *BSD or any of
> the 2.6 kernels that I know of, let alone 64-bit drivers for non-Win OSes=
.
>
> So I guess that makes my question fairly simple then; I know that driver
> code is written in C (which I am learning currently) but thats about all
> I know. I'm probably
> not far off when I say that I need more to go on. Yet, from looking at
> Amazon.com I have not been able to find any books on writing driver
> code, which is really
> frustrating.
>
> One of my security related books, Rootkits, tells me about how to write
> drivers for a completely different reason so I know a bit more about how
> they work but again
> the code involved does not interface hardware to the OS, just injects a
> custom application. The other tool that I will probably use is Jungo,
> which is a nice-looking
> application which automates a skeletal version of the driver you need,
> but again, I would not know how to fill it out.
>
> Any help is appreciated.
>
> -Pete

I started porting a pseudo driver from OpenBSD and had the same issues.

You could find more info here:
http://www.freebsd.org/doc/en_US.ISO8859-1/books/arch-handbook/index.html
http://www.freebsd.org/doc/en_US.ISO8859-1/books/arch-handbook/newbus-api.h=
tml
http://www.freebsd.org/doc/en_US.ISO8859-1/books/arch-handbook/driverbasics=
-char.html#AEN8703

And this come in very handy:
FreeBSD Source Code Tour: http://snapshots.jp.freebsd.org/tour/
A nice website provided by Robert Watson (Thanks!!!): http://fxr.watson.org=
/

Looking at existing code is also good, like the simple led driver by phk@
There was also a thread where John Baldwin described the parts of a
driver but I can't seem to find it.

--
Joao Barros



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