]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - glsdk/meta-ti-glsdk.git/blob - recipes-kernel/linux/linux-3.0/bias/0006-OMAP3-Voltage-add-ABB-data-to-voltage-domains.patch
4ce3641cdb7252ec909a35b4a84896258e01033b
[glsdk/meta-ti-glsdk.git] / recipes-kernel / linux / linux-3.0 / bias / 0006-OMAP3-Voltage-add-ABB-data-to-voltage-domains.patch
1 From a98ba42c4b039046d7816ccc5394d72557780b30 Mon Sep 17 00:00:00 2001
2 From: Mike Turquette <mturquette@ti.com>
3 Date: Thu, 21 Jul 2011 12:31:50 +0200
4 Subject: [PATCH 6/8] OMAP3+: Voltage: add ABB data to voltage domains
6 Starting with OMAP36xx, some voltage domains have an ABB ldo meant to
7 insure stability when that voltage domain is operating at a high OPP.
9 This patch adds struct omap_abb_instance to struct voltagedomain and
10 populates the data for those voltage domains that have an ABB ldo on
11 both 36xx and 44xx silicon.
13 Signed-off-by: Mike Turquette <mturquette@ti.com>
14 ---
15  arch/arm/mach-omap2/voltage.h                 |    1 +
16  arch/arm/mach-omap2/voltagedomains3xxx_data.c |    3 +++
17  arch/arm/mach-omap2/voltagedomains44xx_data.c |    3 +++
18  3 files changed, 7 insertions(+), 0 deletions(-)
20 diff --git a/arch/arm/mach-omap2/voltage.h b/arch/arm/mach-omap2/voltage.h
21 index 2aa6c43..4fe35d7 100644
22 --- a/arch/arm/mach-omap2/voltage.h
23 +++ b/arch/arm/mach-omap2/voltage.h
24 @@ -69,6 +69,7 @@ struct voltagedomain {
25         struct omap_vc_channel *vc;
26         const struct omap_vfsm_instance *vfsm;
27         struct omap_vp_instance *vp;
28 +       struct omap_abb_instance *abb;
29         struct omap_voltdm_pmic *pmic;
30  
31         /* VC/VP register access functions: SoC specific */
32 diff --git a/arch/arm/mach-omap2/voltagedomains3xxx_data.c b/arch/arm/mach-omap2/voltagedomains3xxx_data.c
33 index b0d0ae1..cdcfbdf 100644
34 --- a/arch/arm/mach-omap2/voltagedomains3xxx_data.c
35 +++ b/arch/arm/mach-omap2/voltagedomains3xxx_data.c
36 @@ -26,6 +26,7 @@
37  #include "voltage.h"
38  #include "vc.h"
39  #include "vp.h"
40 +#include "abb.h"
41  
42  /*
43   * VDD data
44 @@ -90,6 +91,8 @@ void __init omap3xxx_voltagedomains_init(void)
45         if (cpu_is_omap3630()) {
46                 omap3_voltdm_mpu.volt_data = omap36xx_vddmpu_volt_data;
47                 omap3_voltdm_core.volt_data = omap36xx_vddcore_volt_data;
48 +
49 +               omap3_voltdm_mpu.abb = &omap36xx_abb_mpu;
50         } else {
51                 omap3_voltdm_mpu.volt_data = omap34xx_vddmpu_volt_data;
52                 omap3_voltdm_core.volt_data = omap34xx_vddcore_volt_data;
53 diff --git a/arch/arm/mach-omap2/voltagedomains44xx_data.c b/arch/arm/mach-omap2/voltagedomains44xx_data.c
54 index c4584e9..11e2458 100644
55 --- a/arch/arm/mach-omap2/voltagedomains44xx_data.c
56 +++ b/arch/arm/mach-omap2/voltagedomains44xx_data.c
57 @@ -31,6 +31,7 @@
58  #include "omap_opp_data.h"
59  #include "vc.h"
60  #include "vp.h"
61 +#include "abb.h"
62  
63  static const struct omap_vfsm_instance omap4_vdd_mpu_vfsm = {
64         .voltsetup_reg = OMAP4_PRM_VOLTSETUP_MPU_RET_SLEEP_OFFSET,
65 @@ -53,6 +54,7 @@ static struct voltagedomain omap4_voltdm_mpu = {
66         .vc = &omap4_vc_mpu,
67         .vfsm = &omap4_vdd_mpu_vfsm,
68         .vp = &omap4_vp_mpu,
69 +       .abb = &omap4_abb_mpu,
70  };
71  
72  static struct voltagedomain omap4_voltdm_iva = {
73 @@ -64,6 +66,7 @@ static struct voltagedomain omap4_voltdm_iva = {
74         .vc = &omap4_vc_iva,
75         .vfsm = &omap4_vdd_iva_vfsm,
76         .vp = &omap4_vp_iva,
77 +       .abb = &omap4_abb_iva,
78  };
79  
80  static struct voltagedomain omap4_voltdm_core = {
81 -- 
82 1.6.6.1