Re: [PATCH V2] panic: add support to update panic_timeout via DT
From: Sergey Senozhatsky
Date: Fri Oct 27 2017 - 05:53:23 EST
Cc-ing Andrew on this
v1: lkml.kernel.org/r/1509076662-22253-1-git-send-email-jburman@xxxxxxxxxx
lkml.kernel.org/r/20171027080006.GA609@xxxxxxxxxxxxxxxxxxx
v2: lkml.kernel.org/r/1509097165-15695-1-git-send-email-jburman@xxxxxxxxxx
-ss
On (10/27/17 15:09), Jeetesh Burman wrote:
> Add support to set 'panic_timeout' value via dtb to have
> control from device tree. This makes sense when you have
> multiple platforms support from same defconfig and
> differentiated only through device tree blob.
> The patch will check for panic time out value coming
> from dtb if it exists, otherwise continues with
> defconfig provided option.
>
> Signed-off-by: Jeetesh Burman <jburman@xxxxxxxxxx>
> ---
> kernel/panic.c | 11 +++++++++--
> 1 file changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/kernel/panic.c b/kernel/panic.c
> index bdd18af..b487331 100644
> --- a/kernel/panic.c
> +++ b/kernel/panic.c
> @@ -27,6 +27,7 @@
> #include <linux/console.h>
> #include <linux/bug.h>
> #include <linux/ratelimit.h>
> +#include <linux/of.h>
>
> #define PANIC_TIMER_STEP 100
> #define PANIC_BLINK_SPD 18
> @@ -482,9 +483,15 @@ static u64 oops_id;
>
> static int init_oops_id(void)
> {
> - if (!oops_id)
> + struct device_node *np;
> +
> + if (!oops_id) {
> + np = of_find_node_by_name(NULL, "panic_timeout");
> + if (np)
> + of_property_read_u32(np, "panic-timeout-value",
> + &panic_timeout);
> get_random_bytes(&oops_id, sizeof(oops_id));
> - else
> + } else
> oops_id++;
>
> return 0;
> --
> 2.1.4
>