greybus: pwm: Create separate module

Create separate module for pwm gpbridge driver.

Tested on EVT 1.5 by inserting GP test module, all the devices were
enumerated correctly.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
Viresh Kumar 2016-05-09 18:15:08 +05:30 committed by Greg Kroah-Hartman
parent d6046b44a5
commit dca8060db8
4 changed files with 6 additions and 12 deletions

View File

@ -17,7 +17,6 @@ greybus-y := core.o \
gb-phy-y := gpbridge.o \ gb-phy-y := gpbridge.o \
sdio.o \ sdio.o \
uart.o \ uart.o \
pwm.o \
spi.o \ spi.o \
usb.o usb.o
@ -38,6 +37,7 @@ gb-audio-manager-y += audio_manager.o
gb-audio-manager-y += audio_manager_module.o gb-audio-manager-y += audio_manager_module.o
gb-camera-y := camera.o gb-camera-y := camera.o
gb-firmware-y := fw-core.o fw-download.o gb-firmware-y := fw-core.o fw-download.o
gb-pwm-y := pwm.o
gb-gpio-y := gpio.o gb-gpio-y := gpio.o
gb-i2c-y := i2c.o gb-i2c-y := i2c.o
@ -62,6 +62,7 @@ obj-m += gb-audio-gb.o
obj-m += gb-audio-apbridgea.o obj-m += gb-audio-apbridgea.o
obj-m += gb-audio-manager.o obj-m += gb-audio-manager.o
obj-m += gb-firmware.o obj-m += gb-firmware.o
obj-m += gb-pwm.o
obj-m += gb-gpio.o obj-m += gb-gpio.o
obj-m += gb-i2c.o obj-m += gb-i2c.o

View File

@ -317,10 +317,6 @@ static int __init gpbridge_init(void)
goto error_gpbridge; goto error_gpbridge;
} }
if (gb_pwm_driver_init()) {
pr_err("error initializing pwm driver\n");
goto error_pwm;
}
if (gb_uart_driver_init()) { if (gb_uart_driver_init()) {
pr_err("error initializing uart driver\n"); pr_err("error initializing uart driver\n");
goto error_uart; goto error_uart;
@ -347,8 +343,6 @@ error_usb:
error_sdio: error_sdio:
gb_uart_driver_exit(); gb_uart_driver_exit();
error_uart: error_uart:
gb_pwm_driver_exit();
error_pwm:
greybus_deregister(&gb_gpbridge_driver); greybus_deregister(&gb_gpbridge_driver);
error_gpbridge: error_gpbridge:
bus_unregister(&gpbridge_bus_type); bus_unregister(&gpbridge_bus_type);
@ -363,7 +357,6 @@ static void __exit gpbridge_exit(void)
gb_usb_driver_exit(); gb_usb_driver_exit();
gb_sdio_driver_exit(); gb_sdio_driver_exit();
gb_uart_driver_exit(); gb_uart_driver_exit();
gb_pwm_driver_exit();
greybus_deregister(&gb_gpbridge_driver); greybus_deregister(&gb_gpbridge_driver);
bus_unregister(&gpbridge_bus_type); bus_unregister(&gpbridge_bus_type);

View File

@ -66,9 +66,6 @@ void gb_##__driver##_exit(void) \
gb_gpbridge_deregister(&__driver); \ gb_gpbridge_deregister(&__driver); \
} }
extern int gb_pwm_driver_init(void);
extern void gb_pwm_driver_exit(void);
extern int gb_uart_driver_init(void); extern int gb_uart_driver_init(void);
extern void gb_uart_driver_exit(void); extern void gb_uart_driver_exit(void);

View File

@ -256,6 +256,7 @@ static const struct gpbridge_device_id gb_pwm_id_table[] = {
{ GPBRIDGE_PROTOCOL(GREYBUS_PROTOCOL_PWM) }, { GPBRIDGE_PROTOCOL(GREYBUS_PROTOCOL_PWM) },
{ }, { },
}; };
MODULE_DEVICE_TABLE(gpbridge, gb_pwm_id_table);
static struct gpbridge_driver pwm_driver = { static struct gpbridge_driver pwm_driver = {
.name = "pwm", .name = "pwm",
@ -263,4 +264,6 @@ static struct gpbridge_driver pwm_driver = {
.remove = gb_pwm_remove, .remove = gb_pwm_remove,
.id_table = gb_pwm_id_table, .id_table = gb_pwm_id_table,
}; };
gb_gpbridge_builtin_driver(pwm_driver);
module_gpbridge_driver(pwm_driver);
MODULE_LICENSE("GPL v2");