Seems mostly good.
1. Nit:
/*
* Obtain the physical addresses of the RX and TX
* rings which we'll need later in the init routine.
*/
More formally, it's not a 'physical address'- it's a "Bus Address", or
"Address appropriate for a device on this bus to use to access the
memory so mapped". Under sparc64, for example, it would be an iommu
mapping address.
2. All callback functions for dma- you should be checking error.
3. You might want to recycle rather than create/destroy mbuf tags.
You should note that FreeBSD's bus_dma is hardly as strict or as formal as
NetBSD's, so there's room for a lot of slop here. The key thing to test it on
is an alpha that has both direct-mapped and sgmap hardware to see that it
works.
-matt
To Unsubscribe: send mail to majo...@FreeBSD.org
with "unsubscribe freebsd-audit" in the body of the message