All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lokesh Vutla <lokeshvutla@ti.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH V2 09/12] mmc: omap_hsmmc: add mmc1 pbias, ldo1
Date: Thu, 6 Jun 2013 16:56:51 +0530	[thread overview]
Message-ID: <51B071FB.5060601@ti.com> (raw)
In-Reply-To: <51B0395F.7050401@mm-sol.com>

Hi Lubomir,
On Thursday 06 June 2013 12:55 PM, Lubomir Popov wrote:
> Hi Tom,
>
> On 05/06/13 16:45, Tom Rini wrote:
>> On Wed, Jun 05, 2013 at 11:03:26AM +0300, Lubomir Popov wrote:
>>
>>> Hi Tom,
>>>
>>> On 05/06/13 00:06, Tom Rini wrote:
>>>> On Mon, Jun 03, 2013 at 10:58:27PM +0300, Lubomir Popov wrote:
>>>>> Hi Lokesh,
>>>>>
>>>>>> Hi Lubomir,
>>>>>> On Thursday 30 May 2013 07:56 PM, Lubomir Popov wrote:
>>>>>>> Hi Lokesh,
>>>>>>>
>>>>>>> On 30/05/13 16:19, Lokesh Vutla wrote:
>>>>>>>> From: Balaji T K <balajitk@ti.com>
>>>>>>>>
>>>>>>>> add dra mmc pbias support and ldo1 power on
>>>>>>>>
>>>>>>>> Signed-off-by: Balaji T K <balajitk@ti.com>
>>>>>>>> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
>>>>>>>> ---
>>>>>>>>    arch/arm/include/asm/arch-omap5/omap.h |    3 ++-
>>>>>>>>    drivers/mmc/omap_hsmmc.c               |   26 ++++++++++++++------------
>>>>>>>>    drivers/power/palmas.c                 |   25 ++++++++++++++++++++++++-
>>>>>>>>    include/configs/omap5_common.h         |    4 ++++
>>>>>>>>    include/configs/omap5_uevm.h           |    5 -----
>>>>>>>>    include/palmas.h                       |    6 +++++-
>>>>>>>>    6 files changed, 49 insertions(+), 20 deletions(-)
>>>>>>>>
>>>>> [snip]
>>>>>>>> +	/* set LDO9 TWL6035 to 3V */
>>>>>>> LDO9? TWL6035? If this function is used on the DRA7xx boards only (with
>>>>>>> TPS659038), you should add some comment above.
>>>>>> Ok ll add the comment.
>>>>>>>
>>>>>>>> +	val = 0x2b; /* (3 - 0.9) * 20 + 1 */
>>>>>>> Why not use definitions for the voltage? You could take them from
>>>>>>> http://patchwork.ozlabs.org/patch/244103/ where some values are
>>>>>>> defined.
>>>>>> Yes, Ill rebase this patch on top of your patch and use those defines.
>>>>> Please be aware that my above mentioned patch has not been reviewed/
>>>>> tested/acked/nacked/whatever by nobody (except possibly a quick look by
>>>>> Nishanth Menon, who had some objections). I wrote it when bringing up a
>>>>> custom OMAP5 board, and most probably it shall not go into mainline in
>>>>> its current form, if ever. I gave it only as an example of how things
>>>>> could be done cleaner. Feel free to use the code as you wish, but I'm
>>>>> afraid that applying it as a patch to your tree and basing upon it might
>>>>> run you into problems when you later sync with mainline.
>>>>>
>>>>> Tom, your opinion?
>>>>
>>>> OK, so at the time it was "nothing will really use this code except test
>>>> functions".  Looks like we have a use for mmc1_ldo9 code at least, so
>>>> lets rework the first patch for adding that + cleanups wrt constants.
>>> Well, I'm not quite sure that this LDO9 function would be the only one
>>> used (or LDO1 on the DRA7xx board). Judging from omapboot for the OMAP5
>>> boards for example, SMPS7 (it delivers the common 1.8 V I/O supply) is
>>> set to 'Forced PWM' mode in order to reduce board noise - there sure has
>>> been a reason to do so and sacrifice converter efficiency. Therefore I
>>> added similar functionality in my patch to the Palmas driver (and am
>>> explicitly calling it in my board init).
>>> The option to bypass LDO9 on OMAP5+TWL603x boards seems quite mandatory
>>> as well, if hardware is designed such that the SD card socket has a
>>> separate fixed 3.3 V supply which also powers the LDO9 input (the
>>> uEVM for example). On the DRA7xx+TPS659038 board the power scheme is
>>> different and this does not apply.
>>
>> OK, lets see.  That so lets keep your patch as-is, since we've now got
>> -ffunction-sections/-fdata-sections/--gc-sections on ARM for main
>> U-Boot, these small things won't hurt like they used to.
>>
> OK, but then I would like to do some cleanup first - remove the audio
> power stuff (shall have it in my board file), as well as either sort out
> the function naming:
>
> - Those functions that are specific to a SoC+PMIC combination are
> named e.g. twl603x_... or tps659038_... so that they explicitly
> indicate the hardware that they are working with (actually almost all
> functions are such). This is however sort of regression, and requires
> fixes in the files calling these functions;
>
> or, alternatively:
>
> - Introduce generic functions with fixed names, palmas_bla_bla(),
> sort of wrappers, which in their bodies perform the appropriate action
> based on the #ifdefs defining the platform hardware (where we could also
> define the particular LDO which for example a palmas_mmc1_poweron_ldo()
> generic function would manipulate). Drawback: again #ifdefs.
> Advantage: single place where this stuff is located, and where other
> PMIC/LDO combinations can be added without affecting other code.
I think, we can have function pointers for and can populate data in the
beginning or from board file based on Soc, similarly what we did for
prcm structure.
Regards,
Lokesh
> And this generic palmas_mmc1_poweron_ldo() function would be called
> by another generic function, e.g. omap_sdmmc_poweron(), located in
> the board file, only if needed by the particular hardware.
> omap_sdmmc_poweron(), on its hand, is the function that is to be called
> from within the pbias routines in omap_hsmmc.c, and not the hardware-
> dependant functions directly. So we get the abstraction.
>
> What do you think? Lokesh, your opinion?
>
> Regards,
> Lubo
>

  reply	other threads:[~2013-06-06 11:26 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-30 13:19 [U-Boot] [PATCH V2 00/12] ARM: DRA7xx: Update support for DRA7xx Soc's Lokesh Vutla
2013-05-30 13:19 ` [U-Boot] [PATCH V2 01/12] ARM: DRA7xx: Add control id code for DRA7xx Lokesh Vutla
2013-05-30 13:19 ` [U-Boot] [PATCH V2 02/12] ARM: DRA7xx: power Add support for tps659038 PMIC Lokesh Vutla
2013-05-30 13:19 ` [U-Boot] [PATCH V2 03/12] ARM: DRA7xx: clocks: Fixing i2c_init for PMIC Lokesh Vutla
2013-05-30 13:19 ` [U-Boot] [PATCH V2 04/12] ARM: OMAP5: DRA7xx: support class 0 optimized voltages Lokesh Vutla
2013-05-30 13:19 ` [U-Boot] [PATCH V2 05/12] ARM: DRA7xx: Do not enable srcomp for DRA7xx Soc's Lokesh Vutla
2013-05-30 13:19 ` [U-Boot] [PATCH V2 06/12] ARM: DRA7xx: Change the Debug UART to UART1 Lokesh Vutla
2013-05-30 13:19 ` [U-Boot] [PATCH V2 07/12] ARM: DRA7xx: Correct the SYS_CLK to 20MHZ Lokesh Vutla
2013-05-30 13:19 ` [U-Boot] [PATCH V2 08/12] ARM: DRA7xx: Correct SRAM END address Lokesh Vutla
2013-05-30 13:19 ` [U-Boot] [PATCH V2 09/12] mmc: omap_hsmmc: add mmc1 pbias, ldo1 Lokesh Vutla
2013-05-30 14:26   ` Lubomir Popov
2013-06-03 11:01     ` Lokesh Vutla
2013-06-03 19:58       ` Lubomir Popov
2013-06-04  5:13         ` Lokesh Vutla
2013-06-04 21:06         ` Tom Rini
2013-06-05  6:06           ` Lokesh Vutla
2013-06-05  8:03           ` Lubomir Popov
2013-06-05 13:45             ` Tom Rini
2013-06-06  7:25               ` Lubomir Popov
2013-06-06 11:26                 ` Lokesh Vutla [this message]
2013-06-06 12:17                   ` Lubomir Popov
2013-06-05 14:01             ` Nishanth Menon
2013-06-05 16:35               ` Lubomir Popov
2013-06-05 16:55                 ` Nishanth Menon
2013-06-05 20:11                   ` Lubomir Popov
2013-06-03 12:48   ` [U-Boot] [PATCH V3] " Lokesh Vutla
2013-06-05  6:26   ` [U-Boot] [PATCH V4 09/12] " Lokesh Vutla
2013-06-06 15:04   ` [U-Boot] [PATCH V5 09/12] mmc: omap_hsmmc: Update pbias programming Lokesh Vutla
2013-05-30 13:19 ` [U-Boot] [PATCH V2 10/12] ARM: DRA7xx: Update pinmux data Lokesh Vutla
2013-05-30 13:19 ` [U-Boot] [PATCH V2 11/12] ARM: DRA7xx: clocks: Update PLL values Lokesh Vutla
2013-05-30 13:19 ` [U-Boot] [PATCH V2 12/12] ARM: DRA7xx: EMIF: Change settings required for EVM board Lokesh Vutla
2013-06-06 11:28 ` [U-Boot] [PATCH V2 00/12] ARM: DRA7xx: Update support for DRA7xx Soc's Lokesh Vutla
2013-06-06 13:26   ` Tom Rini
2013-06-06 13:37     ` Lubomir Popov
2013-06-06 14:00       ` Lokesh Vutla

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=51B071FB.5060601@ti.com \
    --to=lokeshvutla@ti.com \
    --cc=u-boot@lists.denx.de \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.