From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 215DACA9EC1 for ; Sat, 10 Oct 2026 16:19:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:MIME-Version:Reply-To:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:Date:References: In-Reply-To:Cc:To:Subject:From:Message-ID:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=KD7FJW0DweoApyOz6kZvZhIsV+5fGTW4mwWbkhD/13Q=; b=bvHVn94bJEhVLP K5Z+LKdAOJpK8lrRfGt4m0K6xQdwdpiK+KwzPJrqVvnHWY321HYj3P1+uo/YnyGnSAc6kXXYaCcz3 nZ2AgH7HgOWggMdnrTDWqkd4WoR4zjXryxjrrr+G+3YCy7KenU3giKEWF2uz6x5pfwYUuP0LJwG3k EPdtiYJcO21fgI30BwczPe7F35/hJ2rRah8umFqy0ym6sX8NVDQ8E6KpT2kNp5h2BAZfIO9xkHnG2 pMzF4r9keASALjL/RHn8AhIKp0MofiUeayAbQ94Q5/tURmfouc7wEtS1R+zVcsCl/O/XRG0XUTCAG g7LG3CyAgtBu8s/RTz4g==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1xFZnZ-00000008GAb-2QkP; Sat, 10 Oct 2026 16:19:49 +0000 Received: from sea.source.kernel.org ([2600:3c0a:e001:78e:0:1991:8:25]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1xFZnJ-00000008FzK-2aNo for linux-phy@lists.infradead.org; Sat, 10 Oct 2026 16:19:37 +0000 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by sea.source.kernel.org (Postfix) with ESMTP id E4E3C42B68; Sat, 10 Oct 2026 16:19:32 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3E0C71F000FF; Sat, 10 Oct 2026 16:19:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1791649172; bh=oVJlSjap2M7F+7JAB6BD9119AVFpjcCAe5IkWx49Lac=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=ABSRWAriygV0rggubKJIcr4AKstcUYPqF+ns0NrgfJJHpoCM3rFHkU82rM0KPTrD+ /8DObYWdQomHscJJlkmsTYDwJjTHRHXXYSc2jyTLDLty/c9HJ7LZjrLIKii+NR/cvf WFsRTiZtrr1PofJj3D75uj2TlDyd5siku/92ZrvNfkXHpXuAW9xoJe+MSzRRnOsxmv o83E9519QSjEACkP9u40CbletHz5ub9AxfIqtvxxEkGSfyKdNPEGwQeskujkGHwHMx Nul4Y47ju6QpIEEi9sFcsMS0+iVVzJXNhbjKOWmYd+Eo6Cq8aMV5rBTTAVT4x8LxL3 PvsJTB9Z3/fQw== Message-ID: From: sashiko-bot@kernel.org Subject: Re: [PATCH v20 09/13] media: qcom: camss: tpg: Add support for v2.4.0 TPG To: "Hangxiang Ma" Cc: robh@kernel.org, conor+dt@kernel.org, neil.armstrong@linaro.org, olteanv@gmail.com, devicetree@vger.kernel.org, vkoul@kernel.org, media-ci@linuxtv.org, linux-phy@lists.infradead.org In-Reply-To: <20261010-kaanapali-camss-v20-9-63e98ce9ac0c@oss.qualcomm.com> References: <20261010-kaanapali-camss-v20-0-63e98ce9ac0c@oss.qualcomm.com> <20261010-kaanapali-camss-v20-9-63e98ce9ac0c@oss.qualcomm.com> Date: Sat, 10 Oct 2026 16:19:31 +0000 X-BeenThere: linux-phy@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux Phy Mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: sashiko-reviews@lists.linux.dev MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-phy" Errors-To: linux-phy-bounces+linux-phy=archiver.kernel.org@lists.infradead.org VGhhbmsgeW91IGZvciB5b3VyIGNvbnRyaWJ1dGlvbiEgU2FzaGlrbyBBSSByZXZpZXcgZm91bmQg MyBwb3RlbnRpYWwgaXNzdWUocykgdG8gY29uc2lkZXI6Ci0gW01lZGl1bV0gbWVkaWE6IGNhbXNz OiBDU0lEIDEwODAgZmFsbGJhY2sgdG8gQ1NJUEhZIGJyZWFrcyBncmFwaCBpc29sYXRpb24KLSBb TG93XSBtZWRpYTogY2Ftc3M6IHRwZ19yZXNldCBldmFsdWF0ZXMgaHdfdmVyc2lvbiBiZWZvcmUg aXQgaXMgaW5pdGlhbGl6ZWQKLSBbTG93XSBtZWRpYTogcWNvbTogY2Ftc3M6IGRhdGEgcmFjZSBv biB0cGctPnRlc3RnZW4ubW9kZSBhY3Jvc3Mgc3ViZGV2aWNlcwotLQoKY29tbWl0IDc0ZWJjZTBm YjQ0N2FmNzkyODdlMWRmMTZiZTMwOTc0NDZlY2MzNzMKQXV0aG9yOiBIYW5neGlhbmcgTWEgPGhh bmd4aWFuZy5tYUBvc3MucXVhbGNvbW0uY29tPgoKbWVkaWE6IHFjb206IGNhbXNzOiB0cGc6IEFk ZCBzdXBwb3J0IGZvciB2Mi40LjAgVFBHCgpBZGQgc3VwcG9ydCBmb3IgdGhlIFRQRyBmb3VuZCBv biBLYWFuYXBhbGkuIFRoaXMgdXBkYXRlcyB0aGUgQ1NJRCBjb25maWd1cmF0aW9uCmZvciBUUEcg cm91dGluZyBhbmQgYWRkcyB2ZXJzaW9uIGNoZWNrcyBmb3IgdGhlIFRQRyBoYXJkd2FyZSByZWdp c3RlcnMuCgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3Fjb20vY2Ftc3Mv Y2Ftc3MtY3NpZC0xMDgwLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3Fjb20vY2Ftc3MvY2Ft c3MtY3NpZC0xMDgwLmMKPiBpbmRleCA0NmU0NDNlMDUxOTVhLi44NTFiM2NkNzEyZjUyIDEwMDY0 NAo+IC0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcWNvbS9jYW1zcy9jYW1zcy1jc2lkLTEw ODAuYwo+ICsrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcWNvbS9jYW1zcy9jYW1zcy1jc2lk LTEwODAuYwoKWyAuLi4gXQoKPiBAQCAtMTQ4LDggKzE1MSwxNiBAQCBzdGF0aWMgdm9pZCBfX2Nz aWRfY29uZmlndXJlX3J4KHN0cnVjdCBjc2lkX2RldmljZSAqY3NpZCwKPiAgCj4gIAl2YWwgPSAo bGFuZV9jbnQgLSAxKSA8PCBDU0kyX1JYX0NGRzBfTlVNX0FDVElWRV9MQU5FUzsKPiAgCXZhbCB8 PSBwaHktPmxhbmVfYXNzaWduIDw8IENTSTJfUlhfQ0ZHMF9ETDBfSU5QVVRfU0VMOwo+IC0JdmFs IHw9IChwaHktPmNzaXBoeV9pZCArIENTSTJfUlhfQ0ZHMF9QSFlfU0VMX0JBU0VfSURYKQo+IC0J ICAgICAgIDw8IENTSTJfUlhfQ0ZHMF9QSFlfTlVNX1NFTDsKPiArCj4gKwlpZiAoY2Ftc3MtPnRw ZyAmJiBjc2lkLT50cGdfbGlua2VkICYmCj4gKwkgICAgY2Ftc3MtPnRwZ1twaHktPmNzaXBoeV9p ZF0udGVzdGdlbi5tb2RlICE9IFRQR19QQVlMT0FEX01PREVfRElTQUJMRUQpIHsKCltTZXZlcml0 eTogTG93XQpJcyB0aGVyZSBhIGRhdGEgcmFjZSB3aGVuIHJlYWRpbmcgdGVzdGdlbi5tb2RlIGhl cmU/CgpUaGUgQ1NJRCBzdWJkZXZpY2UgZGlyZWN0bHkgcmVhZHMgdGhpcyBsb2NrbGVzc2x5IGR1 cmluZyBwaXBlbGluZQpjb25maWd1cmF0aW9uLCBidXQgdGhlIFRQRyBzdWJkZXZpY2UgdXBkYXRl cyB0ZXN0Z2VuLm1vZGUgdmlhIHRwZ19zX2N0cmwoKQp3aGljaCBvbmx5IGhvbGRzIHRoZSBUUEcn cyBsb2NhbCBjdHJscy0+bG9jay4KClVucHJpdmlsZWdlZCB1c2Vyc3BhY2UgY291bGQgY29uY3Vy cmVudGx5IGlzc3VlIFZJRElPQ19TX0NUUkwgYW5kClZJRElPQ19TVFJFQU1PTiBvbiB0aGUgcmVz cGVjdGl2ZSBzdWJkZXZpY2VzLCBjYXVzaW5nIGEgcGlwZWxpbmUgY29uZmlndXJhdGlvbgptaXNt YXRjaC4KCj4gKwkJdmFsIHw9IEZJRUxEX1BSRVAoQ1NJMl9SWF9DRkcwX1RQR19NVVhfU0VMLCBw aHktPmNzaXBoeV9pZCArIDEpOwo+ICsJCXZhbCB8PSBDU0kyX1JYX0NGRzBfVFBHX01VWF9FTjsK PiArCX0gZWxzZSB7Cj4gKwkJdmFsIHw9IChwaHktPmNzaXBoeV9pZCArIENTSTJfUlhfQ0ZHMF9Q SFlfU0VMX0JBU0VfSURYKQo+ICsJCQk8PCBDU0kyX1JYX0NGRzBfUEhZX05VTV9TRUw7CgpbU2V2 ZXJpdHk6IE1lZGl1bV0KQ291bGQgdGhpcyBmYWxsYmFjayBicmVhayBncmFwaCBpc29sYXRpb24/ CgpJZiB0aGUgdXNlci1zcGFjZSBjbGllbnQgbGlua3MgYSBUUEcgdG8gdGhlIENTSUQgYnV0IGxl YXZlcyB0aGUgVFBHIHRlc3QKcGF0dGVybiBjb250cm9sIHNldCB0byBESVNBQkxFRCwgaXQgZmFs bHMgYmFjayB0byB0aGlzIGVsc2UgYmxvY2suCgpUaGlzIGNvbmZpZ3VyZXMgdGhlIENTSUQgUlgg UEhZIG11eCB0byByZWFkIGZyb20gcGh5c2ljYWwgQ1NJUEhZCnBoeS0+Y3NpcGh5X2lkLiBJZiB0 aGF0IHBoeXNpY2FsIENTSVBIWSBpcyBjb25jdXJyZW50bHkgYWN0aXZlIChmb3IgZXhhbXBsZSwK c3RyZWFtaW5nIHRvIGFub3RoZXIgQ1NJRCksIHdvbid0IGl0cyBkYXRhIGxlYWsgaW50byB0aGlz IENTSUQsIHJlY2VpdmluZwpzdHJlYW0gZGF0YSBmcm9tIGEgcGh5c2ljYWwgQ1NJUEhZIHRoYXQg aXMgbm90IGxpbmtlZCB0byBpdCBpbiB0aGUgVjRMMgptZWRpYSBncmFwaD8KCj4gKwl9Cj4gKwo+ ICAJd3JpdGVsKHZhbCwgY3NpZC0+YmFzZSArIENTSURfQ1NJMl9SWF9DRkcwKTsKPiAgCj4gIAl2 YWwgPSBDU0kyX1JYX0NGRzFfRUNDX0NPUlJFQ1RJT05fRU47CgpbIC4uLiBdCgo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3Fjb20vY2Ftc3MvY2Ftc3MtdHBnLWdlbjEuYyBi L2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcWNvbS9jYW1zcy9jYW1zcy10cGctZ2VuMS5jCj4gaW5k ZXggZDI5ZGU1ZjkzYzE4ZS4uY2FiYmIyNjM4Y2YzOCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL21l ZGlhL3BsYXRmb3JtL3Fjb20vY2Ftc3MvY2Ftc3MtdHBnLWdlbjEuYwo+ICsrKyBiL2RyaXZlcnMv bWVkaWEvcGxhdGZvcm0vcWNvbS9jYW1zcy9jYW1zcy10cGctZ2VuMS5jCgpbIC4uLiBdCgo+IEBA IC0xNjQsMTggKzE2NywyNiBAQCBzdGF0aWMgaW50IHRwZ19zdHJlYW1fb24oc3RydWN0IHRwZ19k ZXZpY2UgKnRwZykKPiAgCX0KPiAgCj4gIAkvKiBHbG9iYWwgVFBHIGNvbnRyb2wgKi8KPiAtCXZh bCA9IEZJRUxEX1BSRVAoVFBHX0NUUkxfVEVTVF9FTiwgMSkgfAo+IC0JICAgICAgRklFTERfUFJF UChUUEdfQ1RSTF9OVU1fQUNUSVZFX0xBTkVTLCBsYW5lX2NudCAtIDEpIHwKPiArCXZhbCA9IEZJ RUxEX1BSRVAoVFBHX0NUUkxfTlVNX0FDVElWRV9MQU5FUywgbGFuZV9jbnQgLSAxKSB8Cj4gIAkg ICAgICBGSUVMRF9QUkVQKFRQR19DVFJMX05VTV9BQ1RJVkVfVkMsIGxhc3RfdmMpOwo+IC0Jd3Jp dGVsKHZhbCwgdHBnLT5iYXNlICsgVFBHX0NUUkwpOwo+ICsKPiArCWlmICh0cGctPmh3X3ZlcnNp b24gPCBUUEdfSFdfVkVSXzJfNF8wKSB7Cj4gKwkJdmFsIHw9IEZJRUxEX1BSRVAoVFBHX0NUUkxf VEVTVF9FTiwgMSk7Cj4gKwkJd3JpdGVsKHZhbCwgdHBnLT5iYXNlICsgVFBHX0NUUkwpOwo+ICsJ fSBlbHNlIHsKPiArCQl3cml0ZWwodmFsLCB0cGctPmJhc2UgKyBUUEdfQ1RSTCk7Cj4gKwkJd3Jp dGVsKFRQR19DVFJMX0NNRF9URVNUX0VOLCB0cGctPmJhc2UgKyBUUEdfQ1RSTF9DTUQpOwo+ICsJ fQo+ICAKPiAgCXJldHVybiAwOwo+ICB9Cj4gIAo+ICBzdGF0aWMgaW50IHRwZ19yZXNldChzdHJ1 Y3QgdHBnX2RldmljZSAqdHBnKQo+ICB7Cj4gLQl3cml0ZWwoMCwgdHBnLT5iYXNlICsgVFBHX0NU UkwpOwo+IC0Jd3JpdGVsKDEsIHRwZy0+YmFzZSArIFRQR19DTEVBUik7Cj4gKwlpZiAodHBnLT5o d192ZXJzaW9uIDwgVFBHX0hXX1ZFUl8yXzRfMCkKPiArCQl3cml0ZWwoMCwgdHBnLT5iYXNlICsg VFBHX0NUUkwpOwoKW1NldmVyaXR5OiBMb3ddCldpbGwgdGhpcyBldmFsdWF0ZSB0byB0cnVlIG9u IHRoZSBmaXJzdCBwb3dlci11cCBmb3IgdjIuNC4wIGhhcmR3YXJlPwoKTG9va2luZyBhdCB0cGdf c2V0X3Bvd2VyKCkgaW4gY2Ftc3MtdHBnLmM6CgoJdHBnLT5yZXMtPmh3X29wcy0+cmVzZXQodHBn KTsKCXRwZy0+cmVzLT5od19vcHMtPmh3X3ZlcnNpb24odHBnKTsKCnJlc2V0KCkgaXMgaW52b2tl ZCBwcmlvciB0byBod192ZXJzaW9uKCkuIFNpbmNlIHRoZSB0cGdfZGV2aWNlIHN0cnVjdHVyZSBp cwp6ZXJvLWFsbG9jYXRlZCBhbmQgaHdfdmVyc2lvbiBpcyBub3QgaW5pdGlhbGl6ZWQgZHVyaW5n IHByb2JlLCB0cGctPmh3X3ZlcnNpb24KaXMgMCBvbiB0aGUgZmlyc3QgcG93ZXItdXAuCgpEb2Vz bid0IHRoaXMgY2F1c2UgdGhlIGRyaXZlciB0byBleGVjdXRlIHRoZSB2ZXJ5IHJlZ2lzdGVyIHdy aXRlIGl0IHdhcwppbnRlbmRlZCB0byBza2lwPwoKPiArCj4gKwl3cml0ZWwoVFBHX0NUUkxfQ01E X0hXX1JFU0VULCB0cGctPmJhc2UgKyBUUEdfQ1RSTF9DTUQpOwo+ICAKPiAgCXJldHVybiAwOwo+ ICB9CgotLSAKU2FzaGlrbyBBSSByZXZpZXcgwrcgaHR0cHM6Ly9zYXNoaWtvLmRldi8jL3BhdGNo c2V0LzIwMjYxMDEwLWthYW5hcGFsaS1jYW1zcy12MjAtMC02M2U5OGNlOWFjMGNAb3NzLnF1YWxj b21tLmNvbT9wYXJ0PTkKCi0tIApsaW51eC1waHkgbWFpbGluZyBsaXN0CmxpbnV4LXBoeUBsaXN0 cy5pbmZyYWRlYWQub3JnCmh0dHBzOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2xpbnV4LXBoeQo= From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-alma10-1.taild15c8.ts.net [100.103.45.18]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E2919392807 for ; Sat, 10 Oct 2026 16:19:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=100.103.45.18 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1791649183; cv=none; b=axWRgutjdk8jgPuxQ+CdhkG1uxq426aaio0YPm3GkFUwe4QWadJu/V1fL+Ets/UK2Dcm2TcEO3mV1w1u5u5M/PVDb1784CePJ4hgplFJy7g0XhD7t2q5BrHn/IbPTFKjCl4gtwc50kAbycXF+OVX8dfxkxnzJRpduYgvYG5VpJY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1791649183; c=relaxed/simple; bh=Qj3Mv1KqmiTm8jzFOVgGpcujd5BKAuKFsEqgDQjGyTM=; h=Message-ID:From:Subject:To:Cc:In-Reply-To:References:Content-Type: Date; b=QgzM8e7S2UqU7nu5wxDiR2RJg3naHYPZU9fNz8fHGUPJ9CEIJcFOPjxl8nZHu1MzNZG8PJfaYUwl0pG9RbQQ9wyHNkvghLHSEG0yIupZnOOVgtDM0kJyE/zTC0yw1NmiUW+7KdOQ/Un1cLND2dAKC5QS6m5zAxxXS4amdKDelKE= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ABSRWAri; arc=none smtp.client-ip=100.103.45.18 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ABSRWAri" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3E0C71F000FF; Sat, 10 Oct 2026 16:19:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1791649172; bh=oVJlSjap2M7F+7JAB6BD9119AVFpjcCAe5IkWx49Lac=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=ABSRWAriygV0rggubKJIcr4AKstcUYPqF+ns0NrgfJJHpoCM3rFHkU82rM0KPTrD+ /8DObYWdQomHscJJlkmsTYDwJjTHRHXXYSc2jyTLDLty/c9HJ7LZjrLIKii+NR/cvf WFsRTiZtrr1PofJj3D75uj2TlDyd5siku/92ZrvNfkXHpXuAW9xoJe+MSzRRnOsxmv o83E9519QSjEACkP9u40CbletHz5ub9AxfIqtvxxEkGSfyKdNPEGwQeskujkGHwHMx Nul4Y47ju6QpIEEi9sFcsMS0+iVVzJXNhbjKOWmYd+Eo6Cq8aMV5rBTTAVT4x8LxL3 PvsJTB9Z3/fQw== Message-ID: From: sashiko-bot@kernel.org Subject: Re: [PATCH v20 09/13] media: qcom: camss: tpg: Add support for v2.4.0 TPG Reply-To: sashiko-reviews@lists.linux.dev To: "Hangxiang Ma" Cc: robh@kernel.org, conor+dt@kernel.org, neil.armstrong@linaro.org, olteanv@gmail.com, devicetree@vger.kernel.org, vkoul@kernel.org, media-ci@linuxtv.org, linux-phy@lists.infradead.org In-Reply-To: <20261010-kaanapali-camss-v20-9-63e98ce9ac0c@oss.qualcomm.com> References: <20261010-kaanapali-camss-v20-0-63e98ce9ac0c@oss.qualcomm.com> <20261010-kaanapali-camss-v20-9-63e98ce9ac0c@oss.qualcomm.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Date: Sat, 10 Oct 2026 16:19:31 +0000 Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Thank you for your contribution! Sashiko AI review found 3 potential issue(= s) to consider: - [Medium] media: camss: CSID 1080 fallback to CSIPHY breaks graph isolation - [Low] media: camss: tpg_reset evaluates hw_version before it is initializ= ed - [Low] media: qcom: camss: data race on tpg->testgen.mode across subdevices -- commit 74ebce0fb447af79287e1df16be3097446ecc373 Author: Hangxiang Ma media: qcom: camss: tpg: Add support for v2.4.0 TPG Add support for the TPG found on Kaanapali. This updates the CSID configura= tion for TPG routing and adds version checks for the TPG hardware registers. > diff --git a/drivers/media/platform/qcom/camss/camss-csid-1080.c b/driver= s/media/platform/qcom/camss/camss-csid-1080.c > index 46e443e05195a..851b3cd712f52 100644 > --- a/drivers/media/platform/qcom/camss/camss-csid-1080.c > +++ b/drivers/media/platform/qcom/camss/camss-csid-1080.c [ ... ] > @@ -148,8 +151,16 @@ static void __csid_configure_rx(struct csid_device *= csid, > =20 > val =3D (lane_cnt - 1) << CSI2_RX_CFG0_NUM_ACTIVE_LANES; > val |=3D phy->lane_assign << CSI2_RX_CFG0_DL0_INPUT_SEL; > - val |=3D (phy->csiphy_id + CSI2_RX_CFG0_PHY_SEL_BASE_IDX) > - << CSI2_RX_CFG0_PHY_NUM_SEL; > + > + if (camss->tpg && csid->tpg_linked && > + camss->tpg[phy->csiphy_id].testgen.mode !=3D TPG_PAYLOAD_MODE_DISAB= LED) { [Severity: Low] Is there a data race when reading testgen.mode here? The CSID subdevice directly reads this locklessly during pipeline configuration, but the TPG subdevice updates testgen.mode via tpg_s_ctrl() which only holds the TPG's local ctrls->lock. Unprivileged userspace could concurrently issue VIDIOC_S_CTRL and VIDIOC_STREAMON on the respective subdevices, causing a pipeline configurat= ion mismatch. > + val |=3D FIELD_PREP(CSI2_RX_CFG0_TPG_MUX_SEL, phy->csiphy_id + 1); > + val |=3D CSI2_RX_CFG0_TPG_MUX_EN; > + } else { > + val |=3D (phy->csiphy_id + CSI2_RX_CFG0_PHY_SEL_BASE_IDX) > + << CSI2_RX_CFG0_PHY_NUM_SEL; [Severity: Medium] Could this fallback break graph isolation? If the user-space client links a TPG to the CSID but leaves the TPG test pattern control set to DISABLED, it falls back to this else block. This configures the CSID RX PHY mux to read from physical CSIPHY phy->csiphy_id. If that physical CSIPHY is concurrently active (for example, streaming to another CSID), won't its data leak into this CSID, receiving stream data from a physical CSIPHY that is not linked to it in the V4L2 media graph? > + } > + > writel(val, csid->base + CSID_CSI2_RX_CFG0); > =20 > val =3D CSI2_RX_CFG1_ECC_CORRECTION_EN; [ ... ] > diff --git a/drivers/media/platform/qcom/camss/camss-tpg-gen1.c b/drivers= /media/platform/qcom/camss/camss-tpg-gen1.c > index d29de5f93c18e..cabbb2638cf38 100644 > --- a/drivers/media/platform/qcom/camss/camss-tpg-gen1.c > +++ b/drivers/media/platform/qcom/camss/camss-tpg-gen1.c [ ... ] > @@ -164,18 +167,26 @@ static int tpg_stream_on(struct tpg_device *tpg) > } > =20 > /* Global TPG control */ > - val =3D FIELD_PREP(TPG_CTRL_TEST_EN, 1) | > - FIELD_PREP(TPG_CTRL_NUM_ACTIVE_LANES, lane_cnt - 1) | > + val =3D FIELD_PREP(TPG_CTRL_NUM_ACTIVE_LANES, lane_cnt - 1) | > FIELD_PREP(TPG_CTRL_NUM_ACTIVE_VC, last_vc); > - writel(val, tpg->base + TPG_CTRL); > + > + if (tpg->hw_version < TPG_HW_VER_2_4_0) { > + val |=3D FIELD_PREP(TPG_CTRL_TEST_EN, 1); > + writel(val, tpg->base + TPG_CTRL); > + } else { > + writel(val, tpg->base + TPG_CTRL); > + writel(TPG_CTRL_CMD_TEST_EN, tpg->base + TPG_CTRL_CMD); > + } > =20 > return 0; > } > =20 > static int tpg_reset(struct tpg_device *tpg) > { > - writel(0, tpg->base + TPG_CTRL); > - writel(1, tpg->base + TPG_CLEAR); > + if (tpg->hw_version < TPG_HW_VER_2_4_0) > + writel(0, tpg->base + TPG_CTRL); [Severity: Low] Will this evaluate to true on the first power-up for v2.4.0 hardware? Looking at tpg_set_power() in camss-tpg.c: tpg->res->hw_ops->reset(tpg); tpg->res->hw_ops->hw_version(tpg); reset() is invoked prior to hw_version(). Since the tpg_device structure is zero-allocated and hw_version is not initialized during probe, tpg->hw_vers= ion is 0 on the first power-up. Doesn't this cause the driver to execute the very register write it was intended to skip? > + > + writel(TPG_CTRL_CMD_HW_RESET, tpg->base + TPG_CTRL_CMD); > =20 > return 0; > } --=20 Sashiko AI review =C2=B7 https://sashiko.dev/#/patchset/20261010-kaanapali-= camss-v20-0-63e98ce9ac0c@oss.qualcomm.com?part=3D9