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 X-Spam-Level: X-Spam-Status: No, score=-10.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id CB433C433E0 for ; Mon, 3 Aug 2020 17:13:38 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 98D8722B40 for ; Mon, 3 Aug 2020 17:13:38 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="tgF1CgdH"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="t3VZ8b2J" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 98D8722B40 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linaro.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:To:Subject:Message-ID:Date:From:In-Reply-To: References:MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=ZYYtXQ2TXTNxjnSodvxkzzNfio6Fk4wtwCswOCooI3c=; b=tgF1CgdHQ9Cdb5vxsqMAlTcyN pwGRWsRVaaL1MmfBkp14RNBhx6rZnjXwM2mBTsZF6V7gdzSyiFhguZFP7bMf4nDL6edFW+4a5eCA8 kw4PN1WNUv//Z1NWoMfkeaTBH1Pqo6/bDHJP/zruZJZSP+LDSc2lJfjPwFYBeHfHRuG0A7s4u6Xz4 RlnJAXNTTnDgXusrv35woLHPh6ghlPJB5srLk0PYNkqUwWomc3aohcD84k14aTGZuK4aWD8rJA1Xu rzGS5yxXJKHG1n8FtxJtOSXIb0XQThYyy1EbgYrmITsqu2C+nH21cYx33SqKbt6Dl9aRraQBTCPfx BfHvSHKtw==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1k2e03-0005gL-Ly; Mon, 03 Aug 2020 17:11:47 +0000 Received: from mail-ej1-x641.google.com ([2a00:1450:4864:20::641]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1k2dzv-0005bV-Jd for linux-arm-kernel@lists.infradead.org; Mon, 03 Aug 2020 17:11:40 +0000 Received: by mail-ej1-x641.google.com with SMTP id o23so11976907ejr.1 for ; Mon, 03 Aug 2020 10:11:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=3HrMb8Y9/Pk3/iUtQwwHLQZpVeF6dJIAiczVPhUxUhQ=; b=t3VZ8b2JyiSbPIGebqawGmppFt3/hyNEd+Uqdz+MH3MfRvVfelP/5Yaq9IIZ6HZ7WJ WMPNzWrxwuHxo8IkIU2H8xoyGwxh4SvZ7tMZ43BXnnkvHqsNNQIS75nnfV7TtcMhTzVP +VvLNUKqTRwU4kTh9OEuGnSdbO27GoqDT4YfQ40wsNqmAsifB2/3aTkFMi2ut2Wduqhv baaUCYUf0E8fNv3RcMqGmsgxE+26su2k07TR1YyGLGehbMFIyVW6nl7LI5LoiadQIFpH qyJZdHRvO7tuxKObLC2TAR+3LVL3NPVQ1p1fapUtHnMQj2HY5ujT9e84ZwzTVdLJfK8H UuEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=3HrMb8Y9/Pk3/iUtQwwHLQZpVeF6dJIAiczVPhUxUhQ=; b=ppxXipxau0jiXSquZlVsWdXfP2qPWhUbst3j1r2TgiilspXsKEPtnOs8moKSFgFinM A0i4fnf/qvd+4HD3KWEWwmL9+XbGuxDaR55xBuHoiLonIjYEuAhBMmqMnsjCva0Xj3bt lxfZtT0VdPYGVMBwyChBIpcwkZLkS6yNqKjmIlRl9ni3fZK4Y1jWfZGwLIRb3ZE8WdtT o8wlJzAaRujamrntTbErQIgpOP/HXl+fPj96twbOwUS5n9w8+SexL7jtK7BOFMdXPbuq pcDZOYpr0M+Emj3BKo9zaZhpq73x8UZf+maAoyJ7WWlyWPEp5HMQooh5lFEhUJE73OAq TAtA== X-Gm-Message-State: AOAM533v2NZ6B0yml4zvzS2Pbh+RMbuocRbZZAK8DEB2dcZMQ4VeVz53 aZtKIWfHYsESn6Kpox0lC+bFawVEcyieqSRgklD06g== X-Google-Smtp-Source: ABdhPJyEdYTSJEhVYEs+pf9KWGYUBV/KcmkoHU1F2/B3gm+slmZxlKGFL1SA8iiioDB/fIVSF8RCjjnbrYeZk7fqyY8= X-Received: by 2002:a17:907:36b:: with SMTP id rs11mr18288696ejb.544.1596474698427; Mon, 03 Aug 2020 10:11:38 -0700 (PDT) MIME-Version: 1.0 References: <20200731064012.8076-1-tingwei@codeaurora.org> <20200731064012.8076-14-tingwei@codeaurora.org> In-Reply-To: <20200731064012.8076-14-tingwei@codeaurora.org> From: Mike Leach Date: Mon, 3 Aug 2020 18:11:27 +0100 Message-ID: Subject: Re: [PATCH v6 13/25] coresight: tmc: allow tmc to be built as a module To: Tingwei Zhang X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200803_131139_777233_0FF3333B X-CRM114-Status: GOOD ( 27.87 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: tsoni@codeaurora.org, Sai Prakash Ranjan , Kim Phillips , Mathieu Poirier , Suzuki K Poulose , Alexander Shishkin , Greg Kroah-Hartman , Coresight ML , Randy Dunlap , Mian Yousaf Kaukab , Russell King , Mao Jinlong , Leo Yan , linux-arm-kernel Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Fri, 31 Jul 2020 at 07:41, Tingwei Zhang wrote: > > From: Kim Phillips > > Allow to build coresight-tmc as a module, for ease of development. > > - Kconfig becomes a tristate, to allow =m > - append -core to source file name to allow module to > be called coresight-tmc by the Makefile > - add an tmc_remove function, for module unload > - add a MODULE_DEVICE_TABLE for autoloading on boot > > Cc: Mathieu Poirier > Cc: Leo Yan > Cc: Alexander Shishkin > Cc: Randy Dunlap > Cc: Suzuki K Poulose > Cc: Greg Kroah-Hartman > Cc: Russell King > Signed-off-by: Kim Phillips > Signed-off-by: Tingwei Zhang > --- > drivers/hwtracing/coresight/Kconfig | 6 +++++- > drivers/hwtracing/coresight/Makefile | 6 +++--- > .../{coresight-tmc.c => coresight-tmc-core.c} | 19 ++++++++++++++++++- > 3 files changed, 26 insertions(+), 5 deletions(-) > rename drivers/hwtracing/coresight/{coresight-tmc.c => coresight-tmc-core.c} (96%) > > diff --git a/drivers/hwtracing/coresight/Kconfig b/drivers/hwtracing/coresight/Kconfig > index 8fd9887fb03b..fc48ae086746 100644 > --- a/drivers/hwtracing/coresight/Kconfig > +++ b/drivers/hwtracing/coresight/Kconfig > @@ -25,7 +25,8 @@ config CORESIGHT_LINKS_AND_SINKS > entity at run time to form a complete trace path. > > config CORESIGHT_LINK_AND_SINK_TMC > - bool "Coresight generic TMC driver" > + tristate "Coresight generic TMC driver" > + > depends on CORESIGHT_LINKS_AND_SINKS > help > This enables support for the Trace Memory Controller driver. > @@ -34,6 +35,9 @@ config CORESIGHT_LINK_AND_SINK_TMC > complies with the generic implementation of the component without > special enhancement or added features. > > + To compile this driver as a module, choose M here: the > + module will be called coresight-tmc. > + > config CORESIGHT_CATU > bool "Coresight Address Translation Unit (CATU) driver" > depends on CORESIGHT_LINK_AND_SINK_TMC > diff --git a/drivers/hwtracing/coresight/Makefile b/drivers/hwtracing/coresight/Makefile > index 271dc255454f..f2a568b969c4 100644 > --- a/drivers/hwtracing/coresight/Makefile > +++ b/drivers/hwtracing/coresight/Makefile > @@ -4,9 +4,9 @@ > # > obj-$(CONFIG_CORESIGHT) += coresight.o coresight-etm-perf.o \ > coresight-platform.o coresight-sysfs.o > -obj-$(CONFIG_CORESIGHT_LINK_AND_SINK_TMC) += coresight-tmc.o \ > - coresight-tmc-etf.o \ > - coresight-tmc-etr.o > +obj-$(CONFIG_CORESIGHT_LINK_AND_SINK_TMC) += coresight-tmc.o > +coresight-tmc-y := coresight-tmc-core.o coresight-tmc-etf.o \ > + coresight-tmc-etr.o > obj-$(CONFIG_CORESIGHT_SINK_TPIU) += coresight-tpiu.o > obj-$(CONFIG_CORESIGHT_SINK_ETBV10) += coresight-etb10.o > obj-$(CONFIG_CORESIGHT_LINKS_AND_SINKS) += coresight-funnel.o \ > diff --git a/drivers/hwtracing/coresight/coresight-tmc.c b/drivers/hwtracing/coresight/coresight-tmc-core.c > similarity index 96% > rename from drivers/hwtracing/coresight/coresight-tmc.c > rename to drivers/hwtracing/coresight/coresight-tmc-core.c > index 7040d583bed9..29d191ba7ccf 100644 > --- a/drivers/hwtracing/coresight/coresight-tmc.c > +++ b/drivers/hwtracing/coresight/coresight-tmc-core.c > @@ -561,6 +561,16 @@ static void tmc_shutdown(struct amba_device *adev) > spin_unlock_irqrestore(&drvdata->spinlock, flags); > } > > +static int __exit tmc_remove(struct amba_device *adev) > +{ > + struct tmc_drvdata *drvdata = dev_get_drvdata(&adev->dev); > + > + misc_deregister(&drvdata->miscdev); > + coresight_unregister(drvdata->csdev); > + > + return 0; > +} > + > static const struct amba_id tmc_ids[] = { > CS_AMBA_ID(0x000bb961), > /* Coresight SoC 600 TMC-ETR/ETS */ > @@ -572,6 +582,8 @@ static const struct amba_id tmc_ids[] = { > { 0, 0}, > }; > > +MODULE_DEVICE_TABLE(amba, tmc_ids); > + > static struct amba_driver tmc_driver = { > .drv = { > .name = "coresight-tmc", > @@ -580,6 +592,11 @@ static struct amba_driver tmc_driver = { > }, > .probe = tmc_probe, > .shutdown = tmc_shutdown, > + .remove = tmc_remove, > .id_table = tmc_ids, > }; > -builtin_amba_driver(tmc_driver); > +module_amba_driver(tmc_driver); > + > +MODULE_AUTHOR("Pratik Patel "); > +MODULE_DESCRIPTION("Arm CoreSight Trace Memory Controller driver"); > +MODULE_LICENSE("GPL v2"); > -- > The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, > a Linux Foundation Collaborative Project > Tested by: Mike Leach -- Mike Leach Principal Engineer, ARM Ltd. Manchester Design Centre. UK _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel