]> git.ipfire.org Git - ipfire-2.x.git/blob - src/patches/panda-usb-power.patch
kernel: add experimental omap kernel.
[ipfire-2.x.git] / src / patches / panda-usb-power.patch
1 VUSB is a fixed level line and hence have no set_voltage
2 callback in regulator ops, but has apply_uV set to true.
3 As a result it fails to register with the regulator core.
4 Remove setting apply_uV.
5
6 Also, assign name to VUSB supply, without which regulator core
7 fails to find it and assigns the default 'dummy' regulator to
8 the ehci-omap device.
9
10 Signed-off-by: Jassi Brar <jaswinder.singh@xxxxxxxxxx>
11 ---
12 arch/arm/mach-omap2/board-4430sdp.c | 6 +++++-
13 arch/arm/mach-omap2/board-omap4panda.c | 6 +++++-
14 2 files changed, 10 insertions(+), 2 deletions(-)
15
16 diff --git a/arch/arm/mach-omap2/board-4430sdp.c b/arch/arm/mach-omap2/board-4430sdp.c
17 index 63de2d3..1ec60be 100644
18 --- a/arch/arm/mach-omap2/board-4430sdp.c
19 +++ b/arch/arm/mach-omap2/board-4430sdp.c
20 @@ -504,16 +504,20 @@ static struct regulator_init_data sdp4430_vdac = {
21 },
22 };
23
24 +static struct regulator_consumer_supply sdp4430_vusb_supply =
25 + REGULATOR_SUPPLY("hsusb0", "ehci-omap.0");
26 +
27 static struct regulator_init_data sdp4430_vusb = {
28 .constraints = {
29 .min_uV = 3300000,
30 .max_uV = 3300000,
31 - .apply_uV = true,
32 .valid_modes_mask = REGULATOR_MODE_NORMAL
33 | REGULATOR_MODE_STANDBY,
34 .valid_ops_mask = REGULATOR_CHANGE_MODE
35 | REGULATOR_CHANGE_STATUS,
36 },
37 + .num_consumer_supplies = 1,
38 + .consumer_supplies = &sdp4430_vusb_supply,
39 };
40
41 static struct regulator_init_data sdp4430_clk32kg = {
42 diff --git a/arch/arm/mach-omap2/board-omap4panda.c b/arch/arm/mach-omap2/board-omap4panda.c
43 index d4f9879..7429f7e 100644
44 --- a/arch/arm/mach-omap2/board-omap4panda.c
45 +++ b/arch/arm/mach-omap2/board-omap4panda.c
46 @@ -362,16 +362,20 @@ static struct regulator_init_data omap4_panda_vdac = {
47 },
48 };
49
50 +static struct regulator_consumer_supply omap4_panda_vusb_supply =
51 + REGULATOR_SUPPLY("hsusb0", "ehci-omap.0");
52 +
53 static struct regulator_init_data omap4_panda_vusb = {
54 .constraints = {
55 .min_uV = 3300000,
56 .max_uV = 3300000,
57 - .apply_uV = true,
58 .valid_modes_mask = REGULATOR_MODE_NORMAL
59 | REGULATOR_MODE_STANDBY,
60 .valid_ops_mask = REGULATOR_CHANGE_MODE
61 | REGULATOR_CHANGE_STATUS,
62 },
63 + .num_consumer_supplies = 1,
64 + .consumer_supplies = &omap4_panda_vusb_supply,
65 };
66
67 static struct regulator_init_data omap4_panda_clk32kg = {
68 --