From: "Sunil V L" <sunilvl@ventanamicro.com>
To: Dhaval Sharma <dhaval@rivosinc.com>
Cc: devel@edk2.groups.io,
Andrei Warkentin <andrei.warkentin@intel.com>,
Daniel Schaefer <git@danielschaefer.me>
Subject: Re: [PATCH v1 1/2] MdePkg/BaseCacheMaintenanceLib: Enable RISCV CMO
Date: Mon, 27 Mar 2023 21:12:17 +0530 [thread overview]
Message-ID: <ZCG5WS/EyBtNSlBu@sunil-laptop> (raw)
In-Reply-To: <20230324154342.180062-2-dhaval@rivosinc.com>
Hi Dhaval,
Thank you for looking at CMO support!
General comments first:
1) Please have a cover letter patch and move some part of the commit
message to cover letter. Please CC all maintainers in the cover letter
also.
2) Please run BaseTools/Scripts/GetMaintainer.py and CC all maintainers.
3) Follow
https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Development-Process
Have you run CI tests?
On Fri, Mar 24, 2023 at 09:13:41PM +0530, Dhaval Sharma wrote:
> Adding code to support Cache Management Operations
> (CMO) defined by RV spec https://github.com/riscv/riscv-CMOs
> Notes:
> 1. CMO only supports block based Operations. Meaning complete
> cache flush/invd/clean Operations are not available
> 2. Current implementation uses ifence instructions but it
> maybe platform specific. Many platforms may not support cache
> Operations based on ifence.
fence.i?
IMO, it is better to add a new library such as BaseRiscV64CMOLib and
included conditionally in the DSC for the platforms which support CMO.
BaseCacheMaintenanceLib will continue to have default fence.i
implementation. Is there an issue with this?
> 3. For now adding CMO on top of ifence as it is not considered
> harmful.
> 4. This requires support for GCC12.2 onwards.
>
Yeah, this is another challenge like zifencei_zicsr which we could
workaround and support both older and newer tool chain. But for CMO,
I don't see any option but to support only GCC12.2+.
Thanks,
Sunil
next prev parent reply other threads:[~2023-03-27 15:42 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-24 15:43 [PATCH v1 0/2] WIP: Enable CMO support for RiscV64 Dhaval Sharma
2023-03-24 15:43 ` [PATCH v1 1/2] MdePkg/BaseCacheMaintenanceLib: Enable RISCV CMO Dhaval Sharma
2023-03-27 15:42 ` Sunil V L [this message]
2023-03-27 17:59 ` Dhaval Sharma
2023-03-28 0:52 ` Sunil V L
2023-03-24 15:43 ` [PATCH v1 2/2] OvmfPkg/RiscVVirt: Enable CMO support Dhaval Sharma
2023-03-27 15:44 ` Sunil V L
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZCG5WS/EyBtNSlBu@sunil-laptop \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox