[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Y/DaH0vjMsln4Ghr@duo.ucw.cz>
Date: Sat, 18 Feb 2023 15:01:03 +0100
From: Pavel Machek <pavel@....cz>
To: Sia Jee Heng <jeeheng.sia@...rfivetech.com>
Cc: paul.walmsley@...ive.com, palmer@...belt.com,
aou@...s.berkeley.edu, linux-riscv@...ts.infradead.org,
linux-kernel@...r.kernel.org, leyfoon.tan@...rfivetech.com,
mason.huo@...rfivetech.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.)
> +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:?
> +static int __init riscv_hibernate__init(void)
> +{
> + hibernate_cpu_context = kcalloc(1, sizeof(struct suspend_context), GFP_KERNEL);
> +
kzalloc?
> + if (WARN_ON(!hibernate_cpu_context))
> + return -ENOMEM;
> +
> + return 0;
> +}
> +
> +early_initcall(riscv_hibernate__init);
Does this really need to be done early?
Best regards,
Pavel
--
People of Russia, stop Putin before his war on Ukraine escalates.
Download attachment "signature.asc" of type "application/pgp-signature" (196 bytes)
Powered by blists - more mailing lists