[PATCH v4 4/5] rockchip: Separate the reset cause from display cpuinfo
Jagan Teki
jagan at amarulasolutions.com
Mon Jul 13 15:57:22 EDT 2020
Hi Kever,
On Sun, Jun 28, 2020 at 8:17 AM Kever Yang <kever.yang at rock-chips.com> wrote:
>
> HI Jagan,
>
> On 2020/6/18 下午11:39, Jagan Teki wrote:
> > reset cause is a generic functionality based on the soc
> > cru registers in rockchip. This can be used for printing
> > the cause of reset in cpuinfo or some other place where
> > reset cause is needed.
> >
> > Other than cpuinfo, reset cause can also be using during
> > bootcount for checking the specific reset cause and glow
> > the led based on the reset cause.
> >
> > So, let's separate the reset cause code from cpuinfo, and
> > add a check to build it for rk3399, rk3288 since these two
> > soc are supporting reset cause as of now.
> >
> > Signed-off-by: Jagan Teki <jagan at amarulasolutions.com>
> > Tested-by: Suniel Mahesh <sunil at amarulasolutions.com>
> > ---
> > Changes for v4:
> > - none
> >
> > arch/arm/include/asm/arch-rockchip/cru.h | 2 ++
> > arch/arm/mach-rockchip/Makefile | 5 ++++-
> > arch/arm/mach-rockchip/cpu-info.c | 20 ++++++++++++--------
> > 3 files changed, 18 insertions(+), 9 deletions(-)
> >
> > diff --git a/arch/arm/include/asm/arch-rockchip/cru.h b/arch/arm/include/asm/arch-rockchip/cru.h
> > index 5eb17f9d55..317eb61049 100644
> > --- a/arch/arm/include/asm/arch-rockchip/cru.h
> > +++ b/arch/arm/include/asm/arch-rockchip/cru.h
> > @@ -31,4 +31,6 @@ enum {
> >
> > #define MHz 1000000
> >
> > +char *get_reset_cause(void);
>
> Since you add a environment, you should use that instead of export
> get_reset_cause().
Yes we can read reset_reason env in SPL but there is a fundamental
issue with this, say the previous reset cause is RST so the env set to
RST. For next power-on reset the reset_reason still shows RST since it
was updated previously but the actual cause of the reset is POR.
Jagan.
More information about the Linux-rockchip
mailing list