All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jonathan Cameron <Jonathan.Cameron@Huawei.com>
To: Amit Singh Tomar <amitsinght@marvell.com>
Cc: <linux-kernel@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>, <fenghua.yu@intel.com>,
	<reinette.chatre@intel.com>, <james.morse@arm.com>,
	<gcherian@marvell.com>, <robh@kernel.org>,
	<peternewman@google.com>
Subject: Re: [RFC 12/12] arm_mpam: Program Downstream priority value
Date: Fri, 1 Sep 2023 14:17:31 +0100	[thread overview]
Message-ID: <20230901141731.00006f46@Huawei.com> (raw)
In-Reply-To: <20230815152712.1760046-13-amitsinght@marvell.com>

On Tue, 15 Aug 2023 20:57:12 +0530
Amit Singh Tomar <amitsinght@marvell.com> wrote:

> Now that Downstream priorities values can be passed from resource control
> schemata file, let's program it into memory mapped Priority Partition
> Configuration Register.
> 
> Signed-off-by: Amit Singh Tomar <amitsinght@marvell.com>
> ---
> TODO:
> 	* Invert Priority value based on DSPRI_0_IS_LOW, suggested
>           by James. 

Ah. In testing I just hit this as well as I was expecting the default
to change depending on 0_IS_LOW.



> ---
>  drivers/platform/mpam/mpam_devices.c | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/platform/mpam/mpam_devices.c b/drivers/platform/mpam/mpam_devices.c
> index 59022e42920c..8af6424bb27b 100644
> --- a/drivers/platform/mpam/mpam_devices.c
> +++ b/drivers/platform/mpam/mpam_devices.c
> @@ -1153,8 +1153,12 @@ static void mpam_reprogram_ris_partid(struct mpam_msc_ris *ris, u16 partid,
>  
>  		if (mpam_has_feature(mpam_feat_intpri_part, rprops))
>  			pri_val |= FIELD_PREP(MPAMCFG_PRI_INTPRI, intpri);
> -		if (mpam_has_feature(mpam_feat_dspri_part, rprops))
> -			pri_val |= FIELD_PREP(MPAMCFG_PRI_DSPRI, dspri);
> +		if (mpam_has_feature(mpam_feat_dspri_part, rprops)) {
> +			if (mpam_has_feature(mpam_feat_dspri_part, cfg)) {
> +				pri_val |= FIELD_PREP(MPAMCFG_PRI_DSPRI, cfg->dspri & dspri);

Note that it's not as simple as inverting the value for DSPRI_0_IS_LOW setting being the opposite
as in that case dspri is st to 0 a few lines up... So this always ends up 0.

> +			} else
> +				pri_val |= FIELD_PREP(MPAMCFG_PRI_DSPRI, dspri);
> +		}
>  
>  		mpam_write_partsel_reg(msc, PRI, pri_val);
>  	}


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: Jonathan Cameron <Jonathan.Cameron@Huawei.com>
To: Amit Singh Tomar <amitsinght@marvell.com>
Cc: <linux-kernel@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>, <fenghua.yu@intel.com>,
	<reinette.chatre@intel.com>, <james.morse@arm.com>,
	<gcherian@marvell.com>, <robh@kernel.org>,
	<peternewman@google.com>
Subject: Re: [RFC 12/12] arm_mpam: Program Downstream priority value
Date: Fri, 1 Sep 2023 14:17:31 +0100	[thread overview]
Message-ID: <20230901141731.00006f46@Huawei.com> (raw)
In-Reply-To: <20230815152712.1760046-13-amitsinght@marvell.com>

On Tue, 15 Aug 2023 20:57:12 +0530
Amit Singh Tomar <amitsinght@marvell.com> wrote:

> Now that Downstream priorities values can be passed from resource control
> schemata file, let's program it into memory mapped Priority Partition
> Configuration Register.
> 
> Signed-off-by: Amit Singh Tomar <amitsinght@marvell.com>
> ---
> TODO:
> 	* Invert Priority value based on DSPRI_0_IS_LOW, suggested
>           by James. 

Ah. In testing I just hit this as well as I was expecting the default
to change depending on 0_IS_LOW.



> ---
>  drivers/platform/mpam/mpam_devices.c | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/platform/mpam/mpam_devices.c b/drivers/platform/mpam/mpam_devices.c
> index 59022e42920c..8af6424bb27b 100644
> --- a/drivers/platform/mpam/mpam_devices.c
> +++ b/drivers/platform/mpam/mpam_devices.c
> @@ -1153,8 +1153,12 @@ static void mpam_reprogram_ris_partid(struct mpam_msc_ris *ris, u16 partid,
>  
>  		if (mpam_has_feature(mpam_feat_intpri_part, rprops))
>  			pri_val |= FIELD_PREP(MPAMCFG_PRI_INTPRI, intpri);
> -		if (mpam_has_feature(mpam_feat_dspri_part, rprops))
> -			pri_val |= FIELD_PREP(MPAMCFG_PRI_DSPRI, dspri);
> +		if (mpam_has_feature(mpam_feat_dspri_part, rprops)) {
> +			if (mpam_has_feature(mpam_feat_dspri_part, cfg)) {
> +				pri_val |= FIELD_PREP(MPAMCFG_PRI_DSPRI, cfg->dspri & dspri);

Note that it's not as simple as inverting the value for DSPRI_0_IS_LOW setting being the opposite
as in that case dspri is st to 0 a few lines up... So this always ends up 0.

> +			} else
> +				pri_val |= FIELD_PREP(MPAMCFG_PRI_DSPRI, dspri);
> +		}
>  
>  		mpam_write_partsel_reg(msc, PRI, pri_val);
>  	}


  reply	other threads:[~2023-09-01 13:18 UTC|newest]

Thread overview: 78+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-15 15:27 [RFC 00/12] ARM: MPAM: add support for priority partitioning control Amit Singh Tomar
2023-08-15 15:27 ` Amit Singh Tomar
2023-08-15 15:27 ` [RFC 01/12] arm_mpam: Handle resource instances mapped to different controls Amit Singh Tomar
2023-08-15 15:27   ` Amit Singh Tomar
2023-09-01 12:39   ` Jonathan Cameron
2023-09-01 12:39     ` Jonathan Cameron
2023-08-15 15:27 ` [RFC 02/12] arm_mpam: resctrl: Detect priority partitioning capability Amit Singh Tomar
2023-08-15 15:27   ` Amit Singh Tomar
2023-09-01 12:30   ` Jonathan Cameron
2023-09-01 12:30     ` Jonathan Cameron
2023-08-15 15:27 ` [RFC 03/12] arm_mpam: resctrl: Define new schemata format for priority partition Amit Singh Tomar
2023-08-15 15:27   ` Amit Singh Tomar
2023-08-15 15:27 ` [RFC 04/12] fs/resctrl: Obtain CPBM upon priority partition presence Amit Singh Tomar
2023-08-15 15:27   ` Amit Singh Tomar
2023-08-15 15:27 ` [RFC 05/12] fs/resctrl: Set-up downstream priority partition resources Amit Singh Tomar
2023-08-15 15:27   ` Amit Singh Tomar
2023-08-17 17:39   ` Fenghua Yu
2023-08-17 17:39     ` Fenghua Yu
2023-08-15 15:27 ` [RFC 06/12] fs/resctrl: Extend schemata read for priority partition control Amit Singh Tomar
2023-08-15 15:27   ` Amit Singh Tomar
2023-08-17 17:42   ` Fenghua Yu
2023-08-17 17:42     ` Fenghua Yu
2023-08-15 15:27 ` [RFC 07/12] arm_mpam: resctrl: Retrieve priority values from arch code Amit Singh Tomar
2023-08-15 15:27   ` Amit Singh Tomar
2023-08-15 15:27 ` [RFC 08/12] fs/resctrl: Schemata write only for intended resource Amit Singh Tomar
2023-08-15 15:27   ` Amit Singh Tomar
2023-08-15 15:27 ` [RFC 09/12] fs/resctrl: Extend schemata write for priority partition control Amit Singh Tomar
2023-08-15 15:27   ` Amit Singh Tomar
2023-08-17 17:27   ` Fenghua Yu
2023-08-17 17:27     ` Fenghua Yu
2023-08-17 17:53   ` Fenghua Yu
2023-08-17 17:53     ` Fenghua Yu
2023-08-15 15:27 ` [RFC 10/12] arm_mpam: resctrl: Facilitate writing downstream priority value Amit Singh Tomar
2023-08-15 15:27   ` Amit Singh Tomar
2023-08-15 15:27 ` [RFC 11/12] arm_mpam: Fix Downstream priority mask Amit Singh Tomar
2023-08-15 15:27   ` Amit Singh Tomar
2023-09-01 13:32   ` Jonathan Cameron
2023-09-01 13:32     ` Jonathan Cameron
2023-08-15 15:27 ` [RFC 12/12] arm_mpam: Program Downstream priority value Amit Singh Tomar
2023-08-15 15:27   ` Amit Singh Tomar
2023-09-01 13:17   ` Jonathan Cameron [this message]
2023-09-01 13:17     ` Jonathan Cameron
2023-08-17 19:11 ` [RFC 00/12] ARM: MPAM: add support for priority partitioning control Reinette Chatre
2023-08-17 19:11   ` Reinette Chatre
2023-08-17 20:29   ` Reinette Chatre
2023-08-17 20:29     ` Reinette Chatre
2023-08-22 12:44   ` [EXT] " Amit Singh Tomar
2023-08-22 12:44     ` Amit Singh Tomar
2023-08-23 19:06     ` Reinette Chatre
2023-08-23 19:06       ` Reinette Chatre
2023-08-23 21:33       ` Amit Singh Tomar
2023-08-23 21:33         ` Amit Singh Tomar
2023-08-23 22:20         ` Reinette Chatre
2023-08-23 22:20           ` Reinette Chatre
2023-08-23 22:36           ` Luck, Tony
2023-08-23 22:36             ` Luck, Tony
2023-08-24  8:52           ` Amit Singh Tomar
2023-08-24  8:52             ` Amit Singh Tomar
2023-08-24 15:30             ` Luck, Tony
2023-08-24 15:30               ` Luck, Tony
2023-08-24 18:00             ` Reinette Chatre
2023-08-24 18:00               ` Reinette Chatre
2024-01-11 20:56             ` Peter Newman
2024-01-11 20:56               ` Peter Newman
2024-01-11 21:40               ` Tony Luck
2024-01-11 21:40                 ` Tony Luck
2024-01-11 22:01                 ` Reinette Chatre
2024-01-11 22:01                   ` Reinette Chatre
2024-01-11 23:14                   ` Luck, Tony
2024-01-11 23:14                     ` Luck, Tony
2024-01-11 23:31                     ` Reinette Chatre
2024-01-11 23:31                       ` Reinette Chatre
2023-08-22  9:01 ` Peter Newman
2023-08-22  9:01   ` Peter Newman
2023-09-01 14:42 ` Jonathan Cameron
2023-09-01 14:42   ` Jonathan Cameron
2023-09-01 15:04 ` Jonathan Cameron
2023-09-01 15:04   ` Jonathan Cameron

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=20230901141731.00006f46@Huawei.com \
    --to=jonathan.cameron@huawei.com \
    --cc=amitsinght@marvell.com \
    --cc=fenghua.yu@intel.com \
    --cc=gcherian@marvell.com \
    --cc=james.morse@arm.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=peternewman@google.com \
    --cc=reinette.chatre@intel.com \
    --cc=robh@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.