| 047d7d1b | 02-Aug-2023 |
Jacky Bai <ping.bai@nxp.com> |
fix(imx8ulp): increase the mmap region num
the mmap region num is not enough for the mmap regions, so increase it, increase the xlat_table num too.
Signed-off-by: Jacky Bai <ping.bai@nxp.com> Chang
fix(imx8ulp): increase the mmap region num
the mmap region num is not enough for the mmap regions, so increase it, increase the xlat_table num too.
Signed-off-by: Jacky Bai <ping.bai@nxp.com> Change-Id: I2a2515b291e96cc12398a2c2c526351342811fff
show more ...
|
| 8d50c91b | 27-Jul-2023 |
Ji Luo <ji.luo@nxp.com> |
feat(imx8ulp): adjust the dram mapped region
below commit mapped 16 MB memory from the start of DRAM(0x80000000), which may have conflict with the shared memory used by Trusty OS: LF-8819: plat: i
feat(imx8ulp): adjust the dram mapped region
below commit mapped 16 MB memory from the start of DRAM(0x80000000), which may have conflict with the shared memory used by Trusty OS: LF-8819: plat: imx8ulp: ddrc switch auto low power and software interface
change the mapped memory to 'vdev0buffer' reserved memory (0x8ff00000) to avoid memory conflict. This commit also bumps the XTLB tables to avoid mapping failure.
Signed-off-by: Ji Luo <ji.luo@nxp.com> Change-Id: I1a7af958af47e3fc9955d0a80d1649971e843eab
show more ...
|
| ee25e6a5 | 14-Apr-2023 |
Adrian Alonso <adrian.alonso@nxp.com> |
feat(imx8ulp): ddrc switch auto low power and software interface
Enable switch between DDRC Auto low power and software/hardware control modes DDRC Auto low-power mode is used when system is active,
feat(imx8ulp): ddrc switch auto low power and software interface
Enable switch between DDRC Auto low power and software/hardware control modes DDRC Auto low-power mode is used when system is active, software/hardware control mode is used when going into suspend. Enable switching between Auto mode and SW/HW mode in enter/exit retention routines.
Set LPI_SRPD_LONG_MCCLK_GATE_WAKEUP_F2 Max setting to allow LPDDR_EN_CLKGATE reload LPI_SRPD_LONG_MCCLK_GATE_WAKEUP_F2 to exit retention mode
Signed-off-by: Pascal Mareau <pascal.mareau@nxp.com> Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com> Signed-off-by: Hongting Ting <hongting.dong@nxp.com> Signed-off-by: Jacky Bai <ping.bai@nxp.com> Change-Id: I3c4b6f7bc6ca02649ff27cd3d9a0c50dab3a3ad0
show more ...
|
| c514d3cf | 24-Apr-2023 |
Jacky Bai <ping.bai@nxp.com> |
feat(imx8ulp): add some delay before cmc1 access
When resume from APD sleep mode, need to add a small delay before accessing the CMC1 register.
Signed-off-by: Jacky Bai <ping.bai@nxp.com> Reviewed-
feat(imx8ulp): add some delay before cmc1 access
When resume from APD sleep mode, need to add a small delay before accessing the CMC1 register.
Signed-off-by: Jacky Bai <ping.bai@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com> Change-Id: Ic8acdf58a3bf82b1791e7ae7f173f8c94c56b49d
show more ...
|
| 4fafccb9 | 13-Dec-2022 |
Jacky Bai <ping.bai@nxp.com> |
feat(imx8ulp): add a flag check for the ddr status
for some user case, the ddr may need to be controlled by RTD side to save power, when APD resume from low power mode, it should wait ddr is ready f
feat(imx8ulp): add a flag check for the ddr status
for some user case, the ddr may need to be controlled by RTD side to save power, when APD resume from low power mode, it should wait ddr is ready for access. currently we use a GPR in SIM_RTD_SEC as a flag to indicate when the DDR is for access, non-zero value means the DDR can be access from APD.
Signed-off-by: Jacky Bai <ping.bai@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> Change-Id: I6fb0cc17a040d803a597304620202423f646f294
show more ...
|
| e1d5c3c8 | 30-Aug-2022 |
Jacky Bai <ping.bai@nxp.com> |
fix(imx8ulp): add sw workaround for csi/hotplug test hang
When doing CSI stress test after cpu hotplug, sometimes, system will hang in CSI test. After some debug, we find that if slow down the APD N
fix(imx8ulp): add sw workaround for csi/hotplug test hang
When doing CSI stress test after cpu hotplug, sometimes, system will hang in CSI test. After some debug, we find that if slow down the APD NIC frequency before power on the offline CPU, the issue is gone. For now, just add such SW workaround.
Signed-off-by: Jacky Bai <ping.bai@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com> Change-Id: I39a49efc382fbebf46e1ff15c93d506bd5f6bec1
show more ...
|
| 416c4433 | 27-May-2022 |
Jacky Bai <ping.bai@nxp.com> |
feat(imx8ulp): adjust the voltage when sys dvfs enabled
When system level DVFS is enabled, voltage can be changed to optimize the power consumption.
Signed-off-by: Jacky Bai <ping.bai@nxp.com> Revi
feat(imx8ulp): adjust the voltage when sys dvfs enabled
When system level DVFS is enabled, voltage can be changed to optimize the power consumption.
Signed-off-by: Jacky Bai <ping.bai@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com> Change-Id: Idfa0e637402078f3daf6e7c4ea1abb9af7675494
show more ...
|
| caee2733 | 25-Jan-2022 |
Jacky Bai <ping.bai@nxp.com> |
feat(imx8ulp): enable the DDR frequency scaling support
Enable the DDR frequency scaling support on i.MX8ULP. Normally, the freq_index define is as below:
0: boot frequency; 1: low frequency(PLL
feat(imx8ulp): enable the DDR frequency scaling support
Enable the DDR frequency scaling support on i.MX8ULP. Normally, the freq_index define is as below:
0: boot frequency; 1: low frequency(PLL bypassed); 2. high frequency(PLL ON).
Currently, DDR DFS only do frequency switching between Low freq and high freq.
Signed-off-by: Jacky Bai <ping.bai@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com> Change-Id: I3acd8bdf75e2dd6dff645b9f597dcfc0a756c428
show more ...
|
| 68f132b8 | 21-Nov-2022 |
Ye Li <ye.li@nxp.com> |
fix(imx8ulp): fix suspend/resume issue when DBD owner is s400 only
After resume from APD power down, XRDC is initialized by S400 but the PAC2 and MSC0-2 are not configured, so only DBD owner can acc
fix(imx8ulp): fix suspend/resume issue when DBD owner is s400 only
After resume from APD power down, XRDC is initialized by S400 but the PAC2 and MSC0-2 are not configured, so only DBD owner can access the resources.
We have to move GPIO restore after TFA XRDC reinit and configure PDAC for PCC5 before enabling eDMA2 MP clock
Signed-off-by: Ye Li <ye.li@nxp.com> Signed-off-by: Jacky Bai <ping.bai@nxp.com> Change-Id: I82748de080151b0bdf1cace092b7892a1e402a27
show more ...
|
| d159c005 | 15-Mar-2023 |
Ye Li <ye.li@nxp.com> |
feat(imx8ulp): update XRDC for ELE to access DDR with CA35 DID
In order to isolate application memories, ELE FW introduces a new policy which mimics the requestor attributes (DID, TZ). So ELE config
feat(imx8ulp): update XRDC for ELE to access DDR with CA35 DID
In order to isolate application memories, ELE FW introduces a new policy which mimics the requestor attributes (DID, TZ). So ELE configures SCM to access to external memory with CA35 DID when CA35 request something from ELE.
Because ELE accesses DDR through NIC_LPAV, the XRDC MRC6 must be configured for CA35 DID 7 to authorize the access.
Signed-off-by: Ye Li <ye.li@nxp.com> Signed-off-by: Jacky Bai <ping.bai@nxp.com> Change-Id: I9e91a1b2798e8d15127d1bfa9aa0ffc612fd8981
show more ...
|
| 5fd06421 | 06-Sep-2022 |
Ji Luo <ji.luo@nxp.com> |
feat(imx8ulp): add memory region policy
set the memory region policy for secure heap(0xA9600000 ~ 0xAF600000), it can only be RWX by secure master. At the same time, restrict G2D and DCnano(domain 3
feat(imx8ulp): add memory region policy
set the memory region policy for secure heap(0xA9600000 ~ 0xAF600000), it can only be RWX by secure master. At the same time, restrict G2D and DCnano(domain 3) to write non-secure memory when they are set as secure master.
Signed-off-by: Ji Luo <ji.luo@nxp.com> Signed-off-by: Jacky Bai <ping.bai@nxp.com> Change-Id: If53e130eaeb1ac867ee56e4af04e3be29dec9857
show more ...
|
| e7b82a7d | 14-Jun-2021 |
Clement Faure <clement.faure@nxp.com> |
feat(imx8ulp): add OPTEE support
Add opteed support for imx8ulp.
Signed-off-by: Clement Faure <clement.faure@nxp.com> Signed-off-by: Jacky Bai <ping.bai@nxp.com> Change-Id: Iddf6f164b7146332e99de42
feat(imx8ulp): add OPTEE support
Add opteed support for imx8ulp.
Signed-off-by: Clement Faure <clement.faure@nxp.com> Signed-off-by: Jacky Bai <ping.bai@nxp.com> Change-Id: Iddf6f164b7146332e99de42fcbbf9c892eb1d994
show more ...
|
| 36af80c2 | 20-Oct-2021 |
Jacky Bai <ping.bai@nxp.com> |
feat(imx8ulp): update the upower config for power optimization
Enable the AFBB by default for active mode when APD side wakeup from low power mode to align with the first time boot up.
Update the p
feat(imx8ulp): update the upower config for power optimization
Enable the AFBB by default for active mode when APD side wakeup from low power mode to align with the first time boot up.
Update the power mode configs to force shutdown all the necessary power switches to optimize the power consumption.
To reduce the pad power consumption, put all the pad into OFF mode to save more power. the PTD's compensation should also be disabled in low power mode to save more power.
when APD enters PD mode, the LDO1(used by DDR) can be shutdown to save power. when APD enters DPD mode, the BUCK3(supply for APD/LPAV) can be shutdown to save power.
In single boot mode, When APD enters DPD mode, buck3 will shutdown, LDO1 should be off to save more power as the DDR controller has lost power.
In dualboot mode, the LPAV is owned by RTD side. When APD enters low power mode, APD side should not config those PMIC regulators that used by the resource owned by RTD side.
Signed-off-by: Jacky Bai <ping.bai@nxp.com> Change-Id: Ie5e9b428f85345b81744313a8fb93bfc27e0dd71
show more ...
|
| ab787dba | 22-Dec-2021 |
Ye Li <ye.li@nxp.com> |
feat(imx8ulp): not power off LPAV PD when LPAV owner is RTD
Upower will check the LPAV ownership when power off the SRAM or PS. if the LPAV owner is not APD, then the power off will return failure.
feat(imx8ulp): not power off LPAV PD when LPAV owner is RTD
Upower will check the LPAV ownership when power off the SRAM or PS. if the LPAV owner is not APD, then the power off will return failure. Add similar checking in SCMI PD driver to skip the power off to avoid failure print causing suspend/resume not work.
Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Jacky Bai <ping.bai@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> Change-Id: I9dc657c2277129ac90a792232f734c08fca5f997
show more ...
|
| 891c547e | 18-Sep-2023 |
Jacky Bai <ping.bai@nxp.com> |
feat(imx8ulp): add system power off support
On i.MX8ULP, we need to use the APD deep power down(DPD) mode to support the system power off function. when APD enter power off mode, only the RTD can re
feat(imx8ulp): add system power off support
On i.MX8ULP, we need to use the APD deep power down(DPD) mode to support the system power off function. when APD enter power off mode, only the RTD can re-kick it and boot from ROM.
Signed-off-by: Jacky Bai <ping.bai@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com> Change-Id: Ifb42db0a7cf87b932160c59b47eca4d0f08f8cdf
show more ...
|
| 478af8d3 | 25-Jun-2021 |
Jacky Bai <ping.bai@nxp.com> |
feat(imx8ulp): add APD power down mode(PD) support in system suspend
The APD can be put into PD mode when linux suspend(mem). This patch add the support for it. As the whole AP domain's context will
feat(imx8ulp): add APD power down mode(PD) support in system suspend
The APD can be put into PD mode when linux suspend(mem). This patch add the support for it. As the whole AP domain's context will be lost, so we must save the necessary HW module states before entering PD mode, and we need to restore those contexts when system wake up. Fot details about which HW module's state will be lost, please refer to the RM.
When APD enter PD mode, only the wakeup event connected to the WUU can wakeup APD successfully. The upower wakeup source is used to wakeup APD by RTD due to the factor that the MU between A core & M core is not connected into WUU to generate wakeup event.
as the SRAM0 will be power down when APD enters PD mode, so we need to re-init the scmi channels(resides in the SRAM0). otherwise the SCMI can NOT work anymore.
Signed-off-by: Jacky Bai <ping.bai@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com> Change-Id: I44b0cdc8397e5d6a82081ea6746542e9fa4b9fc1
show more ...
|
| daa4478a | 18-Sep-2023 |
Jacky Bai <ping.bai@nxp.com> |
feat(imx8ulp): add the basic support for idle & system suspned
Add basic support for the cpuidle(cluster retention) and system suspend support using the HW sleep mode.
When system enter low power m
feat(imx8ulp): add the basic support for idle & system suspned
Add basic support for the cpuidle(cluster retention) and system suspend support using the HW sleep mode.
When system enter low power mode after doing reboot twice, APD will be failed to exit from low power mode successfully. it is because that after secondary reboot, upower will modify the default power switch config, then DDR will be off wrongly. So config the low power mode info explicitly before APD entering any low power mode.
Signed-off-by: Jacky Bai <ping.bai@nxp.com> Change-Id: Ib68bfdfd4b925541e343aef4a5296a542451f86b
show more ...
|
| 7c5eedca | 04-Aug-2021 |
Pankaj Gupta <pankaj.gupta@nxp.com> |
feat(imx8ulp): allocated caam did for the non secure world
JR1, JR2 and JR3 are available for use by the non secure world. Setup the A35 core DID for these job rings.
Signed-off-by: Varun Sethi <v.
feat(imx8ulp): allocated caam did for the non secure world
JR1, JR2 and JR3 are available for use by the non secure world. Setup the A35 core DID for these job rings.
Signed-off-by: Varun Sethi <v.sethi@nxp.com> Signed-off-by: Pankaj Gupta <pankaj.gupta@nxp.com> Signed-off-by: Jacky Bai <ping.bai@nxp.com> Change-Id: If64d4ce11ebff49a2405d8b561b344fcd7b2614f
show more ...
|