From patchwork Fri May 9 13:00:08 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tushar Behera X-Patchwork-Id: 4143221 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 81385BFF02 for ; Fri, 9 May 2014 13:04:41 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id B3FAE201FA for ; Fri, 9 May 2014 13:04:40 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.9]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id CDB2F201C0 for ; Fri, 9 May 2014 13:04:39 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1WikRe-0004YN-Bb; Fri, 09 May 2014 13:02:34 +0000 Received: from mail-pa0-f46.google.com ([209.85.220.46]) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1WikRU-0004Nn-6l for linux-arm-kernel@lists.infradead.org; Fri, 09 May 2014 13:02:24 +0000 Received: by mail-pa0-f46.google.com with SMTP id kq14so230107pab.33 for ; Fri, 09 May 2014 06:02:03 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=WCAePqJS2uwslKckclA05UfHO5YAaD7Qq2Mc89jLW6Q=; b=Z4qzDhG4T+eZ6X8G0J9VKCuIv1WTd9gTmmpDd2/+OQ3SsRUyLaig0hxt7r+kTS4OXF x38rbOyeicYyH1oAtSHYedofw+Vz+9NtR+onf5zBeX7+VUU7VAZyIdoMhdzxEWfPAjO0 f/9xjsMwqtKIoQjZ11bQSkQ/sMcUHimVCtxaEc1TEU7CfnrMLkHgYF434rUYB0MREyLy oUajZt3uQxdaTjBjYxbvfKkbNmuL3zLUV6BviKl4LZHVG6FhRUJz67qAg5gwSG1qUypr EpKQYkOa15hV12DwghUaFeDQ3x4I/NkumFeyamLaz6ZkuIoBFKBmZgdUwCprUIZFVftK IkKA== X-Gm-Message-State: ALoCoQlSV7xoiz6ko+eaNQ6ApHWPxT1LNK4Evg5/wN7cSD1shD/NVdyampFbeWu7WiJbQ1gutfIB X-Received: by 10.66.227.104 with SMTP id rz8mr20381533pac.74.1399640523280; Fri, 09 May 2014 06:02:03 -0700 (PDT) Received: from linaro.sisodomain.com ([14.140.216.146]) by mx.google.com with ESMTPSA id qq5sm7556184pbb.24.2014.05.09.06.01.58 for (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 09 May 2014 06:02:02 -0700 (PDT) From: Tushar Behera To: linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: [PATCH 2/4] clk: samsung: exynos5420: Add xclkout debug clock Date: Fri, 9 May 2014 18:30:08 +0530 Message-Id: <1399640410-30957-3-git-send-email-tushar.behera@linaro.org> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1399640410-30957-1-git-send-email-tushar.behera@linaro.org> References: <1399640410-30957-1-git-send-email-tushar.behera@linaro.org> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20140509_060224_275533_6826F83A X-CRM114-Status: GOOD ( 12.37 ) X-Spam-Score: -0.7 (/) Cc: mark.rutland@arm.com, kgene.kim@samsung.com, mturquette@linaro.org, pawel.moll@arm.com, ijc+devicetree@hellion.org.uk, t.figa@samsung.com, robh+dt@kernel.org, galak@codeaurora.org X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Spam-Status: No, score=-2.5 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP A new clock provider has been added to configure the XCLKOUT debug clock. Added a minimal implemetation for Exynos5420 clock driver. Right now, only one valid parent clock from XCLKOUT is defined in existing clock driver. The driver will be updated later for other for other parent clocks. Signed-off-by: Tushar Behera CC: Tomasz Figa --- drivers/clk/samsung/clk-exynos5420.c | 14 ++++++++++++++ include/dt-bindings/clock/exynos5420.h | 5 ++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/drivers/clk/samsung/clk-exynos5420.c b/drivers/clk/samsung/clk-exynos5420.c index 60b2681..a8f6527 100644 --- a/drivers/clk/samsung/clk-exynos5420.c +++ b/drivers/clk/samsung/clk-exynos5420.c @@ -296,6 +296,13 @@ PNAME(hdmi_p) = { "dout_hdmi_pixel", "sclk_hdmiphy" }; PNAME(maudio0_p) = { "fin_pll", "maudio_clk", "sclk_dpll", "sclk_mpll", "sclk_spll", "sclk_ipll", "sclk_epll", "sclk_rpll" }; +PNAME(xclkout_p) = { + "dummy", "dummy", "dummy", "dummy", + "dummy", "dummy", "dummy", "dummy", + "dummy", "dummy", "dummy", "dummy", + "dummy", "dummy", "dummy", "dummy", + "fin_pll", "dummy", "dummy" }; + /* fixed rate clocks generated outside the soc */ static struct samsung_fixed_rate_clock exynos5420_fixed_rate_ext_clks[] __initdata = { FRATE(CLK_FIN_PLL, "fin_pll", NULL, CLK_IS_ROOT, 0), @@ -308,6 +315,7 @@ static struct samsung_fixed_rate_clock exynos5420_fixed_rate_clks[] __initdata = FRATE(0, "sclk_usbh20", NULL, CLK_IS_ROOT, 48000000), FRATE(0, "mphy_refclk_ixtal24", NULL, CLK_IS_ROOT, 48000000), FRATE(0, "sclk_usbh20_scan_clk", NULL, CLK_IS_ROOT, 480000000), + FRATE(0, "dummy", NULL, CLK_IS_ROOT, 0), }; static struct samsung_fixed_factor_clock exynos5420_fixed_factor_clks[] __initdata = { @@ -770,6 +778,10 @@ static struct samsung_pll_clock exynos5420_plls[nr_plls] __initdata = { KPLL_CON0, NULL), }; +static struct samsung_out_clock exynos5420_clkout[] __initdata = { + CLKOUT(CLK_XCLKOUT, "xclkout", xclkout_p), +}; + static struct of_device_id ext_clk_match[] __initdata = { { .compatible = "samsung,exynos5420-oscclk", .data = (void *)0, }, { }, @@ -802,6 +814,8 @@ static void __init exynos5420_clk_init(struct device_node *np) ARRAY_SIZE(exynos5420_div_clks)); samsung_clk_register_gate(exynos5420_gate_clks, ARRAY_SIZE(exynos5420_gate_clks)); + samsung_clk_register_clkout(np, + exynos5420_clkout, ARRAY_SIZE(exynos5420_clkout)); exynos5420_clk_sleep_init(); } diff --git a/include/dt-bindings/clock/exynos5420.h b/include/dt-bindings/clock/exynos5420.h index 5eefd88..28eca32 100644 --- a/include/dt-bindings/clock/exynos5420.h +++ b/include/dt-bindings/clock/exynos5420.h @@ -182,7 +182,10 @@ /* divider clocks */ #define CLK_DOUT_PIXEL 768 +/* debug clocks */ +#define CLK_XCLKOUT 896 + /* must be greater than maximal clock id */ -#define CLK_NR_CLKS 769 +#define CLK_NR_CLKS 897 #endif /* _DT_BINDINGS_CLOCK_EXYNOS_5420_H */