[alsa-devel] [PATCH v4 05/13] soundwire: Add helpers for ports operations
Pierre-Louis Bossart
pierre-louis.bossart at linux.intel.com
Mon Apr 23 15:27:46 CEST 2018
On 4/21/18 10:53 AM, Vinod Koul wrote:
> On Sat, Apr 21, 2018 at 06:47:24AM -0700, Pierre-Louis Bossart wrote:
>>
>>> +static int sdw_enable_disable_slave_ports(struct sdw_bus *bus,
>>> + struct sdw_slave_runtime *s_rt,
>>> + struct sdw_port_runtime *p_rt, bool en)
>>> +{
>>> + struct sdw_transport_params *t_params = &p_rt->transport_params;
>>> + u32 addr;
>>> + int ret;
>>> +
>>> + if (bus->params.next_bank)
>>> + addr = SDW_DPN_CHANNELEN_B1(p_rt->num);
>>> + else
>>> + addr = SDW_DPN_CHANNELEN_B0(p_rt->num);
>>> +
>>> + /*
>>> + * Since bus doesn't support sharing a port across two streams,
>>> + * it is safe to reset this register
>>> + */
>>> + if (en)
>>> + ret = sdw_update(s_rt->slave, addr, 0xFF, p_rt->ch_mask);
>>> + else
>>> + ret = sdw_update(s_rt->slave, addr, 0xFF, 0x0);
>>> +
>>> + if (ret < 0)
>>> + dev_err(&s_rt->slave->dev,
>>> + "Slave chn_en reg write failed:%d port:%d",
>>> + ret, t_params->port_num);
>>> +
>>> + return ret;
>>> +}
>>
>> Add a clarification that this routine only sets the enable/disable bits in
>> the relevant bank, the actual enable/disable is done with a bank switch.
>
> Isn't that something spec tells the reader? this is a SDW concept that we
> program bank and then switch to have the effect, so why would i add comment
> for that?
To make sure people understand your code and follow the recommendation
from the spec. It's legal to write directly in enable bits but it's not
recommended at all. A standard spec is always interpreted in different
ways, adding a comment helps.
More information about the Alsa-devel
mailing list