linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: Anand Moon <linux.amoon@gmail.com>
To: Rob Herring <robh+dt@kernel.org>,
	 Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Conor Dooley <conor+dt@kernel.org>,
	 Neil Armstrong <neil.armstrong@linaro.org>,
	Kevin Hilman <khilman@baylibre.com>,
	 Jerome Brunet <jbrunet@baylibre.com>,
	 Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Cc: devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	 linux-amlogic@lists.infradead.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCHv1 1/5] arm64: dts: amlogic: Add cache information to the Amlogic GXBB and GXL SoC
Date: Wed, 20 Aug 2025 19:31:16 +0530	[thread overview]
Message-ID: <CANAwSgT5RPNviXGfP9wdXoYMB220b=fd0mFbcANtWzSu+aPDQw@mail.gmail.com> (raw)
In-Reply-To: <CANAwSgSzUW97U8MbWPdb_g4hqEpvLrVDGHG9Gjs2xALbDasqmg@mail.gmail.com>

Hi Neil,

On Tue, 27 Feb 2024 at 18:33, Anand Moon <linux.amoon@gmail.com> wrote:
>
> Hi Neil,
>
> On Mon, 5 Feb 2024 at 22:50, Anand Moon <linux.amoon@gmail.com> wrote:
> >
> > As per S905 and S905X datasheet add missing cache information to
> > the Amlogic GXBB and GXL SoC.
> >
> > - Each Cortex-A53 core has 32KB of L1 instruction cache available and
> >         32KB of L1 data cache available.
> > - Along with 512KB Unified L2 cache.
> >
> > To improve system performance.
> >
> > Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> > ---
> > Datasheet
> > [0] https://dn.odroid.com/S905/DataSheet/S905_Public_Datasheet_V1.1.4.pdf
> > ---
>
> As per the Arm Cortex A53 TRM documentation
> [0] https://developer.arm.com/documentation/ddi0500/j/Introduction/Implementation-options?lang=en
>
> Since this SoC supports arm-pmu we could  read cache info using perf
> [1] https://www.baeldung.com/linux/analyze-cache-misses
>
> [alarm@archl-librecm ~]$ sudo perf list
>
> List of pre-defined events (to be used in -e or -M):
>
>   branch-instructions OR branches                    [Hardware event]
>   branch-misses                                      [Hardware event]
>   bus-cycles                                         [Hardware event]
>   cache-misses                                       [Hardware event]
>   cache-references                                   [Hardware event]
>   cpu-cycles OR cycles                               [Hardware event]
>   instructions                                       [Hardware event]
>   alignment-faults                                   [Software event]
>   bpf-output                                         [Software event]
>   cgroup-switches                                    [Software event]
>   context-switches OR cs                             [Software event]
>   cpu-clock                                          [Software event]
>   cpu-migrations OR migrations                       [Software event]
>   dummy                                              [Software event]
>   emulation-faults                                   [Software event]
>   major-faults                                       [Software event]
>   minor-faults                                       [Software event]
>   page-faults OR faults                              [Software event]
>   task-clock                                         [Software event]
>   duration_time                                      [Tool event]
>   user_time                                          [Tool event]
>   system_time                                        [Tool event]
>
> armv8_cortex_a53:
>   L1-dcache-loads OR armv8_cortex_a53/L1-dcache-loads/
>   L1-dcache-load-misses OR armv8_cortex_a53/L1-dcache-load-misses/
>   L1-dcache-prefetch-misses OR armv8_cortex_a53/L1-dcache-prefetch-misses/
>   L1-icache-loads OR armv8_cortex_a53/L1-icache-loads/
>   L1-icache-load-misses OR armv8_cortex_a53/L1-icache-load-misses/
>   dTLB-load-misses OR armv8_cortex_a53/dTLB-load-misses/
>   iTLB-load-misses OR armv8_cortex_a53/iTLB-load-misses/
>   branch-loads OR armv8_cortex_a53/branch-loads/
>   branch-load-misses OR armv8_cortex_a53/branch-load-misses/
>   node-loads OR armv8_cortex_a53/node-loads/
>   node-stores OR armv8_cortex_a53/node-stores/
>   br_immed_retired OR armv8_cortex_a53/br_immed_retired/[Kernel PMU event]
>   br_mis_pred OR armv8_cortex_a53/br_mis_pred/       [Kernel PMU event]
>   br_pred OR armv8_cortex_a53/br_pred/               [Kernel PMU event]
>   bus_access OR armv8_cortex_a53/bus_access/         [Kernel PMU event]
>   bus_cycles OR armv8_cortex_a53/bus_cycles/         [Kernel PMU event]
>   cid_write_retired OR armv8_cortex_a53/cid_write_retired/[Kernel PMU event]
>   cpu_cycles OR armv8_cortex_a53/cpu_cycles/         [Kernel PMU event]
>   exc_return OR armv8_cortex_a53/exc_return/         [Kernel PMU event]
>
> [alarm@archl-librecm ~]$ perf stat -B -e
> cache-references,cache-misses,cycles,instructions,branches,faults,migrations
> sleep 5
>
>  Performance counter stats for 'sleep 5':
>
>              52794      cache-references:u
>               2311      cache-misses:u                   #    4.38% of
> all cache refs
>             480343      cycles:u
>             140018      instructions:u                   #    0.29
> insn per cycle
>              15012      branches:u
>                 46      faults:u
>                  0      migrations:u
>
>        5.008073381 seconds time elapsed
>
>        0.000000000 seconds user
>        0.006952000 seconds sys
>
I just wanted to revisit this patch series with some updates on
Arm Cortex A53 TRM, here are the L1 and L2 Cache size details.

[1] https://developer.arm.com/documentation/ddi0500/j/Level-1-Memory-System/About-the-L1-memory-system?lang=en
[2] https://developer.arm.com/documentation/ddi0500/j/Level-2-Memory-System/About-the-L2-memory-system?lang=en
[3] https://boardor.com/blog/understanding-the-architecture-of-arm-cortex-a53-cache

Thanks
-Anand


  reply	other threads:[~2025-08-20 15:21 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20240205171930.968-1-linux.amoon@gmail.com>
2024-02-05 17:19 ` [PATCHv1 1/5] arm64: dts: amlogic: Add cache information to the Amlogic GXBB and GXL SoC Anand Moon
2024-02-27 13:03   ` Anand Moon
2025-08-20 14:01     ` Anand Moon [this message]
2024-02-05 17:19 ` [PATCHv1 2/5] arm64: dts: amlogic: Add cache information to the Amlogic SM1 SoC Anand Moon
2024-02-06  8:54   ` Neil Armstrong
2024-02-27 13:03     ` Anand Moon
2024-02-05 17:19 ` [PATCHv1 3/5] arm64: dts: amlogic: Add cache information to the Amlogic G12A SoCS Anand Moon
2024-02-06  7:48   ` Viacheslav
2024-02-06  7:53     ` Christian Hewitt
2024-02-27 13:03       ` Anand Moon
2024-02-05 17:19 ` [PATCHv1 4/5] arm64: dts: amlogic: Add cache information to the Amlogic S922X SoC Anand Moon
2024-02-06  9:00   ` Neil Armstrong
2024-02-06 10:15     ` Anand Moon
2024-02-06 15:01       ` neil.armstrong
2024-02-27 13:04         ` Anand Moon
2025-08-20 14:00           ` Anand Moon
2025-08-20 14:35             ` neil.armstrong
2024-02-05 17:19 ` [PATCHv1 5/5] arm64: dts: amlogic: Add cache information to the Amlogic A7 SoC Anand Moon
2024-02-06  9:01   ` Neil Armstrong

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='CANAwSgT5RPNviXGfP9wdXoYMB220b=fd0mFbcANtWzSu+aPDQw@mail.gmail.com' \
    --to=linux.amoon@gmail.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=jbrunet@baylibre.com \
    --cc=khilman@baylibre.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-amlogic@lists.infradead.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=martin.blumenstingl@googlemail.com \
    --cc=neil.armstrong@linaro.org \
    --cc=robh+dt@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;
as well as URLs for NNTP newsgroup(s).