From: Marek Vasut <marek.vasut@gmail.com>
To: Vasily Khoruzhick <anarsoul@gmail.com>
Cc: linux-arm-kernel@lists.infradead.org,
Ben Dooks <ben-linux@fluff.org>,
"Arnaud Patard (Rtp)" <arnaud.patard@rtp-net.org>,
linux-samsung-soc@vger.kernel.org
Subject: Re: [PATCH 3/3] h1940: implement mmc_power function
Date: Tue, 24 Aug 2010 16:01:12 +0200 [thread overview]
Message-ID: <201008241601.12355.marek.vasut@gmail.com> (raw)
In-Reply-To: <201008241700.31513.anarsoul@gmail.com>
Dne Út 24. srpna 2010 16:00:26 Vasily Khoruzhick napsal(a):
> В сообщении от 24 августа 2010 16:52:42 автор Marek Vasut написал:
> > Dne Čt 19. srpna 2010 17:00:03 Vasily Khoruzhick napsal(a):
> > > Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
> > > ---
> > >
> > > arch/arm/mach-s3c2410/include/mach/h1940-latch.h | 2 +-
> > > arch/arm/mach-s3c2410/mach-h1940.c | 23
> > >
> > > +++++++++++++++++++-- 2 files changed, 21 insertions(+), 4 deletions(-)
> > >
> > > diff --git a/arch/arm/mach-s3c2410/include/mach/h1940-latch.h
> > > b/arch/arm/mach-s3c2410/include/mach/h1940-latch.h index
> > > 73586f2..ef7d8cf 100644
> > > --- a/arch/arm/mach-s3c2410/include/mach/h1940-latch.h
> > > +++ b/arch/arm/mach-s3c2410/include/mach/h1940-latch.h
> > > @@ -35,7 +35,7 @@
> > >
> > > #define H1940_LATCH_AUDIO_POWER H1940_LATCH_GPIO(9)
> > > #define H1940_LATCH_SM803_ENABLE H1940_LATCH_GPIO(10)
> > > #define H1940_LATCH_LCD_P4 H1940_LATCH_GPIO(11)
> > >
> > > -#define H1940_LATCH_CPUQ5 H1940_LATCH_GPIO(12)
> > > +#define H1940_LATCH_SD_POWER H1940_LATCH_GPIO(12)
> > >
> > > #define H1940_LATCH_BLUETOOTH_POWER H1940_LATCH_GPIO(13)
> > > #define H1940_LATCH_LED_GREEN H1940_LATCH_GPIO(14)
> > > #define H1940_LATCH_LED_FLASH H1940_LATCH_GPIO(15)
> > >
> > > diff --git a/arch/arm/mach-s3c2410/mach-h1940.c
> > > b/arch/arm/mach-s3c2410/mach-h1940.c index 9717790..c1ccc8e 100644
> > > --- a/arch/arm/mach-s3c2410/mach-h1940.c
> > > +++ b/arch/arm/mach-s3c2410/mach-h1940.c
> > > @@ -116,8 +116,7 @@ static unsigned int latch_state =
> > > H1940_LATCH_BIT(H1940_LATCH_LCD_P4) |
> > > H1940_LATCH_BIT(H1940_LATCH_LCD_P1) |
> > >
> > > H1940_LATCH_BIT(H1940_LATCH_LCD_P2) |
> > > H1940_LATCH_BIT(H1940_LATCH_LCD_P3) |
> > >
> > > - H1940_LATCH_BIT(H1940_LATCH_MAX1698_nSHUTDOWN) |
> > > - H1940_LATCH_BIT(H1940_LATCH_CPUQ5);
> > > + H1940_LATCH_BIT(H1940_LATCH_MAX1698_nSHUTDOWN);
> > >
> > > static void h1940_latch_control(unsigned int clear, unsigned int set)
> > > {
> > >
> > > @@ -259,10 +258,25 @@ static struct platform_device
> > > h1940_device_bluetooth = { .id = -1,
> > >
> > > };
> > >
> > > +static void h1940_set_mmc_power(unsigned char power_mode, unsigned
> > > short vdd) +{
> > > + switch (power_mode) {
> > > + case MMC_POWER_OFF:
> > > + gpio_set_value(H1940_LATCH_SD_POWER, 0);
> > > + break;
> > > + case MMC_POWER_UP:
> > > + case MMC_POWER_ON:
> > > + gpio_set_value(H1940_LATCH_SD_POWER, 1);
> > > + break;
> > > + default:
> > > + break;
> > > + };
> > > +}
> > > +
> > >
> > > static struct s3c24xx_mci_pdata h1940_mmc_cfg __initdata = {
> > >
> > > .gpio_detect = S3C2410_GPF(5),
> > > .gpio_wprotect = S3C2410_GPH(8),
> > >
> > > - .set_power = NULL,
> > > + .set_power = h1940_set_mmc_power,
> > >
> > > .ocr_avail = MMC_VDD_32_33,
> > >
> > > };
> >
> > Can't you implement gpio_power into the s3c24xx mmc driver ? Then you can
> > fix mach-n30 too.
>
> Well, I'm happy with callback. However, maybe it worth to replace set_power
> callback with regulator.
>
> > > @@ -402,6 +416,9 @@ static void __init h1940_init(void)
> > >
> > > gpio_request(H1940_LATCH_USB_DP, "USB pullup");
> > > gpio_direction_output(H1940_LATCH_USB_DP, 0);
> > >
> > > + gpio_request(H1940_LATCH_SD_POWER, "SD power");
> > > + gpio_direction_output(H1940_LATCH_SD_POWER, 0);
> >
> > Please handle possible return values here !
>
> Ok, I suppose WARN_ON will be enought?
pr_err() and don't probe the device for which you couldn't request GPIO.
Cheers
WARNING: multiple messages have this Message-ID (diff)
From: marek.vasut@gmail.com (Marek Vasut)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 3/3] h1940: implement mmc_power function
Date: Tue, 24 Aug 2010 16:01:12 +0200 [thread overview]
Message-ID: <201008241601.12355.marek.vasut@gmail.com> (raw)
In-Reply-To: <201008241700.31513.anarsoul@gmail.com>
Dne ?t 24. srpna 2010 16:00:26 Vasily Khoruzhick napsal(a):
> ? ????????? ?? 24 ??????? 2010 16:52:42 ????? Marek Vasut ???????:
> > Dne ?t 19. srpna 2010 17:00:03 Vasily Khoruzhick napsal(a):
> > > Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
> > > ---
> > >
> > > arch/arm/mach-s3c2410/include/mach/h1940-latch.h | 2 +-
> > > arch/arm/mach-s3c2410/mach-h1940.c | 23
> > >
> > > +++++++++++++++++++-- 2 files changed, 21 insertions(+), 4 deletions(-)
> > >
> > > diff --git a/arch/arm/mach-s3c2410/include/mach/h1940-latch.h
> > > b/arch/arm/mach-s3c2410/include/mach/h1940-latch.h index
> > > 73586f2..ef7d8cf 100644
> > > --- a/arch/arm/mach-s3c2410/include/mach/h1940-latch.h
> > > +++ b/arch/arm/mach-s3c2410/include/mach/h1940-latch.h
> > > @@ -35,7 +35,7 @@
> > >
> > > #define H1940_LATCH_AUDIO_POWER H1940_LATCH_GPIO(9)
> > > #define H1940_LATCH_SM803_ENABLE H1940_LATCH_GPIO(10)
> > > #define H1940_LATCH_LCD_P4 H1940_LATCH_GPIO(11)
> > >
> > > -#define H1940_LATCH_CPUQ5 H1940_LATCH_GPIO(12)
> > > +#define H1940_LATCH_SD_POWER H1940_LATCH_GPIO(12)
> > >
> > > #define H1940_LATCH_BLUETOOTH_POWER H1940_LATCH_GPIO(13)
> > > #define H1940_LATCH_LED_GREEN H1940_LATCH_GPIO(14)
> > > #define H1940_LATCH_LED_FLASH H1940_LATCH_GPIO(15)
> > >
> > > diff --git a/arch/arm/mach-s3c2410/mach-h1940.c
> > > b/arch/arm/mach-s3c2410/mach-h1940.c index 9717790..c1ccc8e 100644
> > > --- a/arch/arm/mach-s3c2410/mach-h1940.c
> > > +++ b/arch/arm/mach-s3c2410/mach-h1940.c
> > > @@ -116,8 +116,7 @@ static unsigned int latch_state =
> > > H1940_LATCH_BIT(H1940_LATCH_LCD_P4) |
> > > H1940_LATCH_BIT(H1940_LATCH_LCD_P1) |
> > >
> > > H1940_LATCH_BIT(H1940_LATCH_LCD_P2) |
> > > H1940_LATCH_BIT(H1940_LATCH_LCD_P3) |
> > >
> > > - H1940_LATCH_BIT(H1940_LATCH_MAX1698_nSHUTDOWN) |
> > > - H1940_LATCH_BIT(H1940_LATCH_CPUQ5);
> > > + H1940_LATCH_BIT(H1940_LATCH_MAX1698_nSHUTDOWN);
> > >
> > > static void h1940_latch_control(unsigned int clear, unsigned int set)
> > > {
> > >
> > > @@ -259,10 +258,25 @@ static struct platform_device
> > > h1940_device_bluetooth = { .id = -1,
> > >
> > > };
> > >
> > > +static void h1940_set_mmc_power(unsigned char power_mode, unsigned
> > > short vdd) +{
> > > + switch (power_mode) {
> > > + case MMC_POWER_OFF:
> > > + gpio_set_value(H1940_LATCH_SD_POWER, 0);
> > > + break;
> > > + case MMC_POWER_UP:
> > > + case MMC_POWER_ON:
> > > + gpio_set_value(H1940_LATCH_SD_POWER, 1);
> > > + break;
> > > + default:
> > > + break;
> > > + };
> > > +}
> > > +
> > >
> > > static struct s3c24xx_mci_pdata h1940_mmc_cfg __initdata = {
> > >
> > > .gpio_detect = S3C2410_GPF(5),
> > > .gpio_wprotect = S3C2410_GPH(8),
> > >
> > > - .set_power = NULL,
> > > + .set_power = h1940_set_mmc_power,
> > >
> > > .ocr_avail = MMC_VDD_32_33,
> > >
> > > };
> >
> > Can't you implement gpio_power into the s3c24xx mmc driver ? Then you can
> > fix mach-n30 too.
>
> Well, I'm happy with callback. However, maybe it worth to replace set_power
> callback with regulator.
>
> > > @@ -402,6 +416,9 @@ static void __init h1940_init(void)
> > >
> > > gpio_request(H1940_LATCH_USB_DP, "USB pullup");
> > > gpio_direction_output(H1940_LATCH_USB_DP, 0);
> > >
> > > + gpio_request(H1940_LATCH_SD_POWER, "SD power");
> > > + gpio_direction_output(H1940_LATCH_SD_POWER, 0);
> >
> > Please handle possible return values here !
>
> Ok, I suppose WARN_ON will be enought?
pr_err() and don't probe the device for which you couldn't request GPIO.
Cheers
next prev parent reply other threads:[~2010-08-24 14:01 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-19 15:00 [PATCH 0/3] h1940 series Vasily Khoruzhick
2010-08-19 15:00 ` Vasily Khoruzhick
2010-08-19 15:00 ` [PATCH 1/3] h1940: use gpiolib for latch access Vasily Khoruzhick
2010-08-19 15:00 ` Vasily Khoruzhick
2010-08-24 13:49 ` Marek Vasut
2010-08-24 13:49 ` Marek Vasut
2010-08-24 14:04 ` Vasily Khoruzhick
2010-08-24 14:04 ` Vasily Khoruzhick
2010-08-24 14:40 ` Marek Vasut
2010-08-24 14:40 ` Marek Vasut
2010-08-24 14:50 ` Vasily Khoruzhick
2010-08-24 14:50 ` Vasily Khoruzhick
2010-08-24 15:04 ` Marek Vasut
2010-08-24 15:04 ` Marek Vasut
2010-09-02 10:53 ` Russell King - ARM Linux
2010-09-02 10:53 ` Russell King - ARM Linux
2010-08-19 15:00 ` [PATCH 2/3] h1940: fix h1940-bluetooth compilation Vasily Khoruzhick
2010-08-19 15:00 ` Vasily Khoruzhick
2010-08-24 13:50 ` Marek Vasut
2010-08-24 13:50 ` Marek Vasut
2010-08-24 13:57 ` Vasily Khoruzhick
2010-08-24 13:57 ` Vasily Khoruzhick
2010-08-24 14:00 ` Marek Vasut
2010-08-24 14:00 ` Marek Vasut
2010-08-19 15:00 ` [PATCH 3/3] h1940: implement mmc_power function Vasily Khoruzhick
2010-08-19 15:00 ` Vasily Khoruzhick
2010-08-24 13:52 ` Marek Vasut
2010-08-24 13:52 ` Marek Vasut
2010-08-24 14:00 ` Vasily Khoruzhick
2010-08-24 14:00 ` Vasily Khoruzhick
2010-08-24 14:01 ` Marek Vasut [this message]
2010-08-24 14:01 ` Marek Vasut
2010-08-24 14:21 ` Vasily Khoruzhick
2010-08-24 14:21 ` Vasily Khoruzhick
2010-08-24 14:41 ` Marek Vasut
2010-08-24 14:41 ` Marek Vasut
2010-08-24 14:56 ` Vasily Khoruzhick
2010-08-24 14:56 ` Vasily Khoruzhick
2010-08-24 15:07 ` Marek Vasut
2010-08-24 15:07 ` Marek Vasut
2010-08-24 15:19 ` Vasily Khoruzhick
2010-08-24 15:19 ` Vasily Khoruzhick
2010-08-24 13:24 ` [PATCH 0/3] h1940 series Vasily Khoruzhick
2010-08-24 13:24 ` Vasily Khoruzhick
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=201008241601.12355.marek.vasut@gmail.com \
--to=marek.vasut@gmail.com \
--cc=anarsoul@gmail.com \
--cc=arnaud.patard@rtp-net.org \
--cc=ben-linux@fluff.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-samsung-soc@vger.kernel.org \
/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.