[PATCH] soundwire: bus: add enumerated slave to device list
Srinivas Kandagatla
srinivas.kandagatla at linaro.org
Wed Sep 9 17:54:22 CEST 2020
On 09/09/2020 15:39, Pierre-Louis Bossart wrote:
>
>>>> Currently slave devices are only added either from device tree or acpi
>>>> entries. However lets say, there is wrong or no entry of a slave device
>>>> in DT that is enumerated, then there is no way for user to know all
>>>> the enumerated devices on the bus.
>>>
>>> Sorry Srinivas, I don't understand your point.
>>>
>>> The sysfs entries will include all devices that are described in
>>> platform firmware (be it DT or ACPI).
>>
>> yes that is true, but it will not include all the enumerated devices
>> on the bus!
>>
>> In my case on a new board I was trying to figure out what devices are
>> on the bus even before even adding any device tree entries!
>
> We've seen this before but dynamic debug provides all the information
> you need. see e.g. the logs from
> https://sof-ci.01.org/linuxpr/PR2425/build4447/devicetest/
>
> jf-cml-rvp-sdw-1 kernel: [ 289.751974] soundwire sdw-master-0: Slave
> attached, programming device number
> jf-cml-rvp-sdw-1 kernel: [ 289.752121] soundwire sdw-master-0: SDW
> Slave Addr: 10025d070000 <<< HERE
Yes, I have noticed this too! This will be printed for every call to
sdw_extract_slave_id()!
...
>
> Now I get your point but
> a) you already have a dynamic debug trace to list all devices
> b) adding 'undeclared' devices would make things quite murky and is only
> half of the solution. We already struggle because we already have
> 'ghost' devices in sysfs that are not physically present, and no way to
> differentiate between the two. If we did add those entries, then we'd
> need two new sysfs attributes such as
> 'declared' and 'enumerated'.
I totally agree with you on dealing with the undeclared devices, which
is unnecessary mess!
May be we could make the enumerated devices discovery bit more verbose!
--srini
More information about the Alsa-devel
mailing list