Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp1699110ybt; Thu, 2 Jul 2020 11:32:30 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx3SYr1hZO/GUuX5mEUdnOld0OYmpEbk73TKE5x1kAJT4KnrvGStVXJN5LrMJ6IX5ebPZ0h X-Received: by 2002:a17:906:404e:: with SMTP id y14mr28114768ejj.260.1593714749875; Thu, 02 Jul 2020 11:32:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1593714749; cv=none; d=google.com; s=arc-20160816; b=Dkr7dLErYq7WP6UZbEqBLWl+IwapN9UCaijUuvffTV5N2yoL/6AhzSy5UOMaKOJQ4H Il8xEml2pmNHPw/widBY3ixNzGuhzRnWHSO7NVIzd7pO4eAD1eHfvMOwtemSvnfWzWD4 +2PK+yGOlxuIdaSr+qq5FSsuGV0t11uiUjG2VpAbeuST3Xm6W+QA771fzbopdp4FvphI UDhyG45rUxsHLTGAUAoeoXD/YPbgByyopfQ0kv7arHKreGx2kmlq2vOHXl3snU/5082G UVj6x/ppEGMLFOgPgvlunpRypKOSeyk/04vaV1XjCdZdu2A1LdtP4FYrN08qOKTbPtpl AbMg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :dkim-signature; bh=tVE6NipJeaVbYxpe069e8zOTuuskVdwdfS3lLWnC0JU=; b=IGe6vlxtKhLD3wyumK0HMVk+FAMFBbkZLpl4UAVO19X2tAL59s8Gn9Lt6YooOM7aEY g9bRA8DW2W05befm90YlsIPUkehpa7i/KN2cXOAaHcYzFf9RDfMPc4wWSXA1E2Iw4dBm hIcEKb9W3R1K9QpcOphqUefB9RkkA5Qow04tkr0qUxHUO64BtlaxBO2P8VyavLDkQe7k ZCBmzafalyMJ/RMpBelgXyiHMzZ4QpsePy5WGCDxhwXaURmH6XUySGQdop7VReGU+eiR p2ju36pGvihBlOH77tmPwz5oKbJnE8WZY5t/R33J4CRM16Bq+jt1U7g/K+59VfeRGNpO ABFg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=jCOfj4zD; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id o6si6495636ejn.680.2020.07.02.11.32.06; Thu, 02 Jul 2020 11:32:29 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=jCOfj4zD; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728080AbgGBSaG (ORCPT + 99 others); Thu, 2 Jul 2020 14:30:06 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56578 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726997AbgGBSaG (ORCPT ); Thu, 2 Jul 2020 14:30:06 -0400 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E7A79C08C5C1; Thu, 2 Jul 2020 11:30:05 -0700 (PDT) Received: from pendragon.ideasonboard.com (81-175-216-236.bb.dnainternet.fi [81.175.216.236]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 7D7EB293; Thu, 2 Jul 2020 20:30:01 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1593714601; bh=hhendKEal8NhhQf3aUbKRjlfcErlw7igeXhBWipDuG4=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=jCOfj4zDiHBDwNN4YtuHiyOXemcvHQ6phNqKHA2+0ZvuvT8wCAlnADNrl8NBYjcAz 9KVYZ56IFnRZPQKK+myOFrlB7G/y1N0ondBlFK6qkXmaKsPbxva9a5l/+7qfrbErHi tXvI8xLo7JtXi6KMg7BWMcDf01aHZ3fVJZbFU7tk= Date: Thu, 2 Jul 2020 21:29:57 +0300 From: Laurent Pinchart To: Anson Huang Cc: mturquette@baylibre.com, sboyd@kernel.org, shawnguo@kernel.org, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, aisheng.dong@nxp.com, arnd@arndb.de, peng.fan@nxp.com, abel.vesa@nxp.com, j.remmet@phytec.de, sfr@canb.auug.org.au, georg.waibel@wiedemann-group.de, Georg.Waibel@wiedemann-group.com, chen.fang@nxp.com, fugang.duan@nxp.com, daniel.baluta@nxp.com, yuehaibing@huawei.com, horia.geanta@nxp.com, andrew.smirnov@gmail.com, linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Linux-imx@nxp.com Subject: Re: [PATCH V5 0/6] Support building i.MX ARMv7/ARMv8 platforms clock driver as module Message-ID: <20200702182957.GO12562@pendragon.ideasonboard.com> References: <1593703441-16944-1-git-send-email-Anson.Huang@nxp.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <1593703441-16944-1-git-send-email-Anson.Huang@nxp.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Anson, On Thu, Jul 02, 2020 at 11:23:55PM +0800, Anson Huang wrote: > Nowdays, there are more and more requirements of building SoC specific > drivers as modules, such as Android GKI (generic kernel image), this > patch set supports building i.MX ARMv6/ARMv7 SoCs clock drivers as modules, I'm curious, how does the system boot to userspace to be able to load modules without clock support in the kernel ? What if the driver for the device storing the rootfs cope with clocks not being available ? Does this require an initramfs with the clock module ? Even then, how does the serial port driver cope with not having clocks ? > The CLK_IMXxxx is introduced for i.MX ARMv7 platforms in order to support > various build options, and i.MX1/2/3 platforms now still ONLY support built-in > as they are rarely used now. > > Changes since V4: > - add empty function of imx_register_uart_clocks() for MODULE build, then > all earlycon related clock handler can be built-out for MODULE; > - add module build support for ARMv7 platforms, also add COMPILE_TEST for them; > - add COMPILE_TEST for ARMv8 platforms; > - keep using builtin_platform_driver() for i.MX8QXP clock driver. > > Anson Huang (6): > clk: composite: Export clk_hw_register_composite() > clk: imx: Support module build for i.MX5/6/7 and vf610 > clk: imx: Support building i.MX common clock driver as module > clk: imx: Add clock configuration for ARMv7 platforms > clk: imx8m: Support module build > clk: imx8qxp: Support building i.MX8QXP clock driver as module > > drivers/clk/clk-composite.c | 1 + > drivers/clk/imx/Kconfig | 101 ++++++++++++++++++++++++++++++++----- > drivers/clk/imx/Makefile | 79 ++++++++++++++--------------- > drivers/clk/imx/clk-composite-8m.c | 2 + > drivers/clk/imx/clk-cpu.c | 2 + > drivers/clk/imx/clk-frac-pll.c | 2 + > drivers/clk/imx/clk-gate2.c | 2 + > drivers/clk/imx/clk-imx5.c | 5 ++ > drivers/clk/imx/clk-imx6q.c | 5 ++ > drivers/clk/imx/clk-imx6sl.c | 5 ++ > drivers/clk/imx/clk-imx6sll.c | 5 ++ > drivers/clk/imx/clk-imx6sx.c | 5 ++ > drivers/clk/imx/clk-imx6ul.c | 5 ++ > drivers/clk/imx/clk-imx7d.c | 5 ++ > drivers/clk/imx/clk-imx7ulp.c | 5 ++ > drivers/clk/imx/clk-imx8mm.c | 4 ++ > drivers/clk/imx/clk-imx8mn.c | 4 ++ > drivers/clk/imx/clk-imx8mp.c | 4 ++ > drivers/clk/imx/clk-imx8mq.c | 4 ++ > drivers/clk/imx/clk-imx8qxp-lpcg.c | 4 ++ > drivers/clk/imx/clk-imx8qxp.c | 4 ++ > drivers/clk/imx/clk-pll14xx.c | 5 ++ > drivers/clk/imx/clk-sscg-pll.c | 2 + > drivers/clk/imx/clk-vf610.c | 5 ++ > drivers/clk/imx/clk.c | 17 +++++-- > drivers/clk/imx/clk.h | 6 +++ > 26 files changed, 231 insertions(+), 57 deletions(-) -- Regards, Laurent Pinchart