From nobody Sun Oct 5 18:12:39 2025 Received: from mail-wm1-f42.google.com (mail-wm1-f42.google.com [209.85.128.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0FD0729B8CC for ; Thu, 31 Jul 2025 07:16:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753946168; cv=none; b=PFrf2wXT52tGM24EoRqu1BxF+Zed9DN7vGLCRq1UtWjfD350snYMgYwLSYmkoyCOqerRE5qXzxMk+eIiylSMczYZ8FdGyThS7Y+6bI/CP5VTLbqsoSqMklWlrq66hqule9Pa0ql8GrovEEyIAU8NdaRPKs53wcCFtLBjmtxwK+k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753946168; c=relaxed/simple; bh=FdLKYyZbfYSsvJ/xHFdBnLCPtWsxGyr4mVu3tlfgIuY=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=kmXg/toHNf4FIcmfHHtPlTSbxH17c5VsyI8dwmQEIayFWKa3TZP98sdwi/wtJPBjjniIcMmy9l1OWbnnRGAOtyz8jLwgSv4x7BXp10Z8MTaUqsnTYwJV/JV5noTLwU2SWyqpCWTIWP707cydiFtrQxSJOa4JBPtq4hfyGLZIzlg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=prF+m1oB; arc=none smtp.client-ip=209.85.128.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="prF+m1oB" Received: by mail-wm1-f42.google.com with SMTP id 5b1f17b1804b1-455f151fe61so726355e9.0 for ; Thu, 31 Jul 2025 00:16:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1753946163; x=1754550963; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=yq1vQi8nX5SzZwnMjuxxgoo742N3v7FflaYZunf3Ev0=; b=prF+m1oBCUR7FbZ3528T2VoFy1MjTmXvGFpNsmf0w80YjuoPrQrXzXFuSj+VuxLHTN RFwlYfMOQtgMBT1M5nfEq2/intI2bwEGLjNwuPxE/p0c1JkyR6WwzmefTnkKAlDT2C2A 3gPQLyceU93tNt9dZOTEtxc2XhzPwKS8Ipzq5lC8zKCeL+yT6QwU7W5a/95oF/EFDQvJ qvbswB1rS1Fil7PTEQ/rAY9ry20XZ2hbZuE/Qk8npjNCNmH9bF4UZmfskO5UZENP43md BQMxxfDlf/P+4/exT2sI3Ph05jVFSdWenWLJEIbDC1/+ZATcF6RGyg7fgFAhc87llKno eH+g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1753946163; x=1754550963; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=yq1vQi8nX5SzZwnMjuxxgoo742N3v7FflaYZunf3Ev0=; b=PvnIJe+vkwnYityiUeLXrC6SGOnoT0TXhNVg2fqYCzWvJFG4ZYupG4dSDZz5oNCBp0 Sx3OVFBtqld5uydogAD1w5S+sx6nvVLKjqJCK7wHRfK/yVID+Y2KSGKOR/F1AAruo7Up wL+TenbRAbcXw0nNEOoPuBwpzcZmWDwjTpVue8cR79f9WfMWxrYgE0U+xWzDpt+TsjMd btWCnK2SbdUwMxu7ph1ZOoc89sjPCnsQZ8hrTfjyEW4MmWA5dDKjJCQ/FKKaJ4z/h12o mcBbqP1LXwc4btUFh2u/rBbvxOI7T/XRjxzzMvoIc0Aq0oMcZYsN3UCwT9RClcf8g1So NxbQ== X-Forwarded-Encrypted: i=1; AJvYcCWe339qwsrRfQatFHmuCTaOHNpj61XBlTCwWL5yXJWDZvAuhjiQBOyTpZFR5+YXUpX5AdlVQsxftxt6otw=@vger.kernel.org X-Gm-Message-State: AOJu0YypRbd3UCZdhg3Kl7pG6x6TBOHXHNcR2T00rrIG4BrkNFE9rQuG /JFnVS/G2u4Xn9z6Yx61E49mu/foGTOxH/5ipSajEVgUeX4gUh9vzDKjYeTMb7Z05fg= X-Gm-Gg: ASbGncvrq8arcr7X/1tISoIywf+sTwtDIVb+XDlF8/l9k1PCCSHMbdpKTTQ1wemggDL MTz94F7SHiJ8G674L0yqfu2sKic40t1xM5k7gi5QXb+ilrTeAni28KHt3vAim4QwH5T2YeoPNm6 IK9S+jbn24Ttt4L5Q3vpIvEH9UF7xBHR6YZ94U9NCTYt3n/BkqDujkevnL8IeXbj6PMIhAKSnDr 4eTnPCeylMb3GIpXpj+JHPGpph9L95Lc8aKBihK2mbE3x6OUV556e+MqTShtpppsiPjt4U1O/NU 1pVkdxP1GE7Sbc88IOVnQy7Dnf5dMlM4ezAZdECsb383HktE8LsEfKWngd6SBInDiVUoL06uTtF skn5OABAge+/Ik/RKBo/uJB1BQSZpc8kFz/7reas= X-Google-Smtp-Source: AGHT+IHQhAZeGxTaM0TWnQXkHQNV+I41/syH2eY4dl2l9rL0rb7h9ghYg+7ZAnwmFoAmWpdqhgCMgg== X-Received: by 2002:a05:600c:4f50:b0:456:285b:db25 with SMTP id 5b1f17b1804b1-4589ef53d2amr5445115e9.6.1753946163353; Thu, 31 Jul 2025 00:16:03 -0700 (PDT) Received: from [127.0.1.1] ([178.197.218.223]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b79c47ae8esm1353483f8f.61.2025.07.31.00.16.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 31 Jul 2025 00:16:02 -0700 (PDT) From: Krzysztof Kozlowski Date: Thu, 31 Jul 2025 09:15:52 +0200 Subject: [PATCH v2 1/3] dt-bindings: ufs: qcom: Split common part to qcom,ufs-common.yaml Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250731-dt-bindings-ufs-qcom-v2-1-53bb634bf95a@linaro.org> References: <20250731-dt-bindings-ufs-qcom-v2-0-53bb634bf95a@linaro.org> In-Reply-To: <20250731-dt-bindings-ufs-qcom-v2-0-53bb634bf95a@linaro.org> To: Alim Akhtar , Avri Altman , Bart Van Assche , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Manivannan Sadhasivam , Bjorn Andersson , Andy Gross Cc: linux-arm-msm@vger.kernel.org, linux-scsi@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Ram Kumar Dwivedi , Krzysztof Kozlowski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=3812; i=krzysztof.kozlowski@linaro.org; h=from:subject:message-id; bh=FdLKYyZbfYSsvJ/xHFdBnLCPtWsxGyr4mVu3tlfgIuY=; b=owEBbQKS/ZANAwAKAcE3ZuaGi4PXAcsmYgBoixgtpbyamzGeGV64j4PYAWySsRXcPHf4pTMNi cys4OI/tmuJAjMEAAEKAB0WIQTd0mIoPREbIztuuKjBN2bmhouD1wUCaIsYLQAKCRDBN2bmhouD 102CD/0epYpzEUYS/+1bNoJeHulic14CNh2qachhO8i2BNMgc5gre4s0MvjTQ/ANjN+Job2FpK8 2sOtmlHu77GDoYOjtTkwEhggduI4A/RWFn4mvKtJtL2bffTsz9XL8xrd2lRLfIJQjQ7u+wkLRq2 6dQO6mhkN/tSW2HrFSOMaD1gm7hSmUK9qRurATvAp/Owa2PeTvWnzlxl+w5FcKJD2aKJ8za9QOf UZVdYAFBGclnZg/XjVRWe45cGS7V35aLS04MHiDzwADukzAxPZa30Rs7eZhGWZmh0qCki8/hzOT E+sH43NgmNR0rg5lHz/SxpEZA6CRIe8fd9xoLiYOABCraCj+xYQk9yG4zLo8iRmX+a2ReHBE1uS JOL/mY/1gCbb9TYOWUo8DGOawOMiZ3bQmWbhjfWQ2XtqHCpnyMtk1aKREysPCZJbgMma9OatU50 ZX+Zr57vSNIc/NKCHCqJjzgGSqXROP8v/AWcmKGfTI5FIMw9ThluqLCu7+Lyr+sw97DObOzokcp aNhZ5152zhg0Riep1mAkRm02ycGr5yw/xO0gP/SiF8D4SxgjJjLQXW8ad7QfYW6nzCE+53UDXjh EozzxUmPEe/qNHzYGIKnHKRjNnSvNu2OsXVdkFpE4mBdGvZLozetI8/5syKzgXcGyVg28Cu8GVw B2uz7y9OQCmWhDw== X-Developer-Key: i=krzysztof.kozlowski@linaro.org; a=openpgp; fpr=9BD07E0E0C51F8D59677B7541B93437D3B41629B The binding for Qualcomm SoC UFS controllers grew and it will grow further. It already includes several conditionals, partially for difference in handling encryption block (ICE, either as phandle or as IO address space) but it will further grow for MCQ. Prepare for splitting this one big binding into several ones for common group of devices by defining common part for all Qualcomm UFS schemas. This only moves code, no functional impact expected. Signed-off-by: Krzysztof Kozlowski Reviewed-by: Rob Herring (Arm) --- .../devicetree/bindings/ufs/qcom,ufs-common.yaml | 67 ++++++++++++++++++= ++++ .../devicetree/bindings/ufs/qcom,ufs.yaml | 53 +---------------- 2 files changed, 68 insertions(+), 52 deletions(-) diff --git a/Documentation/devicetree/bindings/ufs/qcom,ufs-common.yaml b/D= ocumentation/devicetree/bindings/ufs/qcom,ufs-common.yaml new file mode 100644 index 0000000000000000000000000000000000000000..962dffcd28b44b3489be5615c75= e7270a0c45dc4 --- /dev/null +++ b/Documentation/devicetree/bindings/ufs/qcom,ufs-common.yaml @@ -0,0 +1,67 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/ufs/qcom,ufs-common.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm Universal Flash Storage (UFS) Controller Common Properties + +maintainers: + - Bjorn Andersson + +properties: + clocks: + minItems: 7 + maxItems: 9 + + clock-names: + minItems: 7 + maxItems: 9 + + dma-coherent: true + + interconnects: + minItems: 2 + maxItems: 2 + + interconnect-names: + items: + - const: ufs-ddr + - const: cpu-ufs + + iommus: + minItems: 1 + maxItems: 2 + + phys: + maxItems: 1 + + phy-names: + items: + - const: ufsphy + + power-domains: + maxItems: 1 + + required-opps: + maxItems: 1 + + resets: + maxItems: 1 + + '#reset-cells': + const: 1 + + reset-names: + items: + - const: rst + + reset-gpios: + maxItems: 1 + description: + GPIO connected to the RESET pin of the UFS memory device. + +allOf: + - $ref: ufs-common.yaml + +additionalProperties: true diff --git a/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml b/Document= ation/devicetree/bindings/ufs/qcom,ufs.yaml index 6c6043d9809e1d6bf489153ab0aea5186d3563cc..fc0f7b8d1cd1c4a2168f29cffcc= 0c2ff660424df 100644 --- a/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml +++ b/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml @@ -47,39 +47,6 @@ properties: - const: qcom,ufshc - const: jedec,ufs-2.0 =20 - clocks: - minItems: 7 - maxItems: 9 - - clock-names: - minItems: 7 - maxItems: 9 - - dma-coherent: true - - interconnects: - minItems: 2 - maxItems: 2 - - interconnect-names: - items: - - const: ufs-ddr - - const: cpu-ufs - - iommus: - minItems: 1 - maxItems: 2 - - phys: - maxItems: 1 - - phy-names: - items: - - const: ufsphy - - power-domains: - maxItems: 1 - qcom,ice: $ref: /schemas/types.yaml#/definitions/phandle description: phandle to the Inline Crypto Engine node @@ -93,30 +60,12 @@ properties: - const: std - const: ice =20 - required-opps: - maxItems: 1 - - resets: - maxItems: 1 - - '#reset-cells': - const: 1 - - reset-names: - items: - - const: rst - - reset-gpios: - maxItems: 1 - description: - GPIO connected to the RESET pin of the UFS memory device. - required: - compatible - reg =20 allOf: - - $ref: ufs-common.yaml + - $ref: qcom,ufs-common.yaml =20 - if: properties: --=20 2.48.1 From nobody Sun Oct 5 18:12:39 2025 Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id ACF8329CB5A for ; Thu, 31 Jul 2025 07:16:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753946169; cv=none; b=f0iuX9RLyTlc3eUQOS+bdDUBpfIQ/3VHzuJ5+O8DHE92m8GKeN1G/quO/PHZehmPmHzmfAwCcQNh3sndUOXjitVvbdb0nlqaZbhhyxsAXGKgCjjmsAa4s87NRcZkIjbi6MQrHGr2U9oW78jBcU6fUzKd9AOWD7SiP606gfP1jeA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753946169; c=relaxed/simple; bh=DWATRGpmVCdRKiRd0lG2PXl5S27CBC84xbHnEBOCUJI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=T18noPvvxL0mwLMQuGjEzXqypxoqdXzZkUR4cvMxjZeKlusCfgNqdAUHAl0KrPObU8AStT+VVaxMY483RqcWTgIEZTxpOGmJFZmaIkDQmTAhvqJ+vkE5eIq0fnLQ/mNXaSC/zF6wVc1BMRm6ZV9Xx0F8uWRSfcLnEaDgFj8tcdI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=j/WPactR; arc=none smtp.client-ip=209.85.128.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="j/WPactR" Received: by mail-wm1-f43.google.com with SMTP id 5b1f17b1804b1-455f151fe61so726385e9.0 for ; Thu, 31 Jul 2025 00:16:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1753946165; x=1754550965; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=mH/blYqmEVgyHVpevSf4yHqXXkIVq8klI3qVIPND2+w=; b=j/WPactRLb4BE6GffBPIT7qcELm8VeFmNt2LINgPaQXwf1tmExt21u0FV+X6+h+qmX Z4tMxPdwDtijbBJpnxfyz7WC69rdX0MrxPQqHVJpo5Zc6RBD570/YyURb2x+VMLyZwKm V4TQSkUl71Mw4N2OwK08SwVrSXKf7Sqy8ud1g6eBsPUkdYGe0MqjEov4uaOmYW5f8m5M RVZvRKXn/MpCf9rTv7I4yjxcw4b7OABK7sJ//D/oGEwR3WREq6SAexB2VVbqVrv4hWZw NFabRptVMgYUH72cMmFRLYlKYm/7lFfSxaEIhlaBOo9m3NAVuGyBODFhSFK6g1WJ0Ud8 S1KA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1753946165; x=1754550965; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=mH/blYqmEVgyHVpevSf4yHqXXkIVq8klI3qVIPND2+w=; b=liI/Kjlrco2Ig/7UWtjoCp7TLJgk8ud6/AUTf1nOyvj8YV3QCeogohiucFoe/tPjkh NQTNeDpoNW8eqUlm6nwbZHcr+Tc2m1xqVCfasTXxBKg3AeJPaZDUpXzp3ScdFQuHR+Wt CH3P8hn9NRaqeV+ddLF/eGG0a014w09f8gDoxbEn3qrUFw3S0iiyOWVXiIaCAU2sTIuc Bzjv7j8pcNWDA0zRPh7CY0tLe7jhpMauiEZQLtY1hKFmfrzmBorPh6c9eSf4hS2mKMi4 L4Zc3Q2iqEBl1VByCvrrnry/eKxQt4vJnPcFkPbsqNeQDsDe/OcHbAaQAXPmWmTKFMGb 75RA== X-Forwarded-Encrypted: i=1; AJvYcCVUsLpmfevPnU4hJe0s1oZl4xId3kZdA4s1c4L6uz6wLbw65a7y7udM/7+kZ7qNcsYYr8KgtY24IOJAF/0=@vger.kernel.org X-Gm-Message-State: AOJu0Yz5JrcmC0CtpnHoZhWmor4w7Y41D2vcG7ypZ4gfLJ9h6qE9z6eu 1QHW5+yZRJRw1iotxKC4LAc+hJ8Z6jI7aO0Iy2i1yXehfQj5A2SjSTo3K2o7+rjj6YI= X-Gm-Gg: ASbGncuDdmzoEO7XOH74TUhQr1HRUNyYQF5eQq0JJO8+r6XaPDjW/Dd4whsfZIXj7+G DYB9bITQqx5xDO6kk/imXQtiqEf24TRuk9RaSc01utbEntdUryeHkZYAEPmsPr02UDt5/EY2IhL lbrx4HLsO7aaAiecz5BVnAX+/fhui/V1LWz1k5oO8iTv0KWZnly7EZPdVrtVWtAsjGb6kP14Kvo LT7GVpxMDiCIHA3RF24IjXLstYAhwpIN/7sBxhDyiH1n33rNXmWKpnw3STUgQurKsAzzMfol13C DDYD/hmZNR/URMWO9WZ5zFff64eZORbhSlBRO1Umcq0+Iry5yRd+C2AQw+Qxk1J7wyJfI50jW8O hZ8u58NzcamZtm4jOAn3B9Titf4feOIUoQzGHG24= X-Google-Smtp-Source: AGHT+IFLPqxILWm2ARius50epbZtelxoWQTY8esShSoLqo0Jl6xi8DHVVVPLLc3/Y9ZZUcG3AocAaw== X-Received: by 2002:a05:600c:3b95:b0:451:df07:f41e with SMTP id 5b1f17b1804b1-45892d02123mr22028235e9.1.1753946164719; Thu, 31 Jul 2025 00:16:04 -0700 (PDT) Received: from [127.0.1.1] ([178.197.218.223]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b79c47ae8esm1353483f8f.61.2025.07.31.00.16.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 31 Jul 2025 00:16:04 -0700 (PDT) From: Krzysztof Kozlowski Date: Thu, 31 Jul 2025 09:15:53 +0200 Subject: [PATCH v2 2/3] dt-bindings: ufs: qcom: Split SC7180 and similar Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250731-dt-bindings-ufs-qcom-v2-2-53bb634bf95a@linaro.org> References: <20250731-dt-bindings-ufs-qcom-v2-0-53bb634bf95a@linaro.org> In-Reply-To: <20250731-dt-bindings-ufs-qcom-v2-0-53bb634bf95a@linaro.org> To: Alim Akhtar , Avri Altman , Bart Van Assche , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Manivannan Sadhasivam , Bjorn Andersson , Andy Gross Cc: linux-arm-msm@vger.kernel.org, linux-scsi@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Ram Kumar Dwivedi , Krzysztof Kozlowski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=12129; i=krzysztof.kozlowski@linaro.org; h=from:subject:message-id; bh=DWATRGpmVCdRKiRd0lG2PXl5S27CBC84xbHnEBOCUJI=; b=owEBbQKS/ZANAwAKAcE3ZuaGi4PXAcsmYgBoixgu97oO+PBeE20WiIRjTvGkvJNTRNYOVNVRP YS60uP9gViJAjMEAAEKAB0WIQTd0mIoPREbIztuuKjBN2bmhouD1wUCaIsYLgAKCRDBN2bmhouD 1zlKD/0e1yIMtTzmLbB5Xx5zoGTPaO6CjklFxKHU8NVPewem18TmxopSTVqsalXKrwMg5vKMij3 2gqhsYF4LVYt3Fc8LBxpoaDXOO4j0cMiwLBCbqS5w6Lad7T3UdlkUQFQ8+Z/ixiWWEZ9+HEiPo3 ThkD542oyLs/ZUMhAEwsYtztqYWWbaeTv+eGyOP9xHZBtmLy7p1DqEZi5wakws5HEmGMhsCxqiV OeQgXnz0Anw/8sygRu+b1zkhgmnoAbn21sG4ptfWV6o0tyIScpvcVN1EYvFAkvJTp5lRkGoUabH yNg1Dp2dOa1IaRhoUdY7YbmEZx7FUT5JAgQhHpXNSW5OIJGtq+jo8JJ2E7WZJPtI+3pAoBFS/O5 xcIRUlmEY2OqKTvu2t/yeLxDOJFUQRQ9+auk00tgC1AVMXFRbqTMKDpBBpA055TPUfTuuIowxVf KrBkKABIfMLRBPjmaRt9XcKmMQxNE50wyxkWum0Oo2cyzE1GKgK+2U0Ijce4CGI4QP4uyONR8OW CFYW36n9WbRDkURBKr+BUmYMRMJd6RQUq8KicCAFBEehY4TRo4YEimT8Uh/g6xukbmy/UA9hDK2 /9mtSvCD8n4VGboDdZUPfdpiorlNND119tj3X0c2yxjGuZEF5cdSOqaRizbRn3l9Oiq6WFSU7qg IqwLfl9yW136oAw== X-Developer-Key: i=krzysztof.kozlowski@linaro.org; a=openpgp; fpr=9BD07E0E0C51F8D59677B7541B93437D3B41629B The binding for Qualcomm SoC UFS controllers grew and it will grow further. Split SC7180 and several other devices which: 1. Do not reference ICE as IO address space, but as a phandle, 2. Have same order of clocks (SC7180 has one clock less than SC7280 and other variants in split binding). The split allows easier review and maintenance of the binding. Signed-off-by: Krzysztof Kozlowski Reviewed-by: Rob Herring (Arm) --- .../devicetree/bindings/ufs/qcom,sc7180-ufshc.yaml | 167 +++++++++++++++++= ++++ .../devicetree/bindings/ufs/qcom,ufs.yaml | 104 +++++-------- 2 files changed, 202 insertions(+), 69 deletions(-) diff --git a/Documentation/devicetree/bindings/ufs/qcom,sc7180-ufshc.yaml b= /Documentation/devicetree/bindings/ufs/qcom,sc7180-ufshc.yaml new file mode 100644 index 0000000000000000000000000000000000000000..d94ef4e6b85a404c0a1f3c6cfcc= 10d3da857ce98 --- /dev/null +++ b/Documentation/devicetree/bindings/ufs/qcom,sc7180-ufshc.yaml @@ -0,0 +1,167 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/ufs/qcom,sc7180-ufshc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm SC7180 and Other SoCs UFS Controllers + +maintainers: + - Bjorn Andersson + +# Select only our matches, not all jedec,ufs-2.0 +select: + properties: + compatible: + contains: + enum: + - qcom,msm8998-ufshc + - qcom,qcs8300-ufshc + - qcom,sa8775p-ufshc + - qcom,sc7180-ufshc + - qcom,sc7280-ufshc + - qcom,sc8180x-ufshc + - qcom,sc8280xp-ufshc + - qcom,sm8250-ufshc + - qcom,sm8350-ufshc + - qcom,sm8450-ufshc + - qcom,sm8550-ufshc + required: + - compatible + +properties: + compatible: + items: + - enum: + - qcom,msm8998-ufshc + - qcom,qcs8300-ufshc + - qcom,sa8775p-ufshc + - qcom,sc7180-ufshc + - qcom,sc7280-ufshc + - qcom,sc8180x-ufshc + - qcom,sc8280xp-ufshc + - qcom,sm8250-ufshc + - qcom,sm8350-ufshc + - qcom,sm8450-ufshc + - qcom,sm8550-ufshc + - const: qcom,ufshc + - const: jedec,ufs-2.0 + + reg: + maxItems: 1 + + reg-names: + items: + - const: std + + clocks: + minItems: 7 + maxItems: 8 + + clock-names: + minItems: 7 + items: + - const: core_clk + - const: bus_aggr_clk + - const: iface_clk + - const: core_clk_unipro + - const: ref_clk + - const: tx_lane0_sync_clk + - const: rx_lane0_sync_clk + - const: rx_lane1_sync_clk + + qcom,ice: + $ref: /schemas/types.yaml#/definitions/phandle + description: phandle to the Inline Crypto Engine node + +required: + - compatible + - reg + +allOf: + - $ref: qcom,ufs-common.yaml + + - if: + properties: + compatible: + contains: + enum: + - qcom,sc7180-ufshc + then: + properties: + clocks: + maxItems: 7 + clock-names: + maxItems: 7 + else: + properties: + clocks: + minItems: 8 + clock-names: + minItems: 8 + +unevaluatedProperties: false + +examples: + - | + #include + #include + #include + #include + #include + + soc { + #address-cells =3D <2>; + #size-cells =3D <2>; + + ufs@1d84000 { + compatible =3D "qcom,sm8450-ufshc", "qcom,ufshc", + "jedec,ufs-2.0"; + reg =3D <0x0 0x01d84000 0x0 0x3000>; + interrupts =3D ; + phys =3D <&ufs_mem_phy_lanes>; + phy-names =3D "ufsphy"; + lanes-per-direction =3D <2>; + #reset-cells =3D <1>; + resets =3D <&gcc GCC_UFS_PHY_BCR>; + reset-names =3D "rst"; + reset-gpios =3D <&tlmm 210 GPIO_ACTIVE_LOW>; + + vcc-supply =3D <&vreg_l7b_2p5>; + vcc-max-microamp =3D <1100000>; + vccq-supply =3D <&vreg_l9b_1p2>; + vccq-max-microamp =3D <1200000>; + + power-domains =3D <&gcc UFS_PHY_GDSC>; + iommus =3D <&apps_smmu 0xe0 0x0>; + interconnects =3D <&aggre1_noc MASTER_UFS_MEM &mc_virt SLAVE_E= BI1>, + <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_= UFS_MEM_CFG>; + interconnect-names =3D "ufs-ddr", "cpu-ufs"; + + clocks =3D <&gcc GCC_UFS_PHY_AXI_CLK>, + <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>, + <&gcc GCC_UFS_PHY_AHB_CLK>, + <&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>, + <&rpmhcc RPMH_CXO_CLK>, + <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>, + <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>, + <&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>; + clock-names =3D "core_clk", + "bus_aggr_clk", + "iface_clk", + "core_clk_unipro", + "ref_clk", + "tx_lane0_sync_clk", + "rx_lane0_sync_clk", + "rx_lane1_sync_clk"; + freq-table-hz =3D <75000000 300000000>, + <0 0>, + <0 0>, + <75000000 300000000>, + <75000000 300000000>, + <0 0>, + <0 0>, + <0 0>; + qcom,ice =3D <&ice>; + }; + }; diff --git a/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml b/Document= ation/devicetree/bindings/ufs/qcom,ufs.yaml index fc0f7b8d1cd1c4a2168f29cffcc0c2ff660424df..191b88120d139a47632e3dce3d3= f3a37d7a55c72 100644 --- a/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml +++ b/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml @@ -15,7 +15,17 @@ select: properties: compatible: contains: - const: qcom,ufshc + enum: + - qcom,msm8994-ufshc + - qcom,msm8996-ufshc + - qcom,qcs615-ufshc + - qcom,sdm845-ufshc + - qcom,sm6115-ufshc + - qcom,sm6125-ufshc + - qcom,sm6350-ufshc + - qcom,sm8150-ufshc + - qcom,sm8650-ufshc + - qcom,sm8750-ufshc required: - compatible =20 @@ -25,23 +35,12 @@ properties: - enum: - qcom,msm8994-ufshc - qcom,msm8996-ufshc - - qcom,msm8998-ufshc - qcom,qcs615-ufshc - - qcom,qcs8300-ufshc - - qcom,sa8775p-ufshc - - qcom,sc7180-ufshc - - qcom,sc7280-ufshc - - qcom,sc8180x-ufshc - - qcom,sc8280xp-ufshc - qcom,sdm845-ufshc - qcom,sm6115-ufshc - qcom,sm6125-ufshc - qcom,sm6350-ufshc - qcom,sm8150-ufshc - - qcom,sm8250-ufshc - - qcom,sm8350-ufshc - - qcom,sm8450-ufshc - - qcom,sm8550-ufshc - qcom,sm8650-ufshc - qcom,sm8750-ufshc - const: qcom,ufshc @@ -72,41 +71,6 @@ allOf: compatible: contains: enum: - - qcom,sc7180-ufshc - then: - properties: - clocks: - minItems: 7 - maxItems: 7 - clock-names: - items: - - const: core_clk - - const: bus_aggr_clk - - const: iface_clk - - const: core_clk_unipro - - const: ref_clk - - const: tx_lane0_sync_clk - - const: rx_lane0_sync_clk - reg: - maxItems: 1 - reg-names: - maxItems: 1 - - - if: - properties: - compatible: - contains: - enum: - - qcom,msm8998-ufshc - - qcom,qcs8300-ufshc - - qcom,sa8775p-ufshc - - qcom,sc7280-ufshc - - qcom,sc8180x-ufshc - - qcom,sc8280xp-ufshc - - qcom,sm8250-ufshc - - qcom,sm8350-ufshc - - qcom,sm8450-ufshc - - qcom,sm8550-ufshc - qcom,sm8650-ufshc - qcom,sm8750-ufshc then: @@ -246,10 +210,10 @@ unevaluatedProperties: false =20 examples: - | - #include + #include #include #include - #include + #include #include =20 soc { @@ -257,9 +221,12 @@ examples: #size-cells =3D <2>; =20 ufs@1d84000 { - compatible =3D "qcom,sm8450-ufshc", "qcom,ufshc", + compatible =3D "qcom,sm8150-ufshc", "qcom,ufshc", "jedec,ufs-2.0"; - reg =3D <0 0x01d84000 0 0x3000>; + reg =3D <0x0 0x01d84000 0x0 0x2500>, + <0x0 0x01d90000 0x0 0x8000>; + reg-names =3D "std", "ice"; + interrupts =3D ; phys =3D <&ufs_mem_phy_lanes>; phy-names =3D "ufsphy"; @@ -275,19 +242,8 @@ examples: vccq-max-microamp =3D <1200000>; =20 power-domains =3D <&gcc UFS_PHY_GDSC>; - iommus =3D <&apps_smmu 0xe0 0x0>; - interconnects =3D <&aggre1_noc MASTER_UFS_MEM &mc_virt SLAVE_E= BI1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_= UFS_MEM_CFG>; - interconnect-names =3D "ufs-ddr", "cpu-ufs"; + iommus =3D <&apps_smmu 0x300 0>; =20 - clock-names =3D "core_clk", - "bus_aggr_clk", - "iface_clk", - "core_clk_unipro", - "ref_clk", - "tx_lane0_sync_clk", - "rx_lane0_sync_clk", - "rx_lane1_sync_clk"; clocks =3D <&gcc GCC_UFS_PHY_AXI_CLK>, <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>, <&gcc GCC_UFS_PHY_AHB_CLK>, @@ -295,15 +251,25 @@ examples: <&rpmhcc RPMH_CXO_CLK>, <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>, <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>, - <&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>; - freq-table-hz =3D <75000000 300000000>, + <&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>, + <&gcc GCC_UFS_PHY_ICE_CORE_CLK>; + clock-names =3D "core_clk", + "bus_aggr_clk", + "iface_clk", + "core_clk_unipro", + "ref_clk", + "tx_lane0_sync_clk", + "rx_lane0_sync_clk", + "rx_lane1_sync_clk", + "ice_core_clk"; + freq-table-hz =3D <37500000 300000000>, <0 0>, <0 0>, - <75000000 300000000>, - <75000000 300000000>, + <37500000 300000000>, <0 0>, <0 0>, - <0 0>; - qcom,ice =3D <&ice>; + <0 0>, + <0 0>, + <0 300000000>; }; }; --=20 2.48.1 From nobody Sun Oct 5 18:12:39 2025 Received: from mail-wm1-f50.google.com (mail-wm1-f50.google.com [209.85.128.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 50E8029E0EE for ; Thu, 31 Jul 2025 07:16:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753946170; cv=none; b=g4u4MOl9pwE1ehqrj+n3DlHxrfjy27vx4tXB7KYf3ZJgt/Q59qt5/ah6ghLMnkAjMKSpGULKalecKVO0tcEn1ucaIJYlw/lNoO48VkXR+Rr/+NGYd8L6c1am9pB0TLRRZHj0YD+uFbgnMikgrok+1xUJLOGViFU0DnDaBm8oq5w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753946170; c=relaxed/simple; bh=m4Q58xqf9/x4E0jlUz4rpnXUwO4kR+noNYCXUYqKHk0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=U7UthrWpX5bmfNW0TmaAcgpwyXNIN4lUtaSiODZ1xEB864booI6UNl/+DWO8bp9M1f5qtvnC38lPMk3HmmWc4dANN6SouCfyens526EHaAauRrMzOaDBFYBeOHXhdV9FvK5U2W+L0Vt8AXLmjltVk1Az1bHWyzA6fk8Hf6ao1qg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=INqFFHFB; arc=none smtp.client-ip=209.85.128.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="INqFFHFB" Received: by mail-wm1-f50.google.com with SMTP id 5b1f17b1804b1-456107181f8so1058995e9.2 for ; Thu, 31 Jul 2025 00:16:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1753946166; x=1754550966; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=Th90s93dptO85T/mQtVXLdgDB41QrPyKFC7Dy2GHecI=; b=INqFFHFBgGxqvDQGTYrLbcMoqvtZSBLAWdmO5+1xV0KU5R68FLygPmaUNnNvAXzHGV A5JRNxEE0QFDqYj+jUeQNDe47EL+Xzpx0Q89s6As0WKcv/NTw7xufkvuhZRCEF3X1OB5 xvyXJi41XiayikkN7PSOLnOCG3bgmSPKsS29sOsoWog67J4arYYc3kHFvqkG2Qays1ve v90XMJjOFRjz9aPB4j2m18MHvKzlywu2rXnTcaIjETRO6KmCMhCoikbtSmVhGbRQzrpN UMApBRpj4y9Uh2NBMlnzU02Ufe518JHrc43X6lRgVvKXB6l3QZXaw+GHQtSQRymVF4yO bnDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1753946166; x=1754550966; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Th90s93dptO85T/mQtVXLdgDB41QrPyKFC7Dy2GHecI=; b=DbJCMTO6gulS74urOk1UXcLT3PsHPPV/HytDHbTooi4eczCZI7EdLCbdFojawkmNjg vEEh/OhD9JYlR9j3JnwItUTt1MM1Eci4RsD0L9Ac8Z1yY31jNCpu0PdIjCmGkGjYft72 N4KZmK2p26gfSGiQwz1PCHDFfAzyEfuziMfbHlGjQJ/w5oFy7VKEpEubnXs7LfdCKkMG l9Y5lGNWOr3z3DA++iivTJSQ/YD1b/qg8c95qtztw70W24gASn8YeDKqaKN9TPL1eYOh lPXmCKCGhR5Z3B40KC7dX65Mucp2SnZyf3HKIPeRwDbra2ZSuZ7yNblYGqNTXqynzvFj V0Dg== X-Forwarded-Encrypted: i=1; AJvYcCXiuN/wMyoTMRSR1oRi1sz7s5xUvCJd7av452nkKVVytAHryKCWQKBxi2TyZ0d19k5c9R0J/O3QhXlrf6A=@vger.kernel.org X-Gm-Message-State: AOJu0Yzqmle8GuhI9A8MumJtyUWAkZWgVfFWni/4YL91o+nL2TjxHQ0a ffAv9peqB43cQcn3uAb+eKuqW0AMDplvtqaVA2KqTjO6OBkB1H/wMOVp7TTKlIWruio= X-Gm-Gg: ASbGncssGdSDnMvDN9Awd2HV69gpln31mjIaGsVbabIJttc9Grl+2/VcxcvDnP/O+96 O3p6gwXL6i0GbAZd8aOAGdM6UTgrF/Oknl1GNaXG1lKSnC8QfvhfiQ/hwX4bH5Nm4K2HZYtIatq TzGzwLIFJuBmb/1RgIzTJKddCl0+/b6dymJwf0N5Fhj0dknqu0UvEPWpblVFR1+HXXAR8NsZYND v3vpfm1M82jQdxgNcyBtoxT7bKuH2LnrhAO0tgQE7kS2iI3fUVp2BXBfw+DWMIAAFE5zCGBZEHX 0i24VYqUmnKSzZsVSeGLJNzG452TF5AiwsyXJVlTl11V3IuLQTg88efAP06lab2ExhzN25ERAtA Znu9fpMKC8snhOu2IGkDnsVuwwxkQxz9Z5TaRqao= X-Google-Smtp-Source: AGHT+IFHoBRIn9mfQGbL5mI3ID9nYuUwh9NPEx0zHR3qVguO0qoABtm0LpJfgXYr4o9mY6Gylf5cfA== X-Received: by 2002:a05:6000:2383:b0:3b7:8b43:ac7d with SMTP id ffacd0b85a97d-3b794fc0779mr1676031f8f.3.1753946166381; Thu, 31 Jul 2025 00:16:06 -0700 (PDT) Received: from [127.0.1.1] ([178.197.218.223]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b79c47ae8esm1353483f8f.61.2025.07.31.00.16.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 31 Jul 2025 00:16:05 -0700 (PDT) From: Krzysztof Kozlowski Date: Thu, 31 Jul 2025 09:15:54 +0200 Subject: [PATCH v2 3/3] dt-bindings: ufs: qcom: Split SM8650 and similar Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250731-dt-bindings-ufs-qcom-v2-3-53bb634bf95a@linaro.org> References: <20250731-dt-bindings-ufs-qcom-v2-0-53bb634bf95a@linaro.org> In-Reply-To: <20250731-dt-bindings-ufs-qcom-v2-0-53bb634bf95a@linaro.org> To: Alim Akhtar , Avri Altman , Bart Van Assche , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Manivannan Sadhasivam , Bjorn Andersson , Andy Gross Cc: linux-arm-msm@vger.kernel.org, linux-scsi@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Ram Kumar Dwivedi , Krzysztof Kozlowski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=8603; i=krzysztof.kozlowski@linaro.org; h=from:subject:message-id; bh=m4Q58xqf9/x4E0jlUz4rpnXUwO4kR+noNYCXUYqKHk0=; b=owEBbQKS/ZANAwAKAcE3ZuaGi4PXAcsmYgBoixgvSf90OB3oyLSCdRTgI1O1KtbPcZh2rWUMe uiBfXwVx46JAjMEAAEKAB0WIQTd0mIoPREbIztuuKjBN2bmhouD1wUCaIsYLwAKCRDBN2bmhouD 16xjD/9hofBF29vglaxv/+fCMf1vugvzZliqr08i1pEj8x1+VTFwn/QEQWNiPDQO2+TxTMr0uOJ xMAsZExfNQtyABjS3jGytOBAAT7M6CTfhdb73dn8cMLV4pr/64208LFlveU+00imNXkXKiYapMn YmaC6RA5gfy3bWkkNNkz3Ytzq/hNjBaOcvHR+RNjebdjOT7oZLa6qOsHAgCTzIHIp6vrLTCmTYA hGqlIGyHGqUe+ExLf2oYUCs/lYespdCI5S1dKCNfaDW2mYujqlLnxiETcRuFXH8OxQ96KT+4d8e OvAPSiQdLLKjx83rMU7Klv4b9mpvCDrJmdX+Y2liug2OlrxI3hIr1UhXCTOmcc946CJsYXAzwTs kcWUSyp2c/8DpUTzZhm7qHDOo3G64nz673r8NudR27oWryrbzYnyA1ox7B46+73HvAu9AFRGP+v fcla15kkOjt3BvTwe2koSN7ndTWPOKVFFmLxpFANvcqQXiAr7oieKH7Tcexz05LF+hjlcWTSDpm d/pjwWN9UPasnuzGq0vRiVJx7wwM767IHrgCEn0OxJtRE82JbDTQA7OSz7LniCtYqI/BWrarwzU rjGQkdsUwSO+vjxcWcLbVmRRa64pwz9Il868JHCcs3+2fFI+SxssOoX6XKVSZz+5EidDgWzK3CM VdMAXh2tLjtRdsw== X-Developer-Key: i=krzysztof.kozlowski@linaro.org; a=openpgp; fpr=9BD07E0E0C51F8D59677B7541B93437D3B41629B The binding for Qualcomm SoC UFS controllers grew and it will grow further. Split SM8650 and SM8750 UFS controllers which: 1. Do not reference ICE as IO address space, but as phandle, 2. Have same order of clocks. 3. Have MCQ IO address space. Document that MCQ address space as optional to maintain backwards compatibility and because Linux drivers can operate perfectly fine without it (thus without MCQ feature). Linux driver already uses "mcq" as possible name for "reg-names" property. The split allows easier review and maintenance of the binding. Signed-off-by: Krzysztof Kozlowski Acked-by: Manivannan Sadhasivam Reviewed-by: Rob Herring (Arm) --- .../devicetree/bindings/ufs/qcom,sm8650-ufshc.yaml | 178 +++++++++++++++++= ++++ .../devicetree/bindings/ufs/qcom,ufs.yaml | 32 ---- 2 files changed, 178 insertions(+), 32 deletions(-) diff --git a/Documentation/devicetree/bindings/ufs/qcom,sm8650-ufshc.yaml b= /Documentation/devicetree/bindings/ufs/qcom,sm8650-ufshc.yaml new file mode 100644 index 0000000000000000000000000000000000000000..aaa0bbb5bfe1673e3e0d25812c2= 829350b137abb --- /dev/null +++ b/Documentation/devicetree/bindings/ufs/qcom,sm8650-ufshc.yaml @@ -0,0 +1,178 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/ufs/qcom,sm8650-ufshc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm SM8650 and Other SoCs UFS Controllers + +maintainers: + - Bjorn Andersson + +# Select only our matches, not all jedec,ufs-2.0 +select: + properties: + compatible: + contains: + enum: + - qcom,sm8650-ufshc + - qcom,sm8750-ufshc + required: + - compatible + +properties: + compatible: + items: + - enum: + - qcom,sm8650-ufshc + - qcom,sm8750-ufshc + - const: qcom,ufshc + - const: jedec,ufs-2.0 + + reg: + minItems: 1 + maxItems: 2 + + reg-names: + minItems: 1 + items: + - const: std + - const: mcq + + clocks: + minItems: 8 + maxItems: 8 + + clock-names: + items: + - const: core_clk + - const: bus_aggr_clk + - const: iface_clk + - const: core_clk_unipro + - const: ref_clk + - const: tx_lane0_sync_clk + - const: rx_lane0_sync_clk + - const: rx_lane1_sync_clk + + qcom,ice: + $ref: /schemas/types.yaml#/definitions/phandle + description: phandle to the Inline Crypto Engine node + +required: + - compatible + - reg + +allOf: + - $ref: qcom,ufs-common.yaml + +unevaluatedProperties: false + +examples: + - | + #include + #include + #include + #include + #include + #include + #include + + soc { + #address-cells =3D <2>; + #size-cells =3D <2>; + + ufshc@1d84000 { + compatible =3D "qcom,sm8650-ufshc", "qcom,ufshc", "jedec,ufs-2= .0"; + reg =3D <0x0 0x01d84000 0x0 0x3000>; + + interrupts =3D ; + + clocks =3D <&gcc GCC_UFS_PHY_AXI_CLK>, + <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>, + <&gcc GCC_UFS_PHY_AHB_CLK>, + <&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>, + <&tcsr TCSR_UFS_PAD_CLKREF_EN>, + <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>, + <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>, + <&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>; + clock-names =3D "core_clk", + "bus_aggr_clk", + "iface_clk", + "core_clk_unipro", + "ref_clk", + "tx_lane0_sync_clk", + "rx_lane0_sync_clk", + "rx_lane1_sync_clk"; + + resets =3D <&gcc GCC_UFS_PHY_BCR>; + reset-names =3D "rst"; + reset-gpios =3D <&tlmm 210 GPIO_ACTIVE_LOW>; + + interconnects =3D <&aggre1_noc MASTER_UFS_MEM QCOM_ICC_TAG_ALW= AYS + &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>, + <&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ACTIV= E_ONLY + &config_noc SLAVE_UFS_MEM_CFG QCOM_ICC_TAG_AC= TIVE_ONLY>; + interconnect-names =3D "ufs-ddr", + "cpu-ufs"; + + power-domains =3D <&gcc UFS_PHY_GDSC>; + required-opps =3D <&rpmhpd_opp_nom>; + + operating-points-v2 =3D <&ufs_opp_table>; + + iommus =3D <&apps_smmu 0x60 0>; + + lanes-per-direction =3D <2>; + qcom,ice =3D <&ice>; + + phys =3D <&ufs_mem_phy>; + phy-names =3D "ufsphy"; + + #reset-cells =3D <1>; + + vcc-supply =3D <&vreg_l7b_2p5>; + vcc-max-microamp =3D <1100000>; + vccq-supply =3D <&vreg_l9b_1p2>; + vccq-max-microamp =3D <1200000>; + + ufs_opp_table: opp-table { + compatible =3D "operating-points-v2"; + + opp-100000000 { + opp-hz =3D /bits/ 64 <100000000>, + /bits/ 64 <0>, + /bits/ 64 <0>, + /bits/ 64 <100000000>, + /bits/ 64 <0>, + /bits/ 64 <0>, + /bits/ 64 <0>, + /bits/ 64 <0>; + required-opps =3D <&rpmhpd_opp_low_svs>; + }; + + opp-201500000 { + opp-hz =3D /bits/ 64 <201500000>, + /bits/ 64 <0>, + /bits/ 64 <0>, + /bits/ 64 <201500000>, + /bits/ 64 <0>, + /bits/ 64 <0>, + /bits/ 64 <0>, + /bits/ 64 <0>; + required-opps =3D <&rpmhpd_opp_svs>; + }; + + opp-403000000 { + opp-hz =3D /bits/ 64 <403000000>, + /bits/ 64 <0>, + /bits/ 64 <0>, + /bits/ 64 <403000000>, + /bits/ 64 <0>, + /bits/ 64 <0>, + /bits/ 64 <0>, + /bits/ 64 <0>; + required-opps =3D <&rpmhpd_opp_nom>; + }; + }; + }; + }; diff --git a/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml b/Document= ation/devicetree/bindings/ufs/qcom,ufs.yaml index 191b88120d139a47632e3dce3d3f3a37d7a55c72..1dd41f6d5258014d59c8c8005bc= 54f7994351a52 100644 --- a/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml +++ b/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml @@ -24,8 +24,6 @@ select: - qcom,sm6125-ufshc - qcom,sm6350-ufshc - qcom,sm8150-ufshc - - qcom,sm8650-ufshc - - qcom,sm8750-ufshc required: - compatible =20 @@ -41,8 +39,6 @@ properties: - qcom,sm6125-ufshc - qcom,sm6350-ufshc - qcom,sm8150-ufshc - - qcom,sm8650-ufshc - - qcom,sm8750-ufshc - const: qcom,ufshc - const: jedec,ufs-2.0 =20 @@ -66,34 +62,6 @@ required: allOf: - $ref: qcom,ufs-common.yaml =20 - - if: - properties: - compatible: - contains: - enum: - - qcom,sm8650-ufshc - - qcom,sm8750-ufshc - then: - properties: - clocks: - minItems: 8 - maxItems: 8 - clock-names: - items: - - const: core_clk - - const: bus_aggr_clk - - const: iface_clk - - const: core_clk_unipro - - const: ref_clk - - const: tx_lane0_sync_clk - - const: rx_lane0_sync_clk - - const: rx_lane1_sync_clk - reg: - minItems: 1 - maxItems: 1 - reg-names: - maxItems: 1 - - if: properties: compatible: --=20 2.48.1