hwqueue: add keystone hwqueue driver
This commit adds an hwqueue driver for the keystone qmss hardware. As of this
commit, accumulator functionality is non-existent.
Signed-off-by: Prabhu Kuttiyam <pkuttiyam@ti.com>
Signed-off-by: Cyril Chemparathy <cyril@ti.com>
hwqueue: keystone: avoid non-cacheable coherent allocs for descriptor regions
This patch replaces the original dma coherent allocation with a cacheable
allocation that is then mapped for dma usage.
hwqueue: keystone: add optimization hints
In addition to a few cosmetic fixes, this patch mainly adds branch
optimization hints for the compiler's benefit. We also prefetch descriptors
on pop, and mournfully retry on finding an invalid descriptor on a hardware
queue.
hwqueue: cleanup unused keystone specific structures
The hwqueue header had unnecessary remnant definitions from the
pre-device-tree era. These have been removed by this patch.
hwqueue: align descriptor size to cache line size
This patch aligns descriptor size to the cache line size at push.
hwqueue: keystone: verify descriptor size on push
This patch adds verification on descriptor size before pushing it to a
hardware queue.
hwqueue: keystone: scatter/gather support
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
3 files changed