From patchwork Mon Jul 15 15:50:34 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Liming Sun X-Patchwork-Id: 1960716 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.ubuntu.com (client-ip=185.125.189.65; helo=lists.ubuntu.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=patchwork.ozlabs.org) Received: from lists.ubuntu.com (lists.ubuntu.com [185.125.189.65]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4WN6B41BT3z20CW for ; Tue, 16 Jul 2024 01:51:08 +1000 (AEST) Received: from localhost ([127.0.0.1] helo=lists.ubuntu.com) by lists.ubuntu.com with esmtp (Exim 4.86_2) (envelope-from ) id 1sTNyg-0006Kz-3p; Mon, 15 Jul 2024 15:51:02 +0000 Received: from mail-dm6nam12on2044.outbound.protection.outlook.com ([40.107.243.44] helo=NAM12-DM6-obe.outbound.protection.outlook.com) by lists.ubuntu.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1sTNye-0006Jj-7L for kernel-team@lists.ubuntu.com; Mon, 15 Jul 2024 15:51:00 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Nj+komkeztDYGtSGG3Y76mrb3EIEWQQX07MgQ6mzCMNsVH1KIb4cCu7wAM6qZcT2B1auMDYYAF4kBYr7z0py61cWrA9kGK/mYFp6iHag5lsRycSGf52OdBzWIWsVQ80AyDWSwVkAGxIhqqa2J95fE1H4GIx5/0Tt8DHjLnjJGbDJBl/Kzz69Vklp+V4HqwIXWFILgi8/7LlPxvd+0lY2fWkvgD0eKMGi7/1ogz6bTa5V1JULL9YOqoQgLTU+YZ8OzEkYCyVWu+5MjVPs+s4CFJHKCctPLGg30UrTT6nRBRhQFrhoG91YSZH00fZCXb11YQAWAD41jgmz1fq3SgMMNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=IbKGcRJumooBCRGIPh8+DmhNEusN1CP8hGixXeHkjAw=; b=K+ENXFgfNjGni2ZHCvmPABzoEqgJA313QBWsht2lD0Uo/nOaAmDRK5BGIJLZtIb5xStqmeCmKjus2p3kEGP7sDlU57IgkAOe9l4oDjrGhH5X3j3qbeWDHeZT8cbzJwiOa6L4hWjnjv6C3RW20cEucTV1TQt7557/yScARO4hgQ7ZiOaeP9Fd+SlyHACDGRcUxzGy0yCffilwcIf5iCnKlGEYTDCCk7Y1JBQUrL7nMze2yrfUNEfKGgvCpYC8WcDZkORDg1ujHjPkSBtn3YAi1M6/Fsz80ITYXbw2WL3A/85QdDZnxRwab7xN8MZrZMUhjUVyxpR8dlMjAj9oH3drLg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=lists.ubuntu.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) Received: from SJ2PR07CA0008.namprd07.prod.outlook.com (2603:10b6:a03:505::8) by CH3PR12MB9220.namprd12.prod.outlook.com (2603:10b6:610:198::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7762.28; Mon, 15 Jul 2024 15:50:53 +0000 Received: from SJ1PEPF00002327.namprd03.prod.outlook.com (2603:10b6:a03:505:cafe::ed) by SJ2PR07CA0008.outlook.office365.com (2603:10b6:a03:505::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7762.28 via Frontend Transport; Mon, 15 Jul 2024 15:50:53 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by SJ1PEPF00002327.mail.protection.outlook.com (10.167.242.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7784.11 via Frontend Transport; Mon, 15 Jul 2024 15:50:52 +0000 Received: from rnnvmail203.nvidia.com (10.129.68.9) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Mon, 15 Jul 2024 08:50:38 -0700 Received: from rnnvmail201.nvidia.com (10.129.68.8) by rnnvmail203.nvidia.com (10.129.68.9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Mon, 15 Jul 2024 08:50:37 -0700 Received: from vdi.nvidia.com (10.127.8.12) by mail.nvidia.com (10.129.68.8) with Microsoft SMTP Server id 15.2.1544.4 via Frontend Transport; Mon, 15 Jul 2024 08:50:37 -0700 From: Liming Sun To: Subject: [PATCH v2 1/2] [SRU][J:linux-bluefield] mmc: dw_mmc: Add support for platform specific eMMC HW reset Date: Mon, 15 Jul 2024 11:50:34 -0400 Message-ID: <20240715155035.289107-2-limings@nvidia.com> X-Mailer: git-send-email 2.30.1 In-Reply-To: <08b0cb030e8692b3550b72e0c9bd9273f8832a5c.1720642165.git.limings@nvidia.com> References: <08b0cb030e8692b3550b72e0c9bd9273f8832a5c.1720642165.git.limings@nvidia.com> MIME-Version: 1.0 X-NV-OnPremToCloud: ExternallySecured X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ1PEPF00002327:EE_|CH3PR12MB9220:EE_ X-MS-Office365-Filtering-Correlation-Id: 577b3715-66f3-44fa-860c-08dca4e5e7f8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|1800799024|36860700013|376014|82310400026; X-Microsoft-Antispam-Message-Info: OeZTxH1A6GMyU6FQOsQj1TZdXWUOSlCgA82R24H/Rz2j2spaJdIXKaCK3wlN29lTQLaK+/6n833mCV0cqj299SSVBiAvQwF0h4q4rl4GPgRKffwkOw69h0CgptKbG8WOyQfsIaVNuokSBR+mdOcAVoyZqzhVz7yN/sVYgBI5Z3UUjqCV5mx+6+F4PURqyqJ5YQa7o4Ko7KVko7Tk7gTHnrXW/a+xdgU7Lx6k/5Fb4YRK+QDnsYz5Zb7BRGdT1R/BGTm3i2phkQBx/3njaeUYgucKF4ckK/SqYG2YAL1QjaDR78sfuvhvvFVMGMHBzN74ORdDSrBC7wfuXvxclj8B6CCs5lOIHiStQdEBPgNWD6YX5r1BNRdKUslrN9aXk1G4k/BdB8zFcigDAYNrxhT5WZjGxTl+wGGsI/F58LHc+uYfanf/WXjsM0SrkwYtc0q9PZP2DuWQ1VuWtZNaNNqUfntXJZXPkU0bl/rtpKo2Z77uWcH2p86xrRWdihISB6bjeETiOVbxDcMppAK5YSk7mc1ESH0B7l07RSRybXrchXREaQQRLaaKqM0iulpuzyvFoF+4KcH4fc7YwdDaqcxUwjJbdG7JItykEk56+qePJtwqKOpW9kPBmtOs0Wl5pqIcdXCt07vBxezpbqRP6+bBGlQtNw+9V89mp0p25K43J+idzI/sSCTQnDFt+mm+X9nTTrlmIhlOjQuVjV0xW06YyIcPne6IXnSZPhDosfcMULFQlm+CNE5g7iq5wLzyc9F7/OCgLCxpPRtUmyfhQ9L1zbgrEi8x9EV+C9DhSvlzMqAqyKFQPm4GD7PVRo4y+zWXeqOMFK38IlVl/DNWsiDffO0kcG1FuzDSFLTO32eu+EzO4mX2fbc8Jsi0tOHI3MEJ4bcvVwboQu/tpDihInGQzj6CneKY6hjAlpNkEcwIwgwxeoxg9YZBsB8R3ZsTHpGoKJUgDoTbOFke9HtLakGS6U3mMW78HBUdT1okpxkHS83c6976ng5erKt0XQjTxHjkA1MhQ5yPE8b2NfZeLEhbJfzCdyIhnk1V0KwcH7YwnoWbPjYu8gX1Mfdrh9H3FYax99vIfNZSNF5LWz2rjB/NLYDH+x4DTfDEhPxawoJz3T8bMkC3sDgJzKayK6FIuf9afAcFz+UhLHivHtE/+b381y+hmbW3rcerc1OIypXhsF5+NTe44o4mG1n8zCSmMgrLr1SUpGXrXSTTn5qO8IpI1u9Euq0bCDKYJ8TrvT8KW2SVA3afxRGIJKA3QamojuR9TkB2AOhTEzGNmay5T7cmPdxb16GuKKo9ZT/IU6E8hfrRweKTo70JoS7G3R4OIZceR0PzCsY6f5Q9zzTwaJrwzr21ZReksSZrcOQ2PrjJGHl3RCUWMVKNnAqWvfcl6tPr+l9+BzKcWJ79GUCwCKXGYDBXsIZVp90DZNgoh47LZOkyYBI0auAW8YNYQsNmi9BG X-Forefront-Antispam-Report: CIP:216.228.117.160; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge1.nvidia.com; CAT:NONE; SFS:(13230040)(1800799024)(36860700013)(376014)(82310400026); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jul 2024 15:50:52.5745 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 577b3715-66f3-44fa-860c-08dca4e5e7f8 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.117.160]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: SJ1PEPF00002327.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB9220 Received-SPF: softfail client-ip=40.107.243.44; envelope-from=limings@nvidia.com; helo=NAM12-DM6-obe.outbound.protection.outlook.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" BugLink: https://bugs.launchpad.net/bugs/2072675 This commit adds a new callback to allow drivers to support platform specific eMMC HW reset. Reviewed-by: David Thompson Signed-off-by: Liming Sun Link: https://lore.kernel.org/r/3df02ffa8bdaa74f5261c8914d2545b97fb3478a.1718213918.git.limings@nvidia.com Signed-off-by: Ulf Hansson (cherry picked from commit f21adcb86653e2b2784bbc0f180c332b50c404df mmc) Signed-off-by: Liming Sun --- drivers/mmc/host/dw_mmc.c | 6 ++++++ drivers/mmc/host/dw_mmc.h | 2 ++ 2 files changed, 8 insertions(+) diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c index 1e8f1bb3cad7..bbfe93b0f844 100644 --- a/drivers/mmc/host/dw_mmc.c +++ b/drivers/mmc/host/dw_mmc.c @@ -1587,6 +1587,7 @@ static void dw_mci_hw_reset(struct mmc_host *mmc) { struct dw_mci_slot *slot = mmc_priv(mmc); struct dw_mci *host = slot->host; + const struct dw_mci_drv_data *drv_data = host->drv_data; int reset; if (host->use_dma == TRANS_MODE_IDMAC) @@ -1596,6 +1597,11 @@ static void dw_mci_hw_reset(struct mmc_host *mmc) SDMMC_CTRL_FIFO_RESET)) return; + if (drv_data && drv_data->hw_reset) { + drv_data->hw_reset(host); + return; + } + /* * According to eMMC spec, card reset procedure: * tRstW >= 1us: RST_n pulse width diff --git a/drivers/mmc/host/dw_mmc.h b/drivers/mmc/host/dw_mmc.h index ce05d81477d9..2e4bd94e3712 100644 --- a/drivers/mmc/host/dw_mmc.h +++ b/drivers/mmc/host/dw_mmc.h @@ -554,6 +554,7 @@ struct dw_mci_slot { * @set_ios: handle bus specific extensions. * @parse_dt: parse implementation specific device tree properties. * @execute_tuning: implementation specific tuning procedure. + * @hw_reset: implementation specific HW reset. * * Provide controller implementation specific extensions. The usage of this * data structure is fully optional and usage of each member in this structure @@ -570,5 +571,6 @@ struct dw_mci_drv_data { struct mmc_ios *ios); int (*switch_voltage)(struct mmc_host *mmc, struct mmc_ios *ios); + void (*hw_reset)(struct dw_mci *host); }; #endif /* _DW_MMC_H_ */ From patchwork Mon Jul 15 15:50:35 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Liming Sun X-Patchwork-Id: 1960715 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.ubuntu.com (client-ip=185.125.189.65; helo=lists.ubuntu.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=patchwork.ozlabs.org) Received: from lists.ubuntu.com (lists.ubuntu.com [185.125.189.65]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4WN6B36DV9z1xqc for ; Tue, 16 Jul 2024 01:51:07 +1000 (AEST) Received: from localhost ([127.0.0.1] helo=lists.ubuntu.com) by lists.ubuntu.com with esmtp (Exim 4.86_2) (envelope-from ) id 1sTNyd-0006Jk-P9; Mon, 15 Jul 2024 15:50:59 +0000 Received: from mail-mw2nam10on2051.outbound.protection.outlook.com ([40.107.94.51] helo=NAM10-MW2-obe.outbound.protection.outlook.com) by lists.ubuntu.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1sTNyc-0006Ja-MN for kernel-team@lists.ubuntu.com; Mon, 15 Jul 2024 15:50:59 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=XKMwUHi2K4ggnlqK6Lp9j8RQ39J/uKKuvL5Jj0HmBKLkFioNHUMiP9VCCq7GY+S5Un3vkPiY/YMUdR1diTk5pmISAP/okLC98SVZrHWsoj6t0zaB2nuL25RSi6KxOD2ipqM1rep6gpTfAeYCpFQDwu2B6dnHDsQ0PZ3HJSVDsk5Bwkm5wumcHYNtC1wB10ErJPPrscD8LOWgL0xf6UQqDwI1oEMsURJ5Su7gnUY+4Fy9xjE3pvwocJWfT7/ZJQCXHKXlx46GdHsBaJZ5306AlL/oksExYyH3s1TTsO/m0o47ZBo6C9wiSyIMzlapTZx1jW6/6IA/iUJ6nLA0h2Agzg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=IC4Bw6tGqChlyA+ci3Gn7az7bL1p2aktNvCVNjUp7lE=; b=RFkq8VnzbASuiBGd/YpWiwVlKOMFRlwGjpcb5mbo520JVoDbcNbVJ5eTCphYBHR50z1wHWuMGuydzXBBH1t0RCzz/eTqmiEuSaF+Hz9/hPeO04qGQCMJ95YZffj03JGmMHjsqY/R6s5/5y8t087a9qdeqHajVc2gKPvviI6Pc7H94NiDzToJhMkZsF6024Fm5UqEPOGCKIZyZH+/6PexHtf+wj1Re828ThSJakw7/r4tbIoyR25KOKfFXZCpHB14lP2IPYD4TrF1y1mqWsXIMaxyK/o/mJ6OG8uXQ4bCLlkmueE7W4C/mG+P6u4U8GYXbjAesenL3xs96RzPiT4fGw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=lists.ubuntu.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) Received: from BYAPR07CA0062.namprd07.prod.outlook.com (2603:10b6:a03:60::39) by IA0PR12MB8932.namprd12.prod.outlook.com (2603:10b6:208:492::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7762.29; Mon, 15 Jul 2024 15:50:53 +0000 Received: from SJ1PEPF00002320.namprd03.prod.outlook.com (2603:10b6:a03:60:cafe::42) by BYAPR07CA0062.outlook.office365.com (2603:10b6:a03:60::39) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7762.28 via Frontend Transport; Mon, 15 Jul 2024 15:50:53 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by SJ1PEPF00002320.mail.protection.outlook.com (10.167.242.86) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7784.11 via Frontend Transport; Mon, 15 Jul 2024 15:50:52 +0000 Received: from rnnvmail205.nvidia.com (10.129.68.10) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Mon, 15 Jul 2024 08:50:38 -0700 Received: from rnnvmail201.nvidia.com (10.129.68.8) by rnnvmail205.nvidia.com (10.129.68.10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Mon, 15 Jul 2024 08:50:38 -0700 Received: from vdi.nvidia.com (10.127.8.12) by mail.nvidia.com (10.129.68.8) with Microsoft SMTP Server id 15.2.1544.4 via Frontend Transport; Mon, 15 Jul 2024 08:50:38 -0700 From: Liming Sun To: Subject: [PATCH v2 2/2] [SRU][J:linux-bluefield] mmc: dw_mmc-bluefield: Add support for eMMC HW reset Date: Mon, 15 Jul 2024 11:50:35 -0400 Message-ID: <20240715155035.289107-3-limings@nvidia.com> X-Mailer: git-send-email 2.30.1 In-Reply-To: <08b0cb030e8692b3550b72e0c9bd9273f8832a5c.1720642165.git.limings@nvidia.com> References: <08b0cb030e8692b3550b72e0c9bd9273f8832a5c.1720642165.git.limings@nvidia.com> MIME-Version: 1.0 X-NV-OnPremToCloud: ExternallySecured X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ1PEPF00002320:EE_|IA0PR12MB8932:EE_ X-MS-Office365-Filtering-Correlation-Id: 7105e119-fc54-4f6f-72df-08dca4e5e7fb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|82310400026|1800799024|36860700013|376014; X-Microsoft-Antispam-Message-Info: jThZmVuguaHQ3nJz5gR6sUu+5muXhX2cdGbiSkkXzvFoYpwmC3Eq8nYYDLru2/xDP56UJwNnfc+kQ9EoBfnp8YHA+ICcxvJ2hi+0+j0l0yE+45xRzTAfxhCBfmTucFpwVznzDsbSKiRdzuN2xVQfOmuVh0jaZtufVa+to0k/ONMZqSmz/3Iq4t6HGOOrQLvFQw24Ji1q8/UZD/IcBVEv63458w19FV+1IKY+CisRIK1Nt58wsKcxXyXBSbRbmKT5I/uBz3qsnbmT/ywgiEZpA+12FHRJGvpTPjuQDlcmYbMvPXXtc8uaPHlfwROu3kmJ2geQUz7T7R/X1RDwgJnL27+C0rYhgonA9vrP4OKtRUocyJO+k26TM8IZJnMiDmU+7aJc58j9wWjIwVvU9/uayXVoN6fYuQzIStZASNNZITNeote72uNcLIdO3WpNiXEN9Y9f49kaMx+83rFUMQ93k39jZZ0WuWfPbVpjjYS/P4bWTXvQFHqIRSVv3nsQLiBD7oX049aSFAYQRJGWLYU2G8CK5gA6jVYbLmqePf4GeCaXkDDj7aAUsfuYeUVzrTlt6xLoYSY0kLHQo/QYiqHbHW+M1yb5eTjllfEFYCBlMpIx+X9YJG16qsyPEEAwM8fD3qlnNOZ6mnlnIOYygaJtWzOzrnxl75y5EYt3TE7/ehta+7EBEqhZqYRWZWqnZqVS//3Le8hKijCYtvAAxm9hmvVNh4VygWfrWQ8VwJhXR6LOsDCb0pmHy3GUDfP4A/1r/dhmUMztU3YuFVJ1uQmYG6lgSLT9uOHbu32frNv0JJhc/WS5YpzkKAYR16/mK2WtreU3W6qvARzabY9dQVIgjLU3/wXAlg8zdQRwa4c8otHXDXJp4NyuEMxyHPCvm549QdmMqa16nLOg0x7BT7W+Bsjiv08LShLfM/eODnehXY42fox3kMGLnoaa5VYFVrmqnkiZJxD60Gzb0cQz5OP6X1hbL9NPA9BQYfzkponP8B/esPI9TfkEe2wrfJbhE7nILrfaEv7kQFQvVvWgRpF91p5yeIAAfwbGtGcMxTQViqgMimzD0oNBRo0sFer6m+pLjfIvSP4UZeTeLCQF/3yzt1K7Ce26rB+3yD8mOS/K324ne6BxB7fEBPVG2qU5izeOuwdwpmK3/m2UZ3LHAdh60pB8Xu+isHXayv4LJMqNyiFYjqWk+SECQceJ+mhZoMINDJbM+z8D10Ckb1UT/NlET/DErgxVXac7J0PwD9oewoblXHzeYTfvt73QLCv+MEBdDX0PfiXRuvyc1Je888Ehtr6emsArqO8jiKVUkySjC0zdn6Z6uHm0S0J46/Pv9FwB2OddzXVhhqFZPxPnM0SR3Bmha+tIRzSq8RIyBWFYaogGWo3MogLsRZKQ6LMdIOG9Nu6d35L3RLxQEQO89Rp5vSm89ntUjKmBYKeiACKKyczo1qVtGvHnKtUMgZ7iXwWd X-Forefront-Antispam-Report: CIP:216.228.117.160; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge1.nvidia.com; CAT:NONE; SFS:(13230040)(82310400026)(1800799024)(36860700013)(376014); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jul 2024 15:50:52.6093 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7105e119-fc54-4f6f-72df-08dca4e5e7fb X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.117.160]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: SJ1PEPF00002320.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8932 Received-SPF: softfail client-ip=40.107.94.51; envelope-from=limings@nvidia.com; helo=NAM10-MW2-obe.outbound.protection.outlook.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" BugLink: https://bugs.launchpad.net/bugs/2072675 The eMMC RST_N register is implemented as secure register on the BlueField SoC and controlled by TF-A. This commit sends an SMC call to TF-A for the eMMC HW reset. Reviewed-by: David Thompson Signed-off-by: Liming Sun Link: https://lore.kernel.org/r/2c459196c6867e325f9386ec0559efea464cfdd6.1718213918.git.limings@nvidia.com Signed-off-by: Ulf Hansson (cherry picked from commit c17aecf85800ac91ec67fd7134107526a4bab3b0 mmc) Signed-off-by: Liming Sun --- drivers/mmc/host/dw_mmc-bluefield.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/drivers/mmc/host/dw_mmc-bluefield.c b/drivers/mmc/host/dw_mmc-bluefield.c index 10baf122bc15..3cf526ab0387 100644 --- a/drivers/mmc/host/dw_mmc-bluefield.c +++ b/drivers/mmc/host/dw_mmc-bluefield.c @@ -3,6 +3,7 @@ * Copyright (C) 2018 Mellanox Technologies. */ +#include #include #include #include @@ -20,6 +21,9 @@ #define BLUEFIELD_UHS_REG_EXT_SAMPLE 2 #define BLUEFIELD_UHS_REG_EXT_DRIVE 4 +/* SMC call for RST_N */ +#define BLUEFIELD_SMC_SET_EMMC_RST_N 0x82000007 + static void dw_mci_bluefield_set_ios(struct dw_mci *host, struct mmc_ios *ios) { u32 reg; @@ -34,8 +38,20 @@ static void dw_mci_bluefield_set_ios(struct dw_mci *host, struct mmc_ios *ios) mci_writel(host, UHS_REG_EXT, reg); } +static void dw_mci_bluefield_hw_reset(struct dw_mci *host) +{ + struct arm_smccc_res res = { 0 }; + + arm_smccc_smc(BLUEFIELD_SMC_SET_EMMC_RST_N, 0, 0, 0, 0, 0, 0, 0, + &res); + + if (res.a0) + pr_err("RST_N failed.\n"); +} + static const struct dw_mci_drv_data bluefield_drv_data = { - .set_ios = dw_mci_bluefield_set_ios + .set_ios = dw_mci_bluefield_set_ios, + .hw_reset = dw_mci_bluefield_hw_reset }; static const struct of_device_id dw_mci_bluefield_match[] = {