Commit graph

797 commits

Author SHA1 Message Date
Rafael J. Wysocki 7b5674075b ARM: shmobile: Move r8a7740's PM domain objects to a table
Instead of giving a name to every r8a7740's PM domain object, put
them all into a table and use rmobile_init_domains(), introduced by a
previous patch, for initializing them all altogether.  Also, use
pm_genpd_add_subdomain_names() for adding A3SP as a subdomain of A4S.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Magnus Damm <damm@opensource.se>
2012-09-04 01:44:57 +02:00
Rafael J. Wysocki e7e59a4b55 ARM: shmobile: Move sh7372's PM domain objects to a table
Instead of giving a name to every sh7372's PM domain object, put them
all into a table and use rmobile_init_domains(), introduced by a
previous patch, for initializing them all altogether.  Also, use
pm_genpd_add_subdomain_names() for adding subdomains to the PM
domains and pm_genpd_poweron_name() for turning on the A4S domain
when preparing for system suspend.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Magnus Damm <damm@opensource.se>
2012-09-04 01:44:57 +02:00
Rafael J. Wysocki 70fe7b2467 ARM: shmobile: Do not access sh7372 A4S domain internals directly
The sh7372_enter_suspend() routine checks the status field of the
generic PM domain object corresponding to the A4S domain in order to
check if it can turn that domain off when entering system sleep.
However, it shouldn't rely on the specific values of the generic
data structures this way, so make it use its own mechanism to
recognize when it is safe to turn that domain off.

For this purpos, introduce a boolean variable a4s_suspend_ready
that will be set by the A4S' suspend routine and unset by its
resume routine executed by rmobile_pd_power_down() and
__rmobile_pd_power_up(), respectively.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Magnus Damm <damm@opensource.se>
2012-09-04 01:44:57 +02:00
Rafael J. Wysocki 0d09f450b6 ARM: shmobile: Add routine for automatic PM domains initialization
Add a new routine, rmobile_init_domains(), allowing the caller
to initialize all generic PM objects stored in a table in one
operation.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Magnus Damm <damm@opensource.se>
2012-09-04 01:44:56 +02:00
Rafael J. Wysocki 7fcb304792 ARM: shmobile: Use domain names when adding subdomains to power domains
Make the power management code under arch/arm/mach-shmobile/
use pm_genpd_add_subdomain_names() for adding subdomains to power
domains, which makes it possible to drop
rmobile_pm_add_subdomain() and will allow us to carry out those
operations for domain objects stored in tables in a straightforward
way.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Magnus Damm <damm@opensource.se>
2012-09-04 01:44:56 +02:00
Rafael J. Wysocki 8e0e7aaef3 ARM: shmobile: Drop r8a7779_add_device_to_domain()
If the r8a7779's PM domains are given names, this SoC and its boards
will be able to use rmobile_add_device_to_domain() for adding devices
to those domains and r8a7779_add_device_to_domain(), which is not
used anywhere at the moment anyway, may be dopped.

