mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-23 18:16:01 +03:00
gpu: nvgpu: Add support to load dbg/prod mem_unlock ucode
-Add support to load dbg/prod mem_unlock ucode based on debug Signal SCP_CTL_STAT_DEBUG_MODE. -Defined MEM_UNLOCK_PROD_BIN & MEM_UNLOCK_DBG_BIN to hold dbg/prod ucode names. JIRA NVGPUT-76 Change-Id: Ie282a281fe502ada31a69e3b3c734e9a3a725395 Signed-off-by: Mahantesh Kumbar <mkumbar@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1842880 Reviewed-by: svc-misra-checker <svc-misra-checker@nvidia.com> Reviewed-by: Thomas Fleury <tfleury@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
committed by
mobile promotions
parent
9f82897d02
commit
442cb2b1db
@@ -49,6 +49,9 @@
|
|||||||
#define HW_SCRUB_TIMEOUT_MAX 2000000 /* usec */
|
#define HW_SCRUB_TIMEOUT_MAX 2000000 /* usec */
|
||||||
#define MEM_UNLOCK_TIMEOUT 3500 /* msec */
|
#define MEM_UNLOCK_TIMEOUT 3500 /* msec */
|
||||||
|
|
||||||
|
#define MEM_UNLOCK_PROD_BIN "mem_unlock.bin"
|
||||||
|
#define MEM_UNLOCK_DBG_BIN "mem_unlock_dbg.bin"
|
||||||
|
|
||||||
void gv100_fb_reset(struct gk20a *g)
|
void gv100_fb_reset(struct gk20a *g)
|
||||||
{
|
{
|
||||||
u32 val;
|
u32 val;
|
||||||
@@ -140,11 +143,16 @@ int gv100_fb_memory_unlock(struct gk20a *g)
|
|||||||
|
|
||||||
nvgpu_log_info(g, "fb_mmu_vpr_info = 0x%08x",
|
nvgpu_log_info(g, "fb_mmu_vpr_info = 0x%08x",
|
||||||
gk20a_readl(g, fb_mmu_vpr_info_r()));
|
gk20a_readl(g, fb_mmu_vpr_info_r()));
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* mem_unlock.bin should be written to install
|
* mem_unlock.bin should be written to install
|
||||||
* traps even if VPR isn’t actually supported
|
* traps even if VPR isn’t actually supported
|
||||||
*/
|
*/
|
||||||
mem_unlock_fw = nvgpu_request_firmware(g, "mem_unlock.bin", 0);
|
if (!g->ops.pmu.is_debug_mode_enabled(g)) {
|
||||||
|
mem_unlock_fw = nvgpu_request_firmware(g, MEM_UNLOCK_PROD_BIN, 0);
|
||||||
|
} else {
|
||||||
|
mem_unlock_fw = nvgpu_request_firmware(g, MEM_UNLOCK_DBG_BIN, 0);
|
||||||
|
}
|
||||||
if (!mem_unlock_fw) {
|
if (!mem_unlock_fw) {
|
||||||
nvgpu_err(g, "mem unlock ucode get fail");
|
nvgpu_err(g, "mem unlock ucode get fail");
|
||||||
err = -ENOENT;
|
err = -ENOENT;
|
||||||
|
|||||||
Reference in New Issue
Block a user