From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1768060AbcHROl3 (ORCPT ); Thu, 18 Aug 2016 10:41:29 -0400 Received: from mail-wm0-f44.google.com ([74.125.82.44]:35144 "EHLO mail-wm0-f44.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1766766AbcHROl0 (ORCPT ); Thu, 18 Aug 2016 10:41:26 -0400 Date: Thu, 18 Aug 2016 15:34:40 +0100 From: Lee Jones To: Wadim Egorov Cc: linux-kernel@vger.kernel.org, rtc-linux@googlegroups.com, devicetree@vger.kernel.org, linux-rockchip@lists.infradead.org, dianders@chromium.org, zyw@rock-chips.com, robh+dt@kernel.org, mark.rutland@arm.com, lgirdwood@gmail.com, broonie@kernel.org, a.zummo@towertech.it, alexandre.belloni@free-electrons.com Subject: Re: [PATCH v7 1/4] mfd: RK808: Add RK818 support Message-ID: <20160818143440.GG4254@dell> References: <1470819907-11237-1-git-send-email-w.egorov@phytec.de> <1470819907-11237-2-git-send-email-w.egorov@phytec.de> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <1470819907-11237-2-git-send-email-w.egorov@phytec.de> User-Agent: Mutt/1.6.2 (2016-07-01) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 10 Aug 2016, Wadim Egorov wrote: > The RK818 chip is a Power Management IC (PMIC) for multimedia and handheld > devices. It contains the following components: > > - Regulators > - RTC > - Clocking > - Battery support > > Both RK808 and RK818 chips are using a similar register map, > so we can reuse the RTC and Clocking functionality. > > Signed-off-by: Wadim Egorov > Tested-by: Andy Yan > --- > Changes since v6: > - Squashed in the patch > mfd: RK808: Fetch PMIC variant from chip id register > > --- > drivers/mfd/Kconfig | 4 +- > drivers/mfd/rk808.c | 226 +++++++++++++++++++++++++++++++++++++++------- > include/linux/mfd/rk808.h | 154 +++++++++++++++++++++++++++++-- > 3 files changed, 342 insertions(+), 42 deletions(-) > > diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig > index 2d1fb64..a55be95 100644 > --- a/drivers/mfd/Kconfig > +++ b/drivers/mfd/Kconfig > @@ -852,13 +852,13 @@ config MFD_RC5T583 > different functionality of the device. > > config MFD_RK808 > - tristate "Rockchip RK808 Power Management chip" > + tristate "Rockchip RK808/RK818 Power Management Chip" > depends on I2C && OF > select MFD_CORE > select REGMAP_I2C > select REGMAP_IRQ > help > - If you say yes here you get support for the RK808 > + If you say yes here you get support for the RK808 and RK818 > Power Management chips. > This driver provides common support for accessing the device > through I2C interface. The device supports multiple sub-devices > diff --git a/drivers/mfd/rk808.c b/drivers/mfd/rk808.c > index 49d7f62..fbec1d8 100644 > --- a/drivers/mfd/rk808.c > +++ b/drivers/mfd/rk808.c > @@ -1,11 +1,15 @@ > /* > - * MFD core driver for Rockchip RK808 > + * MFD core driver for Rockchip RK808/RK818 > * > * Copyright (c) 2014, Fuzhou Rockchip Electronics Co., Ltd > * > * Author: Chris Zhong > * Author: Zhang Qing > * > + * Copyright (C) 2016 PHYTEC Messtechnik GmbH > + * > + * Author: Wadim Egorov > + * > * This program is free software; you can redistribute it and/or modify it > * under the terms and conditions of the GNU General Public License, > * version 2, as published by the Free Software Foundation. > @@ -22,6 +26,7 @@ > #include > #include > #include > +#include Alphabetical. > struct rk808_reg_data { > int addr; > @@ -57,6 +62,14 @@ static bool rk808_is_volatile_reg(struct device *dev, unsigned int reg) > return false; > } > > +static const struct regmap_config rk818_regmap_config = { > + .reg_bits = 8, > + .val_bits = 8, > + .max_register = RK818_USB_CTRL_REG, > + .cache_type = REGCACHE_RBTREE, > + .volatile_reg = rk808_is_volatile_reg, > +}; > + > static const struct regmap_config rk808_regmap_config = { > .reg_bits = 8, > .val_bits = 8, > @@ -79,11 +92,21 @@ static const struct mfd_cell rk808s[] = { > { > .name = "rk808-rtc", > .num_resources = ARRAY_SIZE(rtc_resources), > - .resources = &rtc_resources[0], > + .resources = rtc_resources, ? > }, > }; -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog