Currently, on imx8mq evk board, we only support 3200mts and 667mts
frequency setpoints. So the DDR DVFS flow need to be updated accordingly.
The dram pll and dram apb clock rate is changed in ATF when doing frequency,
in kernel side, we need to call the clk API to update the clock rate info
in clock tree.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
(cherry picked from commit a69c3794f52d826762642cbdcf978a85784f386a)
A 'return' statement is missed before, So the mutex will be unlocked
twice, in some corner case, one core will unlock the mutex that locked
by anohter core wrongly. Then lead to concurrent access to the DVFS
at the same time.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
(cherry picked from commit 659615af4d35c7f118b7cf346624d423a3b15797)
If the system is currently in low bus mode, if the audio device
request the audio bus mode, the NOC, AHB and AXI bus clock rate
will be set wrongly, then bus will run at very low frequency, then
lead to audio playback underrun.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Tested-by: Anson Huang <anson.huang@nxp.com>
(cherry picked from commit 3a2a988cc02823297d14aa9001f013adbd15f6e8)
reduce the NOC, main AXI and AHB bus clock frequency to save power when DDR enter low
frequency mode. VDDSOC is ~195mA during video play, and ~180mA in idle.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Bai Ping <ping.bai@nxp.com>
(cherry picked from commit e109b34d30f0b4628a41ca9715eea689cc8c2a56)
If audio device is the only that access to ddr memory, the DDR
frequency can be reduce to 25MHz to save power. when DDR run in
25MHz frequency, the memory bandwidth is about 66MB/s, it can
meet the performance requirement for audio only case.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Anson Huang <anson.huang@nxp.com>
(cherry picked from commit 7c2389b6dca053ae4b4a56b3588978909769008c)
Add busfreq driver support on i.MX8MQ. The busfreq driver is
mainly used for dynamic DDR frequency change for power saving
feature. When there is no peripheral or DMA device has direct
access to DDR memory, we can lower the DDR frequency to save
power. Currently, we support frequency setpoint for LPDDR4:
(1): 3200mts, the DDRC core clock is sourced from 800MHz
dram_pll, the DDRC apb clock is 200MHz.
(2): 400mts, the DDRC core clock is source from sys1_pll_400m,
the DDRC apb clock is is sourced from sys1_pll_40m.
(3): 100mts, the DDRC core clock is sourced from sys1_pll_100m,
the DDRC apb clock is sourced from sys1_pll_40m.
In our busfreq driver, we have three mode supported:
* high bus mode <-----> 3200mts;
* audio bus mode <-----> 400mts;
* low bus mode <-----> 100mts;
The actual DDR frequency is done in ARM trusted firmware by calling
the SMCC SiP service call.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
Use CONFIG_IMX8M_BUSFREQ
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Add sufficient enough definitions so that drivers which call
request_bus_freq and release_bus_freq can compile even if
CONFIG_HAVE_IMX_BUSFREQ is missing.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
This is a temporarily workaround cause it breaks MX8MQ and LS platforms
booting.
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
When user use squashfs image which has enabled XZ, kenrel need to also enable
this feature, otherwise will encoutner below error when boot:
squashfs: SQUASHFS error: Filesystem uses "xz" compression.. This is not supported
This feature is needed by some standard Ubuntu tools like snap or initramfs.
So enable it in LSDK kernel by default.
Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
- CONFIG_SND_USB_AUDIO
Support USB audio card when boards are at host mode.
- CONFIG_USB_EHSET_TEST_FIXTURE
Triggering Embedded Host entering test mode for USB-IF electrical test.
- CONFIG_USB_TEST
Support USB host stress test in raw data mode
Cc: Jun Li <jun.li@nxp.com>
Cc: Ran Wang <ran.wang_1@nxp.com>
Cc: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com>
Signed-off-by: Peter Chen <peter.chen@nxp.com>
This reverts commit 8bf5ea8506c2185dba919d7876987e24b193ca9c.
There is no ARCH_FSL_IMX8MQ in upstream, this was ported by mistake for
VPU. VPU dependency was already fixed.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com>
Enable the following:
-CAAM SNVS and SM drivers
-generic SW crypto algorithms - needed for tcrypt speed tests
-CRYPTO_USER - needed for configuring crypto algorithms
from user space (using tools like crconf)
Signed-off-by: Horia Geantă <horia.geanta@nxp.com>
The two configs are needed when enabling jailhouse hypervisor for
inter-cell communication.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com>