Re: [PATCH v6 25/27] ARM: dts: at91: sam9x7: add device tree for SoC

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

 



Hi Krzysztof,

On 28/08/24 5:19 pm, Krzysztof Kozlowski wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> On 28/08/2024 10:25, Varshini.Rajendran@xxxxxxxxxxxxx wrote:
>> On 27/08/24 6:18 pm, Krzysztof Kozlowski wrote:
>>> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>>>
>>> On 27/08/2024 11:50, Varshini.Rajendran@xxxxxxxxxxxxx wrote:
>>>> Hi Krzysztof,
>>>>
>>>> Apologies for the delay in response.
>>>>
>>>> On 31/07/24 2:00 pm, Krzysztof Kozlowski wrote:
>>>>> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>>>>>
>>>>> On 29/07/2024 09:09, Varshini Rajendran wrote:
>>>>>> Add device tree file for SAM9X7 SoC family.
>>>>>>
>>>>>> Co-developed-by: Nicolas Ferre <nicolas.ferre@xxxxxxxxxxxxx>
>>>>>> Signed-off-by: Nicolas Ferre <nicolas.ferre@xxxxxxxxxxxxx>
>>>>>> Signed-off-by: Varshini Rajendran <varshini.rajendran@xxxxxxxxxxxxx>
>>>>>
>>>>> ...
>>>>>
>>>>>> +
>>>>>> +             can1: can@f8004000 {
>>>>>> +                     compatible = "bosch,m_can";
>>>>>> +                     reg = <0xf8004000 0x100>, <0x300000 0xbc00>;
>>>>>> +                     reg-names = "m_can", "message_ram";
>>>>>> +                     interrupts = <30 IRQ_TYPE_LEVEL_HIGH 0>,
>>>>>> +                                  <69 IRQ_TYPE_LEVEL_HIGH 0>;
>>>>>> +                     interrupt-names = "int0", "int1";
>>>>>> +                     clocks = <&pmc PMC_TYPE_PERIPHERAL 30>, <&pmc PMC_TYPE_GCK 30>;
>>>>>> +                     clock-names = "hclk", "cclk";
>>>>>> +                     assigned-clocks = <&pmc PMC_TYPE_CORE PMC_UTMI>, <&pmc PMC_TYPE_GCK 30>;
>>>>>> +                     assigned-clock-rates = <480000000>, <40000000>;
>>>>>> +                     assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_UTMI>, <&pmc PMC_TYPE_CORE PMC_UTMI>;
>>>>>> +                     bosch,mram-cfg = <0x7800 0 0 64 0 0 32 32>;
>>>>>> +                     status = "disabled";
>>>>>> +             };
>>>>>> +
>>>>>> +             tcb: timer@f8008000 {
>>>>>> +                     compatible = "microchip,sam9x7-tcb","atmel,sama5d2-tcb", "simple-mfd", "syscon";
>>>>>
>>>>> Why this is simple-mfd without children?
>>>>
>>>> The tcb node will have each TC (Timer Counter) Block as a child when it
>>>> is configured to be used as either one of the following modes Timer or
>>>> Counter / Capture / PWM.
>>>
>>> And where are these children? What does it mean "will have", in context
>>> when? DTS is static, if you do not have here children then this is not a
>>> simple-mfd.
>>>
>> I understand your concern. But the thing is that, each tc block is
>> configured as a child and it can be configured in 3 different modes with
>> different compatibles. In the current dts (i.e., sam9x75_curiosity
>> board) we don't have a use case for the tcb, hence there are no child
>> nodes defined. But there are instances where it can be defined in the
>> dts, say for a custom board using sam9x7 SoC. In that case the
> 
> Where are these instances? Can you point me to DTS?
> 
>> simple-mfd usage is justified, if I am not wrong. If this justification
>> doesn't suffice, then declaring child nodes with one mode as default
> 
> If I understand correctly: some out of tree, non-upstream project wants
> this. Sorry, but out of tree does not matter. So it is not a correct
> justification.
> 
Not just out of tree projects, Even upstreamed DTS files have child 
nodes for this node in [1] and [2]. I guess the best way to sort this is 
to add similar child nodes in this dts as well. I will add them in the 
next version if that is acceptable. Please let me know.

[1] 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/microchip/at91-sama7g5ek.dts#:~:text=okay%22%3B%0A%7D%3B-,%26tcb0%20%7B,-timer0%3A%20timer

[2] 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/microchip/at91-sam9x60ek.dts#:~:text=%3B%0A%09%7D%3B%0A%7D%3B-,%26tcb0%20%7B,-timer0%3A%20timer

> With such argument you could claim that everything needs simple-mfd
> because some broken out-of-tree code adds there children.
> 
>> which can be overridden in the dts and kept disabled in the dtsi should
>> be the other plausible way. Please let me know your suggestions.
> 
> No clue, please post complete binding and complete DTS so we can review
> these.
> 
> Best regards,
> Krzysztof
> 

-- 
Thanks and Regards,
Varshini Rajendran.





[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