Skip to content

Commit

Permalink
ARM: shmobile: kzm9g: SDHI0 and SDHI1 use a 3.3V power supply
Browse files Browse the repository at this point in the history
kzm9g supplies 3.3V to its SDHI0 and SDHI2 interfaces. Specifying 2.8V
prevents some (e.g. certain SDIO) cards from working. This patch fixes the
voltage and removes redundant OCR masks from platform data.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
  • Loading branch information
Guennadi Liakhovetski authored and Simon Horman committed Mar 21, 2013
1 parent 48296a1 commit c791c03
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 12 deletions.
12 changes: 6 additions & 6 deletions arch/arm/boot/dts/sh73a0-kzm9g-reference.dts
Original file line number Diff line number Diff line change
Expand Up @@ -36,11 +36,11 @@
regulator-boot-on;
};

reg_2p8v: regulator@1 {
reg_3p3v: regulator@1 {
compatible = "regulator-fixed";
regulator-name = "fixed-2.8V";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-name = "fixed-3.3V";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
regulator-boot-on;
};
Expand All @@ -52,7 +52,7 @@
interrupts = <0 83 4
0 84 4
0 85 4>;
vmmc-supply = <&reg_2p8v>;
vmmc-supply = <&reg_3p3v>;
bus-width = <4>;
toshiba,mmc-has-idle-wait;
};
Expand All @@ -63,7 +63,7 @@
interrupt-parent = <&gic>;
interrupts = <0 104 4
0 105 4>;
vmmc-supply = <&reg_2p8v>;
vmmc-supply = <&reg_3p3v>;
bus-width = <4>;
broken-cd;
toshiba,mmc-wrprotect-disable;
Expand Down
10 changes: 4 additions & 6 deletions arch/arm/mach-shmobile/board-kzm9g.c
Original file line number Diff line number Diff line change
Expand Up @@ -375,8 +375,8 @@ static struct platform_device mmc_device = {
.resource = sh_mmcif_resources,
};

/* Fixed 2.8V regulators to be used by SDHI0 and SDHI2 */
static struct regulator_consumer_supply fixed2v8_power_consumers[] =
/* Fixed 3.3V regulators to be used by SDHI0 and SDHI2 */
static struct regulator_consumer_supply fixed3v3_power_consumers[] =
{
REGULATOR_SUPPLY("vmmc", "sh_mobile_sdhi.0"),
REGULATOR_SUPPLY("vqmmc", "sh_mobile_sdhi.0"),
Expand All @@ -390,7 +390,6 @@ static struct sh_mobile_sdhi_info sdhi0_info = {
.dma_slave_rx = SHDMA_SLAVE_SDHI0_RX,
.tmio_flags = TMIO_MMC_HAS_IDLE_WAIT,
.tmio_caps = MMC_CAP_SD_HIGHSPEED,
.tmio_ocr_mask = MMC_VDD_27_28 | MMC_VDD_28_29,
};

static struct resource sdhi0_resources[] = {
Expand Down Expand Up @@ -434,7 +433,6 @@ static struct sh_mobile_sdhi_info sdhi2_info = {
TMIO_MMC_USE_GPIO_CD |
TMIO_MMC_WRPROTECT_DISABLE,
.tmio_caps = MMC_CAP_SD_HIGHSPEED,
.tmio_ocr_mask = MMC_VDD_27_28 | MMC_VDD_28_29,
.cd_gpio = 13,
};

Expand Down Expand Up @@ -716,8 +714,8 @@ static void __init kzm_init(void)
{
regulator_register_always_on(0, "fixed-1.8V", fixed1v8_power_consumers,
ARRAY_SIZE(fixed1v8_power_consumers), 1800000);
regulator_register_always_on(1, "fixed-2.8V", fixed2v8_power_consumers,
ARRAY_SIZE(fixed2v8_power_consumers), 2800000);
regulator_register_always_on(1, "fixed-3.3V", fixed3v3_power_consumers,
ARRAY_SIZE(fixed3v3_power_consumers), 3300000);
regulator_register_fixed(2, dummy_supplies, ARRAY_SIZE(dummy_supplies));

pinctrl_register_mappings(kzm_pinctrl_map, ARRAY_SIZE(kzm_pinctrl_map));
Expand Down

0 comments on commit c791c03

Please sign in to comment.