Skip to contentSkip to conversation

Samsung watchdog support clean-up

PATCH New Tomasz Figa 4 participants 16 messages May 18, 2013 – Jun 13, 2013

Subsystems (4)
lore
Share & tools
lore
#0 lore raw

cover Samsung watchdog support clean-up

This series is aiming at cleaning up a bit watchdog support on Samsung SoCs. The patches tweak a bit all the watchdog handling code here and there, with the goal of making it DT- and multiplatform-friendly.

See particular patches for more detailed descriptions.

On S3C6410-based Tiny6410 board (Mini6410-compatible):

Depends on:
- [PATCH] ARM: s5p64x0: Use common uncompress.h part for plat-samsung

Tomasz Figa (6):
watchdog: s3c2410_wdt: Use local register definitions
ARM: SAMSUNG: uncompress: Use local definitions of watchdog registers
ARM: SAMSUNG: Add watchdog reset driver
ARM: SAMSUNG: Let platforms use the new watchdog reset driver
ARM: SAMSUNG: Remove legacy watchdog reset code
ARM: SAMSUNG: Remove unused plat/regs-watchdog.h header

 arch/arm/Kconfig                                   |  3 +
 arch/arm/mach-s3c24xx/Kconfig                      |  2 +
 arch/arm/mach-s3c24xx/s3c2410.c                    |  3 +-
 arch/arm/mach-s3c24xx/s3c244x.c                    |  3 +-
 arch/arm/mach-s3c64xx/common.c                     |  8 +-
 arch/arm/mach-s5p64x0/common.c                     |  4 +-
 arch/arm/mach-s5pc100/common.c                     |  3 +-
 arch/arm/plat-samsung/Kconfig                      |  6 ++
 arch/arm/plat-samsung/Makefile                     |  1 +
 arch/arm/plat-samsung/include/plat/regs-watchdog.h | 41 ---------
 arch/arm/plat-samsung/include/plat/uncompress.h    | 15 +++-
 .../arm/plat-samsung/include/plat/watchdog-reset.h | 38 ++-------
 arch/arm/plat-samsung/watchdog-reset.c             | 97 ++++++++++++++++++++++
 drivers/watchdog/s3c2410_wdt.c                     | 17 +++-
 14 files changed, 156 insertions(+), 85 deletions(-)
 delete mode 100644 arch/arm/plat-samsung/include/plat/regs-watchdog.h
 create mode 100644 arch/arm/plat-samsung/watchdog-reset.c
Signature · 1 line
1.8.2.1
#1 lore raw

PATCH 1/6 watchdog: s3c2410_wdt: Use local register definitions

This patch moves register and bitfield definitions to the driver itself, removing remaining dependencies on plat/ and mach/ headers.

---
 drivers/watchdog/s3c2410_wdt.c | 17 +++++++++++++----
 1 file changed, 13 insertions(+), 4 deletions(-)
drivers/watchdog/s3c2410_wdt.c +13 -4
index ee03135..3a9f696 100644
@@ -42,12 +42,21 @@
 #include <linux/err.h>
 #include <linux/of.h>
 
-#include <mach/map.h>
+#define S3C2410_WTCON		0x00
+#define S3C2410_WTDAT		0x04
+#define S3C2410_WTCNT		0x08
 
-#undef S3C_VA_WATCHDOG
-#define S3C_VA_WATCHDOG (0)
+#define S3C2410_WTCON_RSTEN	(1 << 0)
+#define S3C2410_WTCON_INTEN	(1 << 2)
+#define S3C2410_WTCON_ENABLE	(1 << 5)
 
-#include <plat/regs-watchdog.h>
+#define S3C2410_WTCON_DIV16	(0 << 3)
+#define S3C2410_WTCON_DIV32	(1 << 3)
+#define S3C2410_WTCON_DIV64	(2 << 3)
+#define S3C2410_WTCON_DIV128	(3 << 3)
+
+#define S3C2410_WTCON_PRESCALE(x)	((x) << 8)
+#define S3C2410_WTCON_PRESCALE_MASK	(0xff << 8)
 
 #define CONFIG_S3C2410_WATCHDOG_ATBOOT		(0)
 #define CONFIG_S3C2410_WATCHDOG_DEFAULT_TIME	(15)
Signature · 1 line
1.8.2.1
#2 lore raw

PATCH 2/6 ARM: SAMSUNG: uncompress: Use local definitions of watchdog registers

In reply to Tomasz Figa
---
 arch/arm/plat-samsung/include/plat/uncompress.h | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)
arch/arm/plat-samsung/include/plat/uncompress.h +12 -3
index 438b248..e8954b8 100644
@@ -28,11 +28,20 @@ static void arch_detect_cpu(void);
 /* defines for UART registers */
 
 #include <plat/regs-serial.h>
-#include <plat/regs-watchdog.h>
 
 /* working in physical space... */
-#undef S3C2410_WDOGREG
-#define S3C2410_WDOGREG(x) ((S3C24XX_PA_WATCHDOG + (x)))
+#define S3C_WDOGREG(x)	((S3C_PA_WDT + (x)))
+
+#define S3C2410_WTCON	S3C_WDOGREG(0x00)
+#define S3C2410_WTDAT	S3C_WDOGREG(0x04)
+#define S3C2410_WTCNT	S3C_WDOGREG(0x08)
+
+#define S3C2410_WTCON_RSTEN	(1 << 0)
+#define S3C2410_WTCON_ENABLE	(1 << 5)
+
+#define S3C2410_WTCON_DIV128	(3 << 3)
+
+#define S3C2410_WTCON_PRESCALE(x)	((x) << 8)
 
 /* how many bytes we allow into the FIFO@a time in FIFO mode */
 #define FIFO_MAX	 (14)
Signature · 1 line
1.8.2.1
#3 lore raw

PATCH v2 2/6 ARM: SAMSUNG: uncompress: Use local definitions of watchdog registers

This patch adds local definitions of required watchdog registers and bitfields to the uncompress header, allowing to remove the dependency on plat/regs-watchdog.h header and the ugly hack to replace virtual with physical addresses.

In addition, it fixes reboot on decompression failure feature, due to the mentioned ugly hack not working anymore (the macro being redefined got renamed, without fixing this code).

---
Changes since v1:
- Proper commit message. I have sent wrong version previously, sorry for the noise.

 arch/arm/plat-samsung/include/plat/uncompress.h | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)
arch/arm/plat-samsung/include/plat/uncompress.h +12 -3
index 438b248..e8954b8 100644
@@ -28,11 +28,20 @@ static void arch_detect_cpu(void);
 /* defines for UART registers */
 
 #include <plat/regs-serial.h>
-#include <plat/regs-watchdog.h>
 
 /* working in physical space... */
-#undef S3C2410_WDOGREG
-#define S3C2410_WDOGREG(x) ((S3C24XX_PA_WATCHDOG + (x)))
+#define S3C_WDOGREG(x)	((S3C_PA_WDT + (x)))
+
+#define S3C2410_WTCON	S3C_WDOGREG(0x00)
+#define S3C2410_WTDAT	S3C_WDOGREG(0x04)
+#define S3C2410_WTCNT	S3C_WDOGREG(0x08)
+
+#define S3C2410_WTCON_RSTEN	(1 << 0)
+#define S3C2410_WTCON_ENABLE	(1 << 5)
+
+#define S3C2410_WTCON_DIV128	(3 << 3)
+
+#define S3C2410_WTCON_PRESCALE(x)	((x) << 8)
 
 /* how many bytes we allow into the FIFO@a time in FIFO mode */
 #define FIFO_MAX	 (14)
Signature · 1 line
1.8.2.1
#4 lore raw

PATCH 3/6 ARM: SAMSUNG: Add watchdog reset driver

In reply to Tomasz Figa

This patch adds a watchdog reset driver that can be used on Samsung SoCs that do not provide dedicated reset method. It replaces the legacy helper function that relies on static IO mapping.

---
 arch/arm/plat-samsung/Kconfig                      |  6 ++
 arch/arm/plat-samsung/Makefile                     |  1 +
 .../arm/plat-samsung/include/plat/watchdog-reset.h |  9 ++
 arch/arm/plat-samsung/watchdog-reset.c             | 97 ++++++++++++++++++++++
 4 files changed, 113 insertions(+)
 create mode 100644 arch/arm/plat-samsung/watchdog-reset.c
arch/arm/plat-samsung/Kconfig +6 -0
index f8ed2de..ec68155 100644
@@ -475,6 +475,12 @@ config SAMSUNG_WAKEMASK
 	  and above. This code allows a set of interrupt to wakeup-mask
 	  mappings. See <plat/wakeup-mask.h>
 
+config SAMSUNG_WDT_RESET
+	bool
+	help
+	  Compile support for system restart by triggering watchdog reset.
+	  Used on SoCs that do not provide dedicated reset control.
+
 config S5P_PM
 	bool
 	help
arch/arm/plat-samsung/Makefile +1 -0
index a23c460..03cea14 100644
@@ -56,6 +56,7 @@ obj-$(CONFIG_PM)		+= pm-gpio.o
 obj-$(CONFIG_SAMSUNG_PM_CHECK)	+= pm-check.o
 
 obj-$(CONFIG_SAMSUNG_WAKEMASK)	+= wakeup-mask.o
