Closed spasswolf closed 5 months ago
Question is why? One of the reasons i've made this driver is to get rid of dmaengine API usage and now you bring it back... Why? To make it easier to maintain and more reliable (not going to break because of API or BAM changes in upstream). Also as you've already figured with BAM dmaengine iommu can't be used because context bank is shared between ipa and bam devices. Another reason is that i wanted to practice writing network driver with proper NAPI implementation, with this API it isn't possible.
The main reason for writing this was to figure out what was wrong with the ipa_legacy driver where kernel BAM was used, but no packets could be received.
By proper NAPI implementation, do you mean disabling the dma interrupt while polling?
This uses the bam dmaengine driver for the ipa2-lite driver. There are still some issues to be resolved: