@@ -76,6 +76,111 @@ struct sequence t8112_agx_tunables[] = {
7676 {NULL , -1 },
7777};
7878
79+ struct entry t8103_ane_pmgr_entry [] = {
80+ {0x0 , 0x10 , 0x10 },
81+ {0x38 , 0xffff , 0x50020 },
82+ {0x3c , 0xffff , 0xa0030 },
83+ {0x400 , 0x4 , 0x40010001 },
84+ {0x600 , 0x0 , 0x1ffffff },
85+ {0x738 , 0x1ff01ff , 0x200020 },
86+ {0x798 , 0x1ff01ff , 0x100030 },
87+ {0x7f8 , 0x1ff01ff , 0x100000a },
88+ {0x900 , 0x1 , 0x101 },
89+ {-1 , 0 , 0 },
90+ };
91+
92+ struct entry t8103_ane_dart_entry [] = {
93+ {0xfc , 0x0 , 0x1 }, {0x2d0 , 0x0 , 0x0 },
94+ {0x2f0 , 0x0 , 0x0 }, {0x34 , 0x0 , 0xffffffff },
95+ {0x20 , 0x0 , 0x100000 }, {0x60 , 0x0 , 0x80016100 },
96+ {0x68 , 0x20202 , 0xf0f0f }, {0x6c , 0x0 , 0x80808 },
97+ {0x100 , 0x0 , 0x80 }, {-1 , 0 , 0 },
98+ };
99+
100+ struct entry t8103_ane_dapf_entry [] = {
101+ {0x4 , 0x0 , 0x1 }, {0x8 , 0x0 , 0x824000 }, {0xc , 0x0 , 0x8 }, {0x10 , 0x0 , 0x8c7fff },
102+ {0x14 , 0x0 , 0x8 }, {0x0 , 0x0 , 0x11 }, {0x44 , 0x0 , 0x1 }, {0x48 , 0x0 , 0x0 },
103+ {0x4c , 0x0 , 0xf }, {0x50 , 0x0 , 0xffffffff }, {0x54 , 0x0 , 0xf }, {0x40 , 0x0 , 0x33 },
104+ {0x84 , 0x0 , 0x1 }, {0x88 , 0x0 , 0x2b45c000 }, {0x8c , 0x0 , 0x2 }, {0x90 , 0x0 , 0x2b45c003 },
105+ {0x94 , 0x0 , 0x2 }, {0x80 , 0x0 , 0x31 }, {0xc4 , 0x0 , 0x1 }, {0xc8 , 0x0 , 0x3b70c000 },
106+ {0xcc , 0x0 , 0x2 }, {0xd0 , 0x0 , 0x3b70c033 }, {0xd4 , 0x0 , 0x2 }, {0xc0 , 0x0 , 0x31 },
107+ {-1 , 0 , 0 },
108+ };
109+
110+ struct entry t8103_ane_dpe_sys_entry [] = {
111+ {0x3c , 0x0 , 0x262 }, {0x40 , 0x0 , 0x262 }, {0x44 , 0x0 , 0x2c8 }, {0x48 , 0x0 , 0x351 },
112+ {0x4c , 0x0 , 0x391 }, {0x50 , 0x0 , 0x404 }, {0x54 , 0x0 , 0x441 }, {0x58 , 0x0 , 0x4b5 },
113+ {0x5c , 0x0 , 0x4ec }, {0x60 , 0x0 , 0x599 }, {0x64 , 0x0 , 0x647 }, {0x68 , 0x0 , 0x6f2 },
114+ {0x6c , 0x0 , 0x82b }, {0x70 , 0x0 , 0x82b }, {0x74 , 0x0 , 0x82b }, {0x78 , 0x0 , 0x82b },
115+ {-1 , 0 , 0 },
116+ };
117+
118+ struct entry t8103_ane_perf_entry [] = {
119+ {0x8 , 0xff , 0xf8a96 }, {0xc , 0xff , 0x11ca11 },
120+ {0x10 , 0xff , 0x15c4ad }, {0x14 , 0xff , 0x1cafc0 },
121+ {0x18 , 0xff , 0x1c858e }, {0x1c , 0xff , 0x20cf3d },
122+ {0x20 , 0xff , 0x2087b1 }, {0x24 , 0xff , 0x294c83 },
123+ {0x28 , 0xff , 0x2b6ffb }, {0x2c , 0xff , 0x2cfb4c },
124+ {0x30 , 0xff , 0x305c9b }, {0x34 , 0xff , 0x2e277f },
125+ {0x38 , 0xff , 0x0 }, {0x3c , 0xff , 0x0 },
126+ {0x40 , 0xff , 0x0 }, {0x48 , 0xff , 0xd47e2 },
127+ {0x4c , 0xff , 0x11ca11 }, {0x50 , 0xff , 0x15c4ad },
128+ {0x54 , 0xff , 0x1a1c07 }, {0x58 , 0xff , 0x1c858e },
129+ {0x5c , 0xff , 0x20cf3d }, {0x60 , 0xff , 0x2087b1 },
130+ {0x64 , 0xff , 0x270050 }, {0x68 , 0xff , 0x28cacd },
131+ {0x6c , 0xff , 0x2b19cc }, {0x70 , 0xff , 0x2b09f6 },
132+ {0x74 , 0xff , 0x2cd4e0 }, {0x78 , 0xff , 0x0 },
133+ {0x7c , 0xff , 0x0 }, {0x80 , 0xff , 0x0 },
134+ {0x88 , 0xff , 0xb8130 }, {0x8c , 0xff , 0xf5f41 },
135+ {0x90 , 0xff , 0x12b938 }, {0x94 , 0xff , 0x167287 },
136+ {0x98 , 0xff , 0x14710e }, {0x9c , 0xff , 0x18b58d },
137+ {0xa0 , 0xff , 0x147c37 }, {0xa4 , 0xff , 0x1635ee },
138+ {0xa8 , 0xff , 0x18560a }, {0xac , 0xff , 0x18737e },
139+ {0xb0 , 0xff , 0x19e10d }, {0xb4 , 0xff , 0x0 },
140+ {0xb8 , 0xff , 0x0 }, {0xbc , 0xff , 0x0 },
141+ {0xc0 , 0xff , 0x0 }, {-1 , 0 , 0 },
142+ };
143+
144+ struct entry t8103_ane_dpe_soc_entry [] = {
145+ {0x24 , 0x0 , 0x226 }, {0x28 , 0x0 , 0x6b7 }, {0x2c , 0x0 , 0xd8 }, {0x30 , 0x0 , 0x1af },
146+ {0x34 , 0x0 , 0x35e }, {0x38 , 0x0 , 0x6bb }, {0x3c , 0x0 , 0x226 }, {0x40 , 0x0 , 0x6b7 },
147+ {0x44 , 0x0 , 0xd8 }, {0x48 , 0x0 , 0x1af }, {0x4c , 0x0 , 0x35e }, {0x50 , 0x0 , 0x6bb },
148+ {0x54 , 0x0 , 0x21c }, {0x58 , 0x0 , 0x69a }, {0x5c , 0x0 , 0xd4 }, {0x60 , 0x0 , 0x1a8 },
149+ {0x64 , 0x0 , 0x34f }, {0x68 , 0x0 , 0x69e }, {0x6c , 0x0 , 0x213 }, {0x70 , 0x0 , 0x67c },
150+ {0x74 , 0x0 , 0xd0 }, {0x78 , 0x0 , 0x1a0 }, {0x7c , 0x0 , 0x340 }, {0x80 , 0x0 , 0x680 },
151+ {0x84 , 0x0 , 0x210 }, {0x88 , 0x0 , 0x671 }, {0x8c , 0x0 , 0xcf }, {0x90 , 0x0 , 0x19e },
152+ {0x94 , 0x0 , 0x33b }, {0x98 , 0x0 , 0x675 }, {0x9c , 0x0 , 0x20b }, {0xa0 , 0x0 , 0x664 },
153+ {0xa4 , 0x0 , 0xcd }, {0xa8 , 0x0 , 0x19a }, {0xac , 0x0 , 0x334 }, {0xb0 , 0x0 , 0x668 },
154+ {0xb4 , 0x0 , 0x20b }, {0xb8 , 0x0 , 0x662 }, {0xbc , 0x0 , 0xcd }, {0xc0 , 0x0 , 0x19a },
155+ {0xc4 , 0x0 , 0x333 }, {0xc8 , 0x0 , 0x666 }, {0xcc , 0x0 , 0x20e }, {0xd0 , 0x0 , 0x66d },
156+ {0xd4 , 0x0 , 0xcf }, {0xd8 , 0x0 , 0x19d }, {0xdc , 0x0 , 0x339 }, {0xe0 , 0x0 , 0x671 },
157+ {0xe4 , 0x0 , 0x212 }, {0xe8 , 0x0 , 0x67a }, {0xec , 0x0 , 0xd0 }, {0xf0 , 0x0 , 0x1a0 },
158+ {0xf4 , 0x0 , 0x33f }, {0xf8 , 0x0 , 0x67e }, {0xfc , 0x0 , 0x22d }, {0x100 , 0x0 , 0x6cc },
159+ {0x104 , 0x0 , 0xda }, {0x108 , 0x0 , 0x1b4 }, {0x10c , 0x0 , 0x368 }, {0x110 , 0x0 , 0x6d0 },
160+ {0x114 , 0x0 , 0x25f }, {0x118 , 0x0 , 0x768 }, {0x11c , 0x0 , 0xee }, {0x120 , 0x0 , 0x1dc },
161+ {0x124 , 0x0 , 0x3b7 }, {0x128 , 0x0 , 0x76d }, {0x12c , 0x0 , 0x2ab }, {0x130 , 0x0 , 0x857 },
162+ {0x134 , 0x0 , 0x10c }, {0x138 , 0x0 , 0x217 }, {0x13c , 0x0 , 0x42e }, {0x140 , 0x0 , 0x85c },
163+ {0x144 , 0x0 , 0x384 }, {0x148 , 0x0 , 0xafd }, {0x14c , 0x0 , 0x161 }, {0x150 , 0x0 , 0x2c2 },
164+ {0x154 , 0x0 , 0x583 }, {0x158 , 0x0 , 0xb05 }, {0x15c , 0x0 , 0x384 }, {0x160 , 0x0 , 0xafd },
165+ {0x164 , 0x0 , 0x161 }, {0x168 , 0x0 , 0x2c2 }, {0x16c , 0x0 , 0x583 }, {0x170 , 0x0 , 0xb05 },
166+ {0x174 , 0x0 , 0x384 }, {0x178 , 0x0 , 0xafd }, {0x17c , 0x0 , 0x161 }, {0x180 , 0x0 , 0x2c2 },
167+ {0x184 , 0x0 , 0x583 }, {0x188 , 0x0 , 0xb05 }, {0x18c , 0x0 , 0x384 }, {0x190 , 0x0 , 0xafd },
168+ {0x194 , 0x0 , 0x161 }, {0x198 , 0x0 , 0x2c2 }, {0x19c , 0x0 , 0x583 }, {0x1a0 , 0x0 , 0xb05 },
169+ {-1 , 0 , 0 },
170+ };
171+
172+ struct sequence t8103_ane_tunables [] = {
173+ {t8103_ane_pmgr_entry , 0x26a000000 },
174+ {t8103_ane_dart_entry , 0x26b800000 },
175+ {t8103_ane_dart_entry , 0x26b810000 },
176+ {t8103_ane_dart_entry , 0x26b820000 },
177+ {t8103_ane_dapf_entry , 0x26b804000 },
178+ {t8103_ane_dpe_sys_entry , 0x26b8f0000 },
179+ {t8103_ane_perf_entry , 0x26b908000 },
180+ {t8103_ane_dpe_soc_entry , 0x26b8f4000 },
181+ {NULL , -1 },
182+ };
183+
79184static void tunables_apply (struct sequence * seq )
80185{
81186 struct entry * entry = seq -> entry ;
@@ -112,6 +217,7 @@ int tunables_apply_static(void)
112217 switch (chip_id ) {
113218 case T8103 :
114219 ret |= power_and_apply ("/arm-io/sgx" , t8103_agx_tunables );
220+ ret |= power_and_apply ("/arm-io/ane" , t8103_ane_tunables );
115221 break ;
116222 case T8112 :
117223 ret |= power_and_apply ("/arm-io/sgx" , t8112_agx_tunables );
0 commit comments