+obj-$(CONFIG_SAMSUNG_WDT_RESET)	+= watchdog-reset.o
 
 obj-$(CONFIG_S5P_PM)		+= s5p-pm.o s5p-irq-pm.o
 obj-$(CONFIG_S5P_SLEEP)		+= s5p-sleep.o
arch/arm/plat-samsung/include/plat/watchdog-reset.h +9 -0
index bc4db9b..4def1b2 100644
@@ -10,6 +10,9 @@
  * published by the Free Software Foundation.
 */
 
+#ifndef __PLAT_WATCHDOG_RESET_H
+#define __PLAT_WATCHDOG_RESET_H
+
 #include <plat/clock.h>
 #include <plat/regs-watchdog.h>
 #include <mach/map.h>
@@ -44,3 +47,9 @@ static inline void arch_wdt_reset(void)
 	/* delay to allow the serial port to show the message */
 	mdelay(50);
 }
+
+extern void samsung_wdt_reset(void);
+extern void samsung_wdt_reset_of_init(void);
+extern void samsung_wdt_reset_init(void __iomem *base);
+
+#endif /* __PLAT_WATCHDOG_RESET_H */
arch/arm/plat-samsung/watchdog-reset.c new file +97 -0

97 lines not on this page · raw message

Signature · 1 line
1.8.2.1
#5 lore raw

PATCH 4/6 ARM: SAMSUNG: Let platforms use the new watchdog reset driver

In reply to Tomasz Figa

This patch moves all platforms using the legacy watchdog reset helper function to the new watchdog reset driver.

---
 arch/arm/Kconfig                | 3 +++
 arch/arm/mach-s3c24xx/Kconfig   | 2 ++
 arch/arm/mach-s3c24xx/s3c2410.c | 3 ++-
 arch/arm/mach-s3c24xx/s3c244x.c | 3 ++-
 arch/arm/mach-s3c64xx/common.c  | 8 +++++++-
 arch/arm/mach-s5p64x0/common.c  | 4 +++-
 arch/arm/mach-s5pc100/common.c  | 3 ++-
 7 files changed, 21 insertions(+), 5 deletions(-)
arch/arm/Kconfig +3 -0
index 7b7ab65..676df53 100644
@@ -731,6 +731,7 @@ config ARCH_S3C64XX
 	select SAMSUNG_CLKSRC
 	select SAMSUNG_GPIOLIB_4BIT
 	select SAMSUNG_IRQ_VIC_TIMER
+	select SAMSUNG_WDT_RESET
 	select USB_ARCH_HAS_OHCI
 	help
 	  Samsung S3C64XX series based systems
@@ -746,6 +747,7 @@ config ARCH_S5P64X0
 	select HAVE_S3C2410_WATCHDOG if WATCHDOG
 	select HAVE_S3C_RTC if RTC_CLASS
 	select NEED_MACH_GPIO_H
+	select SAMSUNG_WDT_RESET
 	help
 	  Samsung S5P64X0 CPU based systems, such as the Samsung SMDK6440,
 	  SMDK6450.
@@ -762,6 +764,7 @@ config ARCH_S5PC100
 	select HAVE_S3C2410_WATCHDOG if WATCHDOG
 	select HAVE_S3C_RTC if RTC_CLASS
 	select NEED_MACH_GPIO_H
+	select SAMSUNG_WDT_RESET
 	help
 	  Samsung S5PC100 series based systems
 
arch/arm/mach-s3c24xx/Kconfig +2 -0
index f2f7088..f8d1912 100644
@@ -31,6 +31,7 @@ config CPU_S3C2410
 	select S3C2410_CPUFREQ if CPU_FREQ_S3C24XX
 	select S3C2410_PM if PM
 	select SAMSUNG_HRT
+	select SAMSUNG_WDT_RESET
 	help
 	  Support for S3C2410 and S3C2410A family from the S3C24XX line
 	  of Samsung Mobile CPUs.
@@ -81,6 +82,7 @@ config CPU_S3C2442
 config CPU_S3C244X
 	def_bool y
 	depends on CPU_S3C2440 || CPU_S3C2442
+	select SAMSUNG_WDT_RESET
 
 config CPU_S3C2443
 	bool "SAMSUNG S3C2443"
