Re: [REPOST][PATCH] Fix IGEPv2 second MMC channel power supply

2010-12-14 Thread Enric Balletbò i Serra
2010/12/13 Tony Lindgren t...@atomide.com:
 * Enric Balletbò i Serra eballe...@gmail.com [101213 08:47]:

 Tony, please can this patch be included before 2.6.37 ? Without this
 patch the wifi module on IGEP v2 board not works.

 Sorry it's too much for the -rc series. For the -rc series
 the fixes should be major bugs. This is in the category
 it never worked before.

 I will add it to omap-boards branch for the next merge window
 over the next few days while going through all the pending
 patches in patchwork.

Ok, I'll wait :-) thanks

Cheers,
   Enric
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [REPOST][PATCH] Fix IGEPv2 second MMC channel power supply

2010-12-13 Thread Enric Balletbò i Serra
Hi all,

2010/12/4 Marc Zyngier m...@misterjones.org:
 Commit 72f381ba056 (omap3: Remove VMMC2 regulator on IGEP v2)
 removed an unused regulator entry, but left the second MMC channel
 (used by the Libertas WLAN module) without link to power regulator.
 This causes the SDIO module to fail being detected.

 This patch adds the two regulators that actually feed the WLAN module
 (1v8 from the TWL4030 VIO LDO, and a fixed 3v3). With that patch, the
 second channel is properly detected. Details of the power supply
 implementation were kindly provided by Enric Balletbo i Serra.

 Also change vmmc1 to use symbolic names instead of direct device
 reference.

 Tested on an IGEPv2 Rev-B.

 Signed-off-by: Marc Zyngier m...@misterjones.org
 Acked-by: Enric Balletbo i Serra eballe...@gmail.com
 Cc: Tony Lindgren t...@atomide.com
 ---
  arch/arm/mach-omap2/board-igep0020.c |   61 -
  1 files changed, 51 insertions(+), 10 deletions(-)

 diff --git a/arch/arm/mach-omap2/board-igep0020.c 
 b/arch/arm/mach-omap2/board-igep0020.c
 index 5e035a5..9a85e60 100644
 --- a/arch/arm/mach-omap2/board-igep0020.c
 +++ b/arch/arm/mach-omap2/board-igep0020.c
 @@ -19,6 +19,7 @@
  #include linux/interrupt.h

  #include linux/regulator/machine.h
 +#include linux/regulator/fixed.h
  #include linux/i2c/twl.h
  #include linux/mmc/host.h

 @@ -257,9 +258,8 @@ static inline void __init igep2_init_smsc911x(void) { }
  static struct omap_board_config_kernel igep2_config[] __initdata = {
  };

 -static struct regulator_consumer_supply igep2_vmmc1_supply = {
 -       .supply         = vmmc,
 -};
 +static struct regulator_consumer_supply igep2_vmmc1_supply =
 +       REGULATOR_SUPPLY(vmmc, mmci-omap-hs.0);

  /* VMMC1 for OMAP VDD_MMC1 (i/o) and MMC1 card */
  static struct regulator_init_data igep2_vmmc1 = {
 @@ -276,6 +276,52 @@ static struct regulator_init_data igep2_vmmc1 = {
        .consumer_supplies      = igep2_vmmc1_supply,
  };

 +static struct regulator_consumer_supply igep2_vio_supply =
 +       REGULATOR_SUPPLY(vmmc_aux, mmci-omap-hs.1);
 +
 +static struct regulator_init_data igep2_vio = {
 +       .constraints = {
 +               .min_uV                 = 180,
 +               .max_uV                 = 180,
 +               .apply_uV               = 1,
 +               .valid_modes_mask       = REGULATOR_MODE_NORMAL
 +                                       | REGULATOR_MODE_STANDBY,
 +               .valid_ops_mask         = REGULATOR_CHANGE_VOLTAGE
 +                                       | REGULATOR_CHANGE_MODE
 +                                       | REGULATOR_CHANGE_STATUS,
 +       },
 +       .num_consumer_supplies  = 1,
 +       .consumer_supplies      = igep2_vio_supply,
 +};
 +
 +static struct regulator_consumer_supply igep2_vmmc2_supply =
 +       REGULATOR_SUPPLY(vmmc, mmci-omap-hs.1);
 +
 +static struct regulator_init_data igep2_vmmc2 = {
 +       .constraints            = {
 +               .valid_modes_mask       = REGULATOR_MODE_NORMAL,
 +               .always_on              = 1,
 +       },
 +       .num_consumer_supplies  = 1,
 +       .consumer_supplies      = igep2_vmmc2_supply,
 +};
 +
 +static struct fixed_voltage_config igep2_vwlan = {
 +       .supply_name            = vwlan,
 +       .microvolts             = 330,
 +       .gpio                   = -EINVAL,
 +       .enabled_at_boot        = 1,
 +       .init_data              = igep2_vmmc2,
 +};
 +
 +static struct platform_device igep2_vwlan_device = {
 +       .name           = reg-fixed-voltage,
 +       .id             = 0,
 +       .dev = {
 +               .platform_data  = igep2_vwlan,
 +       },
 +};
 +
  static struct omap2_hsmmc_info mmc[] = {
        {
                .mmc            = 1,
 @@ -373,12 +419,6 @@ static int igep2_twl_gpio_setup(struct device *dev,
        omap2_hsmmc_init(mmc);

        /*
 -        * link regulators to MMC adapters ... we know the
 -        * regulators will be set up only *after* we return.
 -        */
 -       igep2_vmmc1_supply.dev = mmc[0].dev;
 -
 -       /*
         * REVISIT: need ehci-omap hooks for external VBUS
         * power switch and overcurrent detect
         */
 @@ -489,6 +529,7 @@ static void __init igep2_display_init(void)

  static struct platform_device *igep2_devices[] __initdata = {
        igep2_dss_device,
 +       igep2_vwlan_device,
  };

  static void __init igep2_init_irq(void)
 @@ -519,7 +560,7 @@ static struct twl4030_platform_data igep2_twldata = {
        .gpio           = igep2_twl4030_gpio_pdata,
        .vmmc1          = igep2_vmmc1,
        .vpll2          = igep2_vpll2,
 -
 +       .vio            = igep2_vio,
  };

  static struct i2c_board_info __initdata igep2_i2c1_boardinfo[] = {
 --
 1.7.3.2



Tony, please can this patch be included before 2.6.37 ? Without this
patch the wifi module on IGEP v2 board not works.

Thanks,
   Enric Balletbo i Serra.
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the 

Re: [REPOST][PATCH] Fix IGEPv2 second MMC channel power supply

2010-12-13 Thread Tony Lindgren
* Enric Balletbò i Serra eballe...@gmail.com [101213 08:47]:
 
 Tony, please can this patch be included before 2.6.37 ? Without this
 patch the wifi module on IGEP v2 board not works.

Sorry it's too much for the -rc series. For the -rc series
the fixes should be major bugs. This is in the category
it never worked before.

I will add it to omap-boards branch for the next merge window
over the next few days while going through all the pending
patches in patchwork.

Cheers,

Tony
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html