ARM: 6033/1: ARM: MMCI: pass max frequency from platform
This introduce the field f_max into the mmci_platform_data, making it possible to pass in a desired block clocking frequency from a board configuration. This is often more desirable than using a module parameter. We keep the module parameter as a fallback as well as the default frequency specified for this parameter if a parameter is not provided. This also adds some kerneldoc style documentation to the platform data struct in mmci.h. Signed-off-by: Linus Walleij <linus.walleij@stericsson.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
committed by
Russell King
parent
771dc157e0
commit
808d97ccbe
@@ -631,7 +631,18 @@ static int __devinit mmci_probe(struct amba_device *dev, struct amba_id *id)
|
||||
|
||||
mmc->ops = &mmci_ops;
|
||||
mmc->f_min = (host->mclk + 511) / 512;
|
||||
mmc->f_max = min(host->mclk, fmax);
|
||||
/*
|
||||
* If the platform data supplies a maximum operating
|
||||
* frequency, this takes precedence. Else, we fall back
|
||||
* to using the module parameter, which has a (low)
|
||||
* default value in case it is not specified. Either
|
||||
* value must not exceed the clock rate into the block,
|
||||
* of course.
|
||||
*/
|
||||
if (plat->f_max)
|
||||
mmc->f_max = min(host->mclk, plat->f_max);
|
||||
else
|
||||
mmc->f_max = min(host->mclk, fmax);
|
||||
dev_dbg(mmc_dev(mmc), "clocking block at %u Hz\n", mmc->f_max);
|
||||
|
||||
#ifdef CONFIG_REGULATOR
|
||||
|
Reference in New Issue
Block a user