arch/arm/mach-s3c24xx/s3c2410.c +2 -1
index d850ea5..ff384ac 100644
@@ -138,6 +138,7 @@ void __init s3c2410_init_clocks(int xtal)
 	s3c2410_baseclk_add();
 	s3c24xx_register_clock(&s3c2410_armclk);
 	clkdev_add_table(s3c2410_clk_lookup, ARRAY_SIZE(s3c2410_clk_lookup));
+	samsung_wdt_reset_init(S3C24XX_VA_WATCHDOG);
 }
 
 struct bus_type s3c2410_subsys = {
@@ -201,7 +202,7 @@ void s3c2410_restart(char mode, const char *cmd)
 		soft_restart(0);
 	}
 
-	arch_wdt_reset();
+	samsung_wdt_reset();
 
 	/* we'll take a jump through zero as a poor second */
 	soft_restart(0);
arch/arm/mach-s3c24xx/s3c244x.c +2 -1
index 2a35edb..d0423e2 100644
@@ -133,6 +133,7 @@ void __init s3c244x_init_clocks(int xtal)
 	s3c24xx_register_baseclocks(xtal);
 	s3c244x_setup_clocks();
 	s3c2410_baseclk_add();
+	samsung_wdt_reset_init(S3C24XX_VA_WATCHDOG);
 }
 
 /* Since the S3C2442 and S3C2440 share items, put both subsystems here */
@@ -202,7 +203,7 @@ void s3c244x_restart(char mode, const char *cmd)
 	if (mode == 's')
 		soft_restart(0);
 
-	arch_wdt_reset();
+	samsung_wdt_reset();
 
 	/* we'll take a jump through zero as a poor second */
 	soft_restart(0);
arch/arm/mach-s3c64xx/common.c +7 -1
index 0b9c0ba..1aed6f4 100644
@@ -183,6 +183,12 @@ core_initcall(s3c64xx_dev_init);
 
 void __init s3c64xx_init_irq(u32 vic0_valid, u32 vic1_valid)
 {
+	/*
+	 * FIXME: there is no better place to put this at the moment
+	 * (samsung_wdt_reset_init needs clocks)
+	 */
+	samsung_wdt_reset_init(S3C_VA_WATCHDOG);
+
 	printk(KERN_DEBUG "%s: initialising interrupts\n", __func__);
 
 	/* initialise the pair of VICs */
@@ -378,7 +384,7 @@ arch_initcall(s3c64xx_init_irq_eint);
 void s3c64xx_restart(char mode, const char *cmd)
 {
 	if (mode != 's')
-		arch_wdt_reset();
+		samsung_wdt_reset();
 
 	/* if all else fails, or mode was for soft, jump to 0 */
 	soft_restart(0);
arch/arm/mach-s5p64x0/common.c +3 -1
index 8ae5800..76d0053 100644
@@ -173,6 +173,8 @@ void __init s5p64x0_init_io(struct map_desc *mach_desc, int size)
 	s5p_init_cpu(S5P64X0_SYS_ID);
 
 	s3c_init_cpu(samsung_cpu_id, cpu_ids, ARRAY_SIZE(cpu_ids));
+	samsung_wdt_reset_init(S3C_VA_WATCHDOG);
+
 }
 
 void __init s5p6440_map_io(void)
@@ -440,7 +442,7 @@ arch_initcall(s5p64x0_init_irq_eint);
 void s5p64x0_restart(char mode, const char *cmd)
 {
 	if (mode != 's')
-		arch_wdt_reset();
+		samsung_wdt_reset();
 
 	soft_restart(0);
 }
arch/arm/mach-s5pc100/common.c +2 -1
index cc6e561..5110315 100644
@@ -178,6 +178,7 @@ void __init s5pc100_init_clocks(int xtal)
 	s5p_register_clocks(xtal);
 	s5pc100_register_clocks();
 	s5pc100_setup_clocks();
+	samsung_wdt_reset_init(S3C_VA_WATCHDOG);
 }
 
 void __init s5pc100_init_irq(void)
@@ -219,7 +220,7 @@ void __init s5pc100_init_uarts(struct s3c2410_uartcfg *cfg, int no)
 void s5pc100_restart(char mode, const char *cmd)
 {
 	if (mode != 's')
-		arch_wdt_reset();
+		samsung_wdt_reset();
 
 	soft_restart(0);
 }
Signature · 1 line
1.8.2.1
#6 lore raw

PATCH 5/6 ARM: SAMSUNG: Remove legacy watchdog reset code

In reply to Tomasz Figa

Since all platforms have been moved to the new watchdog reset driver, the legacy code can be removed safely.

---
 .../arm/plat-samsung/include/plat/watchdog-reset.h | 35 ----------------------
 1 file changed, 35 deletions(-)
