Received: by 2002:a05:7412:3290:b0:fa:6e18:a558 with SMTP id ev16csp800862rdb; Fri, 26 Jan 2024 11:01:38 -0800 (PST) X-Google-Smtp-Source: AGHT+IE86rKsmrEGbH8nitPF8suy1ukLmTvq457r7qyLmaYb6yvioxt0BoAMdgQHvcC9jiBLl3zB X-Received: by 2002:a05:6a20:8618:b0:19c:8b5b:e647 with SMTP id l24-20020a056a20861800b0019c8b5be647mr140545pze.96.1706295698325; Fri, 26 Jan 2024 11:01:38 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1706295698; cv=pass; d=google.com; s=arc-20160816; b=f7z7L9PzHmeDbEZb+ZKthbTcOPbjZts8IMKtIPW1chGeUl1faCOvvRFc6DLu5I7EO2 5vL30K3OvOMP3huaZo15WiCx87dxErzOzSOTueha8DaVUnWEavzre7tZXeVzMIhQGvAt LbtrlI83XlGAWhSFkI5MVlcneSMFr9m4GwPH05LCEvG5IEgM8m5XqsQ+7rTifYnAALSK ap8p8nA9qV4ldN1k+nje3ejqfgpyPhCP2bpHgp+NbXMtrIo9+O817y0UMibr8J009MVR s0QQnuprReZ6kI3dHvbao19I09oyGuV/zU+E9xpOHF7CcD45Ow9dg/vLeBOQCVENuw82 swBg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:cc:to :from:dkim-signature; bh=NwF79J4QERfbFo+oO9aZ7C3Ltm7a+qI/pEWqX7Hx6fA=; fh=SP2ohPcQqhFv8IQwk3hsvkExFFYPZvL0XjiajCAjjsk=; b=n9lZurr67oj8zsPQeKLc+B71O95oUZ+r0W0+z+LnfvKXVq5ab5IoyaJrbxuKmxXNcd UZ0IQUqIZ2ornLwksmd8To2KOMYVkiytXEAjDsqiwMMDmcfLIgd/nElQ3sMA25SAcvMh 50kSLqMDvrWRYR76S2wERcIXTNeIXXOmSTNHbUg77mbDLmPFWn7XoOdaJuAF8/hYXnpu u4f5RoMOPT+uzLqwMmDa0lDy/trA+jveACKTO1qNsSZeg/wTOFOiEWNFCuJ0wxQkyLar 99MhfQfmD96VCR0tlK/CE3sazi2BdG01cBpwx4GtsHW08ip+gCESnRcdlLjzTTclp/sr b/iQ== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@ti.com header.s=ti-com-17Q1 header.b=hnNMvmH6; arc=pass (i=1 spf=pass spfdomain=ti.com dkim=pass dkdomain=ti.com dmarc=pass fromdomain=ti.com); spf=pass (google.com: domain of linux-kernel+bounces-40538-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) smtp.mailfrom="linux-kernel+bounces-40538-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Return-Path: Received: from sy.mirrors.kernel.org (sy.mirrors.kernel.org. [147.75.48.161]) by mx.google.com with ESMTPS id ck27-20020a056a02091b00b005cdfa5bccacsi1534365pgb.421.2024.01.26.11.01.37 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 26 Jan 2024 11:01:38 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-40538-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) client-ip=147.75.48.161; Authentication-Results: mx.google.com; dkim=pass header.i=@ti.com header.s=ti-com-17Q1 header.b=hnNMvmH6; arc=pass (i=1 spf=pass spfdomain=ti.com dkim=pass dkdomain=ti.com dmarc=pass fromdomain=ti.com); spf=pass (google.com: domain of linux-kernel+bounces-40538-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) smtp.mailfrom="linux-kernel+bounces-40538-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sy.mirrors.kernel.org (Postfix) with ESMTPS id 4122EB2184A for ; Fri, 26 Jan 2024 19:01:34 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id B0033224CA; Fri, 26 Jan 2024 19:01:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ti.com header.i=@ti.com header.b="hnNMvmH6" Received: from lelv0142.ext.ti.com (lelv0142.ext.ti.com [198.47.23.249]) (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 D9A5D21A04; Fri, 26 Jan 2024 19:01:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.47.23.249 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706295685; cv=none; b=FN9OGtKo6IRB3k1Ph/eSRQSKbLGl3oJNi9tghQToS5KUiBCGKleep1HRjTPzkJgNp8L5UheO/wj9bKVNhzYkdhBLEwIjr39Ay17vm/tYVy0js6TM4RRm0/2TM0zMOWFRMD7qOd32f+pfDXpUHhm7ESBYzgN1jJbZQraEvN874CY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706295685; c=relaxed/simple; bh=85dAb/dDmFrF4oFSp1ZL2gDWKRF1dNwmGB3QvaBcPws=; h=From:To:CC:Subject:Date:Message-ID:MIME-Version:Content-Type; b=gpkP7V6jpk0e6Ml0zC+ZXi+PeW0OIXFMt89cTwYDT9NEbf9YA87kee4KDwnTgnPoQ/cIx0GGg8L6kQWXFPctpBcZc3mawA0GOU4Dah9XcqdGFdV1kaiB2QKeBs1ndOYt83pkQNCPpeHDmioWgV7XNoTXGOsfwqLHID1TWIVNYds= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=ti.com; spf=pass smtp.mailfrom=ti.com; dkim=pass (1024-bit key) header.d=ti.com header.i=@ti.com header.b=hnNMvmH6; arc=none smtp.client-ip=198.47.23.249 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=ti.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ti.com Received: from fllv0034.itg.ti.com ([10.64.40.246]) by lelv0142.ext.ti.com (8.15.2/8.15.2) with ESMTP id 40QJ1BIB095643; Fri, 26 Jan 2024 13:01:11 -0600 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1706295671; bh=NwF79J4QERfbFo+oO9aZ7C3Ltm7a+qI/pEWqX7Hx6fA=; h=From:To:CC:Subject:Date; b=hnNMvmH6b8VmM6hHqk57ZfNx9ezkYLMLYZurIy8++gnVII33BgVVTbJ7vjKFUJoWI GWnU6UQ+CWwvzCGZ2SxER5Jwujgdi+/roMWg1DyjV7yApgsv5h3YTkdDYFm7SwWkZp opxSnwqJZ1BKKmArDT0pqK5yTfoB67hrSVa+hHaA= Received: from DLEE113.ent.ti.com (dlee113.ent.ti.com [157.170.170.24]) by fllv0034.itg.ti.com (8.15.2/8.15.2) with ESMTPS id 40QJ1Blh057870 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Fri, 26 Jan 2024 13:01:11 -0600 Received: from DLEE111.ent.ti.com (157.170.170.22) by DLEE113.ent.ti.com (157.170.170.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23; Fri, 26 Jan 2024 13:01:11 -0600 Received: from lelvsmtp6.itg.ti.com (10.180.75.249) by DLEE111.ent.ti.com (157.170.170.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23 via Frontend Transport; Fri, 26 Jan 2024 13:01:11 -0600 Received: from lelvsmtp5.itg.ti.com ([10.249.42.149]) by lelvsmtp6.itg.ti.com (8.15.2/8.15.2) with ESMTP id 40QJ1A8L013671; Fri, 26 Jan 2024 13:01:11 -0600 From: Andrew Davis To: Marek Szyprowski , Ulf Hansson , Yangtao Li CC: , , Andrew Davis Subject: [PATCH] mmc: pwrseq: Use proper reboot notifier path Date: Fri, 26 Jan 2024 13:01:10 -0600 Message-ID: <20240126190110.148599-1-afd@ti.com> X-Mailer: git-send-email 2.39.2 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 This driver registers itself as a reboot handler, which means it claims it can reboot the system. It does this so it is called during the system reboot sequence. The correct way to be notified during the reboot sequence is to register a notifier with register_reboot_notifier(). Do this here. Note this will be called during normal reboots but not emergency reboots. This is the expected behavior, emergency reboot means emergency, not go do some cleanup with emmc pins.. The reboot notifiers are intentionally not called in the emergency path for a reason and working around that by pretending to be a reboot handler is a hack. Signed-off-by: Andrew Davis --- drivers/mmc/core/pwrseq_emmc.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/drivers/mmc/core/pwrseq_emmc.c b/drivers/mmc/core/pwrseq_emmc.c index 3b6d69cefb4eb..d5045fd1a02c1 100644 --- a/drivers/mmc/core/pwrseq_emmc.c +++ b/drivers/mmc/core/pwrseq_emmc.c @@ -70,14 +70,8 @@ static int mmc_pwrseq_emmc_probe(struct platform_device *pdev) return PTR_ERR(pwrseq->reset_gpio); if (!gpiod_cansleep(pwrseq->reset_gpio)) { - /* - * register reset handler to ensure emmc reset also from - * emergency_reboot(), priority 255 is the highest priority - * so it will be executed before any system reboot handler. - */ pwrseq->reset_nb.notifier_call = mmc_pwrseq_emmc_reset_nb; - pwrseq->reset_nb.priority = 255; - register_restart_handler(&pwrseq->reset_nb); + register_reboot_notifier(&pwrseq->reset_nb); } else { dev_notice(dev, "EMMC reset pin tied to a sleepy GPIO driver; reset on emergency-reboot disabled\n"); } -- 2.39.2