[PATCH 4/7] dmaengine: st_fdma: Add xbar support
From: Paul Bolle <hidden>
Date: 2015-07-09 08:28:00
Also in:
linux-devicetree, lkml
On wo, 2015-07-08 at 17:11 +0100, Peter Griffin wrote:
quoted hunk ↗ jump to hunk
--- a/drivers/dma/Kconfig +++ b/drivers/dma/Kconfig
+config ST_FDMA_XBAR + bool "ST FDMA crossbar" + depends on ST_FDMA + default y + help + Enable support for ST FDMA crossbar. + xbar add flexibility and increase the number of peripheral request + can be used by fdma xbar can multiplex until 96 peripheral requests + to one of 3 fdma controller
quoted hunk ↗ jump to hunk
diff --git a/drivers/dma/Makefile b/drivers/dma/Makefile index f68e6d8..19f18b1 100644 --- a/drivers/dma/Makefile +++ b/drivers/dma/Makefile
+obj-$(CONFIG_ST_FDMA_XBAR) += st_fdma_xbar.o
ST_FDMA_XBAR is a bool symbol, so st_fdma_xbar.o can only be built-in.
quoted hunk ↗ jump to hunk
--- /dev/null +++ b/drivers/dma/st_fdma_xbar.c
+#include <linux/module.h>
Needed?
+void st_fdma_xbar_free(struct st_fdma_xbar_dev *device)
+{
+ platform_device_put(device->pdev);
+ kfree(device);
+}Unused.
+static const struct of_device_id st_fdma_xbar_match[] = {
+ { .compatible = "st,fdma-xbar-1.0", .data = (void *)XBAR_1_0_MAX_REQ },
+ {},
+};
+MODULE_DEVICE_TABLE(of, st_fdma_xbar_match);See my remark on 3/7: MODULE_DEVICE_TABLE() will be preprocessed away.
+static struct platform_driver st_fdma_xbar_driver = {
+ .driver = {
+ .name = "st-fdma-xbar",
+ .of_match_table = st_fdma_xbar_match,
+ },
+ .probe = st_fdma_xbar_probe,
+ .remove = st_fdma_xbar_remove,
+};
+module_platform_driver(st_fdma_xbar_driver);See my remark on 3/7: builtin_platform_driver().
+MODULE_LICENSE("GPL v2");
+MODULE_DESCRIPTION("STMicroelectronics FDMA cross bar");
+MODULE_AUTHOR("Ludovic.barre [off-list ref]");See my remark on 3/7: will be preprocessed away. Thanks, Paul Bolle