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. 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