aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-vexpress
diff options
context:
space:
mode:
authorPawel Moll <pawel.moll@arm.com>2012-07-09 06:33:47 -0400
committerPawel Moll <pawel.moll@arm.com>2012-07-13 06:48:28 -0400
commitb2a54ff03ca80f11f3760f4eab9a955e7215f569 (patch)
tree0b1b658ff7992a052fd18949eb3a4f691544182e /arch/arm/mach-vexpress
parentb7541a950f27fc9237ce1fcb5c2284ee5c71efe3 (diff)
ARM: vexpress: Add fixed regulator for SMSC
SMSC driver requires "vdd33a" and "vddvario" regulator supplies now. Add fixed regulator describing 3V3 power line (in both motherboard's Device Trees and the non-DT code) and force fixed regulator config option if regulators framework is enabled. Signed-off-by: Pawel Moll <pawel.moll@arm.com>
Diffstat (limited to 'arch/arm/mach-vexpress')
-rw-r--r--arch/arm/mach-vexpress/v2m.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/arm/mach-vexpress/v2m.c b/arch/arm/mach-vexpress/v2m.c
index a3652a4ddc40..37608f22ee31 100644
--- a/arch/arm/mach-vexpress/v2m.c
+++ b/arch/arm/mach-vexpress/v2m.c
@@ -18,6 +18,8 @@
18#include <linux/clkdev.h> 18#include <linux/clkdev.h>
19#include <linux/clk-provider.h> 19#include <linux/clk-provider.h>
20#include <linux/mtd/physmap.h> 20#include <linux/mtd/physmap.h>
21#include <linux/regulator/fixed.h>
22#include <linux/regulator/machine.h>
21 23
22#include <asm/arch_timer.h> 24#include <asm/arch_timer.h>
23#include <asm/mach-types.h> 25#include <asm/mach-types.h>
@@ -199,6 +201,11 @@ static struct platform_device v2m_eth_device = {
199 .dev.platform_data = &v2m_eth_config, 201 .dev.platform_data = &v2m_eth_config,
200}; 202};
201 203
204static struct regulator_consumer_supply v2m_eth_supplies[] = {
205 REGULATOR_SUPPLY("vddvario", "smsc911x"),
206 REGULATOR_SUPPLY("vdd33a", "smsc911x"),
207};
208
202static struct resource v2m_usb_resources[] = { 209static struct resource v2m_usb_resources[] = {
203 { 210 {
204 .start = V2M_ISP1761, 211 .start = V2M_ISP1761,
@@ -503,6 +510,9 @@ static void __init v2m_init(void)
503{ 510{
504 int i; 511 int i;
505 512
513 regulator_register_fixed(0, v2m_eth_supplies,
514 ARRAY_SIZE(v2m_eth_supplies));
515
506 platform_device_register(&v2m_pcie_i2c_device); 516 platform_device_register(&v2m_pcie_i2c_device);
507 platform_device_register(&v2m_ddc_i2c_device); 517 platform_device_register(&v2m_ddc_i2c_device);
508 platform_device_register(&v2m_flash_device); 518 platform_device_register(&v2m_flash_device);