Re: [PATCH v3 7/8] dt-bindings: mfd: Add img,boston-platform-regs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 21/06/2024 17:51, Jiaxun Yang wrote:
> 
> 
> 在2024年6月20日六月 上午7:40,Krzysztof Kozlowski写道:
> [...]
>>>
>>> Hi Krzysztof,
>>>
>>> I believe U-Boot's implementation is correct. As per simple-mfd binding:
>>>
>>> ```
>>> simple-mfd" - this signifies that the operating system should
>>>   consider all subnodes of the MFD device as separate devices akin to how
>>>   "simple-bus" indicates when to see subnodes as children for a simple
>>>   memory-mapped bus.
>>> ```
>>>
>>> This reads to me as "if you want sub nodes to be populated as devices
>>> you need this."
>>>
>>> In our case there are "clock" and "reset" node sub nodes which should be
>>> probed as regular device, so it's true for us.
>>
>> No, you already got comment from Rob.
>>
>> Your children depend on parent to provide IO address, so this is not
>> simple-mfd. Rule for simple-mfd is that children do not rely on parent
>> at all.
>>
> Hi Krzysztof,
> 
> Sorry but can I ask for clarification on "depend on parent to provide IO
> address", do you mind explaining it a little bit? Does it mean children
> should get regmap node from a phandle property, not the parent node? Or there
> should be a reg property for child node to tell register offset etc?
> 
> There are way too much usage that children "depends" on parents somehow
> in tree, so I want to confirm my understanding.


Your driver relies on parent IO address to be provided - what's more to
explain here? If parent does not provide syscon, does the child work?
No. Therefore it is not suited for simple-mfd.

> 
> For boston-platform-regs there are some other PHYs that I may add drivers
> for them in future, so I certainly want "simple-mfd" to be here 

Well, I want a new Ducati, but we don't always get what we want, right?

Best regards,
Krzysztof





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux