diff options
Diffstat (limited to 'arch/arm/mach-shmobile/include')
-rw-r--r-- | arch/arm/mach-shmobile/include/mach/common.h | 1 | ||||
-rw-r--r-- | arch/arm/mach-shmobile/include/mach/r8a7779.h | 35 |
2 files changed, 36 insertions, 0 deletions
diff --git a/arch/arm/mach-shmobile/include/mach/common.h b/arch/arm/mach-shmobile/include/mach/common.h index 304ac3115338..44ce124bfdec 100644 --- a/arch/arm/mach-shmobile/include/mach/common.h +++ b/arch/arm/mach-shmobile/include/mach/common.h | |||
@@ -66,5 +66,6 @@ extern void r8a7779_add_early_devices(void); | |||
66 | extern void r8a7779_add_standard_devices(void); | 66 | extern void r8a7779_add_standard_devices(void); |
67 | extern void r8a7779_clock_init(void); | 67 | extern void r8a7779_clock_init(void); |
68 | extern void r8a7779_pinmux_init(void); | 68 | extern void r8a7779_pinmux_init(void); |
69 | extern void r8a7779_pm_init(void); | ||
69 | 70 | ||
70 | #endif /* __ARCH_MACH_COMMON_H */ | 71 | #endif /* __ARCH_MACH_COMMON_H */ |
diff --git a/arch/arm/mach-shmobile/include/mach/r8a7779.h b/arch/arm/mach-shmobile/include/mach/r8a7779.h index 60e101aaea93..e6a6166fdf22 100644 --- a/arch/arm/mach-shmobile/include/mach/r8a7779.h +++ b/arch/arm/mach-shmobile/include/mach/r8a7779.h | |||
@@ -1,6 +1,9 @@ | |||
1 | #ifndef __ASM_R8A7779_H__ | 1 | #ifndef __ASM_R8A7779_H__ |
2 | #define __ASM_R8A7779_H__ | 2 | #define __ASM_R8A7779_H__ |
3 | 3 | ||
4 | #include <linux/sh_clk.h> | ||
5 | #include <linux/pm_domain.h> | ||
6 | |||
4 | /* Pin Function Controller: | 7 | /* Pin Function Controller: |
5 | * GPIO_FN_xx - GPIO used to select pin function | 8 | * GPIO_FN_xx - GPIO used to select pin function |
6 | * GPIO_GP_x_x - GPIO mapped to real I/O pin on CPU | 9 | * GPIO_GP_x_x - GPIO mapped to real I/O pin on CPU |
@@ -322,4 +325,36 @@ enum { | |||
322 | GPIO_FN_GPS_MAG, GPIO_FN_FCE, GPIO_FN_SCK4_B, | 325 | GPIO_FN_GPS_MAG, GPIO_FN_FCE, GPIO_FN_SCK4_B, |
323 | }; | 326 | }; |
324 | 327 | ||
328 | struct platform_device; | ||
329 | |||
330 | struct r8a7779_pm_ch { | ||
331 | unsigned long chan_offs; | ||
332 | unsigned int chan_bit; | ||
333 | unsigned int isr_bit; | ||
334 | }; | ||
335 | |||
336 | struct r8a7779_pm_domain { | ||
337 | struct generic_pm_domain genpd; | ||
338 | struct r8a7779_pm_ch ch; | ||
339 | }; | ||
340 | |||
341 | static inline struct r8a7779_pm_ch *to_r8a7779_ch(struct generic_pm_domain *d) | ||
342 | { | ||
343 | return &container_of(d, struct r8a7779_pm_domain, genpd)->ch; | ||
344 | } | ||
345 | |||
346 | #ifdef CONFIG_PM | ||
347 | extern struct r8a7779_pm_domain r8a7779_sh4a; | ||
348 | extern struct r8a7779_pm_domain r8a7779_sgx; | ||
349 | extern struct r8a7779_pm_domain r8a7779_vdp1; | ||
350 | extern struct r8a7779_pm_domain r8a7779_impx3; | ||
351 | |||
352 | extern void r8a7779_init_pm_domain(struct r8a7779_pm_domain *r8a7779_pd); | ||
353 | extern void r8a7779_add_device_to_domain(struct r8a7779_pm_domain *r8a7779_pd, | ||
354 | struct platform_device *pdev); | ||
355 | #else | ||
356 | #define r8a7779_init_pm_domain(pd) do { } while (0) | ||
357 | #define r8a7779_add_device_to_domain(pd, pdev) do { } while (0) | ||
358 | #endif /* CONFIG_PM */ | ||
359 | |||
325 | #endif /* __ASM_R8A7779_H__ */ | 360 | #endif /* __ASM_R8A7779_H__ */ |