From: Ben Dooks <ben@simtec.co.uk>
To: Kukjin Kim <kgene.kim@samsung.com>
Cc: linux-arm-kernel@lists.infradead.org,
linux-samsung-soc@vger.kernel.org, linux-mmc@vger.kernel.org,
akpm@linux-foundation.org, Hyuk Lee <hyuk1.lee@samsung.com>,
ben-linux@fluff.org
Subject: Re: [PATCH v5 3/3] sdhci-s3c: Add SDHCI_QUIRK_NO_WP_BIT quirk for Samsung SoC
Date: Wed, 28 Jul 2010 18:20:37 +0100 [thread overview]
Message-ID: <4C5066E5.50505@simtec.co.uk> (raw)
In-Reply-To: <1280294587-17961-1-git-send-email-kgene.kim@samsung.com>
On 28/07/10 06:23, Kukjin Kim wrote:
> From: Hyuk Lee <hyuk1.lee@samsung.com>
>
> If host controller doesn't have WP pin which should be connnected with SDMMC
> card WP pin, can implement get_ro function with using the allocated gpio.
> In order to use this quirk wp_gpio in the platform data must be set.
>
> Signed-off-by: Hyuk Lee <hyuk1.lee@samsung.com>
> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
> Cc: Ben Dooks <ben-linux@fluff.org>
> ---
> Changes since v4:
> - Address comments from Marek.
>
> Hi Andrew,
> If there are no problems, could you please apply this patch?
>rn gpio_get_value(ourhost->pdata->wp_gpio);
> +}
> +
> +/**
> + * sdhci_s3c_cfg_wp - configure GPIO for WP pin
> + * @gpio_num: GPIO number which connected with WP line from SD/MMC slot
> + *
> + * Configure GPIO for using WP line
> +*/
> +static void sdhci_s3c_cfg_wp(unsigned int gpio_num)
> +{
> + s3c_gpio_cfgpin(gpio_num, S3C_GPIO_INPUT);
gpio_direction_input()
> + s3c_gpio_setpull(gpio_num, S3C_GPIO_PULL_UP);
would prefer not to be using this here, should go into the
board file, otherwise we can't pass non-soc gpios into this
code.
> +/**
> * sdhci_s3c_get_min_clock - callback to get minimal supported clock value
> * @host: The SDHCI host being queried
> *
> @@ -408,6 +435,15 @@ static int __devinit sdhci_s3c_probe(struct platform_device *pdev)
> host->quirks |= (SDHCI_QUIRK_32BIT_DMA_ADDR |
> SDHCI_QUIRK_32BIT_DMA_SIZE);
>
> + /* Controller's WP pin doesn't connected with SD card and there is an
> + * allocated GPIO for getting WP data form SD card, use this quirk and
> + * send the GPIO number in pdata->wp_gpio. */
> + if (pdata->has_wp_gpio && gpio_is_valid(pdata->wp_gpio)) {
> + sdhci_s3c_ops.get_ro = sdhci_s3c_get_ro;
> + host->quirks |= SDHCI_QUIRK_NO_WP_BIT;
> + sdhci_s3c_cfg_wp(pdata->wp_gpio);
> + }
> +
> ret = sdhci_add_host(host);
> if (ret) {
> dev_err(dev, "sdhci_add_host() failed\n");
> diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
> index f9ca4c6..7fba401 100644
> --- a/drivers/mmc/host/sdhci.c
> +++ b/drivers/mmc/host/sdhci.c
> @@ -1198,6 +1198,9 @@ static int sdhci_get_ro(struct mmc_host *mmc)
>
> host = mmc_priv(mmc);
>
> + if ((host->quirks & SDHCI_QUIRK_NO_WP_BIT) && host->ops->get_ro)
> + return host->ops->get_ro(mmc);
> +
I really think we shouldn't be using quirks here, just checking the
existence of the host->ops->get_ro field.
WARNING: multiple messages have this Message-ID (diff)
From: ben@simtec.co.uk (Ben Dooks)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v5 3/3] sdhci-s3c: Add SDHCI_QUIRK_NO_WP_BIT quirk for Samsung SoC
Date: Wed, 28 Jul 2010 18:20:37 +0100 [thread overview]
Message-ID: <4C5066E5.50505@simtec.co.uk> (raw)
In-Reply-To: <1280294587-17961-1-git-send-email-kgene.kim@samsung.com>
On 28/07/10 06:23, Kukjin Kim wrote:
> From: Hyuk Lee <hyuk1.lee@samsung.com>
>
> If host controller doesn't have WP pin which should be connnected with SDMMC
> card WP pin, can implement get_ro function with using the allocated gpio.
> In order to use this quirk wp_gpio in the platform data must be set.
>
> Signed-off-by: Hyuk Lee <hyuk1.lee@samsung.com>
> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
> Cc: Ben Dooks <ben-linux@fluff.org>
> ---
> Changes since v4:
> - Address comments from Marek.
>
> Hi Andrew,
> If there are no problems, could you please apply this patch?
>rn gpio_get_value(ourhost->pdata->wp_gpio);
> +}
> +
> +/**
> + * sdhci_s3c_cfg_wp - configure GPIO for WP pin
> + * @gpio_num: GPIO number which connected with WP line from SD/MMC slot
> + *
> + * Configure GPIO for using WP line
> +*/
> +static void sdhci_s3c_cfg_wp(unsigned int gpio_num)
> +{
> + s3c_gpio_cfgpin(gpio_num, S3C_GPIO_INPUT);
gpio_direction_input()
> + s3c_gpio_setpull(gpio_num, S3C_GPIO_PULL_UP);
would prefer not to be using this here, should go into the
board file, otherwise we can't pass non-soc gpios into this
code.
> +/**
> * sdhci_s3c_get_min_clock - callback to get minimal supported clock value
> * @host: The SDHCI host being queried
> *
> @@ -408,6 +435,15 @@ static int __devinit sdhci_s3c_probe(struct platform_device *pdev)
> host->quirks |= (SDHCI_QUIRK_32BIT_DMA_ADDR |
> SDHCI_QUIRK_32BIT_DMA_SIZE);
>
> + /* Controller's WP pin doesn't connected with SD card and there is an
> + * allocated GPIO for getting WP data form SD card, use this quirk and
> + * send the GPIO number in pdata->wp_gpio. */
> + if (pdata->has_wp_gpio && gpio_is_valid(pdata->wp_gpio)) {
> + sdhci_s3c_ops.get_ro = sdhci_s3c_get_ro;
> + host->quirks |= SDHCI_QUIRK_NO_WP_BIT;
> + sdhci_s3c_cfg_wp(pdata->wp_gpio);
> + }
> +
> ret = sdhci_add_host(host);
> if (ret) {
> dev_err(dev, "sdhci_add_host() failed\n");
> diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
> index f9ca4c6..7fba401 100644
> --- a/drivers/mmc/host/sdhci.c
> +++ b/drivers/mmc/host/sdhci.c
> @@ -1198,6 +1198,9 @@ static int sdhci_get_ro(struct mmc_host *mmc)
>
> host = mmc_priv(mmc);
>
> + if ((host->quirks & SDHCI_QUIRK_NO_WP_BIT) && host->ops->get_ro)
> + return host->ops->get_ro(mmc);
> +
I really think we shouldn't be using quirks here, just checking the
existence of the host->ops->get_ro field.
next prev parent reply other threads:[~2010-07-28 17:20 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-28 5:23 [PATCH v5 3/3] sdhci-s3c: Add SDHCI_QUIRK_NO_WP_BIT quirk for Samsung SoC Kukjin Kim
2010-07-28 5:23 ` Kukjin Kim
2010-07-28 17:20 ` Ben Dooks [this message]
2010-07-28 17:20 ` Ben Dooks
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=4C5066E5.50505@simtec.co.uk \
--to=ben@simtec.co.uk \
--cc=akpm@linux-foundation.org \
--cc=ben-linux@fluff.org \
--cc=hyuk1.lee@samsung.com \
--cc=kgene.kim@samsung.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-mmc@vger.kernel.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.