diff --git a/graphics/composer/2.1/Android.bp b/graphics/composer/2.1/Android.bp
index fa58dbb..cf416c7 100644
--- a/graphics/composer/2.1/Android.bp
+++ b/graphics/composer/2.1/Android.bp
@@ -50,12 +50,12 @@
         "libhwbinder",
         "libutils",
         "libcutils",
-        "android.hardware.graphics.allocator@2.0",
+        "android.hardware.graphics.common@1.0",
     ],
     export_shared_lib_headers: [
         "libhidl",
         "libhwbinder",
         "libutils",
-        "android.hardware.graphics.allocator@2.0",
+        "android.hardware.graphics.common@1.0",
     ],
 }
diff --git a/graphics/composer/2.1/IComposer.hal b/graphics/composer/2.1/IComposer.hal
index 7bfa22b..dd61c11 100644
--- a/graphics/composer/2.1/IComposer.hal
+++ b/graphics/composer/2.1/IComposer.hal
@@ -16,7 +16,7 @@
 
 package android.hardware.graphics.composer@2.1;
 
-import android.hardware.graphics.allocator@2.0::PixelFormat;
+import android.hardware.graphics.common@1.0;
 import IComposerCallback;
 
 interface IComposer {
@@ -845,7 +845,7 @@
      */
 
     /*
-     * Asynchonously sets the position of a cursor layer.
+     * Asynchronously sets the position of a cursor layer.
      *
      * Prior to validateDisplay, a layer may be marked as Composition::CURSOR.
      * If validation succeeds (i.e., the device does not request a composition
diff --git a/graphics/composer/2.1/default/Hwc.cpp b/graphics/composer/2.1/default/Hwc.cpp
index d45a955..7fa5119 100644
--- a/graphics/composer/2.1/default/Hwc.cpp
+++ b/graphics/composer/2.1/default/Hwc.cpp
@@ -37,7 +37,12 @@
 namespace V2_1 {
 namespace implementation {
 
-using android::hardware::graphics::allocator::V2_0::PixelFormat;
+using android::hardware::graphics::common::V1_0::PixelFormat;
+using android::hardware::graphics::common::V1_0::Transform;
+using android::hardware::graphics::common::V1_0::Dataspace;
+using android::hardware::graphics::common::V1_0::ColorMode;
+using android::hardware::graphics::common::V1_0::ColorTransform;
+using android::hardware::graphics::common::V1_0::Hdr;
 
 namespace {
 
diff --git a/graphics/composer/2.1/types.hal b/graphics/composer/2.1/types.hal
index 3c591b3..9c2e1d7 100644
--- a/graphics/composer/2.1/types.hal
+++ b/graphics/composer/2.1/types.hal
@@ -32,132 +32,3 @@
 typedef uint32_t Config;
 typedef uint64_t Display;
 typedef uint64_t Layer;
-
-/*
- * Copied from android_transform_t
- *
- * TODO(olv) copy comments over and generate android_transform_t
- */
-enum Transform : int32_t {
-    FLIP_H    = 0x1,
-    FLIP_V    = 0x2,
-    ROT_90    = 0x4,
-    ROT_180   = 0x3,
-    ROT_270   = 0x7,
-    RESERVED  = 0x8,
-};
-
-/*
- * Copied from android_color_mode_t
- *
- * TODO(olv) copy comments over and generate android_color_mode_t
- */
-enum ColorMode : int32_t {
-  NATIVE                        = 0,
-  STANDARD_BT601_625            = 1,
-  STANDARD_BT601_625_UNADJUSTED = 2,
-  STANDARD_BT601_525            = 3,
-  STANDARD_BT601_525_UNADJUSTED = 4,
-  STANDARD_BT709                = 5,
-  DCI_P3                        = 6,
-  SRGB                          = 7,
-  ADOBE_RGB                     = 8,
-};
-
-/*
- * Copied from android_color_transform_t
- *
- * TODO(olv) copy comments over and generate android_color_transform_t
- */
-enum ColorTransform : int32_t {
-    IDENTITY             = 0,
-    ARBITRARY_MATRIX     = 1,
-    VALUE_INVERSE        = 2,
-    GRAYSCALE            = 3,
-    CORRECT_PROTANOPIA   = 4,
-    CORRECT_DEUTERANOPIA = 5,
-    CORRECT_TRITANOPIA   = 6
-};
-
-/*
- * Copied from android_dataspace_t
- *
- * TODO(olv) copy comments over and generate android_dataspace_t
- */
-enum Dataspace : int32_t {
-    UNKNOWN                            = 0x0,
-    ARBITRARY                          = 0x1,
-
-    STANDARD_SHIFT                     = 16,
-    STANDARD_MASK                      = 63 << STANDARD_SHIFT,
-    STANDARD_UNSPECIFIED               = 0 << STANDARD_SHIFT,
-    STANDARD_BT709                     = 1 << STANDARD_SHIFT,
-    STANDARD_BT601_625                 = 2 << STANDARD_SHIFT,
-    STANDARD_BT601_625_UNADJUSTED      = 3 << STANDARD_SHIFT,
-    STANDARD_BT601_525                 = 4 << STANDARD_SHIFT,
-    STANDARD_BT601_525_UNADJUSTED      = 5 << STANDARD_SHIFT,
-    STANDARD_BT2020                    = 6 << STANDARD_SHIFT,
-    STANDARD_BT2020_CONSTANT_LUMINANCE = 7 << STANDARD_SHIFT,
-    STANDARD_BT470M                    = 8 << STANDARD_SHIFT,
-    STANDARD_FILM                      = 9 << STANDARD_SHIFT,
-
-    TRANSFER_SHIFT                     = 22,
-    TRANSFER_MASK                      = 31 << TRANSFER_SHIFT,
-    TRANSFER_UNSPECIFIED               = 0 << TRANSFER_SHIFT,
-    TRANSFER_LINEAR                    = 1 << TRANSFER_SHIFT,
-    TRANSFER_SRGB                      = 2 << TRANSFER_SHIFT,
-    TRANSFER_SMPTE_170M                = 3 << TRANSFER_SHIFT,
-    TRANSFER_GAMMA2_2                  = 4 << TRANSFER_SHIFT,
-    TRANSFER_GAMMA2_8                  = 5 << TRANSFER_SHIFT,
-    TRANSFER_ST2084                    = 6 << TRANSFER_SHIFT,
-    TRANSFER_HLG                       = 7 << TRANSFER_SHIFT,
-
-    RANGE_SHIFT                        = 27,
-    RANGE_MASK                         = 7 << RANGE_SHIFT,
-    RANGE_UNSPECIFIED                  = 0 << RANGE_SHIFT,
-    RANGE_FULL                         = 1 << RANGE_SHIFT,
-    RANGE_LIMITED                      = 2 << RANGE_SHIFT,
-
-    SRGB_LINEAR                        = 0x200,
-    V0_SRGB_LINEAR                     = STANDARD_BT709 |
-                                         TRANSFER_LINEAR |
-                                         RANGE_FULL,
-
-    SRGB                               = 0x201,
-    V0_SRGB                            = STANDARD_BT709 |
-                                         TRANSFER_SRGB |
-                                         RANGE_FULL,
-
-    JFIF                               = 0x101,
-    V0_JFIF                            = STANDARD_BT601_625 |
-                                         TRANSFER_SMPTE_170M |
-                                         RANGE_FULL,
-
-    BT601_625                          = 0x102,
-    V0_BT601_625                       = STANDARD_BT601_625 |
-                                         TRANSFER_SMPTE_170M |
-                                         RANGE_LIMITED,
-
-    BT601_525                          = 0x103,
-    V0_BT601_525                       = STANDARD_BT601_525 |
-                                         TRANSFER_SMPTE_170M |
-                                         RANGE_LIMITED,
-
-    BT709                              = 0x104,
-    V0_BT709                           = STANDARD_BT709 |
-                                         TRANSFER_SMPTE_170M |
-                                         RANGE_LIMITED,
-
-    DEPTH                              = 0x1000,
-};
-
-/*
- * Copied from android_hdr_t
- *
- * TODO(olv) copy comments over and generate android_hdr_t
- */
-enum Hdr : int32_t {
-    DOLBY_VISION = 1,
-    HDR10        = 2,
-    HLG          = 3,
-};
