Re: [PATCH 00/17] various fixes for atomisp to make it work

From: Tsuchiya Yuto
Date: Thu Oct 28 2021 - 00:32:40 EST


<Fixed Cc list>

On Mon, 2021-10-18 at 01:19 +0900, Tsuchiya Yuto wrote:
> [...]
> ## taking a picture with atomisp
>
> Note that to try to take a picture, please also apply at least the
> this RFC patch ("[BUG][RFC] media: atomisp: pci: assume run_mode is
> PREVIEW") I'll send as almost a BUG report later.
>
> You need to use firmware version irci_stable_candrpv_0415_20150521_0458,
> which is available from the intel-aero [1]

Just in case, the hash (as well as version) of firmware which I
downloaded from intel-aero and I use to capture is the following:

$ sha256sum /lib/firmware/shisp_2401a0_v21.bin
e89359f4e4934c410c83d525e283f34c5fcce9cb5caa75ad8a32d66d3842d95c /lib/firmware/shisp_2401a0_v21.bin

$ strings /lib/firmware/shisp_2401a0_v21.bin | grep 2015
irci_stable_candrpv_0415_20150521_0458

Regards,
Tsuchiya Yuto

> The atomisp (ipu2), like the ipu3, needs userspace support. The libcamera
> has now decent ipu3 support but does not have atomisp support yet.
>
> I found some userspace tools for atomisp that run on Linux:
>
> - capturev4l2 from intel-aero/sample-apps
> (https://github.com/intel-aero/sample-apps/tree/master/capturev4l2)
> - hd-camera from intel-aero/sample-apps
> (https://github.com/intel-aero/sample-apps/tree/master/hd-camera)
> - intel/nvt
> (https://github.com/intel/nvt)
>
> It looks like the nvt is the most feature-rich, like exposure and white
> balance. Note that current upstreamed atomisp dropped 32-bit support.
> So, you need to build it with `-m64` (change it in Makefile). Here is
> the example of usage I use on mipad2:
>
> $ ./v4l2n -o testimage_@.raw \
> --device /dev/video2 \
> --input 0 \
> --exposure=30000,30000,30000,30000 \
> --parm type=1,capturemode=CI_MODE_PREVIEW \
> --fmt type=1,width=1920,height=1080,pixelformat=NV12 \
> --reqbufs count=2,memory=USERPTR \
> --parameters=wb_config.r=32768,wb_config.gr=21043,wb_config.gb=21043,wb_config.b=30863 \
> --capture=2 \
>
> ./raw2pnm -x1920 -y1080 -fNV12 testimage_001.raw testimage_001.pnm
> feh *.pnm # open the converted image
> rm testimage*
>
> Note that I see the following warn/err after capture:
>
> kern :warn : [72660.793335] atomisp-isp2 0000:00:03.0: stop stream timeout.
> kern :err : [72660.973629] atomisp-isp2 0000:00:03.0: atomisp_reset
>
> but I see the same message on the Android kernel, too. So, I think this
> is not a real issue (I hope).
>
> [1] https://github.com/intel-aero/meta-intel-aero-base/tree/master/recipes-kernel/linux/linux-yocto
> filename shisp_2401a0_v21.bin