From patchwork Tue Mar 30 00:23:36 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zev Weiss X-Patchwork-Id: 12171397 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-17.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3A35EC433E1 for ; Tue, 30 Mar 2021 01:53:31 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id A041C6198F for ; Tue, 30 Mar 2021 01:53:30 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A041C6198F Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=bewilderbeest.net Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding :Content-Type:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: Subject:Cc:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=+pHSOguBw2TcvOp2tdXhJiZC4nzjOpyXySB9G9FIZ8o=; b=TzaauukMWJR57F4pRIdBv+q8Y rsPkxo1e4V6lCGt8+YhO9I/eNALVUIHgBiKUkw9uNjsRTt5Y+x6HfJDh6yhEvc3CmV1wmUyk/+dfO rqlRLTV5d0S9lRWq/2j9X5c9UKV2k+TdbfwrTFx27IXY2EyBO/I6mhuxjVIftMj4r9kIv2H8PtYFC eVjtzSjYF2nH5okfeWpUX98OFtgjMITKEvmcoj7bfEZBCLHREFaTheBqPsMkpgz2uvyknK0Kfaqj4 8sfA0V9zFPsHuUJ6KNIhmveT/KI5W8bG8rrBfHZys4UhasaFQqJ1nbQMg9l58OMgc6c8T6AR/fxgL HZ4a47pSg==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1lR3X1-002NO4-N4; Tue, 30 Mar 2021 01:51:00 +0000 Received: from thorn.bewilderbeest.net ([2605:2700:0:5::4713:9cab]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lR2BQ-002AEo-B6 for linux-arm-kernel@lists.infradead.org; Tue, 30 Mar 2021 00:24:57 +0000 Received: from hatter.bewilderbeest.net (unknown [IPv6:2600:6c44:7f:ba20::7c6]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: zev) by thorn.bewilderbeest.net (Postfix) with ESMTPSA id 1D52E196; Mon, 29 Mar 2021 17:24:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bewilderbeest.net; s=thorn; t=1617063875; bh=a68ojvNQDbC+AUZLivBjbDIVsO6PemBG+Kg4ci1snXQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=RqMybm5NJ4LYIhg26JQHwqz1DqUbeW6JqFIDkVy/f9JY4rOkesBZXpH2elHvtVPwS ScownTse3Njf4e6vksmTwA1+EusamiR6MUBgu/4ambtOYvjDXYKz9WD7Fk8oWItPDJ MTBu7fBKSLQy4SRV3pk7ohlOWnOSfN0knhcL0jOs= From: Zev Weiss To: Joel Stanley Cc: openbmc@lists.ozlabs.org, linux-arm-kernel@lists.infradead.org, linux-aspeed@lists.ozlabs.org, linux-kernel@vger.kernel.org, Andrew Jeffery , Zev Weiss , Greg Kroah-Hartman , Jiri Slaby , "Alexander A. Klimov" , Masahiro Yamada , Josh Triplett , linux-serial@vger.kernel.org Subject: [PATCH 1/3] drivers/tty/serial/8250: simplify Aspeed VUART SIRQ polarity DT config Date: Mon, 29 Mar 2021 19:23:36 -0500 Message-Id: <20210330002338.335-2-zev@bewilderbeest.net> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210330002338.335-1-zev@bewilderbeest.net> References: <20210330002338.335-1-zev@bewilderbeest.net> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210330_012455_605782_3903B014 X-CRM114-Status: GOOD ( 15.70 ) 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 initial implementation of this configuration conflated the SIRQ polarity setting with the syscon eSPI/LPC strapping; this patch disentangles them by reducing the DT config to a simple boolean. Signed-off-by: Zev Weiss --- drivers/tty/serial/8250/8250_aspeed_vuart.c | 39 ++------------------- drivers/tty/serial/8250/Kconfig | 1 - 2 files changed, 2 insertions(+), 38 deletions(-) diff --git a/drivers/tty/serial/8250/8250_aspeed_vuart.c b/drivers/tty/serial/8250/8250_aspeed_vuart.c index c33e02cbde93..b9b5fa58ab28 100644 --- a/drivers/tty/serial/8250/8250_aspeed_vuart.c +++ b/drivers/tty/serial/8250/8250_aspeed_vuart.c @@ -10,8 +10,6 @@ #include #include #include -#include -#include #include #include #include @@ -346,30 +344,8 @@ static int aspeed_vuart_handle_irq(struct uart_port *port) return 1; } -static void aspeed_vuart_auto_configure_sirq_polarity( - struct aspeed_vuart *vuart, struct device_node *syscon_np, - u32 reg_offset, u32 reg_mask) -{ - struct regmap *regmap; - u32 value; - - regmap = syscon_node_to_regmap(syscon_np); - if (IS_ERR(regmap)) { - dev_warn(vuart->dev, - "could not get regmap for aspeed,sirq-polarity-sense\n"); - return; - } - if (regmap_read(regmap, reg_offset, &value)) { - dev_warn(vuart->dev, "could not read hw strap table\n"); - return; - } - - aspeed_vuart_set_sirq_polarity(vuart, (value & reg_mask) == 0); -} - static int aspeed_vuart_probe(struct platform_device *pdev) { - struct of_phandle_args sirq_polarity_sense_args; struct uart_8250_port port; struct aspeed_vuart *vuart; struct device_node *np; @@ -468,19 +444,8 @@ static int aspeed_vuart_probe(struct platform_device *pdev) vuart->line = rc; - rc = of_parse_phandle_with_fixed_args( - np, "aspeed,sirq-polarity-sense", 2, 0, - &sirq_polarity_sense_args); - if (rc < 0) { - dev_dbg(&pdev->dev, - "aspeed,sirq-polarity-sense property not found\n"); - } else { - aspeed_vuart_auto_configure_sirq_polarity( - vuart, sirq_polarity_sense_args.np, - sirq_polarity_sense_args.args[0], - BIT(sirq_polarity_sense_args.args[1])); - of_node_put(sirq_polarity_sense_args.np); - } + if (of_property_read_bool(np, "aspeed,sirq-active-high")) + aspeed_vuart_set_sirq_polarity(vuart, 1); aspeed_vuart_set_enabled(vuart, true); aspeed_vuart_set_host_tx_discard(vuart, true); diff --git a/drivers/tty/serial/8250/Kconfig b/drivers/tty/serial/8250/Kconfig index 603137da4736..105a325bcdd1 100644 --- a/drivers/tty/serial/8250/Kconfig +++ b/drivers/tty/serial/8250/Kconfig @@ -254,7 +254,6 @@ config SERIAL_8250_ASPEED_VUART tristate "Aspeed Virtual UART" depends on SERIAL_8250 depends on OF - depends on REGMAP && MFD_SYSCON help If you want to use the virtual UART (VUART) device on Aspeed BMC platforms, enable this option. This enables the 16550A-