gpu: nvgpu: gp10b: update elpg sequencing value

- Added final elpg sequencing value
- by default elpg is disabled.

Bug 1525971

Change-Id: I2c306d9f03e361560a95fcfa723eafe14d004191
Signed-off-by: Mahantesh Kumbar <mkumbar@nvidia.com>
Reviewed-on: http://git-master/r/732574
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Tested-by: Terje Bergstrom <tbergstrom@nvidia.com>
This commit is contained in:
Mahantesh Kumbar
2015-04-17 11:43:40 +05:30
committed by Deepak Nibade
parent 0f2a1edd65
commit faa1e5d82b

View File

@@ -31,102 +31,103 @@ struct pg_init_sequence_list {
};
/* PROD settings for ELPG sequencing registers*/
static struct pg_init_sequence_list _pginitseq_gm20b[] = {
{ 0x0010ab10, 0x8180},
{ 0x0010e118, 0x83828180},
{ 0x0010e068, 0},
static struct pg_init_sequence_list _pginitseq_gp10b[] = {
{0x0010ab10, 0x0000868B} ,
{0x0010e118, 0x8590848F} ,
{0x0010e000, 0} ,
{0x0010e06c, 0x000000A3} ,
{0x0010e06c, 0x000000A0} ,
{0x0010e06c, 0x00000095} ,
{0x0010e06c, 0x000000A6} ,
{0x0010e06c, 0x0000008C} ,
{0x0010e06c, 0x00000080} ,
{0x0010e06c, 0x00000081} ,
{ 0x0010e06c, 0x00000082},
{ 0x0010e06c, 0x00000083},
{ 0x0010e06c, 0x00000084},
{ 0x0010e06c, 0x00000085},
{ 0x0010e06c, 0x00000086},
{0x0010e06c, 0x00000087} ,
{0x0010e06c, 0x00000088} ,
{ 0x0010e06c, 0x00000089},
{ 0x0010e06c, 0x0000008a},
{ 0x0010e06c, 0x0000008b},
{ 0x0010e06c, 0x0000008c},
{ 0x0010e06c, 0x0000008d},
{ 0x0010e06c, 0x0000008e},
{ 0x0010e06c, 0x0000008f},
{ 0x0010e06c, 0x00000090},
{ 0x0010e06c, 0x00000091},
{ 0x0010e06c, 0x00000092},
{ 0x0010e06c, 0x00000093},
{ 0x0010e06c, 0x00000094},
{ 0x0010e06c, 0x00000095},
{ 0x0010e06c, 0x00000096},
{ 0x0010e06c, 0x00000097},
{ 0x0010e06c, 0x00000098},
{ 0x0010e06c, 0x00000099},
{ 0x0010e06c, 0x0000009a},
{ 0x0010e06c, 0x0000009b},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{ 0x0010e06c, 0x00000000},
{0x0010e06c, 0x0000008D} ,
{0x0010e06c, 0x000000A00} ,
{0x0010e06c, 0x000000A01} ,
{0x0010e06c, 0x000000A02} ,
{0x0010e06c, 0x000000A03} ,
{0x0010e06c, 0x000000A04} ,
{0x0010e06c, 0x000000A05} ,
{0x0010e06c, 0x000000A06} ,
{0x0010e06c, 0x000000A07} ,
{0x0010e06c, 0x000000A08} ,
{0x0010e06c, 0x000000A09} ,
{0x0010e06c, 0x000000950} ,
{0x0010e06c, 0x000000951} ,
{0x0010e06c, 0x000000952} ,
{0x0010e06c, 0x000000953} ,
{0x0010e06c, 0x000000954} ,
{0x0010e06c, 0x000000955} ,
{0x0010e06c, 0x000000956} ,
{0x0010e06c, 0x000000957} ,
{0x0010ab14, 0x00000000} ,
{ 0x0010ab18, 0x00000000},
{0x0010e024, 0x00000000} ,
{0x0010e028, 0x00000000} ,
{0x0010e11c, 0x00000000} ,
{ 0x0010e120, 0x00000000},
{ 0x0010ab1c, 0x02010155},
{ 0x0010e020, 0x001b1b55},
{ 0x0010e124, 0x01030355},
{0x0010ab1c, 0x140B0B55} ,
{0x0010e020, 0x0E262655} ,
{0x0010e124, 0x25101055} ,
{0x0010ab20, 0x89abcdef} ,
{0x0010ab24, 0x00000000} ,
{0x0010e02c, 0x89abcdef} ,
{0x0010e030, 0x00000000} ,
{0x0010e128, 0x89abcdef} ,
{0x0010e12c, 0x00000000} ,
{ 0x0010ab28, 0x74444444},
{0x0010ab28, 0x75555555} ,
{0x0010ab2c, 0x70000000} ,
{ 0x0010e034, 0x74444444},
{0x0010e034, 0x75555555} ,
{0x0010e038, 0x70000000} ,
{ 0x0010e130, 0x74444444},
{0x0010e130, 0x75555555} ,
{0x0010e134, 0x70000000} ,
{0x0010ab30, 0x00000000} ,
{0x0010ab34, 0x00000001} ,
{0x00020004, 0x00000000} ,
{0x0010e138, 0x00000000} ,
{0x0010e040, 0x00000000} ,
{0x0010e168, 0x00000000} ,
{0x0010e114, 0x0000A5A4} ,
{0x0010e110, 0x00000000} ,
{0x0010e10c, 0x8590848F} ,
{0x0010e05c, 0x00000000} ,
{0x0010e044, 0x00000000} ,
{0x0010a644, 0x0000868B} ,
{0x0010a648, 0x00000000 } ,
{0x0010a64c, 0x00829493 } ,
{0x0010a650, 0x00000000} ,
{0x0010e000, 0} ,
{0x0010e068, 0x000000A3} ,
{0x0010e068, 0x000000A0} ,
{0x0010e068, 0x00000095} ,
{0x0010e068, 0x000000A6} ,
{0x0010e068, 0x0000008C} ,
{0x0010e068, 0x00000080} ,
{0x0010e068, 0x00000081} ,
{0x0010e068, 0x00000087} ,
{0x0010e068, 0x00000088} ,
{0x0010e068, 0x0000008D} ,
{0x0010e068, 0x000000A00} ,
{0x0010e068, 0x000000A01} ,
{0x0010e068, 0x000000A02} ,
{0x0010e068, 0x000000A03} ,
{0x0010e068, 0x000000A04} ,
{0x0010e068, 0x000000A05} ,
{0x0010e068, 0x000000A06} ,
{0x0010e068, 0x000000A07} ,
{0x0010e068, 0x000000A08} ,
{0x0010e068, 0x000000A09} ,
{0x0010e068, 0x000000950} ,
{0x0010e068, 0x000000951} ,
{0x0010e068, 0x000000952} ,
{0x0010e068, 0x000000953} ,
{0x0010e068, 0x000000954} ,
{0x0010e068, 0x000000955} ,
{0x0010e068, 0x000000956} ,
{0x0010e068, 0x000000957} ,
{0x0010e000, 0} ,
{0x0010e004, 0x0000008E},
};
static int gp10b_pmu_setup_elpg(struct gk20a *g)
@@ -138,12 +139,12 @@ static int gp10b_pmu_setup_elpg(struct gk20a *g)
gk20a_dbg_fn("");
if (g->elpg_enabled) {
reg_writes = ((sizeof(_pginitseq_gm20b) /
sizeof((_pginitseq_gm20b)[0])));
reg_writes = ((sizeof(_pginitseq_gp10b) /
sizeof((_pginitseq_gp10b)[0])));
/* Initialize registers with production values*/
for (index = 0; index < reg_writes; index++) {
gk20a_writel(g, _pginitseq_gm20b[index].regaddr,
_pginitseq_gm20b[index].writeval);
gk20a_writel(g, _pginitseq_gp10b[index].regaddr,
_pginitseq_gp10b[index].writeval);
}
}