diff --git a/drivers/gpu/nvgpu/hal/power_features/cg/gv11b_gating_reglist.c b/drivers/gpu/nvgpu/hal/power_features/cg/gv11b_gating_reglist.c index 199d2f87e..ac82d83fd 100644 --- a/drivers/gpu/nvgpu/hal/power_features/cg/gv11b_gating_reglist.c +++ b/drivers/gpu/nvgpu/hal/power_features/cg/gv11b_gating_reglist.c @@ -25,6 +25,7 @@ #include #include #include +#include #include #include "gating_reglist.h" @@ -300,6 +301,16 @@ void gv11b_slcg_bus_load_gating_prod(struct gk20a *g, } } +u32 gv11b_slcg_bus_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_slcg_bus); +} + +const struct gating_desc *gv11b_slcg_bus_get_gating_prod(void) +{ + return gv11b_slcg_bus; +} + void gv11b_slcg_ce2_load_gating_prod(struct gk20a *g, bool prod) { @@ -317,6 +328,16 @@ void gv11b_slcg_ce2_load_gating_prod(struct gk20a *g, } } +u32 gv11b_slcg_ce2_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_slcg_ce2); +} + +const struct gating_desc *gv11b_slcg_ce2_get_gating_prod(void) +{ + return gv11b_slcg_ce2; +} + void gv11b_slcg_chiplet_load_gating_prod(struct gk20a *g, bool prod) { @@ -334,6 +355,16 @@ void gv11b_slcg_chiplet_load_gating_prod(struct gk20a *g, } } +u32 gv11b_slcg_chiplet_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_slcg_chiplet); +} + +const struct gating_desc *gv11b_slcg_chiplet_get_gating_prod(void) +{ + return gv11b_slcg_chiplet; +} + void gv11b_slcg_ctxsw_firmware_load_gating_prod(struct gk20a *g, bool prod) { @@ -341,6 +372,16 @@ void gv11b_slcg_ctxsw_firmware_load_gating_prod(struct gk20a *g, } } +u32 gv11b_slcg_ctxsw_firmware_gating_prod_size(void) +{ + return 0; +} + +const struct gating_desc *gv11b_slcg_ctxsw_firmware_get_gating_prod(void) +{ + return NULL; +} + void gv11b_slcg_fb_load_gating_prod(struct gk20a *g, bool prod) { @@ -358,6 +399,16 @@ void gv11b_slcg_fb_load_gating_prod(struct gk20a *g, } } +u32 gv11b_slcg_fb_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_slcg_fb); +} + +const struct gating_desc *gv11b_slcg_fb_get_gating_prod(void) +{ + return gv11b_slcg_fb; +} + void gv11b_slcg_fifo_load_gating_prod(struct gk20a *g, bool prod) { @@ -375,6 +426,16 @@ void gv11b_slcg_fifo_load_gating_prod(struct gk20a *g, } } +u32 gv11b_slcg_fifo_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_slcg_fifo); +} + +const struct gating_desc *gv11b_slcg_fifo_get_gating_prod(void) +{ + return gv11b_slcg_fifo; +} + void gv11b_slcg_gr_load_gating_prod(struct gk20a *g, bool prod) { @@ -392,6 +453,16 @@ void gv11b_slcg_gr_load_gating_prod(struct gk20a *g, } } +u32 gv11b_slcg_gr_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_slcg_gr); +} + +const struct gating_desc *gv11b_slcg_gr_get_gating_prod(void) +{ + return gv11b_slcg_gr; +} + void gv11b_slcg_ltc_load_gating_prod(struct gk20a *g, bool prod) { @@ -409,6 +480,16 @@ void gv11b_slcg_ltc_load_gating_prod(struct gk20a *g, } } +u32 gv11b_slcg_ltc_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_slcg_ltc); +} + +const struct gating_desc *gv11b_slcg_ltc_get_gating_prod(void) +{ + return gv11b_slcg_ltc; +} + void gv11b_slcg_perf_load_gating_prod(struct gk20a *g, bool prod) { @@ -426,6 +507,16 @@ void gv11b_slcg_perf_load_gating_prod(struct gk20a *g, } } +u32 gv11b_slcg_perf_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_slcg_perf); +} + +const struct gating_desc *gv11b_slcg_perf_get_gating_prod(void) +{ + return gv11b_slcg_perf; +} + void gv11b_slcg_priring_load_gating_prod(struct gk20a *g, bool prod) { @@ -443,6 +534,16 @@ void gv11b_slcg_priring_load_gating_prod(struct gk20a *g, } } +u32 gv11b_slcg_priring_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_slcg_priring); +} + +const struct gating_desc *gv11b_slcg_priring_get_gating_prod(void) +{ + return gv11b_slcg_priring; +} + void gv11b_slcg_pwr_csb_load_gating_prod(struct gk20a *g, bool prod) { @@ -460,6 +561,16 @@ void gv11b_slcg_pwr_csb_load_gating_prod(struct gk20a *g, } } +u32 gv11b_slcg_pwr_csb_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_slcg_pwr_csb); +} + +const struct gating_desc *gv11b_slcg_pwr_csb_get_gating_prod(void) +{ + return gv11b_slcg_pwr_csb; +} + void gv11b_slcg_pmu_load_gating_prod(struct gk20a *g, bool prod) { @@ -477,6 +588,16 @@ void gv11b_slcg_pmu_load_gating_prod(struct gk20a *g, } } +u32 gv11b_slcg_pmu_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_slcg_pmu); +} + +const struct gating_desc *gv11b_slcg_pmu_get_gating_prod(void) +{ + return gv11b_slcg_pmu; +} + void gv11b_slcg_therm_load_gating_prod(struct gk20a *g, bool prod) { @@ -494,6 +615,16 @@ void gv11b_slcg_therm_load_gating_prod(struct gk20a *g, } } +u32 gv11b_slcg_therm_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_slcg_therm); +} + +const struct gating_desc *gv11b_slcg_therm_get_gating_prod(void) +{ + return gv11b_slcg_therm; +} + void gv11b_slcg_xbar_load_gating_prod(struct gk20a *g, bool prod) { @@ -511,6 +642,16 @@ void gv11b_slcg_xbar_load_gating_prod(struct gk20a *g, } } +u32 gv11b_slcg_xbar_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_slcg_xbar); +} + +const struct gating_desc *gv11b_slcg_xbar_get_gating_prod(void) +{ + return gv11b_slcg_xbar; +} + void gv11b_slcg_hshub_load_gating_prod(struct gk20a *g, bool prod) { @@ -528,6 +669,16 @@ void gv11b_slcg_hshub_load_gating_prod(struct gk20a *g, } } +u32 gv11b_slcg_hshub_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_slcg_hshub); +} + +const struct gating_desc *gv11b_slcg_hshub_get_gating_prod(void) +{ + return gv11b_slcg_hshub; +} + void gv11b_blcg_bus_load_gating_prod(struct gk20a *g, bool prod) { @@ -545,6 +696,16 @@ void gv11b_blcg_bus_load_gating_prod(struct gk20a *g, } } +u32 gv11b_blcg_bus_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_blcg_bus); +} + +const struct gating_desc *gv11b_blcg_bus_get_gating_prod(void) +{ + return gv11b_blcg_bus; +} + void gv11b_blcg_ce_load_gating_prod(struct gk20a *g, bool prod) { @@ -562,6 +723,16 @@ void gv11b_blcg_ce_load_gating_prod(struct gk20a *g, } } +u32 gv11b_blcg_ce_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_blcg_ce); +} + +const struct gating_desc *gv11b_blcg_ce_get_gating_prod(void) +{ + return gv11b_blcg_ce; +} + void gv11b_blcg_ctxsw_firmware_load_gating_prod(struct gk20a *g, bool prod) { @@ -579,6 +750,16 @@ void gv11b_blcg_ctxsw_firmware_load_gating_prod(struct gk20a *g, } } +u32 gv11b_blcg_ctxsw_firmware_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_blcg_ctxsw_firmware); +} + +const struct gating_desc *gv11b_blcg_ctxsw_firmware_get_gating_prod(void) +{ + return gv11b_blcg_ctxsw_firmware; +} + void gv11b_blcg_fb_load_gating_prod(struct gk20a *g, bool prod) { @@ -596,6 +777,16 @@ void gv11b_blcg_fb_load_gating_prod(struct gk20a *g, } } +u32 gv11b_blcg_fb_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_blcg_fb); +} + +const struct gating_desc *gv11b_blcg_fb_get_gating_prod(void) +{ + return gv11b_blcg_fb; +} + void gv11b_blcg_fifo_load_gating_prod(struct gk20a *g, bool prod) { @@ -613,6 +804,16 @@ void gv11b_blcg_fifo_load_gating_prod(struct gk20a *g, } } +u32 gv11b_blcg_fifo_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_blcg_fifo); +} + +const struct gating_desc *gv11b_blcg_fifo_get_gating_prod(void) +{ + return gv11b_blcg_fifo; +} + void gv11b_blcg_gr_load_gating_prod(struct gk20a *g, bool prod) { @@ -630,6 +831,16 @@ void gv11b_blcg_gr_load_gating_prod(struct gk20a *g, } } +u32 gv11b_blcg_gr_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_blcg_gr); +} + +const struct gating_desc *gv11b_blcg_gr_get_gating_prod(void) +{ + return gv11b_blcg_gr; +} + void gv11b_blcg_ltc_load_gating_prod(struct gk20a *g, bool prod) { @@ -647,6 +858,16 @@ void gv11b_blcg_ltc_load_gating_prod(struct gk20a *g, } } +u32 gv11b_blcg_ltc_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_blcg_ltc); +} + +const struct gating_desc *gv11b_blcg_ltc_get_gating_prod(void) +{ + return gv11b_blcg_ltc; +} + void gv11b_blcg_pwr_csb_load_gating_prod(struct gk20a *g, bool prod) { @@ -664,6 +885,16 @@ void gv11b_blcg_pwr_csb_load_gating_prod(struct gk20a *g, } } +u32 gv11b_blcg_pwr_csb_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_blcg_pwr_csb); +} + +const struct gating_desc *gv11b_blcg_pwr_csb_get_gating_prod(void) +{ + return gv11b_blcg_pwr_csb; +} + void gv11b_blcg_pmu_load_gating_prod(struct gk20a *g, bool prod) { @@ -681,6 +912,16 @@ void gv11b_blcg_pmu_load_gating_prod(struct gk20a *g, } } +u32 gv11b_blcg_pmu_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_blcg_pmu); +} + +const struct gating_desc *gv11b_blcg_pmu_get_gating_prod(void) +{ + return gv11b_blcg_pmu; +} + void gv11b_blcg_xbar_load_gating_prod(struct gk20a *g, bool prod) { @@ -698,6 +939,16 @@ void gv11b_blcg_xbar_load_gating_prod(struct gk20a *g, } } +u32 gv11b_blcg_xbar_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_blcg_xbar); +} + +const struct gating_desc *gv11b_blcg_xbar_get_gating_prod(void) +{ + return gv11b_blcg_xbar; +} + void gv11b_blcg_hshub_load_gating_prod(struct gk20a *g, bool prod) { @@ -715,6 +966,16 @@ void gv11b_blcg_hshub_load_gating_prod(struct gk20a *g, } } +u32 gv11b_blcg_hshub_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_blcg_hshub); +} + +const struct gating_desc *gv11b_blcg_hshub_get_gating_prod(void) +{ + return gv11b_blcg_hshub; +} + void gr_gv11b_pg_gr_load_gating_prod(struct gk20a *g, bool prod) { @@ -731,3 +992,13 @@ void gr_gv11b_pg_gr_load_gating_prod(struct gk20a *g, } } } + +u32 gr_gv11b_pg_gr_gating_prod_size(void) +{ + return ARRAY_SIZE(gv11b_pg_gr); +} + +const struct gating_desc *gr_gv11b_pg_gr_get_gating_prod(void) +{ + return gv11b_pg_gr; +} diff --git a/drivers/gpu/nvgpu/hal/power_features/cg/gv11b_gating_reglist.h b/drivers/gpu/nvgpu/hal/power_features/cg/gv11b_gating_reglist.h index f2f711698..e4775dc92 100644 --- a/drivers/gpu/nvgpu/hal/power_features/cg/gv11b_gating_reglist.h +++ b/drivers/gpu/nvgpu/hal/power_features/cg/gv11b_gating_reglist.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016-2018, NVIDIA Corporation. All rights reserved. + * Copyright (c) 2014-2019, 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"), @@ -18,6 +18,8 @@ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. + * + * This file is autogenerated. Do not edit. */ #ifndef GV11B_GATING_REGLIST_H @@ -25,86 +27,142 @@ #include +struct gating_desc; struct gk20a; void gv11b_slcg_bus_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_slcg_bus_gating_prod_size(void); +const struct gating_desc *gv11b_slcg_bus_get_gating_prod(void); void gv11b_slcg_ce2_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_slcg_ce2_gating_prod_size(void); +const struct gating_desc *gv11b_slcg_ce2_get_gating_prod(void); void gv11b_slcg_chiplet_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_slcg_chiplet_gating_prod_size(void); +const struct gating_desc *gv11b_slcg_chiplet_get_gating_prod(void); void gv11b_slcg_ctxsw_firmware_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_slcg_ctxsw_firmware_gating_prod_size(void); +const struct gating_desc *gv11b_slcg_ctxsw_firmware_get_gating_prod(void); void gv11b_slcg_fb_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_slcg_fb_gating_prod_size(void); +const struct gating_desc *gv11b_slcg_fb_get_gating_prod(void); void gv11b_slcg_fifo_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_slcg_fifo_gating_prod_size(void); +const struct gating_desc *gv11b_slcg_fifo_get_gating_prod(void); void gv11b_slcg_gr_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_slcg_gr_gating_prod_size(void); +const struct gating_desc *gv11b_slcg_gr_get_gating_prod(void); void gv11b_slcg_ltc_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_slcg_ltc_gating_prod_size(void); +const struct gating_desc *gv11b_slcg_ltc_get_gating_prod(void); void gv11b_slcg_perf_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_slcg_perf_gating_prod_size(void); +const struct gating_desc *gv11b_slcg_perf_get_gating_prod(void); void gv11b_slcg_priring_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_slcg_priring_gating_prod_size(void); +const struct gating_desc *gv11b_slcg_priring_get_gating_prod(void); void gv11b_slcg_pwr_csb_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_slcg_pwr_csb_gating_prod_size(void); +const struct gating_desc *gv11b_slcg_pwr_csb_get_gating_prod(void); void gv11b_slcg_pmu_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_slcg_pmu_gating_prod_size(void); +const struct gating_desc *gv11b_slcg_pmu_get_gating_prod(void); void gv11b_slcg_therm_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_slcg_therm_gating_prod_size(void); +const struct gating_desc *gv11b_slcg_therm_get_gating_prod(void); void gv11b_slcg_xbar_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_slcg_xbar_gating_prod_size(void); +const struct gating_desc *gv11b_slcg_xbar_get_gating_prod(void); void gv11b_slcg_hshub_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_slcg_hshub_gating_prod_size(void); +const struct gating_desc *gv11b_slcg_hshub_get_gating_prod(void); void gv11b_blcg_bus_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_blcg_bus_gating_prod_size(void); +const struct gating_desc *gv11b_blcg_bus_get_gating_prod(void); void gv11b_blcg_ce_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_blcg_ce_gating_prod_size(void); +const struct gating_desc *gv11b_blcg_ce_get_gating_prod(void); void gv11b_blcg_ctxsw_firmware_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_blcg_ctxsw_firmware_gating_prod_size(void); +const struct gating_desc *gv11b_blcg_ctxsw_firmware_get_gating_prod(void); void gv11b_blcg_fb_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_blcg_fb_gating_prod_size(void); +const struct gating_desc *gv11b_blcg_fb_get_gating_prod(void); void gv11b_blcg_fifo_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_blcg_fifo_gating_prod_size(void); +const struct gating_desc *gv11b_blcg_fifo_get_gating_prod(void); void gv11b_blcg_gr_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_blcg_gr_gating_prod_size(void); +const struct gating_desc *gv11b_blcg_gr_get_gating_prod(void); void gv11b_blcg_ltc_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_blcg_ltc_gating_prod_size(void); +const struct gating_desc *gv11b_blcg_ltc_get_gating_prod(void); void gv11b_blcg_pwr_csb_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_blcg_pwr_csb_gating_prod_size(void); +const struct gating_desc *gv11b_blcg_pwr_csb_get_gating_prod(void); void gv11b_blcg_pmu_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_blcg_pmu_gating_prod_size(void); +const struct gating_desc *gv11b_blcg_pmu_get_gating_prod(void); void gv11b_blcg_xbar_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_blcg_xbar_gating_prod_size(void); +const struct gating_desc *gv11b_blcg_xbar_get_gating_prod(void); void gv11b_blcg_hshub_load_gating_prod(struct gk20a *g, bool prod); +u32 gv11b_blcg_hshub_gating_prod_size(void); +const struct gating_desc *gv11b_blcg_hshub_get_gating_prod(void); void gr_gv11b_pg_gr_load_gating_prod(struct gk20a *g, bool prod); +u32 gr_gv11b_pg_gr_gating_prod_size(void); +const struct gating_desc *gr_gv11b_pg_gr_get_gating_prod(void); + #endif /* GV11B_GATING_REGLIST_H */