Accordingly, give names to the r8a7779's PM domains and drop
r8a7779_add_device_to_domain().

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Magnus Damm <damm@opensource.se>
2012-09-04 01:44:56 +02:00
Rafael J. Wysocki 8bdd94689e ARM: shmobile: Use names of power domains for adding devices to them
Make the power management code under arch/arm/mach-shmobile/ use
names of power domains instead of pointers to domain objects for
adding devices to the domains.  This will allow us to put the
domain objects into tables and register them all in one shot
going forward.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Magnus Damm <damm@opensource.se>
2012-09-04 01:44:55 +02:00
Linus Torvalds f50f118c49 ARM: arm-soc board updates, take 2
This branch contains board updates, mostly for shmobile, but also a
 couple for PXA.
 
 The shmobile platforms are still in the early stages of DT enablement,
 so there's a bit more updates here than we'd ideally want to see:
  - regulator updates to provide some fixed regulators on several boards
  - gpio support updates for multiple boards
  - misc updates for recently-introduced boards armadillo800eva and kzm9g
  - defconfig updates
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJQFcP7AAoJEIwa5zzehBx3gY0P/jg2pF1uznUV/4JVDKEJ7RPk
 v6XfN8JZCiDDfd2dHwnw2sTkMxFUA1yzrb3nYMu4w4t4Bb0bL9q06Ak5nqEmqi8Q
 ASNua/h54qRbj9OLRPkqN2mCIZkeXJgO+aj4jh7ERXWn3sawPIBsyI+Z06Lk8OoO
 uI4gJQwB+gdXn/Ewr7xCG2hwcHzQNkPibw+7NkhP6iRk+0S8C01G0YbWeIcRhUIo
 W2bFQRkpWtvMgYO2f/4W97jQAxD9d76ImBKXo1McA+U51U7J4y3/zzQ5diCv+GhX
 647Ja8q/+T2KY4Rpanmq++yzTaYWA67le0JN3btGdfpCcP+R1zWzpuY5zpHQ+kbM
 ptqndFSJ1eJrUagrYCyYRPDbwsGjDrf4B5eJxnYcQ9RBG3mo7ujnmcb7qDpA11IE
 ZIGBodR/9HDkqM7Hv3CZG4WLgzDanCA2lZz75oc1LIJIwyWy8GzYHj9IfdyA5Mxw
 NvUjr26nu6REk45LsDjKIkL1KMulrT3MRhFHvZtKkSIBPqMMZHxJtxnW3XpLBL6i
 dHmwKkK+TkwCCTD8dSMFTxxOf2O9Rv9b2KSQumphplC83gCl9GZB2q7t7zKPpwXa
 lvqB1qfCLM5azQ7tVgksUOCI1Nmpz4bYa3XvXW1Zyraryaw8530Hex5TwfQb6Xun
 WEQp09zQYi80SWTrlGmW
 =7Fgi
 -----END PGP SIGNATURE-----

Merge tag 'boards2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

Pull arm-soc board updates from Olof Johansson:
 "This branch contains board updates, mostly for shmobile, but also a
  couple for PXA.

  The shmobile platforms are still in the early stages of DT enablement,
  so there's a bit more updates here than we'd ideally want to see:
   - regulator updates to provide some fixed regulators on several
     boards
   - gpio support updates for multiple boards
   - misc updates for recently-introduced boards armadillo800eva and
     kzm9g
   - defconfig updates"

* tag 'boards2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (37 commits)
  ARM: shmobile: kzm9g: defconfig enable INOTIFY_USER
  ARM: mach-shmobile: armadillo800eva: defconfig Allow use of armhf userspace
  ARM: shmobile: armadillo800eva: A3SP domain includes USB
  ARM: shmobile: armadillo800eva: A4LC domain includes LCDC
  ARM: shmobile: armadillo800eva: USB Func enables external IRQ mode
  ARM: mach-shmobile: kzm9d: Add defconfig
  ARM: mach-shmobile: select the fixed regulator driver on several boards
  ARM: mach-shmobile: add SDHI2 to the 2.8V fixed regulator consumers on kzm9g
  ARM: pxa: hx4700: Use DEFINE_RES_* macros consistently
  ARM: pxa: remove eseries.h
  ARM: mach-shmobile: add fixed voltage regulators to marzen
  ARM: mach-shmobile: add fixed voltage regulators to kzm9g
  ARM: mach-shmobile: add fixed voltage regulators to kzm9d
  ARM: mach-shmobile: add fixed voltage regulators to kota2
  ARM: mach-shmobile: add fixed voltage regulators to g4evm
  ARM: mach-shmobile: add fixed voltage regulators to bonito
  ARM: mach-shmobile: add fixed voltage regulators to armadillo800eva
  ARM: mach-shmobile: add fixed voltage regulators to ap4evb
  ARM: mach-shmobile: add fixed voltage regulators to ag5evm
  ARM: mach-shmobile: add 3.3V and 1.8V fixed regulators to mackerel
  ...
2012-07-30 09:48:00 -07:00
Arnd Bergmann 088eb2a84b Linux 3.5-rc7
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.18 (GNU/Linux)
 
 iQEcBAABAgAGBQJQAfWKAAoJEHm+PkMAQRiG/DwIAIullMhkDhD/GJcn24ZbUJoa
 v6zRPK2hIavuKH/6bUoUiXT346PUYgVnRMhetuYKJFURz6KX/nmlxve/iXNn/WP1
 9hnxhE+zcnp2qKI83c3Yok09eed1KnGY5hWQkqXM2gzji/OU0pCKchOcL01l//uz
 iiWpNAXEVUnT92CafnHlZ55f/MWVqRFmDKi3Ty1YKSskhojQ6NOPsWCxrTxKVbim
 2YPXc3D+xLHzF12ufVgla20AF4KnK8m+tFugniRAqArIagpzBUP1x1wk0RN5PyBD
 FTP8lv7bSfBusp41/mPDB66WAe9EfQBoWQY6jloJjp0i8xnMyH5V05pImBV5NwU=
 =O+gl
 -----END PGP SIGNATURE-----

Merge tag 'v3.5-rc7' into late/soc

Linux 3.5-rc7
2012-07-21 23:34:31 +02:00
Rafael J. Wysocki 45c7a01f07 Merge branch 'renesas-marzen' into renesas-board
* renesas-marzen:
  ARM: mach-shmobile: add fixed voltage regulators to marzen
2012-07-11 23:08:06 +02:00
Rafael J. Wysocki cfc073bafb Merge branch 'renesas-mackerel' into renesas-board
* renesas-mackerel:
  ARM: mach-shmobile: add 3.3V and 1.8V fixed regulators to mackerel
  ARM: shmobile: use common extra gpio functions on Mackerel
2012-07-11 23:07:57 +02:00
Rafael J. Wysocki f193b42fa2 Merge branch 'renesas-kzm9g' into renesas-board
* renesas-kzm9g:
  ARM: shmobile: kzm9g: defconfig enable INOTIFY_USER
  ARM: mach-shmobile: add SDHI2 to the 2.8V fixed regulator consumers on kzm9g
  ARM: mach-shmobile: add fixed voltage regulators to kzm9g
  ARM: shmobile: kzm9g: enable DMAEngine on MMCIF
  ARM: shmobile: kzm9g: enable DMAEngine on FSI
  ARM: shmobile: kzm9g: enable MicroSD
  ARM: shmobile: kzm9g: enable USB function
2012-07-11 23:07:44 +02:00
Rafael J. Wysocki 30a8a0b352 Merge branch 'renesas-kzm9d' into renesas-board
* renesas-kzm9d:
  ARM: mach-shmobile: kzm9d: Add defconfig
  ARM: mach-shmobile: add fixed voltage regulators to kzm9d
2012-07-11 23:07:37 +02:00
Rafael J. Wysocki 633842f173 Merge branch 'renesas-kota2' into renesas-board
* renesas-kota2:
  ARM: mach-shmobile: add fixed voltage regulators to kota2
2012-07-11 23:07:29 +02:00
Rafael J. Wysocki d0ad89fd04 Merge branch 'renesas-g4evm' into renesas-board
* renesas-g4evm:
  ARM: mach-shmobile: add fixed voltage regulators to g4evm
  ARM: shmobile: use common extra gpio functions on g4evm
2012-07-11 23:07:22 +02:00
Rafael J. Wysocki be4f108862 Merge branch 'renesas-bonito' into renesas-board
* renesas-bonito:
  ARM: mach-shmobile: add fixed voltage regulators to bonito
2012-07-11 23:07:13 +02:00
Rafael J. Wysocki 5ae794735c Merge branch 'renesas-ap4evb' into renesas-board
* renesas-ap4evb:
  ARM: mach-shmobile: add fixed voltage regulators to ap4evb
  ARM: shmobile: use common extra gpio functions on ap4evb
2012-07-11 23:07:05 +02:00
Rafael J. Wysocki b315ec06e0 Merge branch 'renesas-ag5evm' into renesas-board
* renesas-ag5evm:
  ARM: mach-shmobile: add fixed voltage regulators to ag5evm
2012-07-11 23:06:57 +02:00
Rafael J. Wysocki 8600fb68cf Merge branch 'renesas-armadillo' into renesas-board
* renesas-armadillo:
  ARM: mach-shmobile: armadillo800eva: defconfig Allow use of armhf userspace
  ARM: shmobile: armadillo800eva: A3SP domain includes USB
  ARM: shmobile: armadillo800eva: A4LC domain includes LCDC
  ARM: shmobile: armadillo800eva: USB Func enables external IRQ mode
  ARM: mach-shmobile: add fixed voltage regulators to armadillo800eva
  ARM: shmobile: use common extra gpio functions on armadillo800eva
  ARM: shmobile: armadillo800eva: enable DMAEngine on USB
  ARM: shmobile: armadillo800eva: enable DMAEngine on SDHI
  ARM: shmobile: armadillo800eva: enable DMAEngine on FSI
  ARM: shmobile: armadillo800eva: enable FSI-HDMI sound
  ARM: shmobile: armadillo800eva: enable FSI-WM8978 sound

Conflicts:
	arch/arm/mach-shmobile/Kconfig
2012-07-11 23:06:35 +02:00
Rafael J. Wysocki 8533bae35b Merge branch 'renesas-board-common' into renesas-board
* renesas-board-common:
  ARM: mach-shmobile: select the fixed regulator driver on several boards
  regulator: extend the fixed dummy voltage regulator to accept voltage
  regulator: support multiple dummy fixed regulators

Conflicts:
	arch/arm/mach-shmobile/Kconfig
2012-07-11 23:05:06 +02:00
Rafael J. Wysocki 9d0db7abbd Merge branch 'renesas-soc' into renesas-board
* renesas-soc: (31 commits)
  ARM: shmobile: Fix build problem in pm-sh7372.c for unusual .config
  ARM: shmobile: Take cpuidle dependencies into account correctly
  ARM: mach-shmobile: sh7377 generic board support via DT
  ARM: mach-shmobile: r8a7740 generic board support via DT
  ARM: shmobile: sh7372: completely switch over to using pm-rmobile API
  ARM: shmobile: ap4evb: switch to using pm-rmobile API
  ARM: shmobile: mackerel: switch to using pm-rmobile API
  ARM: shmobile: sh7372: add pm-rmobile domain support
  ARM: shmobile: r8a7740: add A4LC pm domain support
  ARM: shmobile: r8a7740: add A3SP pm domain support
  ARM: shmobile: r8a7740: add A4S pm domain support
  ARM: shmobile: r8a7740: fixup: MSEL1CR 7bit control
  ARM: shmobile: soc-core: add R-mobile PM domain common APIs
  ARM: shmobile: sh7372 A3SM CPUIdle support
  ARM: shmobile: Use INTCA with sh7372 A3SM power domain
  ARM: mach-shmobile: Convert sh_clk_mstp32_register to sh_clk_mstp_register
  ARM: shmobile: use common DMAEngine definitions on sh7372
  ARM: shmobile: use common DMAEngine definitions on sh73a0
  ARM: shmobile: sh73a0: add DMAEngine support for MPDMAC
  ARM: shmobile: sh73a0: add USB clock support
  ...
2012-07-11 23:03:54 +02:00
Rafael J. Wysocki 0df8fa4661 Merge branch 'renesas-sh7377' into renesas-soc
* renesas-sh7377:
  ARM: mach-shmobile: sh7377 generic board support via DT
2012-07-11 23:02:37 +02:00
Rafael J. Wysocki 27748df5ee Merge branch 'renesas-sh7372' into renesas-soc
* renesas-sh7372:
  ARM: shmobile: Fix build problem in pm-sh7372.c for unusual .config
  ARM: shmobile: Take cpuidle dependencies into account correctly
  ARM: shmobile: sh7372: completely switch over to using pm-rmobile API
  ARM: shmobile: ap4evb: switch to using pm-rmobile API
  ARM: shmobile: mackerel: switch to using pm-rmobile API
  ARM: shmobile: sh7372: add pm-rmobile domain support
  ARM: shmobile: sh7372 A3SM CPUIdle support
  ARM: shmobile: Use INTCA with sh7372 A3SM power domain
  ARM: shmobile: use common DMAEngine definitions on sh7372
  ARM: shmobile: sh7372: remove unused sh7372_a3sp_init() on !CONFIG_PM
2012-07-11 23:02:31 +02:00
Rafael J. Wysocki 0b14121f93 Merge branch 'renesas-sh73a0' into renesas-soc
* renesas-sh73a0:
  ARM: shmobile: use common DMAEngine definitions on sh73a0
  ARM: shmobile: sh73a0: add DMAEngine support for MPDMAC
  ARM: shmobile: sh73a0: add USB clock support
2012-07-11 23:02:18 +02:00
Rafael J. Wysocki b0a1e7532b Merge branch 'renesas-r8a7740' into renesas-soc
* renesas-r8a7740:
  ARM: mach-shmobile: r8a7740 generic board support via DT
  ARM: shmobile: r8a7740: add A4LC pm domain support
  ARM: shmobile: r8a7740: add A3SP pm domain support
  ARM: shmobile: r8a7740: add A4S pm domain support
  ARM: shmobile: r8a7740: fixup: MSEL1CR 7bit control
  ARM: shmobile: use common DMAEngine definitions on r8a7740
  ARM: shmobile: r8a7740: add DMAEngine support for USB
  ARM: shmobile: r8a7740: add DMAEngine support for SDHI
  ARM: shmobile: r8a7740: add DMAEngine support for FSI
2012-07-11 23:02:05 +02:00
Rafael J. Wysocki 992c91eeca Merge branch 'renesas-soc-core' into renesas-soc
* renesas-soc-core:
  ARM: shmobile: soc-core: add R-mobile PM domain common APIs
  ARM: mach-shmobile: Convert sh_clk_mstp32_register to sh_clk_mstp_register
  ARM: shmobile: add common DMAEngine definitions
  ARM: shmobile: add common extra gpio functions

Conflicts:
	arch/arm/mach-shmobile/clock-r8a7740.c
2012-07-11 23:01:33 +02:00
Rafael J. Wysocki 31400bb56c Merge branch 'renesas-fixes' into renesas-soc
* renesas-fixes:
  ARM: shmobile: r8a7779: Route all interrupts to ARM
  ARM: shmobile: kzm9d: use late init machine hook
  ARM: shmobile: kzm9g: use late init machine hook
  ARM: mach-shmobile: armadillo800eva: Use late init machine hook
2012-07-11 23:00:18 +02:00
Rafael J. Wysocki 911a472aca ARM: shmobile: Fix build problem in pm-sh7372.c for unusual .config
If neither CONFIG_SUSPEND nor CONFIG_CPU_IDLE is set in the kernel
configuration file, build error occurs in
arch/arm/mach-shmobile/pm-sh7372.c.

Fix it by rearranging #ifdefs in that file to make the
definition of sh7372_suspend_init() depend only on
CONFIG_SUSPEND and the definition of sh7372_cpuidle_init()
depend only on CONFIG_CPU_IDLE.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Magnus Damm <damm@opensource.se>
2012-07-11 22:55:12 +02:00
Magnus Damm a1ee61b8f4 ARM: shmobile: Take cpuidle dependencies into account correctly
The sh7372's cpuidle code uses cpu_suspend() and cpu_resume() in
its implementation of the .enter() callback for deeper C-states, so
make ARCH_SH7372 select ARM_CPU_SUSPEND if CPU_IDLE is set to satisfy
all of the build dependencies (it has to be selected for CONFIG_PM
as well for the system suspend handling).

[rjw: Added the subject and changelog.]

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-11 22:54:05 +02:00
Magnus Damm 873e9f7a3b ARM: shmobile: fix platsmp.c build when ARCH_SH73A0=n
Fix build error in the case of SMP=y but ARCH_SH73A0=n
introduced by:

9601e87 ARM: shmobile: fix smp build

The use of of_machine_is_compatible() will link in the
the SoC-specific symbols:
"sh73a0_get_core_count", "sh73a0_smp_prepare_cpus",
"sh73a0_secondary_init" and "sh73a0_boot_secondary".

