diff --git a/services/surfaceflinger/EventThread.cpp b/services/surfaceflinger/EventThread.cpp
index 463e60c..7e0506b 100644
--- a/services/surfaceflinger/EventThread.cpp
+++ b/services/surfaceflinger/EventThread.cpp
@@ -389,7 +389,7 @@
 
 EventThread::Connection::Connection(
         const sp<EventThread>& eventThread)
-    : count(-1), mEventThread(eventThread), mChannel(new BitTube())
+    : count(-1), mEventThread(eventThread), mChannel(new gui::BitTube())
 {
 }
 
@@ -403,7 +403,7 @@
     mEventThread->registerDisplayEventConnection(this);
 }
 
-status_t EventThread::Connection::getDataChannel(sp<BitTube>* outChannel) const {
+status_t EventThread::Connection::getDataChannel(sp<gui::BitTube>* outChannel) const {
     *outChannel = mChannel;
     return NO_ERROR;
 }
diff --git a/services/surfaceflinger/EventThread.h b/services/surfaceflinger/EventThread.h
index c0b5532..3e05749 100644
--- a/services/surfaceflinger/EventThread.h
+++ b/services/surfaceflinger/EventThread.h
@@ -68,11 +68,11 @@
     private:
         virtual ~Connection();
         virtual void onFirstRef();
-        status_t getDataChannel(sp<BitTube>* outChannel) const override;
+        status_t getDataChannel(sp<gui::BitTube>* outChannel) const override;
         status_t setVsyncRate(uint32_t count) override;
         void requestNextVsync() override;    // asynchronous
         sp<EventThread> const mEventThread;
-        sp<BitTube> const mChannel;
+        sp<gui::BitTube> const mChannel;
     };
 
 public:
diff --git a/services/surfaceflinger/MessageQueue.h b/services/surfaceflinger/MessageQueue.h
index aed0aa9..2bb5fa6 100644
--- a/services/surfaceflinger/MessageQueue.h
+++ b/services/surfaceflinger/MessageQueue.h
@@ -81,7 +81,7 @@
     sp<Looper> mLooper;
     sp<EventThread> mEventThread;
     sp<IDisplayEventConnection> mEvents;
-    sp<BitTube> mEventTube;
+    sp<gui::BitTube> mEventTube;
     sp<Handler> mHandler;
 
 
