diff mbox series

boot/ti-k3-boot-firmware: bump to latest version

Message ID 20240402153328.1859642-1-bb@ti.com
State New
Headers show
Series boot/ti-k3-boot-firmware: bump to latest version | expand

Commit Message

Bryan Brattlof April 2, 2024, 3:33 p.m. UTC
The 09.02.00.009 release of ti-linux-firmware has the latest updates to
TI's TIFS, DM and DMSC firmware needed for the K3 generation of
processors. Update to pull in these latest updates.

Signed-off-by: Bryan Brattlof <bb@ti.com>
---
 boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash | 2 +-
 boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk   | 4 +---
 2 files changed, 2 insertions(+), 4 deletions(-)


base-commit: d69e13b0e965961019b4aab38e187267af3cab78

Comments

Thomas Petazzoni April 3, 2024, 7:36 p.m. UTC | #1
Hello Bryan,

On Tue, 2 Apr 2024 10:33:28 -0500
Bryan Brattlof via buildroot <buildroot@buildroot.org> wrote:

> The 09.02.00.009 release of ti-linux-firmware has the latest updates to
> TI's TIFS, DM and DMSC firmware needed for the K3 generation of
> processors. Update to pull in these latest updates.
> 
> Signed-off-by: Bryan Brattlof <bb@ti.com>

Thanks for this update! Maybe this question has been asked before, but
how much version dependency there is between these firmware files, and
the U-Boot/TF-A/Linux code? Do they need to be exactly in sync to work
altogether, or do newer firmware versions provide proper backward
compatibility and therefore continue to work even if the rest of the
software stack (U-Boot, TF-A, Linux) is older?

Thanks!

Thomas
Bryan Brattlof April 4, 2024, 4:29 p.m. UTC | #2
Hi Thomas,

On April  3, 2024 thus sayeth Thomas Petazzoni:
> Hello Bryan,
> 
> On Tue, 2 Apr 2024 10:33:28 -0500
> Bryan Brattlof via buildroot <buildroot@buildroot.org> wrote:
> 
> > The 09.02.00.009 release of ti-linux-firmware has the latest updates to
> > TI's TIFS, DM and DMSC firmware needed for the K3 generation of
> > processors. Update to pull in these latest updates.
> > 
> > Signed-off-by: Bryan Brattlof <bb@ti.com>
> 
> Thanks for this update! Maybe this question has been asked before, but
> how much version dependency there is between these firmware files, and
> the U-Boot/TF-A/Linux code? Do they need to be exactly in sync to work
> altogether, or do newer firmware versions provide proper backward
> compatibility and therefore continue to work even if the rest of the
> software stack (U-Boot, TF-A, Linux) is older?
> 

We try hard to ensure backward compatibility goes back to when the 
device was first sent upstream. Though some of these features will bring 
in some differences with the traditional way things are handled by the 
firmware. One example I can think of is DM will now warn (NAK) invalid 
clock requests which only really pollutes the logs:

  [    0.956700] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=13, clk=7, ret=-19
  [    0.968958] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=36, clk=9, ret=-19
  [    0.980134] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=36, clk=15, ret=-19

Other features will update how PLLs are configured but they are 
completely transparent and solely in firmware control.

If you see any issue or regressions in the wild let me know and I'll try 
to get them addressed.

~Bryan
Heiko Thiery April 8, 2024, 3:26 p.m. UTC | #3
Hi,


Am Di., 2. Apr. 2024 um 19:59 Uhr schrieb Bryan Brattlof via buildroot
<buildroot@buildroot.org>:
>
> The 09.02.00.009 release of ti-linux-firmware has the latest updates to
> TI's TIFS, DM and DMSC firmware needed for the K3 generation of
> processors. Update to pull in these latest updates.

This update is needed for supporting j722s SoCs.

>
> Signed-off-by: Bryan Brattlof <bb@ti.com>

Reviewed-by: Heiko Thiery <heiko.thiery@gmail.com>

> ---
>  boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash | 2 +-
>  boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk   | 4 +---
>  2 files changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash
> index 95131180ef400..2398d02da258a 100644
> --- a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash
> +++ b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash
> @@ -1,3 +1,3 @@
>  # Locally calculated
>  sha256  ab20ffbe7bba7e94be246b3417d33a914b3f07c16c47ef5a7f7602349a666a61  LICENSE.ti
> -sha256  6032a258ce731d987576115f5de44c677a6b0cf8bddcd61a9a2852928bdfff92  ti-linux-firmware-08.06.00.006.tar.xz
> +sha256  ae888a0a22f8c5b8fe841236d6e40bb2f821d9a4161dab6924fd989e1467ef0e  ti-linux-firmware-09.02.00.009.tar.xz
> diff --git a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk
> index 1f8ade207c13a..9332732ad4a32 100644
> --- a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk
> +++ b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk
> @@ -4,9 +4,7 @@
>  #
>  ################################################################################
>
> -# The hash 340194800a581baf976360386dfc7b5acab8d948 defined in the
> -# Makefile of ti-k3-image-gen corresponds to the tag 08.06.00.006.
> -TI_K3_BOOT_FIRMWARE_VERSION = 08.06.00.006
> +TI_K3_BOOT_FIRMWARE_VERSION = 09.02.00.009
>  TI_K3_BOOT_FIRMWARE_SITE = https://git.ti.com/cgit/processor-firmware/ti-linux-firmware/snapshot
>  TI_K3_BOOT_FIRMWARE_SOURCE = ti-linux-firmware-$(TI_K3_BOOT_FIRMWARE_VERSION).tar.xz
>  TI_K3_BOOT_FIRMWARE_INSTALL_IMAGES = YES
>
> base-commit: d69e13b0e965961019b4aab38e187267af3cab78
> --
> 2.43.2
>
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
Andreas Dannenberg April 9, 2024, 9:30 p.m. UTC | #4
Bryan,

On Thu, Apr 04, 2024 at 11:29:01AM -0500, Bryan Brattlof via buildroot wrote:
> Hi Thomas,
> 
> On April  3, 2024 thus sayeth Thomas Petazzoni:
> > Hello Bryan,
> > 
> > On Tue, 2 Apr 2024 10:33:28 -0500
> > Bryan Brattlof via buildroot <buildroot@buildroot.org> wrote:
> > 
> > > The 09.02.00.009 release of ti-linux-firmware has the latest updates to
> > > TI's TIFS, DM and DMSC firmware needed for the K3 generation of
> > > processors. Update to pull in these latest updates.
> > > 
> > > Signed-off-by: Bryan Brattlof <bb@ti.com>
> > 
> > Thanks for this update! Maybe this question has been asked before, but
> > how much version dependency there is between these firmware files, and
> > the U-Boot/TF-A/Linux code? Do they need to be exactly in sync to work
> > altogether, or do newer firmware versions provide proper backward
> > compatibility and therefore continue to work even if the rest of the
> > software stack (U-Boot, TF-A, Linux) is older?
> > 
> 
> We try hard to ensure backward compatibility goes back to when the 
> device was first sent upstream.

How about compatibility with different iterations of the "boardconfig"?
As you know it's a binary blob that gets consumed/used by SYSFW/TIFS
during the boot. Is this also considered "stable ABI"?


--
Andreas Dannenberg
Texas Instruments Inc



> Though some of these features will bring 
> in some differences with the traditional way things are handled by the 
> firmware. One example I can think of is DM will now warn (NAK) invalid 
> clock requests which only really pollutes the logs:
> 
>   [    0.956700] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=13, clk=7, ret=-19
>   [    0.968958] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=36, clk=9, ret=-19
>   [    0.980134] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=36, clk=15, ret=-19
> 
> Other features will update how PLLs are configured but they are 
> completely transparent and solely in firmware control.
> 
> If you see any issue or regressions in the wild let me know and I'll try 
> to get them addressed.
> 
> ~Bryan
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
Bryan Brattlof April 10, 2024, 12:09 a.m. UTC | #5
Hi Andreas,

On April  9, 2024 thus sayeth Andreas Dannenberg:
> Bryan,
> 
> On Thu, Apr 04, 2024 at 11:29:01AM -0500, Bryan Brattlof via buildroot wrote:
> > Hi Thomas,
> > 
> > On April  3, 2024 thus sayeth Thomas Petazzoni:
> > > Hello Bryan,
> > > 
> > > On Tue, 2 Apr 2024 10:33:28 -0500
> > > Bryan Brattlof via buildroot <buildroot@buildroot.org> wrote:
> > > 
> > > > The 09.02.00.009 release of ti-linux-firmware has the latest updates to
> > > > TI's TIFS, DM and DMSC firmware needed for the K3 generation of
> > > > processors. Update to pull in these latest updates.
> > > > 
> > > > Signed-off-by: Bryan Brattlof <bb@ti.com>
> > > 
> > > Thanks for this update! Maybe this question has been asked before, but
> > > how much version dependency there is between these firmware files, and
> > > the U-Boot/TF-A/Linux code? Do they need to be exactly in sync to work
> > > altogether, or do newer firmware versions provide proper backward
> > > compatibility and therefore continue to work even if the rest of the
> > > software stack (U-Boot, TF-A, Linux) is older?
> > > 
> > 
> > We try hard to ensure backward compatibility goes back to when the 
> > device was first sent upstream.
> 
> How about compatibility with different iterations of the "boardconfig"?
> As you know it's a binary blob that gets consumed/used by SYSFW/TIFS
> during the boot. Is this also considered "stable ABI"?
>

It is considered a stable ABI but there have been some updates to what 
resources are reserved by firmware that shouldn't have any impact on 
boards.

Firmware now reserves an extra resource on the am62x and am62ax so we 
can put the R5, running DM firmware, into WFI so TIFS can interrupt it 
once a message comes in. Not giving that interrupt to TIFS will prevent 
DM from going into WFI and we lose out on a tiny bit of power savings 
with the R5 spinning.

eg: 87720385ab69396d045b9d9cf045896593f1774c in U-Boot

~Bryan

> 
> > Though some of these features will bring 
> > in some differences with the traditional way things are handled by the 
> > firmware. One example I can think of is DM will now warn (NAK) invalid 
> > clock requests which only really pollutes the logs:
> > 
> >   [    0.956700] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=13, clk=7, ret=-19
> >   [    0.968958] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=36, clk=9, ret=-19
> >   [    0.980134] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=36, clk=15, ret=-19
> > 
> > Other features will update how PLLs are configured but they are 
> > completely transparent and solely in firmware control.
> > 
> > If you see any issue or regressions in the wild let me know and I'll try 
> > to get them addressed.
> > 
> > ~Bryan
> > _______________________________________________
> > buildroot mailing list
> > buildroot@buildroot.org
> > https://lists.buildroot.org/mailman/listinfo/buildroot
Andreas Dannenberg April 10, 2024, 12:48 a.m. UTC | #6
Hi Bryan,

On Tue, Apr 09, 2024 at 07:09:01PM -0500, Bryan Brattlof wrote:
> Hi Andreas,
> 
> On April  9, 2024 thus sayeth Andreas Dannenberg:
> > Bryan,
> > 
> > On Thu, Apr 04, 2024 at 11:29:01AM -0500, Bryan Brattlof via buildroot wrote:
> > > Hi Thomas,
> > > 
> > > On April  3, 2024 thus sayeth Thomas Petazzoni:
> > > > Hello Bryan,
> > > > 
> > > > On Tue, 2 Apr 2024 10:33:28 -0500
> > > > Bryan Brattlof via buildroot <buildroot@buildroot.org> wrote:
> > > > 
> > > > > The 09.02.00.009 release of ti-linux-firmware has the latest updates to
> > > > > TI's TIFS, DM and DMSC firmware needed for the K3 generation of
> > > > > processors. Update to pull in these latest updates.
> > > > > 
> > > > > Signed-off-by: Bryan Brattlof <bb@ti.com>
> > > > 
> > > > Thanks for this update! Maybe this question has been asked before, but
> > > > how much version dependency there is between these firmware files, and
> > > > the U-Boot/TF-A/Linux code? Do they need to be exactly in sync to work
> > > > altogether, or do newer firmware versions provide proper backward
> > > > compatibility and therefore continue to work even if the rest of the
> > > > software stack (U-Boot, TF-A, Linux) is older?
> > > > 
> > > 
> > > We try hard to ensure backward compatibility goes back to when the 
> > > device was first sent upstream.
> > 
> > How about compatibility with different iterations of the "boardconfig"?
> > As you know it's a binary blob that gets consumed/used by SYSFW/TIFS
> > during the boot. Is this also considered "stable ABI"?
> >
> 
> It is considered a stable ABI but there have been some updates to what 
> resources are reserved by firmware that shouldn't have any impact on 
> boards.

Thanks, I just wanted to have this quick discussion here so folks can
learn from it. These aspects are quite TI-specific and not immediately
obvious to anyone not familiar with our K3 family of devices.

--
Andreas Dannenberg
Texas Instruments Inc


> Firmware now reserves an extra resource on the am62x and am62ax so we 
> can put the R5, running DM firmware, into WFI so TIFS can interrupt it 
> once a message comes in. Not giving that interrupt to TIFS will prevent 
> DM from going into WFI and we lose out on a tiny bit of power savings 
> with the R5 spinning.
> 
> eg: 87720385ab69396d045b9d9cf045896593f1774c in U-Boot
> 
> ~Bryan
> 
> > 
> > > Though some of these features will bring 
> > > in some differences with the traditional way things are handled by the 
> > > firmware. One example I can think of is DM will now warn (NAK) invalid 
> > > clock requests which only really pollutes the logs:
> > > 
> > >   [    0.956700] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=13, clk=7, ret=-19
> > >   [    0.968958] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=36, clk=9, ret=-19
> > >   [    0.980134] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=36, clk=15, ret=-19
> > > 
> > > Other features will update how PLLs are configured but they are 
> > > completely transparent and solely in firmware control.
> > > 
> > > If you see any issue or regressions in the wild let me know and I'll try 
> > > to get them addressed.
> > > 
> > > ~Bryan
> > > _______________________________________________
> > > buildroot mailing list
> > > buildroot@buildroot.org
> > > https://lists.buildroot.org/mailman/listinfo/buildroot
Andreas Dannenberg April 10, 2024, 10:50 a.m. UTC | #7
Bryan, All,

On Tue, Apr 02, 2024 at 10:33:28AM -0500, Bryan Brattlof via buildroot wrote:
> The 09.02.00.009 release of ti-linux-firmware has the latest updates to
> TI's TIFS, DM and DMSC firmware needed for the K3 generation of
> processors. Update to pull in these latest updates.
> 
> Signed-off-by: Bryan Brattlof <bb@ti.com>

I just tested this patch to enable latest TIFS/SYSFW device firmwares on
top of....

d01e13c4d4 ("package/python3: fix cross builds when host and target use the same SOABI")

...and can confirm the following 4 platforms booted without any serious
issues(*) in both U-Boot and Linux Kernel.

1) SK-AM62 (with GP silicon)
2) SK-AM62B (production board, with HS-FS silicon) 
3) SK-AM64 (with GP silicon)
4) SK-AM62B (production board, with HS-FS silicon) 

With this...

Tested-by: Andreas Dannenberg <dannenberg@ti.com>


(*) I did see some extra Kernel warnings related to what Bryan pointed
to on this thread on AM62 GP. I wouldn't care about too much except that
is the device BeaglePlay is using. So something to keep an eye out for
to fix when adding BeaglePlay support to Buildroot. These warnings where
NOT there when booting AM62 GP with TIFS/SYSFW v8.6, I just went back to
my earlier log to confirm.

<snip>
[    2.447524] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=40, clk=9, ret=-19
[    2.474423] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=39, clk=18, ret=-19
[    2.484806] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=39, clk=17, ret=-19
[    2.495185] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=39, clk=16, ret=-19
[    2.505570] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=39, clk=15, ret=-19
[    2.516161] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=39, clk=9, ret=-19
[    2.526765] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=38, clk=18, ret=-19
[    2.537148] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=38, clk=17, ret=-19
<snip>


Also for reference, here are the three places in the boot log that show
the new FW version (9.2.7):

U-Boot SPL 2024.01 (Apr 10 2024 - 04:49:11 -0500)
SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.7--v09.02.07 (Kool Koala)')
<...snip...>
NOTICE:  BL31: v2.7(release):v2.7
NOTICE:  BL31: Built : 04:39:08, Apr 10 2024
I/TC:
I/TC: OP-TEE version: Unknown_4.0 (gcc version 12.3.0 (Buildroot 024.02-417-g2adb5a690c)) #1 Wed Apr 10 09:39:07 UTC 2024 aarch64
I/TC: WARNING: This OP-TEE configuration might be insecure!
I/TC: WARNING: Please check ttps://optee.readthedocs.io/en/latest/architecture/porting_guidelines.html
I/TC: Primary CPU initializing
I/TC: SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.7--v09.02.07 (Kool oala)')
<...snip...>
[    1.311403] ti-sci 44043000.system-controller: ABI: 3.1 (firmware rev 0x0009 '9.2.7--v09.02.07 (Kool Koala)')
<...snip...>
Welcome to Buildroot
buildroot login:


> ---
>  boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash | 2 +-
>  boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk   | 4 +---
>  2 files changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash
> index 95131180ef400..2398d02da258a 100644
> --- a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash
> +++ b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash
> @@ -1,3 +1,3 @@
>  # Locally calculated
>  sha256  ab20ffbe7bba7e94be246b3417d33a914b3f07c16c47ef5a7f7602349a666a61  LICENSE.ti
> -sha256  6032a258ce731d987576115f5de44c677a6b0cf8bddcd61a9a2852928bdfff92  ti-linux-firmware-08.06.00.006.tar.xz
> +sha256  ae888a0a22f8c5b8fe841236d6e40bb2f821d9a4161dab6924fd989e1467ef0e  ti-linux-firmware-09.02.00.009.tar.xz
> diff --git a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk
> index 1f8ade207c13a..9332732ad4a32 100644
> --- a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk
> +++ b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk
> @@ -4,9 +4,7 @@
>  #
>  ################################################################################
>  
> -# The hash 340194800a581baf976360386dfc7b5acab8d948 defined in the
> -# Makefile of ti-k3-image-gen corresponds to the tag 08.06.00.006.
> -TI_K3_BOOT_FIRMWARE_VERSION = 08.06.00.006
> +TI_K3_BOOT_FIRMWARE_VERSION = 09.02.00.009
>  TI_K3_BOOT_FIRMWARE_SITE = https://git.ti.com/cgit/processor-firmware/ti-linux-firmware/snapshot
>  TI_K3_BOOT_FIRMWARE_SOURCE = ti-linux-firmware-$(TI_K3_BOOT_FIRMWARE_VERSION).tar.xz
>  TI_K3_BOOT_FIRMWARE_INSTALL_IMAGES = YES
> 
> base-commit: d69e13b0e965961019b4aab38e187267af3cab78
> -- 
> 2.43.2
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
Andreas Dannenberg April 10, 2024, 10:14 p.m. UTC | #8
Bryan, All,

On Wed, Apr 10, 2024 at 05:50:35AM -0500, Andreas Dannenberg via buildroot wrote:
> Bryan, All,
> 
> On Tue, Apr 02, 2024 at 10:33:28AM -0500, Bryan Brattlof via buildroot wrote:
> > The 09.02.00.009 release of ti-linux-firmware has the latest updates to
> > TI's TIFS, DM and DMSC firmware needed for the K3 generation of
> > processors. Update to pull in these latest updates.
> > 
> > Signed-off-by: Bryan Brattlof <bb@ti.com>
> 
> I just tested this patch to enable latest TIFS/SYSFW device firmwares on
> top of....
> 
> d01e13c4d4 ("package/python3: fix cross builds when host and target use the same SOABI")
> 
> ...and can confirm the following 4 platforms booted without any serious
> issues(*) in both U-Boot and Linux Kernel.
> 
> 1) SK-AM62 (with GP silicon)
> 2) SK-AM62B (production board, with HS-FS silicon) 
> 3) SK-AM64 (with GP silicon)
> 4) SK-AM62B (production board, with HS-FS silicon) 
> 
> With this...
> 
> Tested-by: Andreas Dannenberg <dannenberg@ti.com>
> 
> 
> (*) I did see some extra Kernel warnings related to what Bryan pointed
> to on this thread on AM62 GP. I wouldn't care about too much except that
> is the device BeaglePlay is using. So something to keep an eye out for
> to fix when adding BeaglePlay support to Buildroot. These warnings where
> NOT there when booting AM62 GP with TIFS/SYSFW v8.6, I just went back to
> my earlier log to confirm.
> 
> <snip>
> [    2.447524] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=40, clk=9, ret=-19
> [    2.474423] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=39, clk=18, ret=-19
> [    2.484806] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=39, clk=17, ret=-19
> [    2.495185] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=39, clk=16, ret=-19
> [    2.505570] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=39, clk=15, ret=-19
> [    2.516161] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=39, clk=9, ret=-19
> [    2.526765] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=38, clk=18, ret=-19
> [    2.537148] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=38, clk=17, ret=-19
> <snip>

