Received: by 2002:a05:6a10:2785:0:0:0:0 with SMTP id ia5csp352207pxb; Thu, 14 Jan 2021 07:30:28 -0800 (PST) X-Google-Smtp-Source: ABdhPJyT4wdCcLu1U3ISVgDLgXgTdfLwStm1JtNbY8EnfciwPxMNr5Q4Abo2Ed3kZIUA+jYwdMZr X-Received: by 2002:a17:906:55c8:: with SMTP id z8mr461899ejp.540.1610638227909; Thu, 14 Jan 2021 07:30:27 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1610638227; cv=none; d=google.com; s=arc-20160816; b=PuLLCGXQA+r+CN8awvPtkBpml6yPaNctr9eoQWhu6mLldqUZytzg99RQwQyycYFplh sqb0FJin1PSLqsqAgStn8s0r/LR2QiEwRY1Uc2C8b7KCGHxbSEX8iR+WxY+Nzr/u1ure xqsOJ0kmvCNUjeZsw40zmWswN+ME68/ucqNbZGMOmtsUroja+nngk61N3WKjnAECgCGZ QRPwlNfezjDBDOxlMe4RLap/c/gHNLuix0HGsLDcYs5KjPH+XwNsZeVhJmbUDROlCH42 6fk1TIfJqXgXke8cL9UWNLOkPQFETAIPnY7INi1eHD7L5wPLrXZwW4E598dvsI1usvb5 0q4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from:ironport-sdr :ironport-sdr; bh=AMllyc9gKV6xTzmJA0T90eiBKkrM+eIRVXDKkhIJGAo=; b=IBfJbzIuq6QXjV6e0tK50H2yhhxX/n5wmHryq59mdNaGuc1XZ28LzqgI8SlyuQz54u 2xqZvYNNA+iB/j7hdMjdqBskvu2kAnFr+R32WMfriG9wP8zmy8htS887F2OUxDklnSph pKZZzmRnhe1is9tjP6yK3zD6+yxRhpxNAoOB8jo6+xvF+Cxe3CzEWrVmfUNoDsZmnZ0k tyXCnYn2Sih8MaEGYEa7cWBvjbNjFehMcYb7ZmpUd+vaz/FmnoTqN+x81/7LDdDhmW5y iC25+DYlEp0nRd4rgr17MRuI3qKulqJQfD/2XiB46D257+eWO0MDot3Jtx7Qmr/P4a/H 2IDQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id f7si2982509edd.343.2021.01.14.07.30.04; Thu, 14 Jan 2021 07:30:27 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726578AbhANP3I (ORCPT + 99 others); Thu, 14 Jan 2021 10:29:08 -0500 Received: from mga14.intel.com ([192.55.52.115]:7040 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726259AbhANP3I (ORCPT ); Thu, 14 Jan 2021 10:29:08 -0500 IronPort-SDR: a4FuUivT27wljN/tx5AaKxFe9DgCQDqo2ZdXkEA1Z9DqxhpRzaGoCJybqmVUECH27fHZiXkOHP BahzXCWFVOKg== X-IronPort-AV: E=McAfee;i="6000,8403,9864"; a="177604640" X-IronPort-AV: E=Sophos;i="5.79,347,1602572400"; d="scan'208";a="177604640" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Jan 2021 07:28:27 -0800 IronPort-SDR: TYZ7Q2aL7R7JrACOCFOgwW2AhaDagifQc2o36b02ZaTDDDKMdMsJQ2932U6hNxQcAM9xjssNPq fSkYNq1rFYHQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.79,347,1602572400"; d="scan'208";a="568193538" Received: from zulkifl3-ilbpg0.png.intel.com ([10.88.229.114]) by orsmga005.jf.intel.com with ESMTP; 14 Jan 2021 07:28:24 -0800 From: Muhammad Husaini Zulkifli To: ulf.hansson@linaro.org, broonie@kernel.org, lgirdwood@gmail.com, robh+dt@kernel.org, devicetree@vger.kernel.org, adrian.hunter@intel.com, michal.simek@xilinx.com, linux-mmc@vger.kernel.org, linux-kernel@vger.kernel.org Cc: andriy.shevchenko@intel.com, Rashmi.A@intel.com, mahesh.r.vaidya@intel.com, muhammad.husaini.zulkifli@intel.com Subject: [PATCH v1 0/9] mmc: sdhci-of-arasan: Add UHS-1 support for Keem Bay SOC Date: Thu, 14 Jan 2021 23:26:51 +0800 Message-Id: <20210114152700.21916-1-muhammad.husaini.zulkifli@intel.com> X-Mailer: git-send-email 2.17.1 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, This patch series adds Ultra High Speed(UHS-1) Bus Speed Mode Support for Keem Bay SoC SD Card. Summary of each patches as per below: Patch 1: Use of_device_get_match_data() helper to get the match-data. Patch 2: Convert to use np pointer instead of using pdev->dev.of_node. Patch 3: Add struct device *dev in probe func(), so that dev pointer can be widely use in probe to make code more readable. Patch 4: Change from dev_err to dev_err_probe() to avoid spamming logs when probe is deferred. Patch 5: Export function to be use by device driver to configure i/o voltage rail output which communicate with Trusted Firmware. Patch 6: Update phy and regulator supply for Keem Bay SoC. Patch 7: Add DT Binding for Keem Bay SoC SD Regulator. Patch 8: Add SD Regulator driver to support Keem Bay SoC. This is to model using standard regulator abstraction during voltage operation as for Keem Bay SoC, i/o voltage rail need to be configure by setting specific bit in the AON_CFG1 Register. AON_CFG1 Register is a secure register. Direct access to AON_CFG1 register will cause firewall violation in secure system. Patch 9: Add Ultra High Speed (UHS-1) Support for Keem Bay SOC. For Keem Bay hardware, two regulators are been used to change the I/O bus line voltage which are "vqmmc-supply" and "sdvrail-supply". All of these patches was tested with Keem Bay evaluation module board. Kindly help to review this patch set. Muhammad Husaini Zulkifli (9): mmc: sdhci-of-arasan: use of_device_get_match_data() mmc: sdhci-of-arasan: Convert to use np instead of pdev->dev.of_node mmc: sdhci-of-arasan: Add structure device pointer in probe function mmc: sdhci-of-arasan: Use dev_err_probe() to avoid spamming logs firmware: keembay: Add support for Trusted Firmware Service call dt-bindings: mmc: Update phy and regulator supply for Keem Bay SOC dt-bindings: regulator: keembay: Add DT binding documentation regulator: keembay: Add regulator for Keem Bay SoC mmc: sdhci-of-arasan: Add UHS-1 support for Keem Bay SOC .../devicetree/bindings/mmc/arasan,sdhci.yaml | 7 +- .../bindings/regulator/keembay-regulator.yaml | 36 ++ drivers/mmc/host/sdhci-of-arasan.c | 313 ++++++++++++++++-- drivers/regulator/Kconfig | 10 + drivers/regulator/Makefile | 1 + drivers/regulator/keembay-sd-regulator.c | 112 +++++++ include/linux/firmware/intel/keembay.h | 82 +++++ 7 files changed, 532 insertions(+), 29 deletions(-) create mode 100644 Documentation/devicetree/bindings/regulator/keembay-regulator.yaml create mode 100644 drivers/regulator/keembay-sd-regulator.c create mode 100644 include/linux/firmware/intel/keembay.h -- 2.17.1