Skip to content
Snippets Groups Projects
Commit bed0db59 authored by Nicolas Le Bayon's avatar Nicolas Le Bayon Committed by Sebastien Pasdeloup
Browse files

stm32mp1: check DDR ASR/SSR modes support


Add a platform function to know if Software/Automatic Self-Refresh is
supported.

Change-Id: Ie20dd21c25ef3dd4c56bb9fe10c7e9b14b190134
Signed-off-by: default avatarNicolas Le Bayon <nicolas.le.bayon@st.com>
Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/tf-a/+/153156


Reviewed-by: default avatarCITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
Reviewed-by: default avatarCIBUILD <smet-aci-builds@lists.codex.cro.st.com>
Reviewed-by: default avatarEtienne CARRIERE <etienne.carriere@st.com>
Reviewed-by: default avatarYann GAUTIER <yann.gautier@st.com>
parent dd7444ee
No related branches found
No related tags found
No related merge requests found
......@@ -27,6 +27,9 @@ uintptr_t stm32mp_ddrctrl_base(void);
/* Return the base address of the DDR PHY */
uintptr_t stm32mp_ddrphyc_base(void);
/* Check DDR Software/Automatic Self-Refresh support */
bool stm32mp_ddr_supports_ssr_asr(void);
/* Return the base address of the PWR peripheral */
uintptr_t stm32mp_pwr_base(void);
......
......@@ -612,6 +612,15 @@ bool stm32mp_is_single_core(void)
}
}
/* Return true if DDR supports Software/Automatic Self-Refresh */
bool stm32mp_ddr_supports_ssr_asr(void)
{
uintptr_t ddrctrl_base = stm32mp_ddrctrl_base();
uint32_t mstr = mmio_read_32(ddrctrl_base + DDRCTRL_MSTR);
return (mstr & DDRCTRL_MSTR_LPDDR2) != 0U;
}
/* Return true when device is in closed state */
bool stm32mp_is_closed_device(void)
{
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment