Forum Discussion
Altera_Forum
Honored Contributor
12 years agoHi,
Maybe you need the function 'i2c_put_adapter' like
static int __init i2c_gpio_bus_init(void)
{
int ret;
struct i2c_adapter *bus;
struct i2c_client *rtc;
ret = platform_device_register(&i2c_gpio_bus_rtc);
if (ret)
printk(KERN_ERR "i2c_bus_driver: Error when registering: %d\n",
ret);
/* Populate bus */
bus = i2c_get_adapter(0);
rtc = i2c_new_device(bus, i2c_gpio_bus_devices);
i2c_put_adapter(bus); // <--- here
if (rtc == NULL)
printk(KERN_ERR "i2c_bus_driver: no device added to %s bus\n",
bus->name);
return ret;
}
Kazu