[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200527112608.3886105-6-anders.roxell@linaro.org>
Date: Wed, 27 May 2020 13:26:08 +0200
From: Anders Roxell <anders.roxell@...aro.org>
To: soc@...nel.org
Cc: linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
robh@...nel.org, linus.walleij@...aro.org,
Anders Roxell <anders.roxell@...aro.org>
Subject: [PATCH 5/5] power: vexpress: make the reset driver a module
Today the vexpress power driver can only be builtin. Rework so it's
possible for the vexpress power driver to be a module.
Signed-off-by: Anders Roxell <anders.roxell@...aro.org>
---
arch/arm/mach-vexpress/Kconfig | 1 -
drivers/power/reset/Kconfig | 5 +++--
drivers/power/reset/vexpress-poweroff.c | 12 +++++++++++-
3 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/arch/arm/mach-vexpress/Kconfig b/arch/arm/mach-vexpress/Kconfig
index 065e12991663..4b54d8cf897d 100644
--- a/arch/arm/mach-vexpress/Kconfig
+++ b/arch/arm/mach-vexpress/Kconfig
@@ -15,7 +15,6 @@ menuconfig ARCH_VEXPRESS
select NO_IOPORT_MAP
select PLAT_VERSATILE
select POWER_RESET
- select POWER_RESET_VEXPRESS
select POWER_SUPPLY
select REGULATOR if MMC_ARMMMCI
select REGULATOR_FIXED_VOLTAGE if REGULATOR
diff --git a/drivers/power/reset/Kconfig b/drivers/power/reset/Kconfig
index f07b982c8dff..8468d42b0198 100644
--- a/drivers/power/reset/Kconfig
+++ b/drivers/power/reset/Kconfig
@@ -189,9 +189,10 @@ config POWER_RESET_VERSATILE
reference boards.
config POWER_RESET_VEXPRESS
- bool "ARM Versatile Express power-off and reset driver"
+ tristate "ARM Versatile Express power-off and reset driver"
depends on ARM || ARM64
- depends on VEXPRESS_CONFIG=y
+ depends on VEXPRESS_CONFIG
+ default VEXPRESS_CONFIG
help
Power off and reset support for the ARM Ltd. Versatile
Express boards.
diff --git a/drivers/power/reset/vexpress-poweroff.c b/drivers/power/reset/vexpress-poweroff.c
index 1fdbcbd95fc2..b1eef95132d9 100644
--- a/drivers/power/reset/vexpress-poweroff.c
+++ b/drivers/power/reset/vexpress-poweroff.c
@@ -5,6 +5,7 @@
*/
#include <linux/delay.h>
+#include <linux/module.h>
#include <linux/notifier.h>
#include <linux/of.h>
#include <linux/of_device.h>
@@ -146,4 +147,13 @@ static struct platform_driver vexpress_reset_driver = {
.suppress_bind_attrs = true,
},
};
-builtin_platform_driver(vexpress_reset_driver);
+
+static int __init vexpress_reset_init(void)
+{
+ return platform_driver_register(&vexpress_reset_driver);
+}
+module_init(vexpress_reset_init);
+
+MODULE_AUTHOR("Pawel Moll <pawel.moll@....com>");
+MODULE_DESCRIPTION("Vexpress reset driver");
+MODULE_LICENSE("GPL v2");
--
2.26.2
Powered by blists - more mailing lists