diff options
author | Kevin Hilman <khilman@ti.com> | 2011-03-28 13:40:15 -0400 |
---|---|---|
committer | Kevin Hilman <khilman@ti.com> | 2011-09-15 15:02:08 -0400 |
commit | 4bcc475ebd06a04e1531254c27c6cf508ef8ebf9 (patch) | |
tree | cbb34d6e8ad79e2cf6b75167d9cee4a7ef2885c2 /arch/arm/mach-omap2/voltage.h | |
parent | 4bb73adec43bbf63d39e1c2021de0aab0c60ea34 (diff) |
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 <khilman@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2/voltage.h')
-rw-r--r-- | arch/arm/mach-omap2/voltage.h | 10 |
1 files changed, 8 insertions, 2 deletions
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 { | |||
59 | * @node: list_head linking all voltage domains | 59 | * @node: list_head linking all voltage domains |
60 | * @pwrdm_list: list_head linking all powerdomains in this voltagedomain | 60 | * @pwrdm_list: list_head linking all powerdomains in this voltagedomain |
61 | * @vc: pointer to VC channel associated with this voltagedomain | 61 | * @vc: pointer to VC channel associated with this voltagedomain |
62 | * @read: read a VC/VP register | ||
63 | * @write: write a VC/VP register | ||
64 | * @read: read-modify-write a VC/VP register | ||
62 | * @vdd: to be removed | 65 | * @vdd: to be removed |
63 | */ | 66 | */ |
64 | struct voltagedomain { | 67 | struct voltagedomain { |
@@ -68,6 +71,11 @@ struct voltagedomain { | |||
68 | struct list_head pwrdm_list; | 71 | struct list_head pwrdm_list; |
69 | struct omap_vc_channel *vc; | 72 | struct omap_vc_channel *vc; |
70 | 73 | ||
74 | /* VC/VP register access functions: SoC specific */ | ||
75 | u32 (*read) (u8 offset); | ||
76 | void (*write) (u32 val, u8 offset); | ||
77 | u32 (*rmw)(u32 mask, u32 bits, u8 offset); | ||
78 | |||
71 | struct omap_vdd_info *vdd; | 79 | struct omap_vdd_info *vdd; |
72 | }; | 80 | }; |
73 | 81 | ||
@@ -146,8 +154,6 @@ struct omap_vdd_info { | |||
146 | u32 curr_volt; | 154 | u32 curr_volt; |
147 | bool vp_enabled; | 155 | bool vp_enabled; |
148 | 156 | ||
149 | u32 (*read_reg) (u16 mod, u8 offset); | ||
150 | void (*write_reg) (u32 val, u16 mod, u8 offset); | ||
151 | int (*volt_scale) (struct voltagedomain *voltdm, | 157 | int (*volt_scale) (struct voltagedomain *voltdm, |
152 | unsigned long target_volt); | 158 | unsigned long target_volt); |
153 | }; | 159 | }; |