From 4bcc475ebd06a04e1531254c27c6cf508ef8ebf9 Mon Sep 17 00:00:00 2001 From: Kevin Hilman Date: Mon, 28 Mar 2011 10:40:15 -0700 Subject: OMAP3+: voltage: convert to PRM register access functions Convert VC/VP register access to use PRM VC/VP accessor functions. In the process, move the read/write function pointers from vdd_info into struct voltagedomain. No functional changes. Additional cleanup: - remove prm_mod field from VC/VP data structures, the PRM register access functions know which PRM module to use. Signed-off-by: Kevin Hilman --- arch/arm/mach-omap2/voltage.h | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'arch/arm/mach-omap2/voltage.h') diff --git a/arch/arm/mach-omap2/voltage.h b/arch/arm/mach-omap2/voltage.h index 04e06266dbd..6a19cf39118 100644 --- a/arch/arm/mach-omap2/voltage.h +++ b/arch/arm/mach-omap2/voltage.h @@ -59,6 +59,9 @@ struct omap_vfsm_instance_data { * @node: list_head linking all voltage domains * @pwrdm_list: list_head linking all powerdomains in this voltagedomain * @vc: pointer to VC channel associated with this voltagedomain + * @read: read a VC/VP register + * @write: write a VC/VP register + * @read: read-modify-write a VC/VP register * @vdd: to be removed */ struct voltagedomain { @@ -68,6 +71,11 @@ struct voltagedomain { struct list_head pwrdm_list; struct omap_vc_channel *vc; + /* VC/VP register access functions: SoC specific */ + u32 (*read) (u8 offset); + void (*write) (u32 val, u8 offset); + u32 (*rmw)(u32 mask, u32 bits, u8 offset); + struct omap_vdd_info *vdd; }; @@ -146,8 +154,6 @@ struct omap_vdd_info { u32 curr_volt; bool vp_enabled; - u32 (*read_reg) (u16 mod, u8 offset); - void (*write_reg) (u32 val, u16 mod, u8 offset); int (*volt_scale) (struct voltagedomain *voltdm, unsigned long target_volt); }; -- cgit v1.2.2