> >> i find there's a certain simplicty in dealing directly
> >> with hardware, provided one has documentation.
> > 
> > Provided it is complete and the h/w well designed and
> > interface regular.  Unfortunately not all that common.
> 
> you continue with this claim without presenting evidence.
        ...
> for example, the intel 82598 10gbe is a beast of a part.
> 341 pages of documentation. 200 registers.  yet it's a
> simple driver because
        ...
> 3.  most complicated functionality was ignored;

I rest my case :-)

How much simpler it would've been if instead of 200 registers
there was just a <cmd,arg-block-ptr> fifo in each direction.
You can do everything you want with a small set of commands.
An open ended interface that can be efficiently virtualized.

Or why not just implement something like 9p?

> i respond to this because i think there is a prevalent
> attitude, not well-informed by experience, that hardware
> is bad and impossible to program.  my opinion, based on
> experience, is this is not true.  and restating the untruth
> has the consequence of discouraging folk from working
> on drivers, thus reenforcing the myth.

Sorry, my experience does not match yours. May be things have
improved since I used to write drivers but controllers like
NEC765 were pretty bad (I can cite a lot of other examples
but I won't, not here!).

As a driver writer one should go in with eyes open so nothing
grosses you out, read specs thoroughly but when in doubt
experiment and so on.

> were it true, it would not be an attitude condusive
> to getting things done.

If only.  Unfortunately too much bad hardware gets drivers
written for them.

This is so far from qemu or plan9 that I will stop now.

Reply via email to