vblank: add set_vblank_fps functionality for the given PID
[platform/core/uifw/libtdm.git] / protocol / tdm.xml
index 308fe8c..0a157e0 100644 (file)
@@ -8,14 +8,32 @@
       TDM uses the wayland protocol to communicate between tdm client and tdm server.
         </description>
 
+        <event name="debug_done">
+            <arg name="message" type="string"/>
+        </event>
+
+        <request name="debug">
+            <arg name="options" type="string" summary="debug options"/>
+        </request>
+
         <request name="create_output">
-            <arg name="name" type="string" summary="output's name"/>
+            <arg name="name" type="string" summary="output's name. 'primary' or 'default' can be used for default."/>
             <arg name="id" type="new_id" interface="wl_tdm_output"/>
         </request>
 
+        <request name="set_client_vblank_fps">
+            <arg name="pid" type="uint"/>
+            <arg name="name" type="string"/>
+            <arg name="fps" type="uint"/>
+        </request>
+
     </interface>
 
     <interface name="wl_tdm_output" version="1">
+        <description summary="TDM client output object">
+      When the DPMS of connection status of the output is changed, TDM server
+      will send wl_tdm_output.mode and wl_tdm_output.dpms event.
+        </description>
 
         <event name="mode">
             <arg name="width" type="uint"/>
 
         <event name="done">
             <arg name="req_id" type="uint" summary="wait_vblank request ID"/>
-            <arg name="sequence" type="uint" summary="sequence of the HW vblank"/>
-            <arg name="tv_sec" type="uint" summary="sec of the HW vblank in kernel side"/>
-            <arg name="tv_usec" type="uint" summary="usec of the HW vblank in kernel side"/>
+            <arg name="sequence" type="uint" summary="the sequence number of the vblank"/>
+            <arg name="tv_sec" type="uint" summary="sec of the vblank"/>
+            <arg name="tv_usec" type="uint" summary="usec of the vblank"/>
             <arg name="error" type="uint" summary="error status enumeration"/>
         </event>
 
+        <event name="fps_changed" />
+
         <request name="destroy" type="destructor"/>
 
+        <request name="set_name">
+            <arg name="name" type="string"/>
+        </request>
+
         <request name="set_fps">
             <arg name="fps" type="uint"/>
         </request>
 
         <request name="wait_vblank">
             <description summary="Wait for a HW vblank">
-          When wl_tdm_vblank.wait_vblank is called, TDM server will send the wl_tdm_vblank.done
-          event which is aligned with HW vblank. Even if DPMS is off, it will send
-          wl_tdm_vblank.done events by using SW timer.
+          When wl_tdm_vblank.wait_vblank is called, TDM server will send the
+          wl_tdm_vblank.done event after interval vblanks. If enable_fake == 1,
+          TDM server will send the done event always. Otherwise, TDM server will
+          send the done event with TDM error value.
             </description>
 
             <arg name="interval" type="uint"/>
             <arg name="req_usec" type="uint" summary="usec of the request time in client side"/>
         </request>
 
+        <request name="wait_vblank_seq">
+            <arg name="sequence" type="uint" summary="the target sequence number"/>
+            <arg name="req_id" type="uint" summary="wait_vblank request ID"/>
+            <arg name="req_sec" type="uint" summary="sec of the request time in client side"/>
+            <arg name="req_usec" type="uint" summary="usec of the request time in client side"/>
+        </request>
+
     </interface>
 
 </protocol>