[PATCH 3/5] media: dt-bindings: Add Apple ISP
Sasha Finkelstein
fnkl.kernel at gmail.com
Wed Feb 19 03:05:29 PST 2025
On Wed, 19 Feb 2025 at 11:53, Laurent Pinchart
<laurent.pinchart at ideasonboard.com> wrote:
> >
> > Those are board-specific and not discoverable via the ISP protocol.
>
> But they are settable through the ISP protocol, aren't they ? For
> instance, looking at isp-imx248.dtsi, the first four entries are
>
> /* 1280x720 */
> preset0 {
> apple,config-index = <0>;
> apple,input-size = <1296 736>;
> apple,output-size = <1280 720>;
> apple,crop = <8 8 1280 720>;
> };
>
> /* 960x720 (4:3) */
> preset1 {
> apple,config-index = <0>;
> apple,input-size = <1296 736>;
> apple,output-size = <960 720>;
> apple,crop = <168 8 960 720>;
> };
>
> /* 960x540 (16:9) */
> preset2 {
> apple,config-index = <0>;
> apple,input-size = <1296 736>;
> apple,output-size = <960 540>;
> apple,crop = <8 8 1280 720>;
> };
>
> /* 640x480 (4:3) */
> preset3 {
> apple,config-index = <0>;
> apple,input-size = <1296 736>;
> apple,output-size = <640 480>;
> apple,crop = <168 8 960 720>;
> };
>
> But I may be interested in capturing a 640x480 frame with cropping only
> and without scaling, with
>
> input-size = 1296x736
> output-size = 640x480
> crop = (328,128)/640x480
>
> Or I may want my cropped frame to be located in the upper-left corner:
>
> input-size = 1296x736
> output-size = 640x480
> crop = (8,8)/640x480
>
> If I set those parameters through the ISP protocol, won't it work ?
>
> --
> Regards,
>
> Laurent Pinchart
For cropping - you do not want to change those parameters, the sensor
is partially occluded, and the crop area is specified in such a way
to not expose those pixels. As for scaling - we can expose only the 1:1
scale and let userspace deal with it, but it appears that it expects
the other common output sizes to exist.
More information about the linux-arm-kernel
mailing list