[PATCH 4/5] ARM: S3C24XX: convert boards to use common restart function
Heiko Stübner
heiko at sntech.de
Thu Jan 23 13:36:13 EST 2014
Am Donnerstag, 23. Januar 2014, 19:12:04 schrieb Tomasz Figa:
> Hi Heiko,
>
> On 06.01.2014 19:40, Heiko Stübner wrote:
> > This converts all boards to use the new common restart function instead
> > of SoC specific ones.
> >
> > The mach-s3c2416-dt board now tries to setup either a swrst- or watchdog-
> > reset so that it will be able to handle more s3c24xx-SoCs later on.
>
> [snip]
>
> > diff --git a/arch/arm/mach-s3c24xx/mach-s3c2416-dt.c
> > b/arch/arm/mach-s3c24xx/mach-s3c2416-dt.c index 0a86953..88716fa4 100644
> > --- a/arch/arm/mach-s3c24xx/mach-s3c2416-dt.c
> > +++ b/arch/arm/mach-s3c24xx/mach-s3c2416-dt.c
> > @@ -24,6 +24,7 @@
> >
> > #include <plat/cpu.h>
> > #include <plat/pm.h>
> >
> > +#include <plat/watchdog-reset.h>
> >
> > #include "common.h"
> >
> > @@ -34,6 +35,14 @@ static void __init s3c2416_dt_map_io(void)
> >
> > static void __init s3c2416_dt_machine_init(void)
> > {
> >
> > + s3c24xx_swrst_reset_of_init();
> > +
> > +#ifdef CONFIG_SAMSUNG_WDT_RESET
> > + /* if no special swrst-device exists try to find a watchdog */
> > + if (!s3c24xx_swrst_reset_available())
> > + samsung_wdt_reset_of_init();
> > +#endif
>
> Hmm... I think it would be safe to assume availability of soft reset,
> especially if you could move the restart code to the clock driver.
ok, so something like the following:
the boards would simply use samsung_watchdog_reset, which should according to
the manuals be available on all architectures. And the ccf-driver on
appropriate architectures would simple replace the arm_pm_restart callback
with its own SoC specific one?
For the s3c2412 this also means that the clock-logic would get simplified.
Like this, or do I overlook something?
Thanks
Heiko
More information about the linux-arm-kernel
mailing list