> drivers should be easy. What turns them hard is dealing with all the
> bugs in the hardware.

vendors vary widly in the amount of bugs there are to
deal with.  errata can be your friends.  i can't speak
to wireless parts, but my experience is that intel parts
generally work quite well with few errata.

however, the errata are not necessarly as bad as the
odd features!

i have a recent experience.  a certain $vendor has a
$part.  it has some bits in a register that specify the
"endianness" of the data.  unfortunately, the $spec
specifies the bytes in order.  it took a good long while
to figure out that the $part's docs were specifying
bytes with respect to the native word byte order.
thus the mapping of the bits was the reverse of the
expected.

why such a feature would be included is beyond me.
the special bits need to be fiddled together regardless
and the data have no ordering.

- erik

Reply via email to