From: Mukesh Ojha <quic_mojha@quicinc.com>
To: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>,
<agross@kernel.org>, <andersson@kernel.org>,
<konrad.dybcio@linaro.org>, <corbet@lwn.net>,
<keescook@chromium.org>, <tony.luck@intel.com>,
<gpiccoli@igalia.com>, <catalin.marinas@arm.com>,
<will@kernel.org>
Cc: <linux-arm-msm@vger.kernel.org>,
<linux-remoteproc@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, <linux-hardening@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-doc@vger.kernel.org>
Subject: Re: [PATCH v2 2/6] remoteproc: qcom: Move minidump specific data to qcom_minidump.h
Date: Fri, 14 Apr 2023 12:35:00 +0530 [thread overview]
Message-ID: <3df1ec27-7e4d-1f84-ff20-94e8ea91c86f@quicinc.com> (raw)
In-Reply-To: <e74fb30d-4268-86b1-cdf7-ad3d104c6c40@linaro.org>
Thanks again for coming back on this.
On 4/14/2023 4:02 AM, Srinivas Kandagatla wrote:
>
>
> On 22/03/2023 13:30, Mukesh Ojha wrote:
>> Move minidump specific data types and macros to a separate internal
>> header(qcom_minidump.h) so that it can be shared among different
>
> minidump.h should be good as we are already in include/soc/qcom/
Initially, i wanted to protect the content of qcom_minidump.h between
qcom_minidump.c and qcom_common.c
Ideally, here qcom_minidump.h should be supplier/provider header and can
be shared among above qcom_minidump.c and qcom_common.c but since they
are not in same directory, moved it inside include/soc/qcom/ as separate
header than consumer header minidump.h .
-Mukesh
>
> --srini
>
>> Qualcomm drivers.
>>
>> There is no change in functional behavior after this.
>>
>> Signed-off-by: Mukesh Ojha <quic_mojha@quicinc.com>
>> ---
>> drivers/remoteproc/qcom_common.c | 56
>> +---------------------------------
>> include/soc/qcom/qcom_minidump.h | 66
>> ++++++++++++++++++++++++++++++++++++++++
>> 2 files changed, 67 insertions(+), 55 deletions(-)
>> create mode 100644 include/soc/qcom/qcom_minidump.h
>>
>> diff --git a/drivers/remoteproc/qcom_common.c
>> b/drivers/remoteproc/qcom_common.c
>> index 805e525..88fc984 100644
>> --- a/drivers/remoteproc/qcom_common.c
>> +++ b/drivers/remoteproc/qcom_common.c
>> @@ -18,6 +18,7 @@
>> #include <linux/slab.h>
>> #include <linux/soc/qcom/mdt_loader.h>
>> #include <linux/soc/qcom/smem.h>
>> +#include <soc/qcom/qcom_minidump.h>
>> #include "remoteproc_internal.h"
>> #include "qcom_common.h"
>> @@ -26,61 +27,6 @@
>> #define to_smd_subdev(d) container_of(d, struct qcom_rproc_subdev,
>> subdev)
>> #define to_ssr_subdev(d) container_of(d, struct qcom_rproc_ssr, subdev)
>> -#define MAX_NUM_OF_SS 10
>> -#define MAX_REGION_NAME_LENGTH 16
>> -#define SBL_MINIDUMP_SMEM_ID 602
>> -#define MINIDUMP_REGION_VALID ('V' << 24 | 'A' << 16 | 'L' <<
>> 8 | 'I' << 0)
>> -#define MINIDUMP_SS_ENCR_DONE ('D' << 24 | 'O' << 16 | 'N' <<
>> 8 | 'E' << 0)
>> -#define MINIDUMP_SS_ENABLED ('E' << 24 | 'N' << 16 | 'B' << 8
>> | 'L' << 0)
>> -
>> -/**
>> - * struct minidump_region - Minidump region
>> - * @name : Name of the region to be dumped
>> - * @seq_num: : Use to differentiate regions with same name.
>> - * @valid : This entry to be dumped (if set to 1)
>> - * @address : Physical address of region to be dumped
>> - * @size : Size of the region
>> - */
>> -struct minidump_region {
>> - char name[MAX_REGION_NAME_LENGTH];
>> - __le32 seq_num;
>> - __le32 valid;
>> - __le64 address;
>> - __le64 size;
>> -};
>> -
>> -/**
>> - * struct minidump_subsystem - Subsystem's SMEM Table of content
>> - * @status : Subsystem toc init status
>> - * @enabled : if set to 1, this region would be copied during coredump
>> - * @encryption_status: Encryption status for this subsystem
>> - * @encryption_required : Decides to encrypt the subsystem regions or
>> not
>> - * @region_count : Number of regions added in this subsystem toc
>> - * @regions_baseptr : regions base pointer of the subsystem
>> - */
>> -struct minidump_subsystem {
>> - __le32 status;
>> - __le32 enabled;
>> - __le32 encryption_status;
>> - __le32 encryption_required;
>> - __le32 region_count;
>> - __le64 regions_baseptr;
>> -};
>> -
>> -/**
>> - * struct minidump_global_toc - Global Table of Content
>> - * @status : Global Minidump init status
>> - * @md_revision : Minidump revision
>> - * @enabled : Minidump enable status
>> - * @subsystems : Array of subsystems toc
>> - */
>> -struct minidump_global_toc {
>> - __le32 status;
>> - __le32 md_revision;
>> - __le32 enabled;
>> - struct minidump_subsystem subsystems[MAX_NUM_OF_SS];
>> -};
>> -
>> struct qcom_ssr_subsystem {
>> const char *name;
>> struct srcu_notifier_head notifier_list;
>> diff --git a/include/soc/qcom/qcom_minidump.h
>> b/include/soc/qcom/qcom_minidump.h
>> new file mode 100644
>> index 0000000..84c8605
>> --- /dev/null
>> +++ b/include/soc/qcom/qcom_minidump.h
>> @@ -0,0 +1,66 @@
>> +/* SPDX-License-Identifier: GPL-2.0-only */
>> +/*
>> + * Qualcomm minidump shared data structures and macros
>> + *
>> + * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights
>> reserved.
>> + */
>> +
>> +#ifndef _QCOM_MINIDUMP_H_
>> +#define _QCOM_MINIDUMP_H_
>> +
>> +#define MAX_NUM_OF_SS 10
>> +#define MAX_REGION_NAME_LENGTH 16
>> +#define SBL_MINIDUMP_SMEM_ID 602
>> +#define MINIDUMP_REGION_VALID ('V' << 24 | 'A' << 16 | 'L' <<
>> 8 | 'I' << 0)
>> +#define MINIDUMP_SS_ENCR_DONE ('D' << 24 | 'O' << 16 | 'N' <<
>> 8 | 'E' << 0)
>> +#define MINIDUMP_SS_ENABLED ('E' << 24 | 'N' << 16 | 'B' << 8
>> | 'L' << 0)
>> +
>> +/**
>> + * struct minidump_region - Minidump region
>> + * @name : Name of the region to be dumped
>> + * @seq_num: : Use to differentiate regions with same name.
>> + * @valid : This entry to be dumped (if set to 1)
>> + * @address : Physical address of region to be dumped
>> + * @size : Size of the region
>> + */
>> +struct minidump_region {
>> + char name[MAX_REGION_NAME_LENGTH];
>> + __le32 seq_num;
>> + __le32 valid;
>> + __le64 address;
>> + __le64 size;
>> +};
>> +
>> +/**
>> + * struct minidump_subsystem - Subsystem's SMEM Table of content
>> + * @status : Subsystem toc init status
>> + * @enabled : if set to 1, this region would be copied during coredump
>> + * @encryption_status: Encryption status for this subsystem
>> + * @encryption_required : Decides to encrypt the subsystem regions or
>> not
>> + * @region_count : Number of regions added in this subsystem toc
>> + * @regions_baseptr : regions base pointer of the subsystem
>> + */
>> +struct minidump_subsystem {
>> + __le32 status;
>> + __le32 enabled;
>> + __le32 encryption_status;
>> + __le32 encryption_required;
>> + __le32 region_count;
>> + __le64 regions_baseptr;
>> +};
>> +
>> +/**
>> + * struct minidump_global_toc - Global Table of Content
>> + * @status : Global Minidump init status
>> + * @md_revision : Minidump revision
>> + * @enabled : Minidump enable status
>> + * @subsystems : Array of subsystems toc
>> + */
>> +struct minidump_global_toc {
>> + __le32 status;
>> + __le32 md_revision;
>> + __le32 enabled;
>> + struct minidump_subsystem subsystems[MAX_NUM_OF_SS];
>> +};
>> +
>> +#endif /* _QCOM_MINIDUMP_H_ */
next prev parent reply other threads:[~2023-04-14 7:06 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-22 13:30 [PATCH v2 0/6] Add basic Minidump kernel driver support Mukesh Ojha
2023-03-22 13:30 ` [PATCH v2 1/6] remoteproc: qcom: Expand MD_* as MINIDUMP_* Mukesh Ojha
2023-03-22 13:30 ` [PATCH v2 2/6] remoteproc: qcom: Move minidump specific data to qcom_minidump.h Mukesh Ojha
2023-04-13 22:32 ` Srinivas Kandagatla
2023-04-14 7:05 ` Mukesh Ojha [this message]
2023-04-14 10:40 ` Srinivas Kandagatla
2023-04-17 13:22 ` Mukesh Ojha
2023-04-18 14:02 ` Srinivas Kandagatla
2023-04-18 14:52 ` Mukesh Ojha
2023-03-22 13:30 ` [PATCH v2 3/6] docs: qcom: Add qualcomm minidump guide Mukesh Ojha
2023-04-13 22:31 ` Srinivas Kandagatla
2023-04-18 15:19 ` Mukesh Ojha
2023-04-18 15:26 ` Srinivas Kandagatla
2023-03-22 13:30 ` [PATCH v2 4/6] soc: qcom: Add Qualcomm minidump kernel driver Mukesh Ojha
2023-04-13 22:31 ` Srinivas Kandagatla
2023-03-22 13:30 ` [PATCH v2 5/6] arm64: defconfig: Enable Qualcomm minidump driver Mukesh Ojha
2023-03-22 13:30 ` [PATCH v2 6/6] remoterproc: qcom: refactor to leverage exported minidump symbol Mukesh Ojha
2023-04-14 10:44 ` Srinivas Kandagatla
2023-04-14 11:14 ` Mukesh Ojha
2023-04-14 11:40 ` Srinivas Kandagatla
2023-04-14 11:49 ` Mukesh Ojha
2023-04-14 12:22 ` Srinivas Kandagatla
2023-04-03 16:25 ` [PATCH v2 0/6] Add basic Minidump kernel driver support Mukesh Ojha
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3df1ec27-7e4d-1f84-ff20-94e8ea91c86f@quicinc.com \
--to=quic_mojha@quicinc.com \
--cc=agross@kernel.org \
--cc=andersson@kernel.org \
--cc=catalin.marinas@arm.com \
--cc=corbet@lwn.net \
--cc=gpiccoli@igalia.com \
--cc=keescook@chromium.org \
--cc=konrad.dybcio@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-hardening@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-remoteproc@vger.kernel.org \
--cc=srinivas.kandagatla@linaro.org \
--cc=tony.luck@intel.com \
--cc=will@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox