From: "Maciej Czajkowski" <maciej.czajkowski@intel.com>
To: devel@edk2.groups.io
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Subject: [edk2-devel][edk2-staging] DeviceSimPkg branch creation
Date: Mon, 13 Nov 2023 16:09:19 +0100 [thread overview]
Message-ID: <20231113150919.1470-1-maciej.czajkowski@intel.com> (raw)
Hello,
I would like to announce DeviceSimPkg branch creation in edk2-staging repository.
Branch will be used to develop DeviceSimPkg, a package for developing OS executable tests
for device focused code.
Branch owner: Maciej Czajkowski <maciej.czajkowski@intel.com>, GitHub ID: 81293748 (https://github.com/mczaj)
Signed-off-by: Maciej Czajkowski <maciej.czajkowski@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
---
Readme.md | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)
create mode 100644 Readme.md
diff --git a/Readme.md b/Readme.md
new file mode 100644
index 000000000000..96077d0a478c
--- /dev/null
+++ b/Readme.md
@@ -0,0 +1,37 @@
+# DeviceSimPkg
+
+## Introduction
+
+DeviceSimPkg is a package aimed at providing an environment to write OS-executable unit tests for code that interacts directly with devices.
+This code is referred to as driver code below although code under test doesn't have to follow UEFI driver model. \
+Branch owner: Maciej Czajkowski <<maciej.czajkowski@intel.com>>
+
+## How to use it
+### Using the code
+
+You can refer to UnitTest modules to see the usage details. In general you will need to link to package libraries (instead of the ones normally provided by MdePkg/MdeModulePkg) and initialize your device access. Details of initialization will vary based on which REGISTER_ACCESS_INTERFACE implementer library you will
+choose. Please refer to corresponding libraries Readmes for details.
+
+## General architecture
+
+On high-level package consists of:
+
+* REGISTER_ACCESS_INTERFACE - interface between device model and driver code
+* REGISTER_ACCESS_INTERFACE wrappers - libraries that wrap REGISTER_ACCESS_INTERFACE and present it as a standard UEFI library
+* REGISTER_ACCESS_INTERFACE implementers - libraries that implement REGISTER_ACCESS_INTERFACE interface
+
+## Wrapper libraries
+
+Currently package implements following wrappers:
+
+* IoLib in [RegisterAccessIoLib](DeviceSimPkg/Library/RegisterAccessIoLib/Readme.md)
+* PciSegmentLib in RegisterAccessPciSegmentLib
+* PCI_IO_PROTOCOL in RegisterAccessPciIoLib
+
+## REGISTER_ACCESS_INTERFACE implementations
+
+Currently only a single implementation is fully supported - FakeRegisterSpaceLib. Please see its Readme for more details on how to use it.
+
+## GMOCK support
+
+DeviceSim implements Gmock based mock object for the IoLib functions. Please see GmockIoLib [Readme](DeviceSimPkg/Library/MockIoLib//Readme.md) for details.
--
2.39.1.windows.1
---------------------------------------------------------------------
Intel Technology Poland sp. z o.o.
ul. Slowackiego 173 | 80-298 Gdansk | Sad Rejonowy Gdansk Polnoc | VII Wydzial Gospodarczy Krajowego Rejestru Sadowego - KRS 101882 | NIP 957-07-52-316 | Kapital zakladowy 200.000 PLN.
Spolka oswiadcza, ze posiada status duzego przedsiebiorcy w rozumieniu ustawy z dnia 8 marca 2013 r. o przeciwdzialaniu nadmiernym opoznieniom w transakcjach handlowych.
Ta wiadomosc wraz z zalacznikami jest przeznaczona dla okreslonego adresata i moze zawierac informacje poufne. W razie przypadkowego otrzymania tej wiadomosci, prosimy o powiadomienie nadawcy oraz trwale jej usuniecie; jakiekolwiek przegladanie lub rozpowszechnianie jest zabronione.
This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). If you are not the intended recipient, please contact the sender and delete all copies; any review or distribution by others is strictly prohibited.
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#111159): https://edk2.groups.io/g/devel/message/111159
Mute This Topic: https://groups.io/mt/102563078/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
next reply other threads:[~2023-11-13 15:09 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-13 15:09 Maciej Czajkowski [this message]
2023-11-28 19:43 ` [edk2-devel][edk2-staging] DeviceSimPkg branch creation Michael D Kinney
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=20231113150919.1470-1-maciej.czajkowski@intel.com \
--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