Keystone Navigator SOC driver updates for 3.20

- Makefile tweak so that knav_qmss and knav_dma can be made loadable
 		modules without depedency issues.
 	- Few more exports to support ARM allmodconfig.
 	- Marking knav_range_setup_acc_irq() local function as static.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJUz9X3AAoJEHJsHOdBp5c/uWcP/1ScgwM2jKT+riyjLyBllE2m
 WKNILlHLaUUagXj/V+IpyFvms64SEQSwvqQqt0C7NtkFGyJFBUkGOsr4KZjwntZI
 RVpe4/URY3zAQPb0a+DFkomuSww+p7Q6RqBxz1JjJUtOOw7vnPTYsywSfEuzcqIR
 kntlKzylI8BsRyvKlBmcYff7uBtrDq+nIa2UxqyPml/Y5V7w0TVLaonEBh0Thsfk
 1y3HrWHjD/ehH2r5Gtjd8Gu+9WZcGqci2ZdxPnvTSsZKcyXLUldedyKhhpjv+dya
 /T0l3v3/ofp9DFQ++fjAdiALKW2bad8uPMFAvRLvetGY8H6QvOq+NjHRtdsTVw6J
 UPxk98GfTPmF1Q5v+j97nO+1tymDdfVYA+IkhG8Trei4HxNQik3W54kqFDIjyG2l
 U8MinjPvvW1GpqcqwThNhX74kkF3Z9GV3/FQ9ccEyNm9XiA2zF2AyDtsIcwjzWYJ
 DFWVX/V7vTIJyqzoT/mmL/+swIxveD2t7ZQyD3TJcgRLEJDH9FPRcSXE+Qp8lBPD
 bGWdsd/p7kQ1U2dKNhQJga1XUxOMFxnsGcxAOeULcjrnkaxoDrjmSw7g3D9593t/
 TGJO9carqoiLe3P3T7DAdmfsna0ihcDyDsW4/uj0hByOoZAqgxCoDf580JaSlIQF
 ZCtPk/BmpWbT4leQEsRo
 =Nztv
 -----END PGP SIGNATURE-----

Merge tag 'drivers-soc-ti' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone into next/drivers

Merge "soc: ti: Keystone Navigator SOC driver updates for 3.20" from Santosh
Shilimkar:

Keystone Navigator SOC driver updates for 3.20

- Makefile tweak so that knav_qmss and knav_dma can be made loadable
	modules without depedency issues.
- Few more exports to support ARM allmodconfig.
- Marking knav_range_setup_acc_irq() local function as static.

* tag 'drivers-soc-ti' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone:
  soc: ti: knav_qmss_queue: change knav_range_setup_acc_irq to static
  soc: ti: knav_qmss_queue: makefile tweak to build as dynamic module
  soc: ti: knav_qmss_queue: export API calls for use by user driver

Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
Olof Johansson 2015-02-06 00:26:35 -08:00
commit 68a028f856
3 changed files with 12 additions and 2 deletions

View File

@ -1,5 +1,6 @@
#
# TI Keystone SOC drivers
#
obj-$(CONFIG_KEYSTONE_NAVIGATOR_QMSS) += knav_qmss_queue.o knav_qmss_acc.o
obj-$(CONFIG_KEYSTONE_NAVIGATOR_QMSS) += knav_qmss.o
knav_qmss-y := knav_qmss_queue.o knav_qmss_acc.o
obj-$(CONFIG_KEYSTONE_NAVIGATOR_DMA) += knav_dma.o

View File

@ -209,7 +209,7 @@ static irqreturn_t knav_acc_int_handler(int irq, void *_instdata)
return IRQ_HANDLED;
}
int knav_range_setup_acc_irq(struct knav_range_info *range,
static int knav_range_setup_acc_irq(struct knav_range_info *range,
int queue, bool enabled)
{
struct knav_device *kdev = range->kdev;

View File

@ -626,6 +626,7 @@ int knav_queue_push(void *qhandle, dma_addr_t dma,
atomic_inc(&qh->stats.pushes);
return 0;
}
EXPORT_SYMBOL_GPL(knav_queue_push);
/**
* knav_queue_pop() - pop data (or descriptor) from the head of a queue
@ -663,6 +664,7 @@ dma_addr_t knav_queue_pop(void *qhandle, unsigned *size)
atomic_inc(&qh->stats.pops);
return dma;
}
EXPORT_SYMBOL_GPL(knav_queue_pop);
/* carve out descriptors and push into queue */
static void kdesc_fill_pool(struct knav_pool *pool)
@ -717,12 +719,14 @@ dma_addr_t knav_pool_desc_virt_to_dma(void *ph, void *virt)
struct knav_pool *pool = ph;
return pool->region->dma_start + (virt - pool->region->virt_start);
}
EXPORT_SYMBOL_GPL(knav_pool_desc_virt_to_dma);
void *knav_pool_desc_dma_to_virt(void *ph, dma_addr_t dma)
{
struct knav_pool *pool = ph;
return pool->region->virt_start + (dma - pool->region->dma_start);
}
EXPORT_SYMBOL_GPL(knav_pool_desc_dma_to_virt);
/**
* knav_pool_create() - Create a pool of descriptors
@ -878,6 +882,7 @@ void *knav_pool_desc_get(void *ph)
data = knav_pool_desc_dma_to_virt(pool, dma);
return data;
}
EXPORT_SYMBOL_GPL(knav_pool_desc_get);
/**
* knav_pool_desc_put() - return a descriptor to the pool
@ -890,6 +895,7 @@ void knav_pool_desc_put(void *ph, void *desc)
dma = knav_pool_desc_virt_to_dma(pool, desc);
knav_queue_push(pool->queue, dma, pool->region->desc_size, 0);
}
EXPORT_SYMBOL_GPL(knav_pool_desc_put);
/**
* knav_pool_desc_map() - Map descriptor for DMA transfer
@ -916,6 +922,7 @@ int knav_pool_desc_map(void *ph, void *desc, unsigned size,
return 0;
}
EXPORT_SYMBOL_GPL(knav_pool_desc_map);
/**
* knav_pool_desc_unmap() - Unmap descriptor after DMA transfer
@ -938,6 +945,7 @@ void *knav_pool_desc_unmap(void *ph, dma_addr_t dma, unsigned dma_sz)
prefetch(desc);
return desc;
}
EXPORT_SYMBOL_GPL(knav_pool_desc_unmap);
/**
* knav_pool_count() - Get the number of descriptors in pool.
@ -949,6 +957,7 @@ int knav_pool_count(void *ph)
struct knav_pool *pool = ph;
return knav_queue_get_count(pool->queue);
}
EXPORT_SYMBOL_GPL(knav_pool_count);
static void knav_queue_setup_region(struct knav_device *kdev,
struct knav_region *region)