summaryrefslogtreecommitdiffstats
path: root/0013-mfd-intel-lpss-Add-support-for-passing-device-proper.patch
diff options
context:
space:
mode:
Diffstat (limited to '0013-mfd-intel-lpss-Add-support-for-passing-device-proper.patch')
-rw-r--r--0013-mfd-intel-lpss-Add-support-for-passing-device-proper.patch112
1 files changed, 0 insertions, 112 deletions
diff --git a/0013-mfd-intel-lpss-Add-support-for-passing-device-proper.patch b/0013-mfd-intel-lpss-Add-support-for-passing-device-proper.patch
deleted file mode 100644
index 5160053b9..000000000
--- a/0013-mfd-intel-lpss-Add-support-for-passing-device-proper.patch
+++ /dev/null
@@ -1,112 +0,0 @@
-From e15ad2154b6166804fc04487e0398c9aef9e7c97 Mon Sep 17 00:00:00 2001
-From: Mika Westerberg <mika.westerberg@linux.intel.com>
-Date: Mon, 30 Nov 2015 17:11:41 +0200
-Subject: [PATCH 13/16] mfd: intel-lpss: Add support for passing device
- properties
-
-If the boot firmware does not support ACPI we need a way to pass device
-configuration information to the drivers. The unified device properties API
-already supports passing platform data via properties so let's take
-advantage of that and allow probe drivers to pass set of properties to the
-host controller driver.
-
-In order to do that we need to be able to modify the MFD cell corresponding
-the host controller, so make the core driver to take copy of the cell
-instead of using it directly. Then we can assign info->pset to the
-resulting copy of a cell and let the MFD core to assign that to the
-resulting device.
-
-Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
-Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
-Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
----
- drivers/mfd/intel-lpss.c | 16 ++++++++++++----
- drivers/mfd/intel-lpss.h | 2 ++
- 2 files changed, 14 insertions(+), 4 deletions(-)
-
-diff --git a/drivers/mfd/intel-lpss.c b/drivers/mfd/intel-lpss.c
-index 6255513..1743788 100644
---- a/drivers/mfd/intel-lpss.c
-+++ b/drivers/mfd/intel-lpss.c
-@@ -24,6 +24,7 @@
- #include <linux/mfd/core.h>
- #include <linux/pm_qos.h>
- #include <linux/pm_runtime.h>
-+#include <linux/property.h>
- #include <linux/seq_file.h>
- #include <linux/io-64-nonatomic-lo-hi.h>
-
-@@ -72,7 +73,7 @@ struct intel_lpss {
- enum intel_lpss_dev_type type;
- struct clk *clk;
- struct clk_lookup *clock;
-- const struct mfd_cell *cell;
-+ struct mfd_cell *cell;
- struct device *dev;
- void __iomem *priv;
- int devid;
-@@ -217,6 +218,7 @@ static void intel_lpss_ltr_hide(struct intel_lpss *lpss)
-
- static int intel_lpss_assign_devs(struct intel_lpss *lpss)
- {
-+ const struct mfd_cell *cell;
- unsigned int type;
-
- type = lpss->caps & LPSS_PRIV_CAPS_TYPE_MASK;
-@@ -224,18 +226,22 @@ static int intel_lpss_assign_devs(struct intel_lpss *lpss)
-
- switch (type) {
- case LPSS_DEV_I2C:
-- lpss->cell = &intel_lpss_i2c_cell;
-+ cell = &intel_lpss_i2c_cell;
- break;
- case LPSS_DEV_UART:
-- lpss->cell = &intel_lpss_uart_cell;
-+ cell = &intel_lpss_uart_cell;
- break;
- case LPSS_DEV_SPI:
-- lpss->cell = &intel_lpss_spi_cell;
-+ cell = &intel_lpss_spi_cell;
- break;
- default:
- return -ENODEV;
- }
-
-+ lpss->cell = devm_kmemdup(lpss->dev, cell, sizeof(*cell), GFP_KERNEL);
-+ if (!lpss->cell)
-+ return -ENOMEM;
-+
- lpss->type = type;
-
- return 0;
-@@ -401,6 +407,8 @@ int intel_lpss_probe(struct device *dev,
- if (ret)
- return ret;
-
-+ lpss->cell->pset = info->pset;
-+
- intel_lpss_init_dev(lpss);
-
- lpss->devid = ida_simple_get(&intel_lpss_devid_ida, 0, 0, GFP_KERNEL);
-diff --git a/drivers/mfd/intel-lpss.h b/drivers/mfd/intel-lpss.h
-index 2c7f8d7..0dcea9e 100644
---- a/drivers/mfd/intel-lpss.h
-+++ b/drivers/mfd/intel-lpss.h
-@@ -16,12 +16,14 @@
-
- struct device;
- struct resource;
-+struct property_set;
-
- struct intel_lpss_platform_info {
- struct resource *mem;
- int irq;
- unsigned long clk_rate;
- const char *clk_con_id;
-+ struct property_set *pset;
- };
-
- int intel_lpss_probe(struct device *dev,
---
-2.5.0
-