[U-Boot] [PATCH 1/2] watchdog: Split WDT from SPL_WDT

Lukasz Majewski lukma at denx.de
Wed Jun 5 16:24:11 UTC 2019


Hi Marek,

> On Sun, 12 May 2019 23:34:52 +0200
> Marek Vasut <marex at denx.de> wrote:
> 
> > Use CONFIG_IS_ENABLED(WDT) to permit use of WDT in SPL without DM,
> > while the full U-Boot can use rich DM/DT WDT driver.
> > 
> > Signed-off-by: Marek Vasut <marex at denx.de>
> > Cc: Peng Fan <Peng.Fan at freescale.com>
> > Cc: Stefano Babic <sbabic at denx.de>
> > ---
> >  common/board_r.c                  | 2 +-
> >  common/spl/spl.c                  | 2 +-
> >  drivers/watchdog/Makefile         | 2 +-
> >  include/asm-generic/global_data.h | 2 +-
> >  include/wdt.h                     | 2 +-
> >  5 files changed, 5 insertions(+), 5 deletions(-)
> > 
> > diff --git a/common/board_r.c b/common/board_r.c
> > index 150e8cd424..988e40abb2 100644
> > --- a/common/board_r.c
> > +++ b/common/board_r.c
> > @@ -678,7 +678,7 @@ static init_fnc_t init_sequence_r[] = {
> >  #ifdef CONFIG_DM
> >  	initr_dm,
> >  #endif
> > -#if defined(CONFIG_WDT)
> > +#if CONFIG_IS_ENABLED(WDT)
> >  	initr_watchdog,
> >  #endif
> >  #if defined(CONFIG_ARM) || defined(CONFIG_NDS32) ||
> > defined(CONFIG_RISCV) || \ diff --git a/common/spl/spl.c
> > b/common/spl/spl.c index 0a6a47c202..f22f854718 100644
> > --- a/common/spl/spl.c
> > +++ b/common/spl/spl.c
> > @@ -601,7 +601,7 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
> >  	spl_board_init();
> >  #endif
> >  
> > -#if defined(CONFIG_SPL_WATCHDOG_SUPPORT) && defined(CONFIG_WDT)
> > +#if defined(CONFIG_SPL_WATCHDOG_SUPPORT) && CONFIG_IS_ENABLED(WDT)
> >  	initr_watchdog();
> >  #endif
> >  
> > diff --git a/drivers/watchdog/Makefile b/drivers/watchdog/Makefile
> > index 40b2f4bc66..4b94ae988c 100644
> > --- a/drivers/watchdog/Makefile
> > +++ b/drivers/watchdog/Makefile
> > @@ -16,7 +16,7 @@ obj-$(CONFIG_OMAP_WATCHDOG) += omap_wdt.o
> >  obj-$(CONFIG_DESIGNWARE_WATCHDOG) += designware_wdt.o
> >  obj-$(CONFIG_TANGIER_WATCHDOG) += tangier_wdt.o
> >  obj-$(CONFIG_ULP_WATCHDOG) += ulp_wdog.o
> > -obj-$(CONFIG_WDT) += wdt-uclass.o
> > +obj-$(CONFIG_$(SPL_TPL_)WDT) += wdt-uclass.o
> >  obj-$(CONFIG_WDT_SANDBOX) += sandbox_wdt.o
> >  obj-$(CONFIG_WDT_ARMADA_37XX) += armada-37xx-wdt.o
> >  obj-$(CONFIG_WDT_ASPEED) += ast_wdt.o
> > diff --git a/include/asm-generic/global_data.h
> > b/include/asm-generic/global_data.h index 02a3ed6838..7c2220643b
> > 100644 --- a/include/asm-generic/global_data.h
> > +++ b/include/asm-generic/global_data.h
> > @@ -137,7 +137,7 @@ typedef struct global_data {
> >  #if defined(CONFIG_TRANSLATION_OFFSET)
> >  	fdt_addr_t translation_offset;	/* optional
> > translation offset */ #endif
> > -#if defined(CONFIG_WDT)
> > +#if CONFIG_IS_ENABLED(WDT)
> >  	struct udevice *watchdog_dev;
> >  #endif
> >  } gd_t;
> > diff --git a/include/wdt.h b/include/wdt.h
> > index aa77d3e9b4..5bcff24ab3 100644
> > --- a/include/wdt.h
> > +++ b/include/wdt.h
> > @@ -106,7 +106,7 @@ struct wdt_ops {
> >  	int (*expire_now)(struct udevice *dev, ulong flags);
> >  };
> >  
> > -#if defined(CONFIG_WDT)
> > +#if CONFIG_IS_ENABLED(WDT)
> >  #ifndef CONFIG_WATCHDOG_TIMEOUT_MSECS
> >  #define CONFIG_WATCHDOG_TIMEOUT_MSECS	(60 * 1000)
> >  #endif  
> 
> Tested-by: Lukasz Majewski <lukma at denx.de>
> 
> Test HW: display5 i.MX6Q device 
> 

Unfortunately this series causes build break when run on Travis-CI for
some Atmel/Microchip:

arm:  +   picosam9g45
+lib/built-in.o: In function `udelay':
+lib/time.c:167: undefined reference to `watchdog_reset'
+drivers/built-in.o: In function `atmel_serial_getc':
+drivers/serial/atmel_usart.c:103: undefined reference to
       `watchdog_reset' +make[2]: *** [spl/u-boot-spl] Error 1
+make[1]: *** [spl/u-boot-spl] Error 2
+make: *** [sub-make] Error 2
   14   38    1 /53     axm
boards.cfg is up to date. Nothing to do.
Summary of current source for 53 boards (2 threads, 1 job per thread)


u-boot master SHA1: e1a2ed7180adeefb6164239a18249dca5701319d



> Best regards,
> 
> Lukasz Majewski
> 
> --
> 
> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email:
> lukma at denx.de




Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma at denx.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20190605/718acc7f/attachment.sig>


More information about the U-Boot mailing list