> +static int i2c_mux_trylock_bus(struct i2c_adapter *adapter, int flags)
> +{
> +     struct i2c_mux_priv *priv = adapter->algo_data;
> +     struct i2c_adapter *parent = priv->muxc->parent;
> +
> +     if (!rt_mutex_trylock(&parent->mux_lock))
> +             return 0;
> +     if (!(flags & I2C_LOCK_ADAPTER))
> +             return 1;
> +     if (parent->trylock_bus(parent, flags))
> +             return 1;
> +     rt_mutex_unlock(&parent->mux_lock);
> +     return 0;
> +}

This function needs a few short comments why we can leave in this or
that state. Not everyone knows the exit values of trylock by heart and
then it can look a little confusing.

>  static int i2c_parent_trylock_bus(struct i2c_adapter *adapter, int flags)
> @@ -111,7 +189,12 @@ static int i2c_parent_trylock_bus(struct i2c_adapter 
> *adapter, int flags)
>       struct i2c_mux_priv *priv = adapter->algo_data;
>       struct i2c_adapter *parent = priv->muxc->parent;
>  
> -     return parent->trylock_bus(parent, flags);
> +     if (!rt_mutex_trylock(&parent->mux_lock))
> +             return 0;
> +     if (parent->trylock_bus(parent, flags))
> +             return 1;
> +     rt_mutex_unlock(&parent->mux_lock);
> +     return 0;
>  }

Same comment as i2c_mux_trylock_bus.

>  struct i2c_mux_core *i2c_mux_alloc(struct i2c_adapter *parent,
>                                  struct device *dev, int max_adapters,
> @@ -140,6 +250,8 @@ struct i2c_mux_core *i2c_mux_alloc(struct i2c_adapter 
> *parent,
>  
>       muxc->parent = parent;
>       muxc->dev = dev;
> +     if (flags & I2C_MUX_LOCKED)
> +             muxc->mux_locked = 1;

s/1/true/;

--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to