From 0d1287fa01853d5aae1a6bfd22abaad617a5751e Mon Sep 17 00:00:00 2001 From: Vijayanand Jitta Date: Tue, 28 Jul 2020 14:17:02 +0530 Subject: [PATCH] soc: qcom: minidump: Add md_get_region function Add a function md_get_region which returns md_region when we pass minidump entry name to it. Change-Id: Ibbd84737041c5b1c25cc46b9c740d415978de7e6 Signed-off-by: Vijayanand Jitta --- drivers/soc/qcom/msm_minidump.c | 15 ++++++++++++++- include/soc/qcom/minidump.h | 2 ++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/drivers/soc/qcom/msm_minidump.c b/drivers/soc/qcom/msm_minidump.c index 3ed713753f1c..7cf2fc95ce99 100644 --- a/drivers/soc/qcom/msm_minidump.c +++ b/drivers/soc/qcom/msm_minidump.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-only /* - * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved. + * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved. */ #define pr_fmt(fmt) "Minidump: " fmt @@ -89,6 +89,19 @@ static inline unsigned int set_section_name(const char *name) return ret; } +struct md_region *md_get_region(char *name) +{ + struct md_region *mdr; + int i, regno = minidump_table.num_regions; + + for (i = 0; i < regno; i++) { + mdr = &minidump_table.entry[i]; + if (!strcmp(mdr->name, name)) + return mdr; + } + return NULL; +} + static inline int md_region_num(const char *name, int *seqno) { struct md_ss_region *mde = minidump_table.md_regions; diff --git a/include/soc/qcom/minidump.h b/include/soc/qcom/minidump.h index 5eb78a038608..38676514047f 100644 --- a/include/soc/qcom/minidump.h +++ b/include/soc/qcom/minidump.h @@ -46,6 +46,7 @@ extern int msm_minidump_remove_region(const struct md_region *entry); */ extern int msm_minidump_update_region(int regno, const struct md_region *entry); extern bool msm_minidump_enabled(void); +extern struct md_region *md_get_region(char *name); extern void dump_stack_minidump(u64 sp); extern void md_dump_meminfo(void); extern void md_dump_slabinfo(void); @@ -60,6 +61,7 @@ static inline int msm_minidump_remove_region(const struct md_region *entry) return 0; } static inline bool msm_minidump_enabled(void) { return false; } +static inline struct md_region *md_get_region(char *name) { return NULL; } static inline void dump_stack_minidump(u64 sp) {} static inline void add_trace_event(char *buf, size_t size) {} static inline void md_dump_meminfo(void) {}