On 2/1/23 00:01, Mukunda,Vijendar wrote: > On 01/02/23 09:22, Pierre-Louis Bossart wrote: >> >> >>>>> In above case, two manager instances will be created. >>>>> When manager under SWC1 scope tries to add peripheral >>>>> device, In sdw_slave_add() API its failing because peripheral >>>>> device descriptor uses link id followed by 48bit encoded address. >>>>> In above scenarios, both the manager's link id is zero only. >>>> what fails exactly? The device_register() ? >>>> >>>> If yes, what the issue. the device name? >>> device_register() is failing because of duplication of >>> device name. >>>> I wonder if we need to use something like >>>> >>>> "name shall be sdw:bus_id:link:mfg:part:class" >>>> >>>> so as to uniquify the device name, if that was the problem. >>> Yes correct. >> can you check https://github.com/thesofproject/linux/pull/4165 and see >> if this works for you? I tested it on Intel platforms. > It's working fine on our platform. As mentioned earlier in this thread, > we can't go with two ACPI companion device approach due to > limitations on windows stack for current platform. Thanks for testing. So if you can't go with 2 ACPI companion devices, what does the 'Windows' DSDT look like and how would you identify that there are two controllers on the platform?