Lines Matching +full:1 +full:a0

27 	LONG_S	t1, THREAD_STATUS(a0)
28 cpu_save_nonscratch a0
29 LONG_S ra, THREAD_REG31(a0)
40 sll t0, 7-LONGLOG-1
42 LONG_ADDI t2, a0, THREAD_CVMSEG /* Where to store CVMSEG to */
47 subu t0, 1 /* Decrement loop var */
87 move v0, a0
92 * void octeon_cop2_save(struct octeon_cop2_state *a0)
105 sd t0, OCTEON_CP2_CRC_IV(a0)
106 sd t1, OCTEON_CP2_CRC_LENGTH(a0)
108 bbit1 t9, 28, 1f
109 sd t2, OCTEON_CP2_CRC_POLY(a0)
114 sd t0, OCTEON_CP2_LLM_DAT(a0)
116 1: bbit1 t9, 26, 3f /* done if CvmCtl[NOCRYPTO] set */
117 sd t1, OCTEON_CP2_LLM_DAT+8(a0)
120 /* this part is mostly common to both pass 1 and later revisions */
125 sd t0, OCTEON_CP2_3DES_IV(a0)
127 sd t1, OCTEON_CP2_3DES_KEY(a0)
128 dmfc2 t1, 0x0111 /* only necessary for pass 1 */
129 sd t2, OCTEON_CP2_3DES_KEY+8(a0)
131 sd t3, OCTEON_CP2_3DES_KEY+16(a0)
133 sd t0, OCTEON_CP2_3DES_RESULT(a0)
135 sd t1, OCTEON_CP2_AES_INP0(a0) /* only necessary for pass 1 */
137 sd t2, OCTEON_CP2_AES_IV(a0)
139 sd t3, OCTEON_CP2_AES_IV+8(a0)
141 sd t0, OCTEON_CP2_AES_KEY(a0)
143 sd t1, OCTEON_CP2_AES_KEY+8(a0)
145 sd t2, OCTEON_CP2_AES_KEY+16(a0)
147 sd t3, OCTEON_CP2_AES_KEY+24(a0)
149 sd t0, OCTEON_CP2_AES_KEYLEN(a0)
151 sd t1, OCTEON_CP2_AES_RESULT(a0)
154 sd t2, OCTEON_CP2_AES_RESULT+8(a0)
163 sd t1, OCTEON_CP2_HSH_DATW(a0)
165 sd t2, OCTEON_CP2_HSH_DATW+8(a0)
167 sd t3, OCTEON_CP2_HSH_DATW+16(a0)
169 sd t0, OCTEON_CP2_HSH_DATW+24(a0)
171 sd t1, OCTEON_CP2_HSH_DATW+32(a0)
173 sd t2, OCTEON_CP2_HSH_DATW+40(a0)
175 sd t3, OCTEON_CP2_HSH_DATW+48(a0)
177 sd t0, OCTEON_CP2_HSH_DATW+56(a0)
179 sd t1, OCTEON_CP2_HSH_DATW+64(a0)
181 sd t2, OCTEON_CP2_HSH_DATW+72(a0)
183 sd t3, OCTEON_CP2_HSH_DATW+80(a0)
185 sd t0, OCTEON_CP2_HSH_DATW+88(a0)
187 sd t1, OCTEON_CP2_HSH_DATW+96(a0)
189 sd t2, OCTEON_CP2_HSH_DATW+104(a0)
191 sd t3, OCTEON_CP2_HSH_DATW+112(a0)
193 sd t0, OCTEON_CP2_HSH_IVW(a0)
195 sd t1, OCTEON_CP2_HSH_IVW+8(a0)
197 sd t2, OCTEON_CP2_HSH_IVW+16(a0)
199 sd t3, OCTEON_CP2_HSH_IVW+24(a0)
201 sd t0, OCTEON_CP2_HSH_IVW+32(a0)
203 sd t1, OCTEON_CP2_HSH_IVW+40(a0)
205 sd t2, OCTEON_CP2_HSH_IVW+48(a0)
207 sd t3, OCTEON_CP2_HSH_IVW+56(a0)
209 sd t0, OCTEON_CP2_GFM_MULT(a0)
211 sd t1, OCTEON_CP2_GFM_MULT+8(a0)
212 sd t2, OCTEON_CP2_GFM_POLY(a0)
213 sd t3, OCTEON_CP2_GFM_RESULT(a0)
215 sd t0, OCTEON_CP2_GFM_RESULT+8(a0)
219 sd t0, OCTEON_CP2_SHA3(a0)
220 sd t1, OCTEON_CP2_SHA3+8(a0)
225 2: /* pass 1 special stuff when !CvmCtl[NOCRYPTO] */
230 sd t3, OCTEON_CP2_HSH_DATW(a0)
232 sd t0, OCTEON_CP2_HSH_DATW+8(a0)
234 sd t1, OCTEON_CP2_HSH_DATW+16(a0)
236 sd t2, OCTEON_CP2_HSH_DATW+24(a0)
238 sd t3, OCTEON_CP2_HSH_DATW+32(a0)
240 sd t0, OCTEON_CP2_HSH_DATW+40(a0)
242 sd t1, OCTEON_CP2_HSH_DATW+48(a0)
243 sd t2, OCTEON_CP2_HSH_IVW(a0)
244 sd t3, OCTEON_CP2_HSH_IVW+8(a0)
245 sd t0, OCTEON_CP2_HSH_IVW+16(a0)
247 3: /* pass 1 or CvmCtl[NOCRYPTO] set */
254 * void octeon_cop2_restore(struct octeon_cop2_state *a0)
261 pref 4, 128(a0)
264 pref 4, 256(a0)
265 ld t0, OCTEON_CP2_CRC_IV(a0)
266 pref 4, 384(a0)
267 ld t1, OCTEON_CP2_CRC_LENGTH(a0)
268 ld t2, OCTEON_CP2_CRC_POLY(a0)
277 ld t0, OCTEON_CP2_LLM_DAT(a0)
278 ld t1, OCTEON_CP2_LLM_DAT+8(a0)
286 /* Restore the COP2 crypto state common to pass 1 and pass 2 */
287 ld t0, OCTEON_CP2_3DES_IV(a0)
288 ld t1, OCTEON_CP2_3DES_KEY(a0)
289 ld t2, OCTEON_CP2_3DES_KEY+8(a0)
291 ld t0, OCTEON_CP2_3DES_KEY+16(a0)
293 ld t1, OCTEON_CP2_3DES_RESULT(a0)
295 ld t2, OCTEON_CP2_AES_INP0(a0) /* only really needed for pass 1 */
297 ld t0, OCTEON_CP2_AES_IV(a0)
299 ld t1, OCTEON_CP2_AES_IV+8(a0)
300 dmtc2 t2, 0x010A /* only really needed for pass 1 */
301 ld t2, OCTEON_CP2_AES_KEY(a0)
303 ld t0, OCTEON_CP2_AES_KEY+8(a0)
305 ld t1, OCTEON_CP2_AES_KEY+16(a0)
307 ld t2, OCTEON_CP2_AES_KEY+24(a0)
309 ld t0, OCTEON_CP2_AES_KEYLEN(a0)
311 ld t1, OCTEON_CP2_AES_RESULT(a0)
313 ld t2, OCTEON_CP2_AES_RESULT+8(a0)
321 /* this code is specific for pass 1 */
322 ld t0, OCTEON_CP2_HSH_DATW(a0)
323 ld t1, OCTEON_CP2_HSH_DATW+8(a0)
324 ld t2, OCTEON_CP2_HSH_DATW+16(a0)
326 ld t0, OCTEON_CP2_HSH_DATW+24(a0)
328 ld t1, OCTEON_CP2_HSH_DATW+32(a0)
330 ld t2, OCTEON_CP2_HSH_DATW+40(a0)
332 ld t0, OCTEON_CP2_HSH_DATW+48(a0)
334 ld t1, OCTEON_CP2_HSH_IVW(a0)
336 ld t2, OCTEON_CP2_HSH_IVW+8(a0)
338 ld t0, OCTEON_CP2_HSH_IVW+16(a0)
345 ld t2, OCTEON_CP2_HSH_DATW(a0)
347 ld t0, OCTEON_CP2_HSH_DATW+8(a0)
348 ld t1, OCTEON_CP2_HSH_DATW+16(a0)
350 ld t2, OCTEON_CP2_HSH_DATW+24(a0)
352 ld t0, OCTEON_CP2_HSH_DATW+32(a0)
354 ld t1, OCTEON_CP2_HSH_DATW+40(a0)
356 ld t2, OCTEON_CP2_HSH_DATW+48(a0)
358 ld t0, OCTEON_CP2_HSH_DATW+56(a0)
360 ld t1, OCTEON_CP2_HSH_DATW+64(a0)
362 ld t2, OCTEON_CP2_HSH_DATW+72(a0)
364 ld t0, OCTEON_CP2_HSH_DATW+80(a0)
366 ld t1, OCTEON_CP2_HSH_DATW+88(a0)
368 ld t2, OCTEON_CP2_HSH_DATW+96(a0)
370 ld t0, OCTEON_CP2_HSH_DATW+104(a0)
372 ld t1, OCTEON_CP2_HSH_DATW+112(a0)
374 ld t2, OCTEON_CP2_HSH_IVW(a0)
376 ld t0, OCTEON_CP2_HSH_IVW+8(a0)
378 ld t1, OCTEON_CP2_HSH_IVW+16(a0)
380 ld t2, OCTEON_CP2_HSH_IVW+24(a0)
382 ld t0, OCTEON_CP2_HSH_IVW+32(a0)
384 ld t1, OCTEON_CP2_HSH_IVW+40(a0)
386 ld t2, OCTEON_CP2_HSH_IVW+48(a0)
388 ld t0, OCTEON_CP2_HSH_IVW+56(a0)
390 ld t1, OCTEON_CP2_GFM_MULT(a0)
392 ld t2, OCTEON_CP2_GFM_MULT+8(a0)
394 ld t0, OCTEON_CP2_GFM_POLY(a0)
396 ld t1, OCTEON_CP2_GFM_RESULT(a0)
398 ld t2, OCTEON_CP2_GFM_RESULT+8(a0)
405 ld t0, OCTEON_CP2_SHA3(a0)
406 ld t1, OCTEON_CP2_SHA3+8(a0)
440 ori k1, $0, 1
459 sd $11, PT_MTP+(1*8)(sp) /* store P1 */
462 ori $13, $0, 1
472 sd $10, PT_MPL+(1*8)(sp) /* store MPL1 */
521 ld $10, PT_MPL+(1*8)(sp) /* read MPL1 */
533 ld $12, PT_MTP+(1*8)(sp) /* read P1 */