summaryrefslogtreecommitdiff
path: root/src/ipa/ipa_vimc.cpp
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-03-25 09:36:35 +0200
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-03-25 12:21:06 +0200
commita25533089bda04daf0243eda7e316baea0737e19 (patch)
tree8997f2c22a0861e0da134a9a1c099f02bd9a7f57 /src/ipa/ipa_vimc.cpp
parent5e8933eeebcedda55d4c4e84db9b4983eecefe1b (diff)
ipa: Move vimc to a subdirectory
Give a subdirectory to all IPA modules to make the structure of the source tree more consistent. This will also simplify the implementation of IPA module selection at build time. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Diffstat (limited to 'src/ipa/ipa_vimc.cpp')
-rw-r--r--src/ipa/ipa_vimc.cpp119
1 files changed, 0 insertions, 119 deletions
diff --git a/src/ipa/ipa_vimc.cpp b/src/ipa/ipa_vimc.cpp
deleted file mode 100644
index 4751ad91..00000000
--- a/src/ipa/ipa_vimc.cpp
+++ /dev/null
@@ -1,119 +0,0 @@
-/* SPDX-License-Identifier: LGPL-2.1-or-later */
-/*
- * Copyright (C) 2019, Google Inc.
- *
- * ipa_vimc.cpp - Vimc Image Processing Algorithm module
- */
-
-#include <ipa/ipa_vimc.h>
-
-#include <fcntl.h>
-#include <string.h>
-#include <sys/stat.h>
-#include <unistd.h>
-
-#include <iostream>
-
-#include <ipa/ipa_interface.h>
-#include <ipa/ipa_module_info.h>
-
-#include "libipa/ipa_interface_wrapper.h"
-
-#include "log.h"
-
-namespace libcamera {
-
-LOG_DEFINE_CATEGORY(IPAVimc)
-
-class IPAVimc : public IPAInterface
-{
-public:
- IPAVimc();
- ~IPAVimc();
-
- int init() override;
- void configure(const std::map<unsigned int, IPAStream> &streamConfig,
- const std::map<unsigned int, const ControlInfoMap &> &entityControls) override {}
- void mapBuffers(const std::vector<IPABuffer> &buffers) override {}
- void unmapBuffers(const std::vector<unsigned int> &ids) override {}
- void processEvent(const IPAOperationData &event) override {}
-
-private:
- void initTrace();
- void trace(enum IPAOperationCode operation);
-
- int fd_;
-};
-
-IPAVimc::IPAVimc()
- : fd_(-1)
-{
- initTrace();
-}
-
-IPAVimc::~IPAVimc()
-{
- if (fd_)
- ::close(fd_);
-}
-
-int IPAVimc::init()
-{
- trace(IPAOperationInit);
-
- LOG(IPAVimc, Debug) << "initializing vimc IPA!";
-
- return 0;
-}
-
-void IPAVimc::initTrace()
-{
- struct stat fifoStat;
- int ret = stat(VIMC_IPA_FIFO_PATH, &fifoStat);
- if (ret)
- return;
-
- ret = ::open(VIMC_IPA_FIFO_PATH, O_WRONLY);
- if (ret < 0) {
- ret = errno;
- LOG(IPAVimc, Error) << "Failed to open vimc IPA test FIFO: "
- << strerror(ret);
- return;
- }
-
- fd_ = ret;
-}
-
-void IPAVimc::trace(enum IPAOperationCode operation)
-{
- if (fd_ < 0)
- return;
-
- int ret = ::write(fd_, &operation, sizeof(operation));
- if (ret < 0) {
- ret = errno;
- LOG(IPAVimc, Error) << "Failed to write to vimc IPA test FIFO: "
- << strerror(ret);
- }
-}
-
-/*
- * External IPA module interface
- */
-
-extern "C" {
-const struct IPAModuleInfo ipaModuleInfo = {
- IPA_MODULE_API_VERSION,
- 0,
- "PipelineHandlerVimc",
- "Dummy IPA for Vimc",
- LICENSE,
-};
-
-struct ipa_context *ipaCreate()
-{
- return new IPAInterfaceWrapper(std::make_unique<IPAVimc>());
-}
-}
-
-} /* namespace libcamera */