@@ -9,6 +9,7 @@
#include <linux/amba/bus.h>
#include <linux/device.h>
+#include <linux/module.h>
#include <linux/dma-mapping.h>
#include <linux/io.h>
#include <linux/kernel.h>
@@ -584,5 +585,7 @@ static struct amba_driver catu_driver = {
.probe = catu_probe,
.id_table = catu_ids,
};
+module_amba_driver(catu_driver);
-builtin_amba_driver(catu_driver);
+MODULE_LICENSE("GPL v2");
+MODULE_DESCRIPTION("Coresight Address Translation Unit driver");
@@ -7,6 +7,7 @@
#include <linux/atomic.h>
#include <linux/kernel.h>
+#include <linux/module.h>
#include <linux/init.h>
#include <linux/types.h>
#include <linux/device.h>
@@ -846,4 +847,8 @@ static struct amba_driver etb_driver = {
.probe = etb_probe,
.id_table = etb_ids,
};
-builtin_amba_driver(etb_driver);
+
+module_amba_driver(etb_driver);
+
+MODULE_LICENSE("GPL v2");
+MODULE_DESCRIPTION("CoreSight Embedded Trace Buffer driver");
@@ -6,7 +6,7 @@
*/
#include <linux/kernel.h>
-#include <linux/moduleparam.h>
+#include <linux/module.h>
#include <linux/init.h>
#include <linux/types.h>
#include <linux/device.h>
@@ -33,10 +33,6 @@
#include "coresight-etm.h"
#include "coresight-etm-perf.h"
-/*
- * Not really modular but using module_param is the easiest way to
- * remain consistent with existing use cases for now.
- */
static int boot_enable;
module_param_named(boot_enable, boot_enable, int, S_IRUGO);
@@ -947,4 +943,8 @@ static struct amba_driver etm_driver = {
.probe = etm_probe,
.id_table = etm_ids,
};
-builtin_amba_driver(etm_driver);
+
+module_amba_driver(etm_driver);
+
+MODULE_LICENSE("GPL v2");
+MODULE_DESCRIPTION("CoreSight Program Flow Trace driver");
@@ -4,7 +4,7 @@
*/
#include <linux/kernel.h>
-#include <linux/moduleparam.h>
+#include <linux/module.h>
#include <linux/init.h>
#include <linux/types.h>
#include <linux/device.h>
@@ -1568,4 +1568,7 @@ static struct amba_driver etm4x_driver = {
.probe = etm4_probe,
.id_table = etm4_ids,
};
-builtin_amba_driver(etm4x_driver);
+module_amba_driver(etm4x_driver);
+
+MODULE_LICENSE("GPL v2");
+MODULE_DESCRIPTION("CoreSight Program Flow Trace v4 driver");
@@ -7,6 +7,7 @@
#include <linux/acpi.h>
#include <linux/kernel.h>
+#include <linux/module.h>
#include <linux/init.h>
#include <linux/types.h>
#include <linux/device.h>
@@ -372,4 +373,7 @@ static struct amba_driver dynamic_funnel_driver = {
.probe = dynamic_funnel_probe,
.id_table = dynamic_funnel_ids,
};
-builtin_amba_driver(dynamic_funnel_driver);
+module_amba_driver(dynamic_funnel_driver);
+
+MODULE_LICENSE("GPL v2");
+MODULE_DESCRIPTION("CoreSight Funnel driver");
@@ -8,6 +8,7 @@
#include <linux/acpi.h>
#include <linux/amba/bus.h>
#include <linux/kernel.h>
+#include <linux/module.h>
#include <linux/device.h>
#include <linux/platform_device.h>
#include <linux/io.h>
@@ -369,4 +370,7 @@ static struct amba_driver dynamic_replicator_driver = {
.probe = dynamic_replicator_probe,
.id_table = dynamic_replicator_ids,
};
-builtin_amba_driver(dynamic_replicator_driver);
+module_amba_driver(dynamic_replicator_driver);
+
+MODULE_LICENSE("GPL v2");
+MODULE_DESCRIPTION("CoreSight Replicator driver");
@@ -992,5 +992,7 @@ static struct amba_driver stm_driver = {
.probe = stm_probe,
.id_table = stm_ids,
};
+module_amba_driver(stm_driver);
-builtin_amba_driver(stm_driver);
+MODULE_LICENSE("GPL v2");
+MODULE_DESCRIPTION("CoreSight System Trace Macrocell driver");
@@ -5,6 +5,7 @@
*/
#include <linux/kernel.h>
+#include <linux/module.h>
#include <linux/init.h>
#include <linux/types.h>
#include <linux/device.h>
@@ -558,4 +559,7 @@ static struct amba_driver tmc_driver = {
.probe = tmc_probe,
.id_table = tmc_ids,
};
-builtin_amba_driver(tmc_driver);
+module_amba_driver(tmc_driver);
+
+MODULE_LICENSE("GPL v2");
+MODULE_DESCRIPTION("CoreSight Trace Memory Controller driver");
@@ -7,6 +7,7 @@
#include <linux/atomic.h>
#include <linux/kernel.h>
+#include <linux/module.h>
#include <linux/init.h>
#include <linux/device.h>
#include <linux/io.h>
@@ -226,4 +227,7 @@ static struct amba_driver tpiu_driver = {
.probe = tpiu_probe,
.id_table = tpiu_ids,
};
-builtin_amba_driver(tpiu_driver);
+module_amba_driver(tpiu_driver);
+
+MODULE_LICENSE("GPL v2");
+MODULE_DESCRIPTION("CoreSight Trace Port Interface Unit driver");
@@ -205,13 +205,4 @@ struct amba_device name##_device = { \
#define module_amba_driver(__amba_drv) \
module_driver(__amba_drv, amba_driver_register, amba_driver_unregister)
-/*
- * builtin_amba_driver() - Helper macro for drivers that don't do anything
- * special in driver initcall. This eliminates a lot of boilerplate. Each
- * driver may only use this macro once, and calling it replaces the instance
- * device_initcall().
- */
-#define builtin_amba_driver(__amba_drv) \
- builtin_driver(__amba_drv, amba_driver_register)
-
#endif
This reverts commit 941943cf519f7cacbbcecee5c4ef4b77b466bd5c. Keep the descriptions in the driver headers. Also extend the same changes to the drivers added after the reverted commit. Prepare to make Coresight infrastructure modular. Signed-off-by: Mian Yousaf Kaukab <ykaukab@suse.de> --- drivers/hwtracing/coresight/coresight-catu.c | 5 ++++- drivers/hwtracing/coresight/coresight-etb10.c | 7 ++++++- drivers/hwtracing/coresight/coresight-etm3x.c | 12 ++++++------ drivers/hwtracing/coresight/coresight-etm4x.c | 7 +++++-- drivers/hwtracing/coresight/coresight-funnel.c | 6 +++++- drivers/hwtracing/coresight/coresight-replicator.c | 6 +++++- drivers/hwtracing/coresight/coresight-stm.c | 4 +++- drivers/hwtracing/coresight/coresight-tmc.c | 6 +++++- drivers/hwtracing/coresight/coresight-tpiu.c | 6 +++++- include/linux/amba/bus.h | 9 --------- 10 files changed, 44 insertions(+), 24 deletions(-)