From: Heiner Kallweit <hkallweit1@gmail.com> To: Ulf Hansson <ulf.hansson@linaro.org>, Kevin Hilman <khilman@baylibre.com> Cc: Carlo Caione <carlo@caione.org>, "linux-mmc@vger.kernel.org" <linux-mmc@vger.kernel.org>, linux-amlogic@lists.infradead.org Subject: [PATCH v3 9/9] mmc: meson-gx: add support for HS400 mode Date: Tue, 7 Feb 2017 22:35:59 +0100 [thread overview] Message-ID: <282ded48-616d-b0c3-b1e1-34f0987a9255@gmail.com> (raw) In-Reply-To: <0991d40b-e05b-2fcb-9ee4-7b529448de69@gmail.com> Add support for HS400 mode. The driver still misses support for tuning, therefore highspeed modes like HS400 might not work under all circumstances yet. Successfully tested on a Odroid C2 (S905 GXBB). Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com> Reviewed-by: Kevin Hilman <khilman@baylibre.com> Tested-by: Kevin Hilman <khilman@baylibre.com> --- v3: - extended commit message --- drivers/mmc/host/meson-gx-mmc.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/drivers/mmc/host/meson-gx-mmc.c b/drivers/mmc/host/meson-gx-mmc.c index 3cc6334a..5a959783 100644 --- a/drivers/mmc/host/meson-gx-mmc.c +++ b/drivers/mmc/host/meson-gx-mmc.c @@ -83,6 +83,7 @@ #define CFG_RC_CC_MASK 0xf #define CFG_STOP_CLOCK BIT(22) #define CFG_CLK_ALWAYS_ON BIT(18) +#define CFG_CHK_DS BIT(20) #define CFG_AUTO_CLK BIT(23) #define SD_EMMC_STATUS 0x48 @@ -408,6 +409,16 @@ static void meson_mmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) val &= ~(CFG_RC_CC_MASK << CFG_RC_CC_SHIFT); val |= ilog2(SD_EMMC_CFG_CMD_GAP) << CFG_RC_CC_SHIFT; + val &= ~CFG_DDR; + if (ios->timing == MMC_TIMING_UHS_DDR50 || + ios->timing == MMC_TIMING_MMC_DDR52 || + ios->timing == MMC_TIMING_MMC_HS400) + val |= CFG_DDR; + + val &= ~CFG_CHK_DS; + if (ios->timing == MMC_TIMING_MMC_HS400) + val |= CFG_CHK_DS; + writel(val, host->regs + SD_EMMC_CFG); if (val != orig) -- 2.11.0
WARNING: multiple messages have this Message-ID (diff)
From: hkallweit1@gmail.com (Heiner Kallweit) To: linus-amlogic@lists.infradead.org Subject: [PATCH v3 9/9] mmc: meson-gx: add support for HS400 mode Date: Tue, 7 Feb 2017 22:35:59 +0100 [thread overview] Message-ID: <282ded48-616d-b0c3-b1e1-34f0987a9255@gmail.com> (raw) In-Reply-To: <0991d40b-e05b-2fcb-9ee4-7b529448de69@gmail.com> Add support for HS400 mode. The driver still misses support for tuning, therefore highspeed modes like HS400 might not work under all circumstances yet. Successfully tested on a Odroid C2 (S905 GXBB). Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com> Reviewed-by: Kevin Hilman <khilman@baylibre.com> Tested-by: Kevin Hilman <khilman@baylibre.com> --- v3: - extended commit message --- drivers/mmc/host/meson-gx-mmc.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/drivers/mmc/host/meson-gx-mmc.c b/drivers/mmc/host/meson-gx-mmc.c index 3cc6334a..5a959783 100644 --- a/drivers/mmc/host/meson-gx-mmc.c +++ b/drivers/mmc/host/meson-gx-mmc.c @@ -83,6 +83,7 @@ #define CFG_RC_CC_MASK 0xf #define CFG_STOP_CLOCK BIT(22) #define CFG_CLK_ALWAYS_ON BIT(18) +#define CFG_CHK_DS BIT(20) #define CFG_AUTO_CLK BIT(23) #define SD_EMMC_STATUS 0x48 @@ -408,6 +409,16 @@ static void meson_mmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) val &= ~(CFG_RC_CC_MASK << CFG_RC_CC_SHIFT); val |= ilog2(SD_EMMC_CFG_CMD_GAP) << CFG_RC_CC_SHIFT; + val &= ~CFG_DDR; + if (ios->timing == MMC_TIMING_UHS_DDR50 || + ios->timing == MMC_TIMING_MMC_DDR52 || + ios->timing == MMC_TIMING_MMC_HS400) + val |= CFG_DDR; + + val &= ~CFG_CHK_DS; + if (ios->timing == MMC_TIMING_MMC_HS400) + val |= CFG_CHK_DS; + writel(val, host->regs + SD_EMMC_CFG); if (val != orig) -- 2.11.0
next prev parent reply other threads:[~2017-02-07 21:38 UTC|newest] Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top [not found] <0991d40b-e05b-2fcb-9ee4-7b529448de69@gmail.com> 2017-02-07 21:34 ` [PATCH v3 2/9] mmc: meson-gx: minor improvements in meson_mmc_set_ios Heiner Kallweit 2017-02-07 21:34 ` Heiner Kallweit 2017-02-07 21:34 ` [PATCH v3 3/9] mmc: meson-gx: improve meson_mmc_clk_set Heiner Kallweit 2017-02-07 21:34 ` Heiner Kallweit 2017-02-07 21:34 ` [PATCH v3 4/9] mmc: meson-gx: improve meson_mmc_irq_thread Heiner Kallweit 2017-02-07 21:34 ` Heiner Kallweit 2017-02-07 21:34 ` [PATCH v3 5/9] mmc: meson-gx: improve interrupt handling Heiner Kallweit 2017-02-07 21:34 ` Heiner Kallweit 2017-02-07 21:34 ` [PATCH v3 6/9] mmc: meson-gx: set max block count and request size Heiner Kallweit 2017-02-07 21:34 ` Heiner Kallweit 2017-02-07 21:35 ` [PATCH v3 7/9] mmc: meson-gx: reduce bounce buffer size Heiner Kallweit 2017-02-07 21:35 ` Heiner Kallweit 2017-02-07 21:35 ` [PATCH v3 8/9] mmc: meson-gx: remove unneeded checks in remove Heiner Kallweit 2017-02-07 21:35 ` Heiner Kallweit 2017-02-07 21:35 ` Heiner Kallweit [this message] 2017-02-07 21:35 ` [PATCH v3 9/9] mmc: meson-gx: add support for HS400 mode Heiner Kallweit 2017-02-08 10:17 ` Neil Armstrong
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=282ded48-616d-b0c3-b1e1-34f0987a9255@gmail.com \ --to=hkallweit1@gmail.com \ --cc=carlo@caione.org \ --cc=khilman@baylibre.com \ --cc=linux-amlogic@lists.infradead.org \ --cc=linux-mmc@vger.kernel.org \ --cc=ulf.hansson@linaro.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: linkBe 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.