On 12/12/23 06:30, Charles Keepax wrote:
> On Thu, Dec 07, 2023 at 04:29:34PM -0600, Pierre-Louis Bossart wrote:
>> DP0 (Data Port 0) is very similar to regular data ports, with minor
>> tweaks we can reuse the same code.
>>
>> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@xxxxxxxxxxxxxxx>
>> ---
>> - dpn_prop = sdw_get_slave_dpn_prop(s_rt->slave,
>> - s_rt->direction,
>> - t_params->port_num);
>> - if (!dpn_prop)
>> - return -EINVAL;
>> + if (t_params->port_num) {
>> + struct sdw_dpn_prop *dpn_prop;
>> +
>> + dpn_prop = sdw_get_slave_dpn_prop(s_rt->slave,
>> + s_rt->direction,
>> + t_params->port_num);
>> + if (!dpn_prop)
>> + return -EINVAL;
>> +
>> + read_only_wordlength = dpn_prop->read_only_wordlength;
>> + port_type = dpn_prop->type;
>> + } else {
>> + read_only_wordlength = false;
>> + port_type = SDW_DPN_FULL;
>> + }
>
> Would it be nicer to just add a special case sdw_get_slave_dpn_prop
> to return dp0_prop and avoid all this special casing in the rest
> of the code?
There are multiple cases in the same function where we need to check for
DP0. We could move the read_only_wordlength and port_type to the
sdw_get_slave_dpn_prop() helper, but then we would spread the special
cases in multiple locations. It's not pretty either way.
[Index of Archives]
[Pulseaudio]
[Linux Audio Users]
[ALSA Devel]
[Fedora Desktop]
[Fedora SELinux]
[Big List of Linux Books]
[Yosemite News]
[KDE Users]