}
 EXPORT_SYMBOL_GPL(si476x_core_is_powered_up);
 
-static int si476x_core_probe(struct i2c_client *client,
-                            const struct i2c_device_id *id)
+static int si476x_core_probe(struct i2c_client *client)
 {
+       const struct i2c_device_id *id = i2c_client_get_device_id(client);
        int rval;
        struct si476x_core          *core;
        struct si476x_platform_data *pdata;
        .driver         = {
                .name   = "si476x-core",
        },
-       .probe          = si476x_core_probe,
+       .probe_new      = si476x_core_probe,
        .remove         = si476x_core_remove,
        .id_table       = si476x_id,
 };