This patch adds an ugly #ifdef wrapper as a stop-gap
solution.

Signed-off-by: Magnus Damm <damm@opensource.se>
Tested-by: Tested-by: Simon Horman <horms@verge.net.au>
Acked-by: "Rafael J. Wysocki" <rjw@sisk.pl>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2012-07-06 22:00:20 +02:00
Magnus Damm c54d6eca4f ARM: mach-shmobile: sh7377 generic board support via DT
Add generic DT board support for the sh7377 SoC.

SCIF serial ports and timers are kept as regular
platform devices. Other on-chip and on-board devices
should be configured via the device tree.

At this point there is no interrupt controller support
in place but such code will be added over time when
proper IRQ domain support has been added to INTC.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-06 21:05:20 +02:00
Magnus Damm 755d57b222 ARM: mach-shmobile: r8a7740 generic board support via DT
Add generic DT board support for the r8a7740 SoC.

SCIF serial ports and timers are kept as regular
platform devices. Other on-chip and on-board devices
should be configured via the device tree.

At this point there is no interrupt controller support
in place but such code will be added over time when
proper IRQ domain support has been added to INTC.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-06 21:03:35 +02:00
Kuninori Morimoto 3aa99a3498 ARM: shmobile: sh7372: completely switch over to using pm-rmobile API
Now, all sh7372 platforms are switched over to use pm-rmobile base PM domain,
and no one is using original sh7372_pm_domain APIs.
We can remove these, switching has been fully completed.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-06 20:53:39 +02:00
Kuninori Morimoto c99cc71efd ARM: shmobile: ap4evb: switch to using pm-rmobile API
This patch switches ap4evb platform to use pm-rmobile base common API.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-06 20:53:39 +02:00
Kuninori Morimoto aa7541fd68 ARM: shmobile: mackerel: switch to using pm-rmobile API
This patch switches mackerel platform to use pm-rmobile base common API.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-06 20:53:38 +02:00
Kuninori Morimoto b9299a7270 ARM: shmobile: sh7372: add pm-rmobile domain support
This patch adds pm-rmobile common API base PM domain.
sh7372 CPU/platform will switch to using it from
original implementation

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-06 20:53:38 +02:00
Rafael J. Wysocki de5c094a90 Merge branch 'renesas-soc-core' into renesas-sh7372
* renesas-soc-core:
  ARM: shmobile: soc-core: add R-mobile PM domain common APIs
  ARM: mach-shmobile: Convert sh_clk_mstp32_register to sh_clk_mstp_register
2012-07-06 20:43:44 +02:00
Kuninori Morimoto 0f54788d8b ARM: shmobile: armadillo800eva: A3SP domain includes USB
Because USB Func is controlled by external IRQ mode,
it is possible to control USB under A3SP domain to reduce power.
This patch enables it.

Armadillo800eva board switchs USB Host/Func by SW1.6,
So, the device to adds into domain is selected on this patch.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-06 20:42:55 +02:00
Kuninori Morimoto 1000076a88 ARM: shmobile: armadillo800eva: A4LC domain includes LCDC
It is possible to control LCDC under A4LC domain to reduce power.
This patch enable it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-06 20:42:55 +02:00
Kuninori Morimoto d483b983a5 ARM: shmobile: armadillo800eva: USB Func enables external IRQ mode
We can control renesas_usbhs driver as 2 way which are
autonomy mode and external IRQ trigger mode.

Autonomy mode is very easy settings for platform,
but it required USB power domain always ON,
since its connection/disconnection IRQ come from it.

If platform uses external IRQ trigger mode,
USB power domain can be OFF, since its
connection/disconnection IRQ come from external IRQ.

This patch enable external IRQ mode.
Now it is possible to add USB support on A4SP domain.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-06 20:42:55 +02:00
Rafael J. Wysocki 93bcfdc565 Merge branch 'renesas-r8a7740' into renesas-armadillo
* renesas-r8a7740:
  ARM: shmobile: r8a7740: add A4LC pm domain support
  ARM: shmobile: r8a7740: add A3SP pm domain support
  ARM: shmobile: r8a7740: add A4S pm domain support
  ARM: shmobile: r8a7740: fixup: MSEL1CR 7bit control
  ARM: shmobile: soc-core: add R-mobile PM domain common APIs
  ARM: mach-shmobile: Convert sh_clk_mstp32_register to sh_clk_mstp_register