arch/arm/plat-samsung/include/plat/watchdog-reset.h +0 -35
index 4def1b2..f2dc304 100644
@@ -13,41 +13,6 @@
 #ifndef __PLAT_WATCHDOG_RESET_H
 #define __PLAT_WATCHDOG_RESET_H
 
-#include <plat/clock.h>
-#include <plat/regs-watchdog.h>
-#include <mach/map.h>
-
-#include <linux/clk.h>
-#include <linux/err.h>
-#include <linux/io.h>
-#include <linux/delay.h>
-
-static inline void arch_wdt_reset(void)
-{
-	printk("arch_reset: attempting watchdog reset\n");
-
-	__raw_writel(0, S3C2410_WTCON);	  /* disable watchdog, to be safe  */
-
-	if (!IS_ERR(s3c2410_wdtclk))
-		clk_enable(s3c2410_wdtclk);
-
-	/* put initial values into count and data */
-	__raw_writel(0x80, S3C2410_WTCNT);
-	__raw_writel(0x80, S3C2410_WTDAT);
-
-	/* set the watchdog to go and reset... */
-	__raw_writel(S3C2410_WTCON_ENABLE|S3C2410_WTCON_DIV16|S3C2410_WTCON_RSTEN |
-		     S3C2410_WTCON_PRESCALE(0x20), S3C2410_WTCON);
-
-	/* wait for reset to assert... */
-	mdelay(500);
-
-	printk(KERN_ERR "Watchdog reset failed to assert reset\n");
-
-	/* delay to allow the serial port to show the message */
-	mdelay(50);
-}
-
 extern void samsung_wdt_reset(void);
 extern void samsung_wdt_reset_of_init(void);
 extern void samsung_wdt_reset_init(void __iomem *base);
Signature · 1 line
1.8.2.1
#7 lore raw

PATCH 6/6 ARM: SAMSUNG: Remove unused plat/regs-watchdog.h header

In reply to Tomasz Figa

Since there are no remaining users of this header, it can be safely dropped.

---
 arch/arm/plat-samsung/include/plat/regs-watchdog.h | 41 ----------------------
 1 file changed, 41 deletions(-)
 delete mode 100644 arch/arm/plat-samsung/include/plat/regs-watchdog.h
arch/arm/plat-samsung/include/plat/regs-watchdog.h deleted +0 -41
deleted file mode 100644
index 4938492..0000000
@@ -1,41 +0,0 @@
-/* arch/arm/mach-s3c2410/include/mach/regs-watchdog.h
- *
- * Copyright (c) 2003 Simtec Electronics <[email protected]>
- *		      http://www.simtec.co.uk/products/SWLINUX/
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * S3C2410 Watchdog timer control
-*/
-
-
-#ifndef __ASM_ARCH_REGS_WATCHDOG_H
-#define __ASM_ARCH_REGS_WATCHDOG_H
-
-#define S3C_WDOGREG(x) ((x) + S3C_VA_WATCHDOG)
-
-#define S3C2410_WTCON	   S3C_WDOGREG(0x00)
-#define S3C2410_WTDAT	   S3C_WDOGREG(0x04)
-#define S3C2410_WTCNT	   S3C_WDOGREG(0x08)
-
-/* the watchdog can either generate a reset pulse, or an
- * interrupt.
- */
-
-#define S3C2410_WTCON_RSTEN   (0x01)
-#define S3C2410_WTCON_INTEN   (1<<2)
-#define S3C2410_WTCON_ENABLE  (1<<5)
-
-#define S3C2410_WTCON_DIV16   (0<<3)
-#define S3C2410_WTCON_DIV32   (1<<3)
-#define S3C2410_WTCON_DIV64   (2<<3)
-#define S3C2410_WTCON_DIV128  (3<<3)
-
-#define S3C2410_WTCON_PRESCALE(x) ((x) << 8)
-#define S3C2410_WTCON_PRESCALE_MASK (0xff00)
-
-#endif /* __ASM_ARCH_REGS_WATCHDOG_H */
-
-
Signature · 1 line
1.8.2.1
#8 lore raw

cover Samsung watchdog support clean-up

In reply to Tomasz Figa

Hi Tomasz,

Quoted 9 lines · Tomasz Figa

This series is aiming at cleaning up a bit watchdog support on Samsung SoCs. The patches tweak a bit all the watchdog handling code here and there, with the goal of making it DT- and multiplatform-friendly.

See particular patches for more detailed descriptions.

On S3C6410-based Tiny6410 board (Mini6410-compatible):

I've tested this series on a s3c2440 based board. The system restart works fine.

Quoted 26 lines

