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 50FC3279DC3 for ; Tue, 2 Dec 2025 16:36:32 +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=1764693394; cv=none; b=p5keONKn0nXO9oV+QbHChSbzPrbJyCp4mrvXuyQtrZgFr86CP0of7B7dvRvnBsfZrzQCkNxueiVaxg3lJxnWvzgZ1auVXEJ3Dh8GuFaWHxn4WIHCebu261C6l6YJ6cvHif63CiRtJew5YwRMGWnsh0WISPSctSw9pqfPTSmkOcs= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764693394; c=relaxed/simple; bh=M4+nISs1laQN5yabC5vnIz3Qz04WXy5+MmyJD+7yeTU=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=MdXE4TNYONl9dD5XdJ1F8fj+ZyD+3Pe6rljyZQIHu6feHfeLe0TUXqgLR6pJgQJKWPpsIEtHIjXqkxJL4RMOthuIM52sqbKu8BVSVflqBW3pgWNm1PLK8P/SHto5KyUV+TU+n80F/PK+acQF89uA/AL2kw5a3IHLaA95zkM9R/I= 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=LxTt5X55; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=kjZG7uiO; 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="LxTt5X55"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="kjZG7uiO" Received: from pps.filterd (m0279868.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5B2B4Ptj3310272 for ; Tue, 2 Dec 2025 16:36:32 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= lBrRMxsqKdSUAVkz5FQHuVSzqzwszXxIw9LahdnMclI=; b=LxTt5X55WEdgz8sK yEfrf1S7AXqhpvoClWWMOinRM/8ABolgLeKhi/CPQ/WhzsRxmT7/v71f4S+m2l4a mcMcjsbgpItwORbRy+xwCRqP2eVoJe/mN65scNPUPd1YzOxTjKu2WLYhEzJ6YL+2 qxQ0MFikGF6oCPvx1RL458LDKWi68nVr310HIbKc+YdohtpAl7fRz4Eu5HSorGlC Lh57uqDUCBJuERT6PUayJ8xS3pcwAQuj2fhKm0uBE3E0HfdhinZXt9DyKXWPZSvQ ea0dSMQnD8lwp2DpHXP7tyoVKFE/ltJQDqQgEtcK0Bd17QLOk9QTaiI4+qMgaQtS uhmaog== Received: from mail-pj1-f72.google.com (mail-pj1-f72.google.com [209.85.216.72]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4asxwwh217-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 02 Dec 2025 16:36:31 +0000 (GMT) Received: by mail-pj1-f72.google.com with SMTP id 98e67ed59e1d1-345b4f2a8e8so7974590a91.1 for ; Tue, 02 Dec 2025 08:36:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1764693391; x=1765298191; 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=lBrRMxsqKdSUAVkz5FQHuVSzqzwszXxIw9LahdnMclI=; b=kjZG7uiOogGQlk0jcKwf4h2uij1xO5twv1jicDZIHCeYQbeP9ssZz8mCQwkJ4X3NFD +gwKou2psH0DLfekpKSdw5lCePj1exC0BJli4WGC+MHH61MyZlI178fAYD1cvDVF/FsP ovsP2+VXg4SvE4gHasmurwaNWwWOSgH0Z3D7LUNEm6pb58CY1yV7BnP+XkQmHi1Ip5ul xJkT3gPWGIC8B0uyLX27PfM6Ca7Zz4VFKE1mJXE8wTfSe9yceyBXwGb08kdSRJ+c/9Yt kJcJiDAxxJ/XkuMfu3U3dQsmv9pH8pLM4KJtAyyfCb/rIXiuHhSGyHbXfE9SObO3fO6T a36A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764693391; x=1765298191; 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=lBrRMxsqKdSUAVkz5FQHuVSzqzwszXxIw9LahdnMclI=; b=hTagpEVUkQAAIpoTxqNexv5JOfPr04bBDQVhv14MLEsvJd2JVGR5wPJs3tUh2wCuap EIwW2VPSKWyBezNzu+m3j6r/tWf/UltlhOArvAGardmUYOMbn6ZRGAa634OfpJPRuZTg 9RYqlIpQlCzPBUIiUX1nF7pXRHAFaLNA2iZxcHpo4yuJmQFH8FUMt8QSumkI3LkWdyqK YApSE8Ei91OqnT2OQNmzJArDgqWgPANXqRJxhw60LvahaQ2l9UeXCXsDBKCWOqEKrcuo ua5l4gpoaDEHokgLiy4SiRjvvJBaaaFgvDEXqzwDLheX/RwNSWqYpdMTdCzMtd95/Okd HVZw== X-Forwarded-Encrypted: i=1; AJvYcCVD1DYoPPXdnl8KrG4FDcTGTS0VbyHYOQ5KmatXUDgAMIuWNyFxOt1wIIcayY6qYn2RQFi5k6qqXCuvXtQ=@vger.kernel.org X-Gm-Message-State: AOJu0YxRdZ1EwL5h8Bvi6N5Oq152McQCImxrl0/HF71FPmacfWND61HE VtNOg+RLGT6hpGD/ZhuXMqZk6dA1fdC67IisCv5+Ac3FqA4xFZT26RlqwGTzAN8cFS/2E4E/IXr UeV+tZJKw/4aDaSM2smyZeLx4uHgW/3cbhiIWY7ki57W2rSglusZ/x83M/nieGpHNVoxPwgb437 g= X-Gm-Gg: ASbGncuuwc3QwuRVnBgmvYzvSpr6YCcuXPMx93+qBjQXDs+9Cnhi3jds+LoqAUIJiJN 6yWB2a3K42nb+9fpfgnMUSvM4FhZtmUh93heEgsXpPSzDXerCZay9XmVYF3PAOMcZg/j3puOy6p IyT/laXkrHBdb5K0sASb1OlA5ObDSY9P5tNVWQLRS4CWBV+CVw0PP7o3lwahRrnm32uFVJPddx3 VT72yxzPj1ptYrsKlsSXPna1UhCbfe+MTWcns92YnYS1OhmGPXJhPppsJBu3Zri2xQcHBK46j0U NU+s4NG7Yl0zyWWFIKT1m4VF61u8CgNhRLXeB+Rtn2SkfGC8sKYl22bfbeji/WPuYcVscOjcXki S4/3OvOdsyCGfunJ5FStGKVDaQ+Ahw9TzyKOa92dO70Q= X-Received: by 2002:a05:6a20:e210:b0:342:f0cf:a248 with SMTP id adf61e73a8af0-3614ecbf142mr49459177637.23.1764693390493; Tue, 02 Dec 2025 08:36:30 -0800 (PST) X-Google-Smtp-Source: AGHT+IFY6zCyMmu616Er/EV1uwHO4Rbc5WrO+68UhTunSUWniVsEFXpJGSJOr8LpD+p05eQ+G8Otlw== X-Received: by 2002:a05:6a20:e210:b0:342:f0cf:a248 with SMTP id adf61e73a8af0-3614ecbf142mr49459133637.23.1764693389740; Tue, 02 Dec 2025 08:36:29 -0800 (PST) Received: from [10.216.21.13] ([202.46.23.19]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-7d15f080cf1sm17668205b3a.46.2025.12.02.08.36.26 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 02 Dec 2025 08:36:29 -0800 (PST) Message-ID: Date: Tue, 2 Dec 2025 22:06:24 +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.5.1 Subject: Re: [PATCH v10 1/3] firmware: qcom_scm: Add API to get waitqueue IRQ info Content-Language: en-US To: Mukesh Ojha Cc: Bjorn Andersson , Konrad Dybcio , linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, Unnathi Chalicheemala , Bartosz Golaszewski References: <20251130-multi_waitq_scm-v10-0-5a5f2f05a417@oss.qualcomm.com> <20251130-multi_waitq_scm-v10-1-5a5f2f05a417@oss.qualcomm.com> <20251202114332.wlc2vdd2phslndek@hu-mojha-hyd.qualcomm.com> From: Shivendra Pratap In-Reply-To: <20251202114332.wlc2vdd2phslndek@hu-mojha-hyd.qualcomm.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Authority-Analysis: v=2.4 cv=JbyxbEKV c=1 sm=1 tr=0 ts=692f158f cx=c_pps a=RP+M6JBNLl+fLTcSJhASfg==:117 a=j4ogTh8yFefVWWEFDRgCtg==:17 a=IkcTkHD0fZMA:10 a=wP3pNCr1ah4A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=vqJ_s0uZOpJGGF1HFZkA:9 a=QEXdDO2ut3YA:10 a=iS9zxrgQBfv6-_F4QbHw:22 X-Proofpoint-ORIG-GUID: 1N4qp-Vv4RMN2NGX7YLbIpw5YSkpCDgX X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjAyMDEzMiBTYWx0ZWRfXy4sJUaXOjGtV /tIn4aPmZZHT7VTYeXtaEwmb2Jbsk275pUnyXM+Sztpcf7n5oXJilFJQqEBzcjb5fZBW12nBT48 bhGhFLYAShRfwZyPgX/gDfw9UE3xJDOdH3R+DzH8cvqHTtJfW1NRkV3AHR7v495548XftKGAobl wnFT9+8zYAjJegZgJUd9YAJRzkd/BlLvk7RjrvFMDprnfwJ5Q6LOfBwVGzE1F+vfgO3bSetEqoC Lp7rZY54CdWEoowttEqojEz7xerqzFiSZKv/o23fvamHKvRiFXpxfc8tUTu8GZsdJNy9BdFNsek Bgodw6tyHRHVwJANVLVQBMXexHOAElxifvVxSPHeVL8Ls6mo0qr2D0uq/0vcv4f76HtGjyg7GDF CBoxFiY7fol0kcJxBXnbGhhqS8V9kQ== X-Proofpoint-GUID: 1N4qp-Vv4RMN2NGX7YLbIpw5YSkpCDgX X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-01_01,2025-11-27_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 phishscore=0 bulkscore=0 impostorscore=0 lowpriorityscore=0 clxscore=1015 suspectscore=0 adultscore=0 priorityscore=1501 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2512020132 On 12/2/2025 5:13 PM, Mukesh Ojha wrote: > On Sun, Nov 30, 2025 at 08:11:02PM +0530, Shivendra Pratap wrote: >> From: Unnathi Chalicheemala >> [SNIP..] >> >> diff --git a/drivers/firmware/qcom/qcom_scm.c b/drivers/firmware/qcom/qcom_scm.c >> index e777b7cb9b127944fe112f453cae9cbc40c06cae..79ab1707f71b0157835deaea6309f33016e3de8c 100644 >> --- a/drivers/firmware/qcom/qcom_scm.c >> +++ b/drivers/firmware/qcom/qcom_scm.c >> @@ -29,12 +29,18 @@ >> #include >> #include >> #include >> +#include > > At most places, where this header is used there is a line feed > before it, if the header before it is not from dt-bindings. Ack. > >> >> #include "qcom_scm.h" >> #include "qcom_tzmem.h" >> >> static u32 download_mode; >> >> +#define GIC_SPI_BASE 32 >> +#define GIC_MAX_SPI 1019 // SPIs in GICv3 spec range from 32..1019 >> +#define GIC_ESPI_BASE 4096 >> +#define GIC_MAX_ESPI 5119 // ESPIs in GICv3 spec range from 4096..5119 >> + >> struct qcom_scm { >> struct device *dev; >> struct clk *core_clk; >> @@ -2223,6 +2229,55 @@ bool qcom_scm_is_available(void) >> } >> EXPORT_SYMBOL_GPL(qcom_scm_is_available); >> >> +static int qcom_scm_fill_irq_fwspec_params(struct irq_fwspec *fwspec, u32 hwirq) >> +{ >> + if (hwirq >= GIC_SPI_BASE && hwirq <= GIC_MAX_SPI) { >> + fwspec->param[0] = GIC_SPI; >> + fwspec->param[1] = hwirq - GIC_SPI_BASE; >> + } else if (hwirq >= GIC_ESPI_BASE && hwirq <= GIC_MAX_ESPI) { >> + fwspec->param[0] = GIC_ESPI; >> + fwspec->param[1] = hwirq - GIC_ESPI_BASE; >> + } else { >> + WARN(1, "Unexpected hwirq: %d\n", hwirq); >> + return -ENXIO; >> + } > > line feed after } would make it look better.. Ack. > >> + fwspec->param[2] = IRQ_TYPE_EDGE_RISING; >> + fwspec->param_count = 3; >> + >> + return 0; >> +} >> + >> +static int qcom_scm_get_waitq_irq(struct qcom_scm *scm) >> +{ >> + struct device_node *parent_irq_node; > > after desc ? ok. > >> + struct qcom_scm_desc desc = { >> + .svc = QCOM_SCM_SVC_WAITQ, >> + .cmd = QCOM_SCM_WAITQ_GET_INFO, >> + .owner = ARM_SMCCC_OWNER_SIP >> + }; >> + struct irq_fwspec fwspec; >> + struct qcom_scm_res res; >> + u32 hwirq; >> + int ret; >> + >> + ret = qcom_scm_call_atomic(scm->dev, &desc, &res); >> + if (ret) >> + return ret; >> + >> + hwirq = res.result[1] & GENMASK(15, 0); >> + > > redundant line feed ? will remove. thanks. > >> + ret = qcom_scm_fill_irq_fwspec_params(&fwspec, hwirq); >> + if (ret) >> + return ret; > > Line feed needed here after return or } ? will add it. thanks, Shivendra