I need to correct my yesterday's statement/post. Those TISCI-related
warnings (from the device manager FW) are also present on AM62 HS-FS
silicon, I was looking at the wrong log. So this concern is NOT limited
to GP device variants.

Anyways I don't think this should get in the way of accepting this patch
as the warnings are harmless as per Bryan's comment.

(I haven't tried it) but looking further it looks like the fix is the
following kernel upstream commit. It's part of the TI SDK also hence is
why we dont; see this issue with current TI Linux SDK v9.2.

"clk: keystone: sci-clk: Adding support for non contiguous clocks"
https://github.com/torvalds/linux/commit/ad3ac13c6ec318b43e769cc9ffde67528e58e555

I'll double-check this.


--
Andreas Dannenberg
Texas Instruments Inc



> 
> Also for reference, here are the three places in the boot log that show
> the new FW version (9.2.7):
> 
> U-Boot SPL 2024.01 (Apr 10 2024 - 04:49:11 -0500)
> SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.7--v09.02.07 (Kool Koala)')
> <...snip...>
> NOTICE:  BL31: v2.7(release):v2.7
> NOTICE:  BL31: Built : 04:39:08, Apr 10 2024
> I/TC:
> I/TC: OP-TEE version: Unknown_4.0 (gcc version 12.3.0 (Buildroot 024.02-417-g2adb5a690c)) #1 Wed Apr 10 09:39:07 UTC 2024 aarch64
> I/TC: WARNING: This OP-TEE configuration might be insecure!
> I/TC: WARNING: Please check ttps://optee.readthedocs.io/en/latest/architecture/porting_guidelines.html
> I/TC: Primary CPU initializing
> I/TC: SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.7--v09.02.07 (Kool oala)')
> <...snip...>
> [    1.311403] ti-sci 44043000.system-controller: ABI: 3.1 (firmware rev 0x0009 '9.2.7--v09.02.07 (Kool Koala)')
> <...snip...>
> Welcome to Buildroot
> buildroot login:
> 
> 
> > ---
> >  boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash | 2 +-
> >  boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk   | 4 +---
> >  2 files changed, 2 insertions(+), 4 deletions(-)
> > 
> > diff --git a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash
> > index 95131180ef400..2398d02da258a 100644
> > --- a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash
> > +++ b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash
> > @@ -1,3 +1,3 @@
> >  # Locally calculated
> >  sha256  ab20ffbe7bba7e94be246b3417d33a914b3f07c16c47ef5a7f7602349a666a61  LICENSE.ti
> > -sha256  6032a258ce731d987576115f5de44c677a6b0cf8bddcd61a9a2852928bdfff92  ti-linux-firmware-08.06.00.006.tar.xz
> > +sha256  ae888a0a22f8c5b8fe841236d6e40bb2f821d9a4161dab6924fd989e1467ef0e  ti-linux-firmware-09.02.00.009.tar.xz
> > diff --git a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk
> > index 1f8ade207c13a..9332732ad4a32 100644
> > --- a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk
> > +++ b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk
> > @@ -4,9 +4,7 @@
> >  #
> >  ################################################################################
> >  
> > -# The hash 340194800a581baf976360386dfc7b5acab8d948 defined in the
> > -# Makefile of ti-k3-image-gen corresponds to the tag 08.06.00.006.
> > -TI_K3_BOOT_FIRMWARE_VERSION = 08.06.00.006
> > +TI_K3_BOOT_FIRMWARE_VERSION = 09.02.00.009
> >  TI_K3_BOOT_FIRMWARE_SITE = https://git.ti.com/cgit/processor-firmware/ti-linux-firmware/snapshot
> >  TI_K3_BOOT_FIRMWARE_SOURCE = ti-linux-firmware-$(TI_K3_BOOT_FIRMWARE_VERSION).tar.xz
> >  TI_K3_BOOT_FIRMWARE_INSTALL_IMAGES = YES
> > 
> > base-commit: d69e13b0e965961019b4aab38e187267af3cab78
> > -- 
> > 2.43.2
> > 
> > _______________________________________________
> > buildroot mailing list
> > buildroot@buildroot.org
> > https://lists.buildroot.org/mailman/listinfo/buildroot
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
Bryan Brattlof April 11, 2024, 11:43 a.m. UTC | #9
On April  9, 2024 thus sayeth Andreas Dannenberg:
> Hi Bryan,
> 
> On Tue, Apr 09, 2024 at 07:09:01PM -0500, Bryan Brattlof wrote:
> > Hi Andreas,
> > 
> > On April  9, 2024 thus sayeth Andreas Dannenberg:
> > > Bryan,
> > > 
> > > On Thu, Apr 04, 2024 at 11:29:01AM -0500, Bryan Brattlof via buildroot wrote:
> > > > Hi Thomas,
> > > > 
> > > > On April  3, 2024 thus sayeth Thomas Petazzoni:
> > > > > Hello Bryan,
> > > > > 
> > > > > On Tue, 2 Apr 2024 10:33:28 -0500
> > > > > Bryan Brattlof via buildroot <buildroot@buildroot.org> wrote:
> > > > > 
> > > > > > The 09.02.00.009 release of ti-linux-firmware has the latest updates to
> > > > > > TI's TIFS, DM and DMSC firmware needed for the K3 generation of
> > > > > > processors. Update to pull in these latest updates.
> > > > > > 
> > > > > > Signed-off-by: Bryan Brattlof <bb@ti.com>
> > > > > 
> > > > > Thanks for this update! Maybe this question has been asked before, but
> > > > > how much version dependency there is between these firmware files, and
> > > > > the U-Boot/TF-A/Linux code? Do they need to be exactly in sync to work
> > > > > altogether, or do newer firmware versions provide proper backward
> > > > > compatibility and therefore continue to work even if the rest of the
> > > > > software stack (U-Boot, TF-A, Linux) is older?
> > > > > 
> > > > 
> > > > We try hard to ensure backward compatibility goes back to when the 
> > > > device was first sent upstream.
> > > 
> > > How about compatibility with different iterations of the "boardconfig"?
> > > As you know it's a binary blob that gets consumed/used by SYSFW/TIFS
> > > during the boot. Is this also considered "stable ABI"?
> > >
> > 
> > It is considered a stable ABI but there have been some updates to what 
> > resources are reserved by firmware that shouldn't have any impact on 
> > boards.
> 
> Thanks, I just wanted to have this quick discussion here so folks can
> learn from it. These aspects are quite TI-specific and not immediately
> obvious to anyone not familiar with our K3 family of devices.
> 

No worries! I knew you knew all of this so I was curious :)