Depends on:
- [PATCH] ARM: s5p64x0: Use common uncompress.h part for plat-samsung

Tomasz Figa (6):
watchdog: s3c2410_wdt: Use local register definitions
ARM: SAMSUNG: uncompress: Use local definitions of watchdog registers
ARM: SAMSUNG: Add watchdog reset driver
ARM: SAMSUNG: Let platforms use the new watchdog reset driver
ARM: SAMSUNG: Remove legacy watchdog reset code
ARM: SAMSUNG: Remove unused plat/regs-watchdog.h header

  arch/arm/Kconfig                                   |  3 +
  arch/arm/mach-s3c24xx/Kconfig                      |  2 +
  arch/arm/mach-s3c24xx/s3c2410.c                    |  3 +-
  arch/arm/mach-s3c24xx/s3c244x.c                    |  3 +-
  arch/arm/mach-s3c64xx/common.c                     |  8 +-
  arch/arm/mach-s5p64x0/common.c                     |  4 +-
  arch/arm/mach-s5pc100/common.c                     |  3 +-
  arch/arm/plat-samsung/Kconfig                      |  6 ++
  arch/arm/plat-samsung/Makefile                     |  1 +
  arch/arm/plat-samsung/include/plat/regs-watchdog.h | 41 ---------
  arch/arm/plat-samsung/include/plat/uncompress.h    | 15 +++-
  .../arm/plat-samsung/include/plat/watchdog-reset.h | 38 ++-------
  arch/arm/plat-samsung/watchdog-reset.c             | 97 ++++++++++++++++++++++
  drivers/watchdog/s3c2410_wdt.c                     | 17 +++-
  14 files changed, 156 insertions(+), 85 deletions(-)
Quoted 2 lines

delete mode 100644 arch/arm/plat-samsung/include/plat/regs-watchdog.h create mode 100644 arch/arm/plat-samsung/watchdog-reset.c>

--
Regards,
Sylwester

#9 lore raw

cover Samsung watchdog support clean-up

Hi Sylwester, Kukjin,

Quoted 9 lines · On Saturday 01 of June 2013 10:16:52 Sylwester Nawrocki wrote:

Hi Tomasz,

Quoted 6 lines · Tomasz Figa

This series is aiming at cleaning up a bit watchdog support on Samsung SoCs. The patches tweak a bit all the watchdog handling code here and there, with the goal of making it DT- and multiplatform-friendly.

See particular patches for more detailed descriptions.

Quoted 8 lines
Quoted 3 lines

On S3C6410-based Tiny6410 board (Mini6410-compatible):

I've tested this series on a s3c2440 based board. The system restart works fine.

Thank you Sylwester for testing this series.

Kukjin, since it has been already tested on s3c24xx and s3c64xx and nobody seems to care about s5p64x0 and s5pc100 (although I don't see a reason why these patches should break them), could we have this series applied?

Best regards,

Signature · 4 lines
Tomasz Figa
Linux Kernel Developer
Samsung R&D Institute Poland
Samsung Electronics
Quoted 37 lines
Quoted 27 lines

Depends on:
- [PATCH] ARM: s5p64x0: Use common uncompress.h part for plat-samsung

Tomasz Figa (6):
watchdog: s3c2410_wdt: Use local register definitions
ARM: SAMSUNG: uncompress: Use local definitions of watchdog registers
ARM: SAMSUNG: Add watchdog reset driver
ARM: SAMSUNG: Let platforms use the new watchdog reset driver
ARM: SAMSUNG: Remove legacy watchdog reset code
ARM: SAMSUNG: Remove unused plat/regs-watchdog.h header

  arch/arm/Kconfig                                   |  3 +
  arch/arm/mach-s3c24xx/Kconfig                      |  2 +
  arch/arm/mach-s3c24xx/s3c2410.c                    |  3 +-
  arch/arm/mach-s3c24xx/s3c244x.c                    |  3 +-
  arch/arm/mach-s3c64xx/common.c                     |  8 +-
  arch/arm/mach-s5p64x0/common.c                     |  4 +-
  arch/arm/mach-s5pc100/common.c                     |  3 +-
  arch/arm/plat-samsung/Kconfig                      |  6 ++
  arch/arm/plat-samsung/Makefile                     |  1 +
  arch/arm/plat-samsung/include/plat/regs-watchdog.h | 41 ---------
  arch/arm/plat-samsung/include/plat/uncompress.h    | 15 +++-
  .../arm/plat-samsung/include/plat/watchdog-reset.h | 38 ++-------
  arch/arm/plat-samsung/watchdog-reset.c             | 97
  ++++++++++++++++++++++ drivers/watchdog/s3c2410_wdt.c                  
    | 17 +++-
  14 files changed, 156 insertions(+), 85 deletions(-)
Quoted 2 lines

delete mode 100644 arch/arm/plat-samsung/include/plat/regs-watchdog.h create mode 100644 arch/arm/plat-samsung/watchdog-reset.c>

--
Regards,
Sylwester
--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html

#10 lore raw

cover Samsung watchdog support clean-up

Quoted 3 lines · Tomasz Figa

Hi Sylwester, Kukjin,

Hi,

Quoted 12 lines · On Saturday 01 of June 2013 10:16:52 Sylwester Nawrocki wrote:
Quoted 11 lines

Hi Tomasz,

Quoted 8 lines · Tomasz Figa

This series is aiming at cleaning up a bit watchdog support on Samsung SoCs. The patches tweak a bit all the watchdog handling code here and there, with the goal of making it DT- and multiplatform-friendly.

See particular patches for more detailed descriptions.

On S3C6410-based Tiny6410 board (Mini6410-compatible):

Quoted 9 lines
Quoted 6 lines
Quoted 1 line

I've tested this series on a s3c2440 based board. The system restart works fine.

Thank you Sylwester for testing this series.

Thanks again :-)

