From: zhangfei.gao@gmail.com (zhangfei gao)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 2/5] mmc: support sdhci-pxav2.c
Date: Tue, 14 Jun 2011 14:07:53 +0800 [thread overview]
Message-ID: <BANLkTimeb-Ax99rQDYckLsVSncxhrh7amg@mail.gmail.com> (raw)
In-Reply-To: <0059AEB1-3536-4540-924A-A95C7F3AD21A@marvell.com>
>> +static void pxav2_set_private_registers(struct sdhci_host *host, u8 mask)
>> +{
>> + ? ? struct platform_device *pdev = to_platform_device(mmc_dev(host->mmc));
>> + ? ? struct sdhci_pxa_platdata *pdata = pdev->dev.platform_data;
>> +
>> + ? ? if (mask == SDHCI_RESET_ALL) {
>> + ? ? ? ? ? ? u16 tmp = 0;
>> +
>> + ? ? ? ? ? ? /*
>> + ? ? ? ? ? ? ?* tune timing of read data/command when crc error happen
>> + ? ? ? ? ? ? ?* no performance impact
>> + ? ? ? ? ? ? ?*/
>> + ? ? ? ? ? ? if (pdata->clk_delay_sel == 1) {
>> + ? ? ? ? ? ? ? ? ? ? tmp = readw(host->ioaddr + SD_CLOCK_BURST_SIZE_SETUP);
>> +
>> + ? ? ? ? ? ? ? ? ? ? tmp &= ~(SDCLK_DELAY_MASK << SDCLK_DELAY_SHIFT);
>> + ? ? ? ? ? ? ? ? ? ? tmp |= (pdata->clk_delay_cycles & SDCLK_DELAY_MASK)
>> + ? ? ? ? ? ? ? ? ? ? ? ? ? ? << SDCLK_DELAY_SHIFT;
>> + ? ? ? ? ? ? ? ? ? ? tmp &= ~(SDCLK_SEL_MASK << SDCLK_SEL_SHIFT);
>> + ? ? ? ? ? ? ? ? ? ? tmp |= (1 & SDCLK_SEL_MASK) << SDCLK_SEL_SHIFT;
>> +
>> + ? ? ? ? ? ? ? ? ? ? writew(tmp, host->ioaddr + SD_CLOCK_BURST_SIZE_SETUP);
>> + ? ? ? ? ? ? }
>
> There are 3 possible value for clk_delay_sel.
>
> 0 ?== do not use clk_delay_cycles
> 1 == use programmed clk_delay_cycles value (the code above)
> all other values use the sd_clk which was used to drive the output
>
> The code about only handles 2 of the 3 cases
pxa910/920 only require two cases.
1, clk_delay_sel = 1 with delay value.
2, use default setting and directly use sd_clk. clk_delay_sel = 3.
>
> suggest
>
> ? ? ? ?(if (pdata->clk_delay_sel) {
>> + ? ? ? ? ? ? if (pdata->clk_delay_sel == 1) {
>> + ? ? ? ? ? ? ? ? ? ? tmp = readw(host->ioaddr + SD_CLOCK_BURST_SIZE_SETUP);
>> +
>> + ? ? ? ? ? ? ? ? ? ? tmp &= ~(SDCLK_DELAY_MASK << SDCLK_DELAY_SHIFT);
>> + ? ? ? ? ? ? ? ? ? ? tmp |= (pdata->clk_delay_cycles & SDCLK_DELAY_MASK)
>> + ? ? ? ? ? ? ? ? ? ? ? ? ? ? << SDCLK_DELAY_SHIFT;
>> + ? ? ? ? ? ? ? ? ? ? tmp &= ~(SDCLK_SEL_MASK << SDCLK_SEL_SHIFT);
>> + ? ? ? ? ? ? ? ? ? ? tmp |= 1 << SDCLK_SEL_SHIFT;
>> +
>> + ? ? ? ? ? ? ? ? ? ? writew(tmp, host->ioaddr + SD_CLOCK_BURST_SIZE_SETUP);
>> + ? ? ? ? ? ? } else {
>
>> + ? ? ? ? ? ? ? ? ? ? tmp = readw(host->ioaddr + SD_CLOCK_BURST_SIZE_SETUP);
>> + ? ? ? ? ? ? ? ? ? ? tmp &= ~(SDCLK_SEL_MASK << SDCLK_SEL_SHIFT);
>> + ? ? ? ? ? ? ? ? ? ? tmp |= 2 ?<< SDCLK_SEL_SHIFT;
>> + ? ? ? ? ? ? ? ? ? ? writew(tmp, host->ioaddr + SD_CLOCK_BURST_SIZE_SETUP);
The else is default setting on pxa910 after reset.
> ? ? ? ? ? ? ? ? ? }
> ? ? ? ? }
>
> Philip and Mark
>>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
>
next prev parent reply other threads:[~2011-06-14 6:07 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-08 9:41 [PATCH v4 0/5] Provide sdhci driver for mmp2 and pxa9xx Zhangfei Gao
2011-06-08 9:41 ` [PATCH v4 1/5] mmc: support sdhci-pxav3.c Zhangfei Gao
2011-06-08 9:41 ` [PATCH v4 2/5] mmc: support sdhci-pxav2.c Zhangfei Gao
2011-06-13 21:35 ` Philip Rakity
2011-06-14 6:07 ` zhangfei gao [this message]
2011-06-14 15:00 ` Philip Rakity
2011-06-08 9:41 ` [PATCH v4 3/5] ARM: mmp2: update mmp2 mmc resource Zhangfei Gao
2011-06-08 9:42 ` [PATCH v4 4/5] mmc: delete obsolete sdhci-pxa.c Zhangfei Gao
2011-06-08 9:42 ` [PATCH v4 5/5] ARM: mmp2: update mmp2_defconfig to support mmc Zhangfei Gao
2011-06-08 12:53 ` Sachin Nikam
2011-06-08 15:00 ` Arnd Bergmann
2011-06-09 4:36 ` Sachin Nikam
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=BANLkTimeb-Ax99rQDYckLsVSncxhrh7amg@mail.gmail.com \
--to=zhangfei.gao@gmail.com \
--cc=linux-arm-kernel@lists.infradead.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).