From patchwork Thu Mar 6 11:14:39 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Schneider-Pargmann X-Patchwork-Id: 14004280 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id C0EC5C282D1 for ; Thu, 6 Mar 2025 11:28:39 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=AD4+541pvr0AchIZJuu3S8UqRaWJvIBsW2zPu2lnUwQ=; b=KcRJgPMYJIvHuQ3HR4lb3MJqNj 8y5x06suE/PXhHAt5Qhfo4zyxqeoKK6YyZMQuZMV7JjqvjrwtfICB1ksU2djVX3rJmkS1AwrDXZGI QAfdiw0fRb74FgDre8F2IAgo8jABabFVxMH89CZNYhKpUqEXIDYI+GaFT1FYQYPkt4MgMSzGU4t0I aAFnbVqrMhlO5t+UejNHAPsH+NmWyOpUegnCtlZUHQVUd1YoTjRbvhPockfZ5ex2stmvfOO79xBqG HGQMAo2/wZlRloKrqvL3zRGtbetOus8LNACAaiUyNIY9UfywEpxTp4bebcfw3dLVS7TQQo2ibk7qi 5B1gX04g==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tq9Ox-0000000AmSb-2RBm; Thu, 06 Mar 2025 11:28:31 +0000 Received: from mail-ed1-x530.google.com ([2a00:1450:4864:20::530]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tq9Co-0000000AkbD-3yU0 for linux-arm-kernel@lists.infradead.org; Thu, 06 Mar 2025 11:16:00 +0000 Received: by mail-ed1-x530.google.com with SMTP id 4fb4d7f45d1cf-5e535d16180so701973a12.1 for ; Thu, 06 Mar 2025 03:15:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1741259757; x=1741864557; darn=lists.infradead.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=AD4+541pvr0AchIZJuu3S8UqRaWJvIBsW2zPu2lnUwQ=; b=VX+BAVvnMHOaJGi4lJjmgwmb5DmzKEZCmsPsNE1gKJ5RytZABDCYzzY/R9uYKb6hXp SLX5Lr7W01htXQNke3/oX2N5eenlo57YLs1557Baznttc271bgclTv5SuBrLqPFYxx/1 uSPnnqiHAgkYy9b3sVd1Br5y1SDUPAU0R+C5ciCz/vHh9/+KSd/0DRckba49PpiF6vjT KpKngorZ6+9+RK+sOiyz7fFDrmcWoq/tNdK5/W4a4reHLHxokTquSlVsXUtiw4SvlC/A SXi/tTZBcWslsD+ZUT1N3Of8jOqthNfWOapAbf0pU4etFT+8uI3beQQ1LUOI2uZe0gRW 7HOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741259757; x=1741864557; 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=AD4+541pvr0AchIZJuu3S8UqRaWJvIBsW2zPu2lnUwQ=; b=TJ8GkZ6+qLYRK0MCa6XfUs5od38GKdeML/UM+7b0TjkYhT7Mtk/Vv4rAzw2dQnL4Pd GFM84pflk/DFaRlm4NuAoppvV6412nddlCTrs7EN0MarUTswOzhij7C4jcvV+0j3T31B bMsNgqKNU+8yR6HXrQprRuLQjOqZnVVYCDwtKvk9DcnjpkC+K536z2V+h6i9fWGPkFvS RORYA+Vf2sFb8xjNULQatOBJXEYxVEbP2BGUnNO0ea3YBzwahPSnUpotHg18ljCtqEm1 KgZWTk4b36SXhuvPygxHa2Wtx4+D6UTykaOmr2i+brtS5quBV5/nv3CNvQVl0E2eQrE2 FxJw== X-Gm-Message-State: AOJu0YxYDhqapKC447/rVvsonE/nhZOd1hwG8ZJiReGqMY14agkEH8CO PtbwCIfSmGEX2pTSki0izqU01ov3Tdgtwk3/d9t7NFRw/KTUUjLe7fmIwgEM3RTfvF7PBn+kPDB w X-Gm-Gg: ASbGncuFbYPWTn7XGP4pymbJwya3+z32TioGYI/xVVIdI/eRsJP9kUL4XNl7bd2AB+d UbAePtS9gDaZB7IDRb0VuOl6MbsxwBCECnuYT3WrYJUj3qy3H5BnveWohyzJvAPAUIxp1aDGWk2 5oODwqA1orYXSHqraKDccc2NFryADndxsKEfnorygWa6QxgfhMpO5uMpQrOz5+yVkk66J7KaG/q seOfrHx2tLLIwMbJ57vyRrCMEihk13rb1/jy1pJQPewkN+dqID+zIFbC1vlOz61GC/vWC5K076m lXrJagFll2HP1srCmlK5k53JF5dgkbRpC1e8Z+o0sQ== X-Google-Smtp-Source: AGHT+IGakkDRo68IlrFBMJ0rTm6jyQBbovkArr+qu4dyz6/GSFx4+sETc8W/v1I3QTmizbzR3UPY5g== X-Received: by 2002:a05:6402:2712:b0:5de:dfde:c8b1 with SMTP id 4fb4d7f45d1cf-5e59f394cc4mr16158716a12.4.1741259757166; Thu, 06 Mar 2025 03:15:57 -0800 (PST) Received: from localhost ([2001:4091:a245:8327:80ad:8144:3b07:4679]) by smtp.gmail.com with UTF8SMTPSA id 4fb4d7f45d1cf-5e5c766a194sm775352a12.59.2025.03.06.03.15.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 03:15:56 -0800 (PST) From: Markus Schneider-Pargmann Date: Thu, 06 Mar 2025 12:14:39 +0100 Subject: [PATCH v5 01/13] firmware: ti_sci: Support transfers without response MIME-Version: 1.0 Message-Id: <20250306-topic-am62-partialio-v6-12-b4-v5-1-f9323d3744a2@baylibre.com> References: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> In-Reply-To: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> To: Nishanth Menon , Tero Kristo , Santosh Shilimkar , Vignesh Raghavendra , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Anand Gadiyar , Chandrasekar Ramakrishnan , Marc Kleine-Budde , Vincent Mailhol Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Vishal Mahaveer , Kevin Hilman , Dhruva Gole , Akashdeep Kaur , Kendall Willis , linux-can@vger.kernel.org, Markus Schneider-Pargmann X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1642; i=msp@baylibre.com; h=from:subject:message-id; bh=oOMPzH4LdaksoCbIxuNdPeXLXt+dMP0qmI97tgFNQuY=; b=owGbwMvMwCGm0rPl0RXRdfaMp9WSGNJPNq9bO/exe8L37NsnKybG2lxeyBZxyt1PWpP5WPyCw sBnG1lXdpSyMIhxMMiKKbLc/bDwXZ3c9QUR6x45wsxhZQIZwsDFKQATsYhkZJj917mXS//svgkX eSRMP2mwhD8SMjryb9pKueW1zZxa728z/OH+qnz2WYBp1+SuFXzcET63pbX/H5ga+r7FvmRlhv1 ZIXYA X-Developer-Key: i=msp@baylibre.com; a=openpgp; fpr=BADD88DB889FDC3E8A3D5FE612FA6A01E0A45B41 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250306_031559_020830_A11689F2 X-CRM114-Status: GOOD ( 15.34 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Check the header flags if an response is expected or not. If it is not expected skip the receive part of ti_sci_do_xfer(). This prepares the driver for one-way messages as prepare_sleep for Partial-IO. Signed-off-by: Markus Schneider-Pargmann --- drivers/firmware/ti_sci.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/firmware/ti_sci.c b/drivers/firmware/ti_sci.c index 806a975fff22ae00ecb88587b2c47ba172120bc2..09d11e75e14e6a6a82f6d99ab1852c142aeb7e5f 100644 --- a/drivers/firmware/ti_sci.c +++ b/drivers/firmware/ti_sci.c @@ -398,6 +398,9 @@ static void ti_sci_put_one_xfer(struct ti_sci_xfers_info *minfo, static inline int ti_sci_do_xfer(struct ti_sci_info *info, struct ti_sci_xfer *xfer) { + struct ti_sci_msg_hdr *hdr = (struct ti_sci_msg_hdr *)xfer->tx_message.buf; + bool response_expected = !!(hdr->flags & (TI_SCI_FLAG_REQ_ACK_ON_PROCESSED | + TI_SCI_FLAG_REQ_ACK_ON_RECEIVED)); int ret; int timeout; struct device *dev = info->dev; @@ -409,12 +412,12 @@ static inline int ti_sci_do_xfer(struct ti_sci_info *info, ret = 0; - if (system_state <= SYSTEM_RUNNING) { + if (response_expected && system_state <= SYSTEM_RUNNING) { /* And we wait for the response. */ timeout = msecs_to_jiffies(info->desc->max_rx_timeout_ms); if (!wait_for_completion_timeout(&xfer->done, timeout)) ret = -ETIMEDOUT; - } else { + } else if (response_expected) { /* * If we are !running, we cannot use wait_for_completion_timeout * during noirq phase, so we must manually poll the completion. From patchwork Thu Mar 6 11:14:40 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Schneider-Pargmann X-Patchwork-Id: 14004281 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id AA654C282D1 for ; Thu, 6 Mar 2025 11:30:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=xVEl7GGxVsvJAydmpEAK0z7cXYry+D3ir8zQb7r/A3k=; b=lmvlhV4Aqn7xaDBjS2B1Y7FFOX 3ay7QVdDD5dYbNosT32X52y4T1d2yZa6BNwvW4t3VBYVKdsIeJfHaIAUPNi32WpzArlMtDK4+7m1R g0EGR8e8CttkJ2xv4rR3D5fCPJRKWIDIaHC6MlPmGpmQkOcn5kWl6YiRsWRUzj4tSXfRi3l8LsYiJ j4f0t7N5NxF9Pum1PgIZT1h6Mb8l+SCkIQrHiu3BLbNCQxUE/3rlGKyd1JauNlld7nFCQ4/VehIin ieIO79TXPYr4R67eWw3wNHkSCa/c4HYQPXhrUJpWxZb/YFshLpOrtJpukNhowP9yEBn9EkuBgdibt cKggvpJw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tq9QW-0000000Amav-1BrC; Thu, 06 Mar 2025 11:30:08 +0000 Received: from mail-ej1-x62c.google.com ([2a00:1450:4864:20::62c]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tq9Cq-0000000Akbd-1Ucu for linux-arm-kernel@lists.infradead.org; Thu, 06 Mar 2025 11:16:01 +0000 Received: by mail-ej1-x62c.google.com with SMTP id a640c23a62f3a-abf45d8db04so77391266b.1 for ; Thu, 06 Mar 2025 03:15:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1741259759; x=1741864559; darn=lists.infradead.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=xVEl7GGxVsvJAydmpEAK0z7cXYry+D3ir8zQb7r/A3k=; b=NkNEFx5f0ueMCKTAQ4CkZ79z/aE6/tvZ83fWsDa75DvHAkgdxgl0Rc9n5QKHgd3kgw sduaOzz/TcONdzf1GIX2kygqfrsqa0eJG5pJeApv7EGwBZR5Yz7yHtdDBhy3VmUUVL5P yuRZOOtPe3bEOeyIXF9uqOuLX8Ur3W2syaO465Sh0Ob84q97QpSBkAY8/p8txBkJoMLk g2LHMPfHpDtN1/8GV/KpIrHtgb2WKYPxnmQ6m3ePBK3ptgzFpM7spnR0FDc62ptbaYQQ l6BryT+C4UXP43JASEz0L/UpiqEyDgskMkGK1y7ka/i3D51fH3VvNG1efw+EzXEaa/tc r67w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741259759; x=1741864559; 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=xVEl7GGxVsvJAydmpEAK0z7cXYry+D3ir8zQb7r/A3k=; b=b57HTo4CQaA/sOuZBMWrY1SRGg1hwXSR4ecaQi088ZDLw0gYSMXJ5Tfitdhs/JThqE P4eUJoskqO4xTMu7ODiLyXUpjVNlQUowtMemNsPgwJ2Q6fTZNwvwjA88nWSMVqQ9lANF tZMBt2pBRjMsWBeOvsTa3DkhMJ7C2Gf1JOMBf+Qjm6grV5cjSwpeO73OSUnsKgzcE6dT 2G/nuvNC7dOgErezSuUTCFHf2QTwLmHemU39lU9v+8cJwkIwTVffORTQJHQhOC6zXwaa w1CumfaqC0I+AVeuNGrJb3Yl36KzLckkaAFS/SciESm1x4dL8Z7I7GK+nQOom/Po6SSg myvA== X-Gm-Message-State: AOJu0YxBVriPY1AqGAubhjdxLyRNLGq9M3b5jEOIhgilIGjSk+3SQWDU sPNgJC6ddZbjUyEKF2mQrkC2TbJ4LQFzVHRG4yW++M7we3jaaIDjoXD+d7LbZAWGfSfY305661p Q X-Gm-Gg: ASbGnctLJeAmVqYLeO1KE/xAAJxdwGL+KL6bGN/gfmsiNJGsSCIpVWX7qDpF6XcF2lB nl/ICKJ0rCgjoVr3ucnLPN230dSIKHS+KHrkWkALq7vKwIAHHjPygW6kgDTjonGaWr2IKxG8cbW ZTOCxiZBueiQtqjBtB2VM4bmUV7sichPkNX3avzaVZySt1mOaUtr3HhDc1bS83QiAV+gw0szl7D +WF6+w+VQo8X/vfrBRSLydkjxjHCntBV0M0LWRPUdOOFi3i98wXCyQh5Zw+jR7Rch1SRWiF3gm+ bebZExRerxJgsJFNgEH00kfqFAVhxOovHEm5L/34Gg== X-Google-Smtp-Source: AGHT+IF3a3lHfhfzXs+A5h2hqn+LCqXVZ/19bMhntk0ZUTM1sIl49L5vTk6C51T88uqw26ghNIwGUw== X-Received: by 2002:a17:907:388b:b0:ac1:d878:f877 with SMTP id a640c23a62f3a-ac20dafe79cmr723201666b.49.1741259758456; Thu, 06 Mar 2025 03:15:58 -0800 (PST) Received: from localhost ([2001:4091:a245:8327:80ad:8144:3b07:4679]) by smtp.gmail.com with UTF8SMTPSA id a640c23a62f3a-ac239481685sm80632766b.58.2025.03.06.03.15.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 03:15:58 -0800 (PST) From: Markus Schneider-Pargmann Date: Thu, 06 Mar 2025 12:14:40 +0100 Subject: [PATCH v5 02/13] firmware: ti_sci: Partial-IO support MIME-Version: 1.0 Message-Id: <20250306-topic-am62-partialio-v6-12-b4-v5-2-f9323d3744a2@baylibre.com> References: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> In-Reply-To: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> To: Nishanth Menon , Tero Kristo , Santosh Shilimkar , Vignesh Raghavendra , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Anand Gadiyar , Chandrasekar Ramakrishnan , Marc Kleine-Budde , Vincent Mailhol Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Vishal Mahaveer , Kevin Hilman , Dhruva Gole , Akashdeep Kaur , Kendall Willis , linux-can@vger.kernel.org, Markus Schneider-Pargmann X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=6749; i=msp@baylibre.com; h=from:subject:message-id; bh=MCR8mlvD+LHlMEDeTvlAn1OwnFD8ckM/crgbFzyaGVA=; b=owGbwMvMwCGm0rPl0RXRdfaMp9WSGNJPNm+++XbfPBn+sy/Ws3dYFvO8jai5cWtJzOGfKfafT l8L/neAraOUhUGMg0FWTJHl7oeF7+rkri+IWPfIEWYOKxPIEAYuTgGYyBUGRobFLZYHpb+/Ml52 9Mq2kkx2E+G/Il4b//7MuOMtk/h93+UfDP8rpvWvMvF4w+S5eYphollgrvuKwv4k1jjF4P01LNv EXrMCAA== X-Developer-Key: i=msp@baylibre.com; a=openpgp; fpr=BADD88DB889FDC3E8A3D5FE612FA6A01E0A45B41 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250306_031600_401873_0CC81AE8 X-CRM114-Status: GOOD ( 26.73 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Add support for Partial-IO poweroff. In Partial-IO pins of a few hardware units can generate system wakeups while DDR memory is not powered resulting in a fresh boot of the system. These hardware units in the SoC are always powered so that some logic can detect pin activity. If the system supports Partial-IO as described in the fw capabilities, a sys_off handler is added. This sys_off handler decides if the poweroff is executed by entering normal poweroff or Partial-IO instead. The decision is made by checking if wakeup is enabled on all devices that may wake up the SoC from Partial-IO. The possible wakeup devices are found by checking which devices reference a "Partial-IO" system state in the list of wakeup-source system states. Only devices that are actually enabled by the user will be considered as an active wakeup source. If none of the wakeup sources is enabled the system will do a normal poweroff. If at least one wakeup source is enabled it will instead send a TI_SCI_MSG_PREPARE_SLEEP message from the sys_off handler. Sending this message will result in an immediate shutdown of the system. No execution is expected after this point. The code will wait for 5s and do an emergency_restart afterwards if Partial-IO wasn't entered at that point. A short documentation about Partial-IO can be found in section 6.2.4.5 of the TRM at https://www.ti.com/lit/pdf/spruiv7 Signed-off-by: Markus Schneider-Pargmann --- drivers/firmware/ti_sci.c | 127 +++++++++++++++++++++++++++++++++++++++++++++- drivers/firmware/ti_sci.h | 5 ++ 2 files changed, 131 insertions(+), 1 deletion(-) diff --git a/drivers/firmware/ti_sci.c b/drivers/firmware/ti_sci.c index 09d11e75e14e6a6a82f6d99ab1852c142aeb7e5f..a4b7869134779c58f4ef381a940455dea1f86153 100644 --- a/drivers/firmware/ti_sci.c +++ b/drivers/firmware/ti_sci.c @@ -6,6 +6,7 @@ * Nishanth Menon */ +#include "linux/stddef.h" #define pr_fmt(fmt) "%s: " fmt, __func__ #include @@ -3742,6 +3743,111 @@ static const struct dev_pm_ops ti_sci_pm_ops = { #endif }; +/* + * Enter Partial-IO, which disables everything including DDR with only a small + * logic being active for wakeup. + */ +static int ti_sci_enter_partial_io(struct ti_sci_info *info) +{ + struct ti_sci_msg_req_prepare_sleep *req; + struct ti_sci_xfer *xfer; + struct device *dev = info->dev; + int ret = 0; + + xfer = ti_sci_get_one_xfer(info, TI_SCI_MSG_PREPARE_SLEEP, + TI_SCI_FLAG_REQ_GENERIC_NORESPONSE, + sizeof(*req), sizeof(struct ti_sci_msg_hdr)); + if (IS_ERR(xfer)) { + ret = PTR_ERR(xfer); + dev_err(dev, "Message alloc failed(%d)\n", ret); + return ret; + } + + req = (struct ti_sci_msg_req_prepare_sleep *)xfer->xfer_buf; + req->mode = TISCI_MSG_VALUE_SLEEP_MODE_PARTIAL_IO; + req->ctx_lo = 0; + req->ctx_hi = 0; + req->debug_flags = 0; + + dev_info(dev, "Entering Partial-IO because a powered wakeup-enabled device was found.\n"); + + ret = ti_sci_do_xfer(info, xfer); + if (ret) { + dev_err(dev, "Mbox send fail %d\n", ret); + goto fail; + } + +fail: + ti_sci_put_one_xfer(&info->minfo, xfer); + + return ret; +} + +/* + * Iterate all device nodes that have a wakeup-source property and check if one + * of the possible phandles points to a Partial-IO system state. If it + * does resolve the device node to an actual device and check if wakeup is + * enabled. + */ +static bool ti_sci_partial_io_wakeup_enabled(struct ti_sci_info *info) +{ + struct device_node *wakeup_node = NULL; + + for_each_node_with_property(wakeup_node, "wakeup-source") { + struct of_phandle_iterator it; + int err; + + of_for_each_phandle(&it, err, wakeup_node, "wakeup-source", NULL, 0) { + struct platform_device *pdev; + bool may_wakeup; + + if (of_property_match_string(it.node, "idle-state-name", "Partial-IO")) + continue; + + pdev = of_find_device_by_node(wakeup_node); + if (!pdev) + continue; + + may_wakeup = device_may_wakeup(&pdev->dev); + put_device(&pdev->dev); + + if (may_wakeup) { + dev_dbg(info->dev, "%pOF identified as wakeup source for Partial-IO\n", + wakeup_node); + of_node_put(it.node); + of_node_put(wakeup_node); + return true; + } + } + } + + return false; +} + +static int ti_sci_sys_off_handler(struct sys_off_data *data) +{ + struct ti_sci_info *info = data->cb_data; + bool enter_partial_io = ti_sci_partial_io_wakeup_enabled(info); + int ret; + + if (!enter_partial_io) + return NOTIFY_DONE; + + ret = ti_sci_enter_partial_io(info); + + if (ret) { + dev_err(info->dev, + "Failed to enter Partial-IO %pe, trying to do an emergency restart\n", + ERR_PTR(ret)); + emergency_restart(); + } + + mdelay(5000); + emergency_restart(); + + return NOTIFY_DONE; +} + /* Description for K2G */ static const struct ti_sci_desc ti_sci_pmmc_k2g_desc = { .default_host_id = 2, @@ -3885,6 +3991,19 @@ static int ti_sci_probe(struct platform_device *pdev) goto out; } + if (info->fw_caps & MSG_FLAG_CAPS_LPM_PARTIAL_IO) { + ret = devm_register_sys_off_handler(dev, + SYS_OFF_MODE_POWER_OFF, + SYS_OFF_PRIO_FIRMWARE, + ti_sci_sys_off_handler, + info); + if (ret) { + dev_err(dev, "Failed to register sys_off_handler %pe\n", + ERR_PTR(ret)); + goto out; + } + } + dev_info(dev, "ABI: %d.%d (firmware rev 0x%04x '%s')\n", info->handle.version.abi_major, info->handle.version.abi_minor, info->handle.version.firmware_revision, @@ -3894,7 +4013,13 @@ static int ti_sci_probe(struct platform_device *pdev) list_add_tail(&info->node, &ti_sci_list); mutex_unlock(&ti_sci_list_mutex); - return of_platform_populate(dev->of_node, NULL, NULL, dev); + ret = of_platform_populate(dev->of_node, NULL, NULL, dev); + if (ret) { + dev_err(dev, "platform_populate failed %pe\n", ERR_PTR(ret)); + goto out; + } + return 0; + out: if (!IS_ERR(info->chan_tx)) mbox_free_channel(info->chan_tx); diff --git a/drivers/firmware/ti_sci.h b/drivers/firmware/ti_sci.h index 053387d7baa064498e6a208daa7f70040ef87281..dec9e20cbe5da8f6d9393d56bb9a1e73cb083a42 100644 --- a/drivers/firmware/ti_sci.h +++ b/drivers/firmware/ti_sci.h @@ -592,6 +592,11 @@ struct ti_sci_msg_resp_get_clock_freq { struct ti_sci_msg_req_prepare_sleep { struct ti_sci_msg_hdr hdr; +/* + * When sending perpare_sleep with MODE_PARTIAL_IO no response will be sent, + * no further steps are required. + */ +#define TISCI_MSG_VALUE_SLEEP_MODE_PARTIAL_IO 0x03 #define TISCI_MSG_VALUE_SLEEP_MODE_DM_MANAGED 0xfd u8 mode; u32 ctx_lo; From patchwork Thu Mar 6 11:14:41 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Schneider-Pargmann X-Patchwork-Id: 14004411 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 76D13C282EC for ; Thu, 6 Mar 2025 12:34:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=AuN0/pwTHZ9vhnZKyENKczH8fXv0gjKVeEKQIoqI9qs=; b=SXRZTE7n5O9hWLtE7HmIaXu7oM ugmevEyH85pDdNEcwhF4rXGytO3CBjSS+s7GgxkjZMGyT8DDpWpqyit8/tfJxAdgPcV6wsutH87Hk 00fP7ZyZtcxloOKupPS/CJR89cw4nMRtmx8AaqvI0/HOtS8CgUVslHxsz2/yUAXFS0MZeP6W5+Yo9 LyK59Olccb/Ulx7RZMcQvPHtyX1QZzL4ejg0USvGSnVXtNjM5Nn6vFdLGTMdxzvrxsS484aLVX+iF RnN1EtmM9ZDLUuyNX/tmcptoUAtTnH4vmiy8NPMXbymcexCUD0Tj2RSxdKW4DO59momG4iYSl07Qq C1/S8vdw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tqAQJ-0000000AvnK-1VJI; Thu, 06 Mar 2025 12:33:59 +0000 Received: from mail-wm1-x32a.google.com ([2a00:1450:4864:20::32a]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tq9Cr-0000000Akc6-1cug for linux-arm-kernel@lists.infradead.org; Thu, 06 Mar 2025 11:16:02 +0000 Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-43bc4b16135so2966365e9.1 for ; Thu, 06 Mar 2025 03:16:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1741259760; x=1741864560; darn=lists.infradead.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=AuN0/pwTHZ9vhnZKyENKczH8fXv0gjKVeEKQIoqI9qs=; b=BnY3kWn5jeLsYMABpo4Zmb4sC0L5I+QMQwD9aRjA/bN5ktBOF3Vz6X039g/m6PU3Af yUzOnx0jW1M6ZHkUPvt8W9DD3lyxL71juIcYIvmv7wuQapXG6FTfCsjA81W1g/OUth4S ad7o4q3VljH+wDALviX/YfrSDSAKM1zy0Dlcb0FsKb7a0OMraKIhPkL2oE6DKLhD8eM+ dMZRwXmEKQOObVAZjwCqeaIlDmc7RnzDihkwYek8yPugE7oyBqwjcscMg2Y5AM8UftUI ZPbp5FveBxEfnOCcxtVr+lV5img8jEIZZEabUUscxORRki9f30bpJY4/AiypYYJNNFXg 3w5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741259760; x=1741864560; 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=AuN0/pwTHZ9vhnZKyENKczH8fXv0gjKVeEKQIoqI9qs=; b=rljXTaTNpotw4PwxKclyOanoP49SDbeqlU9lCMNesqgtTWuL3kBNzPV2ghASYPl7QX MRf8mKXNGVOj0SXvFIrWbVYlqj9bLowkxrXpcm9AlP2bfxf6Nf9WA3K6K6DwhuTtzdaC Ea6JvqTbjmavjQnKquT1x/Hr+wsD8HFQBzMcGMULYwiLg8NFna/XNu8U4qA0MbTm2ktu wwm/nHywR+C7cl0flyzxavD4tgtTS+kblrQoUBNhkCTvOovLJek4lj1LngnX43IwrAbJ enf7r8+xrLXpWpHNkTALcsta//o6s32bi0+zYx/f+7byrW1oJM0tn20gE0Ax4mIhov0e umkg== X-Gm-Message-State: AOJu0YxazNptnwfudRODCgda4hItI6YGbI5ZqtYjH29+qHc5X55fLU/O pSlfMtRUMs4pI7E+vuJzzchu7Bq1NkeWeD838TGUQZeSk4IP4O/Jy265efnAXdmsRosNlg0YeM9 4 X-Gm-Gg: ASbGncuk7iYwhMbFk484oCqtnnQkiqu0qO7x2GKaL7DpYLdaE6sxOx1QEFADFKAWfUX F2PmDrVifSNJ0pwY+jS6mJ0JogZIiQtIm7erhmNFi46ESau9tV4tkG2q4T0geL2MDDvzTJo9i5P znFwuu+brN9p2Xbwt8qQVKGF0NkP8M9hLQkY2cp8W9CjWFAHrdU1rrkeUB7OM04MsxGUQKnj2AD fxu6Nj64qIyVWEMz+ZRg4P1hZ+EeTbVafQNOJr7/GHRP7MeRGzpR4nxGzGWEHA+5x2IV9jmH/AS eC/KmzDQ8XvEAwZ+M8KkgO3CMu+sMMHHFkyscMVVlg== X-Google-Smtp-Source: AGHT+IEfL0NWZoLLWRUTFCp+4DpyOhfP6ZpCXD8lXd7n6hvyRmuTOarjAISZof3JEfKOs/w46sjnwA== X-Received: by 2002:a5d:6c6f:0:b0:391:2e7:6811 with SMTP id ffacd0b85a97d-3911f7404b0mr5947283f8f.14.1741259759759; Thu, 06 Mar 2025 03:15:59 -0800 (PST) Received: from localhost ([2001:4091:a245:8327:80ad:8144:3b07:4679]) by smtp.gmail.com with UTF8SMTPSA id 4fb4d7f45d1cf-5e5c768f213sm784211a12.74.2025.03.06.03.15.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 03:15:59 -0800 (PST) From: Markus Schneider-Pargmann Date: Thu, 06 Mar 2025 12:14:41 +0100 Subject: [PATCH v5 03/13] dt-bindings: can: m_can: Add wakeup properties MIME-Version: 1.0 Message-Id: <20250306-topic-am62-partialio-v6-12-b4-v5-3-f9323d3744a2@baylibre.com> References: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> In-Reply-To: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> To: Nishanth Menon , Tero Kristo , Santosh Shilimkar , Vignesh Raghavendra , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Anand Gadiyar , Chandrasekar Ramakrishnan , Marc Kleine-Budde , Vincent Mailhol Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Vishal Mahaveer , Kevin Hilman , Dhruva Gole , Akashdeep Kaur , Kendall Willis , linux-can@vger.kernel.org, Markus Schneider-Pargmann X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1648; i=msp@baylibre.com; h=from:subject:message-id; bh=MfFZLvNgPjqf41DYixOzP+LujWeubVPB6G1Uw3Qe6a8=; b=owGbwMvMwCGm0rPl0RXRdfaMp9WSGNJPNm9X+56w2K1+/c7Ce/Gfi6IMU0XDit/e/J73zXtzp W5s6zTmjlIWBjEOBlkxRZa7Hxa+q5O7viBi3SNHmDmsTCBDGLg4BWAi1SWMDJ/1uafnP3n+07y1 66coo+WxvoOrREtrviwpnH+vqGLmqkZGhhNuT4pTtrVatqdxV/z9eJT7rnO1YN/Tkwsd4/VS7u/ U4gYA X-Developer-Key: i=msp@baylibre.com; a=openpgp; fpr=BADD88DB889FDC3E8A3D5FE612FA6A01E0A45B41 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250306_031601_429362_D152747A X-CRM114-Status: GOOD ( 11.25 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The pins associated with m_can have to have a special configuration to be able to wakeup the SoC from some system states. This configuration is described in the wakeup pinctrl state while the default state describes the default configuration. Also m_can can be a wakeup-source if capable of wakeup. Signed-off-by: Markus Schneider-Pargmann --- .../devicetree/bindings/net/can/bosch,m_can.yaml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml b/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml index c4887522e8fe97c3947357b4dbd4ecf20ee8100a..0c1f9fa7371897d45539ead49c9d290fb4966f30 100644 --- a/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml +++ b/Documentation/devicetree/bindings/net/can/bosch,m_can.yaml @@ -106,6 +106,22 @@ properties: maximum: 32 minItems: 1 + pinctrl-0: + description: Default pinctrl state + + pinctrl-1: + description: Wakeup pinctrl state + + pinctrl-names: + description: + When present should contain at least "default" describing the default pin + states. The second state called "wakeup" describes the pins in their + wakeup configuration required to exit sleep states. + minItems: 1 + items: + - const: default + - const: wakeup + power-domains: description: Power domain provider node and an args specifier containing @@ -122,6 +138,8 @@ properties: minItems: 1 maxItems: 2 + wakeup-source: true + required: - compatible - reg From patchwork Thu Mar 6 11:14:42 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Schneider-Pargmann X-Patchwork-Id: 14004331 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 60CEBC282EC for ; Thu, 6 Mar 2025 11:33:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=pdijOc5dVyPkLnBD7Iga0l5uZDGm1/4dYkDZG2K3euU=; b=rELWSaLa3K/88ydkYEUgpNwP+v Hr9uFz20NAu8KpSwdbL4hLd07OHisdIptRW1S5+jtBixx0T2rSliISFvVQrPUshENtRBCZvyePBVN bbismwYHQIYhMyETQd+KFSxUw1myLLGag9z4M9+WTSSWFZBsu4u69ff2RLFYdvI1XDCmaNNzrtvSc CLmp4loR7dUw1deo7SizoPqUy4epg8wJ/C79gMiNommS8B2T02s3qaEFDf7f0BZVnAQHjLzLdnlf7 zcKssXhSMdI3QAAkHzaJ47ZGdY6zfZPatbK7efs3NzWdmv0bW+yjNBsV/ZJo6ih/wElQhwglT3M+C LYFmjbiA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tq9Tg-0000000AnC7-11JH; Thu, 06 Mar 2025 11:33:24 +0000 Received: from mail-ed1-x52f.google.com ([2a00:1450:4864:20::52f]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tq9Cs-0000000AkcQ-32LN for linux-arm-kernel@lists.infradead.org; Thu, 06 Mar 2025 11:16:03 +0000 Received: by mail-ed1-x52f.google.com with SMTP id 4fb4d7f45d1cf-5e04cb346eeso800590a12.2 for ; Thu, 06 Mar 2025 03:16:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1741259761; x=1741864561; darn=lists.infradead.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=pdijOc5dVyPkLnBD7Iga0l5uZDGm1/4dYkDZG2K3euU=; b=bSPDvxIKhx2tPjnh5dWHR44TlRpRVAhqu7uOaNnZ2QXHTxw0zoHLNm/QgpoZrMpKWs fkzrle/HTOZH5M0p7SFH09cAzM9rGkaghjgsWj49sLAbgV6t8NJzlMpKtsX7XIHgpPsY 6pBER+3YBIp/HP/Nh90vN5MdYRYgIh1wWhbd6bmU8hGQ/utcl03xrAg34BPyKF7mZWnv VeOqsHjyeIX6L0+w8nUmOAl5oh9sHXZDuZCljiAxb10UTc2zF8zpLenr1DT/NRBrjxYe +aFSIJeTm+JXTtdeqqfQueJBJcM78mJVnBR46qeCB+Aczbgj4lF0tOkuT6x4/5OunVBZ g6nw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741259761; x=1741864561; 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=pdijOc5dVyPkLnBD7Iga0l5uZDGm1/4dYkDZG2K3euU=; b=AqpHeKsfb+5FEuP8p8WN/8rhAUI8COITjGOy9YbODFyTEtXXdSfbQmv5sRGw3w0QqK 1STYMwSbsFmCF2I4NCC0wdDcAmqHteB3ql6msT2BOvKI6pgFkGad01owWmygs6PamvEv +lV2NvRX2IXXdlGR9JyMoV3VkT5N4ORr25yVa4xAJhCtwEAToT23CZOjCi9gsRuEfxIU rX/7h3Flm3H1rCPiywOtQYGDAW1QWlaVPXkpaBFIfKK+S+a3SdNqtj79Rc4EjtSMUP8+ mk2+tLr7nndfZqkwH78ywmSppI6hcd5ET2K+cz2LQU9mkltu6o4a1+Vl06Ba+sjpD3HR xVhw== X-Gm-Message-State: AOJu0YzMIj/y2XwmbIj9242ZbP68309XK3W3kaLRGvQhEhG3AGX+ZE39 b37H6pYrouq/v1QgZwuYaZco0Q8gayXmHKhXn6P6E3yAwafw8IA2EJiU7ibY6FcuDD1BwWtf51M + X-Gm-Gg: ASbGncuRFXRLjWejtb8VMuDvhB/cDcw0z25EHIzIXmnetWmFbTA/dWlc9sehtpjcsTV EadhhYGJlDg0bVus8hP4fqVWxBLEuBWedkBb+jpw2FUdaB8/HcjFH9df/zwoAZ0pVMidKwz6EX/ XL2lHWxg7a99OCCPLi6JPQdT6YxX0+XbuNDHPMl6U/3JKHN34r3GrlpoqFUX0/avdTDJscBEYXA wzQzuvUPQIu3P4d2AnJTjcLVJ+J6KnQ47/cQzJM88SPWJWCGr+SsUV8DfEDJ60PuAM85f2GnZOw w+zkmyIeCQ9oqt3LQtU9/3NGB4MTW7ZRNr0c+pYBWw== X-Google-Smtp-Source: AGHT+IGT909TTpj4sMO2JU0Dy2HjA8tPPk0SlL6fRutxRSMRwZg7sd5DwRusv2QlmHcpjyVexkMgSg== X-Received: by 2002:a17:907:8b97:b0:abf:7a26:c478 with SMTP id a640c23a62f3a-ac20e1db237mr697110766b.47.1741259760981; Thu, 06 Mar 2025 03:16:00 -0800 (PST) Received: from localhost ([2001:4091:a245:8327:80ad:8144:3b07:4679]) by smtp.gmail.com with UTF8SMTPSA id a640c23a62f3a-ac239485558sm79821566b.60.2025.03.06.03.16.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 03:16:00 -0800 (PST) From: Markus Schneider-Pargmann Date: Thu, 06 Mar 2025 12:14:42 +0100 Subject: [PATCH v5 04/13] can: m_can: Map WoL to device_set_wakeup_enable MIME-Version: 1.0 Message-Id: <20250306-topic-am62-partialio-v6-12-b4-v5-4-f9323d3744a2@baylibre.com> References: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> In-Reply-To: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> To: Nishanth Menon , Tero Kristo , Santosh Shilimkar , Vignesh Raghavendra , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Anand Gadiyar , Chandrasekar Ramakrishnan , Marc Kleine-Budde , Vincent Mailhol Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Vishal Mahaveer , Kevin Hilman , Dhruva Gole , Akashdeep Kaur , Kendall Willis , linux-can@vger.kernel.org, Markus Schneider-Pargmann X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2839; i=msp@baylibre.com; h=from:subject:message-id; bh=J4VG8tXwefIVHGZH1+PCdV86BOTtS1uR46bTjNwL+bw=; b=owGbwMvMwCGm0rPl0RXRdfaMp9WSGNJPNu9es/H//VpZJaPYRWYtm6pvLfN5U8DyZPfjnamJi kwXfdVdO0pZGMQ4GGTFFFnuflj4rk7u+oKIdY8cYeawMoEMYeDiFICJnDnCyPDv/MklPmWTlJpC /kmkOvke767d7HFGblvMdNnQjNc1YQqMDLfnsSu2abnr9t7jt/MxEJv0a8XSqHuHuw1Pzvr7z7Z qNRsA X-Developer-Key: i=msp@baylibre.com; a=openpgp; fpr=BADD88DB889FDC3E8A3D5FE612FA6A01E0A45B41 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250306_031602_782247_EDE7196E X-CRM114-Status: GOOD ( 16.97 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org In some devices the pins of the m_can module can act as a wakeup source. This patch helps do that by connecting the PHY_WAKE WoL option to device_set_wakeup_enable. By marking this device as being wakeup enabled, this setting can be used by platform code to decide which sleep or poweroff mode to use. Also this prepares the driver for the next patch in which the pinctrl settings are changed depending on the desired wakeup source. Reviewed-by: Vincent Mailhol Signed-off-by: Markus Schneider-Pargmann --- drivers/net/can/m_can/m_can.c | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/drivers/net/can/m_can/m_can.c b/drivers/net/can/m_can/m_can.c index 884a6352c42b7bc372c55a6be19ca9fcb15d3d63..20f7533ad9e7735013ff000e6f3b11d016f8a09f 100644 --- a/drivers/net/can/m_can/m_can.c +++ b/drivers/net/can/m_can/m_can.c @@ -2222,6 +2222,36 @@ static int m_can_set_coalesce(struct net_device *dev, return 0; } +static void m_can_get_wol(struct net_device *dev, struct ethtool_wolinfo *wol) +{ + struct m_can_classdev *cdev = netdev_priv(dev); + + wol->supported = device_can_wakeup(cdev->dev) ? WAKE_PHY : 0; + wol->wolopts = device_may_wakeup(cdev->dev) ? WAKE_PHY : 0; +} + +static int m_can_set_wol(struct net_device *dev, struct ethtool_wolinfo *wol) +{ + struct m_can_classdev *cdev = netdev_priv(dev); + bool wol_enable = !!(wol->wolopts & WAKE_PHY); + int ret; + + if (wol->wolopts & ~WAKE_PHY) + return -EINVAL; + + if (wol_enable == device_may_wakeup(cdev->dev)) + return 0; + + ret = device_set_wakeup_enable(cdev->dev, wol_enable); + if (ret) { + netdev_err(cdev->net, "Failed to set wakeup enable %pE\n", + ERR_PTR(ret)); + return ret; + } + + return 0; +} + static const struct ethtool_ops m_can_ethtool_ops_coalescing = { .supported_coalesce_params = ETHTOOL_COALESCE_RX_USECS_IRQ | ETHTOOL_COALESCE_RX_MAX_FRAMES_IRQ | @@ -2231,10 +2261,14 @@ static const struct ethtool_ops m_can_ethtool_ops_coalescing = { .get_ts_info = ethtool_op_get_ts_info, .get_coalesce = m_can_get_coalesce, .set_coalesce = m_can_set_coalesce, + .get_wol = m_can_get_wol, + .set_wol = m_can_set_wol, }; static const struct ethtool_ops m_can_ethtool_ops = { .get_ts_info = ethtool_op_get_ts_info, + .get_wol = m_can_get_wol, + .set_wol = m_can_set_wol, }; static int register_m_can_dev(struct m_can_classdev *cdev) @@ -2361,6 +2395,9 @@ struct m_can_classdev *m_can_class_allocate_dev(struct device *dev, goto out; } + if (dev->of_node && of_property_read_bool(dev->of_node, "wakeup-source")) + device_set_wakeup_capable(dev, true); + /* Get TX FIFO size * Defines the total amount of echo buffers for loopback */ From patchwork Thu Mar 6 11:14:43 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Schneider-Pargmann X-Patchwork-Id: 14004332 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 84F61C282D1 for ; Thu, 6 Mar 2025 11:35:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=nKABIWtcV5iN1s5ZB+QKBynZqHqAumHFyPcKwtZx728=; b=XukI716Oq2CLN3FCzBoKmgr/a/ Hf/m1agtWTqChm46eCY/wmixLH+S+p+i5Ropn1k+DPzqSccKscdyFiTgyPVayt1UlXkVM5wXBrjlW ewMTRNSx9SR/9GaD2Lswvho2avhTJxPk9MaCRaoz5c4nDmQJVqCGlBfFR7vvYBBp7i7ew8uKqroJa eZPAQW3X+sEljh0XmigJdAiQJtFrAMCBWrt/EPDqgLWmLYhwgkQyJmVeGjBublwhDm/EfEFFiJmzN Jc5pS24IHncurQh9WhbHvLPE3jDj6p7ZnIWm9z/KeRoa/zQHUNGZV8xCJUoXO02Ajk6fuWfbI9j7V wTJi+84A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tq9VG-0000000Anhu-0Ddb; Thu, 06 Mar 2025 11:35:02 +0000 Received: from mail-ej1-x635.google.com ([2a00:1450:4864:20::635]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tq9Ct-0000000Akct-3Inq for linux-arm-kernel@lists.infradead.org; Thu, 06 Mar 2025 11:16:04 +0000 Received: by mail-ej1-x635.google.com with SMTP id a640c23a62f3a-ac2400d1c01so48328166b.1 for ; Thu, 06 Mar 2025 03:16:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1741259762; x=1741864562; darn=lists.infradead.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=nKABIWtcV5iN1s5ZB+QKBynZqHqAumHFyPcKwtZx728=; b=U3hCzYhgKIYbKNHMsSV3OrLRqGNLMajCMnHq9Kr7TB1rS6uA2ivQZInXDBm8Q90F5R aeILF7ChmraCltzZp4HCbuSl99cCILlOIWCAhkCb5F+AS1nEFcb4fcok3aou+iKfAgFu MRnM7Lx3noyAAyQFd0ShS3O26ux37W1Ozj2w31WD8NPpe/WLbipOa0UzuyItp4rblops /Vu0gDaqDwjemuZ27Ziykx4QF7AhAF9EDOjUjy7GgJfnv5kgZqOckH1aV3F4Lci85g+D V3xLA+jNvrgHXe8qIZfDJqYcRUi/N/JKcP3smTj7PmxmsfNNRURvzv94LV4/C7L1uoWF 8ZIQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741259762; x=1741864562; 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=nKABIWtcV5iN1s5ZB+QKBynZqHqAumHFyPcKwtZx728=; b=VGKsZTCQt4EwHMobM4bwOd5qppXmfxoMZRsaZOP1S/HA2beDFrnilvoQF8kMNDW9J0 SFXJ0g9gKwVdriyGtEWnQdoDB1eaV6LQDMI1cn6OAfxzv29o0173xI0glHfMFbRZuB+q 6KdfgCBD3xR/pv3oSYqdsH7lRWad88s/QinFN19H4QZxyuOYYCpDgLOWuHkSgpOYRQQd pYUWzBa8LITuzQyreBMzDQwHO3uF3gynDnk4ojmSx4+vSTIsLSNi+IM1kAjo/3eljHRB +43eT486J+1aSxLEa7XSpzIyYd+a3p9u/c+A6IIVvfwWywAr8DXVMoFLYKdxgGyAuZxs Lq6g== X-Gm-Message-State: AOJu0Yz6eQoxPYiCe6OVOwpFGYiL3QqWBFljCEkZM/qiGtqk++KvxWMs SZdN9sAyhJbWq/88F54Kgc/D0imDSUrTUKxFlm0LN3VESOpJcDR7xtcJyZhD5wHwe29zjhNUxK+ l X-Gm-Gg: ASbGnctnY35Pxtd1cuLh20+5XstByAV8HAEtSuLDnmXi0g2d1InT495R+/bU+Cu+Xo5 szJZGO3LZ7h2hCSEr0T1fH+6X1vk2BCx6e/x3RNoLC57yc4jg8usRlZXjyGw8lhy4oLrooVJfRR T7tdXP6861b57QBuHNhYF/ndbFLF0YggEreVxhVC9k6rhpR+SIQ0kQcJXpMbOTw2CauSrAdHINw MNQ0Ze8XrC+wwsOY1F1IJxo1M/nwV0KjuAdTs1zuwhxJ/D6VCcCnGomWvSGroMQNAO0mrnyTx44 Kz22HyiBvxiNb3XvgjiXXnQDlvPcunos6ft3dmtbZQ== X-Google-Smtp-Source: AGHT+IFzQjVI6La/fumbYhe/tIf2DHPmT0/Tg7rUjpYZXnegofxlVrDrXprOyMSVtKs+Ncydte7CDQ== X-Received: by 2002:a17:906:c142:b0:abf:7a26:c473 with SMTP id a640c23a62f3a-ac22cba0296mr292630166b.13.1741259762247; Thu, 06 Mar 2025 03:16:02 -0800 (PST) Received: from localhost ([2001:4091:a245:8327:80ad:8144:3b07:4679]) by smtp.gmail.com with UTF8SMTPSA id a640c23a62f3a-ac239482096sm80348766b.54.2025.03.06.03.16.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 03:16:01 -0800 (PST) From: Markus Schneider-Pargmann Date: Thu, 06 Mar 2025 12:14:43 +0100 Subject: [PATCH v5 05/13] can: m_can: Return ERR_PTR on error in allocation MIME-Version: 1.0 Message-Id: <20250306-topic-am62-partialio-v6-12-b4-v5-5-f9323d3744a2@baylibre.com> References: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> In-Reply-To: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> To: Nishanth Menon , Tero Kristo , Santosh Shilimkar , Vignesh Raghavendra , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Anand Gadiyar , Chandrasekar Ramakrishnan , Marc Kleine-Budde , Vincent Mailhol Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Vishal Mahaveer , Kevin Hilman , Dhruva Gole , Akashdeep Kaur , Kendall Willis , linux-can@vger.kernel.org, Markus Schneider-Pargmann X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=3520; i=msp@baylibre.com; h=from:subject:message-id; bh=fPymUYl9ngaWf3SHgyvMGysC90ZPypUMCZh825GprU8=; b=owGbwMvMwCGm0rPl0RXRdfaMp9WSGNJPNh94ufOPjv+RD2e8Djx/5537bMpvzlkf2iSfHpr5+ anYpxtWcR2lLAxiHAyyYoosdz8sfFcnd31BxLpHjjBzWJlAhjBwcQrARParMzJ8iI+2fDgjeiN3 1El57vOn5t7QYzO+uUujujv+rcOUcG1tRoYpU+48DnrfuCtm4V2B4sxvocHHjyxNYks+1xJ18c6 tX94cAA== X-Developer-Key: i=msp@baylibre.com; a=openpgp; fpr=BADD88DB889FDC3E8A3D5FE612FA6A01E0A45B41 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250306_031603_884065_99405CCE X-CRM114-Status: GOOD ( 14.62 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org We have more detailed error values available, return them in the core driver and the calling drivers to return proper errors to callers. Reviewed-by: Vincent Mailhol Signed-off-by: Markus Schneider-Pargmann --- drivers/net/can/m_can/m_can.c | 6 +++--- drivers/net/can/m_can/m_can_pci.c | 4 ++-- drivers/net/can/m_can/m_can_platform.c | 4 ++-- drivers/net/can/m_can/tcan4x5x-core.c | 4 ++-- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/drivers/net/can/m_can/m_can.c b/drivers/net/can/m_can/m_can.c index 20f7533ad9e7735013ff000e6f3b11d016f8a09f..20fbef50db20ab5cea5afe4c44fda8b03e5c8c85 100644 --- a/drivers/net/can/m_can/m_can.c +++ b/drivers/net/can/m_can/m_can.c @@ -2392,7 +2392,7 @@ struct m_can_classdev *m_can_class_allocate_dev(struct device *dev, sizeof(mram_config_vals) / 4); if (ret) { dev_err(dev, "Could not get Message RAM configuration."); - goto out; + return ERR_PTR(ret); } if (dev->of_node && of_property_read_bool(dev->of_node, "wakeup-source")) @@ -2407,7 +2407,7 @@ struct m_can_classdev *m_can_class_allocate_dev(struct device *dev, net_dev = alloc_candev(sizeof_priv, tx_fifo_size); if (!net_dev) { dev_err(dev, "Failed to allocate CAN device"); - goto out; + return ERR_PTR(-ENOMEM); } class_dev = netdev_priv(net_dev); @@ -2416,7 +2416,7 @@ struct m_can_classdev *m_can_class_allocate_dev(struct device *dev, SET_NETDEV_DEV(net_dev, dev); m_can_of_parse_mram(class_dev, mram_config_vals); -out: + return class_dev; } EXPORT_SYMBOL_GPL(m_can_class_allocate_dev); diff --git a/drivers/net/can/m_can/m_can_pci.c b/drivers/net/can/m_can/m_can_pci.c index 9ad7419f88f83016e93667f4847fe536eca39ad1..eb31ed1f964491ab41c7811be317706a09951390 100644 --- a/drivers/net/can/m_can/m_can_pci.c +++ b/drivers/net/can/m_can/m_can_pci.c @@ -111,8 +111,8 @@ static int m_can_pci_probe(struct pci_dev *pci, const struct pci_device_id *id) mcan_class = m_can_class_allocate_dev(&pci->dev, sizeof(struct m_can_pci_priv)); - if (!mcan_class) - return -ENOMEM; + if (IS_ERR(mcan_class)) + return PTR_ERR(mcan_class); priv = cdev_to_priv(mcan_class); diff --git a/drivers/net/can/m_can/m_can_platform.c b/drivers/net/can/m_can/m_can_platform.c index b832566efda042929486578fad1879c7ad4a0cff..40bd10f71f0e2fab847c40c5bd5f7d85d3d46712 100644 --- a/drivers/net/can/m_can/m_can_platform.c +++ b/drivers/net/can/m_can/m_can_platform.c @@ -87,8 +87,8 @@ static int m_can_plat_probe(struct platform_device *pdev) mcan_class = m_can_class_allocate_dev(&pdev->dev, sizeof(struct m_can_plat_priv)); - if (!mcan_class) - return -ENOMEM; + if (IS_ERR(mcan_class)) + return PTR_ERR(mcan_class); priv = cdev_to_priv(mcan_class); diff --git a/drivers/net/can/m_can/tcan4x5x-core.c b/drivers/net/can/m_can/tcan4x5x-core.c index e5c162f8c589b2c75c51cd8a994fc93ab507b9dc..5523ad8c9175cacd330a330b0f45d2c6515d11fa 100644 --- a/drivers/net/can/m_can/tcan4x5x-core.c +++ b/drivers/net/can/m_can/tcan4x5x-core.c @@ -401,8 +401,8 @@ static int tcan4x5x_can_probe(struct spi_device *spi) mcan_class = m_can_class_allocate_dev(&spi->dev, sizeof(struct tcan4x5x_priv)); - if (!mcan_class) - return -ENOMEM; + if (IS_ERR(mcan_class)) + return PTR_ERR(mcan_class); ret = m_can_check_mram_cfg(mcan_class, TCAN4X5X_MRAM_SIZE); if (ret) From patchwork Thu Mar 6 11:14:44 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Schneider-Pargmann X-Patchwork-Id: 14004520 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 2F333C282D1 for ; Thu, 6 Mar 2025 13:49:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=B5B/1MAbm7XWDn7sksBQeFE3Zfzb3mpfhe3LWfzUyF0=; b=xymyr3NRJtQYIxMKgxUOqVnDCu AiH3I23FwegsBaM5B7vzsG8PPEo0mqV1Uu/4i0LZOBgvnEy1PaLjZDsdWneCfTPAI2QMsXRaHwuyP iyaGUDfjD61dTHIrAAwlS/d4SDCqE4TKqVk4LcdAxxmusesRjN6HOnoStLBakgk/+rzOw+E9gplip onujZWFM7QiNiFMvRRVEeO8tisFIiYG13jXyfxgy9aryyeZ+gGyZaCXpX2NfO/PVoylGj5yjB6maH MBIml4jnNJNAKPKOHFp+8flHkUzQZOYcidBeYYZdBjaAuLllkBW5E+GO0CB0IMFRmimApRPJrRF9a 8ouxm3dw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tqBas-0000000B6K6-066k; Thu, 06 Mar 2025 13:48:58 +0000 Received: from mail-ed1-x536.google.com ([2a00:1450:4864:20::536]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tq9Cv-0000000AkdH-0X8E for linux-arm-kernel@lists.infradead.org; Thu, 06 Mar 2025 11:16:06 +0000 Received: by mail-ed1-x536.google.com with SMTP id 4fb4d7f45d1cf-5e52c1c3599so760294a12.2 for ; Thu, 06 Mar 2025 03:16:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1741259763; x=1741864563; darn=lists.infradead.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=B5B/1MAbm7XWDn7sksBQeFE3Zfzb3mpfhe3LWfzUyF0=; b=fJIkNHtE+eNoqJeDLkB9l3wHqiZlfpnYHJiwRrMhI6UCreqQXlkNurU5Eo2dDlmghh hC1kKzjQRb1ZrZgAkHOaorbquRpB/TEk/i56RjZxTyuJ15LMXn/BjwkSyZ7ZRD9IMq/v I1FVKvxy/ikk+QYU4TfQaH0KWuEDabL6bL1l4AaMKtziQXui9NmbyF5cc2hg0ogRIgqu So/M2nAZ23jwH6Lk3aFeU+dclqIzYcju23fU/2C3ssVb1nPyPEt1V7gQdlhv/GksML8t cS1l2rzVs4ABJdXfTnwwLig9MOs/xMdEMdIFxImdksLHsMO/5oCwyMa2qM5m76bin3X2 Wl9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741259764; x=1741864564; 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=B5B/1MAbm7XWDn7sksBQeFE3Zfzb3mpfhe3LWfzUyF0=; b=oI0f7rAvR6NiEp3/OuKe2bGA5GQcFyMvhrfGHR+hEbCyKrR3AS7Mjey+0DtRNd5Ovc boLGomzYunOoI7I2tmpZBJ9w2UWnULADZ7a6pmtpRJyiXX7UpDFdYKw/G14tX3aigbSN DY46zCpFDBdrH8g3te2AzsgFl2DmIXNdm8eG1H6aGBpW5lRm+HlWzhL4J3vIVP1ANDXF 4J4qkiO3t9h0TwbsyD9wNHNHjIyTjuHoSnayq/4f0jd2N92nKjWTkfSFP9PtK9uTWqH0 VNRjy+G1omYs+9U5bXOdvwZHJPXKWhjRv01xpDFkhA77+kT/r35Nfkq8DwPmcsWx81iU ZDLg== X-Gm-Message-State: AOJu0Yx63712K3FipsZY0+NBElanrA6z+QL5Xgiu3KkYJKXwj2xxa+N8 c/fxaYDvdh6kVHY0qeyAi/IIq8OiYMCsqp85qxShAsxOrlUKcTe7czzGCgnRgNk4D2rFsagNnz4 G X-Gm-Gg: ASbGnctQie3pD3lksHiKOhKpygv6Hnbf0wNckbwdevpgr0aY9MOgPU3o/LSEHwJMSFP p/MdnpoZdu/hxZ8BdO/JUjzXFsPEOZPfmOuw1VevFM7FDe6U8JEChLHm9aLEfryXEcuylQKBmOq Py401yh2f86RcHlCOCaFvHQC+48hfuVvb6RZd9HPAWWfPgfF2AryK+Go9IoGWRe5kDpSYplTrO2 o5SbcQsDY2rC7xWWrhUO8sRTWubLO8IVbvEHK95wKv4S9Gzns9y7zCoXllUQXPCe841gNG6Rh9I Jkh3SdeLblrAjxNlFrO9d5at75I2LEXHSrj/VRMOJQ== X-Google-Smtp-Source: AGHT+IGEsRF+ZuhCrECUeqOSfOd/YhlB/c+V8tdTbUibcDVmAxZHV2uaYCpCEp4a4SsOt6thlQaVKQ== X-Received: by 2002:a17:907:3f89:b0:abf:3f82:1218 with SMTP id a640c23a62f3a-ac20dd0539fmr697232066b.46.1741259763526; Thu, 06 Mar 2025 03:16:03 -0800 (PST) Received: from localhost ([2001:4091:a245:8327:80ad:8144:3b07:4679]) by smtp.gmail.com with UTF8SMTPSA id a640c23a62f3a-ac2394399aesm78672066b.30.2025.03.06.03.16.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 03:16:03 -0800 (PST) From: Markus Schneider-Pargmann Date: Thu, 06 Mar 2025 12:14:44 +0100 Subject: [PATCH v5 06/13] can: m_can: Support pinctrl wakeup state MIME-Version: 1.0 Message-Id: <20250306-topic-am62-partialio-v6-12-b4-v5-6-f9323d3744a2@baylibre.com> References: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> In-Reply-To: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> To: Nishanth Menon , Tero Kristo , Santosh Shilimkar , Vignesh Raghavendra , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Anand Gadiyar , Chandrasekar Ramakrishnan , Marc Kleine-Budde , Vincent Mailhol Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Vishal Mahaveer , Kevin Hilman , Dhruva Gole , Akashdeep Kaur , Kendall Willis , linux-can@vger.kernel.org, Markus Schneider-Pargmann X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=4086; i=msp@baylibre.com; h=from:subject:message-id; bh=mSNYgSWj+YADxcJYTld46k4BIENA6g6D+Jdi+6l+eLo=; b=owGbwMvMwCGm0rPl0RXRdfaMp9WSGNJPNh9psOCQeNLEOCn+b9SePUt9tki7Hto5sTxt5WbzS MFGOzufjlIWBjEOBlkxRZa7Hxa+q5O7viBi3SNHmDmsTCBDGLg4BWAiiQmMDGv+Cuxsuy9m4Bt+ 5bq2c0U4p+yipf2Kv94uemPBsfXvuSuMDM2GYXFdIh8YnRnetSdYFXOIHROwcC0LWJR/88vTsAs uvAA= X-Developer-Key: i=msp@baylibre.com; a=openpgp; fpr=BADD88DB889FDC3E8A3D5FE612FA6A01E0A45B41 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250306_031605_169871_12511FA9 X-CRM114-Status: GOOD ( 16.77 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org am62 requires a wakeup flag being set in pinctrl when mcan pins acts as a wakeup source. Add support to select the wakeup state if WOL is enabled. Reviewed-by: Vincent Mailhol Signed-off-by: Markus Schneider-Pargmann --- drivers/net/can/m_can/m_can.c | 68 +++++++++++++++++++++++++++++++++++++++++++ drivers/net/can/m_can/m_can.h | 4 +++ 2 files changed, 72 insertions(+) diff --git a/drivers/net/can/m_can/m_can.c b/drivers/net/can/m_can/m_can.c index 20fbef50db20ab5cea5afe4c44fda8b03e5c8c85..c1c5f8e90d37cde1daa8ab17c2be4b8be451dc50 100644 --- a/drivers/net/can/m_can/m_can.c +++ b/drivers/net/can/m_can/m_can.c @@ -2233,6 +2233,7 @@ static void m_can_get_wol(struct net_device *dev, struct ethtool_wolinfo *wol) static int m_can_set_wol(struct net_device *dev, struct ethtool_wolinfo *wol) { struct m_can_classdev *cdev = netdev_priv(dev); + struct pinctrl_state *new_pinctrl_state = NULL; bool wol_enable = !!(wol->wolopts & WAKE_PHY); int ret; @@ -2249,7 +2250,28 @@ static int m_can_set_wol(struct net_device *dev, struct ethtool_wolinfo *wol) return ret; } + if (wol_enable) + new_pinctrl_state = cdev->pinctrl_state_wakeup; + else + new_pinctrl_state = cdev->pinctrl_state_default; + + if (IS_ERR_OR_NULL(new_pinctrl_state)) + return 0; + + ret = pinctrl_select_state(cdev->pinctrl, new_pinctrl_state); + if (ret) { + netdev_err(cdev->net, "Failed to select pinctrl state %pE\n", + ERR_PTR(ret)); + goto err_wakeup_enable; + } + return 0; + +err_wakeup_enable: + /* Revert wakeup enable */ + device_set_wakeup_enable(cdev->dev, !wol_enable); + + return ret; } static const struct ethtool_ops m_can_ethtool_ops_coalescing = { @@ -2377,6 +2399,44 @@ int m_can_class_get_clocks(struct m_can_classdev *cdev) } EXPORT_SYMBOL_GPL(m_can_class_get_clocks); +static int m_can_class_setup_optional_pinctrl(struct m_can_classdev *class_dev) +{ + struct device *dev = class_dev->dev; + int ret; + + class_dev->pinctrl = devm_pinctrl_get(dev); + if (IS_ERR(class_dev->pinctrl)) { + ret = PTR_ERR(class_dev->pinctrl); + class_dev->pinctrl = NULL; + + if (ret == -ENODEV) + return 0; + + return dev_err_probe(dev, ret, "Failed to get pinctrl\n"); + } + + class_dev->pinctrl_state_wakeup = + pinctrl_lookup_state(class_dev->pinctrl, "wakeup"); + if (IS_ERR(class_dev->pinctrl_state_wakeup)) { + ret = PTR_ERR(class_dev->pinctrl_state_wakeup); + class_dev->pinctrl_state_wakeup = NULL; + + if (ret == -ENODEV) + return 0; + + return dev_err_probe(dev, ret, "Failed to lookup pinctrl wakeup state\n"); + } + + class_dev->pinctrl_state_default = + pinctrl_lookup_state(class_dev->pinctrl, "default"); + if (IS_ERR(class_dev->pinctrl_state_default)) { + ret = PTR_ERR(class_dev->pinctrl_state_default); + return dev_err_probe(dev, ret, "Failed to lookup pinctrl default state\n"); + } + + return 0; +} + struct m_can_classdev *m_can_class_allocate_dev(struct device *dev, int sizeof_priv) { @@ -2417,7 +2477,15 @@ struct m_can_classdev *m_can_class_allocate_dev(struct device *dev, m_can_of_parse_mram(class_dev, mram_config_vals); + ret = m_can_class_setup_optional_pinctrl(class_dev); + if (ret) + goto err_free_candev; + return class_dev; + +err_free_candev: + free_candev(net_dev); + return ERR_PTR(ret); } EXPORT_SYMBOL_GPL(m_can_class_allocate_dev); diff --git a/drivers/net/can/m_can/m_can.h b/drivers/net/can/m_can/m_can.h index bd4746c63af3f0a032910644dfd48a9ebb3a6168..353ad73649218dc0a03d9ba947c6abc847c958eb 100644 --- a/drivers/net/can/m_can/m_can.h +++ b/drivers/net/can/m_can/m_can.h @@ -128,6 +128,10 @@ struct m_can_classdev { struct mram_cfg mcfg[MRAM_CFG_NUM]; struct hrtimer hrtimer; + + struct pinctrl *pinctrl; + struct pinctrl_state *pinctrl_state_default; + struct pinctrl_state *pinctrl_state_wakeup; }; struct m_can_classdev *m_can_class_allocate_dev(struct device *dev, int sizeof_priv); From patchwork Thu Mar 6 11:14:45 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Schneider-Pargmann X-Patchwork-Id: 14004338 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 95A81C282D1 for ; Thu, 6 Mar 2025 11:38:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=DFWairiFktoGc2odXSwmyM/8KlG/z88XFaQU/RvUTy0=; b=e9MD/fksp49dNRu3Lm95RsSbpd 2Qbdu9EKyBLV5Gy+O6UpfGNbIhjVOWKPFnuY7p/JufgQlVXKV72KViVeHohJLnUEXqZBhPwn21d/S 63XcfMnxCF3Ryk/wijXGivMn+SgLL6DfGfp5vIgAx+d0u43ir3i90xWC/hTdG0k4OMxhd71E0Z2Fc i7MwVkARvYMRfvJso9d7X/bIUjBApvVcOi0//N7r9F0R0WHxFGQtUdihRJwOWohI3nVenKGh3ITVJ FC6DRYXcPp/pkNEOkRnCmNr5GZGhhqb4Xy1C3XA47E8oYAshw+zPNuZo29SG4/TGinecWWGl5VS0P Lt8e1lFA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tq9YP-0000000AoI3-0CP1; Thu, 06 Mar 2025 11:38:17 +0000 Received: from mail-ej1-x635.google.com ([2a00:1450:4864:20::635]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tq9Cw-0000000Akdi-0czI for linux-arm-kernel@lists.infradead.org; Thu, 06 Mar 2025 11:16:07 +0000 Received: by mail-ej1-x635.google.com with SMTP id a640c23a62f3a-aaee2c5ee6eso80551666b.1 for ; Thu, 06 Mar 2025 03:16:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1741259765; x=1741864565; darn=lists.infradead.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=DFWairiFktoGc2odXSwmyM/8KlG/z88XFaQU/RvUTy0=; b=xGExgAdr+ZQ4i60izuDa3IJ+pOnzFNQMbQinY2HmLgPoz4ZxyqUoguj3t5p2JDputI Zb5ntAVS4MlSUSR8JDyFyP7Lw3NeygnXy9Nt4VDM7Llk7BYKWxjXypY5K38sOme7pXdY AiLxAKlb+MQ4yTSPMJPhlbraTrR3UA3cXtP1655fqBRffXQL/fk8PbFiojatKm/c6DPd 9CGFH45BBeDyiL5IYRddOScMPfpfnWCR5QRE88P7UNrovvXxdq++tUlKaV8yjpMtDXux 5j2T7T1ZSiOmkh9AgIc9JH4p7hdJyJfsXBenqV+3gwoSfzOxMkYVvuc7H5a5uF0sgBay nKUQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741259765; x=1741864565; 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=DFWairiFktoGc2odXSwmyM/8KlG/z88XFaQU/RvUTy0=; b=r4Un/MLBIIQWUAY0iwCLF8JcDRZLjtEMdVJQVcq0ZXGDIWFtQI3/tBsbYnT/ZM++fw lpWE7GJKoWfnHN7NRa+9ssykgBxWKDPaUfTRvIudEu0dLcFYUcGQFClPF+49bRoaw0k2 cqr/GzBtROHLw1psOtz8rrSVfOvJJCBZeuoXTL+dlyh+qDi5F8EsFsEUN9cqdvkpsd4k Xx+KTMxCedvzS9IF01viTmedjiw7mPBG0kH5yP0nWX0wqxGE5k4PqMHa8UE6G2f9J6yS 0MngNP/CMzqFhWl2E1+xxBbCOqrsfF+37CQj6t18MUQWpz3QySEfzvTfbQ0Dk+Ew78iE h/HQ== X-Gm-Message-State: AOJu0YwyVOa/kQJIl7QUHaOb3Qd4yTZcIRFJfseQpvedQiD9AMnlwiq6 S8wpkCTOob2r6iKXkAJDiJVvBhbZXpp2L24PNE+M3tIWXsazrkC19KWM2Frn/AvV97Iec5cDYQS M X-Gm-Gg: ASbGncvB8bwmk3YGKZvCrVEkjvlCK+OPkeDcd2zbR6i7Y925EzVu/I7BOm3/GKOMVNI /i6eeYMTnojfnaxJd/fDbwgCDD97nyjaXT4qz1LYFwzrzILOVNQ6Xy7HnNcBHcjvnHaKOW7i2Gv swcWYrxoK/wHUefurEj0Qb/eK+SdW55PVWemf3boDqRE3OEAI8531V89a4840lMm6q/cuTMn2rq vxNR+9VnL6ZoZYP23GwwSM8e613mgXq7q8TnMIY+wBLdwVSgyoDfJK+2cLD2OK7OEnRJb98nZ6S mNGbR3Z4/KPYRYoBy5dU2FwuBhFv5YuNjQ7NG9yA0Q== X-Google-Smtp-Source: AGHT+IEOjp1rPMG7K9BeDF47/kaJ0MaWl8YKzHhaw5DH+VYb1REqVhPOfAx7ij8510KBR1jG4vUuww== X-Received: by 2002:a17:907:7214:b0:abf:75d7:72a2 with SMTP id a640c23a62f3a-ac20dd077ecmr706422966b.38.1741259764790; Thu, 06 Mar 2025 03:16:04 -0800 (PST) Received: from localhost ([2001:4091:a245:8327:80ad:8144:3b07:4679]) by smtp.gmail.com with UTF8SMTPSA id a640c23a62f3a-ac2399d3dc4sm79424866b.170.2025.03.06.03.16.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 03:16:04 -0800 (PST) From: Markus Schneider-Pargmann Date: Thu, 06 Mar 2025 12:14:45 +0100 Subject: [PATCH v5 07/13] arm64: dts: ti: k3-pinctrl: Add WKUP_EN flag MIME-Version: 1.0 Message-Id: <20250306-topic-am62-partialio-v6-12-b4-v5-7-f9323d3744a2@baylibre.com> References: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> In-Reply-To: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> To: Nishanth Menon , Tero Kristo , Santosh Shilimkar , Vignesh Raghavendra , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Anand Gadiyar , Chandrasekar Ramakrishnan , Marc Kleine-Budde , Vincent Mailhol Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Vishal Mahaveer , Kevin Hilman , Dhruva Gole , Akashdeep Kaur , Kendall Willis , linux-can@vger.kernel.org, Markus Schneider-Pargmann X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1123; i=msp@baylibre.com; h=from:subject:message-id; bh=SuWEbpCuQ4MLb4zR/ahkYmnYDXwRgcVXgN8O0qdv1Nw=; b=owGbwMvMwCGm0rPl0RXRdfaMp9WSGNJPNp/cNK079dTCQKN/34//lTh9rrrqtIWVgvHXFwujV uzw0VpU1lHKwiDGwSArpshy98PCd3Vy1xdErHvkCDOHlQlkCAMXpwBMZIMLI8Pum0vEYg8bZnfm f3a99ow1a2XyuuTegykXUo2LIjbvE1nB8Ju9NeKsx+4FdZqK7FMcd++wSLVsq/GY96LrY+aVd3u L7XkB X-Developer-Key: i=msp@baylibre.com; a=openpgp; fpr=BADD88DB889FDC3E8A3D5FE612FA6A01E0A45B41 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250306_031606_197788_5843B5C6 X-CRM114-Status: UNSURE ( 9.98 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org WKUP_EN is a flag to enable pin wakeup. Any activity will wakeup the SoC in that case. Signed-off-by: Markus Schneider-Pargmann --- arch/arm64/boot/dts/ti/k3-pinctrl.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm64/boot/dts/ti/k3-pinctrl.h b/arch/arm64/boot/dts/ti/k3-pinctrl.h index cac7cccc111212eba520454396c8cc5c9fcba9b1..79a9f54fa0095c4e3864872bc06ef3d033215b2b 100644 --- a/arch/arm64/boot/dts/ti/k3-pinctrl.h +++ b/arch/arm64/boot/dts/ti/k3-pinctrl.h @@ -18,6 +18,7 @@ #define DS_OUT_VAL_SHIFT (26) #define DS_PULLUD_EN_SHIFT (27) #define DS_PULLTYPE_SEL_SHIFT (28) +#define WKUP_EN_SHIFT (29) #define PULL_DISABLE (1 << PULLUDEN_SHIFT) #define PULL_ENABLE (0 << PULLUDEN_SHIFT) @@ -56,6 +57,7 @@ #define PIN_DS_PULLUD_DISABLE (1 << DS_PULLUD_EN_SHIFT) #define PIN_DS_PULL_DOWN (0 << DS_PULLTYPE_SEL_SHIFT) #define PIN_DS_PULL_UP (1 << DS_PULLTYPE_SEL_SHIFT) +#define WKUP_EN (1 << WKUP_EN_SHIFT) /* Default mux configuration for gpio-ranges to use with pinctrl */ #define PIN_GPIO_RANGE_IOPAD (PIN_INPUT | 7) From patchwork Thu Mar 6 11:14:46 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Schneider-Pargmann X-Patchwork-Id: 14004339 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 01FD0C282D1 for ; Thu, 6 Mar 2025 11:40:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=NBtLLuJtQawAmT+r32Eq/8y5p2QwBqnC69olS/VYW6A=; b=pBrLy2rASbK1hRMpakyTqFwJeK 5sKyBc7hQodFpWB/S+XUwcsmhVvTkZ476BBo6v/122UWG76JtNz8Ovsq6TxSk786l8EwVhOKkEPFE CZH+pX1xGyES11FtzPCj3k/S602VYTEp0AdsJ6ojhRyLimN/WJsDEqOZDvCcK4ZR9E/XcXf5V3WLG PTc0J+augglBT+NmKr93REp8zpjRBt1vsroJGA0tdYZpXV4iNtreWeip5kFJZsP70p6MtKreGnNMu 1sDz4AyQhKF5zwfwYUHkG2YXTnrC8IhalNeQofe4D305s8rPjDZJ2bP6FicyQB5hSkzYxz5ne9Fvm RQABYE4g==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tq9Zy-0000000AoTN-3GQn; Thu, 06 Mar 2025 11:39:54 +0000 Received: from mail-ej1-x630.google.com ([2a00:1450:4864:20::630]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tq9Cx-0000000Ake4-2AdR for linux-arm-kernel@lists.infradead.org; Thu, 06 Mar 2025 11:16:08 +0000 Received: by mail-ej1-x630.google.com with SMTP id a640c23a62f3a-abf5e1a6cd3so93267366b.2 for ; Thu, 06 Mar 2025 03:16:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1741259766; x=1741864566; darn=lists.infradead.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=NBtLLuJtQawAmT+r32Eq/8y5p2QwBqnC69olS/VYW6A=; b=cK237owTxoZ095f6ProU6lJtsM3V728VDYypRrwcefNWjEeiYL5Cz8VnbKHbcE0D5i LkQ2hcya6BiFifOk6OzYts9vGKUOKFMYIlvJUYBeynSc5077MtgvI3h/k0UFldBJUB2b 4htOD09VRAHMC9T5943xltTy/iTWbwR/mDmXelBpYl43pj6Mf2ZctyqWDvmJ2Dbtimzl GA//9CZx0UMqEAzhaOEEwBkjeX0A6hzQAEymfX+dBV1HlucQT4m94FJpQ+8P/C2GuE4r iBwxB9meg7pTBJ2Jnztdud9qLb0WNz5HfyrtSisWLad9U17AOHjZZmMcS7zuDO69BbVv KXXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741259766; x=1741864566; 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=NBtLLuJtQawAmT+r32Eq/8y5p2QwBqnC69olS/VYW6A=; b=fT+SFbCOlYRs58SrqrDY4JaYTdt5rSQcroxj5yFSVrbI/WJXZ8IA6mhuolrfLThbH+ UV3oZCa/j+TU7MRNyAETapsrUow2aFhBw+3If7EOZpaa/6p540kR5c5B0eIuM1CJthNQ OcqJtTmSS13xPJkRHCVn83w9Oxi5AmbvXMZqThRdf7lZOxCMQsowMFGaECqfK+TSWMRS kNHSNahczBoqgAUCcUDhKPP5H9KhzFK9/R4wS1jW2LhgysGwa0U3cO4VM9NxUs4MH5qi t0Ka2C6cQSWbslUc9sdOxJTJJrt72ko0hWDs27ZujNDFosyxh1c5WnUybyNx5q2aDGpB FKVw== X-Gm-Message-State: AOJu0YxE2mYZ3O7nASrZ/UgPDa97yPukwzvJBLi9Zhgg8XXfxsXyDf8o /3UfztGz7HYMwVx/oRsn87O2oKj6gg/6fD1e6aMNAPirmtru57LRL1kKmXUP1cHaix/RfomrNiO N X-Gm-Gg: ASbGncu5byz6Ob1uGYldrkzp7Dzo+KdZPn7noRi8R+YmsrvOCkXXxQyJCIqpk1DWjjO ElGMGzRaxxa0YOS6vN3RKzl1zNDj2op1aScOoDSX1vGwa8dJKbqk5TzgwEgkKbBFfgB3lEVddSY putwgX3ta8Nig41MopeKCXk9KIIdAnULx38afI+BjkfL89dRtCUrlifO7Suladjm0xyZV1bmMAz +zhqEtMrvZJejhVPr+1mtf6omWvdWSqTgVweLJhP2HndIFzYVOQgMYjMI6MIQLK/N5ROol0ja0f NS4bUDla2vebE/b8VWAtR0Gcnfgp1MBfSK2951+57A== X-Google-Smtp-Source: AGHT+IHDKbTWou3q5mDxSt8FHLnziuo08sCEglEWRUMKQ7Y9hisLFsVJQsvUMtxNQ6c+a5VsArcttw== X-Received: by 2002:a17:907:d092:b0:abf:56e3:e88b with SMTP id a640c23a62f3a-ac20e152abdmr626151966b.38.1741259766007; Thu, 06 Mar 2025 03:16:06 -0800 (PST) Received: from localhost ([2001:4091:a245:8327:80ad:8144:3b07:4679]) by smtp.gmail.com with UTF8SMTPSA id a640c23a62f3a-ac2399d850esm79391966b.173.2025.03.06.03.16.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 03:16:05 -0800 (PST) From: Markus Schneider-Pargmann Date: Thu, 06 Mar 2025 12:14:46 +0100 Subject: [PATCH v5 08/13] arm64: dts: ti: k3-am62: Define possible system states MIME-Version: 1.0 Message-Id: <20250306-topic-am62-partialio-v6-12-b4-v5-8-f9323d3744a2@baylibre.com> References: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> In-Reply-To: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> To: Nishanth Menon , Tero Kristo , Santosh Shilimkar , Vignesh Raghavendra , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Anand Gadiyar , Chandrasekar Ramakrishnan , Marc Kleine-Budde , Vincent Mailhol Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Vishal Mahaveer , Kevin Hilman , Dhruva Gole , Akashdeep Kaur , Kendall Willis , linux-can@vger.kernel.org, Markus Schneider-Pargmann X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1207; i=msp@baylibre.com; h=from:subject:message-id; bh=qOYKpbMRlS3QK+lIBKOrbvUoEPJGZTbJFamIqalYLfY=; b=owGbwMvMwCGm0rPl0RXRdfaMp9WSGNJPNp+V3yGc+qNG9BiLi/1LVZOmpd9PbbxY+8p5uma6l sKOh0tNOkpZGMQ4GGTFFFnuflj4rk7u+oKIdY8cYeawMoEMYeDiFICJnNnCyLC2pS7zTY2GyuU2 rtOs2frTs8s5hU92/EzotdTSWrxF6QTDP8W7Na5HLMqn8k+5/UBff/mNm6UR+3/sdr2S8/7K3ZS DXhwA X-Developer-Key: i=msp@baylibre.com; a=openpgp; fpr=BADD88DB889FDC3E8A3D5FE612FA6A01E0A45B41 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250306_031607_559827_FA1DD681 X-CRM114-Status: UNSURE ( 9.31 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Add the system states that are available on am62 SoCs. Signed-off-by: Markus Schneider-Pargmann --- arch/arm64/boot/dts/ti/k3-am62.dtsi | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/arch/arm64/boot/dts/ti/k3-am62.dtsi b/arch/arm64/boot/dts/ti/k3-am62.dtsi index bfb55ca113239be4367a1cf8edf219187fafa8a0..acc8cbc7e57bc5712ada8b4b225e302ffc368e26 100644 --- a/arch/arm64/boot/dts/ti/k3-am62.dtsi +++ b/arch/arm64/boot/dts/ti/k3-am62.dtsi @@ -46,6 +46,28 @@ pmu: pmu { interrupts = ; }; + system-idle-states { + system_partial_io: system-partial-io { + compatible = "system-idle-state"; + idle-state-name = "Partial-IO"; + }; + + system_deep_sleep: system-deep-sleep { + compatible = "system-idle-state"; + idle-state-name = "DeepSleep"; + }; + + system_mcu_only: system-mcu-only { + compatible = "system-idle-state"; + idle-state-name = "MCU Only"; + }; + + system_standby: system-standby { + compatible = "system-idle-state"; + idle-state-name = "Standby"; + }; + }; + cbass_main: bus@f0000 { bootph-all; compatible = "simple-bus"; From patchwork Thu Mar 6 11:14:47 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Schneider-Pargmann X-Patchwork-Id: 14004519 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 56357C28B23 for ; Thu, 6 Mar 2025 13:49:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=OKuPzbZ56Sy/epGKjdADXzKdvm5oH6KCiW1QGMA8BgE=; b=h5SjYsWg35Li0wCBtGYG0gPsoc jytQxgTHNS7SbaTmuUXq3WqrUh4Fd+X8jAIkIotrZFMySfrpAWDPcs0iDpxES0FsllJ+Qxxm6BWTO 4vj6SfA5lwyBFvOOOFZ/3xzI6W+eS2IvxwVQwt04mngbRI8XYaPfhKu6ofB5H2PnlDE/R5mf7Z57D Q01RLkv+xXFiXf8D2MTKfcpY0ehgqGL+H/M/cjZUns0eob5fbDt7fWrcJuftt1wk1a213uLClndih mSVFNojzcjX9ss+Y4s7t9BkA8mVjMDJYokDIk3+O4BFg13bmmxMIe4rRVbnLt4CM6Fwe/hLhLTEeh dWAx56Kw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tqBas-0000000B6Kd-2pNH; Thu, 06 Mar 2025 13:48:58 +0000 Received: from mail-ed1-x534.google.com ([2a00:1450:4864:20::534]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tq9Cy-0000000AkeS-49CX for linux-arm-kernel@lists.infradead.org; Thu, 06 Mar 2025 11:16:10 +0000 Received: by mail-ed1-x534.google.com with SMTP id 4fb4d7f45d1cf-5e56b229d60so3302829a12.0 for ; Thu, 06 Mar 2025 03:16:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1741259767; x=1741864567; darn=lists.infradead.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=OKuPzbZ56Sy/epGKjdADXzKdvm5oH6KCiW1QGMA8BgE=; b=gY772/FGwD5xFxsKMH8bKKFiBRBQk8Ua0D3FKiRhrmoAdRWN6CFFF+jkmb3xQTbMFS mmfEw8a/XJn/q8FQrwNA1cMoPWZ9QqtIQkMkplYC96TukUo5Ghl20z85gUVqvkTLXkz4 VpRQIhJmk0PVtOBXMR+9MfNN7m1BbJwif8xG61jtuSpEJOdx2da6kf+c+2Njy+euZzEr q6nMIqyw7j2kHcB5hWDsDRkv7ZJxCEUOqyWWncG6dVs19sxAwQBfXjo53n41lOEYyyU4 cIU5hoqt0VBLq6WP03aAIrV+vfimkPlkZtw+0eOUZI7o7STyVM+7bBs3d+/g0FMWJm5Z fNAA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741259767; x=1741864567; 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=OKuPzbZ56Sy/epGKjdADXzKdvm5oH6KCiW1QGMA8BgE=; b=WiT+bkmnoa2KZbWhLiL+E2egsTrsCyqCurFOblrsOu7mmAazvC+cV+AGIVPmYocfbS bX47IcrgvMvviv/p5dI0HqWsaxIdTpbanvqsuc6XMSeZ6yTrsXvyCz2zcf6AHbbU0lQu xmrhgr2/V6gs9oqwKnsKy2B6aaVmZ+ih6SeNn+fTJIhsdBNDSWdtcF735++iTMq6cOBw Z0GJxdYvebIddPePAdlbo7dRp+C7oaASA7IbYHMZFSb7WD8MVhoo7FA4P+nJQZtuEcav Bil9Y+1cOG2A29sKaIn4J+x9RxD5cCkV01mEVJJ4Uoq7QH+N+NzAvKoIlueusnOfaNLV 6iUw== X-Gm-Message-State: AOJu0YykM9uy4nh0WhiyJMcfEW6v1TyFmvP3CbwgdgCOdC7Ebwxr+Bdc 4Z4vzvfP1aTVuvitKsJUKTaQy8b5DfejQ8auN4EvNNGCycyNYGd7ModumUiIu1ZSJqvyhBH5+vX S X-Gm-Gg: ASbGncvxOmWxwzEQE5/JOJH0Y3NXyjRlneKN5LjeCXCBhvtyN7W3QyP7oQkynosUwFJ E9Qp8UPQeB9lkbRQ5zlxYHBuQno09Xz/tCOiHyB5luqdgLmedVG0IPq4LsgLVycMeEuoyl8OOrC FBbE7cEAWMulAiWHYkpNY5ymWh5PfQmvi6kyJ2bPfMOLEpwKQ61RDliDf7lpvj1Dl9xY6HRKhhm lWl0NzI8y9ltNfQYb35Rb+HJifp+rZcYisVrDec8Fw/qDIOo0A6GppeDxVBK2deDX311L+HXnwQ QovAejQ9vF228aTPbuH6VWYpIVP3saVZKALoSVtljA== X-Google-Smtp-Source: AGHT+IEFVSa18GEIJgxa7KRMd3iFVsH8mF7vScmeGZEq9ZjRWKNOLFR/ZTMFQ4Nw9AMvKsYhWHjA2w== X-Received: by 2002:a17:906:11ce:b0:ac0:4364:4083 with SMTP id a640c23a62f3a-ac22c54f4b3mr263879366b.0.1741259767248; Thu, 06 Mar 2025 03:16:07 -0800 (PST) Received: from localhost ([2001:4091:a245:8327:80ad:8144:3b07:4679]) by smtp.gmail.com with UTF8SMTPSA id a640c23a62f3a-ac2394389cesm77908266b.27.2025.03.06.03.16.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 03:16:06 -0800 (PST) From: Markus Schneider-Pargmann Date: Thu, 06 Mar 2025 12:14:47 +0100 Subject: [PATCH v5 09/13] arm64: dts: ti: k3-am62a: Define possible system states MIME-Version: 1.0 Message-Id: <20250306-topic-am62-partialio-v6-12-b4-v5-9-f9323d3744a2@baylibre.com> References: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> In-Reply-To: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> To: Nishanth Menon , Tero Kristo , Santosh Shilimkar , Vignesh Raghavendra , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Anand Gadiyar , Chandrasekar Ramakrishnan , Marc Kleine-Budde , Vincent Mailhol Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Vishal Mahaveer , Kevin Hilman , Dhruva Gole , Akashdeep Kaur , Kendall Willis , linux-can@vger.kernel.org, Markus Schneider-Pargmann X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1345; i=msp@baylibre.com; h=from:subject:message-id; bh=d3nIpQjsg552gUrVGPgqy9iTBzYcp5YGOFeSSkRUy00=; b=owGbwMvMwCGm0rPl0RXRdfaMp9WSGNJPNl86LNn5Me/ikXMSPjKMS1/t1V1iu3wuW8Cnukl7v 261c96e21HKwiDGwSArpshy98PCd3Vy1xdErHvkCDOHlQlkCAMXpwBM5HQDw1+RH723J4oXXTlw 7Z/VlrLErYq+enNm/pFQjzZt5Fp0UX4Dw//cpVfvTklJWnuBmTHr0JE7dmEl11XaNwocW3Kh+3r JdDVmAA== X-Developer-Key: i=msp@baylibre.com; a=openpgp; fpr=BADD88DB889FDC3E8A3D5FE612FA6A01E0A45B41 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250306_031609_029781_B474773E X-CRM114-Status: UNSURE ( 9.17 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Add the system states that are available on am62a SoCs. Signed-off-by: Markus Schneider-Pargmann --- arch/arm64/boot/dts/ti/k3-am62a.dtsi | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/arch/arm64/boot/dts/ti/k3-am62a.dtsi b/arch/arm64/boot/dts/ti/k3-am62a.dtsi index 4d79b3e9486af18b8813a8980a57937669ff6095..0b58ade9561a3076fc89f3b85dbafa969285162f 100644 --- a/arch/arm64/boot/dts/ti/k3-am62a.dtsi +++ b/arch/arm64/boot/dts/ti/k3-am62a.dtsi @@ -46,6 +46,33 @@ pmu: pmu { interrupts = ; }; + system-idle-states { + system_partial_io: system-partial-io { + compatible = "system-idle-state"; + idle-state-name = "Partial-IO"; + }; + + system_io_ddr: system-io-ddr { + compatible = "system-idle-state"; + idle-state-name = "IO+DDR"; + }; + + system_deep_sleep: system-deep-sleep { + compatible = "system-idle-state"; + idle-state-name = "DeepSleep"; + }; + + system_mcu_only: system-mcu-only { + compatible = "system-idle-state"; + idle-state-name = "MCU Only"; + }; + + system_standby: system-standby { + compatible = "system-idle-state"; + idle-state-name = "Standby"; + }; + }; + cbass_main: bus@f0000 { compatible = "simple-bus"; #address-cells = <2>; From patchwork Thu Mar 6 11:14:48 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Schneider-Pargmann X-Patchwork-Id: 14004349 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id F3B84C282D1 for ; Thu, 6 Mar 2025 11:43:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=uYtwui9Erh4I2K3zHdu+q0zTdYm3AFiykAHnPwI2sAM=; b=BcOv0kZV9IjmXA3a/SCPF4H3Kz F2MQ/X75Vieyient00K1cNAegJZH4JKIPaqibuoH3R8WLfeUxEPr01SJlBqjsrDZGuAr+LqpXRKIo QYYvRM8m4XtPyQcMpPg4if2GwYYv8m9XeK6Btf1sfTP1Z7oYh3ceIWmiqoy1IPYztHt/ehfntmjnC v61SA5LsS/CoHiC8ehVY1J8pr7zjiTMMINel7x7YVkMymvqm5/ZKknEL4xWlq7AQ4Ij1krMm1cqbO 98087cYUvmAGAyGwSXR7C4gQ5GQjeHVzrQ+V3T1ttTtrtRorr0su7zMJesUi3YnjtUcSxgSEdWria uqtNddXQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tq9d6-0000000Aozo-2xtz; Thu, 06 Mar 2025 11:43:08 +0000 Received: from mail-ed1-x52e.google.com ([2a00:1450:4864:20::52e]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tq9D0-0000000Akf2-1qds for linux-arm-kernel@lists.infradead.org; Thu, 06 Mar 2025 11:16:11 +0000 Received: by mail-ed1-x52e.google.com with SMTP id 4fb4d7f45d1cf-5e058ca6806so894992a12.3 for ; Thu, 06 Mar 2025 03:16:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1741259769; x=1741864569; darn=lists.infradead.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=uYtwui9Erh4I2K3zHdu+q0zTdYm3AFiykAHnPwI2sAM=; b=xohiJAfFxfD44196Yo2oTP15DRN30FIhCAcjsE927OA+BQyVfoMIvamFjAKCpbAWLu cZvlLLqiyXqOWVmH4QQtGzdyHDDdWRR6vxPUuOL05i5P94QTfyRjbgP+YYoltoCP2dR7 ak4OnUv7eKdd6jUqktkx5/eVljNr/ALOHtmWsKYRgwa96HVpQzND1FGM4C3e2fZA48R9 Lc+NvFxWeUAnTh3/FMM8yjwl5xFvKJSLafjPvuiuPoJ8q37m4aMdd+Yi7L8gsS30Enx0 hVQkXKx0uhOr0tUonXgYnsvkBlaZft3v3RaIdESiLZcBqd5xVLeAEBjMrZmbubACNgLl f5uQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741259769; x=1741864569; 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=uYtwui9Erh4I2K3zHdu+q0zTdYm3AFiykAHnPwI2sAM=; b=h6KzlT9n3CZeonlqecrq58jcYt8/evB9YY6nijiTkmX4nLNVEaiq5cJrCMFmHOPebO 51NspjmcTQHwzH4osusd6dbHDLqJtClsE2g0LL2nFuOlANs2qfJGydvGqOxaPSVUu/y/ yfkjrP/Wq+HHQvNH+FeADe0gXaFk6mUiea+4woBIO8PFLuyLWmqdrjBznOgJncuB3scO m1WYwO5nqEfDRsoBj+Bfu08qIO0/PlAIyfAyi9JpQymfHPggnjZxdgh9wAUXFMdOTXre 4XZ3N6oOwUVCpyVTCXJrRHgM+cdeIysWwPEsOTTfnmWIa2Mo04yNDpuygpFsGnS/76Xv /+pg== X-Gm-Message-State: AOJu0YxBeHNIonF5jAbWZ39SwZfYWcAElvOMZBOB3mIjvMYG3EbbseV7 txkcpMpJBDXJcCUvHkzpLw2QUSAUn4G+Pu6mvPwrHyJzXEUa5KwSO3igQ9QmpQvAB3N0qb7J9t0 A X-Gm-Gg: ASbGnctoNkVrWZr0ocO84jJGSLC8WYy5V5ypVjM6IQf4qTXLNh7m3C17iRfE3G+HPcW F7mBGFgeep/9ag4tLTzSJoz8UFYoqIZbCBuohfiNzomjdtz27oHSWIXB+OB3PhhFhBMoIeJlc9Q 970VqANK496sMehZxab2u+3p93nx1Ua+gYFe2+I5PeSe+K/TTJUkql7YooYKUdU+IG64f38oyZm j5yRmDTGqYKDQmt//hPfPZd6Y1+/EPUgSos+4dUqxAcpsDhHFcW7rDV0y8fY5c5ipkN5Rk31Lic v8BTSnNmvaDzqcfZP2dYqBUP6GJ7NaLgOgC8lf2FzA== X-Google-Smtp-Source: AGHT+IHLvSc6bXLemWdNMPjb7kOiDfMReioYbM1WlDggWAhYIkoRPKliPoiO8nRDtf8Q913t8YyBCA== X-Received: by 2002:a05:6402:1e94:b0:5dc:7823:e7e4 with SMTP id 4fb4d7f45d1cf-5e59f3c6c25mr6989946a12.12.1741259768527; Thu, 06 Mar 2025 03:16:08 -0800 (PST) Received: from localhost ([2001:4091:a245:8327:80ad:8144:3b07:4679]) by smtp.gmail.com with UTF8SMTPSA id 4fb4d7f45d1cf-5e5c74a8f3bsm807671a12.44.2025.03.06.03.16.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 03:16:08 -0800 (PST) From: Markus Schneider-Pargmann Date: Thu, 06 Mar 2025 12:14:48 +0100 Subject: [PATCH v5 10/13] arm64: dts: ti: k3-am62p: Define possible system states MIME-Version: 1.0 Message-Id: <20250306-topic-am62-partialio-v6-12-b4-v5-10-f9323d3744a2@baylibre.com> References: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> In-Reply-To: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> To: Nishanth Menon , Tero Kristo , Santosh Shilimkar , Vignesh Raghavendra , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Anand Gadiyar , Chandrasekar Ramakrishnan , Marc Kleine-Budde , Vincent Mailhol Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Vishal Mahaveer , Kevin Hilman , Dhruva Gole , Akashdeep Kaur , Kendall Willis , linux-can@vger.kernel.org, Markus Schneider-Pargmann X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1345; i=msp@baylibre.com; h=from:subject:message-id; bh=d8JktRpsnXtExrDEQg8XETgLfj06OhFCRQiosuwspHg=; b=owGbwMvMwCGm0rPl0RXRdfaMp9WSGNJPNl+Put9e/HPlKiWxlxzN29cIXz7lLa+W8/shT3pn5 6Mn+fr3O0pZGMQ4GGTFFFnuflj4rk7u+oKIdY8cYeawMoEMYeDiFICJMH1k+O++VLSJ6dE2ltNu Zfm7Q3O447bICs7mazreEfUlz7LCiJGRYery4qOcrx5+iyvd1CasrftjFcfXA4v9kw/XPz/XdOG 6NzMA X-Developer-Key: i=msp@baylibre.com; a=openpgp; fpr=BADD88DB889FDC3E8A3D5FE612FA6A01E0A45B41 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250306_031610_480057_509E6EA9 X-CRM114-Status: UNSURE ( 9.27 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Add the system states that are available on am62p SoCs. Signed-off-by: Markus Schneider-Pargmann --- arch/arm64/boot/dts/ti/k3-am62p.dtsi | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/arch/arm64/boot/dts/ti/k3-am62p.dtsi b/arch/arm64/boot/dts/ti/k3-am62p.dtsi index 75a15c368c11b068430362fe0b8d2d9ecc052588..64cd070f196fdd2999ddc7bfee3ac9a03f1366b4 100644 --- a/arch/arm64/boot/dts/ti/k3-am62p.dtsi +++ b/arch/arm64/boot/dts/ti/k3-am62p.dtsi @@ -44,6 +44,33 @@ pmu: pmu { interrupts = ; }; + system-idle-states { + system_partial_io: system-partial-io { + compatible = "system-idle-state"; + idle-state-name = "Partial-IO"; + }; + + system_io_ddr: system-io-ddr { + compatible = "system-idle-state"; + idle-state-name = "IO+DDR"; + }; + + system_deep_sleep: system-deep-sleep { + compatible = "system-idle-state"; + idle-state-name = "DeepSleep"; + }; + + system_mcu_only: system-mcu-only { + compatible = "system-idle-state"; + idle-state-name = "MCU Only"; + }; + + system_standby: system-standby { + compatible = "system-idle-state"; + idle-state-name = "Standby"; + }; + }; + cbass_main: bus@f0000 { compatible = "simple-bus"; #address-cells = <2>; From patchwork Thu Mar 6 11:14:49 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Schneider-Pargmann X-Patchwork-Id: 14004350 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B6153C282EC for ; Thu, 6 Mar 2025 11:44:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=A87WxXAiQihDIxMHHvJCHeK/NU1G0OES32F8q9p/f7M=; b=dDZgHVLZMu7WdVNlffoP5AzQq6 bHONVFEIUxlxAnMJuOWW3dpvxOJHFn7hcr2dZOkeb77qmf7l8h9VqAg1Y3DHhd+1AtaJxzUfbU16D +zWFU0aG7ZQ33AxF3ShdczxGJudYqX1KZ9SGh/MEKeYjvbR4hTOeBsMy+FTczh+GlXoXbsF5xAuxX 5gW6il7sVzhd7gEA4P+ViAaxvjsoLU8t/loTKLDglbyLfia/PBMC6TaVcq+7hpbrY/kAE/gMA1N2n L4Y8v8rv1QKmJi7uU9NSmWM++wQcUyNzjdf9ZMcJAi4kEwVjxqUWyum8Ew93NHUDE+zD9j8ZCEp+r DD7qm37A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tq9eg-0000000ApLN-1aLm; Thu, 06 Mar 2025 11:44:46 +0000 Received: from mail-ej1-x632.google.com ([2a00:1450:4864:20::632]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tq9D1-0000000AkfP-2XK9 for linux-arm-kernel@lists.infradead.org; Thu, 06 Mar 2025 11:16:12 +0000 Received: by mail-ej1-x632.google.com with SMTP id a640c23a62f3a-aaf900cc7fbso107991566b.3 for ; Thu, 06 Mar 2025 03:16:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1741259770; x=1741864570; darn=lists.infradead.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=A87WxXAiQihDIxMHHvJCHeK/NU1G0OES32F8q9p/f7M=; b=fUwdaZigNfs5i1PnH/nzOMhSAP2dNwXHq2+/EZq2/F1c+reFt76heOJcoWiro6VCiS qor4tI8luuVRcLnehMaGngzH6qWl1nolMmHx+/FFJ0bbLuEJDw0N+bZ9rc7qGeXZ/Gvk sNvWbXN8iV9dKvVJvPC60ngsAOtI8UBZK7fSzNy1SfW9slKDh6/SdNVikZJ5xVWHiIga LXWLsA82T6Xp5lkqO58g5KLHf4fbMe4W0S7Zvdm/4bVCPGJH8eK9f3fb4v5r4sVS93OM sxT0xxcbK8vDySb4/njHygfJI9I2Pt3PwHhQVNW0dPUpDAH7NaDpD77YvwSBnOV1zVlh qJ2w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741259770; x=1741864570; 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=A87WxXAiQihDIxMHHvJCHeK/NU1G0OES32F8q9p/f7M=; b=dQtpMLrAAgMk9oapy4Ud9FBxYksrsGJJfxh+WFgEvFLsFgEWA9GP34XqSz+EysT43f yWIBRvL2/3BgeBO5LTS7C6IZd1XPWrKll7p0/9jVRyZfJGJeIvPyi4ygq10dbmjqQEL6 d2Pf62yliYb0xMN49pEdoT72Ku3uVjbUp1nknOhAe2295/bG7u+LpMArf1u520e9BiJ7 78KpAiQ1DOE1OLc6EImAwH1Jh6ublytpRXDFtgFJQiGR++2nJFXh1G27fi6KzoJuC6kR Cp9VZKzGe/6us1KvU37yojiBFJq51DGG1oCTwHJfpb4YkSkdxH8ED0F22Qh+bL4YjD7D vQnQ== X-Gm-Message-State: AOJu0YwUUsi5DR7qag/+urwtmEqydARq8x2YbGv8tD/bgsA7126wCq8D AEV+Bp6JqbJ/4Kgi5khvB2WJMIA/usuabJ9i/ph6tDHCMqGUXA0/ThkiPnMr2f0U8GAEyF8hV33 B X-Gm-Gg: ASbGncspm/TzRZNKRrYs8uZ+1MBBve7XtZOnIe9wJbmTW0im4VPxMq4GzW+GINKA8ev YVsxNvePZOEGRX+N6Xs7FZP7UbwR+HJNoeqLGtb/klb+YzIeGwh5fYl4JAHexXqvYz6th7YYF0P BJho/CEGVZnWpqSfFJU1P3vNCtIn1w/Ho/doAFIoq6N+u4o6PmKRPV2jA1SigIMzg/+9WdnTg91 TrAK/lJhfv4NeIYU41UNu7soFPnDLyou30bN5MoNBapIXoEOJqnzUpuBN4/SAinvM/IeDWqeZSg yNmlVYxTfMtMqmHwf2jt80vvt9ZIhXFZnuZn/S8pJA== X-Google-Smtp-Source: AGHT+IF+3TleQPQNdaT02wAZCvz9KEfqZLLnBNyHjof9bBJhmesmqxZ2NZ/PaJRAYALurfw6evrVvw== X-Received: by 2002:a17:906:6a0a:b0:abf:78b6:c565 with SMTP id a640c23a62f3a-ac20d8437bamr803685666b.4.1741259769901; Thu, 06 Mar 2025 03:16:09 -0800 (PST) Received: from localhost ([2001:4091:a245:8327:80ad:8144:3b07:4679]) by smtp.gmail.com with UTF8SMTPSA id a640c23a62f3a-ac23988bdd8sm77769466b.138.2025.03.06.03.16.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 03:16:09 -0800 (PST) From: Markus Schneider-Pargmann Date: Thu, 06 Mar 2025 12:14:49 +0100 Subject: [PATCH v5 11/13] arm64: dts: ti: k3-am62-lp-sk: Set wakeup-source system-states MIME-Version: 1.0 Message-Id: <20250306-topic-am62-partialio-v6-12-b4-v5-11-f9323d3744a2@baylibre.com> References: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> In-Reply-To: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> To: Nishanth Menon , Tero Kristo , Santosh Shilimkar , Vignesh Raghavendra , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Anand Gadiyar , Chandrasekar Ramakrishnan , Marc Kleine-Budde , Vincent Mailhol Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Vishal Mahaveer , Kevin Hilman , Dhruva Gole , Akashdeep Kaur , Kendall Willis , linux-can@vger.kernel.org, Markus Schneider-Pargmann X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2946; i=msp@baylibre.com; h=from:subject:message-id; bh=bfpCmJTQoBzIZISGoC9GD8ed8b9ShNhE1/wdgbkmYxE=; b=owGbwMvMwCGm0rPl0RXRdfaMp9WSGNJPNt+ZGvXqiuySuF3C/d/f7xAtdf+vIHAlPpYxWvnAw q79WucfdpSyMIhxMMiKKbLc/bDwXZ3c9QUR6x45wsxhZQIZwsDFKQATuTiJ4a8of04M35RIi/X+ +2xs+ucJfPRZsO/nE3923X8K69q2segy/Pfp2+z7/PYK+RTvrV8k9uwqyKzxD66oLRdg/Z4nGTD bghkA X-Developer-Key: i=msp@baylibre.com; a=openpgp; fpr=BADD88DB889FDC3E8A3D5FE612FA6A01E0A45B41 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250306_031611_702588_346ACD70 X-CRM114-Status: GOOD ( 12.24 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The CANUART pins of mcu_mcan0, mcu_mcan1, mcu_uart0 and wkup_uart0 are powered during Partial-IO and IO+DDR and are capable of waking up the system in these states. Specify the states in which these units can do a wakeup on this board. Note that the UARTs are not capable of wakeup in Partial-IO because of of a UART mux on the board not being powered during Partial-IO. As IO+DDR is not supported on am62, the UARTs are not added in this patch. Add pincontrol definitions for mcu_mcan0 and mcu_mcan1 for wakeup from Partial-IO. Add these as wakeup pinctrl entries for both devices. Signed-off-by: Markus Schneider-Pargmann --- arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts | 60 ++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts b/arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts index 8e9fc00a6b3c7459a360f9e1d6bbb60e68c460ab..f19e53efabf30fc333e3a7d9832296140642fdf3 100644 --- a/arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts +++ b/arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts @@ -232,3 +232,63 @@ &tlv320aic3106 { &gpmc0 { ranges = <0 0 0x00 0x51000000 0x01000000>; /* CS0 space. Min partition = 16MB */ }; + +&mcu_mcan0 { + pinctrl-names = "default", "wakeup"; + pinctrl-0 = <&mcu_mcan0_tx_pins_default>, <&mcu_mcan0_rx_pins_default>; + pinctrl-1 = <&mcu_mcan0_tx_pins_default>, <&mcu_mcan0_rx_pins_wakeup>; + wakeup-source = <&system_partial_io>, + <&system_deep_sleep>, + <&system_mcu_only>, + <&system_standby>; + status = "okay"; +}; + +&mcu_mcan1 { + pinctrl-names = "default", "wakeup"; + pinctrl-0 = <&mcu_mcan1_tx_pins_default>, <&mcu_mcan1_rx_pins_default>; + pinctrl-1 = <&mcu_mcan1_tx_pins_default>, <&mcu_mcan1_rx_pins_wakeup>; + wakeup-source = <&system_partial_io>, + <&system_deep_sleep>, + <&system_mcu_only>, + <&system_standby>; + status = "okay"; +}; + +&mcu_pmx0 { + mcu_mcan0_tx_pins_default: mcu-mcan0-tx-default-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x034, PIN_OUTPUT, 0) /* (D6) MCU_MCAN0_TX */ + >; + }; + + mcu_mcan0_rx_pins_default: mcu-mcan0-rx-default-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x038, PIN_INPUT, 0) /* (B3) MCU_MCAN0_RX */ + >; + }; + + mcu_mcan0_rx_pins_wakeup: mcu-mcan0-rx-wakeup-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x038, PIN_INPUT | WKUP_EN, 0) /* (B3) MCU_MCAN0_RX */ + >; + }; + + mcu_mcan1_tx_pins_default: mcu-mcan1-tx-default-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x03c, PIN_OUTPUT, 0) /* (E5) MCU_MCAN1_TX */ + >; + }; + + mcu_mcan1_rx_pins_default: mcu-mcan1-rx-default-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x040, PIN_INPUT, 0) /* (D4) MCU_MCAN1_RX */ + >; + }; + + mcu_mcan1_rx_pins_wakeup: mcu-mcan1-rx-wakeup-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x040, PIN_INPUT | WKUP_EN, 0) /* (D4) MCU_MCAN1_RX */ + >; + }; +}; From patchwork Thu Mar 6 11:14:50 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Schneider-Pargmann X-Patchwork-Id: 14004371 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 0B876C282D1 for ; Thu, 6 Mar 2025 11:46:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=1bmPV/FRPcATpuMXYpDJkVPaXRC/87HeVbHp/xQd4iw=; b=DA/KKXw5oIO9weUwD7XpyFIXt3 3CuymgB4oZE5ZsItkD/JxuGKP0RsDt4VOAmOwooluhGfejx1gMAb/JR5bNSkWqc71mBWmDKhWDvh8 Ck3FKeB2tiE0lJCQHmMwpqdK7pnuI3qUXembM2opc8hmQPJ3qgjyBjSTCtJIiJvrj5nTQEcCj6Mn4 tBkwOa8uFL2Qp+y066V9oa4lElUM6y77JK0PmptfdmHtgstDzhGAufv8bAZZEqUyQVrgr6LwiEfxb DrfhnnPO8eYTkiZouxVbXpITPa2L5omvIo9ZYGuM7kQNScdej2XJubWV3V7s7/vz/OjrZE+8d874k NEcCrxmA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tq9gG-0000000Aph4-0rsd; Thu, 06 Mar 2025 11:46:24 +0000 Received: from mail-ed1-x531.google.com ([2a00:1450:4864:20::531]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tq9D2-0000000Akg1-3ORW for linux-arm-kernel@lists.infradead.org; Thu, 06 Mar 2025 11:16:13 +0000 Received: by mail-ed1-x531.google.com with SMTP id 4fb4d7f45d1cf-5e058ca6806so895064a12.3 for ; Thu, 06 Mar 2025 03:16:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1741259771; x=1741864571; darn=lists.infradead.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=1bmPV/FRPcATpuMXYpDJkVPaXRC/87HeVbHp/xQd4iw=; b=F0SZuz+x9iZ0TFgxfF3erILbC09M5lWFt/XTcg29Vhfzhe46rVJIhbqP5a4Y7lPWqH UVxhwb/J95YBwFU4Jmq1X4kBkOpJplguJztgFv3PI1QjryVs39HK+zGd1u6kHfb0mTjF tirVq48eUjfmejoRSKkcQY1AQYaICaODF6XVKmqk0b2HuVht2BJ5QjTSXf2+RcotOdne dDEqW5Nq/xUiOisrwFHavVUFOXmFtUcwqEnIzkdBk9s/SDzqOnLY11Ekn/2jcr8EVTIe p6RyC89H7Vcgzi4remi4RWCGHkOQinWTFuY74TG3ivtC15vEDrbyDPT76DfLnyktwti2 qxTw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741259771; x=1741864571; 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=1bmPV/FRPcATpuMXYpDJkVPaXRC/87HeVbHp/xQd4iw=; b=VjjToDNoqfeItoerCWo+Bjkz6RGMzyD+agz9ZEwU61J3PUgFwZ/nrP7ao2Y80pUk+Z gXA6dQl1/WRjbojacmD4eaW8uK2BnJozNb5qTQzg5s/BN920Ig7rI7NYrImrMIniRO2D M3Uv61hvqT+TRs9GWHmhoqguJMYapMupsWCQ9lDnZs8MNdeEX0UML2mlN/h4WExExoUy egg+//JP/BxUxcSFnYIYCmYpsgfY58jo0P+okP8bK+H6hSUYRK8TTwooPMYjBRbKQk3d xfdILWkH2wiZ+FlBTP6/Br5VKJBWIpNxu3Ft/LcJ/O9fECoiW3Qe6pLJp/SxLIjKWdMQ PSWg== X-Gm-Message-State: AOJu0YyBBNAooXGB85zlGtwujCGBTxG0uFeUrLe9hGrSncivn3LpabRv m+HCdR6v2gWz6SAq5gira7xUta2MhQPQJCIkGN0eLIhkzuToTu4k1tQp1aREtvRwLSjilGX3xfL g X-Gm-Gg: ASbGnct6Uky4zK1fGK6S9fVDoFdDy/fLTg21nbMX5wJJJVqB5UyuvMt7rZ155cAYyFd w0IlnO4dlz3em8XJ0XGBK5j8mEkmALKuOpxP4rF944LiCFAmg7/DDA1KE3UmP4wR4j2Qdsb5SeK r820htNGZTgMswbmo4gVJ93tES+213oFTE3d+MZHReLw0rz9SAQFhJXyRxrEza2T8+RqZHf0B39 HlbDHjenigapoN5atKnIQQmg5o8mkL8dizX4uwuDmv7oUCY0QWSpgOrhYmSxouuNq6gmrYxIN3H ezPftwTJQ/FAQmi1o0+OciytfQ8RH1VpMXeAKMtd+w== X-Google-Smtp-Source: AGHT+IHi6H4e1zM8WhPbeq3pRF6PXTRxEnL0B0tUSBxEH6HkSKEP4U/KqR0WKz1k2tj8aWfe1ssuWw== X-Received: by 2002:a17:906:f5a9:b0:abf:4550:9764 with SMTP id a640c23a62f3a-ac20db11abemr594377066b.24.1741259771152; Thu, 06 Mar 2025 03:16:11 -0800 (PST) Received: from localhost ([2001:4091:a245:8327:80ad:8144:3b07:4679]) by smtp.gmail.com with UTF8SMTPSA id a640c23a62f3a-ac2399d4edfsm78843866b.171.2025.03.06.03.16.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 03:16:10 -0800 (PST) From: Markus Schneider-Pargmann Date: Thu, 06 Mar 2025 12:14:50 +0100 Subject: [PATCH v5 12/13] arm64: dts: ti: k3-am62a7-sk: Set wakeup-source system-states MIME-Version: 1.0 Message-Id: <20250306-topic-am62-partialio-v6-12-b4-v5-12-f9323d3744a2@baylibre.com> References: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> In-Reply-To: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> To: Nishanth Menon , Tero Kristo , Santosh Shilimkar , Vignesh Raghavendra , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Anand Gadiyar , Chandrasekar Ramakrishnan , Marc Kleine-Budde , Vincent Mailhol Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Vishal Mahaveer , Kevin Hilman , Dhruva Gole , Akashdeep Kaur , Kendall Willis , linux-can@vger.kernel.org, Markus Schneider-Pargmann X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=3107; i=msp@baylibre.com; h=from:subject:message-id; bh=KtTQn+xbWTvrFNJyHpQs15WQHP7pkgSdiPMOyaSYVSQ=; b=owGbwMvMwCGm0rPl0RXRdfaMp9WSGNJPNj88/pN5piTHvBqxmQWKsfpTdumkPitj07ATDRYwF ax8UtDbUcrCIMbBICumyHL3w8J3dXLXF0Sse+QIM4eVCWQIAxenAExklRQjw5QVdh/Kq7r+WU/W cnrmou9X/9N89lK12n2yDzu7TnNLSTP8LzPdNbMpzuPWLhOl4InzVayfuM6t7fCd4jTJ4pjjv8e b+AA= X-Developer-Key: i=msp@baylibre.com; a=openpgp; fpr=BADD88DB889FDC3E8A3D5FE612FA6A01E0A45B41 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250306_031612_855397_4C9D6FA5 X-CRM114-Status: GOOD ( 10.69 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The CANUART pins of mcu_mcan0, mcu_mcan1, mcu_uart0 and wkup_uart0 are powered during Partial-IO and IO+DDR and are capable of waking up the system in these states. Specify the states in which these units can do a wakeup on this board. Note that the UARTs are not capable of wakeup in Partial-IO because of of a UART mux on the board not being powered during Partial-IO. Add pincontrol definitions for mcu_mcan0 and mcu_mcan1 for wakeup from Partial-IO. Add these as wakeup pinctrl entries for both devices. Signed-off-by: Markus Schneider-Pargmann --- arch/arm64/boot/dts/ti/k3-am62a7-sk.dts | 76 +++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) diff --git a/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts b/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts index 1c9d95696c839a51b607839abb9429a8de6fa620..724d9a6f3c575fe35496fdd9e17d6d8e33869f92 100644 --- a/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts +++ b/arch/arm64/boot/dts/ti/k3-am62a7-sk.dts @@ -741,3 +741,79 @@ dpi1_out: endpoint { }; }; }; + +&mcu_mcan0 { + pinctrl-names = "default", "wakeup"; + pinctrl-0 = <&mcu_mcan0_tx_pins_default>, <&mcu_mcan0_rx_pins_default>; + pinctrl-1 = <&mcu_mcan0_tx_pins_default>, <&mcu_mcan0_rx_pins_wakeup>; + wakeup-source = <&system_partial_io>, + <&system_io_ddr>, + <&system_deep_sleep>, + <&system_mcu_only>, + <&system_standby>; + status = "okay"; +}; + +&mcu_mcan1 { + pinctrl-names = "default", "wakeup"; + pinctrl-0 = <&mcu_mcan1_tx_pins_default>, <&mcu_mcan1_rx_pins_default>; + pinctrl-1 = <&mcu_mcan1_tx_pins_default>, <&mcu_mcan1_rx_pins_wakeup>; + wakeup-source = <&system_partial_io>, + <&system_io_ddr>, + <&system_deep_sleep>, + <&system_mcu_only>, + <&system_standby>; + status = "okay"; +}; + +&mcu_uart0 { + wakeup-source = <&system_io_ddr>, + <&system_deep_sleep>, + <&system_mcu_only>, + <&system_standby>; +}; + +&wkup_uart0 { + wakeup-source = <&system_io_ddr>, + <&system_deep_sleep>, + <&system_mcu_only>, + <&system_standby>; +}; + +&mcu_pmx0 { + mcu_mcan0_tx_pins_default: mcu-mcan0-tx-default-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x034, PIN_OUTPUT, 0) /* (D6) MCU_MCAN0_TX */ + >; + }; + + mcu_mcan0_rx_pins_default: mcu-mcan0-rx-default-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x038, PIN_INPUT, 0) /* (B3) MCU_MCAN0_RX */ + >; + }; + + mcu_mcan0_rx_pins_wakeup: mcu-mcan0-rx-wakeup-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x038, PIN_INPUT | WKUP_EN, 0) /* (B3) MCU_MCAN0_RX */ + >; + }; + + mcu_mcan1_tx_pins_default: mcu-mcan1-tx-default-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x03c, PIN_OUTPUT, 0) /* (E5) MCU_MCAN1_TX */ + >; + }; + + mcu_mcan1_rx_pins_default: mcu-mcan1-rx-default-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x040, PIN_INPUT, 0) /* (D4) MCU_MCAN1_RX */ + >; + }; + + mcu_mcan1_rx_pins_wakeup: mcu-mcan1-rx-wakeup-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x040, PIN_INPUT | WKUP_EN, 0) /* (D4) MCU_MCAN1_RX */ + >; + }; +}; From patchwork Thu Mar 6 11:14:51 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Schneider-Pargmann X-Patchwork-Id: 14004372 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 3257DC282EC for ; Thu, 6 Mar 2025 11:48:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=XjgCrc1CiYSLXkKYjoDdBunkgeyK0ACopuUn/gOO93Y=; b=XK7W5tw+eJ1ZfW3QMEj7JegiVz 1EdvINSe01lRqi7El8TGS51u3v3JjtwvlvcLUsaRcLvGeJBwD6txufjbulVJXE0l3+2YC6pcEN5fS HhcNysWPaPWLJbAWWxlX56Z0k7Gr9d0AG1KjLtzS00UkdFtzWUqwDc6FkQ81M/5tRAXvRF4iuR8EQ aWJgl/XiMCWsmT0qKHHu6UfK8YFyiNe0O82bjnbg4AwLpCC5E5HrCt025zgkR+Cb3fV/3GqFTnBMI J5xG2jMugQgVkjHV4bunHZBaw9GjpO61FzdXB+d8+4kfg5LMluE9yDwK5cLYlhZtPe/3s2qGT17ur pVajivxg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tq9hp-0000000ApxW-3s8Z; Thu, 06 Mar 2025 11:48:01 +0000 Received: from mail-ej1-x631.google.com ([2a00:1450:4864:20::631]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tq9D4-0000000AkgS-0j0G for linux-arm-kernel@lists.infradead.org; Thu, 06 Mar 2025 11:16:15 +0000 Received: by mail-ej1-x631.google.com with SMTP id a640c23a62f3a-ac1f5157c90so86825166b.0 for ; Thu, 06 Mar 2025 03:16:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1741259772; x=1741864572; darn=lists.infradead.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=XjgCrc1CiYSLXkKYjoDdBunkgeyK0ACopuUn/gOO93Y=; b=hfAVhSjyFZ133CfsEy23HIsMpHNChJNhgyMzrJnARx6VdQh0oFwDkm9UgJxqnoU5Ex k/RYQ7CNa2u2Orj2Na58alD/zZuBnyVX/NQc8DA8p8Lqzx70nxRU/5c3jTwyQeXKJ5vd p7LPmD9PCfKnIYv1SvgRW+XFR6FrWhpyF0WOQ6HMOT8Z0tqmfQlQJ1+mv4vDXM7dn+tD NLtaLMMTKvILygT9cS7l+pCpKTl5Scl+stuUPRcAlo9K5y8SoZFG1X9lfoUs6JFiWC28 wkVwHyi3pS5fhjJt3kZWaLSdoFrjIZ7n6LYLpwhMgQ1Bhp3CHSory8q3FCDMXQ9C6RO0 8hcw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741259772; x=1741864572; 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=XjgCrc1CiYSLXkKYjoDdBunkgeyK0ACopuUn/gOO93Y=; b=Lfcgl7biCjlRfZBuzlsi0vfnPP3WyHz/L6CENJYKUjYXZAC1/gt2R+qzKE2UzQjG9j /HclOFMFrsKQQ47RIXMlFo6WaczP/+WMt80Ya2K/SGsYlOQwJTSwwyJJ1ZUGGfUjo4vC 8hCOhSxiOuYFMNYiYzYNQd2MwCFgj+GDd5Xohe6h1WwcrFiHK9P/Z7DOfw3aTMzQT8wl aVAaI5ESsx6yPRQbK3DN9mZxqGa4+9PUZQTaUe3N4+8fhWnybm33BusdsjrIWgbHWD1T d1/imfNE0yMWHp/QaG1xRFZXIdvdAwOthb4TjKN4FNRp0NR+YddNGssAdWYq1/n4/cSi cIdA== X-Gm-Message-State: AOJu0YyeMdt1sgNOQ4S5B2fBd5aRl4GbQDjsA5RLBf0w8fPOAzoHUZWc eeZr429sJiCJPOCoy6KBe4SCYfPVdowwORC7of7jvUh2CgIggnUtBFBYGYMZ0+wDpx+MkSxJj/2 C X-Gm-Gg: ASbGncviD/i4hRCVxMF3s1vxkv+1EFGZH8CL16fjMmvZdoeqIXQ5ABPUO0IVOEmBKZk WnSrMKmmDh+x9nU61R86Eq+0v/SpTLilOJFZYfWODJAgQQSIwWg+Urcc0QfwAjbhAHugY2wHmTy q92Y/pwIDYxDuH0pBa1qE4YIvJid1ZDKpj7EW+1E2ZGsVrlXnqqnNJcoCjYzkqiGuPZ8pewdO3R GYIOlS56fK8ee79Na+V1ENKx+JRiGPkdEUGUv7FsO1oYtS85WTLc6pGuOLG7R+9KS1VfE1TNisC KfyuHiHm6iKoZNOAqCxB+yYkL25kHceiJYskI6kzEQ== X-Google-Smtp-Source: AGHT+IG97CEorYWv8MdBxdHawoR/D/CVLaTZdfILEdkNvt1Fn2+vDxmsARxSKsCxTfLEbIgksTW74Q== X-Received: by 2002:a17:906:d54c:b0:abf:6f37:57df with SMTP id a640c23a62f3a-ac20e03ab40mr745282466b.51.1741259772562; Thu, 06 Mar 2025 03:16:12 -0800 (PST) Received: from localhost ([2001:4091:a245:8327:80ad:8144:3b07:4679]) by smtp.gmail.com with UTF8SMTPSA id a640c23a62f3a-ac23973a981sm77339566b.120.2025.03.06.03.16.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Mar 2025 03:16:12 -0800 (PST) From: Markus Schneider-Pargmann Date: Thu, 06 Mar 2025 12:14:51 +0100 Subject: [PATCH v5 13/13] arm64: dts: ti: k3-am62p5-sk: Set wakeup-source system-states MIME-Version: 1.0 Message-Id: <20250306-topic-am62-partialio-v6-12-b4-v5-13-f9323d3744a2@baylibre.com> References: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> In-Reply-To: <20250306-topic-am62-partialio-v6-12-b4-v5-0-f9323d3744a2@baylibre.com> To: Nishanth Menon , Tero Kristo , Santosh Shilimkar , Vignesh Raghavendra , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Anand Gadiyar , Chandrasekar Ramakrishnan , Marc Kleine-Budde , Vincent Mailhol Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Vishal Mahaveer , Kevin Hilman , Dhruva Gole , Akashdeep Kaur , Kendall Willis , linux-can@vger.kernel.org, Markus Schneider-Pargmann X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=3129; i=msp@baylibre.com; h=from:subject:message-id; bh=VbF63lIgRDIHEDh0j1eHwrNJ7kNRLfR5v3SvlStjSYs=; b=owGbwMvMwCGm0rPl0RXRdfaMp9WSGNJPNj9bP3Om+c6c/W0NXvezuVwKil+enfVcUPiCfG3TX sFdPzilOkpZGMQ4GGTFFFnuflj4rk7u+oKIdY8cYeawMoEMYeDiFICJGGQz/BXwPWbXHCl3t6Ds ou+51SzTF11Ycez5J8vUJ6WGSXOvZnoyMpw4YGVWf+qQtSDHnA0qLGVPzNYuj9ggMoP3gjirztz UfmYA X-Developer-Key: i=msp@baylibre.com; a=openpgp; fpr=BADD88DB889FDC3E8A3D5FE612FA6A01E0A45B41 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250306_031614_216549_16C8EC50 X-CRM114-Status: GOOD ( 10.89 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The CANUART pins of mcu_mcan0, mcu_mcan1, mcu_uart0 and wkup_uart0 are powered during Partial-IO and IO+DDR and are capable of waking up the system in these states. Specify the states in which these units can do a wakeup on this board. Note that the UARTs are not capable of wakeup in Partial-IO because of of a UART mux on the board not being powered during Partial-IO. Add pincontrol definitions for mcu_mcan0 and mcu_mcan1 for wakeup from Partial-IO. Add these as wakeup pinctrl entries for both devices. Signed-off-by: Markus Schneider-Pargmann --- arch/arm64/boot/dts/ti/k3-am62p5-sk.dts | 76 +++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) diff --git a/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts b/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts index d29f524600af017af607e2cb6122d3a581575ffc..35b950e444353c416e33344dfff42e2edeab3aba 100644 --- a/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts +++ b/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts @@ -683,3 +683,79 @@ &mcu_gpio0 { &mcu_gpio_intr { status = "reserved"; }; + +&mcu_mcan0 { + pinctrl-names = "default", "wakeup"; + pinctrl-0 = <&mcu_mcan0_tx_pins_default>, <&mcu_mcan0_rx_pins_default>; + pinctrl-1 = <&mcu_mcan0_tx_pins_default>, <&mcu_mcan0_rx_pins_wakeup>; + wakeup-source = <&system_partial_io>, + <&system_io_ddr>, + <&system_deep_sleep>, + <&system_mcu_only>, + <&system_standby>; + status = "okay"; +}; + +&mcu_mcan1 { + pinctrl-names = "default", "wakeup"; + pinctrl-0 = <&mcu_mcan1_tx_pins_default>, <&mcu_mcan1_rx_pins_default>; + pinctrl-1 = <&mcu_mcan1_tx_pins_default>, <&mcu_mcan1_rx_pins_wakeup>; + wakeup-source = <&system_partial_io>, + <&system_io_ddr>, + <&system_deep_sleep>, + <&system_mcu_only>, + <&system_standby>; + status = "okay"; +}; + +&mcu_uart0 { + wakeup-source = <&system_io_ddr>, + <&system_deep_sleep>, + <&system_mcu_only>, + <&system_standby>; +}; + +&wkup_uart0 { + wakeup-source = <&system_io_ddr>, + <&system_deep_sleep>, + <&system_mcu_only>, + <&system_standby>; +}; + +&mcu_pmx0 { + mcu_mcan0_tx_pins_default: mcu-mcan0-tx-default-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x034, PIN_OUTPUT, 0) /* (D6) MCU_MCAN0_TX */ + >; + }; + + mcu_mcan0_rx_pins_default: mcu-mcan0-rx-default-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x038, PIN_INPUT, 0) /* (B3) MCU_MCAN0_RX */ + >; + }; + + mcu_mcan0_rx_pins_wakeup: mcu-mcan0-rx-wakeup-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x038, PIN_INPUT | WKUP_EN, 0) /* (B3) MCU_MCAN0_RX */ + >; + }; + + mcu_mcan1_tx_pins_default: mcu-mcan1-tx-default-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x03c, PIN_OUTPUT, 0) /* (E5) MCU_MCAN1_TX */ + >; + }; + + mcu_mcan1_rx_pins_default: mcu-mcan1-rx-default-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x040, PIN_INPUT, 0) /* (D4) MCU_MCAN1_RX */ + >; + }; + + mcu_mcan1_rx_pins_wakeup: mcu-mcan1-rx-wakeup-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x040, PIN_INPUT | WKUP_EN, 0) /* (D4) MCU_MCAN1_RX */ + >; + }; +};