linux-i2c.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: "Rafael J . Wysocki" <rjw@rjwysocki.net>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Jarkko Nikula <jarkko.nikula@linux.intel.com>,
	linux-i2c@vger.kernel.org, linux-acpi@vger.kernel.org,
	linux-kernel@vger.kernel.org, Lee Jones <lee.jones@linaro.org>,
	Mika Westerberg <mika.westerberg@linux.intel.com>,
	Kevin Fenzi <kevin@scrye.com>, Arnd Bergmann <arnd@arndb.de>,
	Wolfram Sang <wsa@the-dreams.de>
Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Subject: [PATCH v2 12/16] mfd: core: propagate device properties to sub devices drivers
Date: Mon, 30 Nov 2015 17:11:40 +0200	[thread overview]
Message-ID: <1448896304-87928-13-git-send-email-andriy.shevchenko@linux.intel.com> (raw)
In-Reply-To: <1448896304-87928-1-git-send-email-andriy.shevchenko@linux.intel.com>

In the similar way like we do for the platform data we propagate the device
properties. For example, in case of Intel LPSS drivers we may provide a
specific property to tell the actual device driver an additional information
such as platform name.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 drivers/mfd/mfd-core.c   | 7 +++++++
 include/linux/mfd/core.h | 5 +++++
 2 files changed, 12 insertions(+)

diff --git a/drivers/mfd/mfd-core.c b/drivers/mfd/mfd-core.c
index 60b60dc..88bd1b1 100644
--- a/drivers/mfd/mfd-core.c
+++ b/drivers/mfd/mfd-core.c
@@ -14,6 +14,7 @@
 #include <linux/kernel.h>
 #include <linux/platform_device.h>
 #include <linux/acpi.h>
+#include <linux/property.h>
 #include <linux/mfd/core.h>
 #include <linux/pm_runtime.h>
 #include <linux/slab.h>
@@ -192,6 +193,12 @@ static int mfd_add_device(struct device *parent, int id,
 			goto fail_alias;
 	}
 
+	if (cell->pset) {
+		ret = platform_device_add_properties(pdev, cell->pset);
+		if (ret)
+			goto fail_alias;
+	}
+
 	ret = mfd_platform_add_cell(pdev, cell, usage_count);
 	if (ret)
 		goto fail_alias;
diff --git a/include/linux/mfd/core.h b/include/linux/mfd/core.h
index 27dac3f..bc6f7e0 100644
--- a/include/linux/mfd/core.h
+++ b/include/linux/mfd/core.h
@@ -17,6 +17,7 @@
 #include <linux/platform_device.h>
 
 struct irq_domain;
+struct property_set;
 
 /* Matches ACPI PNP id, either _HID or _CID, or ACPI _ADR */
 struct mfd_cell_acpi_match {
@@ -44,6 +45,10 @@ struct mfd_cell {
 	/* platform data passed to the sub devices drivers */
 	void			*platform_data;
 	size_t			pdata_size;
+
+	/* device properties passed to the sub devices drivers */
+	const struct property_set *pset;
+
 	/*
 	 * Device Tree compatible string
 	 * See: Documentation/devicetree/usage-model.txt Chapter 2.2 for details
-- 
2.6.2

  parent reply	other threads:[~2015-11-30 15:11 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-30 15:11 [PATCH v2 00/16] intel-lpss: support non-ACPI platforms Andy Shevchenko
2015-11-30 15:11 ` [PATCH v2 01/16] device property: always check for fwnode type Andy Shevchenko
2015-11-30 15:11 ` [PATCH v2 02/16] device property: rename helper functions Andy Shevchenko
2015-11-30 15:11 ` [PATCH v2 03/16] device property: refactor built-in properties support Andy Shevchenko
2015-11-30 15:11 ` [PATCH v2 04/16] device property: keep single value inplace Andy Shevchenko
2015-11-30 15:11 ` [PATCH v2 05/16] device property: helper macros for property entry creation Andy Shevchenko
2015-11-30 15:11 ` [PATCH v2 06/16] device property: improve readability of macros Andy Shevchenko
2015-11-30 15:11 ` [PATCH v2 07/16] device property: return -EINVAL when property isn't found in ACPI Andy Shevchenko
2015-11-30 15:11 ` [PATCH v2 08/16] device property: Fallback to secondary fwnode if primary misses the property Andy Shevchenko
2015-11-30 15:11 ` [PATCH v2 09/16] device property: Take a copy of the property set Andy Shevchenko
2015-11-30 15:11 ` [PATCH v2 10/16] driver core: platform: Add support for built-in device properties Andy Shevchenko
2015-11-30 15:11 ` [PATCH v2 11/16] driver core: Do not overwrite secondary fwnode with NULL if it is set Andy Shevchenko
2015-11-30 15:11 ` Andy Shevchenko [this message]
2015-11-30 15:11 ` [PATCH v2 13/16] mfd: intel-lpss: Add support for passing device properties Andy Shevchenko
2015-11-30 15:11 ` [PATCH v2 14/16] mfd: intel-lpss: Pass SDA hold time to I2C host controller driver Andy Shevchenko
2016-02-08 10:09   ` Wolfram Sang
2016-02-08 10:29     ` Mika Westerberg
2016-02-08 10:45       ` Andy Shevchenko
2016-02-10 16:53   ` Lee Jones
2015-11-30 15:11 ` [PATCH v2 15/16] mfd: intel-lpss: Pass HSUART configuration via properties Andy Shevchenko
2015-11-30 15:11 ` [PATCH v2 16/16] i2c: designware: Convert to use unified device property API Andy Shevchenko
2015-11-30 19:58   ` Wolfram Sang
2015-12-01  9:08     ` Mika Westerberg
2015-12-01 10:33     ` Andy Shevchenko
2015-12-02  1:28       ` Rafael J. Wysocki
2015-12-02  9:23         ` Andy Shevchenko
2015-12-02  9:33           ` Mika Westerberg
2015-12-02  9:53             ` Wolfram Sang
2015-12-07  1:44 ` [PATCH v2 00/16] intel-lpss: support non-ACPI platforms Rafael J. Wysocki
2016-01-05 17:57   ` Laura Abbott
2016-01-05 23:59     ` Rafael J. Wysocki
2016-01-06 16:19       ` Laura Abbott
2016-01-07  8:43         ` Mika Westerberg
2016-01-08  0:03         ` Rafael J. Wysocki
2016-01-08 17:08           ` Laura Abbott
2016-01-08 19:22             ` Hans de Goede
2016-01-11 16:33               ` Laura Abbott
2016-01-11 16:47                 ` Benjamin Tissoires

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=1448896304-87928-13-git-send-email-andriy.shevchenko@linux.intel.com \
    --to=andriy.shevchenko@linux.intel.com \
    --cc=arnd@arndb.de \
    --cc=gregkh@linuxfoundation.org \
    --cc=jarkko.nikula@linux.intel.com \
    --cc=kevin@scrye.com \
    --cc=lee.jones@linaro.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mika.westerberg@linux.intel.com \
    --cc=rjw@rjwysocki.net \
    --cc=wsa@the-dreams.de \
    /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 NNTP newsgroup(s).