From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753979AbbHENzM (ORCPT ); Wed, 5 Aug 2015 09:55:12 -0400 Received: from mga11.intel.com ([192.55.52.93]:26705 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752812AbbHENzJ (ORCPT ); Wed, 5 Aug 2015 09:55:09 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.15,617,1432623600"; d="scan'208";a="762481856" From: Andy Shevchenko To: ","@black.fi.intel.com, linux-kernel@vger.kernel.org, Lee Jones , Mika Westerberg , Heikki Krogerus , "Rafael J . Wysocki" Cc: Andy Shevchenko Subject: [PATCH 1/1] mfd: core: propagate device properties to sub devices drivers Date: Wed, 5 Aug 2015 16:55:05 +0300 Message-Id: <1438782905-10758-1-git-send-email-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.4.6 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 --- drivers/mfd/mfd-core.c | 3 +++ include/linux/mfd/core.h | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/drivers/mfd/mfd-core.c b/drivers/mfd/mfd-core.c index c17635d..f0d6e45 100644 --- a/drivers/mfd/mfd-core.c +++ b/drivers/mfd/mfd-core.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include @@ -172,6 +173,8 @@ static int mfd_add_device(struct device *parent, int id, goto fail_alias; } + device_add_property_set(&pdev->dev, cell->pset); + 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 a76bc10..5009522 100644 --- a/include/linux/mfd/core.h +++ b/include/linux/mfd/core.h @@ -15,6 +15,7 @@ #define MFD_CORE_H #include +#include struct irq_domain; @@ -38,6 +39,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 */ + struct property_set *pset; + /* * Device Tree compatible string * See: Documentation/devicetree/usage-model.txt Chapter 2.2 for details -- 2.4.6