You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
1.8 KiB
61 lines
1.8 KiB
From 5662c553e89ac4179ec2a7a94a342ba3e5d78cf7 Mon Sep 17 00:00:00 2001
|
|
From: Hans Ulli Kroll <ulli.kroll@googlemail.com>
|
|
Date: Thu, 9 Feb 2017 15:20:49 +0100
|
|
Subject: [PATCH 28/31] usb: host: fotg2: add device tree probing
|
|
|
|
Add device tree probing to the fotg2 driver.
|
|
|
|
Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
|
|
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
|
---
|
|
ChangeLog v2->v3:
|
|
- Change compatible to "faraday,fotg210" simply.
|
|
---
|
|
drivers/usb/host/fotg210-hcd.c | 19 +++++++++++++++++++
|
|
1 file changed, 19 insertions(+)
|
|
|
|
--- a/drivers/usb/host/fotg210-hcd.c
|
|
+++ b/drivers/usb/host/fotg210-hcd.c
|
|
@@ -23,6 +23,7 @@
|
|
* Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
*/
|
|
#include <linux/module.h>
|
|
+#include <linux/of.h>
|
|
#include <linux/device.h>
|
|
#include <linux/dmapool.h>
|
|
#include <linux/kernel.h>
|
|
@@ -5600,6 +5601,15 @@ static int fotg210_hcd_probe(struct plat
|
|
if (usb_disabled())
|
|
return -ENODEV;
|
|
|
|
+ /* Right now device-tree probed devices don't get dma_mask set.
|
|
+ * Since shared usb code relies on it, set it here for now.
|
|
+ * Once we have dma capability bindings this can go away.
|
|
+ */
|
|
+
|
|
+ retval = dma_coerce_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32));
|
|
+ if (retval)
|
|
+ goto fail_create_hcd;
|
|
+
|
|
pdev->dev.power.power_state = PMSG_ON;
|
|
|
|
res = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
|
|
@@ -5676,9 +5686,18 @@ static int fotg210_hcd_remove(struct pla
|
|
return 0;
|
|
}
|
|
|
|
+#ifdef CONFIG_OF
|
|
+static const struct of_device_id fotg210_of_match[] = {
|
|
+ { .compatible = "faraday,fotg210" },
|
|
+ {},
|
|
+};
|
|
+MODULE_DEVICE_TABLE(of, fotg210_of_match);
|
|
+#endif
|
|
+
|
|
static struct platform_driver fotg210_hcd_driver = {
|
|
.driver = {
|
|
.name = "fotg210-hcd",
|
|
+ .of_match_table = of_match_ptr(fotg210_of_match),
|
|
},
|
|
.probe = fotg210_hcd_probe,
|
|
.remove = fotg210_hcd_remove,
|
|
|