2012-07-06 20:42:44 +02:00
Kuninori Morimoto a330ce3cda ARM: shmobile: r8a7740: add A4LC pm domain support
This patch adds basic A4LC pm domain support.
Now, below devices can be controled by PM

MERAM, LCDC, VOU, ICBS, SDENC-Link

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-06 20:40:17 +02:00
Kuninori Morimoto 802a5639aa ARM: shmobile: r8a7740: add A3SP pm domain support
This patch adds basic A3SP pm domain support.
Now, below devices can be controled by PM

DMAC1/2/3, IPMMU, DDM, FLCTL, SYS-HPB, BBIF1, MSIOF1/2,
SCIFA,SCIFB, IIC1, IrDA, USBH, USBDMAC, SDHI0/1/2, TPU,
DREQPAK (Sys),  MMCIF, RSPI, SIM, USBF

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-06 20:40:17 +02:00
Kuninori Morimoto 8459293c27 ARM: shmobile: r8a7740: add A4S pm domain support
This patch adds basic A4S pm domain support.
Now, below devices can be controled by PM

Common-SHwy, Common-HPB, BSC, MFI, MMFROM, HS-SHwy,
SYS-HPB, INTCA, DBSC, DDRPHY (Logic),
ATAPI, GbEther, AXI-bus

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-06 20:40:17 +02:00
Kuninori Morimoto 444c5ed8d7 ARM: shmobile: r8a7740: fixup: MSEL1CR 7bit control
MSEL1CR 7bit selects IRQ7 source pin which was
VBUS pin or A21/MSIOF0_RSYNC/MSIOF1_TSYNC pin.
But current pfc-r8a7740 MSEL1CR 7bit setting was wrong.
This patch fix it up

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-06 20:40:16 +02:00
Rafael J. Wysocki 2f7d41217b Merge branch 'renesas-soc-core' into renesas-r8a7740
* renesas-soc-core:
  ARM: shmobile: soc-core: add R-mobile PM domain common APIs
  ARM: mach-shmobile: Convert sh_clk_mstp32_register to sh_clk_mstp_register

Conflicts:
	arch/arm/mach-shmobile/clock-r8a7740.c
2012-07-06 20:39:54 +02:00
Kuninori Morimoto 8f45b112fc ARM: shmobile: soc-core: add R-mobile PM domain common APIs
This patch adds Renesas R-mobile series common PM domain APIs.
R-mobile CPU can use/switch this API

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-06 20:33:57 +02:00
Guennadi Liakhovetski 34767f8dcc ARM: mach-shmobile: select the fixed regulator driver on several boards
On systems, using regulators to supply power to devices, if the REGULATOR
Kconfig option is disabled, regulator API stubs will be used, which often
suffices to bring a default configuration up. If REGULATOR is enabled but
respective regulator drivers are inactive, the real regulator API calls
will be used, which in the absence of drivers will fail to provide
services. This patch prevents such a problem on sh-mobile boards by
forcing REGULATOR_FIXED_VOLTAGE on if REGULATOR is selected.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-06 20:24:23 +02:00
Magnus Damm 3abd69d28b ARM: shmobile: sh7372 A3SM CPUIdle support
Add CPUIdle support for the A3SM power domain on sh7372.

With this in place we can turn off more of the SoC during
run time and save power. Makes use of the recently introduced
sh7372 INTCA A3SM power domain wakeup support.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-05 23:13:42 +02:00
Magnus Damm 591e2ac424 ARM: shmobile: Use INTCA with sh7372 A3SM power domain
Convert the sh7372 A3SM power domain code to allow
waking up through INTCA and SYSC instead of only
relying on SYSC for wakeups. This allows us to
enter A3SM more or less regardless of the state
of the rest of the system.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
2012-07-05 23:13:33 +02:00