From: Michal Simek <monstr@monstr.eu>
To: u-boot@lists.denx.de
Subject: [U-Boot] ARM: zynq: sdhci clock frequency init question
Date: Wed, 07 May 2014 13:45:58 +0200 [thread overview]
Message-ID: <536A1CF6.8060100@monstr.eu> (raw)
In-Reply-To: <99075D6EE6F8604C91868421B2682FFF1AFC392C8A@IAD2MBX09.mex02.mlsrvr.com>
Hi Krunal,
sorry for delay.
On 04/25/2014 06:19 PM, Krunal Desai wrote:
> Hi all -
>
> I noticed that in zynq_sdhci.c, responsible for initializing PS SD controller(s), host controller max clock frequency is always set to 52MHz (http://git.denx.de/?p=u-boot.git;a=blob;f=drivers/mmc/zynq_sdhci.c;h=fdce2c2c10ec85c4a291532f927eae4a0b5627c9;hb=master#l34). In cases where user is using EMIO connectivity, max clock speed is limited to 25MHz. This results in out-of-spec operation as the divider calculation logic trusts the input to add_sdhci() and does not check the SLCR itself to confirm what the IO clock to SD controller actually is.
>
> I think I saw OF/device-tree support patched in recently (I am on the 2013.4 tag); I think the "right" way to solve this is add capability in zynq_sdhci_init to read device-tree for 'clock-frequency' property, and use that to populate the arguments to add_sdhci() with that information, defaulting to a safe minimum (25MHz?) if no entry is found. Otherwise, I suppose a config could be added akin to 'ZYNQ_SD0_MIO'/'ZYNQ_SD1_MIO' to populate the correct minimum value.
>
> Does this sound sane? I am thinking of implementing that as a patch for ourselves internally, but I think it will be of value to the greater community as well.
we didn't test this configuration that's why 52MHz is there as default case.
I think that should be easily possible to detect MIO setting
as we are doing for qspi/nand/usb.
We have this code in our xilinx repository and I have sent patches for mainline review
2 weeks ago or something like that.
I haven't got any NACK and I am going to send pull request to ARM custodian
when I fix fpga patches.
It means detection via MIO setting is reasonable way how to do it.
When you know that this go through EMIO 25MHz should be used.
Thanks,
Michal
--
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Microblaze cpu - http://www.monstr.eu/fdt/
Maintainer of Linux kernel - Xilinx Zynq ARM architecture
Microblaze U-BOOT custodian and responsible for u-boot arm zynq platform
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 263 bytes
Desc: OpenPGP digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20140507/390b8526/attachment.pgp>
next prev parent reply other threads:[~2014-05-07 11:45 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-25 16:19 [U-Boot] ARM: zynq: sdhci clock frequency init question Krunal Desai
2014-05-07 11:45 ` Michal Simek [this message]
2014-05-12 18:48 ` Krunal Desai
2014-05-16 13:04 ` Michal Simek
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=536A1CF6.8060100@monstr.eu \
--to=monstr@monstr.eu \
--cc=u-boot@lists.denx.de \
/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.