mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-22 17:36:20 +03:00
gpu: nvgpu: move ltc_tstg_mgmt register setup
The ltc_ltcs_ltss_tstg_set_mgmt_3 register should only be configured after ACR init, hence move it down the init order from early_init to finalize_poweron after acr is loaded. Bug 3514215 Change-Id: I2462715d25f75b7476ab163cd6c9f73ced5efb6d Signed-off-by: Antony Clince Alex <aalex@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2685547 Reviewed-by: svcacv <svcacv@nvidia.com> Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com> Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com> Reviewed-by: Mahantesh Kumbar <mkumbar@nvidia.com> Reviewed-by: Seema Khowala <seemaj@nvidia.com> GVS: Gerrit_Virtual_Submit
This commit is contained in:
committed by
mobile promotions
parent
c6f07c14a9
commit
f670687441
@@ -900,6 +900,15 @@ int nvgpu_finalize_poweron(struct gk20a *g)
|
||||
NVGPU_INIT_TABLE_ENTRY(&nvgpu_gr_enable_hw, NO_FLAG),
|
||||
NVGPU_INIT_TABLE_ENTRY(g->ops.acr.acr_construct_execute,
|
||||
NVGPU_SEC_PRIVSECURITY),
|
||||
/**
|
||||
* Set ltc_lts_set_mgmt registers only after ACR boot(See
|
||||
* bug200601972 for details). In order to accomplish this
|
||||
* ltc_lts_set_mgmt_setup is decoupled from
|
||||
* nvgpu_init_ltc_support which needs to be executed before ACR
|
||||
* boot.
|
||||
*/
|
||||
NVGPU_INIT_TABLE_ENTRY(g->ops.ltc.ltc_lts_set_mgmt_setup,
|
||||
NO_FLAG),
|
||||
/**
|
||||
* Set atomic mode after acr boot(See Bug 3268664 for
|
||||
* details). For acr to boot, nvgpu_init_fb_support
|
||||
|
||||
@@ -74,10 +74,6 @@ int nvgpu_init_ltc_support(struct gk20a *g)
|
||||
}
|
||||
}
|
||||
|
||||
if (g->ops.ltc.ltc_lts_set_mgmt_setup != NULL) {
|
||||
g->ops.ltc.ltc_lts_set_mgmt_setup(g);
|
||||
}
|
||||
|
||||
if (g->ops.ltc.intr.configure != NULL) {
|
||||
nvgpu_cic_mon_intr_stall_unit_config(g, NVGPU_CIC_INTR_UNIT_LTC,
|
||||
NVGPU_CIC_INTR_ENABLE);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2020-2021, NVIDIA CORPORATION. All rights reserved.
|
||||
* Copyright (c) 2020-2022, NVIDIA CORPORATION. All rights reserved.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and associated documentation files (the "Software"),
|
||||
@@ -38,7 +38,7 @@ void ga10b_ltc_set_zbc_depth_entry(struct gk20a *g, u32 depth_val, u32 index);
|
||||
#endif
|
||||
|
||||
void ga10b_ltc_init_fs_state(struct gk20a *g);
|
||||
void ga10b_ltc_lts_set_mgmt_setup(struct gk20a *g);
|
||||
int ga10b_ltc_lts_set_mgmt_setup(struct gk20a *g);
|
||||
u64 ga10b_determine_L2_size_bytes(struct gk20a *g);
|
||||
int ga10b_lts_ecc_init(struct gk20a *g);
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2020-2021, NVIDIA CORPORATION. All rights reserved.
|
||||
* Copyright (c) 2020-2022, NVIDIA CORPORATION. All rights reserved.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and associated documentation files (the "Software"),
|
||||
@@ -75,7 +75,7 @@ void ga10b_ltc_init_fs_state(struct gk20a *g)
|
||||
nvgpu_writel(g, ltc_ltcs_ltss_tstg_set_mgmt_1_r(), reg);
|
||||
}
|
||||
|
||||
void ga10b_ltc_lts_set_mgmt_setup(struct gk20a *g)
|
||||
int ga10b_ltc_lts_set_mgmt_setup(struct gk20a *g)
|
||||
{
|
||||
u32 reg;
|
||||
|
||||
@@ -89,6 +89,8 @@ void ga10b_ltc_lts_set_mgmt_setup(struct gk20a *g)
|
||||
ltc_ltcs_ltss_tstg_set_mgmt_3_disallow_clean_fclr_imm_enabled_f());
|
||||
nvgpu_writel(g, ltc_ltcs_ltss_tstg_set_mgmt_3_r(), reg);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_NVGPU_DEBUGGER
|
||||
|
||||
@@ -415,7 +415,7 @@ struct gops_ltc {
|
||||
#if defined(CONFIG_NVGPU_NON_FUSA) || defined(CONFIG_NVGPU_KERNEL_MODE_SUBMIT)
|
||||
void (*set_enabled)(struct gk20a *g, bool enabled);
|
||||
#endif
|
||||
void (*ltc_lts_set_mgmt_setup)(struct gk20a *g);
|
||||
int (*ltc_lts_set_mgmt_setup)(struct gk20a *g);
|
||||
#ifdef CONFIG_NVGPU_GRAPHICS
|
||||
void (*set_zbc_color_entry)(struct gk20a *g,
|
||||
u32 *color_val_l2, u32 index);
|
||||
|
||||
Reference in New Issue
Block a user