diff --git a/TODO b/TODO
index 677782db..00a32ca1 100644
--- a/TODO
+++ b/TODO
@@ -1,12 +1,5 @@
 Core wayland protocol
 
- - We need rotation information in the output (multiples of 90
-   degrees) and we'll need a way for a client to communicate that it
-   has rendered its buffer according to the output rotation.  The
-   goal is to be able to pageflip directly to the client buffer, and
-   for that we need the client to render accordingly and the
-   compositor needs to know that it did.
-
  - Atomicity.  Currently a lot of the atomicity in Wayland relies on
    how we batch up all requests in a protocol buffer and only flushes
    in the "blockhandler" in the client.  Consensus was that we need
diff --git a/protocol/wayland.xml b/protocol/wayland.xml
index 96ef2485..4b500e6d 100644
--- a/protocol/wayland.xml
+++ b/protocol/wayland.xml
@@ -1001,6 +1001,31 @@
       
     
 
+    
+      
+	This describes the transform that a compositor will apply to a
+	surface to compensate for the rotation or mirroring of an
+	output device.
+
+	The flipped values correspond to an initial flip around a
+	vertical axis followed by rotaion.
+
+	The purpose is mainly to allow clients render accordingly and
+	tell the compositor, so that for fullscreen surfaces, the
+	compositor will still be able to scan out directly from client
+	surfaces.
+      
+
+      
+      
+      
+      
+      
+      
+      
+      
+    
+
     
       
       
       
+