From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (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 46F523EBF24 for ; Thu, 12 Feb 2026 13:05:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770901527; cv=none; b=uGDZAXBUC/fo0RjTOHaDp69wKebGIj/J140Ab7qH48WbTApKoFB/rLkVgVDv51ilBM30Hv3v8JYhv5jAaDz508gqLErDb4z1/u3cdLzUAR37AC8ivi1Gcrnqk+1NN5cX3nEBVLRu5NxQIbM1OtkC1t1fpCcDF2UjMkuPADM7pp0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770901527; c=relaxed/simple; bh=a3G5yws0G5Q5A5x8eF4TVEDtnRBjeCcYcF9sRVwvv18=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=L0W/sMrRnJzetbns2nnQ78HfLNevnkQCaDCgSdhDEtogpk7QR90XNCYTUr+9gblmmAQvQSREPEmp9GC+ps0mvl2D38wtULT9+2dfxqn8PvzXeCWXWT588jkGPQfMxNT4mlD0Iw4nyXnqHlY17VzSPwBY7FtrdH21AVtcYU2DxMk= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=Phn6Ul8b; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=dy9EEjH1; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="Phn6Ul8b"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="dy9EEjH1" Received: from pps.filterd (m0279865.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 61CAIQNc657940 for ; Thu, 12 Feb 2026 13:05:25 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= Gh6NSeWutFEmj42OJ5qvtSwCS60I9Bqn+t9+J1s015c=; b=Phn6Ul8bVUtPv4Nv 9RqNjn4T9oNv1NcrnqMn2fSlDGqa+TpkdeBLPow4gycDHrZZyN7fyLzk63XFT767 L5Tc1F3lza2R4c9CeEjBtsUl8r21gIbzos627I4s6FNAQCbgii5JEHDU3Pgt31lb pLqTM+hSZHdZ0ktWs8Aq9zznzLsGnsE6/7dUTI1nyJXUI2NQ8EMldiX9B0491Us3 lraFb4PDKBr2rRKQoCHiB3qXoE1DYGUaWYh/pAQJpA6tNn6Y4qrvfSkRWWWneWsX t6PzjD6Vu8NxOhNjKkkyA/XajGuWVyUXppxyp3+Nb0VGBrsxPfC7kOeJwoIj0sfk lu+NIA== Received: from mail-pl1-f198.google.com (mail-pl1-f198.google.com [209.85.214.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4c9d09gfwd-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 12 Feb 2026 13:05:25 +0000 (GMT) Received: by mail-pl1-f198.google.com with SMTP id d9443c01a7336-2a9638b0422so35248385ad.3 for ; Thu, 12 Feb 2026 05:05:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1770901525; x=1771506325; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=Gh6NSeWutFEmj42OJ5qvtSwCS60I9Bqn+t9+J1s015c=; b=dy9EEjH1lW1bad1quOSk7q2yVZg9LYIIlYxk2XF4wKeS4KjfMRRpmWIqdcGKhaLcqh rPZLV/pBaKDW6Ts07rV56h2iHl/g6R6h7CiicCpzmb2t0XkCSWBwO08a+T89gutPEDYx YmosqTcLifdLtuXF0RQgDs9CRCONUAuZ709oYGa8ZRSf9tXW6LeTRl46WWhDaZgtLZaP W+RZ4xayTSPC9Eaa2xbjSl3i3G8dYPUlvtPHGQ9Zure8RfYeuG5/m+2vorz1CIkQcbIt oPFccqLO35Yx1CbDJp4adyFaOi2fwiGNI0poGT4A4VuVKH6SJBC4egdk7Ob+40UFCPYe HPCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770901525; x=1771506325; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Gh6NSeWutFEmj42OJ5qvtSwCS60I9Bqn+t9+J1s015c=; b=WjQFvPYROiFM1/8P0gX3y5F5b4S4YA/FgX0J+lJ53sen6AqH3sneymSKBrInVBDJUB vmJFkj+Vol3UsDu7LD8nzUDQ79+V6PadJ2JCh1yoJSZ3FmAifYaClsrnTHg+A9Xy6bZi jgcLkDs9IWuAPvVS3HSLxyyM8zR1mXMXDv40Qhz785nMQ8FWAmwvz5bcZYenEac7hLuT hvPrTEtb2LG6FKq2MGpStFueAuv2OxcRGNiwMXnDjBuaSoVlgxEFmuIwY9tWKkQuGmPV TYJOCrpkCSofIyCMjVqyucRo/PrOSk0ZbeyXY+MXPUEB3XCyqAJOazJ5EztFvgQwJt1p yhfg== X-Forwarded-Encrypted: i=1; AJvYcCVnmwtG3pUB6UQI6ZA3FFeSxdYBdBe+AlepEWoMdKNPRxYUTdfRD3ZSKgTUCkaS8by/T9GbktA/lKmPkvc=@vger.kernel.org X-Gm-Message-State: AOJu0YzP5q4zJFC2YcFg13g0cDrkWVfqJvbb/nIiEKHcepK7Od5wckU0 n6Y6zhvxjtxP1zLkaGGrpJ+DOtJiwQeJTs0IvzJZY+aXksQ4bHJXAano7h/uFiD+wf9EthgjXTM Rm6S+Qx6wnUGueo7gJeR+ANarcUGmbxEZJILg/EdfyRdBhUGGBvuht4HMRW4Q1hb/BtE= X-Gm-Gg: AZuq6aKXkZqCUJuhPebnBW+i9sUg7F/mzAe/EuxSNacWn009vg3lDbPcy2YdOdDyY2i AnhKmC2PozhbEWqt21BE2RmMKkJHeAOkaRKrqKynMiWru4s3Tn642HFsTwjHFCGzrhKGpGoBGcY nJdOl3sPB/NTCT9t9qhAj/QCkLBgjG7PxFBgi1qCrPpvoUH5PRb34bfoJ3k7Dg//kvR+vJbyLMY XYjQDEk029PgE9VUaffUNNo1EMlLC3diYsJtosafSlnvtygNoeLMU7LxuqWJOOoSFjZigSfhNuw ZB5xSXSegFzdEO7OOKYx9CTF9kH1oagL4NmMmJBlW6gYkqnKzajXCOngvIatR9xwjxYV6LUJdNT Ck7DKXSd8umFfVqnpnAms203ixTmP+WYRDZN14Xn9B3oZOSC1hTRe0w== X-Received: by 2002:a17:903:3204:b0:2aa:ecec:a43d with SMTP id d9443c01a7336-2ab399a6779mr28425205ad.21.1770901524651; Thu, 12 Feb 2026 05:05:24 -0800 (PST) X-Received: by 2002:a17:903:3204:b0:2aa:ecec:a43d with SMTP id d9443c01a7336-2ab399a6779mr28424825ad.21.1770901524119; Thu, 12 Feb 2026 05:05:24 -0800 (PST) Received: from [10.0.0.3] ([106.222.229.190]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2ab2997b6d0sm53628715ad.73.2026.02.12.05.05.20 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 12 Feb 2026 05:05:23 -0800 (PST) Message-ID: Date: Thu, 12 Feb 2026 18:35:19 +0530 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.15.1 Subject: Re: [PATCH 2/2] media: iris: Enable Gen2 HFI on SC7280 Content-Language: en-US To: Konrad Dybcio , Dmitry Baryshkov Cc: Vikash Garodia , Abhinav Kumar , Bryan O'Donoghue , Mauro Carvalho Chehab , linux-media@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org References: <20260209-iris_sc7280_gen2_support-v1-0-390000a4fa39@oss.qualcomm.com> <20260209-iris_sc7280_gen2_support-v1-2-390000a4fa39@oss.qualcomm.com> <0da582a6-5bba-4450-99ec-cf57b67915e6@oss.qualcomm.com> <0a324898-092b-3e44-c35c-15de20b50f40@oss.qualcomm.com> <2uih6xdzarkwnvhlhv5kznmdwo4jorqvsrb7xxrxgr6vprx3ey@4kx45k5i3c4y> <6b9042c8-767e-0fdb-9012-f3790899509e@oss.qualcomm.com> From: Dikshita Agarwal In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMjEyMDA5NyBTYWx0ZWRfX54yyr6GUyFIQ 7oHDbWH+R1m5tQJXD/DdPzQU/6XaLhKain6EQEiut4DZ5P05WS++zqdutj9pXOJfVa5xsido73g UdkY91ysmDcXWvbDfMvQjdIOc/XTLYtLCcHZhV0kuPgAE7t+Hb3KJERNl4eRntCKG7lF9lOs3Mi f+cT85oj8TtqS9gQyXOK2jE1kqzykpS47IbQKwk5QuKUna1068LUe/CrMcfCYkSW7Zj0+cSFqtO QLk68BeAR8GZZk4sWdqRDyh6jmjewZyBkAN9Bn3C3yZ0HtlqsoUGDD3HCJqfHhaLTm7rLfGepor X62jfadSVIsRRGd7jO46VzhT9BnahvBgSqGGxVmWefXnF7eKeKBdqzv4+uoim1G/xMCOM1KrFPm 2Chw+iFYWUqEfE5leoWEbX9kFFanx3A4qJilsSuJKGICDWoQkXcN6Y/UJIHOQqHrBG2wrqeQNf0 dn4nHv7129EinhI8ZUQ== X-Proofpoint-GUID: u_m5c36wb5W3Ns49rw7-sAWDhjdsZwEw X-Authority-Analysis: v=2.4 cv=Y6j1cxeN c=1 sm=1 tr=0 ts=698dd015 cx=c_pps a=MTSHoo12Qbhz2p7MsH1ifg==:117 a=VDDfqcjMpRzOalc4LhIaOQ==:17 a=IkcTkHD0fZMA:10 a=HzLeVaNsDn8A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=Mpw57Om8IfrbqaoTuvik:22 a=GgsMoib0sEa3-_RKJdDe:22 a=EUspDBNiAAAA:8 a=zkfBPpEoM8Yg5YbrLrkA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=GvdueXVYPmCkWapjIL-Q:22 X-Proofpoint-ORIG-GUID: u_m5c36wb5W3Ns49rw7-sAWDhjdsZwEw X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-12_04,2026-02-12_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 malwarescore=0 adultscore=0 suspectscore=0 bulkscore=0 lowpriorityscore=0 phishscore=0 priorityscore=1501 impostorscore=0 clxscore=1015 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602120097 On 2/12/2026 5:13 PM, Konrad Dybcio wrote: > On 2/12/26 12:16 PM, Dikshita Agarwal wrote: >> >> >> On 2/9/2026 6:05 PM, Dmitry Baryshkov wrote: >>> On Mon, Feb 09, 2026 at 05:04:48PM +0530, Dikshita Agarwal wrote: >>>> >>>> >>>> On 2/9/2026 3:32 PM, Konrad Dybcio wrote: >>>>> On 2/9/26 10:45 AM, Dikshita Agarwal wrote: >>>>>> SC7280 supports both Gen1 and Gen2 HFI firmware. The driver continues to >>>>>> use Gen1 by default, but boards that intend to use Gen2 firmware can >>>>>> opt‑in by specifying a Gen2 image through the Device Tree >>>>>> 'firmware-name' property. >>>>>> >>>>>> Based on this property and the availability of the referenced >>>>>> firmware binary, the driver selects the appropriate HFI generation and >>>>>> updates its platform data accordingly. Boards that do not >>>>>> specify a Gen2 firmware, or where the firmware is not present, >>>>>> automatically fall back to Gen1. >>>>>> >>>>>> Signed-off-by: Dikshita Agarwal >>>>>> --- > > [...] > >>>> To avoid accidental matches, I can switch to an exact filename match >>>> instead. That way, only the specific Gen2 image (for example >>>> "qcom/vpu/vpu20_p1_gen2.mbn") will trigger the Gen2 path, and boards that >>> >>> How do you detect that for the OEM-signed firmware, which can have >>> random name? >>> >>>> want to use Gen2 can opt in by naming the firmware accordingly. >> >> I Explored on suggested alternative approaches and seeing some limitation >> with the both of them: >> >> 1. Detecting Gen1/Gen2 by scanning the firmware blob (fw->data) >> It is possible to parse QC_IMAGE_VERSION_STRING from the .mbn and extract >> the version string. The issues with this approach : >> >> - the version string has no explicit marker that identifies Gen1 vs Gen2. >> >> - This prefix is not a formal ABI, and it is not consistent across SoCs. >> Each SoC family uses different naming patterns in the version string. >> >> Example : For SC7280 Gen1 we currently see: >> QC_IMAGE_VERSION_STRING=video-firmware.1.0- while SM8250 has >> QC_IMAGE_VERSION_STRING=VIDEO.VPU.1.0-00119-<> >> >> So the driver would need SoC‑specific string‑matching rules, which is hard >> to maintain if we are looking for a design to address all available SOCs. > > The only SoC with such distinction today is kodiak. So we can simply check: > > if (kodiak && strstr(fw->data, "VIDEO.VPU.1.0.") > hfi = gen2; Agree, this works for Kodiak. However, Dmitry was also referring to other SoCs that may support both Gen1 and Gen2, and at the moment there isn’t a generic way to handle that check. Also, please note that the Kodiak Gen1 firmware uses the string video-firmware.1.0, whereas Gen2 uses VIDEO.VPU.3.4. > > > Can we agree that VIDEO.VPU.x firmwares are hfigen2? If so, problem also > solved for <=8450 > Nope. that's not true for all, SM8250 uses VIDEO.VPU.1.0 which is gen1. Thanks, Dikshita > Konrad