From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.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 AD1C82F25F3 for ; Tue, 11 Aug 2026 12:43:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786452186; cv=none; b=uu3NZ8ZeAWS1d5GnPnXDZbEgVYtSBDn7grtbLPYNprAw9cyAE/xGt/OF2oTbiwsg6EUh+YwwK7YuExee5+YFijJxxN9lGAQtGhgfjL6lP9QgmQ6HpdmcKxnBA75XNyGvfP3sa9crFcq/CWaoEvYarr00zVM4gZN0vf0Ut1cBQ0E= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786452186; c=relaxed/simple; bh=607fsFnHeMxAOGrNAF2iXSXzkDFDrhSLkNg5imN0llw=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=CyBIUKK33ZnkmczLXf7EH7MJwENYElMNrvaS6rR340EkRq7KDvaKHHKsz9hvjlBdtl/DL+iK48qLIWoGxDJ3bA3BP7aTT4++QBydjFxPHIsMuqP/xObdHraZFgqvZF+/12HG27rho2WQdyzZ7uGCanMN7PF6eRm5VfSJEjxpo4Y= 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=PvI20t8W; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=hdoRHHkP; arc=none smtp.client-ip=205.220.180.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="PvI20t8W"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="hdoRHHkP" Received: from pps.filterd (m0279871.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 67BCRRnI939943 for ; Tue, 11 Aug 2026 12:43:03 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= EdNNX4o1+f/fl3ybaHbSJyRw8FBKGT34Noiqeikd6gg=; b=PvI20t8W815Ld19Z V8qu4hMi/QjMWMXGavHZl200X2OMqKKQcyw25fxjAGg3ZCGZ4AAHJmPbeEes5iPH ZMqFVvq/xIuoCrxa/yiL10A1f0HPRJNbdxRI8ou/u3XeEvxkVFPEENuimMYc37Fu jgVuluO6AVa/4AYVDYCO3zy4yDFp/8UKqLlSb/cGZafMPeyhW0JoIW8KJfuZSRob 0oVecqzP6gM0KVZAdtPjmcLWjVGdM1pTpWMVVMyQJAh1Z2H+cyKp+Oj197V4hD36 K2k7Y09f4PLwR4+KPl+OtT3LKOqz+qA9ViDnLGb8sTTS8xoeW28oJ2i4ZYS1b/kN N7RviQ== Received: from mail-pl1-f200.google.com (mail-pl1-f200.google.com [209.85.214.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4fyjyfv0q5-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 11 Aug 2026 12:43:03 +0000 (GMT) Received: by mail-pl1-f200.google.com with SMTP id d9443c01a7336-2cee894b3d8so55151615ad.2 for ; Tue, 11 Aug 2026 05:43:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1786452182; x=1787056982; darn=vger.kernel.org; h=content-transfer-encoding:content-type:in-reply-to:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id:from:to:cc:subject:date:message-id:reply-to :content-type; bh=EdNNX4o1+f/fl3ybaHbSJyRw8FBKGT34Noiqeikd6gg=; b=hdoRHHkPdM3DoxEXR/ImvgUdyz4Hh59x/zgnT9zVwskhd8oTq0eKVgSbnlmZUqAcHW 9HBsZx6eInP261MfaUoIiO+53HpeaDQMMHXcvTSrejO+p+pJwrpB0PWNI2MD0POAX7nx W06A4/L20ZvHVsPKs4QmUb3iXUdnvBVYSmLHMCaWDD1OVJEHp6R+uhqVyH06Kog8yqLP kXlZykUa3GqcCle8Rfc/gFc3pv06oTpWDUvJJViDg+6ulNBXcnS42B+nko4+pD1Wbrap 7X9B8O5Mi86nvnjZW7K/1/eY4DfJTyOPW6Z3blsT2Kyw9Wr5OJTet/cjVF3PQ1KZoHzj dINw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786452182; x=1787056982; h=content-transfer-encoding:content-type:in-reply-to:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=EdNNX4o1+f/fl3ybaHbSJyRw8FBKGT34Noiqeikd6gg=; b=ae/xOiVbr3NCRRAfYGNkC2zzB2R04KgGEPk4dYwBmVLzQcA/7+uqSagxAH5sMYLoXb poMRacVrdSDrzzLmcPGUYM/QhVnRjmqa4wbCb7iWIJe4VAmpo8Mx9KNX8hecZHJaPn3p uN5F/bG+wi8A2chTBcX8mN0ZDlkMU+PL5rpRpbu1JBVaG6Uf9bcvKDa7S9FlZWqeeLy5 edtamGX/Jizm4WMJVgBQt7KIcs49vpwWYlj8OubosMFWEm3ra2xxTIx+1oZw/EXY4FMs GSXNmQ/WFY2k6rmuDRYRhlBzuWosA1gHbGopHI547vqRK4V+7GL5puS101NQ5sw6FAsQ 2tWQ== X-Forwarded-Encrypted: i=1; AHgh+RppwlY9OgtiCWlFBbY9JVAKZpqzb344hKYbxQzFxPhNrSih4dzjBdc/v0S/+Mp5v4pZNwCsncIz1v5eSK8=@vger.kernel.org X-Gm-Message-State: AOJu0YzbzoyM7L+n0WOJ6Jvi0oxKvk0/or1IvQ8v81cy4uHBO6+4oou+ UFV74EtZNn1KgaAt+/Ubi8RT4xMGQrUlh4o0uJlxtdSUSCbdtBAju4U7kjeAzDI7P9a2Ux7sAfm sIX0YaijccZxTL3j0HGifBD2Q8fMXUKhUJKOC2bZ3Ne89xnQzBT6K/lc/FKfCSMOvxUo= X-Gm-Gg: AR+sD13oiHwPaXg+ZLg5CXMK4Z+SBQv3en8+uebFDDh0uVHftqXsieuirxxJoYBLm65 hVW4li5chJEPmoiiUC8jd7Q6stqvCjwg3Xg8vvx8qkT8NXijJ9XRJyt80hLJ/ZPUxeOIkfrXjbG 9ZaWFYOqAgaks2zvpuymwOOqhbfevw8vf92CPmOZNIkCblqyV0hrLGQ/606idj4nC09GhLH2obg rR/XQdX+2sdsPSv0Qj8eHKsFit/hclw6CVaZQIsDxEhQTRyE/nmMolhxTJJlpC7lcuZuDEhX1PN Xmpjk4VfwbrCPSCc6iunie5bXh5jcejOQPyAzT5ZGl9t4BpM7YQCDCLLkdFZF4hxRfvY7J2NG1E yiobgNOUfTiDrguQH9ETsNip7OCpSpND4PCGi0VpyDEvH+X1IwcoZ9r+MnugedW6PxMzND3eY X-Received: by 2002:a17:902:d2cd:b0:2d0:4021:bb62 with SMTP id d9443c01a7336-2d3178d358fmr33259435ad.16.1786452182232; Tue, 11 Aug 2026 05:43:02 -0700 (PDT) X-Received: by 2002:a17:902:d2cd:b0:2d0:4021:bb62 with SMTP id d9443c01a7336-2d3178d358fmr33258695ad.16.1786452181677; Tue, 11 Aug 2026 05:43:01 -0700 (PDT) Received: from ?IPV6:2401:4900:1cb5:973e:782a:16ef:897c:10dd? ([2401:4900:1cb5:973e:782a:16ef:897c:10dd]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2d315ef0ab2sm7377085ad.13.2026.08.11.05.42.57 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 11 Aug 2026 05:43:01 -0700 (PDT) Message-ID: <962122da-47cd-4325-9ced-ecbee2281580@oss.qualcomm.com> Date: Tue, 11 Aug 2026 18:12:55 +0530 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 2/2] i2c: qcom-geni: Add I2C frequency table for firmware-based SEs To: Kathiravan Thirumoorthy , Viken Dadhaniya , Andi Shyti , Manikanta Mylavarapu , Bjorn Andersson , Konrad Dybcio Cc: Mukesh Kumar Savaliya , linux-i2c@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org References: <20260811-ipq5424_i2c_scl_updates-v1-0-bddcb2ceebda@oss.qualcomm.com> <20260811-ipq5424_i2c_scl_updates-v1-2-bddcb2ceebda@oss.qualcomm.com> Content-Language: en-US From: Mukesh Savaliya In-Reply-To: <20260811-ipq5424_i2c_scl_updates-v1-2-bddcb2ceebda@oss.qualcomm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Proofpoint-ORIG-GUID: ccAs6MVvMBGMLRC8LKsWstuP45xzMeB9 X-Proofpoint-Spam-Info: AW1haW4tMjYwODExMDEwNiBTYWx0ZWRfXwREJEYzYdMVh fryKvDUSopm/qsT+vkMnYwy6RCmia2mG15N7GRjtQjB1mFJZDo8SpLNnbLUcEA+L7sLadypGElf zMcBJ+nclIqg7slCSaSmWLjJFggEStM= X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwODExMDEwNiBTYWx0ZWRfXxN2E9kRtCCfR MORqRpXsZm0/OhcqcYJh1/AyqGt+PjBAltv8gZaw/Wy64YgGdf/Z4FxPgBo2m3JbY/CuZO04QWB d2A/I3AXJH6YY/LReEP0Ctw3nvKIdOpvH/QV96CrJzZv5Ec8mZwlVZbjybEldkFvdHlxhtpuTwm T4hPChxxqR1Yn+MNWP1O4SYOeLIMPKhKX4iVZAwdpj3dy+4mVqEFpFpUwzezt+K1iFcyPtnrRTg iD3wM8Ht6fqc0dt/5BppZwJ6jn5OGOiIA7y+UBFRBl+EtoxnttTSMfW5pTnzgwmv9rpePvjVNfk ZLDAuQg1UcfRZSdIVHACVUmUPPqKTC4WIoUIaqZ4qXZgHc73ybdtYeNZa5XC83LsD3mv1qSi3p5 sqC8klLwZX6uhzC0WMTKzt/VLMvuD/539XXr5jXBhXrfYy8aboGuW+gDWnFo5tKZDCvwRnK93/K OrewXfqMnAShbUPp8zw== X-Proofpoint-GUID: ccAs6MVvMBGMLRC8LKsWstuP45xzMeB9 X-Authority-Analysis: v=2.4 cv=Zd4t8MVA c=1 sm=1 tr=0 ts=6a7b18d7 cx=c_pps a=IZJwPbhc+fLeJZngyXXI0A==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=Sv0fKeRqtYgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=3WHJM1ZQz_JShphwDgj5:22 a=EUspDBNiAAAA:8 a=GgOkKcAal0c4t4REf8wA:9 a=QEXdDO2ut3YA:10 a=uG9DUKGECoFWVXl0Dc02:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-08-11_02,2026-08-10_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 impostorscore=0 malwarescore=0 suspectscore=0 adultscore=0 priorityscore=1501 spamscore=0 phishscore=0 bulkscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2608110106 On 8/11/2026 2:53 PM, Kathiravan Thirumoorthy wrote: > On IPQ5424, RTL-based I2C can be supported by both minicore and firmware > based SEs. For firmware-based SEs, use different SCL settings as > recommended by the design team. Introduce a separate table for the same. > > Identify whether the SE is minicore or firmware-based and select the what is minicore ? Please Make it upstream specific, RTL hardened or define minicore first. > appropriate frequency table to achieve the desired bus frequencies. > > Move geni_i2c_clk_map_idx() from geni_i2c_resources_init() to > geni_i2c_init() to ensure SE_HW_PARAM_2 is accessed only after the Reasoning required - why only for 32 MHz ? OR better reasoning for 32Mhz support related changes. > required clocks have been enabled. > I suggest to add 32Mhz support as this is already having 19.2MHz support. Subject shows generic frequency support sounding like no support present. > Signed-off-by: Kathiravan Thirumoorthy > --- > drivers/i2c/busses/i2c-qcom-geni.c | 23 +++++++++++++++++------ > include/linux/soc/qcom/geni-se.h | 1 + > 2 files changed, 18 insertions(+), 6 deletions(-) > > diff --git a/drivers/i2c/busses/i2c-qcom-geni.c b/drivers/i2c/busses/i2c-qcom-geni.c > index 00013b41a6f5..2f3026602c0c 100644 > --- a/drivers/i2c/busses/i2c-qcom-geni.c > +++ b/drivers/i2c/busses/i2c-qcom-geni.c > @@ -194,12 +194,21 @@ static const struct geni_i2c_clk_fld geni_i2c_clk_map_32mhz[] = { rename to _minicore ? > {} > }; > > +static const struct geni_i2c_clk_fld geni_i2c_clk_map_32mhz_fwcore[] = { > + { I2C_MAX_STANDARD_MODE_FREQ, 12, 9, 10, 25 }, > + { I2C_MAX_FAST_MODE_FREQ, 4, 3, 9, 18 }, > + { I2C_MAX_FAST_MODE_PLUS_FREQ, 1, 6, 15, 29 }, > + {} > +}; > + > static int geni_i2c_clk_map_idx(struct geni_i2c_dev *gi2c) > { > const struct geni_i2c_clk_fld *itr; > + bool is_minicore = FIELD_GET(GEN_USE_MINICORES, > + readl_relaxed(gi2c->se.base + SE_HW_PARAM_2)); > > if (clk_get_rate(gi2c->se.clk) == 32 * HZ_PER_MHZ) > - itr = geni_i2c_clk_map_32mhz; > + itr = is_minicore ? geni_i2c_clk_map_32mhz : geni_i2c_clk_map_32mhz_fwcore; _minicore with above table renamed. > else > itr = geni_i2c_clk_map_19p2mhz; > > @@ -1046,6 +1055,13 @@ static int geni_i2c_init(struct geni_i2c_dev *gi2c) [...]