From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Rafael J. Wysocki" Date: Sun, 15 May 2011 23:33:28 +0000 Subject: [PATCH 5/6] ARM / shmobile: Support for power domain A4MP on SH7372 Message-Id: <201105160133.29294.rjw@sisk.pl> List-Id: References: <201104290154.12966.rjw@sisk.pl> <201105082320.57185.rjw@sisk.pl> <201105160117.46927.rjw@sisk.pl> In-Reply-To: <201105160117.46927.rjw@sisk.pl> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Linux PM mailing list Cc: Greg KH , LKML , Kevin Hilman , Grant Likely , Magnus Damm , linux-sh@vger.kernel.org, MyungJoo Ham , Guennadi Liakhovetski , Alan Stern From: Rafael J. Wysocki Use the power domains support code added by the previous patches to implement support for power domain A4MP on SH7372. Signed-off-by: Rafael J. Wysocki --- arch/arm/mach-shmobile/board-mackerel.c | 2 ++ arch/arm/mach-shmobile/include/mach/sh7372.h | 3 +++ arch/arm/mach-shmobile/pm-sh7372.c | 7 +++++++ 3 files changed, 12 insertions(+) Index: linux-2.6/arch/arm/mach-shmobile/pm-sh7372.c =================================--- linux-2.6.orig/arch/arm/mach-shmobile/pm-sh7372.c +++ linux-2.6/arch/arm/mach-shmobile/pm-sh7372.c @@ -89,9 +89,16 @@ static struct sh7372_domain_data sh7372_ struct generic_power_domain sh7372_a4lc_domain; +static struct sh7372_domain_data sh7372_a4mp_domain_data = { + .bit_shift = 2, +}; + +struct generic_power_domain sh7372_a4mp_domain; + static int __init sh7372_power_domains_init(void) { sh7372_init_domain(&sh7372_a4lc_domain, &sh7372_a4lc_domain_data); + sh7372_init_domain(&sh7372_a4mp_domain, &sh7372_a4mp_domain_data); return 0; } core_initcall(sh7372_power_domains_init); Index: linux-2.6/arch/arm/mach-shmobile/include/mach/sh7372.h =================================--- linux-2.6.orig/arch/arm/mach-shmobile/include/mach/sh7372.h +++ linux-2.6/arch/arm/mach-shmobile/include/mach/sh7372.h @@ -475,11 +475,14 @@ struct platform_device; #ifdef CONFIG_PM extern struct generic_power_domain sh7372_a4lc_domain; #define SH7372_A4LC (&sh7372_a4lc_domain) +extern struct generic_power_domain sh7372_a4mp_domain; +#define SH7372_A4MP (&sh7372_a4mp_domain) extern void sh7372_add_device_to_domain(struct generic_power_domain *domain, struct platform_device *pdev); #else #define SH7372_A4LC NULL +#define SH7372_A4PM NULL static inline void sh7372_add_device_to_domain(struct generic_power_domain *dom, struct platform_device *pd) {} Index: linux-2.6/arch/arm/mach-shmobile/board-mackerel.c =================================--- linux-2.6.orig/arch/arm/mach-shmobile/board-mackerel.c +++ linux-2.6/arch/arm/mach-shmobile/board-mackerel.c @@ -1218,6 +1218,8 @@ static void __init mackerel_init(void) sh7372_add_device_to_domain(SH7372_A4LC, &lcdc_device); sh7372_add_device_to_domain(SH7372_A4LC, &hdmi_lcdc_device); + sh7372_add_device_to_domain(SH7372_A4MP, &fsi_device); + hdmi_init_pm_clock(); }