[PATCH v6 3/3] riscv: dts: sophgo: add rtc dt node for CV1800

Jingbao Qiu qiujingbao.dlmu at gmail.com
Tue Jan 16 18:54:08 PST 2024


On Wed, Jan 17, 2024 at 12:53 AM Alexandre Belloni
<alexandre.belloni at bootlin.com> wrote:
>
> On 17/01/2024 00:29:28+0800, Jingbao Qiu wrote:
> > On Wed, Jan 17, 2024 at 12:03 AM Krzysztof Kozlowski
> > <krzysztof.kozlowski at linaro.org> wrote:
> > >
> > > On 16/01/2024 16:51, Jingbao Qiu wrote:
> > > >>> CV1800 is a RISCV based SOC that includes an RTC module. The RTC
> > > >>> module has an OSC oscillator
> > > >>
> > > >>
> > > >> I am not going to read pages of description. Please write concise replies.
> > > >
> > > > Thanks, What I mean is that this hardware includes two functions, RTC
> > > > and POR. How should I describe their relationship?
> > >
> > > Your POR does not need to take any resources, so no need to describe any
> > > relationship.
> > >
> > > ...
> > >
> > > >>> Your suggestion is, firstly, the por submodule does not have any
> > > >>> resources, so it should be deleted.
> > > >>
> > > >> So where did you delete it? I still see it in this patch.
> > > >
> > > > Should I completely delete him? How can a por driver obtain device information?
> > >
> > > Delete completely.
> > >
> > > Device information? What is this? We already agreed you don't have any
> > > resources for POR.
> > >
> > > ....
> > >
> > > >> Device is only one thing, not two.
> > > >>
> > > >>>                     reg = <0x5025000 0x2000>;
> > > >>>                     interrupts = <17 IRQ_TYPE_LEVEL_HIGH>;
> > > >>>                     clocks = <&osc>;
> > > >>> };
> > > >>> However, in reality, the POR submodule does not use IRQ and CLK.
> > > >>> Please do not hesitate to teach. Thanks.
> > > >>
> > > >> I expect one device node. How many drivers you have does not matter: you
> > > >> can instantiate 100 Linux devices in 100 Linux device drivers.
> > > >
> > > > I understand what you mean. A device node corresponds to multiple drivers.
> > > > Should I completely delete the POR device tree node and add it when
> > > > submitting the POR driver?
> > >
> > > ? I wrote it in previous messages and twice in this thread. Completely
> > > delete. You do not add it back! Because if you ever intended to add it
> > > back, it should be added since beginning. I don't understand what
> > > submitting later would solve.
> > >
> > > > If that's the case, how can I explain that the rtc device tree node
> > > > uses the syscon tag?
> > > > How can I describe a POR device in DTS? POR is a submodule of RTC, and
> > > > it also has corresponding drivers.
> > >
> > > I said, there is no need for POR in DTS, because you have nothing there.
> > > Why do you insist on putting it on DTS?
> > >
> > > > It's just that his resources are only shared with RTC's Reg.
> > >
> > > What resources? Reg? That's not a separate resource.
> >
> > I'm very sorry about this.
> > But I found a binding file that only contains Reg and Compatible.
> >
> > rtc at 80920000 {
> > compatible = "cirrus,ep9301-rtc";
> > reg = <0x80920000 0x100>;
> > };
> >
> > Link: Documentation/devicetree/bindings/rtc/cirrus,ep9301-rtc.yaml
> >
> > >
> > > To summarize: Drop POR from DTS and never bring it back, unless you come
> > > with some different arguments, which you did not say already.
> > >
> >
> > You are right, if there is no por device tree node, how can the por
> > driver obtain the Reg?
>
> I guess the question is why don't you register everything from the RTC
> driver?

Thanks, POR provides power off and restart functions as a child node of RTC.
So, I think it should be placed in the power/reset directory.

Best regards,
Jingbao Qiu



More information about the linux-riscv mailing list