Keystone SOC updates part2 for 3.16

- Removal of now un-necessary reset machine code
 - dts updates for keystone reset driver
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJThJnpAAoJEHJsHOdBp5c/aeoQALl5nrTHblTbitHVnqdJJtam
 /p/PjOsqD8595eniCiFMitRhhCwtWxNz0iKW+0KbN5JD0sMU0UXeahJt+U0Q+7Vs
 wqhLmeA2Tfr9e8lRcC0m4kp82Gf0jgnL5j3YDyUHwxiLpd5Dje0ULl9nLh2NhHqo
 NZ+B7qc6X1rl7O/iBDXmqsQOZGZIBd9VMSXE3YaLtVV29ZvN9c7slGwl2w/YnKHL
 oWeqK5WP1wPEBkptFJaOhUpDmYR28BUhZG2NWT8rsiGXZp2rD4UYEYA4+Ko3PG4J
 a22XWnIoIi+nt/1WrkKFzUJ7TkH/rwRVBn0rjNqdP0ocUYYo4kd8BOUOjbmS5aZd
 Eyz6dzhAhxK9LXYbahv/MCRSq4T/3UsxJCImSu3bdpVL0FWKNVQxBOXZU4L2FVOB
 obEZMpVPaIDDGw4FHiARZOHH9kOlw/WT5LYbdMMtayINAV5cOpzIU6FdwP5ICYws
 Ahx4nSZn6OUhEC1aqhmPnFnHwQlGtnRiCUVROxKyLS3MtYj1jJJ+ghA8EjLT9OB3
 0UYcpOz5IoLGVHdT5TG5Wb4CDKnaA/1yVx3YzCOznqLkBxDql2leOqc3j9qKUX1q
 +xsZ1PP2DKGEOV9c3caXAZgpw2D6CHHzgatDExOsnW5GAE0AAt8kYntntVMXgRnl
 pOPYTANhpXBEqIymyDhb
 =/q17
 -----END PGP SIGNATURE-----

Merge tag 'keystone-soc-2' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone into next/soc2

Merge "Keystone SOC updates part2 for 3.16" from Santosh Shilimkar:

- Removal of now un-necessary reset machine code
- dts updates for keystone reset driver

* tag 'keystone-soc-2' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone:
  ARM: configs: keystone: enable reset driver support
  ARM: dts: keystone: update reset node to work with reset driver
  ARM: keystone: remove redundant reset stuff

Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
Olof Johansson 2014-05-27 11:11:17 -07:00
commit 9eb23c9218
3 changed files with 16 additions and 35 deletions

View file

@ -67,9 +67,21 @@ soc {
interrupt-parent = <&gic>;
ranges = <0x0 0x0 0x0 0xc0000000>;
pllctrl: pll-controller@02310000 {
compatible = "ti,keystone-pllctrl", "syscon";
reg = <0x02310000 0x200>;
};
devctrl: device-state-control@02620000 {
compatible = "ti,keystone-devctrl", "syscon";
reg = <0x02620000 0x1000>;
};
rstctrl: reset-controller {
compatible = "ti,keystone-reset";
reg = <0x023100e8 4>; /* pll reset control reg */
ti,syscon-pll = <&pllctrl 0xe4>;
ti,syscon-dev = <&devctrl 0x328>;
ti,wdt-list = <0>;
};
/include/ "keystone-clocks.dtsi"

View file

@ -132,6 +132,9 @@ CONFIG_SPI=y
CONFIG_SPI_DAVINCI=y
CONFIG_SPI_SPIDEV=y
# CONFIG_HWMON is not set
CONFIG_POWER_SUPPLY=y
CONFIG_POWER_RESET=y
CONFIG_POWER_RESET_KEYSTONE=y
CONFIG_WATCHDOG=y
CONFIG_WATCHDOG_CORE=y
CONFIG_DAVINCI_WATCHDOG=y

View file

@ -26,11 +26,6 @@
#include "keystone.h"
#define PLL_RESET_WRITE_KEY_MASK 0xffff0000
#define PLL_RESET_WRITE_KEY 0x5a69
#define PLL_RESET BIT(16)
static void __iomem *keystone_rstctrl;
static struct notifier_block platform_nb;
static unsigned long keystone_dma_pfn_offset __read_mostly;
@ -55,16 +50,6 @@ static int keystone_platform_notifier(struct notifier_block *nb,
static void __init keystone_init(void)
{
struct device_node *node;
node = of_find_compatible_node(NULL, NULL, "ti,keystone-reset");
if (WARN_ON(!node))
pr_warn("ti,keystone-reset node undefined\n");
keystone_rstctrl = of_iomap(node, 0);
if (WARN_ON(!keystone_rstctrl))
pr_warn("ti,keystone-reset iomap error\n");
keystone_pm_runtime_init();
if (platform_nb.notifier_call)
bus_register_notifier(&platform_bus_type, &platform_nb);
@ -123,24 +108,6 @@ static const char *keystone_match[] __initconst = {
NULL,
};
void keystone_restart(enum reboot_mode mode, const char *cmd)
{
u32 val;
BUG_ON(!keystone_rstctrl);
/* Enable write access to RSTCTRL */
val = readl(keystone_rstctrl);
val &= PLL_RESET_WRITE_KEY_MASK;
val |= PLL_RESET_WRITE_KEY;
writel(val, keystone_rstctrl);
/* Reset the SOC */
val = readl(keystone_rstctrl);
val &= ~PLL_RESET;
writel(val, keystone_rstctrl);
}
DT_MACHINE_START(KEYSTONE, "Keystone")
#if defined(CONFIG_ZONE_DMA) && defined(CONFIG_ARM_LPAE)
.dma_zone_size = SZ_2G,
@ -148,6 +115,5 @@ DT_MACHINE_START(KEYSTONE, "Keystone")
.smp = smp_ops(keystone_smp_ops),
.init_machine = keystone_init,
.dt_compat = keystone_match,
.restart = keystone_restart,
.init_meminfo = keystone_init_meminfo,
MACHINE_END