diff --git a/autoflake.py b/autoflake.py
index 1e65bb2..ba867f9 100755
--- a/autoflake.py
+++ b/autoflake.py
@@ -1194,11 +1194,7 @@
 
     if "config_file" in flag_args:
         config_file = pathlib.Path(flag_args["config_file"]).resolve()
-
-        if config_file.suffix == ".toml":
-            config = process_pyproject_toml(config_file)
-        else:
-            config = process_config_file(config_file)
+        config = process_config_file(config_file)
 
         if not config:
             _LOGGER.error(
diff --git a/test_autoflake.py b/test_autoflake.py
index 060da6a..4dd6271 100755
--- a/test_autoflake.py
+++ b/test_autoflake.py
@@ -3385,32 +3385,6 @@
                 check=True,
             )
 
-    def test_config_option_toml(self):
-        with temporary_file(
-            suffix=".toml",
-            contents=(
-                "[tool.autoflake]\n"
-                "check = true\n"
-                'exclude = [\n  "build",\n  ".venv",\n]'
-            ),
-        ) as temp_config:
-            self.create_file("test_me.py")
-            files = [self.effective_path("test_me.py")]
-
-            args, success = autoflake.merge_configuration_file(
-                {
-                    "files": files,
-                    "config_file": temp_config,
-                },
-            )
-            assert success is True
-            assert args == self.with_defaults(
-                files=files,
-                config_file=temp_config,
-                check=True,
-                exclude="build,.venv",
-            )
-
     def test_load_false(self):
         self.create_file("test_me.py")
         self.create_file(
