registers. rationale:
- Netwave cards choke if we map i/o memory to >= 0x400
- even though, CIS tuple talks nothing about it
- it is not possible to specify range in pcmcia_io_map
- it would be very bad to do a try-and-error bus_space allocation for
i/o memory regions < 0x400
- we can have exactly the same functionality with memory mapped access
this should correct PR 10139.
the memory mapped access idea was from WIDE wildboar/bsdi cnw code.
XXX it looks that whenever there's error-return in xx_attach,
we need to have some check in xx_detach(). otherwise, routines such as
ether_ifdetach() will be called without call to ether_ifattach().
- link integrity bit check.
- don't send too many packets, add some delay between them (this one is
not enabled by default - try it if you see performance problem on
heavy traffic)
- implement ioctls compatible with bsdi/freebsd-pao. stat type is
changed from u_int to u_quad_t to avoid overflows. now it is possible
to switch domain/encryption key from the userland, using cnwctl(8).
- implement multicast/promiscuous mode. tested with IPv6.
directly, call the function pointer (*if_input)(ifp, m). The input routine
expects the packet header to be at the head of the packet, and will adjust
as necessary. Privatize the layer 2 input and output routines, allowing
*_ifattach() to set them up as appropriate.