From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758146AbcATHxR (ORCPT ); Wed, 20 Jan 2016 02:53:17 -0500 Received: from mailout2.w1.samsung.com ([210.118.77.12]:65056 "EHLO mailout2.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750913AbcATHxJ (ORCPT ); Wed, 20 Jan 2016 02:53:09 -0500 X-AuditID: cbfec7f5-f79b16d000005389-79-569f3ce2b55c Subject: Re: [PATCH v5 1/2] mfd: act8945a: add Active-semi ACT8945A PMIC MFD driver To: "Yang, Wenyou" , Peter Korsgaard References: <1452747845-2962-1-git-send-email-wenyou.yang@atmel.com> <1452747845-2962-2-git-send-email-wenyou.yang@atmel.com> <87pox41dy9.fsf@dell.be.48ers.dk> <8737tzz33h.fsf@dell.be.48ers.dk> <87d1swvgv8.fsf@dell.be.48ers.dk> <569F3C45.7090109@atmel.com> Cc: Lee Jones , Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala , "devicetree@vger.kernel.org" , "Ferre, Nicolas" , "linux-kernel@vger.kernel.org" , Javier Martinez Canillas , "linux-arm-kernel@lists.infradead.org" From: Krzysztof Kozlowski Message-id: <569F3CE0.6020107@samsung.com> Date: Wed, 20 Jan 2016 16:53:04 +0900 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 MIME-version: 1.0 In-reply-to: <569F3C45.7090109@atmel.com> Content-type: text/plain; charset=windows-1252 Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprJIsWRmVeSWpSXmKPExsVy+t/xK7qPbOaHGZx9KWIx/8g5Vov+NwtZ Lc69Wsloce33DDaL1y8MLe5/PcposenxNVaLy7vmsFksvX6RyeLb5WZ2iwnT17JYrO4+wGLR uvcIu8XtXxtYHPg81sxbw+ix4NdWFo/Lfb1MHn9ntzJ7rFz+hc1j06pONo+vX+cyety5tofN Y/OSeo++LasYPT5vkgvgjuKySUnNySxLLdK3S+DKOPJFtuAFZ8Xv7gssDYwz2bsYOTkkBEwk Fh5vZoOwxSQu3FsPZHNxCAksZZTo3ryQBcJ5yiix/+B7ZpAqYYFQiXfv+4C6OThEBIIlJncr QtR8YZLYP+8rO4jDLDCJReLYi+msIA1sAsYSm5cvAVvBK6AlcfRtKyOIzSKgKvHw7UWwoaIC ERKHO7vYIWoEJX5MvscCYnMKaEr8+vKXFWQZs4CexP2LWiBhZgF5ic1r3jJPYBSYhaRjFkLV LCRVCxiZVzGKppYmFxQnpeca6RUn5haX5qXrJefnbmKERNjXHYxLj1kdYhTgYFTi4WVsnhcm xJpYVlyZe4hRgoNZSYQ3RX9+mBBvSmJlVWpRfnxRaU5q8SFGaQ4WJXHembvehwgJpCeWpGan phakFsFkmTg4pRoY+7mkzYI+ZcbsvLooIYLTcIuW+sqNIgc51kwV2S8pJa3ikf1w8WKBpPUv U2wP5SeVNEe5nX/1pFVUWPZGvqyA1boP6+cyamzfI9BxSfLlgYmG8w57JrS8rXgt5XLvhjRL zcXEOxvmhC2s6g5jeig4e+2awMZw2w0+BtvCCq+o9B/RY5x7zvmLEktxRqKhFnNRcSIAJO95 U6wCAAA= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 20.01.2016 16:50, Yang, Wenyou wrote: > Hi Peter, > > On 2016/1/20 15:40, Peter Korsgaard wrote: >>>>>>> "Yang," == Yang, Wenyou writes: >> Hi, >> >>>> But the charger driver can just as well do: >> >> >> >> dev_get_regmap(dev->parent); >> >> >> >> instead of: >> >> >> >> dev_get_drvdata(pdev->dev.parent)->regmap. >> >> > For regulator, it works use the core do dev_get_regmap(dev->parent), >> > but for charger, it need to export *act8945a. >> >> Why? > > There is a callback (*get_property)(...), who will read the charger > register via regmap, > > but it doesn't provide the argument for regmap. > > include/linux/power_supply.h > > struct power_supply_desc { > [ ... ] > int (*get_property)(struct power_supply *psy, > enum power_supply_property psp, > union power_supply_propval *val); > [ ... ] > > } > >> >> Just like the regulator core does, your battery driver can do: >> >> dev_get_regmap(dev->parent); >> Why can't you store the pointer to regmap as power supply driver data? There is really no need for the structure containing only one pointer. BR, Krzysztof