From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 35445C282EC for ; Wed, 12 Mar 2025 00:31:58 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 28B508141D; Wed, 12 Mar 2025 01:31:50 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="UNz9O/Nl"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id E6A4381335; Wed, 12 Mar 2025 01:31:48 +0100 (CET) Received: from mail-qt1-x830.google.com (mail-qt1-x830.google.com [IPv6:2607:f8b0:4864:20::830]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id A077E80F9C for ; Wed, 12 Mar 2025 01:31:46 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=aford173@gmail.com Received: by mail-qt1-x830.google.com with SMTP id d75a77b69052e-4769bbc21b0so15281491cf.2 for ; Tue, 11 Mar 2025 17:31:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741739505; x=1742344305; darn=lists.denx.de; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=USBbj80l4lb0WZuzvvtQb2v4pUHzDBhoTPdfEIrWZ+s=; b=UNz9O/NlXTOaSoX1fJElMVgIeEAAJ5NnnAZeFwG9a+CFyxclN7DycTTe8HOB1sCqHz GpEaZmXqipwfDgr12s+HD+wgFfEgjpAHfA2l48GVndv0LCuqZSnsRXPbTxQRgYUIuvJL qGNY7ELU9WzHXIxU0mKHN+j02/Xr6U4IgnNPLgZinkDCOlGShUsPz2SRol97FejOXG0v PPA9LCk5/QTJ+ZOanOMapbplIbbOiZY6bkZG1zJ2UIQHV7jtCBNA4UNW0FuzB/ITCRhG yDuRPVD5P7IzcD4gJTicA3yldpsJaPpjCy6ALnDgXXyKnZsInf812u2gew/QMqFN490A u9oQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741739505; x=1742344305; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=USBbj80l4lb0WZuzvvtQb2v4pUHzDBhoTPdfEIrWZ+s=; b=WgP26KWTN81KSF4J53k/RHjx/b/1MAKGOGm4NoiVvPE4zoaQpsdFSZrWvx+6UYKPE9 NS6SvpvJyV1///S8dAZ4KjEy0ExScXNdjhFTVIqEjaQLEPPtZ62X8Lrud71lMDuy5J6Z Jthh0rVfpN2zudXTwSJgpz61/8TpGB6CRlJAjAaJO7oCoZsP6SdYYbkaC13PPtPiXgFQ HAwacthTAxgh/JnHaK4gEy4TIlfZkh+lNzFVnIG+krxAVKU/tSKJhiUFcuZitjYYH44c mdeCh0WgBeQht03dgVZpU9Z/UWpuS9MDYvNmv+w5J1jIckb8IG6IVjfMYbwhmx/m/11s 7P6Q== X-Gm-Message-State: AOJu0YwGPRfL3TLDi2/ieu/IbdEanplIPjSY5JLHC4Ln3eRsKdwzsI4l 8u7RKfoDrCmhR5AO75y6jRiZGTNDRCUwj9m3uYrCgHX/w+BWDd/2JI9qjA== X-Gm-Gg: ASbGnctZ+k6bVxyZAmbUvazk8bcQNOAB16NjFrSiykD16fToX7uZowAK76kKZPO0+nv rFsdPjQXk4Ke8ONKL7LYoEzHca+RySB3FmCpx72a/sw6ktQvUCOoW5B1CeQGrLkkK9XhaLaxpTW GBTX6Mf8Yast+vDuUGX+KJoQI9R8EJqrPdG/4XZFNYSwAJGs7JlyPzYjowUFPLVS18VljbMCaMg 9FmOgQTCE43EbxrHRlOlXcEqtiZXavRsJhpzZ7Ih0OHa4gjQNwv92BnDlgkj9PYvRnXFPIVp25q YmrwzgUr73ognl/TbVaTcYUvAmTUVRH+arRPosdD7rf3XgkdDPwH7KSGnN79NFWYDz+DFdTCO89 WHQpCas/XcrFmSsUc//rcE7icg1zR8Q== X-Google-Smtp-Source: AGHT+IFbVGI4TgRNLC8IjnjQhPa41GfONwvk4CT72G1VXpf0SYYSpO1q1MGMQriKCT0uFBRk4/Gn/A== X-Received: by 2002:ad4:5c62:0:b0:6e8:fe0a:7031 with SMTP id 6a1803df08f44-6e900683748mr190283266d6.43.1741739504978; Tue, 11 Mar 2025 17:31:44 -0700 (PDT) Received: from aford-System-Version.. (c-75-72-162-184.hsd1.mn.comcast.net. [75.72.162.184]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-6e8f715b798sm78025286d6.80.2025.03.11.17.31.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Mar 2025 17:31:44 -0700 (PDT) From: Adam Ford To: u-boot@lists.denx.de Cc: aford@beaconembedded.com, Adam Ford , Michael Trimarchi , Tom Rini , Lukasz Majewski , Sean Anderson , Stefano Babic , Fabio Estevam , "NXP i.MX U-Boot Team" , Simon Glass , Sumit Garg , Marek Vasut , Emil Kronborg , Tim Harvey , Hou Zhiqiang , Peter Robinson Subject: [PATCH V2 01/10] clk: imx6q: Properly handle imx6qp ECSPI clk_sels Date: Tue, 11 Mar 2025 19:30:21 -0500 Message-ID: <20250312003041.110023-2-aford173@gmail.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20250312003041.110023-1-aford173@gmail.com> References: <20250312003041.110023-1-aford173@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.8 at phobos.denx.de X-Virus-Status: Clean The ECSPI clock has the ability to select between pll3_60m and osc on the imx6qp, where it's fixed on other variants. Fix this by adding using a helper function to determine SoC variant and register the clock accordingly. Signed-off-by: Adam Ford Reviewed-by: Michael Trimarchi --- drivers/clk/imx/clk-imx6q.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) V2: Fix the name "ECSPI" and elimiate helper function by directly calling of_machine_is_compatible. diff --git a/drivers/clk/imx/clk-imx6q.c b/drivers/clk/imx/clk-imx6q.c index df9f0285e1e..15ad0c9ac06 100644 --- a/drivers/clk/imx/clk-imx6q.c +++ b/drivers/clk/imx/clk-imx6q.c @@ -35,6 +35,7 @@ static const char *const usdhc_sels[] = { "pll2_pfd2_396m", "pll2_pfd0_352m", }; static const char *const periph_sels[] = { "periph_pre", "periph_clk2", }; static const char *const periph_pre_sels[] = { "pll2_bus", "pll2_pfd2_396m", "pll2_pfd0_352m", "pll2_198m", }; +static const char *const ecspi_sels[] = { "pll3_60m", "osc", }; static int imx6q_clk_probe(struct udevice *dev) { @@ -78,6 +79,11 @@ static int imx6q_clk_probe(struct udevice *dev) imx_clk_mux("usdhc4_sel", base + 0x1c, 19, 1, usdhc_sels, ARRAY_SIZE(usdhc_sels))); + if (of_machine_is_compatible("fsl,imx6qp") + clk_dm(IMX6QDL_CLK_ECSPI_SEL, + imx_clk_mux("ecspi_sel", base + 0x38, 18, 1, ecspi_sels, + ARRAY_SIZE(ecspi_sels))); + clk_dm(IMX6QDL_CLK_USDHC1_PODF, imx_clk_divider("usdhc1_podf", "usdhc1_sel", base + 0x24, 11, 3)); @@ -91,8 +97,12 @@ static int imx6q_clk_probe(struct udevice *dev) imx_clk_divider("usdhc4_podf", "usdhc4_sel", base + 0x24, 22, 3)); - clk_dm(IMX6QDL_CLK_ECSPI_ROOT, - imx_clk_divider("ecspi_root", "pll3_60m", base + 0x38, 19, 6)); + if (of_machine_is_compatible("fsl,imx6qp") + clk_dm(IMX6QDL_CLK_ECSPI_ROOT, + imx_clk_divider("ecspi_root", "ecspi_sel", base + 0x38, 19, 6)); + else + clk_dm(IMX6QDL_CLK_ECSPI_ROOT, + imx_clk_divider("ecspi_root", "pll3_60m", base + 0x38, 19, 6)); clk_dm(IMX6QDL_CLK_ECSPI1, imx_clk_gate2("ecspi1", "ecspi_root", base + 0x6c, 0)); -- 2.45.2