Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1262426
| From | Felipe Balbi <balbi@ti.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH] dmaengine: edma: Add dummy driver skeleton for edma3-tptc |
| Date | 2015-11-04 17:40 +0100 |
| Message-ID | <qr9gm-2Ro-21@gated-at.bofh.it> (permalink) |
| References | <qqnln-5Pq-9@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
[Multipart message — attachments visible in raw view] - view raw
Peter Ujfalusi <peter.ujfalusi@ti.com> writes:
> The eDMA3 TPTC does not need any software configuration, but it is a
> separate IP block in the SoC. In order the omap hwmod core to be able to
> handle the TPTC resources correctly in regards of PM we need to have a
> driver loaded for it.
> This patch will add a dummy driver skeleton without probe or remove
> callbacks provided.
>
> Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
> Reported-by: Olof Johansson <olof@lixom.net>
This fixes the problem I also reported on linux-omap [1]
Tested-by: Felipe Balbi <balbi@ti.com>
[1] http://marc.info/?l=linux-omap&m=144665429032014&w=2
> ---
> Hi,
>
> while it would have been possible to add the edma3-tptc compatible to be handled
> by the edma-tpcc driver (and when the device is tptc, do nothing) it would
> make the driver code a bit harder to follow.
> I think having separate structure for the tptc looks better and if we ever need
> to have separate driver for the tptc it will be cleaner for us the separate it.
>
> This patch alone w/o any hwmod flag changes will make sure that the edma-tptc is
> not powered down after the kernel is finished it's booting.
>
> Regards,
> Peter
>
> drivers/dma/edma.c | 19 +++++++++++++++++++
> 1 file changed, 19 insertions(+)
>
> diff --git a/drivers/dma/edma.c b/drivers/dma/edma.c
> index 31722d436a42..6b03e4e84e6b 100644
> --- a/drivers/dma/edma.c
> +++ b/drivers/dma/edma.c
> @@ -269,6 +269,11 @@ static const struct of_device_id edma_of_ids[] = {
> {}
> };
>
> +static const struct of_device_id edma_tptc_of_ids[] = {
> + { .compatible = "ti,edma3-tptc", },
> + {}
> +};
> +
> static inline unsigned int edma_read(struct edma_cc *ecc, int offset)
> {
> return (unsigned int)__raw_readl(ecc->base + offset);
> @@ -2399,6 +2404,13 @@ static struct platform_driver edma_driver = {
> },
> };
>
> +static struct platform_driver edma_tptc_driver = {
> + .driver = {
> + .name = "edma3-tptc",
> + .of_match_table = edma_tptc_of_ids,
> + },
> +};
> +
> bool edma_filter_fn(struct dma_chan *chan, void *param)
> {
> bool match = false;
> @@ -2418,6 +2430,12 @@ EXPORT_SYMBOL(edma_filter_fn);
>
> static int edma_init(void)
> {
> + int ret;
> +
> + ret = platform_driver_register(&edma_tptc_driver);
> + if (ret)
> + return ret;
> +
> return platform_driver_register(&edma_driver);
> }
> subsys_initcall(edma_init);
> @@ -2425,6 +2443,7 @@ subsys_initcall(edma_init);
> static void __exit edma_exit(void)
> {
> platform_driver_unregister(&edma_driver);
> + platform_driver_unregister(&edma_tptc_driver);
> }
> module_exit(edma_exit);
>
> --
> 2.6.1
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
--
balbi
Back to linux.kernel | Previous | Next — Previous in thread | Find similar | Unroll thread
[PATCH] dmaengine: edma: Add dummy driver skeleton for edma3-tptc Peter Ujfalusi <peter.ujfalusi@ti.com> - 2015-11-02 14:30 +0100
Re: [PATCH] dmaengine: edma: Add dummy driver skeleton for edma3-tptc Vinod Koul <vinod.koul@intel.com> - 2015-11-04 17:40 +0100
Re: [PATCH] dmaengine: edma: Add dummy driver skeleton for edma3-tptc Tony Lindgren <tony@atomide.com> - 2015-11-13 16:00 +0100
Re: [PATCH] dmaengine: edma: Add dummy driver skeleton for edma3-tptc Felipe Balbi <balbi@ti.com> - 2015-11-04 17:40 +0100
csiph-web