1*7e6ad469SVishal Kulkarni /*
2*7e6ad469SVishal Kulkarni * This file and its contents are supplied under the terms of the
3*7e6ad469SVishal Kulkarni * Common Development and Distribution License ("CDDL"), version 1.0.
4*7e6ad469SVishal Kulkarni * You may only use this file in accordance with the terms of version
5*7e6ad469SVishal Kulkarni * 1.0 of the CDDL.
6*7e6ad469SVishal Kulkarni *
7*7e6ad469SVishal Kulkarni * A full copy of the text of the CDDL should have accompanied this
8*7e6ad469SVishal Kulkarni * source. A copy of the CDDL is also available via the Internet at
9*7e6ad469SVishal Kulkarni * http://www.illumos.org/license/CDDL.
10*7e6ad469SVishal Kulkarni */
11*7e6ad469SVishal Kulkarni
12*7e6ad469SVishal Kulkarni /*
13*7e6ad469SVishal Kulkarni * Copyright (c) 2019 by Chelsio Communications, Inc.
14*7e6ad469SVishal Kulkarni */
15*7e6ad469SVishal Kulkarni
16*7e6ad469SVishal Kulkarni #include "cudbg_view_compat.h"
17*7e6ad469SVishal Kulkarni #include "cudbg.h"
18*7e6ad469SVishal Kulkarni
19*7e6ad469SVishal Kulkarni int
view_ulptx_la_rev0(void * data,struct cudbg_buffer * cudbg_poutbuf)20*7e6ad469SVishal Kulkarni view_ulptx_la_rev0(void *data, struct cudbg_buffer *cudbg_poutbuf)
21*7e6ad469SVishal Kulkarni {
22*7e6ad469SVishal Kulkarni struct cudbg_ulptx_la_rev0 *ulptx_la_buff;
23*7e6ad469SVishal Kulkarni int i, j, rc = 0;
24*7e6ad469SVishal Kulkarni
25*7e6ad469SVishal Kulkarni ulptx_la_buff = (struct cudbg_ulptx_la_rev0 *)data;
26*7e6ad469SVishal Kulkarni
27*7e6ad469SVishal Kulkarni for (i = 0; i < CUDBG_NUM_ULPTX; i++) {
28*7e6ad469SVishal Kulkarni printf("==============================\n");
29*7e6ad469SVishal Kulkarni printf("DUMPING ULP_TX_LA_%d\n", i);
30*7e6ad469SVishal Kulkarni printf("==============================\n");
31*7e6ad469SVishal Kulkarni
32*7e6ad469SVishal Kulkarni printf("[0x%x] %-24s %#x\n",
33*7e6ad469SVishal Kulkarni (A_ULP_TX_LA_RDPTR_0 + 0x10 * i),
34*7e6ad469SVishal Kulkarni cudbg_ulptx_rdptr[i], ulptx_la_buff->rdptr[i]);
35*7e6ad469SVishal Kulkarni printf("[0x%x] %-24s %#x\n",
36*7e6ad469SVishal Kulkarni (A_ULP_TX_LA_WRPTR_0 + 0x10 * i),
37*7e6ad469SVishal Kulkarni cudbg_ulptx_wrptr[i], ulptx_la_buff->wrptr[i]);
38*7e6ad469SVishal Kulkarni printf("[0x%x] %-24s %#-13x\n",
39*7e6ad469SVishal Kulkarni (A_ULP_TX_LA_RDDATA_0 + 0x10 * i),
40*7e6ad469SVishal Kulkarni cudbg_ulptx_rddata[i], ulptx_la_buff->rddata[i]);
41*7e6ad469SVishal Kulkarni
42*7e6ad469SVishal Kulkarni for (j = 0; j < CUDBG_NUM_ULPTX_READ; j++) {
43*7e6ad469SVishal Kulkarni printf("[%#x] %#-16x [%u]\n",
44*7e6ad469SVishal Kulkarni j, ulptx_la_buff->rd_data[i][j],
45*7e6ad469SVishal Kulkarni ulptx_la_buff->rd_data[i][j]);
46*7e6ad469SVishal Kulkarni }
47*7e6ad469SVishal Kulkarni }
48*7e6ad469SVishal Kulkarni
49*7e6ad469SVishal Kulkarni return rc;
50*7e6ad469SVishal Kulkarni }
51