tile PCI RC: support more MSI-X interrupt vectors
To support PCIe devices with higher number of MSI-X interrupt vectors, e.g. 16 for the LSI RAID card, enhance the Gx RC stack to provide more MSI-X vectors by using the TRIO Scatter Queues, which provide 8 more vectors in addition to ~10 from the Map Mem regions. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
This commit is contained in:
@@ -61,6 +61,29 @@ int gxio_trio_alloc_memory_maps(gxio_trio_context_t * context,
|
||||
|
||||
EXPORT_SYMBOL(gxio_trio_alloc_memory_maps);
|
||||
|
||||
struct alloc_scatter_queues_param {
|
||||
unsigned int count;
|
||||
unsigned int first;
|
||||
unsigned int flags;
|
||||
};
|
||||
|
||||
int gxio_trio_alloc_scatter_queues(gxio_trio_context_t * context,
|
||||
unsigned int count, unsigned int first,
|
||||
unsigned int flags)
|
||||
{
|
||||
struct alloc_scatter_queues_param temp;
|
||||
struct alloc_scatter_queues_param *params = &temp;
|
||||
|
||||
params->count = count;
|
||||
params->first = first;
|
||||
params->flags = flags;
|
||||
|
||||
return hv_dev_pwrite(context->fd, 0, (HV_VirtAddr) params,
|
||||
sizeof(*params),
|
||||
GXIO_TRIO_OP_ALLOC_SCATTER_QUEUES);
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(gxio_trio_alloc_scatter_queues);
|
||||
|
||||
struct alloc_pio_regions_param {
|
||||
unsigned int count;
|
||||
|
Reference in New Issue
Block a user