diff --git a/include/libcamera/ipa/ipa_interface.h b/include/libcamera/ipa/ipa_interface.h
index 2c5eb1fd524311cb..9bbc4cf58ec66420 100644
--- a/include/libcamera/ipa/ipa_interface.h
+++ b/include/libcamera/ipa/ipa_interface.h
@@ -13,8 +13,6 @@ class IPAInterface
 {
 public:
 	virtual ~IPAInterface() {}
-
-	virtual int init() = 0;
 };
 
 } /* namespace libcamera */
diff --git a/src/ipa/ipa_dummy.cpp b/src/ipa/ipa_dummy.cpp
index 4c8b6657689d0c9f..2fe232295c676941 100644
--- a/src/ipa/ipa_dummy.cpp
+++ b/src/ipa/ipa_dummy.cpp
@@ -14,16 +14,8 @@ namespace libcamera {
 
 class IPADummy : public IPAInterface
 {
-public:
-	int init();
 };
 
-int IPADummy::init()
-{
-	std::cout << "initializing dummy IPA!" << std::endl;
-	return 0;
-}
-
 /*
  * External IPA module interface
  */
diff --git a/src/ipa/ipa_dummy_isolate.cpp b/src/ipa/ipa_dummy_isolate.cpp
index 24434e85d31809e2..fa50be5309eba3c4 100644
--- a/src/ipa/ipa_dummy_isolate.cpp
+++ b/src/ipa/ipa_dummy_isolate.cpp
@@ -15,16 +15,8 @@ namespace libcamera {
 
 class IPADummyIsolate : public IPAInterface
 {
-public:
-	int init();
 };
 
-int IPADummyIsolate::init()
-{
-	std::cout << "initializing isolated dummy IPA!" << std::endl;
-	return 0;
-}
-
 /*
  * External IPA module interface
  */
diff --git a/src/libcamera/ipa_interface.cpp b/src/libcamera/ipa_interface.cpp
index 9d30da29228fabb7..273477a5272677b7 100644
--- a/src/libcamera/ipa_interface.cpp
+++ b/src/libcamera/ipa_interface.cpp
@@ -19,9 +19,4 @@ namespace libcamera {
  * \brief Interface for IPA implementation
  */
 
-/**
- * \fn IPAInterface::init()
- * \brief Initialise the IPAInterface
- */
-
 } /* namespace libcamera */
diff --git a/src/libcamera/pipeline/vimc.cpp b/src/libcamera/pipeline/vimc.cpp
index f8f91d6219b1aee4..55d5bff287c3366d 100644
--- a/src/libcamera/pipeline/vimc.cpp
+++ b/src/libcamera/pipeline/vimc.cpp
@@ -364,8 +364,6 @@ bool PipelineHandlerVimc::match(DeviceEnumerator *enumerator)
 	ipa_ = IPAManager::instance()->createIPA(this, 0, 0);
 	if (ipa_ == nullptr)
 		LOG(VIMC, Warning) << "no matching IPA found";
-	else
-		ipa_->init();
 
 	std::unique_ptr<VimcCameraData> data = utils::make_unique<VimcCameraData>(this);
 
