[libcamera-devel,0/3] Raspberry Pi AGC tidying
mbox series

Message ID 20230728133700.3713-1-david.plowman@raspberrypi.com
Headers show
Series
  • Raspberry Pi AGC tidying
Related show

Message

David Plowman July 28, 2023, 1:36 p.m. UTC
Hi

This short series just tidies up some aspects of the AGC/AEC code.
None of it should have any functional impact at this point.

There are 3 commits:

* The first tidies up where we fetch the AWB status.

* The second calculates the required digital gain in a more natural
  place which simplifies the code. It should probably always have been
  like this!

* The last commit splits out a separate agc.prepare_status from the
  agc.status. Although it has no effect now, it will prevent surprises
  if we fail to call either prepare() or process(), or call them in a
  different order.

This work is all preparatory to a rather larger reorganisation of our
AGC that will introduce the idea of AGC "channels", allowing, for
example, separate long and short exposure channels to be driven
simultaneously.

Thanks!

David

David Plowman (3):
  ipa: rpi: agc: Fetch AWB status in process method, not prepare
  ipa: rpi: agc: Filter exposures before dealing with digital gain
  ipa: rpi: agc: Split AgcStatus into AgcStatus and AgcPrepareStatus

 src/ipa/rpi/common/ipa_base.cpp     |  8 ++---
 src/ipa/rpi/controller/agc_status.h |  9 +++--
 src/ipa/rpi/controller/rpi/agc.cpp  | 53 ++++++++++-------------------
 src/ipa/rpi/controller/rpi/agc.h    |  4 +--
 src/ipa/rpi/vc4/vc4.cpp             |  6 ++--
 5 files changed, 34 insertions(+), 46 deletions(-)