[PATCH 3/3] RISC-V: Add arch functions to support hibernation/suspend-to-disk

JeeHeng Sia jeeheng.sia at starfivetech.com
Sun Feb 19 20:21:35 PST 2023


Hi,

This is the old series, could you review the latest series at: https://patchwork.kernel.org/project/linux-riscv/list/?series=716143 ?

> -----Original Message-----
> From: Pavel Machek <pavel at ucw.cz>
> Sent: Saturday, 18 February, 2023 10:01 PM
> To: JeeHeng Sia <jeeheng.sia at starfivetech.com>
> Cc: paul.walmsley at sifive.com; palmer at dabbelt.com; aou at eecs.berkeley.edu; linux-riscv at lists.infradead.org; linux-
> kernel at vger.kernel.org; Leyfoon Tan <leyfoon.tan at starfivetech.com>; Mason Huo <mason.huo at starfivetech.com>
> Subject: Re: [PATCH 3/3] RISC-V: Add arch functions to support hibernation/suspend-to-disk
> 
> Hi!
> 
> > @@ -21,6 +21,11 @@ struct suspend_context {
> >  #endif
> >  };
> >
> > +/* This parameter will be assigned to 0 during resume and will be used by
> > + * hibernation core for the subsequent resume sequence
> > + */
> > +extern int in_suspend;
> 
> "/*" should be on separate line. (This occurs multiple times.)
already resolved in v3 series.
> 
> > +ENTRY(core_restore_code)
> > +	/* switch to temp page table */
> > +	csrw satp, s1
> > +	sfence.vma
> > +	beqz	s4, done
> > +loop:
> > +	/* The below code will restore the hibernated image. */
> > +	ld	a1, HIBERN_PBE_ADDR(s4)
> > +	ld	a0, HIBERN_PBE_ORIG(s4)
> > +
> > +	lui     a4, 0x1
> > +	add     a4, a4, a0
> 
> Do you have enough registers to move a4 = 0x1 assignment before the
> loop:?
I am sorry but I don't understand the question. Could you elaborate please?
> 
> > +static int __init riscv_hibernate__init(void)
> > +{
> > +	hibernate_cpu_context = kcalloc(1, sizeof(struct suspend_context), GFP_KERNEL);
> > +
> 
> kzalloc?
sure, will change it.
> 
> > +	if (WARN_ON(!hibernate_cpu_context))
> > +		return -ENOMEM;
> > +
> > +	return 0;
> > +}
> > +
> > +early_initcall(riscv_hibernate__init);
> 
> Does this really need to be done early?
yes. To make sure it is initialized before next resume.
> 
> Best regards,
> 								Pavel
> --
> People of Russia, stop Putin before his war on Ukraine escalates.



More information about the linux-riscv mailing list