|
@@ -144,7 +144,7 @@ static void i2c_mux_lock_bus(struct i2c_adapter *adapter, unsigned int flags)
|
|
|
struct i2c_mux_priv *priv = adapter->algo_data;
|
|
|
struct i2c_adapter *parent = priv->muxc->parent;
|
|
|
|
|
|
- rt_mutex_lock(&parent->mux_lock);
|
|
|
+ rt_mutex_lock_nested(&parent->mux_lock, i2c_adapter_depth(adapter));
|
|
|
if (!(flags & I2C_LOCK_ROOT_ADAPTER))
|
|
|
return;
|
|
|
i2c_lock_bus(parent, flags);
|
|
@@ -181,7 +181,7 @@ static void i2c_parent_lock_bus(struct i2c_adapter *adapter,
|
|
|
struct i2c_mux_priv *priv = adapter->algo_data;
|
|
|
struct i2c_adapter *parent = priv->muxc->parent;
|
|
|
|
|
|
- rt_mutex_lock(&parent->mux_lock);
|
|
|
+ rt_mutex_lock_nested(&parent->mux_lock, i2c_adapter_depth(adapter));
|
|
|
i2c_lock_bus(parent, flags);
|
|
|
}
|
|
|
|