Quoted 4 lines

Kukjin, since it has been already tested on s3c24xx and s3c64xx and nobody seems to care about s5p64x0 and s5pc100 (although I don't see a reason why these patches should break them), could we have this series applied?

OK, let me test this series on the smdk64x0 then, will apply.

If any problems, let you know.

Thanks for your gentle reminder.

- Kukjin

#11 lore raw

cover Samsung watchdog support clean-up

Hi Kukjin,

Quoted 32 lines · On Tuesday 04 of June 2013 18:37:54 Kukjin Kim wrote:
Quoted 1 line · Tomasz Figa

Hi Sylwester, Kukjin,

Hi,

Quoted 12 lines · On Saturday 01 of June 2013 10:16:52 Sylwester Nawrocki wrote:
Quoted 11 lines

Hi Tomasz,

Quoted 8 lines · Tomasz Figa

This series is aiming at cleaning up a bit watchdog support on Samsung SoCs. The patches tweak a bit all the watchdog handling code here and there, with the goal of making it DT- and multiplatform-friendly.

See particular patches for more detailed descriptions.

On S3C6410-based Tiny6410 board (Mini6410-compatible):

Quoted 8 lines
Quoted 6 lines
Quoted 1 line

I've tested this series on a s3c2440 based board. The system restart works fine.

Thank you Sylwester for testing this series.

Thanks again :-)

Quoted 3 lines

Kukjin, since it has been already tested on s3c24xx and s3c64xx and nobody seems to care about s5p64x0 and s5pc100 (although I don't see a reason why these patches should break them), could we have this series applied?

Quoted 5 lines

OK, let me test this series on the smdk64x0 then, will apply.

If any problems, let you know.

Thanks for your gentle reminder.

Thank you for handling this. I have a lot of patches for S3C64xx depending on this series queued in my private tree and it would be really nice if I could finally get them merged for 3.11.

Best regards,

Signature · 4 lines
Tomasz Figa
Linux Kernel Developer
Samsung R&D Institute Poland
Samsung Electronics
Applied
#12 lore raw

cover Samsung watchdog support clean-up

Quoted 38 lines · Tomasz Figa

Hi Kukjin,

Quoted 34 lines · On Tuesday 04 of June 2013 18:37:54 Kukjin Kim wrote:
Quoted 1 line · Tomasz Figa

Hi Sylwester, Kukjin,

Hi,

Quoted 12 lines · On Saturday 01 of June 2013 10:16:52 Sylwester Nawrocki wrote:
Quoted 11 lines

Hi Tomasz,

Quoted 8 lines · Tomasz Figa

This series is aiming at cleaning up a bit watchdog support on Samsung SoCs. The patches tweak a bit all the watchdog handling code here and there, with the goal of making it DT- and multiplatform-friendly.

See particular patches for more detailed descriptions.

On S3C6410-based Tiny6410 board (Mini6410-compatible):

Quoted 8 lines
Quoted 6 lines
Quoted 1 line

I've tested this series on a s3c2440 based board. The system restart works fine.

Thank you Sylwester for testing this series.

Thanks again :-)

Quoted 3 lines

