summaryrefslogtreecommitdiff
path: root/src/ipa
diff options
context:
space:
mode:
authorKieran Bingham <kieran.bingham@ideasonboard.com>2022-03-15 14:48:05 +0000
committerKieran Bingham <kieran.bingham@ideasonboard.com>2022-04-09 21:00:47 +0200
commit50dc051fc62bfd5367c55d99384c4c99f0c03bdd (patch)
treec98210ff0cf1ea9d4250b8a09ec42f590c0964ff /src/ipa
parentb0c2484d6191a6225b301144a9d1781870e03c68 (diff)
ipa: ipu3: af: Move constants to implementation
A selection of constants are imported from ChromiumOS. Move these out of the header, and simplify their documentation. Further more, add a direct reference to the location they were obtained from. Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com> Tested-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com> Tested-by: Kate Hsuan <hpa@redhat.com> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Diffstat (limited to 'src/ipa')
-rw-r--r--src/ipa/ipu3/algorithms/af.cpp73
-rw-r--r--src/ipa/ipu3/algorithms/af.h11
2 files changed, 22 insertions, 62 deletions
diff --git a/src/ipa/ipu3/algorithms/af.cpp b/src/ipa/ipu3/algorithms/af.cpp
index a33c229a..2902f2d5 100644
--- a/src/ipa/ipu3/algorithms/af.cpp
+++ b/src/ipa/ipu3/algorithms/af.cpp
@@ -29,59 +29,30 @@
* \file af.h
*/
-/**
- * \var kAfMinGridWidth
- * \brief the minimum width of AF grid.
- * The minimum grid horizontal dimensions.
- */
-
-/**
- * \var kAfMinGridHeight
- * \brief the minimum height of AF grid.
- * The minimum grid vertical dimensions.
- */
-
-/**
- * \var kAfMaxGridWidth
- * \brief the maximum width of AF grid.
- * The maximum grid horizontal dimensions.
- */
-
-/**
- * \var kAfMaxGridHeight
- * \brief The maximum height of AF grid.
- * The maximum grid vertical dimensions.
- */
-
-/**
- * \var kAfMinGridBlockWidth
- * \brief The minimum block size of the width.
- * The minimum value of Log2 of the width of the grid cell.
- */
-
-/**
- * \var kAfMinGridBlockHeight
- * \brief The minimum block size of the height.
- * The minimum value of Log2 of the height of the grid cell.
- */
-
-/**
- * \def kAfMaxGridBlockWidth
- * \brief The maximum block size of the width.
- * The maximum value of Log2 of the width of the grid cell.
- */
-
-/**
- * \var kAfMaxGridBlockHeight
- * \brief The maximum block size of the height.
- * The maximum value of Log2 of the height of the grid cell.
+/*
+ * Static variables from ChromiumOS Intel Camera HAL and ia_imaging library:
+ * - https://chromium.googlesource.com/chromiumos/platform/arc-camera/+/master/hal/intel/psl/ipu3/statsConverter/ipu3-stats.h
+ * - https://chromium.googlesource.com/chromiumos/platform/camera/+/refs/heads/main/hal/intel/ipu3/include/ia_imaging/af_public.h
*/
-/**
- * \var kAfDefaultHeightPerSlice
- * \brief The default number of blocks in vertical axis per slice.
- * The number of blocks in vertical axis per slice.
- */
+/** The minimum horizontal grid dimension. */
+static constexpr uint8_t kAfMinGridWidth = 16;
+/** The minimum vertical grid dimension. */
+static constexpr uint8_t kAfMinGridHeight = 16;
+/** The maximum horizontal grid dimension. */
+static constexpr uint8_t kAfMaxGridWidth = 32;
+/** The maximum vertical grid dimension. */
+static constexpr uint8_t kAfMaxGridHeight = 24;
+/** The minimum value of Log2 of the width of the grid cell. */
+static constexpr uint16_t kAfMinGridBlockWidth = 4;
+/** The minimum value of Log2 of the height of the grid cell. */
+static constexpr uint16_t kAfMinGridBlockHeight = 3;
+/** The maximum value of Log2 of the width of the grid cell. */
+static constexpr uint16_t kAfMaxGridBlockWidth = 6;
+/** The maximum value of Log2 of the height of the grid cell. */
+static constexpr uint16_t kAfMaxGridBlockHeight = 6;
+/** The number of blocks in vertical axis per slice. */
+static constexpr uint16_t kAfDefaultHeightPerSlice = 2;
namespace libcamera {
diff --git a/src/ipa/ipu3/algorithms/af.h b/src/ipa/ipu3/algorithms/af.h
index 13c7e0e8..906f2843 100644
--- a/src/ipa/ipu3/algorithms/af.h
+++ b/src/ipa/ipu3/algorithms/af.h
@@ -15,17 +15,6 @@
#include "algorithm.h"
-/* Static variables from repo of chromium */
-static constexpr uint8_t kAfMinGridWidth = 16;
-static constexpr uint8_t kAfMinGridHeight = 16;
-static constexpr uint8_t kAfMaxGridWidth = 32;
-static constexpr uint8_t kAfMaxGridHeight = 24;
-static constexpr uint16_t kAfMinGridBlockWidth = 4;
-static constexpr uint16_t kAfMinGridBlockHeight = 3;
-static constexpr uint16_t kAfMaxGridBlockWidth = 6;
-static constexpr uint16_t kAfMaxGridBlockHeight = 6;
-static constexpr uint16_t kAfDefaultHeightPerSlice = 2;
-
namespace libcamera {
namespace ipa::ipu3::algorithms {