2020-10-13 19:08:09

by Georgi Djakov

[permalink] [raw]
Subject: [PATCH] interconnect: qcom: Simplify the vcd compare function

Let's simplify the cmp_vcd() function and replace the conditionals
with just a single statement, which also improves readability.

Signed-off-by: Georgi Djakov <[email protected]>
---
drivers/interconnect/qcom/bcm-voter.c | 15 ++++-----------
1 file changed, 4 insertions(+), 11 deletions(-)

diff --git a/drivers/interconnect/qcom/bcm-voter.c b/drivers/interconnect/qcom/bcm-voter.c
index 887d13721e52..1cc565bce2f4 100644
--- a/drivers/interconnect/qcom/bcm-voter.c
+++ b/drivers/interconnect/qcom/bcm-voter.c
@@ -41,17 +41,10 @@ struct bcm_voter {

static int cmp_vcd(void *priv, struct list_head *a, struct list_head *b)
{
- const struct qcom_icc_bcm *bcm_a =
- list_entry(a, struct qcom_icc_bcm, list);
- const struct qcom_icc_bcm *bcm_b =
- list_entry(b, struct qcom_icc_bcm, list);
-
- if (bcm_a->aux_data.vcd < bcm_b->aux_data.vcd)
- return -1;
- else if (bcm_a->aux_data.vcd == bcm_b->aux_data.vcd)
- return 0;
- else
- return 1;
+ const struct qcom_icc_bcm *bcm_a = list_entry(a, struct qcom_icc_bcm, list);
+ const struct qcom_icc_bcm *bcm_b = list_entry(b, struct qcom_icc_bcm, list);
+
+ return bcm_a->aux_data.vcd - bcm_b->aux_data.vcd;
}

static u64 bcm_div(u64 num, u32 base)


2020-10-14 10:19:58

by Mike Tipton

[permalink] [raw]
Subject: Re: [PATCH] interconnect: qcom: Simplify the vcd compare function

On 10/13/2020 10:19 AM, Georgi Djakov wrote:
> Let's simplify the cmp_vcd() function and replace the conditionals
> with just a single statement, which also improves readability.
>
> Signed-off-by: Georgi Djakov <[email protected]>
> ---
> drivers/interconnect/qcom/bcm-voter.c | 15 ++++-----------
> 1 file changed, 4 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/interconnect/qcom/bcm-voter.c b/drivers/interconnect/qcom/bcm-voter.c
> index 887d13721e52..1cc565bce2f4 100644
> --- a/drivers/interconnect/qcom/bcm-voter.c
> +++ b/drivers/interconnect/qcom/bcm-voter.c
> @@ -41,17 +41,10 @@ struct bcm_voter {
>
> static int cmp_vcd(void *priv, struct list_head *a, struct list_head *b)
> {
> - const struct qcom_icc_bcm *bcm_a =
> - list_entry(a, struct qcom_icc_bcm, list);
> - const struct qcom_icc_bcm *bcm_b =
> - list_entry(b, struct qcom_icc_bcm, list);
> -
> - if (bcm_a->aux_data.vcd < bcm_b->aux_data.vcd)
> - return -1;
> - else if (bcm_a->aux_data.vcd == bcm_b->aux_data.vcd)
> - return 0;
> - else
> - return 1;
> + const struct qcom_icc_bcm *bcm_a = list_entry(a, struct qcom_icc_bcm, list);
> + const struct qcom_icc_bcm *bcm_b = list_entry(b, struct qcom_icc_bcm, list);
> +
> + return bcm_a->aux_data.vcd - bcm_b->aux_data.vcd;
> }
>
> static u64 bcm_div(u64 num, u32 base)
>

Reviewed-by: Mike Tipton <[email protected]>