1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  *  Copyright (C) Intel 2011
4  *
5  * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
6  *
7  * The PTI (Parallel Trace Interface) driver directs trace data routed from
8  * various parts in the system out through the Intel Penwell PTI port and
9  * out of the mobile device for analysis with a debugging tool
10  * (Lauterbach, Fido). This is part of a solution for the MIPI P1149.7,
11  * compact JTAG, standard.
12  *
13  * This header file will allow other parts of the OS to use the
14  * interface to write out it's contents for debugging a mobile system.
15  */
16 
17 #ifndef LINUX_INTEL_PTI_H_
18 #define LINUX_INTEL_PTI_H_
19 
20 /* offset for last dword of any PTI message. Part of MIPI P1149.7 */
21 #define PTI_LASTDWORD_DTS	0x30
22 
23 /* basic structure used as a write address to the PTI HW */
24 struct pti_masterchannel {
25 	u8 master;
26 	u8 channel;
27 };
28 
29 /* the following functions are defined in misc/pti.c */
30 void pti_writedata(struct pti_masterchannel *mc, u8 *buf, int count);
31 struct pti_masterchannel *pti_request_masterchannel(u8 type,
32 						    const char *thread_name);
33 void pti_release_masterchannel(struct pti_masterchannel *mc);
34 
35 #endif /* LINUX_INTEL_PTI_H_ */
36