mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Jeremy Linton <jeremy.linton@arm.com>
To: Ben Horgan <ben.horgan@arm.com>
Cc: rafael@kernel.org, lenb@kernel.org, linux-acpi@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v1] ACPI / PPTT: Remove duplicate structure, acpi_pptt_cache_v1_full
Date: Tue, 24 Mar 2026 10:10:39 -0500	[thread overview]
Message-ID: <e1d447dd-cbba-4dce-bf4d-c6a7a79f4342@arm.com> (raw)
In-Reply-To: <20260324113300.1002569-1-ben.horgan@arm.com>

Hi,

On 3/24/26 6:33 AM, Ben Horgan wrote:
> acpi_pptt_cache_v1_full was initially added as a stop gap until the
> equivalent structure imported from ACPICA, acpi_pptt_v1 in actbl2.h,
> contained all the fields of the Cache Type Structure. Since, commit :
> 091c4af3562d ("ACPICA: ACPI 6.4: PPTT: include all fields in subtable
> type1"), acpi_pptt_v1 contains all these fields making
> acpi_pptt_cache_v1_full redundant.
> 
> Remove acpi_pptt_cache_v1_full.

Looks good, thanks for taking care of this.

Reviewed-by: Jeremy Linton <jeremy.linton@arm.com>

> 
> No functional change intended.
> 
> Cc: Jeremy Linton <jeremy.linton@arm.com>
> Signed-off-by: Ben Horgan <ben.horgan@arm.com>
> ---
>   drivers/acpi/pptt.c | 31 ++++++-------------------------
>   1 file changed, 6 insertions(+), 25 deletions(-)
> 
> diff --git a/drivers/acpi/pptt.c b/drivers/acpi/pptt.c
> index de5f8c018333..ea28ba61ddd9 100644
> --- a/drivers/acpi/pptt.c
> +++ b/drivers/acpi/pptt.c
> @@ -21,25 +21,6 @@
>   #include <linux/cacheinfo.h>
>   #include <acpi/processor.h>
>   
> -/*
> - * The acpi_pptt_cache_v1 in actbl2.h, which is imported from acpica,
> - * only contains the cache_id field rather than all the fields of the
> - * Cache Type Structure. Use this alternative structure until it is
> - * resolved in acpica.
> - */
> -struct acpi_pptt_cache_v1_full {
> -	struct acpi_subtable_header header;
> -	u16 reserved;
> -	u32 flags;
> -	u32 next_level_of_cache;
> -	u32 size;
> -	u32 number_of_sets;
> -	u8 associativity;
> -	u8 attributes;
> -	u16 line_size;
> -	u32 cache_id;
> -} __packed;
> -
>   static struct acpi_subtable_header *fetch_pptt_subtable(struct acpi_table_header *table_hdr,
>   							u32 pptt_ref)
>   {
> @@ -75,16 +56,16 @@ static struct acpi_pptt_cache *fetch_pptt_cache(struct acpi_table_header *table_
>   	return (struct acpi_pptt_cache *)fetch_pptt_subtable(table_hdr, pptt_ref);
>   }
>   
> -static struct acpi_pptt_cache_v1_full *upgrade_pptt_cache(struct acpi_pptt_cache *cache)
> +static struct acpi_pptt_cache_v1 *upgrade_pptt_cache(struct acpi_pptt_cache *cache)
>   {
> -	if (cache->header.length < sizeof(struct acpi_pptt_cache_v1_full))
> +	if (cache->header.length < sizeof(struct acpi_pptt_cache_v1))
>   		return NULL;
>   
>   	/* No use for v1 if the only additional field is invalid */
>   	if (!(cache->flags & ACPI_PPTT_CACHE_ID_VALID))
>   		return NULL;
>   
> -	return (struct acpi_pptt_cache_v1_full *)cache;
> +	return (struct acpi_pptt_cache_v1 *)cache;
>   }
>   
>   static struct acpi_subtable_header *acpi_get_pptt_resource(struct acpi_table_header *table_hdr,
> @@ -397,7 +378,7 @@ static void update_cache_properties(struct cacheinfo *this_leaf,
>   				    struct acpi_pptt_cache *found_cache,
>   				    struct acpi_pptt_processor *cpu_node)
>   {
> -	struct acpi_pptt_cache_v1_full *found_cache_v1;
> +	struct acpi_pptt_cache_v1 *found_cache_v1;
>   
>   	this_leaf->fw_token = cpu_node;
>   	if (found_cache->flags & ACPI_PPTT_SIZE_PROPERTY_VALID)
> @@ -979,7 +960,7 @@ int find_acpi_cache_level_from_id(u32 cache_id)
>   
>   			empty = true;
>   			for (int i = 0; i < ARRAY_SIZE(cache_type); i++) {
> -				struct acpi_pptt_cache_v1_full *cache_v1;
> +				struct acpi_pptt_cache_v1 *cache_v1;
>   
>   				cache = acpi_find_cache_node(table, acpi_cpu_id, cache_type[i],
>   							     level, &cpu_node);
> @@ -1043,7 +1024,7 @@ int acpi_pptt_get_cpumask_from_cache_id(u32 cache_id, cpumask_t *cpus)
>   
>   			empty = true;
>   			for (int i = 0; i < ARRAY_SIZE(cache_type); i++) {
> -				struct acpi_pptt_cache_v1_full *cache_v1;
> +				struct acpi_pptt_cache_v1 *cache_v1;
>   
>   				cache = acpi_find_cache_node(table, acpi_cpu_id, cache_type[i],
>   							     level, &cpu_node);


  reply	other threads:[~2026-03-24 15:10 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-24 11:33 Ben Horgan
2026-03-24 15:10 ` Jeremy Linton [this message]
2026-03-24 20:43 ` Sudeep Holla
2026-03-25 11:45   ` Rafael J. Wysocki
2026-03-25 11:53     ` Sudeep Holla
2026-03-25 13:32       ` Rafael J. Wysocki
2026-03-25 15:34         ` Sudeep Holla

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=e1d447dd-cbba-4dce-bf4d-c6a7a79f4342@arm.com \
    --to=jeremy.linton@arm.com \
    --cc=ben.horgan@arm.com \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rafael@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

all inboxes | Powered by JetHome®