From: Stephen Warren <swarren@wwwdotorg.org>
To: Laxman Dewangan <ldewangan@nvidia.com>
Cc: "balbi@ti.com" <balbi@ti.com>,
Graeme Gregory <gg@slimlogic.co.uk>,
Kishon Vijay Abraham I <kishon@ti.com>,
Rajendra Nayak <rnayak@ti.com>,
"grant.likely@secretlab.ca" <grant.likely@secretlab.ca>,
"rob.herring@calxeda.com" <rob.herring@calxeda.com>,
"rob@landley.net" <rob@landley.net>,
"gregkh@linuxfoundation.org" <gregkh@linuxfoundation.org>,
"s-guiriec@ti.com" <s-guiriec@ti.com>,
"sameo@linux.intel.com" <sameo@linux.intel.com>,
"broonie@opensource.wolfsonmicro.com"
<broonie@opensource.wolfsonmicro.com>,
"devicetree-discuss@lists.ozlabs.org"
<devicetree-discuss@lists.ozlabs.org>,
"linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-usb@vger.kernel.org" <linux-usb@vger.kernel.org>
Subject: Re: [PATCH v3] USB: PHY: Palmas USB Transceiver Driver
Date: Tue, 26 Mar 2013 10:14:18 -0600 [thread overview]
Message-ID: <5151C95A.6080508@wwwdotorg.org> (raw)
In-Reply-To: <51517859.2020407@nvidia.com>
On 03/26/2013 04:28 AM, Laxman Dewangan wrote:
> On Tuesday 26 March 2013 03:51 PM, Felipe Balbi wrote:
>> On Tue, Mar 26, 2013 at 09:01:42AM +0000, Graeme Gregory wrote:
...
>>>>> + return regmap_read(palmas->regmap[slave], addr, dest);
>>>>>
>>>>>
>>>>> Please use the generic api for palmas_read()/palmas_write(0 as it will
>>>>> be ease on debugging on register access.
>>>>> Direct regmap_read() does not help much on this.
>>>>
>>>> Any reason why you dint use palmas_read()/palmas_write here?
>>>> Btw palmas_read()/palmas_write() internally uses regmap APIs.
>>>
>>> Because I was not a fan of tightly coupling the child devices to the
>>> parent MFD. palmas_read/write were added by Laxman.
>>
>> I guess regmap would also help abstracting SPI versus I2C connection.
>> IMHO, palmas_read/write should be removed.
>>
>> Laxman's complaint that it doesn't help with debugging is utter
>> nonsense.
>
> palams read/write api uses the regmap only and hence not break anything
> on abstraction.
> in place of doing the following three statement in whole word, it
> provides wrapper of palmas_read()
> which actually does the same.
>
> slave = PALMAS_BASE_TO_SLAVE(PALMAS_USB_OTG_BASE);
> addr = PALMAS_BASE_TO_REG(PALMAS_USB_OTG_BASE, reg);
> regmap_read(palmas->regmap[slave], addr, dest);
Why would you ever do that? Surely each module's probe should create or
obtain a regmap object somehow, and then all other code in that driver
should simply use regmap_read()/regmap_write() without having to perform
any kind of calculations at all.
If the MFD components truly are pluggable mix/match IP blocks, then all
the register offset #defines must all be relative to the base of the IP
block, so there would be no need for any calculations there.
The I2C address and base register address for the regmap object should
come from DT or platform data, and be used one time in probe() to create
the regmap object.
Then, there would be no need for palmas_read()/palmas_write().
> Above 3 lines in all the places for resgister access or make single call:
> palmas_read(palmas, PALMAS_USB_OTG_BASE, PALMAS_USB_OTG_BASE, dest).
>
> This function implement the above 3 lines.
next prev parent reply other threads:[~2013-03-26 16:14 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-07 13:21 [PATCH v2 0/4] usb: added palmas-usb driver and a few misc fixes Kishon Vijay Abraham I
2013-03-07 13:21 ` [PATCH v2 1/4] usb: dwc3: set dma_mask for dwc3_omap device Kishon Vijay Abraham I
2013-03-07 13:21 ` [PATCH v2 2/4] usb: dwc3: dwc3-omap: return -EPROBE_DEFER if probe has not yet executed Kishon Vijay Abraham I
2013-03-07 13:21 ` [PATCH v2 3/4] USB: Palmas OTG Transceiver Driver Kishon Vijay Abraham I
2013-03-14 13:56 ` Felipe Balbi
2013-03-14 14:53 ` kishon
2013-03-25 9:32 ` [PATCH v3] USB: PHY: Palmas USB " Kishon Vijay Abraham I
2013-03-25 9:46 ` Laxman Dewangan
2013-03-26 6:03 ` Kishon Vijay Abraham I
2013-03-26 9:01 ` Graeme Gregory
2013-03-26 9:12 ` Laxman Dewangan
2013-03-26 9:27 ` Graeme Gregory
2013-03-26 9:34 ` Laxman Dewangan
2013-03-26 9:51 ` Graeme Gregory
2013-03-26 11:28 ` Laxman Dewangan
2013-03-26 16:22 ` Stephen Warren
2013-03-26 16:57 ` Graeme Gregory
2013-03-26 20:23 ` Stephen Warren
2013-03-27 11:03 ` Graeme Gregory
2013-03-26 10:21 ` Felipe Balbi
2013-03-26 10:28 ` Laxman Dewangan
2013-03-26 12:07 ` Felipe Balbi
2013-03-26 16:14 ` Stephen Warren [this message]
2013-03-26 10:19 ` Felipe Balbi
2013-05-06 13:17 ` [PATCH v4] extcon: Palmas Extcon Driver Kishon Vijay Abraham I
2013-05-06 14:26 ` Laxman Dewangan
2013-05-07 5:06 ` Kishon Vijay Abraham I
2013-05-06 14:40 ` Mark Brown
2013-05-07 5:12 ` Kishon Vijay Abraham I
2013-05-07 7:58 ` Mark Brown
2013-05-07 9:47 ` Kishon Vijay Abraham I
2013-05-07 9:49 ` Graeme Gregory
2013-05-07 10:45 ` Mark Brown
2013-05-14 9:18 ` Kishon Vijay Abraham I
2013-05-14 9:54 ` Graeme Gregory
2013-05-14 18:43 ` Laxman Dewangan
2013-05-07 0:43 ` myungjoo.ham
2013-05-07 5:21 ` Kishon Vijay Abraham I
2013-05-22 6:23 ` Kishon Vijay Abraham I
2013-05-07 6:10 ` Chanwoo Choi
2013-05-07 6:25 ` Kishon Vijay Abraham I
2013-05-07 6:57 ` Chanwoo Choi
2013-05-07 7:05 ` Chanwoo Choi
2013-05-07 8:17 ` Kishon Vijay Abraham I
2013-03-07 13:21 ` [PATCH v2 4/4] usb: musb: omap2430: replace *_* with *-* in property names Kishon Vijay Abraham I
2013-03-14 13:57 ` Felipe Balbi
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=5151C95A.6080508@wwwdotorg.org \
--to=swarren@wwwdotorg.org \
--cc=balbi@ti.com \
--cc=broonie@opensource.wolfsonmicro.com \
--cc=devicetree-discuss@lists.ozlabs.org \
--cc=gg@slimlogic.co.uk \
--cc=grant.likely@secretlab.ca \
--cc=gregkh@linuxfoundation.org \
--cc=kishon@ti.com \
--cc=ldewangan@nvidia.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=rnayak@ti.com \
--cc=rob.herring@calxeda.com \
--cc=rob@landley.net \
--cc=s-guiriec@ti.com \
--cc=sameo@linux.intel.com \
/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