diff options
author | Sudeep Holla <sudeep.holla@arm.com> | 2021-05-21 16:10:30 +0100 |
---|---|---|
committer | Sudeep Holla <sudeep.holla@arm.com> | 2021-05-26 22:36:46 +0100 |
commit | 3bbfe9871005f38df2955b2e125933edf1d2feef (patch) | |
tree | 432b1ee64dbf3d7506e673f80008fa2bbf420a2c /drivers/firmware/arm_ffa/bus.c | |
parent | e781858488b918e30a6ff28e9eab6058b787e3b3 (diff) |
firmware: arm_ffa: Add initial Arm FFA driver support
This just add a basic driver that sets up the transport(e.g. SMCCC),
checks the FFA version implemented, get the partition ID for self and
sets up the Tx/Rx buffers for communication.
Link: https://lore.kernel.org/r/20210521151033.181846-3-sudeep.holla@arm.com
Tested-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Diffstat (limited to 'drivers/firmware/arm_ffa/bus.c')
-rw-r--r-- | drivers/firmware/arm_ffa/bus.c | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/drivers/firmware/arm_ffa/bus.c b/drivers/firmware/arm_ffa/bus.c index a17874bed946..ae1eada5dc0c 100644 --- a/drivers/firmware/arm_ffa/bus.c +++ b/drivers/firmware/arm_ffa/bus.c @@ -13,6 +13,8 @@ #include <linux/slab.h> #include <linux/types.h> +#include "common.h" + static int ffa_device_match(struct device *dev, struct device_driver *drv) { const struct ffa_device_id *id_table; @@ -187,21 +189,13 @@ void ffa_device_unregister(struct ffa_device *ffa_dev) } EXPORT_SYMBOL_GPL(ffa_device_unregister); -static int __init arm_ffa_bus_init(void) +int arm_ffa_bus_init(void) { return bus_register(&ffa_bus_type); } -module_init(arm_ffa_bus_init); -static void __exit arm_ffa_bus_exit(void) +void arm_ffa_bus_exit(void) { ffa_devices_unregister(); bus_unregister(&ffa_bus_type); } - -module_exit(arm_ffa_bus_exit); - -MODULE_ALIAS("arm-ffa-bus"); -MODULE_AUTHOR("Sudeep Holla <sudeep.holla@arm.com>"); -MODULE_DESCRIPTION("Arm FF-A bus driver"); -MODULE_LICENSE("GPL v2"); |