greybus: i2c : Create separate module
Create separate module for i2c 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:
Родитель
7c0925eb57
Коммит
d6046b44a5
|
@ -18,7 +18,6 @@ gb-phy-y := gpbridge.o \
|
||||||
sdio.o \
|
sdio.o \
|
||||||
uart.o \
|
uart.o \
|
||||||
pwm.o \
|
pwm.o \
|
||||||
i2c.o \
|
|
||||||
spi.o \
|
spi.o \
|
||||||
usb.o
|
usb.o
|
||||||
|
|
||||||
|
@ -40,6 +39,7 @@ 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-gpio-y := gpio.o
|
gb-gpio-y := gpio.o
|
||||||
|
gb-i2c-y := i2c.o
|
||||||
|
|
||||||
obj-m += greybus.o
|
obj-m += greybus.o
|
||||||
obj-m += gb-phy.o
|
obj-m += gb-phy.o
|
||||||
|
@ -63,6 +63,7 @@ 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-gpio.o
|
obj-m += gb-gpio.o
|
||||||
|
obj-m += gb-i2c.o
|
||||||
|
|
||||||
KERNELVER ?= $(shell uname -r)
|
KERNELVER ?= $(shell uname -r)
|
||||||
KERNELDIR ?= /lib/modules/$(KERNELVER)/build
|
KERNELDIR ?= /lib/modules/$(KERNELVER)/build
|
||||||
|
|
|
@ -333,10 +333,6 @@ static int __init gpbridge_init(void)
|
||||||
pr_err("error initializing usb driver\n");
|
pr_err("error initializing usb driver\n");
|
||||||
goto error_usb;
|
goto error_usb;
|
||||||
}
|
}
|
||||||
if (gb_i2c_driver_init()) {
|
|
||||||
pr_err("error initializing i2c driver\n");
|
|
||||||
goto error_i2c;
|
|
||||||
}
|
|
||||||
if (gb_spi_driver_init()) {
|
if (gb_spi_driver_init()) {
|
||||||
pr_err("error initializing spi driver\n");
|
pr_err("error initializing spi driver\n");
|
||||||
goto error_spi;
|
goto error_spi;
|
||||||
|
@ -345,8 +341,6 @@ static int __init gpbridge_init(void)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
error_spi:
|
error_spi:
|
||||||
gb_i2c_driver_exit();
|
|
||||||
error_i2c:
|
|
||||||
gb_usb_driver_exit();
|
gb_usb_driver_exit();
|
||||||
error_usb:
|
error_usb:
|
||||||
gb_sdio_driver_exit();
|
gb_sdio_driver_exit();
|
||||||
|
@ -366,7 +360,6 @@ module_init(gpbridge_init);
|
||||||
static void __exit gpbridge_exit(void)
|
static void __exit gpbridge_exit(void)
|
||||||
{
|
{
|
||||||
gb_spi_driver_exit();
|
gb_spi_driver_exit();
|
||||||
gb_i2c_driver_exit();
|
|
||||||
gb_usb_driver_exit();
|
gb_usb_driver_exit();
|
||||||
gb_sdio_driver_exit();
|
gb_sdio_driver_exit();
|
||||||
gb_uart_driver_exit();
|
gb_uart_driver_exit();
|
||||||
|
|
|
@ -78,9 +78,6 @@ extern void gb_sdio_driver_exit(void);
|
||||||
extern int gb_usb_driver_init(void);
|
extern int gb_usb_driver_init(void);
|
||||||
extern void gb_usb_driver_exit(void);
|
extern void gb_usb_driver_exit(void);
|
||||||
|
|
||||||
extern int gb_i2c_driver_init(void);
|
|
||||||
extern void gb_i2c_driver_exit(void);
|
|
||||||
|
|
||||||
extern int gb_spi_driver_init(void);
|
extern int gb_spi_driver_init(void);
|
||||||
extern void gb_spi_driver_exit(void);
|
extern void gb_spi_driver_exit(void);
|
||||||
|
|
||||||
|
|
|
@ -321,6 +321,7 @@ static const struct gpbridge_device_id gb_i2c_id_table[] = {
|
||||||
{ GPBRIDGE_PROTOCOL(GREYBUS_PROTOCOL_I2C) },
|
{ GPBRIDGE_PROTOCOL(GREYBUS_PROTOCOL_I2C) },
|
||||||
{ },
|
{ },
|
||||||
};
|
};
|
||||||
|
MODULE_DEVICE_TABLE(gpbridge, gb_i2c_id_table);
|
||||||
|
|
||||||
static struct gpbridge_driver i2c_driver = {
|
static struct gpbridge_driver i2c_driver = {
|
||||||
.name = "i2c",
|
.name = "i2c",
|
||||||
|
@ -328,4 +329,6 @@ static struct gpbridge_driver i2c_driver = {
|
||||||
.remove = gb_i2c_remove,
|
.remove = gb_i2c_remove,
|
||||||
.id_table = gb_i2c_id_table,
|
.id_table = gb_i2c_id_table,
|
||||||
};
|
};
|
||||||
gb_gpbridge_builtin_driver(i2c_driver);
|
|
||||||
|
module_gpbridge_driver(i2c_driver);
|
||||||
|
MODULE_LICENSE("GPL v2");
|
||||||
|
|
Загрузка…
Ссылка в новой задаче