diff --git a/samples/main.cc b/samples/main.cc
index 076ea2b..4348636 100644
--- a/samples/main.cc
+++ b/samples/main.cc
@@ -256,58 +256,20 @@
 std::string TexelFormatToString(
     tint::inspector::ResourceBinding::TexelFormat format) {
   switch (format) {
-    case tint::inspector::ResourceBinding::TexelFormat::kR8Unorm:
-      return "R8Unorm";
-    case tint::inspector::ResourceBinding::TexelFormat::kR8Snorm:
-      return "R8Snorm";
-    case tint::inspector::ResourceBinding::TexelFormat::kR8Uint:
-      return "R8Uint";
-    case tint::inspector::ResourceBinding::TexelFormat::kR8Sint:
-      return "R8Sint";
-    case tint::inspector::ResourceBinding::TexelFormat::kR16Uint:
-      return "R16Uint";
-    case tint::inspector::ResourceBinding::TexelFormat::kR16Sint:
-      return "R16Sint";
-    case tint::inspector::ResourceBinding::TexelFormat::kR16Float:
-      return "R16Float";
-    case tint::inspector::ResourceBinding::TexelFormat::kRg8Unorm:
-      return "Rg8Unorm";
-    case tint::inspector::ResourceBinding::TexelFormat::kRg8Snorm:
-      return "Rg8Snorm";
-    case tint::inspector::ResourceBinding::TexelFormat::kRg8Uint:
-      return "Rg8Uint";
-    case tint::inspector::ResourceBinding::TexelFormat::kRg8Sint:
-      return "Rg8Sint";
     case tint::inspector::ResourceBinding::TexelFormat::kR32Uint:
       return "R32Uint";
     case tint::inspector::ResourceBinding::TexelFormat::kR32Sint:
       return "R32Sint";
     case tint::inspector::ResourceBinding::TexelFormat::kR32Float:
       return "R32Float";
-    case tint::inspector::ResourceBinding::TexelFormat::kRg16Uint:
-      return "Rg16Uint";
-    case tint::inspector::ResourceBinding::TexelFormat::kRg16Sint:
-      return "Rg16Sint";
-    case tint::inspector::ResourceBinding::TexelFormat::kRg16Float:
-      return "Rg16Float";
     case tint::inspector::ResourceBinding::TexelFormat::kRgba8Unorm:
       return "Rgba8Unorm";
-    case tint::inspector::ResourceBinding::TexelFormat::kRgba8UnormSrgb:
-      return "Rgba8UnormSrgb";
     case tint::inspector::ResourceBinding::TexelFormat::kRgba8Snorm:
       return "Rgba8Snorm";
     case tint::inspector::ResourceBinding::TexelFormat::kRgba8Uint:
       return "Rgba8Uint";
     case tint::inspector::ResourceBinding::TexelFormat::kRgba8Sint:
       return "Rgba8Sint";
-    case tint::inspector::ResourceBinding::TexelFormat::kBgra8Unorm:
-      return "Bgra8Unorm";
-    case tint::inspector::ResourceBinding::TexelFormat::kBgra8UnormSrgb:
-      return "Bgra8UnormSrgb";
-    case tint::inspector::ResourceBinding::TexelFormat::kRgb10A2Unorm:
-      return "Rgb10A2Unorm";
-    case tint::inspector::ResourceBinding::TexelFormat::kRg11B10Float:
-      return "Rg11B10Float";
     case tint::inspector::ResourceBinding::TexelFormat::kRg32Uint:
       return "Rg32Uint";
     case tint::inspector::ResourceBinding::TexelFormat::kRg32Sint:
diff --git a/src/inspector/resource_binding.h b/src/inspector/resource_binding.h
index 8f62cac..b6457e2 100644
--- a/src/inspector/resource_binding.h
+++ b/src/inspector/resource_binding.h
@@ -67,33 +67,8 @@
     kRgba32Uint,
     kRgba32Sint,
     kRgba32Float,
-
-    // [DEPRECATED]
-    // The below are all deprecated, and will be removed.
-    kR8Unorm,
-    kR8Snorm,
-    kR8Uint,
-    kR8Sint,
-    kR16Uint,
-    kR16Sint,
-    kR16Float,
-    kRg8Unorm,
-    kRg8Snorm,
-    kRg8Uint,
-    kRg8Sint,
-    kRg16Uint,
-    kRg16Sint,
-    kRg16Float,
-    kRgba8UnormSrgb,
-    kBgra8Unorm,
-    kBgra8UnormSrgb,
-    kRgb10A2Unorm,
-    kRg11B10Float,
   };
 
-  /// Renamed field [DEPRECATED]
-  using ImageFormat = TexelFormat;
-
   /// kXXX maps to entries returned by GetXXXResourceBindings call.
   enum class ResourceType {
     kUniformBuffer,
