Received: by 2002:a05:7412:40d:b0:e2:908c:2ebd with SMTP id 13csp251040rdf; Tue, 21 Nov 2023 01:21:02 -0800 (PST) X-Google-Smtp-Source: AGHT+IFZ86iCkOjo8GC56ilNZgMVrbmZvOtS5TAEIw3CtZtmS7lXToMwI/HFyOuU976cLLarALd7 X-Received: by 2002:a05:6a20:da98:b0:187:b22d:a19 with SMTP id iy24-20020a056a20da9800b00187b22d0a19mr13333254pzb.56.1700558461704; Tue, 21 Nov 2023 01:21:01 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1700558461; cv=none; d=google.com; s=arc-20160816; b=CUU7OYwT7XXujqqQQn6ZRDifANl6F7fumG5GFg6XFuZn+mJIEubZp5U+ktXIpplcIq SRXOclabhjhDCYTrbcNorX0ac6wzJRMim/E33oZ/fb/CXzCyD3rX//ZaNYyb5J1xNfmN ixFXmgwvCrUMlq9+gcpMyYOZA4Aaln4cD/PxLDL4NZVtUPQpQw1gqsCNs9J4yyS09unR SgWw94huVKOzLFUdGUwfs0UIJvyRu/wkrx6KHq3PZZOjoH86ozFiEhVyDoaLXb741mny Tac8rPFBczB1UcWFA0ouNS/OJm8u/25ARJeLRWcB4vBrE49Bd2fGhMPnWI98qL65uf6+ SI7w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:autocrypt :from:references:to:content-language:subject:user-agent:mime-version :date:message-id; bh=8ZKJSEizDYEJQ05z+1ZQanJrfLS9NJLve4EYVkh/H08=; fh=xwO30vKhxPRRQG8HdZoJT6Bq3DaafZI8qtZCpJ3NFPI=; b=gb5GFf2EA/WdRQVqNdpF7PWQAmuVHG2LLy5VeadRINhZvwkrRVLDdPPNJxV6cd+HBR 2p+zGXRzUsVSJRLv7MKWgyRawJ5ahIKwywgaWK1McdPTLj/4Ny8iu29LcdT4f4zd59+D dYBxtdh1WRmwUHTx3/SfuQI3bVdLFwcNdYdCo1eevRjhCuwl3CnEyvsyvPqXLUMdRAzZ JIQQvTVjTqfEeF/thg1C1Rr/XHNYPv3N5gco/MghEOs6zp0DNEDr7gXFO5T5p02DP4uP ZeWiEtUu8APV96m1X6dXlQBBc35qSCADqZ/K2CEwM/0nU+DU8AhiVqY1UGqtZlWinnow TMNQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=xs4all.nl Return-Path: Received: from groat.vger.email (groat.vger.email. [2620:137:e000::3:5]) by mx.google.com with ESMTPS id z12-20020a17090ad78c00b0028517c69ac4si5744364pju.134.2023.11.21.01.21.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Nov 2023 01:21:01 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) client-ip=2620:137:e000::3:5; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=xs4all.nl Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id D7B9F8087233; Tue, 21 Nov 2023 01:20:36 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229454AbjKUJUW (ORCPT + 99 others); Tue, 21 Nov 2023 04:20:22 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57164 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230371AbjKUJUU (ORCPT ); Tue, 21 Nov 2023 04:20:20 -0500 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 87F39F5 for ; Tue, 21 Nov 2023 01:20:16 -0800 (PST) Received: by smtp.kernel.org (Postfix) with ESMTPSA id B6041C433C7; Tue, 21 Nov 2023 09:20:12 +0000 (UTC) Message-ID: <0026a04d-8a04-4eeb-9f03-c68be6da5ec5@xs4all.nl> Date: Tue, 21 Nov 2023 10:20:10 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v10 13/14] media: imx-asrc: Add memory to memory driver Content-Language: en-US, nl To: Shengjiu Wang , sakari.ailus@iki.fi, tfiga@chromium.org, m.szyprowski@samsung.com, mchehab@kernel.org, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, shengjiu.wang@gmail.com, Xiubo.Lee@gmail.com, festevam@gmail.com, nicoleotsuka@gmail.com, lgirdwood@gmail.com, broonie@kernel.org, perex@perex.cz, tiwai@suse.com, alsa-devel@alsa-project.org, linuxppc-dev@lists.ozlabs.org References: <1700552255-5364-1-git-send-email-shengjiu.wang@nxp.com> <1700552255-5364-14-git-send-email-shengjiu.wang@nxp.com> From: Hans Verkuil Autocrypt: addr=hverkuil@xs4all.nl; keydata= xsFNBFQ84W0BEAC7EF1iL4s3tY8cRTVkJT/297h0Hz0ypA+ByVM4CdU9sN6ua/YoFlr9k0K4 BFUlg7JzJoUuRbKxkYb8mmqOe722j7N3HO8+ofnio5cAP5W0WwDpM0kM84BeHU0aPSTsWiGR yw55SOK2JBSq7hueotWLfJLobMWhQii0Zd83hGT9SIt9uHaHjgwmtTH7MSTIiaY6N14nw2Ud C6Uykc1va0Wqqc2ov5ihgk/2k2SKa02ookQI3e79laOrbZl5BOXNKR9LguuOZdX4XYR3Zi6/ BsJ7pVCK9xkiVf8svlEl94IHb+sa1KrlgGv3fn5xgzDw8Z222TfFceDL/2EzUyTdWc4GaPMC E/c1B4UOle6ZHg02+I8tZicjzj5+yffv1lB5A1btG+AmoZrgf0X2O1B96fqgHx8w9PIpVERN YsmkfxvhfP3MO3oHh8UY1OLKdlKamMneCLk2up1Zlli347KMjHAVjBAiy8qOguKF9k7HOjif JCLYTkggrRiEiE1xg4tblBNj8WGyKH+u/hwwwBqCd/Px2HvhAsJQ7DwuuB3vBAp845BJYUU3 06kRihFqbO0vEt4QmcQDcbWINeZ2zX5TK7QQ91ldHdqJn6MhXulPKcM8tCkdD8YNXXKyKqNl UVqXnarz8m2JCbHgjEkUlAJCNd6m3pfESLZwSWsLYL49R5yxIwARAQABzSFIYW5zIFZlcmt1 aWwgPGh2ZXJrdWlsQHhzNGFsbC5ubD7CwZUEEwECACgFAlQ84W0CGwMFCRLMAwAGCwkIBwMC BhUIAgkKCwQWAgMBAh4BAheAACEJEL0tYUhmFDtMFiEEBSzee8IVBTtonxvKvS1hSGYUO0wT 7w//frEmPBAwu3OdvAk9VDkH7X+7RcFpiuUcJxs3Xl6jpaA+SdwtZra6W1uMrs2RW8eXXiq/ 80HXJtYnal1Y8MKUBoUVhT/+5+KcMyfVQK3VFRHnNxCmC9HZV+qdyxAGwIscUd4hSlweuU6L 6tI7Dls6NzKRSTFbbGNZCRgl8OrF01TBH+CZrcFIoDgpcJA5Pw84mxo+wd2BZjPA4TNyq1od +slSRbDqFug1EqQaMVtUOdgaUgdlmjV0+GfBHoyCGedDE0knv+tRb8v5gNgv7M3hJO3Nrl+O OJVoiW0G6OWVyq92NNCKJeDy8XCB1yHCKpBd4evO2bkJNV9xcgHtLrVqozqxZAiCRKN1elWF 1fyG8KNquqItYedUr+wZZacqW+uzpVr9pZmUqpVCk9s92fzTzDZcGAxnyqkaO2QTgdhPJT2m wpG2UwIKzzi13tmwakY7OAbXm76bGWVZCO3QTHVnNV8ku9wgeMc/ZGSLUT8hMDZlwEsW7u/D qt+NlTKiOIQsSW7u7h3SFm7sMQo03X/taK9PJhS2BhhgnXg8mOa6U+yNaJy+eU0Lf5hEUiDC vDOI5x++LD3pdrJVr/6ZB0Qg3/YzZ0dk+phQ+KlP6HyeO4LG662toMbFbeLcBjcC/ceEclII 90QNEFSZKM6NVloM+NaZRYVO3ApxWkFu+1mrVTXOwU0EVDzhbQEQANzLiI6gHkIhBQKeQaYs p2SSqF9c++9LOy5x6nbQ4s0X3oTKaMGfBZuiKkkU6NnHCSa0Az5ScRWLaRGu1PzjgcVwzl5O sDawR1BtOG/XoPRNB2351PRp++W8TWo2viYYY0uJHKFHML+ku9q0P+NkdTzFGJLP+hn7x0RT DMbhKTHO3H2xJz5TXNE9zTJuIfGAz3ShDpijvzYieY330BzZYfpgvCllDVM5E4XgfF4F/N90 wWKu50fMA01ufwu+99GEwTFVG2az5T9SXd7vfSgRSkzXy7hcnxj4IhOfM6Ts85/BjMeIpeqy TDdsuetBgX9DMMWxMWl7BLeiMzMGrfkJ4tvlof0sVjurXibTibZyfyGR2ricg8iTbHyFaAzX 2uFVoZaPxrp7udDfQ96sfz0hesF9Zi8d7NnNnMYbUmUtaS083L/l2EDKvCIkhSjd48XF+aO8 VhrCfbXWpGRaLcY/gxi2TXRYG9xCa7PINgz9SyO34sL6TeFPSZn4bPQV5O1j85Dj4jBecB1k z2arzwlWWKMZUbR04HTeAuuvYvCKEMnfW3ABzdonh70QdqJbpQGfAF2p4/iCETKWuqefiOYn pR8PqoQA1DYv3t7y9DIN5Jw/8Oj5wOeEybw6vTMB0rrnx+JaXvxeHSlFzHiD6il/ChDDkJ9J /ejCHUQIl40wLSDRABEBAAHCwXwEGAECAA8FAlQ84W0CGwwFCRLMAwAAIQkQvS1hSGYUO0wW IQQFLN57whUFO2ifG8q9LWFIZhQ7TA1WD/9yxJvQrpf6LcNrr8uMlQWCg2iz2q1LGt1Itkuu KaavEF9nqHmoqhSfZeAIKAPn6xuYbGxXDrpN7dXCOH92fscLodZqZtK5FtbLvO572EPfxneY UT7JzDc/5LT9cFFugTMOhq1BG62vUm/F6V91+unyp4dRlyryAeqEuISykhvjZCVHk/woaMZv c1Dm4Uvkv0Ilelt3Pb9J7zhcx6sm5T7v16VceF96jG61bnJ2GFS+QZerZp3PY27XgtPxRxYj AmFUeF486PHx/2Yi4u1rQpIpC5inPxIgR1+ZFvQrAV36SvLFfuMhyCAxV6WBlQc85ArOiQZB Wm7L0repwr7zEJFEkdy8C81WRhMdPvHkAIh3RoY1SGcdB7rB3wCzfYkAuCBqaF7Zgfw8xkad KEiQTexRbM1sc/I8ACpla3N26SfQwrfg6V7TIoweP0RwDrcf5PVvwSWsRQp2LxFCkwnCXOra gYmkrmv0duG1FStpY+IIQn1TOkuXrciTVfZY1cZD0aVxwlxXBnUNZZNslldvXFtndxR0SFat sflovhDxKyhFwXOP0Rv8H378/+14TaykknRBIKEc0+lcr+EMOSUR5eg4aURb8Gc3Uc7fgQ6q UssTXzHPyj1hAyDpfu8DzAwlh4kKFTodxSsKAjI45SLjadSc94/5Gy8645Y1KgBzBPTH7Q== In-Reply-To: <1700552255-5364-14-git-send-email-shengjiu.wang@nxp.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Tue, 21 Nov 2023 01:20:37 -0800 (PST) On 21/11/2023 08:37, Shengjiu Wang wrote: > Implement the ASRC memory to memory function using > the v4l2 framework, user can use this function with > v4l2 ioctl interface. > > User send the output and capture buffer to driver and > driver store the converted data to the capture buffer. > > This feature can be shared by ASRC and EASRC drivers > > Signed-off-by: Shengjiu Wang > --- > drivers/media/platform/nxp/Kconfig | 13 + > drivers/media/platform/nxp/Makefile | 1 + > drivers/media/platform/nxp/imx-asrc.c | 1264 +++++++++++++++++++++++++ > 3 files changed, 1278 insertions(+) > create mode 100644 drivers/media/platform/nxp/imx-asrc.c > > +static const struct v4l2_ctrl_config asrc_src_rate_off_control = { > + .ops = &asrc_m2m_ctrl_ops, > + .id = V4L2_CID_M2M_AUDIO_SOURCE_RATE_OFFSET, > + .name = "Audio Source Sample Rate Offset", > + .type = V4L2_CTRL_TYPE_INTEGER64, Do you need this to be INTEGER64? If the actual number of bits of the fixed point value that the hardware uses fits in 32 bits, then you can just use the INTEGER type. > + .min = 0xFFFFFF0000000000, > + .max = 0x7fffffffff, > + .def = 0, > + .step = 1, > + .flags = V4L2_CTRL_FLAG_UPDATE, > + .fraction_bits = 32, Can't you use the actual number of fraction bits that the hardware uses? I can't imagine that it is actually 32 bits, it is almost certainly less. I do think that we need a helper function to fill in the min/max values. Regards, Hans > +}; > + > +static const struct v4l2_ctrl_config asrc_dst_rate_off_control = { > + .ops = &asrc_m2m_ctrl_ops, > + .id = V4L2_CID_M2M_AUDIO_DEST_RATE_OFFSET, > + .name = "Audio Dest Sample Rate Offset", > + .type = V4L2_CTRL_TYPE_INTEGER64, > + .min = 0xFFFFFF0000000000, > + .max = 0x7fffffffff, > + .def = 0, > + .step = 1, > + .flags = V4L2_CTRL_FLAG_UPDATE, > + .fraction_bits = 32, > +};