Lines 16-21
Link Here
|
16 |
#include <linux/lockdep.h> |
16 |
#include <linux/lockdep.h> |
17 |
#include <linux/module.h> |
17 |
#include <linux/module.h> |
18 |
#include <linux/pm.h> |
18 |
#include <linux/pm.h> |
|
|
19 |
#include <linux/pm_runtime.h> |
19 |
#include <linux/rmi.h> |
20 |
#include <linux/rmi.h> |
20 |
#include <linux/slab.h> |
21 |
#include <linux/slab.h> |
21 |
#include "rmi_driver.h" |
22 |
#include "rmi_driver.h" |
Lines 332-337
static int rmi_smb_probe(struct i2c_client *client,
Link Here
|
332 |
|
333 |
|
333 |
dev_info(&client->dev, "registering SMbus-connected sensor\n"); |
334 |
dev_info(&client->dev, "registering SMbus-connected sensor\n"); |
334 |
|
335 |
|
|
|
336 |
/* Force SMBus adapter on while RMI4 device is connected */ |
337 |
pm_runtime_get(&client->adapter->dev); |
338 |
|
335 |
error = rmi_register_transport_device(&rmi_smb->xport); |
339 |
error = rmi_register_transport_device(&rmi_smb->xport); |
336 |
if (error) { |
340 |
if (error) { |
337 |
dev_err(&client->dev, "failed to register sensor: %d\n", error); |
341 |
dev_err(&client->dev, "failed to register sensor: %d\n", error); |
Lines 346-351
static int rmi_smb_remove(struct i2c_client *client)
Link Here
|
346 |
struct rmi_smb_xport *rmi_smb = i2c_get_clientdata(client); |
350 |
struct rmi_smb_xport *rmi_smb = i2c_get_clientdata(client); |
347 |
|
351 |
|
348 |
rmi_unregister_transport_device(&rmi_smb->xport); |
352 |
rmi_unregister_transport_device(&rmi_smb->xport); |
|
|
353 |
pm_runtime_put(&client->adapter->dev); |
349 |
|
354 |
|
350 |
return 0; |
355 |
return 0; |
351 |
} |
356 |
} |