Received: by 2002:a25:8b12:0:0:0:0:0 with SMTP id i18csp3800124ybl; Mon, 26 Aug 2019 00:19:22 -0700 (PDT) X-Google-Smtp-Source: APXvYqz6OJvtbTx4jA+07Cd9/veq48FuDG7drmtspRIb+gKb9JY120KDFuVxh92/AKdVtOnAObhn X-Received: by 2002:a62:c584:: with SMTP id j126mr5515321pfg.21.1566803962116; Mon, 26 Aug 2019 00:19:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1566803962; cv=none; d=google.com; s=arc-20160816; b=Jx9lsYksH3qs8QakZaDfTbis2NEwhBaYGEsHkQNyC0aEQcoOSFO8O9zBOUwTq1TyNh Olchmn1/t8h3GE20v96x41Na/GnYBv56hvvcxfeXGwk41nfQ/LOHjjnjrK7o6ALHobzn Um12WQXMtiWg+Tpogcl6bjcpXxKMGVBW5zqPwzKPPE5wq4fScrUtgbNb0OnsuXJm/5ip ulvHQcHWAH2JrVQkXFNaEzpfttJz/rlGZJXeAZtFaranrNjn3ZIVoNcQsqkZnkYO750/ 10LxR9J1iB3n1GB3ZQ28l1oTRCUyhBPQgG5PmScnJ7GOH3HSaDkOODv0a2e5LvDOKIae /QKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=VM0i+HbQcoHkYJJw8AmMRth0Vj3bfPKY+WqSiqGn1IQ=; b=ltZqK7oAakcvqSNCkHwiwNsQ72NBPBWDjskp5xXSABzkx/vhaZOPx3b97njq/3SZTT xMlIgRxySZv5/j/cmDZeQHCK4L8mHzphC8v+p6uexkDbWchK6su+pYGLz8eW8cyCYqKA 7KQCdeRkfl+4kFYCogazgsNShGIYqIndYNQAAKRPVay4wG0jeDbpVPy/91V1Z329UySo nkoA73Qzhyup7BgB32BIfOh9bSHKPDw+v4szR6AXRBLS5bWauk/8GkI9If0BOSgLo4aI kDjfhtHOEyWcLFO+sq5BtIZJxsGwBn0eyho57fhv0tVcclWeuI9y27WukRSBV5n//O+Z fX1A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=D6Wo39Ml; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e24si8381242pgn.544.2019.08.26.00.19.06; Mon, 26 Aug 2019 00:19:22 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=D6Wo39Ml; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729867AbfHZHSJ (ORCPT + 99 others); Mon, 26 Aug 2019 03:18:09 -0400 Received: from mail-wm1-f65.google.com ([209.85.128.65]:51122 "EHLO mail-wm1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727228AbfHZHSJ (ORCPT ); Mon, 26 Aug 2019 03:18:09 -0400 Received: by mail-wm1-f65.google.com with SMTP id v15so14390286wml.0; Mon, 26 Aug 2019 00:18:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=VM0i+HbQcoHkYJJw8AmMRth0Vj3bfPKY+WqSiqGn1IQ=; b=D6Wo39MlDNinRfzLvY0bTdk86E2JxqjjV1T5YBQ2whdaSjbzPM7js1rU09B4FSbqfy lWD9yBbSVQ5JMslvFrpDxVJWJibtVyr6alAPXXFKVH4L24SOv3E9negZHv/KbCFZikG8 bsLdqY1MHWSF/DKll5NsvfmDXj9515sFLMc1UOkWVjSJ8TkBD4+byoZohCLJm9vTOSjU 1MkQ6V1XK3Se4vepQc/Yi0s9aa9G8rTWj6fcbCDTW71jLMJFFMzV7p9aMjJCAb0ujXrQ 7eTNGf1z+gVhhwl6ptNj2tXTAUphkiscByUBBP9i++jpOrdaR5jIE4H4iqUd6ffKPOGY wVCA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=VM0i+HbQcoHkYJJw8AmMRth0Vj3bfPKY+WqSiqGn1IQ=; b=r7mwgO5n81GaTJ8SFxiFfvaH0teAr2cqATpVwMkacuRhKfp8ZGV1Bq3aMMmJw6xlk1 kipqeXULBdWaJJHj7JQkNvyW8Q5slGKdiJUl51qJE+KfIR2y/GpYTFA/TCACHMxKPijJ E7b4vfPpRvVJhlrUoxGRh4z5JkeE+lF67ntFB4PByEdKV6AaaWdePg93z3Qipjxd5iWC UauGzKj3O4o+EG4Ny5GbWSi3LmMpHFyDAqW3Y1IflLoVujvhf+wb5A3iSSeKnXX3OyS2 7R0PpBQkv2P7bIl37kLjzwhrgKD8N2YyXxFvE8H2U2Y9i74oQAyDqVPzhLTjHfHTQTya 3PVg== X-Gm-Message-State: APjAAAU2HyXKEkDM6lP5OCHRX5o1Po82d7tVCtwMhsyf7+sIQv4tj4qb uoJZamVOy/youcTySVi1E6c= X-Received: by 2002:a1c:a701:: with SMTP id q1mr19160124wme.72.1566803886960; Mon, 26 Aug 2019 00:18:06 -0700 (PDT) Received: from localhost ([46.227.18.67]) by smtp.gmail.com with ESMTPSA id f13sm9703479wrr.5.2019.08.26.00.18.05 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 26 Aug 2019 00:18:05 -0700 (PDT) From: Richard Genoud To: Greg Kroah-Hartman Cc: Geert Uytterhoeven , =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= , linux-serial@vger.kernel.org, Nicolas Ferre , Alexandre Belloni , Ludovic Desroches , linux-kernel@vger.kernel.org, Richard Genoud Subject: [PATCH v2] tty/serial: atmel: remove unneeded atmel_get_lines_status function Date: Mon, 26 Aug 2019 09:17:52 +0200 Message-Id: <20190826071752.30396-1-richard.genoud@gmail.com> X-Mailer: git-send-email 2.19.2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Since commit 18dfef9c7f87 ("serial: atmel: convert to irq handling provided mctrl-gpio"), the GPIOs interrupts are handled by mctrl_gpio_irq_handle(). So, atmel_get_lines_status() can be completely killed and replaced by : atmel_uart_readl(port, ATMEL_US_CSR); Suggested-by: Uwe Kleine-König Acked-by: Uwe Kleine-König Signed-off-by: Richard Genoud --- drivers/tty/serial/atmel_serial.c | 48 ++----------------------------- 1 file changed, 2 insertions(+), 46 deletions(-) Changes from v1: - point out the right commit (thx Uwe) - add Suggested-by/Acked-by diff --git a/drivers/tty/serial/atmel_serial.c b/drivers/tty/serial/atmel_serial.c index 9a54c9e6d36e..a8dc8af83f39 100644 --- a/drivers/tty/serial/atmel_serial.c +++ b/drivers/tty/serial/atmel_serial.c @@ -294,50 +294,6 @@ static void atmel_tasklet_schedule(struct atmel_uart_port *atmel_port, tasklet_schedule(t); } -static unsigned int atmel_get_lines_status(struct uart_port *port) -{ - struct atmel_uart_port *atmel_port = to_atmel_uart_port(port); - unsigned int status, ret = 0; - - status = atmel_uart_readl(port, ATMEL_US_CSR); - - mctrl_gpio_get(atmel_port->gpios, &ret); - - if (!IS_ERR_OR_NULL(mctrl_gpio_to_gpiod(atmel_port->gpios, - UART_GPIO_CTS))) { - if (ret & TIOCM_CTS) - status &= ~ATMEL_US_CTS; - else - status |= ATMEL_US_CTS; - } - - if (!IS_ERR_OR_NULL(mctrl_gpio_to_gpiod(atmel_port->gpios, - UART_GPIO_DSR))) { - if (ret & TIOCM_DSR) - status &= ~ATMEL_US_DSR; - else - status |= ATMEL_US_DSR; - } - - if (!IS_ERR_OR_NULL(mctrl_gpio_to_gpiod(atmel_port->gpios, - UART_GPIO_RI))) { - if (ret & TIOCM_RI) - status &= ~ATMEL_US_RI; - else - status |= ATMEL_US_RI; - } - - if (!IS_ERR_OR_NULL(mctrl_gpio_to_gpiod(atmel_port->gpios, - UART_GPIO_DCD))) { - if (ret & TIOCM_CD) - status &= ~ATMEL_US_DCD; - else - status |= ATMEL_US_DCD; - } - - return status; -} - /* Enable or disable the rs485 support */ static int atmel_config_rs485(struct uart_port *port, struct serial_rs485 *rs485conf) @@ -1453,7 +1409,7 @@ static irqreturn_t atmel_interrupt(int irq, void *dev_id) spin_lock(&atmel_port->lock_suspended); do { - status = atmel_get_lines_status(port); + status = atmel_uart_readl(port, ATMEL_US_CSR); mask = atmel_uart_readl(port, ATMEL_US_IMR); pending = status & mask; if (!pending) @@ -2002,7 +1958,7 @@ static int atmel_startup(struct uart_port *port) } /* Save current CSR for comparison in atmel_tasklet_func() */ - atmel_port->irq_status_prev = atmel_get_lines_status(port); + atmel_port->irq_status_prev = atmel_uart_readl(port, ATMEL_US_CSR); /* * Finally, enable the serial port