Kukjin, since it has been already tested on s3c24xx and s3c64xx and nobody seems to care about s5p64x0 and s5pc100 (although I don't see a reason why these patches should break them), could we have this series applied?

OK, let me test this series on the smdk64x0 then, will apply.

Quoted 8 lines
Quoted 3 lines

If any problems, let you know.

Thanks for your gentle reminder.

Thank you for handling this. I have a lot of patches for S3C64xx depending on this series queued in my private tree and it would be really nice if I could finally get them merged for 3.11.

Applied, thanks.

- Kukjin

#13 lore raw

cover Samsung watchdog support clean-up

Hi Kukjin,

Quoted 44 lines · On Monday 10 of June 2013 19:00:57 Kukjin Kim wrote:
Quoted 43 lines · Tomasz Figa

Hi Kukjin,

Quoted 40 lines · On Tuesday 04 of June 2013 18:37:54 Kukjin Kim wrote:
Quoted 1 line · Tomasz Figa

Hi Sylwester, Kukjin,

Hi,

Quoted 17 lines · On Saturday 01 of June 2013 10:16:52 Sylwester Nawrocki wrote:
Quoted 16 lines

Hi Tomasz,

Quoted 12 lines · Tomasz Figa

This series is aiming at cleaning up a bit watchdog support on Samsung
SoCs. The patches tweak a bit all the watchdog handling code here and
there, with the goal of making it DT- and multiplatform-friendly.

See particular patches for more detailed descriptions.

On S3C6410-based Tiny6410 board (Mini6410-compatible):

Quoted 7 lines
Quoted 5 lines

I've tested this series on a s3c2440 based board. The system restart
works fine.

Thank you Sylwester for testing this series.

Thanks again :-)

Quoted 4 lines

Kukjin, since it has been already tested on s3c24xx and s3c64xx and nobody seems to care about s5p64x0 and s5pc100 (although I don't see a reason why these patches should break them), could we have this series applied?> >

OK, let me test this series on the smdk64x0 then, will apply.

If any problems, let you know.

Quoted 7 lines
Quoted 5 lines
Quoted 1 line

Thanks for your gentle reminder.

Thank you for handling this. I have a lot of patches for S3C64xx depending on this series queued in my private tree and it would be really nice if I could finally get them merged for 3.11.

Applied, thanks.

Seems like this series got lost in action, as I don't see it in your tree. Is there any problem with it?

Best regards,
Tomasz

#14 lore raw

cover Samsung watchdog support clean-up

Quoted 3 lines · Tomasz Figa

Hi Kukjin,

Hi,

Quoted 10 lines
Quoted 10 lines
Quoted 10 lines
Quoted 9 lines
Quoted 4 lines

Kukjin, since it has been already tested on s3c24xx and s3c64xx and nobody seems to care about s5p64x0 and s5pc100 (although I don't see a reason why these patches should break them), could we have this series applied?> >

OK, let me test this series on the smdk64x0 then, will apply.

If any problems, let you know.

Thanks for your gentle reminder.

Quoted 9 lines
Quoted 5 lines
Quoted 3 lines

Thank you for handling this. I have a lot of patches for S3C64xx depending on this series queued in my private tree and it would be really nice if I could finally get them merged for 3.11.

Applied, thanks.

Seems like this series got lost in action, as I don't see it in your tree. Is there any problem with it?

This series should be in my local and I didn't finish test something yet. So I didn't push yet but it should be done in this weekend. Anyway, sorry for late. If you have any further series based on this, please go ahead.

Thanks.

- Kukjin

#15 lore raw

cover Samsung watchdog support clean-up

Quoted 24 lines · On Friday 14 of June 2013 08:22:30 Kukjin Kim wrote:
Quoted 1 line · Tomasz Figa

Hi Kukjin,

Hi,

Quoted 19 lines
Quoted 18 lines
Quoted 9 lines
Quoted 9 lines
Quoted 6 lines

Kukjin, since it has been already tested on s3c24xx and s3c64xx
and nobody seems to care about s5p64x0 and s5pc100 (although I don't see a reason why these patches should break them), could we
have this series applied?> >

OK, let me test this series on the smdk64x0 then, will apply.

Quoted 7 lines
Quoted 3 lines

If any problems, let you know.

Thanks for your gentle reminder.

Thank you for handling this. I have a lot of patches for S3C64xx depending on this series queued in my private tree and it would be really nice if I could finally get them merged for 3.11.

Applied, thanks.

Quoted 7 lines
Quoted 2 lines

Seems like this series got lost in action, as I don't see it in your tree. Is there any problem with it?

This series should be in my local and I didn't finish test something yet. So I didn't push yet but it should be done in this weekend. Anyway, sorry for late. If you have any further series based on this, please go ahead.

OK, no problem. Just wanted to know what happened (some errors or other problems), since you said that you applied it, but I couldn't find it in your tree.

Best regards,
Tomasz