On 20/09/2024 16:19, Abdellatif El Khlifi wrote: > Hi Krzysztof, > >>>>>>> + '#extsys-id': >>>>>> >>>>>> '#' is not correct for sure, that's not a cell specifier. >>>>>> >>>>>> But anyway, we do not accept in general instance IDs. >>>>> >>>>> I'm happy to replace the instance ID with another solution. >>>>> In our case the remoteproc instance does not have a base address >>>>> to use. So, we can't put remoteproc@address >>>>> >>>>> What do you recommend in this case please ? >>>> >>>> Waiting one month to respond is a great way to drop all context from my >>>> memory. The emails are not even available for me - gone from inbox. >>>> >>>> Bus addressing could note it. Or you have different devices, so >>>> different compatibles. Tricky to say, because you did not describe the >>>> hardware really and it's one month later... >>>> >>> >>> Sorry for waiting. I was in holidays. >>> >>> I'll add more documentation about the external system for more clarity [1]. >>> >>> Basically, Linux runs on the Cortex-A35. The External system is a >>> Cortex-M core. The Cortex-A35 can not access the memory of the Cortex-M. >>> It can only control Cortex-M core using the reset control and status >>> registers mapped >>> in the memory space of the Cortex-A35. >> >> That's pretty standard. >> >> It does not explain me why bus addressing or different compatible are >> not sufficient here. > > Using an instance ID was a design choice. > I'm happy to replace it with the use of compatible and match data (WIP). > > The match data will be pointing to a data structure containing the right > offsets > to be used with regmap APIs. > > syscon node is used to represent the Host Base System Control register area > [1] > where the external system reset registers are mapped (EXT_SYS*). > > The nodes will look like this: > > syscon@1a010000 { > compatible = "arm,sse710-host-base-sysctrl", "simple-mfd", "syscon"; > reg = <0x1a010000 0x1000>; > > #address-cells = <1>; > #size-cells = <1>; > > remoteproc@310 { > compatible = "arm,sse710-extsys0"; > reg = <0x310 4>;
Uh, why do you create device nodes for one word? This really suggests it is part of parent device and your split is artificial. Best regards, Krzysztof