VDD (buck3) still on after “poweroff” cmd

Forums Devices OSD32MP15x VDD (buck3) still on after “poweroff” cmd

Viewing 4 reply threads
  • Author
    Posts
    • #13475
      Sylvain BourréSylvainB
      Participant

        Hi,

        We’ve got a VDD shutdown issue on our custom hw design:
        – The issue is that VDD is still ON after a “poweroff” command.
        – FYI: as expected VDD gets OFF after a long press on the PMIC onkey or after writing 0x01 into PMIC’s MAIN_CR register.

        I’ve been able to reproduce this issue using a BRK eval board and the OpenSTLinux v3.0 image available from your web site (https://octavosystems.com/app_notes/osd32mp1-brk-getting-started/#st).

        Is this a known issue ? How to fix this ?

        Thanks in advance,
        Sylvain.

      • #13492
        Neeraj Kumar Reddy DantuNeeraj Dantu
        Moderator

          Hey Sylvain,

          Thank you for reporting this issue. It does appear that VDD stays on after issuing “poweroff” or “shutdown” command. This is likely from a bug in the secure monitor firmware that controls the PMIC. This behavior is consistent in OpenSTLinux V3, on ST dev boards(tested on DK2) as well.

          ST’s is switching support to OPTEE for V4 and future releases. I verified that the DK2 does not fail to turn OFF VDD when OPTEE boot chain(https://wiki.st.com/stm32mpu/wiki/Boot_chain_overview) is used. We will update our support for OPTEE for OSD dev boards. We recommend you update your boot chain as well.

          Best,

          Neeraj

        • #13495
          Sylvain BourréSylvainB
          Participant

            Thank you Neeraj !

          • #13511
            Carlos Perezcoloradocarlos
            Participant

              Sylvain,

              You may want to check your device tree settings as they affect the behavior of Linux shutdown and the configuration of the PMIC regulators when the board transitions to another low-power state.

              The first is the “standby-ddr-off” node. The TF-A device tree in the BRK dunfell branch has this set to “regulator-on-in-suspend” for vdd (buck3).

              https://github.com/octavosystems/meta-octavo-osd32mp1/blob/35adfcaff2d3d27eed1a496181d52ab9b6c81e7b/recipes-bsp/trusted-firmware-a/files/0001-Add-OSD32MP1-BRK-Device-tree-support.patch#L339

              The second is the “system_off_soc_mode”. The dunfell device tree shows this to be “STM32_PM_CSTOP_ALLOW_STANDBY_DDR_OFF”.

              https://github.com/octavosystems/meta-octavo-osd32mp1/blob/35adfcaff2d3d27eed1a496181d52ab9b6c81e7b/recipes-bsp/trusted-firmware-a/files/0001-Add-OSD32MP1-BRK-Device-tree-support.patch#L512

              I believe what you are observing with “shutdown” is the SOC in standby/suspend with the DDR powered off but the VDD regulator on.

              If you want a complete PMIC shutdown, then you may want to consider “STM32_PM_SHUTDOWN” instead.

              Which mode to use depends on your requirements, for instance, you may want to use one of the special GPIO’s pins to wakeup from standby. In this case, leaving VDD powered up will facilitate this. The Octavo website has a good writeup on using the low-power states.

              Carlos

            • #13577
              Sylvain BourréSylvainB
              Participant

                Hi Carlos, thank you for your answer. I missed this notification 🙁
                FYI, I fixed this issue by patching the TFA code… I’ll try STM32_PM_SHUTDOWN when I have time as this solution is way more elegant.

                Have a good day,
                Sylvain.

                • #13578
                  Carlos Perezcoloradocarlos
                  Participant

                    Sylvain,

                    This forum has been absorbing my replies. That is why you probably didn’t see it. I am surprised it showed up eventually.

                    Carlos

              Viewing 4 reply threads
              • You must be logged in to reply to this topic.