LKML Archive mirror
 help / color / mirror / Atom feed
From: Kishon Vijay Abraham I <kishon@ti.com>
To: Tony Lindgren <tony@atomide.com>,
	Bjorn Helgaas <bhelgaas@google.com>, <richardcochran@gmail.com>
Cc: Russell King <linux@arm.linux.org.uk>, Suman Anna <s-anna@ti.com>,
	<linux-omap@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>,
	<linux-kernel@vger.kernel.org>, <kishon@ti.com>, <nsekhar@ti.com>
Subject: [PATCH v3 2/3] ARM: DRA7: add pdata-quirks to do reset of PCIe
Date: Thu, 14 Jan 2016 19:41:11 +0530	[thread overview]
Message-ID: <1452780672-14339-3-git-send-email-kishon@ti.com> (raw)
In-Reply-To: <1452780672-14339-1-git-send-email-kishon@ti.com>

Create platform data for PCIe and populate it with function
pointers to perform assert and deassert of PCIe reset lines.
The PCIe driver can use the callbacks provided here to
reset the PCIe.
This will be removed once the reset contoller driver is
available to reset PCIe.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
---
 arch/arm/mach-omap2/pdata-quirks.c       |   11 +++++++++++
 include/linux/platform_data/pci-dra7xx.h |   29 +++++++++++++++++++++++++++++
 2 files changed, 40 insertions(+)
 create mode 100644 include/linux/platform_data/pci-dra7xx.h

diff --git a/arch/arm/mach-omap2/pdata-quirks.c b/arch/arm/mach-omap2/pdata-quirks.c
index 5814477..f5a65fe 100644
--- a/arch/arm/mach-omap2/pdata-quirks.c
+++ b/arch/arm/mach-omap2/pdata-quirks.c
@@ -23,6 +23,7 @@
 #include <linux/platform_data/pinctrl-single.h>
 #include <linux/platform_data/iommu-omap.h>
 #include <linux/platform_data/wkup_m3.h>
+#include <linux/platform_data/pci-dra7xx.h>
 
 #include "common.h"
 #include "common-board-devices.h"
@@ -404,6 +405,14 @@ static void __init omap5_uevm_legacy_init(void)
 }
 #endif
 
+#ifdef CONFIG_SOC_DRA7XX
+static struct pci_dra7xx_platform_data dra7xx_pci_pdata = {
+	.reset_name = "pcie",
+	.assert_reset = omap_device_assert_hardreset,
+	.deassert_reset = omap_device_deassert_hardreset,
+};
+#endif
+
 static struct pcs_pdata pcs_pdata;
 
 void omap_pcs_legacy_init(int irq, void (*rearm)(void))
