From patchwork Wed Mar 1 09:08:12 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jonas Gorski X-Patchwork-Id: 9597971 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id E970E60453 for ; Wed, 1 Mar 2017 09:37:03 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 0286327D8D for ; Wed, 1 Mar 2017 09:37:04 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id EA51128518; Wed, 1 Mar 2017 09:37:03 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.3 required=2.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, RCVD_IN_DNSWL_HI, RCVD_IN_SORBS_SPAM, T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9915027D8D for ; Wed, 1 Mar 2017 09:37:03 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751560AbdCAJhC (ORCPT ); Wed, 1 Mar 2017 04:37:02 -0500 Received: from mail-wm0-f65.google.com ([74.125.82.65]:34901 "EHLO mail-wm0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752328AbdCAJfc (ORCPT ); Wed, 1 Mar 2017 04:35:32 -0500 Received: by mail-wm0-f65.google.com with SMTP id u63so6295756wmu.2; Wed, 01 Mar 2017 01:34:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=deX7rcz1gZdElYp65Lh/1Fwfbm9vb2BOQQPWj0mDF3k=; b=uvIBJg3k2kpqr6qwEdqBVCduWvTtghQ2j533flw6OuFkokQon8Qyh5uao0MwEu84HZ Q9g/dpiLKgF2tdxkSvc//o9TIO5Yk5U1BX0XZQnhS5EH7ILbDXZt9HZP1eYv8Se9hoFT x/r8xAVN7JqueaAWmCe6LwyvYwxRkl583M38RMC6UYe09sKPdbXWM+Mzkt+fV+fAumOd lUhtEMZk6FBBuktPx8K604vC5if+ImkBYDk9UOrKcgKpjGuj0K4x/u/+N1bRUy7KXwc0 rlokep9N9/ROdqMYv6oHKd2T0UuWaCiQB0KGi559+wEQUCgs0KgNaaAde7uuAO3r0r1C dNfA== 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; bh=deX7rcz1gZdElYp65Lh/1Fwfbm9vb2BOQQPWj0mDF3k=; b=NIeSM7htiHv3mhYKi0SGK137gm64gGNF/20vIm29dxrlW6pqUSp2F1ZJrZP+q9vO91 dFr73SfYBOqb6SQvfZNK6mv1ZaqboJCqlNNprGRXcgPNvbbQowljXRQkheIJZZ6iCPJn Nu/xyYesguBx23DThDFoYgo1pZwHPSpqmtTtpLkClgD3uofTyy6Sc1yuaESkLZgdMOK0 0gNSY3GtB1JSNXsZAxxBuQzZrIu/YHhxhrQoAIAq9XqzTy5JOI21qLwMiEul8xFJDXIT 7U6KOMX2PJFErJIepj5oFr62fZciFIV503H6bDcOeOKoo9vH80ovVq7GKjfwlaGPiyyo OucA== X-Gm-Message-State: AMke39l3JIm4bVA9Aj70h/jwJZlL0CYN0x98mcKUcMeBYSnOBO5o4fRRoRbFrEcEEKQEXg== X-Received: by 10.28.48.67 with SMTP id w64mr1462722wmw.125.1488359308315; Wed, 01 Mar 2017 01:08:28 -0800 (PST) Received: from localhost.localdomain ([2001:470:9e39::48e]) by smtp.gmail.com with ESMTPSA id k8sm5672282wre.19.2017.03.01.01.08.27 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 01 Mar 2017 01:08:27 -0800 (PST) From: Jonas Gorski To: linux-spi@vger.kernel.org, devicetree@vger.kernel.org Cc: Mark Brown , Rob Herring , Mark Rutland , Florian Fainelli , bcm-kernel-feedback-list@broadcom.com Subject: [PATCH V2 1/3] spi/bcm63xx-hsspi: allow providing clock rate through a second clock Date: Wed, 1 Mar 2017 10:08:12 +0100 Message-Id: <20170301090814.7097-1-jonas.gorski@gmail.com> X-Mailer: git-send-email 2.11.0 Sender: linux-spi-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-spi@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP The HSSPI block actually has two clock inputs, one for gating the block, and one for the PLL rate. To allow these to be represented as two clocks, add support for retrieving the rate from a separate "pll" clock, if the "hsspi" clock does not provide one. Signed-off-by: Jonas Gorski Acked-by: Florian Fainelli --- Changes v1 -> v2: * Rewrote commmit message after confirmation from Florian * Added Florian's Ack drivers/spi/spi-bcm63xx-hsspi.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/drivers/spi/spi-bcm63xx-hsspi.c b/drivers/spi/spi-bcm63xx-hsspi.c index 55789f7cda92..79096d17ebde 100644 --- a/drivers/spi/spi-bcm63xx-hsspi.c +++ b/drivers/spi/spi-bcm63xx-hsspi.c @@ -351,8 +351,16 @@ static int bcm63xx_hsspi_probe(struct platform_device *pdev) return PTR_ERR(clk); rate = clk_get_rate(clk); - if (!rate) - return -EINVAL; + if (!rate) { + struct clk *pll_clk = devm_clk_get(dev, "pll"); + + if (IS_ERR(pll_clk)) + return PTR_ERR(pll_clk); + + rate = clk_get_rate(pll_clk); + if (!rate) + return -EINVAL; + } ret = clk_prepare_enable(clk); if (ret)