mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02:00 
			
		
		
		
	stm class: Document the MIPI SyS-T protocol usage
Add a document describing MIPI SyS-T protocol driver usage. Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com> Tested-by: Mathieu Poirier <mathieu.poirier@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
		
							parent
							
								
									95323943b7
								
							
						
					
					
						commit
						4cb3653df0
					
				
					 1 changed files with 62 additions and 0 deletions
				
			
		
							
								
								
									
										62
									
								
								Documentation/trace/sys-t.rst
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								Documentation/trace/sys-t.rst
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,62 @@
 | 
			
		|||
.. SPDX-License-Identifier: GPL-2.0
 | 
			
		||||
 | 
			
		||||
===================
 | 
			
		||||
MIPI SyS-T over STP
 | 
			
		||||
===================
 | 
			
		||||
 | 
			
		||||
The MIPI SyS-T protocol driver can be used with STM class devices to
 | 
			
		||||
generate standardized trace stream. Aside from being a standard, it
 | 
			
		||||
provides better trace source identification and timestamp correlation.
 | 
			
		||||
 | 
			
		||||
In order to use the MIPI SyS-T protocol driver with your STM device,
 | 
			
		||||
first, you'll need CONFIG_STM_PROTO_SYS_T.
 | 
			
		||||
 | 
			
		||||
Now, you can select which protocol driver you want to use when you create
 | 
			
		||||
a policy for your STM device, by specifying it in the policy name:
 | 
			
		||||
 | 
			
		||||
# mkdir /config/stp-policy/dummy_stm.0:p_sys-t.my-policy/
 | 
			
		||||
 | 
			
		||||
In other words, the policy name format is extended like this:
 | 
			
		||||
 | 
			
		||||
  <device_name>:<protocol_name>.<policy_name>
 | 
			
		||||
 | 
			
		||||
With Intel TH, therefore it can look like "0-sth:p_sys-t.my-policy".
 | 
			
		||||
 | 
			
		||||
If the protocol name is omitted, the STM class will chose whichever
 | 
			
		||||
protocol driver was loaded first.
 | 
			
		||||
 | 
			
		||||
You can also double check that everything is working as expected by
 | 
			
		||||
 | 
			
		||||
# cat /config/stp-policy/dummy_stm.0:p_sys-t.my-policy/protocol
 | 
			
		||||
p_sys-t
 | 
			
		||||
 | 
			
		||||
Now, with the MIPI SyS-T protocol driver, each policy node in the
 | 
			
		||||
configfs gets a few additional attributes, which determine per-source
 | 
			
		||||
parameters specific to the protocol:
 | 
			
		||||
 | 
			
		||||
# mkdir /config/stp-policy/dummy_stm.0:p_sys-t.my-policy/default
 | 
			
		||||
# ls /config/stp-policy/dummy_stm.0:p_sys-t.my-policy/default
 | 
			
		||||
channels
 | 
			
		||||
clocksync_interval
 | 
			
		||||
do_len
 | 
			
		||||
masters
 | 
			
		||||
ts_interval
 | 
			
		||||
uuid
 | 
			
		||||
 | 
			
		||||
The most important one here is the "uuid", which determines the UUID
 | 
			
		||||
that will be used to tag all data coming from this source. It is
 | 
			
		||||
automatically generated when a new node is created, but it is likely
 | 
			
		||||
that you would want to change it.
 | 
			
		||||
 | 
			
		||||
do_len switches on/off the additional "payload length" field in the
 | 
			
		||||
MIPI SyS-T message header. It is off by default as the STP already
 | 
			
		||||
marks message boundaries.
 | 
			
		||||
 | 
			
		||||
ts_interval and clocksync_interval determine how much time in milliseconds
 | 
			
		||||
can pass before we need to include a protocol (not transport, aka STP)
 | 
			
		||||
timestamp in a message header or send a CLOCKSYNC packet, respectively.
 | 
			
		||||
 | 
			
		||||
See Documentation/ABI/testing/configfs-stp-policy-p_sys-t for more
 | 
			
		||||
details.
 | 
			
		||||
 | 
			
		||||
* [1] https://www.mipi.org/specifications/sys-t
 | 
			
		||||
		Loading…
	
		Reference in a new issue