Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754197AbbGUKdl (ORCPT ); Tue, 21 Jul 2015 06:33:41 -0400 Received: from mail1.bemta14.messagelabs.com ([193.109.254.116]:61644 "EHLO mail1.bemta14.messagelabs.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752507AbbGUKdi (ORCPT ); Tue, 21 Jul 2015 06:33:38 -0400 X-Env-Sender: stwiss.opensource@diasemi.com X-Msg-Ref: server-2.tower-193.messagelabs.com!1437474815!21797245!1 X-Originating-IP: [82.210.246.133] X-StarScan-Received: X-StarScan-Version: 6.13.16; banners=-,-,- X-VirusChecked: Checked Message-ID: From: S Twiss Date: Tue, 21 Jul 2015 11:29:07 +0100 Subject: [PATCH V3 0/3] da9062: Add DA9062 RTC support using the existing DA9063 RTC driver To: Alessandro Zummo , Alexandre Belloni , DEVICETREE , Ian Campbell , Kumar Gala , LINUXINPUT , LINUXKERNEL , Lee Jones , Mark Rutland , Pawel Moll , RTCLINUX , Rob Herring , S Twiss , Samuel Ortiz CC: David Dajun Chen , Support Opensource MIME-Version: 1.0 Content-Type: text/plain X-EXCLAIMER-MD-CONFIG: 8d172408-bd6a-42b1-8e53-daaedf35a5af Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3503 Lines: 79 From: S Twiss This patch set adds RTC support for the Dialog DA9062 Power Management IC. Changes are made to the existing DA9063 RTC component so that functionality in this device driver can be re-used to support the DA9062 RTC. This following patch set is the proposed method for re-using existing kernel RTC drivers for chips whose RTC blocks are functionally similar to the DA9063 RTC. There is already a precedence for reuse of this type in the kernel, see linux-mainline/v4.1 drivers/rtc/rtc-pm8xxx.c +34 This patch set will follow that example. The main points for the MFD core and device tree changes are as follows. - Alteration of the DA9063 RTC Kconfig needs to be updated to depend on both MFD_DA9063 "or" MFD_DA9062. There is no explicit DA9062 RTC Kconfig. - The DA9062 MFD core should add a new RTC resource as usual and an entry in the mfd_cell to support a component name and of_compatible for "da9062-rtc" and "dlg,da9062-rtc". - The device tree binding support should include a compatible string for "dlg,da9062-rtc" The main points for the RTC changes are as follows: A generic structure is used (called da9063_compatible_rtc_regmap) to hold all generic registers and bitmasks for use with this type of RTC component. Functions in the DA9063 RTC will be refactored to use this compatibility struct and all accesses to generic registers/masks will be made through this table look-up instead of using defines from the register header files directly Linkage between the DA9062 MFD and the DA9063 RTC driver is created through the use of an of_match_table entry in the platform_driver structure. A re-work of da9063_rtc_probe() is necessary to use the of_match_node() and dev_get_regmap() functions: this will provide initialisation of the generic registers and masks and allow access to the regmap according to the correct device tree specification. The addition of a of_device_id table for DA9063 and DA9062 default data is created. This method of initialisation for the DA9063 RTC component works well for different chip types, and is only slightly complicated when distinguishing the difference between support for DA9063-AD and DA9063-BB. In this patch set the following is provided: - [PATCH V3 1/3]: MFD changes in DA9062 to support RTC - [PATCH V3 2/3]: Device tree bindings for DA9062 RTC component - [PATCH V3 3/3]: Update existing DA9063 RTC to add DA9062 support This patch applies against linux-next and next-20150708 Thank you, Steve Twiss, Dialog Semiconductor Ltd. Changes in V2: - Reorder patches RFC PATCH 3/3 and 2/3 to remove the checkpatch warning > WARNING: DT compatible string "dlg,da9062-rtc" appears un-documented S Twiss (3): mfd: da9062: Support for the DA9063 RTC in the DA9062 core devicetree: da9062: Add device tree bindings for DA9062 RTC rtc: da9063: Add DA9062 RTC capability to DA9063 RTC driver Documentation/devicetree/bindings/mfd/da9062.txt | 9 + drivers/mfd/da9062-core.c | 11 + drivers/rtc/Kconfig | 6 +- drivers/rtc/rtc-da9063.c | 391 ++++++++++++++++------- 4 files changed, 302 insertions(+), 115 deletions(-) -- end-of-patch for PATCH V3 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/