blob: fcd841a90f2f2b67af037cf2c91009b32191fa4d [file] [log] [blame]
Thomas Gleixner1802d0b2019-05-27 08:55:21 +02001/* SPDX-License-Identifier: GPL-2.0-only */
J Freyensee0b61d2a2011-05-06 16:56:49 -07002/*
3 * Copyright (C) Intel 2011
4 *
J Freyensee0b61d2a2011-05-06 16:56:49 -07005 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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
Ingo Molnar1784f912017-12-05 14:14:47 +010017#ifndef LINUX_INTEL_PTI_H_
18#define LINUX_INTEL_PTI_H_
J Freyensee0b61d2a2011-05-06 16:56:49 -070019
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 */
24struct pti_masterchannel {
25 u8 master;
26 u8 channel;
27};
28
29/* the following functions are defined in misc/pti.c */
30void pti_writedata(struct pti_masterchannel *mc, u8 *buf, int count);
J Freyensee8168e9c2011-06-17 15:09:53 -070031struct pti_masterchannel *pti_request_masterchannel(u8 type,
32 const char *thread_name);
J Freyensee0b61d2a2011-05-06 16:56:49 -070033void pti_release_masterchannel(struct pti_masterchannel *mc);
34
Ingo Molnar1784f912017-12-05 14:14:47 +010035#endif /* LINUX_INTEL_PTI_H_ */