public inbox for linux-i2c@vger.kernel.org
 help / color / mirror / Atom feed
* Moving to new driver model: probe never called
@ 2009-05-01 15:56 Shane Dixon
  2009-05-01 17:51 ` Jean Delvare
  0 siblings, 1 reply; 4+ messages in thread
From: Shane Dixon @ 2009-05-01 15:56 UTC (permalink / raw)
  To: linux-i2c-u79uwXL29TY76Z2rM5mHXA

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-AIFe0yeh4nAAvxtiuMwx3w@public.gmane.org

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2009-05-04 16:10 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-05-01 15:56 Moving to new driver model: probe never called Shane Dixon
2009-05-01 17:51 ` Jean Delvare
     [not found]   ` <20090501195146.4da8edf5-ig7AzVSIIG7kN2dkZ6Wm7A@public.gmane.org>
2009-05-01 19:14     ` Shane Dixon
2009-05-04 16:10       ` Jean Delvare

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox