Commit 06ac2a61 authored by Kuninori Morimoto's avatar Kuninori Morimoto Committed by Simon Horman

ARM: shmobile: bockw: use regulator for MMCIF

When regulators are used with MMC devices, sh_mmcif_plat_data::ocr
is not needed, they can be removed from platform data.
This patch adds v3.3 regulator settings,
and moved fixed-dummy regulator registration position
Signed-off-by: default avatarKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: default avatarSimon Horman <horms+renesas@verge.net.au>
parent ea8d8a91
...@@ -116,6 +116,11 @@ static struct regulator_consumer_supply dummy_supplies[] = { ...@@ -116,6 +116,11 @@ static struct regulator_consumer_supply dummy_supplies[] = {
REGULATOR_SUPPLY("vdd33a", "smsc911x"), REGULATOR_SUPPLY("vdd33a", "smsc911x"),
}; };
static struct regulator_consumer_supply fixed3v3_power_consumers[] = {
REGULATOR_SUPPLY("vmmc", "sh_mmcif"),
REGULATOR_SUPPLY("vqmmc", "sh_mmcif"),
};
static struct smsc911x_platform_config smsc911x_data __initdata = { static struct smsc911x_platform_config smsc911x_data __initdata = {
.irq_polarity = SMSC911X_IRQ_POLARITY_ACTIVE_LOW, .irq_polarity = SMSC911X_IRQ_POLARITY_ACTIVE_LOW,
.irq_type = SMSC911X_IRQ_TYPE_PUSH_PULL, .irq_type = SMSC911X_IRQ_TYPE_PUSH_PULL,
...@@ -271,7 +276,6 @@ static struct resource mmc_resources[] __initdata = { ...@@ -271,7 +276,6 @@ static struct resource mmc_resources[] __initdata = {
static struct sh_mmcif_plat_data sh_mmcif_plat __initdata = { static struct sh_mmcif_plat_data sh_mmcif_plat __initdata = {
.sup_pclk = 0, .sup_pclk = 0,
.ocr = MMC_VDD_165_195 | MMC_VDD_32_33 | MMC_VDD_33_34,
.caps = MMC_CAP_4_BIT_DATA | .caps = MMC_CAP_4_BIT_DATA |
MMC_CAP_8_BIT_DATA | MMC_CAP_8_BIT_DATA |
MMC_CAP_NEEDS_POLL, MMC_CAP_NEEDS_POLL,
...@@ -614,6 +618,10 @@ static void __init bockw_init(void) ...@@ -614,6 +618,10 @@ static void __init bockw_init(void)
&usb_phy_platform_data, &usb_phy_platform_data,
sizeof(struct rcar_phy_platform_data)); sizeof(struct rcar_phy_platform_data));
regulator_register_fixed(0, dummy_supplies,
ARRAY_SIZE(dummy_supplies));
regulator_register_always_on(1, "fixed-3.3V", fixed3v3_power_consumers,
ARRAY_SIZE(fixed3v3_power_consumers), 3300000);
/* for SMSC */ /* for SMSC */
fpga = ioremap_nocache(FPGA, SZ_1M); fpga = ioremap_nocache(FPGA, SZ_1M);
...@@ -629,9 +637,6 @@ static void __init bockw_init(void) ...@@ -629,9 +637,6 @@ static void __init bockw_init(void)
val &= ~(1 << 4); /* enable SMSC911x */ val &= ~(1 << 4); /* enable SMSC911x */
iowrite16(val, fpga + IRQ0MR); iowrite16(val, fpga + IRQ0MR);
regulator_register_fixed(0, dummy_supplies,
ARRAY_SIZE(dummy_supplies));
platform_device_register_resndata( platform_device_register_resndata(
&platform_bus, "smsc911x", -1, &platform_bus, "smsc911x", -1,
smsc911x_resources, ARRAY_SIZE(smsc911x_resources), smsc911x_resources, ARRAY_SIZE(smsc911x_resources),
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment