diff -ruN a/src/libcec/CMakeLists.txt b/src/libcec/CMakeLists.txt
--- a/src/libcec/CMakeLists.txt	2016-01-19 17:52:02.000000000 -0700
+++ b/src/libcec/CMakeLists.txt	2016-02-10 20:42:52.894739494 -0700
@@ -100,6 +100,9 @@
                 adapter/RPi/RPiCECAdapterMessageQueue.h
                 adapter/RPi/RPiCECAdapterCommunication.h
                 adapter/RPi/RPiCECAdapterDetection.h
+                adapter/IMX/AdapterMessageQueue.h
+                adapter/IMX/IMXCECAdapterCommunication.h
+                adapter/IMX/IMXCECAdapterDetection.h
                 CECInputBuffer.h
                 platform/util/baudrate.h
                 platform/util/edid.h
diff -ruN a/src/libcec/cmake/CheckPlatformSupport.cmake b/src/libcec/cmake/CheckPlatformSupport.cmake
--- a/src/libcec/cmake/CheckPlatformSupport.cmake	2016-01-19 17:52:02.000000000 -0700
+++ b/src/libcec/cmake/CheckPlatformSupport.cmake	2016-02-10 20:43:38.414527995 -0700
@@ -9,6 +9,7 @@
 #       HAVE_RPI_API              1 if Raspberry Pi is supported
 #       HAVE_TDA995X_API          1 if TDA995X is supported
 #       HAVE_EXYNOS_API           1 if Exynos is supported
+#       HAVE_IMX6_API             1 if iMX.6 is supported
 #       HAVE_P8_USB               1 if Pulse-Eight devices are supported
 #       HAVE_P8_USB_DETECT        1 if Pulse-Eight devices can be auto-detected
 #       HAVE_DRM_EDID_PARSER      1 if DRM EDID parsing is supported
@@ -132,6 +133,18 @@
   else()
     set(HAVE_EXYNOS_API 0)
   endif()
+
+  # i.MX6
+  if (${HAVE_IMX6_API})
+    set(LIB_INFO "${LIB_INFO}, 'i.MX6'")
+    set(HAVE_IMX6_API 1)
+    set(CEC_SOURCES_ADAPTER_IMX6 adapter/IMX/IMXCECAdapterCommunication.cpp
+                                 adapter/IMX/IMXCECAdapterDetection.cpp)
+    source_group("Source Files\\adapter\\IMX" FILES ${CEC_SOURCES_ADAPTER_IMX6})
+    list(APPEND CEC_SOURCES ${CEC_SOURCES_ADAPTER_IMX6})
+  else()
+    set(HAVE_IMX6_API 0)
+  endif()
 endif()
 
 # rt
diff -ruN a/src/libcec/cmake/DisplayPlatformSupport.cmake b/src/libcec/cmake/DisplayPlatformSupport.cmake
--- a/src/libcec/cmake/DisplayPlatformSupport.cmake	2016-01-19 17:52:02.000000000 -0700
+++ b/src/libcec/cmake/DisplayPlatformSupport.cmake	2016-02-10 20:42:52.899739541 -0700
@@ -44,6 +44,12 @@
   message(STATUS "DRM support:                            no")
 endif()
 
+if (HAVE_IMX6_API)
+  message(STATUS "i.MX6 support:                          yes")
+else()
+  message(STATUS "i.MX6 support:                          no")
+endif()
+
 if (HAVE_PYTHON)
   message(STATUS "Python support:                         version ${PYTHONLIBS_VERSION_STRING} (${PYTHON_VERSION})")
 else()
diff -ruN a/src/libcec/env.h.in b/src/libcec/env.h.in
--- a/src/libcec/env.h.in	2016-01-19 17:52:02.000000000 -0700
+++ b/src/libcec/env.h.in	2016-02-10 20:42:52.899739541 -0700
@@ -69,6 +69,9 @@
 /* Define to 1 for TDA995x support */
 #cmakedefine HAVE_TDA995X_API @HAVE_TDA995X_API@
 
+/* Define to 1 for IMX6 support */
+#cmakedefine HAVE_IMX6_API @HAVE_IMX6_API@
+
 /* Define to 1 for Exynos support */
 #cmakedefine HAVE_EXYNOS_API @HAVE_EXYNOS_API@