Some boards have a hardware watchdog that (a) cannot be disabled and (b) has a timeout short enough that there's no chance for the kernel to get through decompression, let alone reach the initialization of the appropriate watchdog device driver.
In order to allow booting such boards, the decompression routine needs to service the watchdog in its main loop. This adds a header making it easy to wire up each decompressor - just include this header and add a decompress_keepalive() in the main loop. Outside of the pre-boot stage, this is always a no-op. Signed-off-by: Rasmus Villemoes <li...@rasmusvillemoes.dk> --- include/linux/decompress/keepalive.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 include/linux/decompress/keepalive.h diff --git a/include/linux/decompress/keepalive.h b/include/linux/decompress/keepalive.h new file mode 100644 index 000000000000..39caa7693624 --- /dev/null +++ b/include/linux/decompress/keepalive.h @@ -0,0 +1,14 @@ +/* SPDX-License-Identifier: GPL-2.0 */ + +#ifndef DECOMPRESS_KEEPALIVE_H +#define DECOMPRESS_KEEPALIVE_H + +#ifdef PREBOOT + +#endif + +#ifndef decompress_keepalive +#define decompress_keepalive() do { } while (0) +#endif + +#endif /* DECOMPRESS_KEEPALIVE_H */ -- 2.20.1