@@ -474,6 +483,8 @@ static struct of_dev_auxdata omap_auxdata_lookup[] __initdata = {
 #endif
 #ifdef CONFIG_SOC_DRA7XX
 	OF_DEV_AUXDATA("ti,dra7-padconf", 0x4a003400, "4a003400.pinmux", &pcs_pdata),
+	OF_DEV_AUXDATA("ti,dra7-pcie", 0x51000000, "51000000.pcie", &dra7xx_pci_pdata),
+	OF_DEV_AUXDATA("ti,dra7-pcie", 0x51800000, "51800000.pcie", &dra7xx_pci_pdata),
 #endif
 #ifdef CONFIG_SOC_AM43XX
 	OF_DEV_AUXDATA("ti,am437-padconf", 0x44e10800, "44e10800.pinmux", &pcs_pdata),
diff --git a/include/linux/platform_data/pci-dra7xx.h b/include/linux/platform_data/pci-dra7xx.h
new file mode 100644
index 0000000..a3bab6b
--- /dev/null
+++ b/include/linux/platform_data/pci-dra7xx.h
@@ -0,0 +1,29 @@
+/*
+ * pcie-dra7xx - Platform data for PCIe controller
+ *
+ * Copyright (C) 2016 Texas Instruments Incorporated - http://www.ti.com/
+ *
+ * Authors: Kishon Vijay Abraham I <kishon@ti.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#ifndef __PCI_DRA7XX_H
+#define __PCI_DRA7XX_H
+
+/**
+ * struct pci_dra7xx_platform_data - platform data specific to pci in dra7xx
+ * @reset_name: name of the reset line
+ * @assert_reset: callback for performing assert reset operation
+ * @deassert_reset: callback for performing deassert reset operation
+ */
+struct pci_dra7xx_platform_data {
+	const char *reset_name;
+
+	int (*assert_reset)(struct platform_device *pdev, const char *name);
+	int (*deassert_reset)(struct platform_device *pdev, const char *name);
+};
+
+#endif /* __PCI_DRA7XX_H */
-- 
1.7.9.5

  parent reply	other threads:[~2016-01-14 14:11 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-14 14:11 [PATCH v3 0/3] dra7xx: get pcie working in mainline Kishon Vijay Abraham I
2016-01-14 14:11 ` [PATCH v3 1/3] ARM: DRA7: hwmod: Add reset data for PCIe Kishon Vijay Abraham I
2016-02-08  1:50   ` Paul Walmsley
2016-01-14 14:11 ` Kishon Vijay Abraham I [this message]
2016-01-15 19:19   ` [PATCH v3 2/3] ARM: DRA7: add pdata-quirks to do reset of PCIe Suman Anna
2016-01-15 19:22     ` Tony Lindgren
2016-01-15 19:41       ` Suman Anna
2016-01-18  9:12         ` Sekhar Nori
2016-01-27 17:23           ` Tony Lindgren
2016-01-14 14:11 ` [PATCH v3 3/3] pci: dra7xx: use pdata callbacks to perform reset Kishon Vijay Abraham I
2016-01-27 17:31   ` Tony Lindgren
2016-01-27 18:16     ` Suman Anna
2016-01-27 18:56       ` Tony Lindgren
2016-01-27 23:16         ` Suman Anna
2016-01-28 18:31           ` Tony Lindgren
2016-01-28 21:15             ` Suman Anna
2016-02-02 10:40             ` Kishon Vijay Abraham I
2016-02-05  4:19               ` Kishon Vijay Abraham I
2016-02-08  2:48               ` Paul Walmsley
2016-02-08 20:56                 ` Suman Anna
2016-02-09  8:49                   ` Paul Walmsley
2016-02-09 17:40                     ` Suman Anna
2016-02-09 19:36                       ` Paul Walmsley
2016-02-10  1:42                         ` Suman Anna
2016-02-10  5:38                           ` Kishon Vijay Abraham I
2016-02-11 19:27                             ` Paul Walmsley
2016-02-11 22:04                               ` Suman Anna
2016-02-12  6:49                               ` Kishon Vijay Abraham I
2016-02-12 17:20                                 ` Suman Anna
2016-02-18 14:21                                   ` Sekhar Nori
2016-02-18 17:23                                     ` Paul Walmsley
2016-02-18 18:27                                       ` Suman Anna
2016-02-22  6:18                                     ` Kishon Vijay Abraham I
2016-02-22  6:31                                       ` Paul Walmsley
2016-02-22  9:55                                         ` Kishon Vijay Abraham I
2016-02-23 11:57                                           ` Kishon Vijay Abraham I
2016-02-23 18:28                                             ` Paul Walmsley
2016-02-24  6:21                                               ` Kishon Vijay Abraham I
2016-03-01  8:25                                                 ` Paul Walmsley
2016-03-01 11:55                                                   ` Kishon Vijay Abraham I
2016-03-01 14:43                                                     ` Bjorn Helgaas
2016-03-01 16:55                                                     ` Suman Anna
2016-02-11 20:43                             ` Suman Anna
2016-02-12  6:55                               ` Kishon Vijay Abraham I
2016-02-10  5:36                         ` Kishon Vijay Abraham I

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1452780672-14339-3-git-send-email-kishon@ti.com \
    --to=kishon@ti.com \
    --cc=bhelgaas@google.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=nsekhar@ti.com \
    --cc=richardcochran@gmail.com \
    --cc=s-anna@ti.com \
    --cc=tony@atomide.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).