[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f27bcfff-f710-4a76-b94e-8f1e5365802b@quicinc.com>
Date: Wed, 20 Mar 2024 23:29:13 +0530
From: Odelu Kukatla <quic_okukatla@...cinc.com>
To: Konrad Dybcio <konrad.dybcio@...aro.org>,
Bjorn Andersson
<andersson@...nel.org>,
Georgi Djakov <djakov@...nel.org>, Rob Herring
<robh@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>
CC: Kees Cook <keescook@...omium.org>, <cros-qcom-dts-watchers@...omium.org>,
"Gustavo A . R . Silva" <gustavoars@...nel.org>,
<linux-arm-msm@...r.kernel.org>, <linux-pm@...r.kernel.org>,
<devicetree@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<linux-hardening@...r.kernel.org>, <quic_rlaggysh@...cinc.com>,
<quic_mdtipton@...cinc.com>
Subject: Re: [PATCH v3 1/4] interconnect: qcom: icc-rpmh: Add QoS
configuration support
On 3/6/2024 9:48 PM, Konrad Dybcio wrote:
>
>
> On 3/6/24 08:30, Odelu Kukatla wrote:
>> It adds QoS support for QNOC device and includes support for
>> configuring priority, priority forward disable, urgency forwarding.
>> This helps in priortizing the traffic originating from different
>> interconnect masters at NoC(Network On Chip).
>>
>> Signed-off-by: Odelu Kukatla <quic_okukatla@...cinc.com>
>> ---
>> drivers/interconnect/qcom/icc-rpmh.c | 105 +++++++++++++++++++++++++++
>> drivers/interconnect/qcom/icc-rpmh.h | 32 ++++++++
>> 2 files changed, 137 insertions(+)
>>
>> diff --git a/drivers/interconnect/qcom/icc-rpmh.c b/drivers/interconnect/qcom/icc-rpmh.c
>> index c1aa265c1f4e..b4681849df80 100644
>> --- a/drivers/interconnect/qcom/icc-rpmh.c
>> +++ b/drivers/interconnect/qcom/icc-rpmh.c
>> @@ -1,19 +1,57 @@
>> // SPDX-License-Identifier: GPL-2.0
>> /*
>> * Copyright (c) 2020, The Linux Foundation. All rights reserved.
>> + * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
>> */
>>
>> +#include <linux/clk.h>
>> #include <linux/interconnect.h>
>> #include <linux/interconnect-provider.h>
>> #include <linux/module.h>
>> #include <linux/of.h>
>> #include <linux/of_platform.h>
>> #include <linux/slab.h>
>> +#include <linux/bitfield.h>
>
> Please keep the alphabetical order
>
I will address this in next version.
>>
>> #include "bcm-voter.h"
>> #include "icc-common.h"
>> #include "icc-rpmh.h"
>>
>> +/* QNOC QoS */
>> +#define QOSGEN_MAINCTL_LO(p, qp) (0x8 + (p->port_offsets[qp]))
>> +#define QOS_SLV_URG_MSG_EN_MASK BIT_MASK(3)
>
> Mixing BIT_MASK and GENMASK is very confusing..
>
I will fix this in v4.
>> +#define QOS_DFLT_PRIO_MASK GENMASK(6, 4)
>> +#define QOS_DISABLE_MASK BIT_MASK(24)
>> +
>> +/**
>> + * qcom_icc_set_qos - initialize static QoS configurations
>> + * @qp: qcom icc provider to which @node belongs
>> + * @node: qcom icc node to operate on
>> + */
>> +static void qcom_icc_set_qos(struct qcom_icc_provider *qp,
>> + struct qcom_icc_node *node)
>> +{
>> + const struct qcom_icc_qosbox *qos = node->qosbox;
>> + int port;
>> +
>> + if (!qp->regmap || !qos)
>> + return;
>
> This is not possible if you follow the code flow, I think..
>
> [...]
>
Right, it is not needed.
>> + * @prio: priority value assigned to requests on the node
>> + * @urg_fwd: whether to forward the urgency promotion issued by master(endpoint), or discard
>
> space before the opening brace, please also wrap to 80 lines
>
I will fix this in v4.
>> + * @prio_fwd_disable: whether to forward the priority driven by mster, or override by @prio
>
> typo: mster, please also wrap it
>
> Konrad
Thanks,
Odelu
Powered by blists - more mailing lists