[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CACr-zFD_Nd=r1Giu2A0h9GHgh-GYPbT1PrwBq7n7JN2AWkXMrw@mail.gmail.com>
Date: Mon, 8 Dec 2025 22:36:09 +0000
From: Christopher Obbard <christopher.obbard@...aro.org>
To: Konrad Dybcio <konrad.dybcio@....qualcomm.com>
Cc: Bjorn Andersson <andersson@...nel.org>, Michael Turquette <mturquette@...libre.com>,
Stephen Boyd <sboyd@...nel.org>, Konrad Dybcio <konradybcio@...nel.org>,
Dmitry Baryshkov <lumag@...nel.org>, linux-arm-msm@...r.kernel.org, linux-clk@...r.kernel.org,
linux-kernel@...r.kernel.org, stable@...r.kernel.org,
Dmitry Baryshkov <dmitry.baryshkov@....qualcomm.com>
Subject: Re: [PATCH] Revert "clk: qcom: cpu-8996: simplify the cpu_clk_notifier_cb"
Hi Konrad,
On Wed, 3 Dec 2025 at 10:52, Konrad Dybcio
<konrad.dybcio@....qualcomm.com> wrote:
>
> On 12/2/25 10:24 PM, Christopher Obbard wrote:
> > This reverts commit b3b274bc9d3d7307308aeaf75f70731765ac999a.
> >
> > On the DragonBoard 820c (which uses APQ8096/MSM8996) this change causes
> > the CPUs to downclock to roughly half speed under sustained load. The
> > regression is visible both during boot and when running CPU stress
> > workloads such as stress-ng: the CPUs initially ramp up to the expected
> > frequency, then drop to a lower OPP even though the system is clearly
> > CPU-bound.
> >
> > Bisecting points to this commit and reverting it restores the expected
> > behaviour on the DragonBoard 820c - the CPUs track the cpufreq policy
> > and run at full performance under load.
> >
> > The exact interaction with the ACD is not yet fully understood and we
> > would like to keep ACD in use to avoid possible SoC reliability issues.
> > Until we have a better fix that preserves ACD while avoiding this
> > performance regression, revert the bisected patch to restore the
> > previous behaviour.
> >
> > Fixes: b3b274bc9d3d ("clk: qcom: cpu-8996: simplify the cpu_clk_notifier_cb")
> > Cc: stable@...r.kernel.org # v6.3+
> > Link: https://lore.kernel.org/linux-arm-msm/20230113120544.59320-8-dmitry.baryshkov@linaro.org/
> > Cc: Dmitry Baryshkov <dmitry.baryshkov@....qualcomm.com>
> > Signed-off-by: Christopher Obbard <christopher.obbard@...aro.org>
> > ---
Apologies for the late response, I was in the process of setting some
more msm8096 boards up again in my new workspace to test this
properly.
> It may be that your board really has a MSM/APQ8x96*SG* which is another
> name for the PRO SKU, which happens to have a 2 times wider divider, try
>
> `cat /sys/bus/soc/devices/soc0/soc_id`
I read the soc_id from both of the msm8096 boards I have:
Open-Q™ 820 µSOM Development Kit (APQ8096)
```
$ cat /sys/bus/soc/devices/soc0/soc_id
291
```
(FWIW this board is not in mainline yet; but boots with a DT similar
enough to the db820c. I have a patch in my upstream backlog enabling
that board; watch this space)
DragonBoard™ 820c (APQ8096)
```
$ cat /sys/bus/soc/devices/soc0/soc_id
291
```
> see:
>
> https://lore.kernel.org/linux-arm-msm/20251111-db820c-pro-v1-0-6eece16c5c23@oss.qualcomm.com/
>
> https://lore.kernel.org/linux-arm-msm/kXrAkKv7RZct22X0wivLWqOAiLKpFuDCAY1KY_KSx649kn7BNmJ2IFFMrsYPAyDlcxIjbQCQ1PHb5KaNFawm9IGIXUbch-DI9OI_l73BAaM=@protonmail.com/
Thanks for the pointers. Interesting, but it does look like my boards
are msm8096 (and not the pro SKU). Can you confirm that at all from
the soc_id above?
Another bit of (hopefully useful) information is that the db820c boot
firmware log sthe following, which is different to the logs I saw from
the pro SKU (BUT the firmware could also be outdated?):
```
S - QC_IMAGE_VERSION_STRING=BOOT.XF.1.0-00301
S - IMAGE_VARIANT_STRING=M8996LAB
S - OEM_IMAGE_VERSION_STRING=crm-ubuntu68
S - Boot Interface: UFS
S - Secure Boot: Off
S - Boot Config @ 0x00076044 = 0x000001c9
S - JTAG ID @ 0x000760f4 = 0x4003e0e1
S - OEM ID @ 0x000760f8 = 0x00000000
S - Serial Number @ 0x00074138 = 0x14d6d024
S - OEM Config Row 0 @ 0x00074188 = 0x0000000000000000
S - OEM Config Row 1 @ 0x00074190 = 0x0000000000000000
S - Feature Config Row 0 @ 0x000741a0 = 0x0050000010000100
S - Feature Config Row 1 @ 0x000741a8 = 0x00fff00001ffffff
S - Core 0 Frequency, 1228 MHz
B - 0 - PBL, Start
B - 10414 - bootable_media_detect_entry, Start
B - 50197 - bootable_media_detect_success, Start
B - 50197 - elf_loader_entry, Start
B - 51760 - auth_hash_seg_entry, Start
B - 51863 - auth_hash_seg_exit, Start
B - 85147 - elf_segs_hash_verify_entry, Start
B - 87651 - PBL, End
B - 89700 - SBL1, Start
B - 185684 - usb: hs_phy_nondrive_start
B - 186050 - usb: PLL lock success - 0x3
B - 189039 - usb: hs_phy_nondrive_finish
B - 193156 - boot_flash_init, Start
D - 30 - boot_flash_init, Delta
B - 200263 - sbl1_ddr_set_default_params, Start
D - 30 - sbl1_ddr_set_default_params, Delta
B - 208254 - boot_config_data_table_init, Start
D - 317169 - boot_config_data_table_init, Delta - (60 Bytes)
B - 529968 - CDT Version:3,Platform ID:24,Major ID:1,Minor ID:0,Subtype:0
B - 534665 - Image Load, Start
D - 22448 - PMIC Image Loaded, Delta - (37272 Bytes)
B - 557143 - pm_device_init, Start
B - 562908 - PON REASON:PM0:0x60 PM1:0x20
B - 599294 - PM_SET_VAL:Skip
D - 40016 - pm_device_init, Delta
B - 601216 - pm_driver_init, Start
D - 2897 - pm_driver_init, Delta
B - 607834 - pm_sbl_chg_init, Start
D - 91 - pm_sbl_chg_init, Delta
B - 614575 - vsense_init, Start
D - 0 - vsense_init, Delta
B - 624670 - Pre_DDR_clock_init, Start
D - 396 - Pre_DDR_clock_init, Delta
B - 628208 - ddr_initialize_device, Start
B - 631899 - 8996 v3.x detected, Max frequency = 1.8 GHz
B - 641537 - ddr_initialize_device, Delta
B - 641567 - DDR ID, Rank 0, Rank 1, 0x6, 0x300, 0x300
B - 645410 - Basic DDR tests done
B - 714157 - clock_init, Start
D - 274 - clock_init, Delta
B - 717543 - Image Load, Start
D - 4331 - QSEE Dev Config Image Loaded, Delta - (46008 Bytes)
B - 723002 - Image Load, Start
D - 5307 - APDP Image Loaded, Delta - (0 Bytes)
B - 731603 - usb: UFS Serial - a28415ce
B - 735965 - usb: fedl, vbus_low
B - 739594 - Image Load, Start
D - 55449 - QSEE Image Loaded, Delta - (1640572 Bytes)
B - 795043 - Image Load, Start
D - 2043 - SEC Image Loaded, Delta - (4096 Bytes)
B - 802607 - sbl1_efs_handle_cookies, Start
D - 488 - sbl1_efs_handle_cookies, Delta
B - 811117 - Image Load, Start
D - 14365 - QHEE Image Loaded, Delta - (254184 Bytes)
B - 825482 - Image Load, Start
D - 14091 - RPM Image Loaded, Delta - (223900 Bytes)
B - 840397 - Image Load, Start
D - 3172 - STI Image Loaded, Delta - (0 Bytes)
B - 847107 - Image Load, Start
D - 34800 - APPSBL Image Loaded, Delta - (748620 Bytes)
B - 881999 - SBL1, End
D - 796569 - SBL1, Delta
S - Flash Throughput, 94000 KB/s (2958928 Bytes, 31192 us)
S - DDR Frequency, 1017 MHz
Android Bootloader - UART_DM Initialized!!!
[0] BUILD_VERSION=
[0] BUILD_DATE=00:29:31 - Dec 4 2023
[0] welcome to lk
...
```
Cheers!
Chris
Powered by blists - more mailing lists