Received: by 2002:a89:48b:0:b0:1f5:f2ab:c469 with SMTP id a11csp416259lqd; Wed, 24 Apr 2024 06:28:53 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCVftjxvhKw8WL4FR4vqH8hpHQuxFLdNYfT2mDLKval7awipKIi5MtvFloKz5u4vwkgGHlYQpQZtnJK84njjGqGcv2F3gLYZZt6gyumy9A== X-Google-Smtp-Source: AGHT+IESAJjWAyCvo9Nr7V9V8xnf5ATLwIUX0WghRUNLfF7EmwHydXxQ4QVH3qsOF2CejiOHh/xL X-Received: by 2002:a17:90a:f68d:b0:2a2:7edd:19b7 with SMTP id cl13-20020a17090af68d00b002a27edd19b7mr1985753pjb.27.1713965332859; Wed, 24 Apr 2024 06:28:52 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1713965332; cv=pass; d=google.com; s=arc-20160816; b=INupsmsu+AXf84q07Q8IOfZTK6rFFVrEufuv3m434GivEwtel+DCxlMNDBSuxyDKXN gjyazW03jt6HkHqSWXdF7hT3dPcFKctwgClhE15J3gN+xpVa9aO3//EL+YIest6lNM02 drZfc62AtVfLI2GIyX2VRaBuzo54+YVTRF8Ktwsa9FgBJoUDho/rLZBjyn05my9GNcUX kQxAbC+996HDydHQKCJKiDwVdAe/4ZbyYQtwMYRNu6m1roC1CM/8uVMLOfw6BqJZtAIL CuYmj+12LVZ/0t6MQnDG9DbUZD22+QycYzJooZ5pPLAWBkY5rPm6RoEPzwnp7d+Gbn0L fkpQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:cc:to :from:dkim-signature; bh=ZWmvHblwyLfpV+rEC2PSqDTFbQMnE4MDRNUxWTIYKmE=; fh=iNTmg1pdnfbg3rtIMTdipK8jws3Y7yJJMFGdZe5CkgE=; b=b6vo6icJej8f7IFi5zRUd2HjNuJ+/FiN67OcgtjP1gIajh56+NSSOXp2nooSlRBgOG r3ADMWyGEdERC823GUPf98+lx9QVET2vCxOhLOn995AR8SBojitpvpLSo92CoP5Ugb2K XW7qlpvqEc7uLww52a6/eTe8Pboh+fgbDHWq+QhWlHK8NIFddKKZ3yDl3IFvMTV08/DE ecQrA3s+3/0GvX9NWq96wDkcCECti3qHsWHulYxuQA2QffcmQ6yoyAscFoD1aJf10flI ZrpmqGo9KhSx/Q+ZPee19uCXLefyzisloOHAO9MynmRVuK99EhbtqBsNmp7CtAEFqvfx 89bw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=McPBIgIf; arc=pass (i=1 spf=pass spfdomain=chromium.org dkim=pass dkdomain=chromium.org dmarc=pass fromdomain=chromium.org); spf=pass (google.com: domain of linux-kernel+bounces-156926-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:40f1:3f00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-156926-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Return-Path: Received: from sy.mirrors.kernel.org (sy.mirrors.kernel.org. [2604:1380:40f1:3f00::1]) by mx.google.com with ESMTPS id mh4-20020a17090b4ac400b002ae7ee9045esi3589215pjb.72.2024.04.24.06.28.52 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Apr 2024 06:28:52 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-156926-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:40f1:3f00::1 as permitted sender) client-ip=2604:1380:40f1:3f00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=McPBIgIf; arc=pass (i=1 spf=pass spfdomain=chromium.org dkim=pass dkdomain=chromium.org dmarc=pass fromdomain=chromium.org); spf=pass (google.com: domain of linux-kernel+bounces-156926-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:40f1:3f00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-156926-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sy.mirrors.kernel.org (Postfix) with ESMTPS id 4E885B24198 for ; Wed, 24 Apr 2024 13:06:51 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 268F815B15C; Wed, 24 Apr 2024 13:06:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="McPBIgIf" Received: from mail-pf1-f172.google.com (mail-pf1-f172.google.com [209.85.210.172]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C1AE115B14B for ; Wed, 24 Apr 2024 13:06:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.172 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1713963994; cv=none; b=Vu6VR+KXzKrP03xQkDySlhco7kTrcx5qv9OPC10aErbWi9JdrVjEU7NsbOln4U/DW/q8DVtRW1ZbZSk/UzF/TR+soXY1mGyfZHsWc3bcp90hk/4Jv+LKJhm9JuSaDmBROhZ9jPN52k0M0wBTMHwTluaN2j0tB3KaSqElbi9WlIM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1713963994; c=relaxed/simple; bh=lvGq478npegdfe7X33ro4L3C4YXKBVJlBkfyJxEJbXo=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=YdMpmpI+cjKcNo0uBwVw4irMB1DPCZtRD2UmNRzZcDSPQ+jY1MnidGBt5FM168U1hnrRPv2hkKOirVbYnQxDhfVtcZzi7AUPfO5+foC3ECDkXAEgCePJ20HytUtXSv+Qbvu9utPSuCRuvIv0GAyPy0bY4sTt/RW7hYVNyS1arB4= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=McPBIgIf; arc=none smtp.client-ip=209.85.210.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Received: by mail-pf1-f172.google.com with SMTP id d2e1a72fcca58-6ed3cafd766so5634879b3a.0 for ; Wed, 24 Apr 2024 06:06:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1713963990; x=1714568790; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=ZWmvHblwyLfpV+rEC2PSqDTFbQMnE4MDRNUxWTIYKmE=; b=McPBIgIfkGSRkg6nVkKfnpiWJ72i3SZ6PIocpp0PgvijkzJ+L2JrlrVVGO8WWp9/Ko 7HIZz0gNBSsAWkm3GzQy5UtULLMz2J4uEXvZVt8J7x1Pr0BnRsxRf9CqlRrxvzVU+H8X n43ZvyrPBXhvaigwVjMMFttxgWzH+bjK2wI+E= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713963990; x=1714568790; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=ZWmvHblwyLfpV+rEC2PSqDTFbQMnE4MDRNUxWTIYKmE=; b=L0g3iS47CxTz2Rf7LdkBAf0m7fo8iqQcfcWAW9BG8NDTpfF+0k/K5CjVBemRGkoKGj uK0uL1ocJGE8UpLobJBUNMhMNLo2f/KEfYgCs2sl0/BTUAeLyF0nmxBoqQ5PflAqQrqk 7sG5f3PzsGRBwCXnE8/ejOyiBhghKImgJb05b1mascYyXYZxPdy9ZeqEt0Gf492cJAJZ Lak900Iu3Mcw6xrBLcb9Zt3Lgu8OKASGSbyxHwBHHtNFfkVK1PLUBvpqfaWi8GK4eic9 a5zFFB65ltcIJilDe6lufdk8mHjL9RgmNJllvM9gwBxjJoc954FHwvXkc82Y0QFhvg8O LeHg== X-Gm-Message-State: AOJu0YyteSGrQmZs7M14F1pCAKGBxufVkybfIDXDxwqAGT52nD3fnJYZ x+J4RXl7TbGRGurujLudbxQ0/2fpLl72kK3GUqSE5oqEvaOA9rxbYiHKY71HQA== X-Received: by 2002:a05:6a20:c6cd:b0:1ad:7fd1:ee2e with SMTP id gw13-20020a056a20c6cd00b001ad7fd1ee2emr2131046pzb.13.1713963989985; Wed, 24 Apr 2024 06:06:29 -0700 (PDT) Received: from treapking.tpe.corp.google.com ([2401:fa00:1:10:836:835b:e0f2:a3a0]) by smtp.gmail.com with ESMTPSA id y5-20020a637d05000000b005f3d2a9a91bsm9981158pgc.89.2024.04.24.06.06.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Apr 2024 06:06:29 -0700 (PDT) From: Pin-yen Lin To: Greg Kroah-Hartman , Jiri Slaby , Matthias Brugger , AngeloGioacchino Del Regno Cc: linux-kernel@vger.kernel.org, Hilda Wu , Pin-yen Lin , KidmanLee , linux-mediatek@lists.infradead.org, Archie Pusaka , Chen-Yu Tsai , linux-serial@vger.kernel.org, Al Cooper , linux-arm-kernel@lists.infradead.org, Hsin-Te Yuan Subject: [PATCH v2] serial: 8520_mtk: Set RTS on shutdown for Rx in-band wakeup Date: Wed, 24 Apr 2024 20:58:08 +0800 Message-ID: <20240424130619.2924456-1-treapking@chromium.org> X-Mailer: git-send-email 2.44.0.769.g3c40516874-goog Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit When Rx in-band wakeup is enabled, set RTS to true in mtk8250_shutdown() so the connected device can still send message and trigger IRQ when the system is suspended. Fixes: 18c9d4a3c249 ("serial: When UART is suspended, set RTS to false") Signed-off-by: Pin-yen Lin --- Changes in v2: - Replase serial8250_set_mctrl() with serial8250_do_set_mctrl() drivers/tty/serial/8250/8250_mtk.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/tty/serial/8250/8250_mtk.c b/drivers/tty/serial/8250/8250_mtk.c index c365a349421a..b9cca210e171 100644 --- a/drivers/tty/serial/8250/8250_mtk.c +++ b/drivers/tty/serial/8250/8250_mtk.c @@ -209,15 +209,19 @@ static int mtk8250_startup(struct uart_port *port) static void mtk8250_shutdown(struct uart_port *port) { -#ifdef CONFIG_SERIAL_8250_DMA struct uart_8250_port *up = up_to_u8250p(port); struct mtk8250_data *data = port->private_data; + int irq = data->rx_wakeup_irq; +#ifdef CONFIG_SERIAL_8250_DMA if (up->dma) data->rx_status = DMA_RX_SHUTDOWN; #endif - return serial8250_do_shutdown(port); + serial8250_do_shutdown(port); + + if (irq >= 0) + serial8250_do_set_mctrl(&up->port, TIOCM_RTS); } static void mtk8250_disable_intrs(struct uart_8250_port *up, int mask) -- 2.44.0.769.g3c40516874-goog