Renesas ARM Based SoC Updates for v4.8

* Use ICRAM1 for jump stub on R-Car Gen 2 SoCs
 * Postpone call to pm_genpd_init
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJXV2vKAAoJENfPZGlqN0++Bi4P/2ZVe7ZQnG0EIdzY+hBHPj/k
 pS3dSrenUdeaM7vYVpB2S6f+6lqh3Dn6//jsY2/x127H9oj8cSzTidkLYXEUZb7v
 KjZIwjPq4+UjaA1hd2WZxjcbJKgkKz1BGh+GWUjvr/99cyh5ySkHMvsNHfyBjDQd
 SwKnklzCIJHws8UkKgEXtUutS+Z3LcClxNe5L+0dAnvh5dMp1Up/zTXsq5pDegr2
 ytQYjh+TEFmuUxLx3YB511LjrLDfpAB7yGHDajAbZjDi3KtlKqbypdx+TgiqT9hh
 zA5HP67XQFeJFp2DzariztVx+nHMrVd7atRn0qSX64TgqMPwpIMTLPEVFP+wCDyg
 2bqgIAoGJfg4bl1IL9QRTt607SyHALIzjP+n7Jb2wPejW8OtubHmKVdTamevrZTe
 lQvDNv6RwAZF60X1SkagxL13GAS3YRhKKi7wMDVb9ARzplvbh0KSDsu94k0S+wOE
 dGBDnAPGe0A0HHBm5IMgADBW6RRvLAnwkr73gGIbBbTX/rwctawnBi+eIkEZUfqF
 YzV3XavNOC5sXxGjQ5IiufHx/WL5XIy8np1aQNA67l3fFNYi/xrtgtFk+YKlcuiJ
 OJvNHvM0BaV5g09UYUEfO6zlN1lFUhWji6Q+ro5GSAgDl9Ki8SwQfA5wSjBW113E
 TdkCIRN0hkXf+AzPG5or
 =DKN7
 -----END PGP SIGNATURE-----

Merge tag 'renesas-soc-for-v4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc

Renesas ARM Based SoC Updates for v4.8

* Use ICRAM1 for jump stub on R-Car Gen 2 SoCs
* Postpone call to pm_genpd_init

* tag 'renesas-soc-for-v4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: rcar-gen2: Use ICRAM1 for jump stub on all SoCs
  ARM: shmobile: pm-rmobile: Postpone call to pm_genpd_init()

Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
Olof Johansson 2016-06-13 15:44:32 -07:00
commit 41f7337c22
2 changed files with 5 additions and 10 deletions

View File

@ -26,8 +26,7 @@
#define CA7RESCNT 0x0044
/* On-chip RAM */
#define MERAM 0xe8080000
#define RAM 0xe6300000
#define ICRAM1 0xe63c0000 /* Inter Connect RAM1 (4 KiB) */
/* SYSC */
#define SYSCIER 0x0c
@ -58,7 +57,7 @@ void __init rcar_gen2_pm_init(void)
struct device_node *np, *cpus;
bool has_a7 = false;
bool has_a15 = false;
phys_addr_t boot_vector_addr = 0;
phys_addr_t boot_vector_addr = ICRAM1;
u32 syscier = 0;
if (once++)
@ -75,14 +74,10 @@ void __init rcar_gen2_pm_init(void)
has_a7 = true;
}
if (of_machine_is_compatible("renesas,r8a7790")) {
boot_vector_addr = MERAM;
if (of_machine_is_compatible("renesas,r8a7790"))
syscier = 0x013111ef;
} else if (of_machine_is_compatible("renesas,r8a7791")) {
boot_vector_addr = RAM;
else if (of_machine_is_compatible("renesas,r8a7791"))
syscier = 0x00111003;
}
/* RAM for jump stub, because BAR requires 256KB aligned address */
p = ioremap_nocache(boot_vector_addr, shmobile_boot_size);

View File

@ -131,13 +131,13 @@ static void rmobile_init_pm_domain(struct rmobile_pm_domain *rmobile_pd)
struct dev_power_governor *gov = rmobile_pd->gov;
genpd->flags = GENPD_FLAG_PM_CLK;
pm_genpd_init(genpd, gov ? : &simple_qos_governor, false);
genpd->dev_ops.active_wakeup = rmobile_pd_active_wakeup;
genpd->power_off = rmobile_pd_power_down;
genpd->power_on = rmobile_pd_power_up;
genpd->attach_dev = cpg_mstp_attach_dev;
genpd->detach_dev = cpg_mstp_detach_dev;
__rmobile_pd_power_up(rmobile_pd, false);
pm_genpd_init(genpd, gov ? : &simple_qos_governor, false);
}
static int rmobile_pd_suspend_busy(void)