From patchwork Fri Apr 7 10:50:23 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Abel Vesa X-Patchwork-Id: 7874 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp199493vqo; Fri, 7 Apr 2023 03:53:32 -0700 (PDT) X-Google-Smtp-Source: AKy350YXZkZIMdfCD+adGV7un7DQ+T2VDStAM1smzWWVU9WuWD6C4QzXMKz5CLvj3x+py0L5j/m5 X-Received: by 2002:a17:90b:388e:b0:23e:aba9:d51d with SMTP id mu14-20020a17090b388e00b0023eaba9d51dmr2033759pjb.7.1680864811901; Fri, 07 Apr 2023 03:53:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680864811; cv=none; d=google.com; s=arc-20160816; b=oNuOBgIIm1CwITXuKtKPN+aonUZEqlBPDotzNAjWGk+l7DDAEwd34LK7R4zy7aR8nu 2PqbgI+nc/IyHnl69x7DdKm1/aOESM9+aP2PXdPnBfafzU5wDz/AjbduRDi42n2G2JPd NmqqG3a3pQDZSovJ8dajlNrQ92X5JI/H6ODdoqNC7AKbnR+79wXXYYyS/mgeZm8v3kc7 yBJNu+Agpf85iq2N0YJFvtp6UMFfXqKj6hdGqD4ncIdFhgwxrcjyaVAPC8boAGkzdk6J bXZcpa9n+bHpQz4BDBizvorujMFmZR6N+w13H+2kxJQYtKGB3GkHyL5nt/4yEy4p9gmP a7hQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=06TnYBdo9T2x70dl6lUY38eRXb4b9fDtFg6W0E/jF9s=; b=wk7c9p/ot2L93yTrcTUtqt13oTh37O9rf24/lIv4WoUQSzPAhPJYo8EVPEP+APeHkw ZbOwhy6vciYv34Zo4Tb0b6hxFJwM/knJXQPjPX2SFxjDH8qrtUHwTcyMGhaBHsaDKRMw a8tUEiRr23K17Men9TiJHhlj7rfKt2SNbBK/xAKs2TpKOKm6ByqA4jq7ZT5MrtQh/qyK sEJJpmKh91CCRoTNsxHlPqArns8S49zEWay3z1JD1iBL/iLS3WoAKaiUomGOCOIexJ0k cIzBNTnY7HKibNXDKWG9uGFh7MvJddHbxZrkfqw2RJe/ec9FovAsceVCfz9GO4Gz6c1v 1nWw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=wYDrtmyC; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id rj14-20020a17090b3e8e00b00240aff612f9si6314251pjb.140.2023.04.07.03.53.18; Fri, 07 Apr 2023 03:53:31 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=wYDrtmyC; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240647AbjDGKus (ORCPT + 99 others); Fri, 7 Apr 2023 06:50:48 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41628 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240624AbjDGKun (ORCPT ); Fri, 7 Apr 2023 06:50:43 -0400 Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com [IPv6:2a00:1450:4864:20::32e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 362FD4C17 for ; Fri, 7 Apr 2023 03:50:41 -0700 (PDT) Received: by mail-wm1-x32e.google.com with SMTP id l10-20020a05600c1d0a00b003f04bd3691eso10112680wms.5 for ; Fri, 07 Apr 2023 03:50:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1680864639; x=1683456639; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=06TnYBdo9T2x70dl6lUY38eRXb4b9fDtFg6W0E/jF9s=; b=wYDrtmyCUeuPHoQ+a+L+bYIKD5tVHF0T4I7wDqd7k8R9pfkM+J9OhoQDyESXnzz1iz k3ooh1VU2Q8gW2TSMLRlbtghkI19sy19ypdWoc+Omxxem6YZuXrgCPFr2LGsUITxWliE +zBT3kCgH6wuumOU7JtR9EXz8g2jSMCePAMrqaI2lCCSey7kNVinVsK5dKZLfyxYqxVp gySoNb8rDY/w1WGiu9q8a23DHmXgXkXf7veY050tTyaiF3nf+/mROPMw7MS6i60JLSEW pbhVwVkWGBoCGj+2wJv+zy42hiGSIYRliEDZRZysa98BQX7OD7u+MFN7XB7Gr72FM0OU A2QA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680864639; x=1683456639; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=06TnYBdo9T2x70dl6lUY38eRXb4b9fDtFg6W0E/jF9s=; b=lFSlGCesMnavzD2puzZ55wUlAd646cSeaxxw4USvpwOu3LiSOyDJ4OCQxxMcVWdIiy jZozyCNWrcWSAjqSORio0KjIXM/CRkEVuBtkoEyIgGGUh9QPmEFTqXHrl+LRpZ1PNaED y4h2eU/FUFJeB3Bab/BrRg6gWTgkVNLF/yJGjBDPdWvMkZUKQxJGfZ+YI60jnercy+8K q7ePDA1WFYKn3XusyOZ9Irw9bvCaOlFnKg6yQ4o5b+ivoj1XNQ1lsbn4a7wMEZAeafy1 MPQwoDS4m3oxSlYQQSE93otuxgDj7eTSa1OauFB89SX8I959BVAU45iCeSnev2I6lMj7 9IgQ== X-Gm-Message-State: AAQBX9ewRGLruZAlXxc+HMyy86QJWLbx1T94Ym3k8X4uUb5xpTfOLU4b E8IddgDNkP5JEduX7PyZMfg1Rg== X-Received: by 2002:a05:600c:2285:b0:3ee:ed5:6115 with SMTP id 5-20020a05600c228500b003ee0ed56115mr1076006wmf.19.1680864639120; Fri, 07 Apr 2023 03:50:39 -0700 (PDT) Received: from localhost.localdomain ([94.52.112.99]) by smtp.gmail.com with ESMTPSA id i16-20020a05600c355000b003ede6540190sm8131909wmq.0.2023.04.07.03.50.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 07 Apr 2023 03:50:38 -0700 (PDT) From: Abel Vesa To: Ulf Hansson , Rob Herring , Krzysztof Kozlowski , Andy Gross , Bjorn Andersson , Konrad Dybcio , Manivannan Sadhasivam , Alim Akhtar , Avri Altman , Bart Van Assche , Adrian Hunter , "James E . J . Bottomley" , "Martin K . Petersen" , Herbert Xu , "David S . Miller" , Eric Biggers Cc: linux-mmc@vger.kernel.org, devicetree@vger.kernel.org, Linux Kernel Mailing List , linux-arm-msm@vger.kernel.org, linux-crypto@vger.kernel.org, linux-scsi@vger.kernel.org Subject: [PATCH v6 0/6] Add dedicated Qcom ICE driver Date: Fri, 7 Apr 2023 13:50:23 +0300 Message-Id: <20230407105029.2274111-1-abel.vesa@linaro.org> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762514500943730529?= X-GMAIL-MSGID: =?utf-8?q?1762514500943730529?= As both SDCC and UFS drivers use the ICE with duplicated implementation, while none of the currently supported platforms make use concomitantly of the same ICE IP block instance, the new SM8550 allows both UFS and SDCC to do so. In order to support such scenario, there is a need for a unified implementation and a devicetree node to be shared between both types of storage devices. So lets drop the duplicate implementation of the ICE from both SDCC and UFS and make it a dedicated (soc) driver. For now, only SM8550 has been added to support the new approach. This also involves adding support for HW version 4.x. The v5 is here: https://lore.kernel.org/all/20230403200530.2103099-1-abel.vesa@linaro.org/ Changes since v5: * See each individual patch for changelogs. Changes since v4: * dropped the SDHCI dt-bindings patch as it will be added along with the first use of qcom,ice property from an SDHCI DT node Abel Vesa (6): dt-bindings: crypto: Add Qualcomm Inline Crypto Engine dt-bindings: ufs: qcom: Add ICE phandle soc: qcom: Make the Qualcomm UFS/SDCC ICE a dedicated driver scsi: ufs: ufs-qcom: Switch to the new ICE API mmc: sdhci-msm: Switch to the new ICE API arm64: dts: qcom: sm8550: Add the Inline Crypto Engine node .../crypto/qcom,inline-crypto-engine.yaml | 42 ++ .../devicetree/bindings/ufs/qcom,ufs.yaml | 26 ++ arch/arm64/boot/dts/qcom/sm8550.dtsi | 9 + drivers/mmc/host/Kconfig | 2 +- drivers/mmc/host/sdhci-msm.c | 223 +++-------- drivers/soc/qcom/Kconfig | 4 + drivers/soc/qcom/Makefile | 1 + drivers/soc/qcom/ice.c | 366 ++++++++++++++++++ drivers/ufs/host/Kconfig | 2 +- drivers/ufs/host/Makefile | 4 +- drivers/ufs/host/ufs-qcom-ice.c | 244 ------------ drivers/ufs/host/ufs-qcom.c | 99 ++++- drivers/ufs/host/ufs-qcom.h | 32 +- include/soc/qcom/ice.h | 37 ++ 14 files changed, 637 insertions(+), 454 deletions(-) create mode 100644 Documentation/devicetree/bindings/crypto/qcom,inline-crypto-engine.yaml create mode 100644 drivers/soc/qcom/ice.c delete mode 100644 drivers/ufs/host/ufs-qcom-ice.c create mode 100644 include/soc/qcom/ice.h