Re: [PATCH 06/16] OMAP3: PM: Smartreflex class related changes for smartreflex.c

Kevin Hilman
2010-03-02T23:52:46Z

Thara Gopinath <thara@ti.com> writes:

> OMAP3 smartreflex modules are capable of two different classes
> of implementaion -
> Class-2: Continuous Software Calibration
> Class-3: Continuous Hardware Calibration.
> OMAP3 along with T2/Gaia supports the Class 3 implementaion.
> With a different PMIC it can support Class 2 implementaion also.
>
> The idea behind this patch is that smartreflex.c should be able
> to support both the classes of Smartreflex and the class specific
> details for smartreflex should stay out of this file in a separate
> class file.
> This patch introduces smartreflex class specific hooks in
> smartreflex.c. This patch only takes care of smartreflex enable
> disable hooks which differ between Class 2 and Class 3. There
> are some register setting changes between both the classes which
> will be taken care of in a later patch.
> This will form the base for adding class specific
> drivers in later patches.
>
> Signed-off-by: Thara Gopinath <thara@ti.com>
> ---
> arch/arm/mach-omap2/pm34xx.c | 8 +-
> arch/arm/mach-omap2/smartreflex.c | 251 ++++++++++++++++++++----------------
> arch/arm/mach-omap2/smartreflex.h | 48 ++++++--
> 3 files changed, 182 insertions(+), 125 deletions(-)
>

[...]

> diff --git a/arch/arm/mach-omap2/smartreflex.c b/arch/arm/mach-omap2/smartreflex.c
> index c00925d..ba9f899 100644
> --- a/arch/arm/mach-omap2/smartreflex.c
> +++ b/arch/arm/mach-omap2/smartreflex.c
> @@ -55,6 +55,7 @@ struct omap_sr {
>
> /* sr_list contains all the instances of smartreflex module */
> static LIST_HEAD(sr_list);
> +static struct omap_smartreflex_class_data *sr_class;
>
> #define SR_REGADDR(offs) (sr->srbase_addr + offset)
>
> @@ -388,14 +389,86 @@ static int sr_reset_voltage(int srid)
> return 0;
> }
>
> -static int sr_enable(struct omap_sr *sr, u32 target_opp_no)
> +static void sr_start_vddautocomap(int srid)

Either in this patch or in an additional patch (previous to this one)
can you fix the name of these autocomp functions: *_vddautocomap ->
*_vddautocomp. I don't think comap means anything.

Kevin