[libcamera-devel,1/3] ipa: rkisp1: Add IMX8MP_V10 version
diff mbox series

Message ID 20240116091754.100654-2-paul.elder@ideasonboard.com
State New
Headers show
Series
  • i.MX8MP support, plus misc fixes
Related show

Commit Message

Paul Elder Jan. 16, 2024, 9:17 a.m. UTC
Add the version number for IMX8MP_V10, and initialize values for it.

Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
---
 include/linux/rkisp1-config.h | 1 +
 src/ipa/rkisp1/rkisp1.cpp     | 1 +
 2 files changed, 2 insertions(+)

Comments

Kieran Bingham Jan. 16, 2024, 9:33 a.m. UTC | #1
Quoting Paul Elder via libcamera-devel (2024-01-16 09:17:52)
> Add the version number for IMX8MP_V10, and initialize values for it.

Matches the kernel implementation at 
 - https://lore.kernel.org/all/20240111114831.656736-1-paul.elder@ideasonboard.com/

Which is what I expect to be merged for this.

Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>

> Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
> ---
>  include/linux/rkisp1-config.h | 1 +
>  src/ipa/rkisp1/rkisp1.cpp     | 1 +
>  2 files changed, 2 insertions(+)
> 
> diff --git a/include/linux/rkisp1-config.h b/include/linux/rkisp1-config.h
> index ec7cde8cd..0ed3dca8f 100644
> --- a/include/linux/rkisp1-config.h
> +++ b/include/linux/rkisp1-config.h
> @@ -185,6 +185,7 @@ enum rkisp1_cif_isp_version {
>         RKISP1_V11,
>         RKISP1_V12,
>         RKISP1_V13,
> +       IMX8MP_V10,
>  };
>  
>  enum rkisp1_cif_isp_histogram_mode {
> diff --git a/src/ipa/rkisp1/rkisp1.cpp b/src/ipa/rkisp1/rkisp1.cpp
> index 6544c925b..aa73b7db1 100644
> --- a/src/ipa/rkisp1/rkisp1.cpp
> +++ b/src/ipa/rkisp1/rkisp1.cpp
> @@ -128,6 +128,7 @@ int IPARkISP1::init(const IPASettings &settings, unsigned int hwRevision,
>         /* \todo Add support for other revisions */
>         switch (hwRevision) {
>         case RKISP1_V10:
> +       case IMX8MP_V10:
>                 hwHistBinNMax_ = RKISP1_CIF_ISP_HIST_BIN_N_MAX_V10;
>                 hwGammaOutMaxSamples_ = RKISP1_CIF_ISP_GAMMA_OUT_MAX_SAMPLES_V10;
>                 hwHistogramWeightGridsSize_ = RKISP1_CIF_ISP_HISTOGRAM_WEIGHT_GRIDS_SIZE_V10;
> -- 
> 2.39.2
>
Laurent Pinchart Jan. 17, 2024, 3:46 p.m. UTC | #2
On Tue, Jan 16, 2024 at 09:33:42AM +0000, Kieran Bingham via libcamera-devel wrote:
> Quoting Paul Elder via libcamera-devel (2024-01-16 09:17:52)
> > Add the version number for IMX8MP_V10, and initialize values for it.
> 
> Matches the kernel implementation at 
>  - https://lore.kernel.org/all/20240111114831.656736-1-paul.elder@ideasonboard.com/
> 
> Which is what I expect to be merged for this.

Correct, but we should bump the kernel headers, instead of just
modifying them manually. I've sent a small patch series that bumps them
to v6.7 already. I'm fine merging this with a commit message that
indicates it's a temporary local change until the corresponding code
gets merged in the kernel.

Let's also split this patch in two, with one patch for the kernel and
one for the rest. The second patch needs to update
src/ipa/rkisp1/algorithms/agc.cpp where we currently have a

	if (context.configuration.hw.revision < RKISP1_V12)

check that I believe isn't right anymore.

> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
> 
> > Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
> > ---
> >  include/linux/rkisp1-config.h | 1 +
> >  src/ipa/rkisp1/rkisp1.cpp     | 1 +
> >  2 files changed, 2 insertions(+)
> > 
> > diff --git a/include/linux/rkisp1-config.h b/include/linux/rkisp1-config.h
> > index ec7cde8cd..0ed3dca8f 100644
> > --- a/include/linux/rkisp1-config.h
> > +++ b/include/linux/rkisp1-config.h
> > @@ -185,6 +185,7 @@ enum rkisp1_cif_isp_version {
> >         RKISP1_V11,
> >         RKISP1_V12,
> >         RKISP1_V13,
> > +       IMX8MP_V10,
> >  };
> >  
> >  enum rkisp1_cif_isp_histogram_mode {
> > diff --git a/src/ipa/rkisp1/rkisp1.cpp b/src/ipa/rkisp1/rkisp1.cpp
> > index 6544c925b..aa73b7db1 100644
> > --- a/src/ipa/rkisp1/rkisp1.cpp
> > +++ b/src/ipa/rkisp1/rkisp1.cpp
> > @@ -128,6 +128,7 @@ int IPARkISP1::init(const IPASettings &settings, unsigned int hwRevision,
> >         /* \todo Add support for other revisions */
> >         switch (hwRevision) {
> >         case RKISP1_V10:
> > +       case IMX8MP_V10:
> >                 hwHistBinNMax_ = RKISP1_CIF_ISP_HIST_BIN_N_MAX_V10;
> >                 hwGammaOutMaxSamples_ = RKISP1_CIF_ISP_GAMMA_OUT_MAX_SAMPLES_V10;
> >                 hwHistogramWeightGridsSize_ = RKISP1_CIF_ISP_HISTOGRAM_WEIGHT_GRIDS_SIZE_V10;

Patch
diff mbox series

diff --git a/include/linux/rkisp1-config.h b/include/linux/rkisp1-config.h
index ec7cde8cd..0ed3dca8f 100644
--- a/include/linux/rkisp1-config.h
+++ b/include/linux/rkisp1-config.h
@@ -185,6 +185,7 @@  enum rkisp1_cif_isp_version {
 	RKISP1_V11,
 	RKISP1_V12,
 	RKISP1_V13,
+	IMX8MP_V10,
 };
 
 enum rkisp1_cif_isp_histogram_mode {
diff --git a/src/ipa/rkisp1/rkisp1.cpp b/src/ipa/rkisp1/rkisp1.cpp
index 6544c925b..aa73b7db1 100644
--- a/src/ipa/rkisp1/rkisp1.cpp
+++ b/src/ipa/rkisp1/rkisp1.cpp
@@ -128,6 +128,7 @@  int IPARkISP1::init(const IPASettings &settings, unsigned int hwRevision,
 	/* \todo Add support for other revisions */
 	switch (hwRevision) {
 	case RKISP1_V10:
+	case IMX8MP_V10:
 		hwHistBinNMax_ = RKISP1_CIF_ISP_HIST_BIN_N_MAX_V10;
 		hwGammaOutMaxSamples_ = RKISP1_CIF_ISP_GAMMA_OUT_MAX_SAMPLES_V10;
 		hwHistogramWeightGridsSize_ = RKISP1_CIF_ISP_HISTOGRAM_WEIGHT_GRIDS_SIZE_V10;