On 22/09/2026 23:02, Alex Elder wrote:
> On 9/21/26 4:46 PM, Alex Elder wrote:
>>> I also have doubts that this is needed - I see no updates to the misc
>>> binding, which would be referencing it. But then another point would be,
>>> that you do not need separate child node, which has no properties.
> 
> Krzysztof, I've done some additional work on this based on
> your feedback.
> 
> I think you are correct that there is no need to define
> this as a special syscon with its own compatible string.
> 
> Instead, I can simply define a simple syscon with a label:
> 
>          tc9564_config_syscon0: syscon@0 {
>                  compatible = "syscon";

I never proposed anything like that. I asked to drop simple-mfd.

>                  reg = <0x0 0x2000>;
>          };
> 
> And then have the devices that need to use it, refer to
> its label using a phandle:
> 
>          tc9564_clock0: clock@1004 {
>                  compatible = "toshiba,tc9564-clock";
>                  toshiba,config-syscon = <&tc9564_config_syscon0>;
>                  #clock-cells = <1>;
>                  #reset-cells = <1>;
>          };
> 
>          tc9564_emac0: ethernet@40000 {
>                  compatible = "toshiba,tc9564-xgmac";
>                  reg = <0x40000 0x8000>;
>                  toshiba,config-syscon = <&tc9564_config_syscon0 0x1070>;
>               . . .
>       };
> 
>          tc9564_emac1: ethernet@48000 {
>                  compatible = "toshiba,tc9564-xgmac";
>                  reg = <0x48000 0x8000>;
>                  toshiba,config-syscon = <&tc9564_config_syscon0 0x1074>;
>               . . .
>       };
> 
> That simplifies things a bit, and requires no devicetree binding.
> 
> If you think this is incorrect, please let me know, otherwise it
> is the direction I plan to go with the next version of this
> series.
> 

I think nothing behind PCI EP should be described in DT, because
everything is internal to the device and implied by compatible (or
vid/pid). We do describe internals of devices in DT usually for complex
devices (like some display blocks with multiple subblocks) or when they
are used outside of that device. That's why I asked how are all these
clocks and resets exposed to the host. If the syscon is used only by the
device itself, I don't quite get the benefits of describing it in DT.

Best regards,
Krzysztof

Reply via email to