From patchwork Mon Jul 9 18:30:02 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 941550 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="P9+lmc+Z"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 41PYnG2SHHz9s00 for ; Tue, 10 Jul 2018 04:31:13 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 7CEF5C21E36; Mon, 9 Jul 2018 18:30:45 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id B41A4C21E8A; Mon, 9 Jul 2018 18:30:40 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 9BB3FC21E68; Mon, 9 Jul 2018 18:30:32 +0000 (UTC) Received: from mail-pg1-f193.google.com (mail-pg1-f193.google.com [209.85.215.193]) by lists.denx.de (Postfix) with ESMTPS id 0E5DEC21E42 for ; Mon, 9 Jul 2018 18:30:29 +0000 (UTC) Received: by mail-pg1-f193.google.com with SMTP id e6-v6so1426136pgv.2 for ; Mon, 09 Jul 2018 11:30:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=AcnHf1dG9qypKnMf1C+nmKkm9OeTmAs88A9a2R6xZSk=; b=P9+lmc+ZTnxmyWBpog7KyPAmFKirp6uKGp53AUvbJ0p6nRnCJGMHYHv49l24ja3E61 unB04BCZsDUCWrgYRDeaBUmedUlfKRJw9ZhJRDOW5P3dMs/k0CwPrhVaziSwRooqd5vY aGR0WZqDiGaMxLUvfPTTaoaohBjBJ12Z85eu8= 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:in-reply-to :references; bh=AcnHf1dG9qypKnMf1C+nmKkm9OeTmAs88A9a2R6xZSk=; b=mnQAdJ86R0My7SDVwY4NzESBcpaz7irYf4ERW0qAg3kO7ORs7kHQW1ru6UHCMW+EMS PQtn23yTl/MiuFigCTbvV+fxyXZWNxGBxOFm5FwimAsi7F/Y6mOF06CjplDqgYMUMpo5 ORRv4dJdw8yhpXzbsWQMgwr9ht7xGa0hJ8d4BF4YnyW2/5V8HVmWVhJ1NpDtRPRHnu+t IGIBuT8/Tpox+pS3BJ5EOylByvPVrkwvUDe/vs7F3X3voRFS3CRKZ2zTpLbv7Wq+kmmd zREXrOPUMNtB9CBYaXNuDkmwGuUhvvuMpfd6guFEFBr9qGsN0ZlDNkFrCVADYo2IKrL2 lfBg== X-Gm-Message-State: APt69E2jQ0BVBn9AGoSNnNm0T1fXmN9RhtFq/MRg830zJmQBW8bRuV0L mjo4uD5pT8pzlHaVTtFu9x/kAw== X-Google-Smtp-Source: AAOMgpeSpsv9RjKZLjHf718aQOa51gRHQjCzi8uKwQP/wgUlSk4NclMpgeRffYdwtq9iFnEqNbS4wA== X-Received: by 2002:a63:1d22:: with SMTP id d34-v6mr19731386pgd.133.1531161027473; Mon, 09 Jul 2018 11:30:27 -0700 (PDT) Received: from localhost.localdomain ([115.97.190.51]) by smtp.gmail.com with ESMTPSA id n5-v6sm26832456pgd.7.2018.07.09.11.30.23 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 09 Jul 2018 11:30:26 -0700 (PDT) From: Jagan Teki To: Stefano Babic , Fabio Estevam , Peng Fan , Joe Hershberger Date: Tue, 10 Jul 2018 00:00:02 +0530 Message-Id: <20180709183009.19206-2-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180709183009.19206-1-jagan@amarulasolutions.com> References: <20180709183009.19206-1-jagan@amarulasolutions.com> Cc: u-boot@lists.denx.de Subject: [U-Boot] [RFC 1/8] clk: Kconfig: Ascending order to sub directiory kconfigs X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" sourcing of sub directiory kconfig files are not in proper order, so keep them in ascending order. Signed-off-by: Jagan Teki --- drivers/clk/Kconfig | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig index edb4ca58ea..3e66dd97c1 100644 --- a/drivers/clk/Kconfig +++ b/drivers/clk/Kconfig @@ -83,12 +83,12 @@ config CLK_STM32MP1 Enable the STM32 clock (RCC) driver. Enable support for manipulating STM32MP1's on-SoC clocks. -source "drivers/clk/tegra/Kconfig" -source "drivers/clk/uniphier/Kconfig" -source "drivers/clk/exynos/Kconfig" source "drivers/clk/at91/Kconfig" -source "drivers/clk/renesas/Kconfig" +source "drivers/clk/exynos/Kconfig" source "drivers/clk/mvebu/Kconfig" +source "drivers/clk/renesas/Kconfig" +source "drivers/clk/tegra/Kconfig" +source "drivers/clk/uniphier/Kconfig" config ICS8N3QV01 bool "Enable ICS8N3QV01 VCXO driver" From patchwork Mon Jul 9 18:30:03 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 941553 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="p6yV0Id1"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 41PYqT72t3z9s01 for ; Tue, 10 Jul 2018 04:33:09 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 85EF1C21DEC; Mon, 9 Jul 2018 18:31:04 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 80F07C21E77; Mon, 9 Jul 2018 18:30:46 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id B7168C21E76; Mon, 9 Jul 2018 18:30:36 +0000 (UTC) Received: from mail-pl0-f66.google.com (mail-pl0-f66.google.com [209.85.160.66]) by lists.denx.de (Postfix) with ESMTPS id 845A1C21E47 for ; Mon, 9 Jul 2018 18:30:32 +0000 (UTC) Received: by mail-pl0-f66.google.com with SMTP id k1-v6so6415021plt.2 for ; Mon, 09 Jul 2018 11:30:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=tgih1NuI9eKGTQVhVhxD/Pp2iPT3AL/Ab2GAnW07x84=; b=p6yV0Id1dPiJxlh2N8aJsMncruz3i8sYlS+MBruLmKGUhTW5LOFBqvtfBvDsBLNO+R UZxjBNu8d6u+ZsoDjifsiY/fndBCiWEvX71nIqNSuRQQR/Lk/H97+g20IUiDaYnUJ/ni 6f5naqQQBbvQLLYdwzXzNpxphH3ktgH42SI7A= 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:in-reply-to :references; bh=tgih1NuI9eKGTQVhVhxD/Pp2iPT3AL/Ab2GAnW07x84=; b=dwhld9vNwYPyv/MLbchuAlaWDnP3GUG1xGOOOPlX5do03a9U3xAjELalrLOoouhhMs McThoKfk3CD3SdqAJtBt8sWPqb8AfktlcGEFoZrdlXOhDZkVxr/Y6iZCGZxT5FRNhnv8 Ro9Og1wFepuCnixPozSBsTEv30EWm9fBbzaFeMbwPh5+E8ntxz8EjBQ660IoxA6CywlS Ob7xheH9FMZKNplWaJ0nos+1N3dQSjIaCWcFtT+hZW2pOMJVRo65aEez48XmolWdCntW HgcWIIrdnd5c9MUEzbenebi9XOg/QrCRs1v+K7dmeM0sVnIq0FrSTLPu5jxsVPZ/8Oy2 icTw== X-Gm-Message-State: APt69E18BF2dmnciWTZjeSRJeGGqSERzexg5Vdn1UxjLUu+ytV9ML+2b BrulWKi/6TLOSeUiW4dJFEPsEw== X-Google-Smtp-Source: AAOMgpe3NvqkvAiiPDDbsLr8eHUk0BGZ1XaaNb8+81rpZG6XtE5IrmyC/WkqLyxLTDTswflRnrYg7g== X-Received: by 2002:a17:902:900b:: with SMTP id a11-v6mr21731265plp.143.1531161031106; Mon, 09 Jul 2018 11:30:31 -0700 (PDT) Received: from localhost.localdomain ([115.97.190.51]) by smtp.gmail.com with ESMTPSA id n5-v6sm26832456pgd.7.2018.07.09.11.30.27 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 09 Jul 2018 11:30:30 -0700 (PDT) From: Jagan Teki To: Stefano Babic , Fabio Estevam , Peng Fan , Joe Hershberger Date: Tue, 10 Jul 2018 00:00:03 +0530 Message-Id: <20180709183009.19206-3-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180709183009.19206-1-jagan@amarulasolutions.com> References: <20180709183009.19206-1-jagan@amarulasolutions.com> Cc: u-boot@lists.denx.de Subject: [U-Boot] [RFC 2/8] clk: Add DM CLK driver template for i.MX6QDL X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Add DM CLK driver for iMX6QDL platform. - basic template for clk_imx6qdl.c - Kconfig support Signed-off-by: Jagan Teki --- arch/arm/mach-imx/mx6/Kconfig | 1 + drivers/clk/Kconfig | 1 + drivers/clk/Makefile | 1 + drivers/clk/imx/Kconfig | 18 +++++++++ drivers/clk/imx/Makefile | 7 ++++ drivers/clk/imx/clk_imx6q.c | 76 +++++++++++++++++++++++++++++++++++ drivers/video/ipu_common.c | 8 ++++ 7 files changed, 112 insertions(+) create mode 100644 drivers/clk/imx/Kconfig create mode 100644 drivers/clk/imx/Makefile create mode 100644 drivers/clk/imx/clk_imx6q.c diff --git a/arch/arm/mach-imx/mx6/Kconfig b/arch/arm/mach-imx/mx6/Kconfig index 521fad74b5..4410f53b55 100644 --- a/arch/arm/mach-imx/mx6/Kconfig +++ b/arch/arm/mach-imx/mx6/Kconfig @@ -257,6 +257,7 @@ config TARGET_MX6Q_ENGICAM select MX6QDL select OF_CONTROL select SPL_OF_LIBFDT + select CLK_IMX select DM select DM_ETH select DM_GPIO diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig index 3e66dd97c1..7404f96dab 100644 --- a/drivers/clk/Kconfig +++ b/drivers/clk/Kconfig @@ -85,6 +85,7 @@ config CLK_STM32MP1 source "drivers/clk/at91/Kconfig" source "drivers/clk/exynos/Kconfig" +source "drivers/clk/imx/Kconfig" source "drivers/clk/mvebu/Kconfig" source "drivers/clk/renesas/Kconfig" source "drivers/clk/tegra/Kconfig" diff --git a/drivers/clk/Makefile b/drivers/clk/Makefile index 426c67db9b..e73a386c5b 100644 --- a/drivers/clk/Makefile +++ b/drivers/clk/Makefile @@ -17,6 +17,7 @@ obj-$(CONFIG_CLK_BCM6345) += clk_bcm6345.o obj-$(CONFIG_CLK_BOSTON) += clk_boston.o obj-$(CONFIG_CLK_EXYNOS) += exynos/ obj-$(CONFIG_CLK_HSDK) += clk-hsdk-cgu.o +obj-$(CONFIG_CLK_IMX) += imx/ obj-$(CONFIG_CLK_RENESAS) += renesas/ obj-$(CONFIG_CLK_STM32F) += clk_stm32f.o obj-$(CONFIG_CLK_STM32MP1) += clk_stm32mp1.o diff --git a/drivers/clk/imx/Kconfig b/drivers/clk/imx/Kconfig new file mode 100644 index 0000000000..f8de5554c8 --- /dev/null +++ b/drivers/clk/imx/Kconfig @@ -0,0 +1,18 @@ +config CLK_IMX + bool "Clock support for i.MX SoCs" + depends on ARCH_MX6 + select CLK + help + This enables support for common clock driver API on i.MX + SoCs. + +if CLK_IMX + +config CLK_IMX6Q + bool "Clock driver for i.MX6QDL" + default MX6QDL + help + This enables common clock driver support for platforms based + on i.MX6 QDL SoC. + +endif # CLK_IMX diff --git a/drivers/clk/imx/Makefile b/drivers/clk/imx/Makefile new file mode 100644 index 0000000000..8ae3a50eba --- /dev/null +++ b/drivers/clk/imx/Makefile @@ -0,0 +1,7 @@ +# +# Copyright (c) 2018 Arm Ltd. +# +# SPDX-License-Identifier: GPL-2.0+ +# + +obj-$(CONFIG_CLK_IMX6Q) += clk_imx6q.o diff --git a/drivers/clk/imx/clk_imx6q.c b/drivers/clk/imx/clk_imx6q.c new file mode 100644 index 0000000000..3019218411 --- /dev/null +++ b/drivers/clk/imx/clk_imx6q.c @@ -0,0 +1,76 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (C) 2018 Amarula Solutions B.V. + * Author: Jagan Teki + */ + +#include +#include +#include +#include +#include +#include +#include + +struct imx6q_clk_priv { + void *base; +}; + +static ulong imx6q_clk_get_rate(struct clk *clk) +{ + debug("%s(#%ld)\n", __func__, clk->id); + + debug(" unhandled\n"); + return -EINVAL; +} + +static ulong imx6q_clk_set_rate(struct clk *clk, ulong rate) +{ + debug("%s(#%ld, rate: %lu)\n", __func__, clk->id, rate); + + debug(" unhandled\n"); + return -EINVAL; +} + +static int imx6q_clk_enable(struct clk *clk) +{ + debug("%s(#%ld)\n", __func__, clk->id); + + debug(" unhandled\n"); + return -EINVAL; +} + +static struct clk_ops imx6q_clk_ops = { + .get_rate = imx6q_clk_get_rate, + .set_rate = imx6q_clk_set_rate, + .enable = imx6q_clk_enable, +}; + +static int imx6q_clk_probe(struct udevice *dev) +{ + return 0; +} + +static int imx6q_clk_ofdata_to_platdata(struct udevice *dev) +{ + struct imx6q_clk_priv *priv = dev_get_priv(dev); + + priv->base = dev_read_addr_ptr(dev); + + return 0; +} + +static const struct udevice_id imx6q_clk_ids[] = { + { .compatible = "fsl,imx6q-ccm" }, + { } +}; + +U_BOOT_DRIVER(fsl_imx6q_ccm) = { + .name = "fsl_imx6q_ccm", + .id = UCLASS_CLK, + .of_match = imx6q_clk_ids, + .priv_auto_alloc_size = sizeof(struct imx6q_clk_priv), + .ofdata_to_platdata = imx6q_clk_ofdata_to_platdata, + .ops = &imx6q_clk_ops, + .probe = imx6q_clk_probe, +}; diff --git a/drivers/video/ipu_common.c b/drivers/video/ipu_common.c index cbe1984e4f..9725f76477 100644 --- a/drivers/video/ipu_common.c +++ b/drivers/video/ipu_common.c @@ -86,6 +86,7 @@ struct ipu_ch_param { #define IPUV3_CLK_MX6Q 264000000 #define IPUV3_CLK_MX6DL 198000000 +#ifndef CONFIG_CLK void clk_enable(struct clk *clk) { if (clk) { @@ -104,6 +105,7 @@ void clk_disable(struct clk *clk) } } } +#endif int clk_get_usecount(struct clk *clk) { @@ -113,6 +115,7 @@ int clk_get_usecount(struct clk *clk) return clk->usecount; } +#ifndef CONFIG_CLK u32 clk_get_rate(struct clk *clk) { if (!clk) @@ -120,6 +123,7 @@ u32 clk_get_rate(struct clk *clk) return clk->rate; } +#endif struct clk *clk_get_parent(struct clk *clk) { @@ -129,6 +133,7 @@ struct clk *clk_get_parent(struct clk *clk) return clk->parent; } +#ifndef CONFIG_CLK int clk_set_rate(struct clk *clk, unsigned long rate) { if (!clk) @@ -139,6 +144,7 @@ int clk_set_rate(struct clk *clk, unsigned long rate) return clk->rate; } +#endif long clk_round_rate(struct clk *clk, unsigned long rate) { @@ -148,6 +154,7 @@ long clk_round_rate(struct clk *clk, unsigned long rate) return clk->round_rate(clk, rate); } +#ifndef CONFIG_CLK int clk_set_parent(struct clk *clk, struct clk *parent) { clk->parent = parent; @@ -155,6 +162,7 @@ int clk_set_parent(struct clk *clk, struct clk *parent) return clk->set_parent(clk, parent); return 0; } +#endif static int clk_ipu_enable(struct clk *clk) { From patchwork Mon Jul 9 18:30:04 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 941552 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="hfUOw2XP"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 41PYq44XT2z9s00 for ; Tue, 10 Jul 2018 04:32:48 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 4D9E9C21E6C; Mon, 9 Jul 2018 18:31:24 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 732C2C21E74; Mon, 9 Jul 2018 18:30:59 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id D946FC21E36; Mon, 9 Jul 2018 18:30:39 +0000 (UTC) Received: from mail-pl0-f66.google.com (mail-pl0-f66.google.com [209.85.160.66]) by lists.denx.de (Postfix) with ESMTPS id 4C154C21E7F for ; Mon, 9 Jul 2018 18:30:36 +0000 (UTC) Received: by mail-pl0-f66.google.com with SMTP id 30-v6so6405422pld.13 for ; Mon, 09 Jul 2018 11:30:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=FfgqYVmpA8/KCS00zL3q2KagFnVFIjfK22YbviQMtHs=; b=hfUOw2XPL3C1R++pvE7K5PckxUAr/BZrpqsiFC0STHc2Lo30LfxmI+ZupX9P30ggEJ NdZKn2j4t6O2FBbNlCVyrHywbBPTpyvFCIu04CQQM8+SMNzD/9V4Y/fQUeXQiwNesK3C U6fWYnJ3Cvbqapt0zdYXkhPhJ6wX6Sshjh+TM= 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:in-reply-to :references; bh=FfgqYVmpA8/KCS00zL3q2KagFnVFIjfK22YbviQMtHs=; b=CKKcJubRzlHNL5wwQKy1RvKv1g6sh9XCAFinpnLYJhYDL160qjnHcesE8MceITMVFI j+H7qkJQyJrEPSb4zjJxZ8Hhthi8ZFwsL/Jss1+chHYF7Wlxd6gih4H5BaaFwKNe0VQM s7wBdxVxQ1P0oWR2FH+cBTya32EeiTMMOmd9Cj/Po/z2ecTG+JjQoAg/m4fKCES9MVc+ gag+S6U8Mvq+gKRvn8/jYTI29WhKfogUumtjgagIUkQ/TiWqmjnr//IwW9robUqizJ+v hPuwdF3p2zrLmeaUml5ZFyWQiwH5d708jiPiBAk5ClhUq6c7GA2H8boHCwrxhuf+xIft /YiQ== X-Gm-Message-State: APt69E1aMrJHC2TEHGqJQO+i1du6pnjmrBgf2+hLsoPz9Ai82vqorxCa 3WScPrIugF4cNAqOwedOZ2V0RQ== X-Google-Smtp-Source: AAOMgpdRRhX9F+wM7QWRvFsRHY16FZdlBHOnhgXhcE6hENwU4rJ36X+5PLiY2Vvhyn2wM3KCreRKUQ== X-Received: by 2002:a17:902:5ac3:: with SMTP id g3-v6mr21378124plm.90.1531161034740; Mon, 09 Jul 2018 11:30:34 -0700 (PDT) Received: from localhost.localdomain ([115.97.190.51]) by smtp.gmail.com with ESMTPSA id n5-v6sm26832456pgd.7.2018.07.09.11.30.31 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 09 Jul 2018 11:30:34 -0700 (PDT) From: Jagan Teki To: Stefano Babic , Fabio Estevam , Peng Fan , Joe Hershberger Date: Tue, 10 Jul 2018 00:00:04 +0530 Message-Id: <20180709183009.19206-4-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180709183009.19206-1-jagan@amarulasolutions.com> References: <20180709183009.19206-1-jagan@amarulasolutions.com> Cc: u-boot@lists.denx.de Subject: [U-Boot] [RFC 3/8] clk: imx: imx6q: Implement ENET clocks X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Add support for ENET clock on i.MX6QDL platform. Signed-off-by: Jagan Teki Reviewed-by: Joe Hershberger --- drivers/clk/imx/clk_imx6q.c | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/drivers/clk/imx/clk_imx6q.c b/drivers/clk/imx/clk_imx6q.c index 3019218411..f0cb7ece1f 100644 --- a/drivers/clk/imx/clk_imx6q.c +++ b/drivers/clk/imx/clk_imx6q.c @@ -26,18 +26,31 @@ static ulong imx6q_clk_get_rate(struct clk *clk) static ulong imx6q_clk_set_rate(struct clk *clk, ulong rate) { - debug("%s(#%ld, rate: %lu)\n", __func__, clk->id, rate); + debug("%s(#%ld)\n", __func__, clk->id); - debug(" unhandled\n"); - return -EINVAL; + switch (clk->id) { + case IMX6QDL_CLK_ENET_REF: + return enable_fec_anatop_clock(0, rate); + default: + printf(" unhandled\n"); + return -ENODEV; + } } static int imx6q_clk_enable(struct clk *clk) { + struct imx6q_clk_priv *priv = dev_get_priv(clk->dev); + debug("%s(#%ld)\n", __func__, clk->id); - debug(" unhandled\n"); - return -EINVAL; + switch (clk->id) { + case IMX6QDL_CLK_ENET: + setbits_le32(priv->base + 0x6c, GENMASK(11, 10)); + return 0; + default: + printf(" unhandled\n"); + return -ENODEV; + } } static struct clk_ops imx6q_clk_ops = { From patchwork Mon Jul 9 18:30:05 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 941555 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="pB0I/qJk"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 41PYs76Jk6z9s01 for ; Tue, 10 Jul 2018 04:34:35 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 7F547C21E85; Mon, 9 Jul 2018 18:32:29 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 30F08C21E53; Mon, 9 Jul 2018 18:31:30 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id BB0F9C21E31; Mon, 9 Jul 2018 18:30:43 +0000 (UTC) Received: from mail-pl0-f65.google.com (mail-pl0-f65.google.com [209.85.160.65]) by lists.denx.de (Postfix) with ESMTPS id 1C28AC21E6C for ; Mon, 9 Jul 2018 18:30:40 +0000 (UTC) Received: by mail-pl0-f65.google.com with SMTP id f4-v6so2220382plb.9 for ; Mon, 09 Jul 2018 11:30:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=WThI+fcfMAMRMRKL3g2B7sDYPOTRH39saAHnWux6QbQ=; b=pB0I/qJkvhevJMiPWppnNJPpxVtuRjBN8Lpr1k06U3NXUm90O9c0zoJ92YS/ciJdQD YN55oHKqIgLUprLn5w4f8J4MHg+PQszJZ7KkrtvAy0hk1azm1qBAbvcBJO5j3lbUWF1f xp1paJDfxZnuCEgMGasqQmRIb31cGD7D6s2I0= 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:in-reply-to :references; bh=WThI+fcfMAMRMRKL3g2B7sDYPOTRH39saAHnWux6QbQ=; b=Q4TAH3xthKyu96NToeERa8r6gD8goIx+QHOVsIysChlo/lw9LbbF0N40F24YA9p+Vh npCwA6cfGRS17uQrROS33QZfE7iXGMHxxPpQWXIoDOD7ML9WPDz0lSE+D5ENTSbTIAwQ FcGmNJpTBvUP4KFB8uWlF+Q4NUg2t6hCmqlx+gQxMgSwFgDG2kepj/6Wax0mSLzgBzLO Z3JESQKpWQfFbSpomgBY/TCJJdJjbo8qHat2NomhuY6eHR2pZLUUzeYGHvHuO4W7Saut A55kl8ueoaPMf6Om3t17yYRQI1/hS3cI5rI5y1B/1n8WZFXBZMhfML8jq4P9ohYzkw+d tRqQ== X-Gm-Message-State: APt69E1Xr+6wfC98BJhQevWBn1sKmn/QLs7Xb8XH0Z3kvJt+hUQyEQ5k EiWjPCYZ59WPVqH1PGpVXcAw2g== X-Google-Smtp-Source: AAOMgpcYw9m3wXkmK6oqWVUgKfhBeBBY85k7COOgwVbdd+NA90tlHtRABQlhFyurWa8Ko6RUsZCNTw== X-Received: by 2002:a17:902:6903:: with SMTP id j3-v6mr21322790plk.313.1531161038656; Mon, 09 Jul 2018 11:30:38 -0700 (PDT) Received: from localhost.localdomain ([115.97.190.51]) by smtp.gmail.com with ESMTPSA id n5-v6sm26832456pgd.7.2018.07.09.11.30.35 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 09 Jul 2018 11:30:38 -0700 (PDT) From: Jagan Teki To: Stefano Babic , Fabio Estevam , Peng Fan , Joe Hershberger Date: Tue, 10 Jul 2018 00:00:05 +0530 Message-Id: <20180709183009.19206-5-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180709183009.19206-1-jagan@amarulasolutions.com> References: <20180709183009.19206-1-jagan@amarulasolutions.com> Cc: u-boot@lists.denx.de Subject: [U-Boot] [RFC 4/8] clk: imx: imx6ul: Implement ENET clocks X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Add support for ENET clock on i.MX6UL platform. Signed-off-by: Jagan Teki Reviewed-by: Joe Hershberger --- drivers/clk/imx/Kconfig | 7 +++ drivers/clk/imx/Makefile | 1 + drivers/clk/imx/clk_imx6ul.c | 95 ++++++++++++++++++++++++++++++++++++ 3 files changed, 103 insertions(+) create mode 100644 drivers/clk/imx/clk_imx6ul.c diff --git a/drivers/clk/imx/Kconfig b/drivers/clk/imx/Kconfig index f8de5554c8..cfb9cfe2eb 100644 --- a/drivers/clk/imx/Kconfig +++ b/drivers/clk/imx/Kconfig @@ -15,4 +15,11 @@ config CLK_IMX6Q This enables common clock driver support for platforms based on i.MX6 QDL SoC. +config CLK_IMX6UL + bool "Clock driver for i.MX6UL" + default MX6UL + help + This enables common clock driver support for platforms based + on i.MX6 UL SoC. + endif # CLK_IMX diff --git a/drivers/clk/imx/Makefile b/drivers/clk/imx/Makefile index 8ae3a50eba..67d6f9a19f 100644 --- a/drivers/clk/imx/Makefile +++ b/drivers/clk/imx/Makefile @@ -5,3 +5,4 @@ # obj-$(CONFIG_CLK_IMX6Q) += clk_imx6q.o +obj-$(CONFIG_CLK_IMX6UL) += clk_imx6ul.o diff --git a/drivers/clk/imx/clk_imx6ul.c b/drivers/clk/imx/clk_imx6ul.c new file mode 100644 index 0000000000..9cf00154e3 --- /dev/null +++ b/drivers/clk/imx/clk_imx6ul.c @@ -0,0 +1,95 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (C) 2018 Amarula Solutions B.V. + * Author: Jagan Teki + */ + +#include +#include +#include +#include +#include +#include +#include + +struct imx6ul_clk_priv { + void *base; +}; + +static ulong imx6ul_clk_get_rate(struct clk *clk) +{ + debug("%s(#%ld)\n", __func__, clk->id); + + debug(" unhandled\n"); + return -EINVAL; +} + +static ulong imx6ul_clk_set_rate(struct clk *clk, ulong rate) +{ + debug("%s(#%ld)\n", __func__, clk->id); + + switch (clk->id) { + case IMX6UL_CLK_ENET_PTP: + /* ref clock handling done via IMX6UL_CLK_ENET_REF */ + clk = NULL; + return 0; + case IMX6UL_CLK_ENET_REF: + return enable_fec_anatop_clock(0, rate); + case IMX6UL_CLK_ENET2_REF_125M: + return enable_fec_anatop_clock(1, rate); + default: + printf(" unhandled\n"); + return -ENODEV; + } +} + +static int imx6ul_clk_enable(struct clk *clk) +{ + struct imx6ul_clk_priv *priv = dev_get_priv(clk->dev); + + debug("%s(#%ld)\n", __func__, clk->id); + + switch (clk->id) { + case IMX6UL_CLK_ENET_AHB: + setbits_le32(priv->base + 0x74, GENMASK(5, 4)); + return 0; + default: + printf(" unhandled\n"); + return -ENODEV; + } +} + +static struct clk_ops imx6ul_clk_ops = { + .get_rate = imx6ul_clk_get_rate, + .set_rate = imx6ul_clk_set_rate, + .enable = imx6ul_clk_enable, +}; + +static int imx6ul_clk_probe(struct udevice *dev) +{ + return 0; +} + +static int imx6ul_clk_ofdata_to_platdata(struct udevice *dev) +{ + struct imx6ul_clk_priv *priv = dev_get_priv(dev); + + priv->base = dev_read_addr_ptr(dev); + + return 0; +} + +static const struct udevice_id imx6ul_clk_ids[] = { + { .compatible = "fsl,imx6ul-ccm" }, + { } +}; + +U_BOOT_DRIVER(fsl_imx6ul_ccm) = { + .name = "fsl_imx6ul_ccm", + .id = UCLASS_CLK, + .of_match = imx6ul_clk_ids, + .priv_auto_alloc_size = sizeof(struct imx6ul_clk_priv), + .ofdata_to_platdata = imx6ul_clk_ofdata_to_platdata, + .ops = &imx6ul_clk_ops, + .probe = imx6ul_clk_probe, +}; From patchwork Mon Jul 9 18:30:06 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 941557 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="dl8uu53f"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 41PYtg0tztz9rxs for ; Tue, 10 Jul 2018 04:35:55 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id C4896C21DEC; Mon, 9 Jul 2018 18:32:13 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 3E355C21EB1; Mon, 9 Jul 2018 18:31:20 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 24981C21DF3; Mon, 9 Jul 2018 18:30:47 +0000 (UTC) Received: from mail-pg1-f195.google.com (mail-pg1-f195.google.com [209.85.215.195]) by lists.denx.de (Postfix) with ESMTPS id E229AC21E34 for ; Mon, 9 Jul 2018 18:30:43 +0000 (UTC) Received: by mail-pg1-f195.google.com with SMTP id n2-v6so1427814pgq.6 for ; Mon, 09 Jul 2018 11:30:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=sJfQqj9kfVo89z1tLA73pVsFeiC2AFBtKF+Y6vHUb6c=; b=dl8uu53f38hMqmgD6+6O/F2D0d91ryjWmdrscHunSKeLjVfuayP35Xb1LOg26Mml0S SMg46Al7Q/odfOLrGQJ2xD4EHwJy4MABUo2lTb+3HP8iU4gRrhhV7j+qLvjDcupiroiF ULc7OOK16VqeUeMcaWAoeDrRJ7y1fzVz+SxgI= 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:in-reply-to :references; bh=sJfQqj9kfVo89z1tLA73pVsFeiC2AFBtKF+Y6vHUb6c=; b=GzXyL8+XwsSgl3hyKsyDN8H93p92+y+kae37PVADSpluG0RE498K7Igkf1FiQ7ddk0 XapdSPJp9K7y5xNm3lUQGyuiVLNm6G9V9hTNmX383Ho7yBpKq1lKDJZPpCym46cXkH3l IzZqm4Pyb1H2j1qh6qPq3ZbTgdwQXvZwPKva0wh/GsnfMFn+0duiv7Pe8Q4FEgO8x8bb iP/BMwg+xKqk2XHTKao5Do6BtDzYBjfEMddNhYHoYfIVRAWHcsYlr6SOMYVXrDMPOl1m kRJ2EP1WYenzttDbPMXmR5fLDENaaqSu19qrl8H+beW8xuLBYjxCNSssH3C0R7pZPcUZ XWIw== X-Gm-Message-State: APt69E05lEHsPdYzHLB0RvXP4mBZmFlZl6H+c+Gh9rdeFAt+sRps+dkX JUnLQPvv7SxgyCqQJtsTf+qeQQ== X-Google-Smtp-Source: AAOMgpcC+wHd+buGmjxPP+LH/BHInA6Mos33cizZcFcsiHQoe3VlvuIrCyiGzcnZSz1A7KEbZwSuSA== X-Received: by 2002:a65:6411:: with SMTP id a17-v6mr19479261pgv.287.1531161042506; Mon, 09 Jul 2018 11:30:42 -0700 (PDT) Received: from localhost.localdomain ([115.97.190.51]) by smtp.gmail.com with ESMTPSA id n5-v6sm26832456pgd.7.2018.07.09.11.30.38 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 09 Jul 2018 11:30:42 -0700 (PDT) From: Jagan Teki To: Stefano Babic , Fabio Estevam , Peng Fan , Joe Hershberger Date: Tue, 10 Jul 2018 00:00:06 +0530 Message-Id: <20180709183009.19206-6-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180709183009.19206-1-jagan@amarulasolutions.com> References: <20180709183009.19206-1-jagan@amarulasolutions.com> Cc: u-boot@lists.denx.de Subject: [U-Boot] [RFC 5/8] clk: Add generic_clk_valid X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Add clock validate function for validating specific clock to do further clock operations. Signed-off-by: Jagan Teki Reviewed-by: Simon Glass --- include/clk-uclass.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/include/clk-uclass.h b/include/clk-uclass.h index e76d98e2f6..452eed008e 100644 --- a/include/clk-uclass.h +++ b/include/clk-uclass.h @@ -100,4 +100,14 @@ struct clk_ops { int (*disable)(struct clk *clk); }; +/** + * generic_clk_valid() - check if clk port is valid + * + * @clk: the clk port to check + * @return TRUE if valid, or FALSE + */ +static inline bool generic_clk_valid(struct clk *clk) +{ + return clk->dev != NULL; +} #endif From patchwork Mon Jul 9 18:30:07 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 941554 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="d5Wf9pZG"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 41PYrb1KKGz9rxs for ; Tue, 10 Jul 2018 04:34:07 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id C4CD8C21EA1; Mon, 9 Jul 2018 18:31:56 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=RCVD_IN_MSPIKE_H2, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 67054C21E49; Mon, 9 Jul 2018 18:31:18 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 73793C21E49; Mon, 9 Jul 2018 18:30:51 +0000 (UTC) Received: from mail-pf0-f194.google.com (mail-pf0-f194.google.com [209.85.192.194]) by lists.denx.de (Postfix) with ESMTPS id A69E7C21E3A for ; Mon, 9 Jul 2018 18:30:47 +0000 (UTC) Received: by mail-pf0-f194.google.com with SMTP id c21-v6so9628153pfn.8 for ; Mon, 09 Jul 2018 11:30:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=HTrFrnSAo0KqRjhaQa5++BzWzkOn14ZSGQZ2LzNa3NQ=; b=d5Wf9pZGZEysZXjEWEeLPbpsweU2OO+X3iZ5lHKZHYaRw6X9Lg+YDhjf6iO9L7mYkB yVdBKXo8di/s9yUVb/Oqv/ul9VqfoOcYU2tBh+srFeBACaKKkOyWoBkls+lOy1fLsYnr lVdf19c4FD866BI7BB4jjDYHldOU53WWLgDjk= 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:in-reply-to :references; bh=HTrFrnSAo0KqRjhaQa5++BzWzkOn14ZSGQZ2LzNa3NQ=; b=dRBL8hQWZbXmvLLi+gbutsy7Jj+FQVwhisn6YQRiK4zEMmywpbDpKYurD8itHfXYlg aVWLUP+V6IEnT0vvqUB73Og3RAV/VVhKZhmJtacnmDd+vUZf8QSasHM581mRQkofmoVn 6zalfOZYXKIkv2i8cznUXkSkGmEDHaaJhekMCchMKnewnZZBJqMYRLnGpe5oeyi6jUI3 2nW+DdaqfrWc13M6gZkajqPcabBZBNwFlRlzSwJQhSlPC5jogV54XIFEq9Jd+CqmkQiE AX7CM2lyZiwj+wpLyFnQwzJY7PyAskbIRcDfKC0GSHOTZm+dcMzBionaDezlxutdPGC2 5Gdw== X-Gm-Message-State: APt69E1JiG4zaXTERbEMmXGKaIK6jFKo4+iKjxq5ItPmLLji+aDWaHJw vY7xr0dyhmIYs22iJx433WJIlA== X-Google-Smtp-Source: AAOMgpc+PIgK7D2DzFy8Brz/fGkXcmLCl2Wp7fDE0lBNV9DVbCaAEyiu67FkP5LX/nW5QhjhXiSf1Q== X-Received: by 2002:a63:c742:: with SMTP id v2-v6mr16612331pgg.331.1531161046273; Mon, 09 Jul 2018 11:30:46 -0700 (PDT) Received: from localhost.localdomain ([115.97.190.51]) by smtp.gmail.com with ESMTPSA id n5-v6sm26832456pgd.7.2018.07.09.11.30.42 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 09 Jul 2018 11:30:45 -0700 (PDT) From: Jagan Teki To: Stefano Babic , Fabio Estevam , Peng Fan , Joe Hershberger Date: Tue, 10 Jul 2018 00:00:07 +0530 Message-Id: <20180709183009.19206-7-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180709183009.19206-1-jagan@amarulasolutions.com> References: <20180709183009.19206-1-jagan@amarulasolutions.com> Cc: u-boot@lists.denx.de Subject: [U-Boot] [RFC 6/8] net: fec_mxc: Add clock support via CLK X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Now enet clock support available for imx6qdl and imx6ul, via CLK framework, so add enable, set_rate support in drivers. Signed-off-by: Jagan Teki Acked-by: Joe Hershberger --- drivers/net/fec_mxc.c | 58 +++++++++++++++++++++++++++++++++++++++++++ drivers/net/fec_mxc.h | 6 +++++ 2 files changed, 64 insertions(+) diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c index 694a0b2f7e..7998c8b8b2 100644 --- a/drivers/net/fec_mxc.c +++ b/drivers/net/fec_mxc.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include @@ -1245,6 +1246,41 @@ static int fec_phy_init(struct fec_priv *priv, struct udevice *dev) return 0; } +#if CONFIG_IS_ENABLED(CLK) +static int fec_clk_enable(struct fec_priv *priv) +{ + int ret; + + ret = clk_enable(&priv->clk_ahb); + if (ret) { + printf("failed to enable ahb clk\n"); + return ret; + } + + if (generic_clk_valid(&priv->clk_ptp)) { + ret = clk_set_rate(&priv->clk_ptp, ENET_50MHZ); + if (ret) { + printf("failed to set 50MHz rate to ptp clk\n"); + goto failed_clk_ahb; + } + } + + if (generic_clk_valid(&priv->clk_enet_out)) { + ret = clk_set_rate(&priv->clk_enet_out, ENET_50MHZ); + if (ret) { + printf("failed to set 50MHz rate to enet_out clk\n"); + goto failed_clk_ahb; + } + } + + return 0; + +failed_clk_ahb: + clk_disable(&priv->clk_ahb); + return ret; +} +#endif + static int fecmxc_probe(struct udevice *dev) { struct eth_pdata *pdata = dev_get_platdata(dev); @@ -1253,6 +1289,12 @@ static int fecmxc_probe(struct udevice *dev) uint32_t start; int ret; +#if CONFIG_IS_ENABLED(CLK) + ret = fec_clk_enable(priv); + if (ret) + return ret; +#endif + ret = fec_alloc_descs(priv); if (ret) return ret; @@ -1331,6 +1373,22 @@ static int fecmxc_ofdata_to_platdata(struct udevice *dev) return -EINVAL; } +#if CONFIG_IS_ENABLED(CLK) + int ret; + + ret = clk_get_by_name(dev, "ahb", &priv->clk_ahb); + if (ret) + ret = PTR_ERR(&priv->clk_ahb); + + ret = clk_get_by_name(dev, "ptp", &priv->clk_ptp); + if (ret) + dev_dbg(dev, "Warning: failed to get ptp clk\n"); + + ret = clk_get_by_name(dev, "enet_out", &priv->clk_enet_out); + if (ret) + dev_dbg(dev, "Warning: failed to get enet_out clk\n"); +#endif + /* TODO * Need to get the reset-gpio and related properties from DT * and implemet the enet reset code on .probe call diff --git a/drivers/net/fec_mxc.h b/drivers/net/fec_mxc.h index 3b935afe2c..78899e7603 100644 --- a/drivers/net/fec_mxc.h +++ b/drivers/net/fec_mxc.h @@ -253,6 +253,12 @@ struct fec_priv { #ifdef CONFIG_DM_ETH u32 interface; + +#if CONFIG_IS_ENABLED(CLK) + struct clk clk_ahb; + struct clk clk_ptp; + struct clk clk_enet_out; +#endif #endif }; From patchwork Mon Jul 9 18:30:08 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 941551 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="HPie0Roa"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 41PYpc6sPDz9rxs for ; Tue, 10 Jul 2018 04:32:24 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 8D95CC21E77; Mon, 9 Jul 2018 18:31:40 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=RCVD_IN_MSPIKE_H2, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 7F65CC21E6C; Mon, 9 Jul 2018 18:31:13 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id D2852C21EB1; Mon, 9 Jul 2018 18:30:55 +0000 (UTC) Received: from mail-pf0-f194.google.com (mail-pf0-f194.google.com [209.85.192.194]) by lists.denx.de (Postfix) with ESMTPS id 53336C21E13 for ; Mon, 9 Jul 2018 18:30:51 +0000 (UTC) Received: by mail-pf0-f194.google.com with SMTP id y8-v6so14239032pfm.10 for ; Mon, 09 Jul 2018 11:30:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=HMlGyDCO2TLRsX4N2i/3KwHEbsfOa3McD6HHHoXcXNs=; b=HPie0RoaUCd7Ymz14Ev2nDevBXHTrYhwzcQaMGf34DC2kxyNbdgqTx4G/Dg2xpeMI5 ScnM9R87RBpUa69NAmISG3zXkvNo7At0QbNiOe1OtNr0eJPVV2U/sHsoyPuM/R8W2Rge HWZi0/K/3RUpufU2ha7vnK9zgvfEGcEAQlotA= 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:in-reply-to :references; bh=HMlGyDCO2TLRsX4N2i/3KwHEbsfOa3McD6HHHoXcXNs=; b=nGLG7o3Vs1ViEKGwHVgplx3vAWRyUHQLldrVAeUPPYb+ieT6BTblshW0fFGzLckmwB VwZfa8m9X18YtQbxfsIDhUk9qggBtpCnZQnRUhxrN2FGyrk5jN1QIHAn3Jz4+OaOYqc9 gE6+gQaZpHFGvWm2+kFCkrrAQbojtSoEWMbS8drk6ktQLytvMlFG4MKE5lKZNdDTzxHU IJ7biV6PXyYKV88JufSIUm6yOhQdFxcfM4Ww8XGSmJev9JQKHemXtyoLFbm33ocTGTEq 2y5K9QgxgbR7UezM1SVKwDqF9JBAcpFfDA3S8qEd4Jar5Rz2HKZGIzGdey9YfNEHmZNU OOug== X-Gm-Message-State: APt69E0E9Os4kw+eyMNK8LKwItGht+juG3RzLMcfp9BaYTAeAKqeLbIv nwtAvCHinyxS/7tZ7rkNu4CMwg== X-Google-Smtp-Source: AAOMgpfZiBiEGDLSZoCCh0gyREJ9/JibPT9gUM/SGw2b4jJBFsL5iW2vMk5IuaHIoOmiOC/OQvaXnA== X-Received: by 2002:a63:7007:: with SMTP id l7-v6mr19855704pgc.206.1531161049959; Mon, 09 Jul 2018 11:30:49 -0700 (PDT) Received: from localhost.localdomain ([115.97.190.51]) by smtp.gmail.com with ESMTPSA id n5-v6sm26832456pgd.7.2018.07.09.11.30.46 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 09 Jul 2018 11:30:49 -0700 (PDT) From: Jagan Teki To: Stefano Babic , Fabio Estevam , Peng Fan , Joe Hershberger Date: Tue, 10 Jul 2018 00:00:08 +0530 Message-Id: <20180709183009.19206-8-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180709183009.19206-1-jagan@amarulasolutions.com> References: <20180709183009.19206-1-jagan@amarulasolutions.com> Cc: u-boot@lists.denx.de Subject: [U-Boot] [RFC 7/8] imx6ul: engicam: Enable CLK_IMX X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" CLK support for imx6ul is available, so enable CLK_IMX for Engicam i.MX6UL boards. Signed-off-by: Jagan Teki --- arch/arm/mach-imx/mx6/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm/mach-imx/mx6/Kconfig b/arch/arm/mach-imx/mx6/Kconfig index 4410f53b55..4ea43db34c 100644 --- a/arch/arm/mach-imx/mx6/Kconfig +++ b/arch/arm/mach-imx/mx6/Kconfig @@ -338,6 +338,7 @@ config TARGET_MX6UL_ENGICAM select BOARD_LATE_INIT select MX6UL select OF_CONTROL + select CLK_IMX select DM select DM_ETH select DM_GPIO From patchwork Mon Jul 9 18:30:09 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 941556 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="MBetGaL6"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 41PYt04vm8z9s01 for ; Tue, 10 Jul 2018 04:35:20 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 56F83C21E08; Mon, 9 Jul 2018 18:32:46 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 64179C21E62; Mon, 9 Jul 2018 18:32:08 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 40E03C21DFA; Mon, 9 Jul 2018 18:31:00 +0000 (UTC) Received: from mail-pl0-f68.google.com (mail-pl0-f68.google.com [209.85.160.68]) by lists.denx.de (Postfix) with ESMTPS id 02418C21E31 for ; Mon, 9 Jul 2018 18:30:55 +0000 (UTC) Received: by mail-pl0-f68.google.com with SMTP id a17-v6so575376plm.12 for ; Mon, 09 Jul 2018 11:30:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=UThxGYSWFvAzS6uMAC/bjYGrHaTLPFeAXunlKtR9Mms=; b=MBetGaL6qndE0FZo5p/rsM6kXcdB0AzxDrCCvkYLcZsk5GjgeMOsHC+s04CtIrY/d7 fePC3RzQeseTtwK6r3zZB/GQQ3BbWyCwDes08Lp/hxG9RO1NK7754B7FSl2Tq56Tk6Ud NNAJf5kWq3BdD1wXbOmA+cBw1N3beWO+QH8NM= 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:in-reply-to :references; bh=UThxGYSWFvAzS6uMAC/bjYGrHaTLPFeAXunlKtR9Mms=; b=rYMST1U3eGH7A9YnMzlPNe7ky8ipgPhD2E18pEJS2tgJOLLQ9IiS+vKpz2TKnzyseW ScTovD7qdgHEJLItQ9n/p38NNF+DCn/yYWqKUyVqBxszO38Y1mHftm8T51+GpFh0io9A P27ZNIWP54/d88RUQuEnpICx6XJbG17zM67QA3PiTRznZA5ladNRghwBiwE2UF7+N6gN c4DaibnL0L4kO4ks1R0aFcZPwvVvHQVgZbQ3jE2DaH3UYxraUV3JqlagTkMZJUw3EWJ8 9cMge2ADSTYQ/xVhl5Y98qibNCtlYEryzyBwIDXLm5JTFowvyrArLjjPBLnj6DMwHac3 aTlg== X-Gm-Message-State: APt69E2tbHbPxrpb3XjyfSz5GJ9GvqKvI9P6djBRHXqBtKAcKMknS7Ip duy3CmK9vFmOls6oEP94rEGqMQ== X-Google-Smtp-Source: AAOMgpf7FZqE7jdZqYNxoowhvrxlgunl6Q+nq9V+e/WWvWw1TLfudRLgQUUmyQJMyU7yDHVHsQYoLA== X-Received: by 2002:a17:902:5857:: with SMTP id f23-v6mr19657057plj.206.1531161053682; Mon, 09 Jul 2018 11:30:53 -0700 (PDT) Received: from localhost.localdomain ([115.97.190.51]) by smtp.gmail.com with ESMTPSA id n5-v6sm26832456pgd.7.2018.07.09.11.30.50 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 09 Jul 2018 11:30:53 -0700 (PDT) From: Jagan Teki To: Stefano Babic , Fabio Estevam , Peng Fan , Joe Hershberger Date: Tue, 10 Jul 2018 00:00:09 +0530 Message-Id: <20180709183009.19206-9-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180709183009.19206-1-jagan@amarulasolutions.com> References: <20180709183009.19206-1-jagan@amarulasolutions.com> Cc: u-boot@lists.denx.de Subject: [U-Boot] [RFC 8/8] configs: icorem6_rqs: Enable CLK_IMX X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" CLK support for imx6qdl is available, so enable CLK_IMX for Engicam i.CoreM6 QDL RQS boards. Signed-off-by: Jagan Teki --- configs/imx6qdl_icore_rqs_defconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/configs/imx6qdl_icore_rqs_defconfig b/configs/imx6qdl_icore_rqs_defconfig index 6fa494a6f9..6036719a31 100644 --- a/configs/imx6qdl_icore_rqs_defconfig +++ b/configs/imx6qdl_icore_rqs_defconfig @@ -46,3 +46,4 @@ CONFIG_FEC_MXC=y CONFIG_PINCTRL=y CONFIG_PINCTRL_IMX6=y CONFIG_MXC_UART=y +CONFIG_CLK_IMX=y