From patchwork Fri Sep 28 02:05:08 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Masahiro Yamada X-Patchwork-Id: 147754 Delivered-To: patch@linaro.org Received: by 2002:a2e:8595:0:0:0:0:0 with SMTP id b21-v6csp159027lji; Thu, 27 Sep 2018 19:06:44 -0700 (PDT) X-Google-Smtp-Source: ACcGV60vOaJsiEo6CiFMRjq37u9+cDcD3GoQGLauuV9t0+SuxORAV6/fQtch9FQvp+5rSySP4u7z X-Received: by 2002:a62:4dc1:: with SMTP id a184-v6mr14217415pfb.5.1538100403885; Thu, 27 Sep 2018 19:06:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1538100403; cv=none; d=google.com; s=arc-20160816; b=pViuBR2UCGNAl7isqDdnDLWugZyOUHAJo5zdJ9z8IpKxpP2f5S443HOYG/FoU3fMwz ib37g2QRJRrZhI7Lqne7Z4iNQqMCgF6/CqR1pgD4TrwlPNqxnvaln7PZFIdg2Lzuc5lp FolsYV8XGEwnmU+e1Q6zYGP84yrIWZtouXNpLpj9Vt5Fz/SFvKKlprO9Y4BN7bkvy0aV hILsqp9byRS88PoG+zFgfhsQoP5U++QB6RsdpyfoHE/a6b8ovM6B1Ljz4sGA8ulEVfqS 6nbltCZ2IYZg8ESp3X6BCmG1nBdpk2nMFtgc0K9OA+eQJP9XpYtV9lFS0e4lKidqB0b4 M3ZQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature:dkim-filter; bh=EqRd+5cNk7+zWbyynhC051ZQ8Ujg1qu2ddHKUFsjyCw=; b=hM08XdKlkNOnC0jg+Kc7ZXLSYzeZnA3R+DFPcl7hKb9bsS/i/3hGM0qxzfWyRaoPMy Txs+JhbomN1YjPrOTztgQjR82knV6bDIHW5olH/uF9OJtWiaL3o9X7l6g8w0Sqbg+NwD rQodY56oIDwlC4dZ73WaC1pUaam/HTfqE1H0mXzWLosFyGKBHlcpjllIaCHhMdYpVcsO ABo4mKnpFGsxsVzBc+1d14Ns5AXUWd3ZcUT3UzOekItnGnzzlqEltkGsbNRLNyw+PsPy e9mSLpUt4k4dnsTC3uFNdXvkv/kTCygoTzE8/pppQyKLQ+/E8vhtYfXBL3JJOHtxK9vo 7K3A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@nifty.com header.s=dec2015msa header.b=XR3d8tCh; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h36-v6si3275175pgm.125.2018.09.27.19.06.43; Thu, 27 Sep 2018 19:06:43 -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=@nifty.com header.s=dec2015msa header.b=XR3d8tCh; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728767AbeI1I1x (ORCPT + 32 others); Fri, 28 Sep 2018 04:27:53 -0400 Received: from conuserg-11.nifty.com ([210.131.2.78]:52928 "EHLO conuserg-11.nifty.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728643AbeI1I1w (ORCPT ); Fri, 28 Sep 2018 04:27:52 -0400 Received: from pug.e01.socionext.com (p14092-ipngnfx01kyoto.kyoto.ocn.ne.jp [153.142.97.92]) (authenticated) by conuserg-11.nifty.com with ESMTP id w8S25FOi028340; Fri, 28 Sep 2018 11:05:17 +0900 DKIM-Filter: OpenDKIM Filter v2.10.3 conuserg-11.nifty.com w8S25FOi028340 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.com; s=dec2015msa; t=1538100318; bh=EqRd+5cNk7+zWbyynhC051ZQ8Ujg1qu2ddHKUFsjyCw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=XR3d8tChezqibpT4U9CJDIOLWdsJu1U9Ln9/lSMWkywsG332w807gZURAEEABpKak aQIkKD5QAtQ6cYydan6wUR+UY8JDsQj6VtQGT/exQAWOFv+45ixXl0Ru06sUtNRqj9 M7t5jtRWjN+/GAfppNRtNnsF1w+k3C81nn1EhMNNgwvCWqVP5s4F4o6Lvgeo8mvbFF 3NwdIOR8JiiQOgwypsfZRXIJaGX7b2oP+qWHmQtSoM+p5R37+KqYSVgLFvajagWoWs 5lojyAofueRj9Qwobz/AJ7F8Uu9JmczT7e+AtLCcGEMJTs9B0FychgtVc5eHg7rduZ 4FiKDMe8GTEHg== X-Nifty-SrcIP: [153.142.97.92] From: Masahiro Yamada To: Greg KH , linux-serial@vger.kernel.org Cc: Dai Okamura , Masahiro Yamada , Jiri Slaby , linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: [PATCH v2 2/3] serial: 8250_uniphier: flatten probe function Date: Fri, 28 Sep 2018 11:05:08 +0900 Message-Id: <1538100309-24323-3-git-send-email-yamada.masahiro@socionext.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1538100309-24323-1-git-send-email-yamada.masahiro@socionext.com> References: <1538100309-24323-1-git-send-email-yamada.masahiro@socionext.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Currently, the DT-related settings are split out to uniphier_of_serial_setup(), but it turned out to be not nice. The next commit will add a DT property, but it will not fit in the helper. Merge the helper into the probe function. Signed-off-by: Masahiro Yamada --- Changes in v2: None drivers/tty/serial/8250/8250_uniphier.c | 49 ++++++++++++--------------------- 1 file changed, 17 insertions(+), 32 deletions(-) -- 2.7.4 diff --git a/drivers/tty/serial/8250/8250_uniphier.c b/drivers/tty/serial/8250/8250_uniphier.c index d292654..1028c02 100644 --- a/drivers/tty/serial/8250/8250_uniphier.c +++ b/drivers/tty/serial/8250/8250_uniphier.c @@ -155,36 +155,6 @@ static void uniphier_serial_dl_write(struct uart_8250_port *up, int value) writel(value, up->port.membase + UNIPHIER_UART_DLR); } -static int uniphier_of_serial_setup(struct device *dev, struct uart_port *port, - struct uniphier8250_priv *priv) -{ - int ret; - u32 prop; - struct device_node *np = dev->of_node; - - ret = of_alias_get_id(np, "serial"); - if (ret < 0) { - dev_err(dev, "failed to get alias id\n"); - return ret; - } - port->line = ret; - - /* Get clk rate through clk driver */ - priv->clk = devm_clk_get(dev, NULL); - if (IS_ERR(priv->clk)) { - dev_err(dev, "failed to get clock\n"); - return PTR_ERR(priv->clk); - } - - ret = clk_prepare_enable(priv->clk); - if (ret < 0) - return ret; - - port->uartclk = clk_get_rate(priv->clk); - - return 0; -} - static int uniphier_uart_probe(struct platform_device *pdev) { struct device *dev = &pdev->dev; @@ -217,9 +187,24 @@ static int uniphier_uart_probe(struct platform_device *pdev) memset(&up, 0, sizeof(up)); - ret = uniphier_of_serial_setup(dev, &up.port, priv); - if (ret < 0) + ret = of_alias_get_id(dev->of_node, "serial"); + if (ret < 0) { + dev_err(dev, "failed to get alias id\n"); return ret; + } + up.port.line = ret; + + priv->clk = devm_clk_get(dev, NULL); + if (IS_ERR(priv->clk)) { + dev_err(dev, "failed to get clock\n"); + return PTR_ERR(priv->clk); + } + + ret = clk_prepare_enable(priv->clk); + if (ret) + return ret; + + up.port.uartclk = clk_get_rate(priv->clk); spin_lock_init(&priv->atomic_write_lock);