aboutsummaryrefslogtreecommitdiff
path: root/drivers/soundwire/bus.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/soundwire/bus.c')
-rw-r--r--drivers/soundwire/bus.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/drivers/soundwire/bus.c b/drivers/soundwire/bus.c
index fc53dbe57f85..a4bc1746289f 100644
--- a/drivers/soundwire/bus.c
+++ b/drivers/soundwire/bus.c
@@ -334,9 +334,11 @@ int sdw_nread(struct sdw_slave *slave, u32 addr, size_t count, u8 *val)
if (ret < 0)
return ret;
- ret = pm_runtime_get_sync(slave->bus->dev);
- if (ret < 0)
- return ret;
+ if (pm_runtime_enabled(slave->bus->dev)) {
+ ret = pm_runtime_get_sync(slave->bus->dev);
+ if (ret < 0)
+ return ret;
+ }
ret = sdw_transfer(slave->bus, &msg);
pm_runtime_put(slave->bus->dev);
@@ -362,9 +364,11 @@ int sdw_nwrite(struct sdw_slave *slave, u32 addr, size_t count, u8 *val)
if (ret < 0)
return ret;
- ret = pm_runtime_get_sync(slave->bus->dev);
- if (ret < 0)
- return ret;
+ if (pm_runtime_enabled(slave->bus->dev)) {
+ ret = pm_runtime_get_sync(slave->bus->dev);
+ if (ret < 0)
+ return ret;
+ }
ret = sdw_transfer(slave->bus, &msg);
pm_runtime_put(slave->bus->dev);
@@ -610,7 +614,7 @@ int sdw_configure_dpn_intr(struct sdw_slave *slave,
u32 addr;
int ret;
u8 val = 0;
-
+return 0; //HACK to not setup interrupts
addr = SDW_DPN_INTMASK(port);
/* Set/Clear port ready interrupt mask */
@@ -635,7 +639,7 @@ static int sdw_initialize_slave(struct sdw_slave *slave)
struct sdw_slave_prop *prop = &slave->prop;
int ret;
u8 val;
-
+return 0; //HACK to not setup interrupts
/*
* Set bus clash, parity and SCP implementation
* defined interrupt mask