~Bryan
diff mbox series

Patch

diff --git a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash
index 95131180ef400..2398d02da258a 100644
--- a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash
+++ b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash
@@ -1,3 +1,3 @@ 
 # Locally calculated
 sha256  ab20ffbe7bba7e94be246b3417d33a914b3f07c16c47ef5a7f7602349a666a61  LICENSE.ti
-sha256  6032a258ce731d987576115f5de44c677a6b0cf8bddcd61a9a2852928bdfff92  ti-linux-firmware-08.06.00.006.tar.xz
+sha256  ae888a0a22f8c5b8fe841236d6e40bb2f821d9a4161dab6924fd989e1467ef0e  ti-linux-firmware-09.02.00.009.tar.xz
diff --git a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk
index 1f8ade207c13a..9332732ad4a32 100644
--- a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk
+++ b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk
@@ -4,9 +4,7 @@ 
 #
 ################################################################################
 
-# The hash 340194800a581baf976360386dfc7b5acab8d948 defined in the
-# Makefile of ti-k3-image-gen corresponds to the tag 08.06.00.006.
-TI_K3_BOOT_FIRMWARE_VERSION = 08.06.00.006
+TI_K3_BOOT_FIRMWARE_VERSION = 09.02.00.009
 TI_K3_BOOT_FIRMWARE_SITE = https://git.ti.com/cgit/processor-firmware/ti-linux-firmware/snapshot
 TI_K3_BOOT_FIRMWARE_SOURCE = ti-linux-firmware-$(TI_K3_BOOT_FIRMWARE_VERSION).tar.xz
 TI_K3_BOOT_FIRMWARE_INSTALL_IMAGES = YES