Moving to new driver model: probe never called

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I'm trying to port a working driver from the old device driver model to
the new.  I have a printk in the first line of my probe function, which
never gets printed after doing a modprobe.  Hooking up a scope shows
that nothing is sent at all to the device.  Below is the relevant
snippets of code:

#define DEVICE_NAME "atpm"

static struct i2c_device_id atpm_idtable[] = {
  { DEVICE_NAME, 0 },
  { }
};
MODULE_DEVICE_TABLE(i2c, atpm_idtable);

static struct i2c_driver atpm_driver =
{
    .driver = {
      .name         = DEVICE_NAME,
      .owner        = THIS_MODULE,
    },
    .probe          = atpm_probe,
    .remove         = __devexit_p(atpm_remove),
    .id_table       = atpm_idtable,
    .detect         = atpm_detect,
    /* .address_data   = &addr_data */
};

static int __init atpm_init(void)
{
  printk(DEVICE_NAME ": adding i2c driver\n");
  return i2c_add_driver(&atpm_driver);
}

static void __exit atpm_exit(void)
{
  i2c_del_driver(&atpm_driver);
  printk(DEVICE_NAME ": deleting i2c driver\n");
}

module_init(atpm_init);
module_exit(atpm_exit);

Any help would be appreciated.
-- 
Shane Dixon
Linux Engineer
Atmel Corporation
E-mail: shane.dixon@xxxxxxxxx

--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux GPIO]     [Linux SPI]     [Linux Hardward Monitoring]     [LM Sensors]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux