On 14/02/18 13:09, Florian Echtler wrote:
> Hello Hans,
> I've picked up work on the sur40 driver again recently. There is one major
> feature left that is currently unsupported by the Linux driver, which is the
> hardware-based calibration.
> The internal device memory contains a table with two bytes for each sensor
> (i.e. 960x540x2 = 1036800 bytes) that basically provide individual black and
> white levels per-pixel that are used in preprocessing. The table can either be
> set externally, or the sensor can be covered with a black/white surface and a
> custom command triggers an internal calibration.
> AFAICT the usual V4L2 controls are unsuitable for this sort of data; do you
> any suggestions on how to approach this? Maybe something like a custom IOCTL?
So the table has a fixed size?
You can use array controls for that, a V4L2_CTRL_TYPE_U16 in a two-dimensional
would do it.
See https://hverkuil.home.xs4all.nl/spec/uapi/v4l/vidioc-queryctrl.html for more
information on how this works.