- Update device tree for VMMC regulator data

- Supply SD/MMC voltage from the VMMC regulator
 - Delete auxdata for SD/MMC card and rely on DT only
 - Update device tree for FSMC NAND merged for v3.12-rc1
 - Delete auxdata for FSMC NAND
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJSQef2AAoJEEEQszewGV1z4h4QALU3BRLoE8Ostv2U5pAWWoiU
 JIBaSyHT6Oj8A8Mbrb1kpFxHoPqxD3zbdQ3jNBPeMkHzL+vKszHDzu81wl3dYDNt
 3p1fNu59YYDM72p8qyC9CwJosYq4nGeONT+U6bzBg0vvI1JEQkcP7/LTlUOvrNeq
 zSps6bBmdpObcxnPf03fBHo4JWZ79v4BmQSIskdP0yYrgR1mguBDZxT6rlT0twNo
 JWh14LGLAZ2TG8OsFZrPqP26yfYOqb/KypHUgEyoyW+vODlENvmRcbrNuzziBxp1
 yIXTdCrCm+mVoxRUzPJm/ZfyUUkjqgbhlc9sPBIsx0cGyD5JjHd7jc9CCN+C7Uz/
 sDCDCu4UzaXoYXt3gk20hmuDR9PZQfklz4u/hKLsMY0i0yOnCTWPUyuM1cnCeyW9
 lumhKWopYJ67eRHUvl3AAugh8QmTJ1BGVBU3aQ59WeHhqAGgHEH8djI7rpPBQw85
 JU1kgj7g9RuHys9vWJXpGTDK3TYQfp+fQ2moS7+YWAZWOrkGQaba7byFJDKnXiD2
 aljaXmyi8/thA0oui+GPwpojC8A33Pm5z3JhZuKBDdKh9sFk7dsX+2fzLxqLkWPe
 D5A5op0QV7aD1RHQMlGhG95afouvRk64enRgqCZfrc0jkLYIzL7cNZms3I7YaIX1
 O+TmM2swt1G+ohnB5plR
 =Kbwg
 -----END PGP SIGNATURE-----

Merge tag 'for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik into next/cleanup

From Linus Walleij:

These three patches tear out the remaining AUXDATA in the
Nomadik platform and replace it with device tree.

Corresponding driver changes are coming from respective
subsystem tree and there are no build dependencies.

- Update device tree for VMMC regulator data
- Supply SD/MMC voltage from the VMMC regulator
- Delete auxdata for SD/MMC card and rely on DT only
- Update device tree for FSMC NAND merged for v3.12-rc1
- Delete auxdata for FSMC NAND

* tag 'for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik:
  ARM: nomadik: delete FSMC platform data
  ARM: nomadik: delete MMCI platform data
  ARM: nomadik: register VMMC regulator

Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
Olof Johansson 2013-09-25 21:21:38 -07:00
commit f7df257a2c
2 changed files with 11 additions and 36 deletions

View File

@ -653,6 +653,7 @@ fsmc: flash@40000000 {
reg-names = "fsmc_regs", "nand_data", "nand_addr", "nand_cmd";
clocks = <&hclksmc>;
status = "okay";
timings = /bits/ 8 <0 0 0 0x10 0x0a 0>;
partition@0 {
label = "X-Loader(NAND)";
@ -707,8 +708,14 @@ i2c0 {
pinctrl-0 = <&i2c0_default_mux>, <&i2c0_default_mode>;
stw4811@2d {
compatible = "st,stw4811";
reg = <0x2d>;
compatible = "st,stw4811";
reg = <0x2d>;
vmmc_regulator: vmmc {
compatible = "st,stw481x-vmmc";
regulator-name = "VMMC";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
};
};
};
@ -839,6 +846,7 @@ mmcsd: sdi@101f6000 {
cd-inverted;
pinctrl-names = "default";
pinctrl-0 = <&mmcsd_default_mux>, <&mmcsd_default_mode>;
vmmc-supply = <&vmmc_regulator>;
};
};
};

View File

@ -31,9 +31,7 @@
#include <linux/of_gpio.h>
#include <linux/of_address.h>
#include <linux/of_platform.h>
#include <linux/mtd/fsmc.h>
#include <linux/gpio.h>
#include <linux/amba/mmci.h>
#include <asm/mach/arch.h>
#include <asm/mach/map.h>
@ -146,17 +144,6 @@ static void __init cpu8815_timer_init_of(void)
clocksource_of_init();
}
static struct fsmc_nand_timings cpu8815_nand_timings = {
.thiz = 0,
.thold = 0x10,
.twait = 0x0A,
.tset = 0,
};
static struct fsmc_nand_platform_data cpu8815_nand_data = {
.nand_timings = &cpu8815_nand_timings,
};
/*
* The SMSC911x IRQ is connected to a GPIO pin, but the driver expects
* to simply request an IRQ passed as a resource. So the GPIO pin needs
@ -189,15 +176,6 @@ static int __init cpu8815_eth_init(void)
}
device_initcall(cpu8815_eth_init);
/*
* TODO:
* cannot be set from device tree, convert to a proper DT
* binding.
*/
static struct mmci_platform_data mmcsd_plat_data = {
.ocr_mask = MMC_VDD_29_30,
};
/*
* This GPIO pin turns on a line that is used to detect card insertion
* on this board.
@ -232,24 +210,13 @@ static int __init cpu8815_mmcsd_init(void)
}
device_initcall(cpu8815_mmcsd_init);
/* These are mostly to get the right device names for the clock lookups */
static struct of_dev_auxdata cpu8815_auxdata_lookup[] __initdata = {
OF_DEV_AUXDATA("stericsson,fsmc-nand", NOMADIK_FSMC_BASE,
NULL, &cpu8815_nand_data),
OF_DEV_AUXDATA("arm,primecell", NOMADIK_SDI_BASE,
NULL, &mmcsd_plat_data),
{ /* sentinel */ },
};
static void __init cpu8815_init_of(void)
{
#ifdef CONFIG_CACHE_L2X0
/* At full speed latency must be >=2, so 0x249 in low bits */
l2x0_of_init(0x00730249, 0xfe000fff);
#endif
of_platform_populate(NULL, of_default_bus_match_table,
cpu8815_auxdata_lookup, NULL);
of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
}
static const char * cpu8815_board_compat[] = {