Fixed windows line endings, improved tip formatting, additional grammar
and content simplification edits.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
The sphinx-tabs extension let's us create a document that can
dynamically display alternate material based on clicking a tab, as used
in the Zephyr getting started guide:
https://docs.zephyrproject.org/latest/getting_started/index.html
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Update the doc writing guidelines to include some new capabilities
(multi-column display, numbered instruction steps) and add more
information about writing tables.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
ACRN assumes certain state for the PCI devices w.r.t. resources assigned to them
before the platform BIOS hands control over to itself.
When the same BIOS is used with native OS boot, there should not be a need for
native kernel to re-program device BARs or bridge windows for bridge devices.
Signed-off-by: Sainath Grandhi <sainath.grandhi@intel.com>
Stray non-ASCII characters can creep in when pasting from Word or Google
Docs, particularly for "smart" single and double quotes and non-breaking
spaces. Change these to their ASCII equivalents. Also fixed some very
long lines of text to wrap at 80-ish characters.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Using a root-level /404.html as a redirect to the /latest/404.html
causes the URL shown in the browser to change so you can't see what the
error-causing URL was. Instead of a redirect, copy the /latest/404.html
generated by Sphinx to /404.html and edited with a <base> tag that
specifies a base URL for all relative URLs on a page.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Developers using google search can accidentally find older versions of
documents and lead to confusion. While we do maintain previous release
documentation on the site, we should have a preference for the latest
documentation when using external search engines. (Note the on-site
search always returns version-specific results.)
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Fix display of 404 errors on mobile phones. Also added some additional
wording for reporting errors. (Last change, I hope :)
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Add styles for multi-column display, and for auto-numbered instruction
steps used in some other projects.
Also updating the used page width to 1100px following experience
improvements noted on other sites. Pages are hard to read when
displayed full-screen on really wide monitors.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Some additional tweaks to the publish script, image, and root-level
redirect to fix a redirect recursion problem.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Add a site-wide custom error page for broken references within the site.
Besides giving a better user experience, it's also easier to track
broken links to the site using google analytics (looking for hits to the
404.html page and noticing the referrer.
Note we only "publish" the custom 404.html when publishing the latest
documents (not for released versions) so we always get the latest
left-navigation menu when a 404 error occurs.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Adding a big box for the glossary disturbed the home page layout and is
overkill for this one document. Adding the glossary to the left
navigation menu is sufficient.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
- Update quick setup script to support whl board.
- Change board to WHL NUC.
- Change the Service VM disk to NVMe.
- Update CL version to 32680 and ACRN tags info.
- Update CL and acrn tag versions for waag user vm tutorial.
Signed-off-by: lirui34 <ruix.li@intel.com>
One known issue :acrn-issue:`4560` during build ACRN HV.
Please refer to next section to get Docker Image from Docker Hub.
Signed-off-by: fangfang.shen <fangfang.shen@intel.com>
This patch updates CAT documentation as well as adds
documentation support for newly added MBA feature.
Signed-off-by: Vijay Dhanraj <vijay.dhanraj@intel.com>
Introduce Split Device Model feature for ACRN. Now we only implement pass through
PCI(e) device of it.
Tracked-On: #4371
Signed-off-by: Li Fei1 <fei1.li@intel.com>
This is a workaround for the issue in efi-stub: If the EFI option is loaded to a memory range which is not all zero filled,
it's possible the garbage string appended to bootloader name string.
Which could make system can't boot.
Add an extra space to the EFI option to make sure space could be used to detect the end of bootloader name string.
Once the fixing patch is merged, we don't need this extra space.
But to make old ACRN work, we'd like to keep the space here.
Signed-off-by: fuzhongl <fuzhong.liu@intel.com>
Reviewed-by: Yin Fengwei <fengwei.yin@intel.com>
Delete Redhad virtio drive, only keep Oracle as reference.
Delete "inject driver into ISO" part, and update to the latest workable
method.
In a word, QA just need maintain one latest workable method in GSG for creating WaaG image.
Signed-off-by: ffshen <fangfang.shen@intel.com>
Fix links in documentation that have moved (e.g.,
clearlinux.org/documentation moved to docs.01.org/clearlinux/latest).
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Add ACRN Open Source Roadmap 2020 link to Intro/What is ACRN page
Add ACRN blog link to ACRN Intro page (under Roadmap)
Move ACRN Shell Commands to 'Tools' under Advanced Guides page
Signed-off-by: Deb Taylor <deb.taylor@intel.com>
One argument is missing for the function ptirq_alloc_entry.
This patch fixes the doc generation error.
Tracked-On: #3882
Signed-off-by: Binbin Wu <binbin.wu@intel.com>
Fixed misspellings and rst formatting issues.
Added ptdev.h to the list of include file for doxygen
Tracked-On: #3882
Signed-off-by: Binbin Wu <binbin.wu@intel.com>
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Now we split passthrough PCI device from DM to HV, we could remove all the passthrough
PCI device unused code.
Tracked-On: #4371
Signed-off-by: Li Fei1 <fei1.li@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
Update the "Using Ubuntu as the Service OS" tutorial to tweak the instructions
pertaining to the Grub bootloader configuration. Specifically, update to reflect
the content of '/etc/default/grub' in Ubuntu 18.04 and also make loading the
Service OS kernel the default.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Update the Kata and ACRN tutorial based on the latest SW components. Many
previous steps are no longer required and have been removed.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Project ACRN is targetting to keep the hypervisor's total number of lines of
code (LOC) below 40K. Update the "Build ACRN from Source" document to accurately
reflect that.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Update the "Using SDC Mode on the NUC" tutorial to use ACRN v1.5. The Clear
Linux used in this update is 32080 which is also the first release that includes
a Service VM (linux-iot-lts2018-sos) kernel that supports MACVLAN and MACVTAP,
both of which are need to run Kata Containers on ACRN.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Fix the name of the Docker Container image that is used to build the kernel
for an RTVM (Preempt-RT kernel) when that image was built by the user
him/herself.
Tracked-On: #4322
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
* Add more details about Kata Containers and ACRN in the introduction
* Adjust and correct some of the instructions
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
- commit 69152647 ("hv: Use virtual APIC IDs for Pre-launched VMs")
enables virtual APIC IDs for pre-launched VMs thus xapic_phys is no
longer needed to force guest xAPIC to work in physical destination mode.
- HVC is not available in logical partition mode and "console=hvc0" should
be removed from guest Linux bootargs.
Tracked-On: #3854
Signed-off-by: Zide Chen <zide.chen@intel.com>
Acked-by: Victor Sun <victor.sun@intel.com>
Add a little information (at least pointers) as to how one can change the VM
(Pre-launched, Service or User) boot options.
Tracked-On: #3758
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Update guidance to build ACRN from source,
as debug feature is disabled by default in Makefile.
'RELEASE' shall be 0 if debug feature is required.
Tracked-On: #4222
Signed-off-by: Yonghua Huang <yonghua.huang@intel.com>
Since commit 9e9e1f61, a new build dependency on the NUMA library has been
introduced. We therefore need to add the `devpkg-numactl` bundle to our
Dockerfile used to build the Clear Linux "ACRN builder" container image.
Tracked-On: #4175
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
"9e9e1f61 acrntrace: Add opt to specify the cpus where we should capture the data"
uses APIs of libnuma. So this patch adds dependency of libnuma in building-from-source.rst.
libnuma functions have been included in os-core-dev bundle of clearlinux.
Tracked-On: #4175
Signed-off-by: Kaige Fu <kaige.fu@intel.com>
ptirq_msix_remap doesn't do the real remap, that's the vmsi_remap and vmsix_remap_entry
does. ptirq_msix_remap only did the preparation.
Tracked-On: #3475
Signed-off-by: Li Fei1 <fei1.li@intel.com>
ACRN does not support multiple PCI segments in its current form.
This patch adds support for mutliple PCI segments as a limitation
for ACRN in reference docs.
Tracked-On: #4134
Signed-off-by: Sainath Grandhi <sainath.grandhi@intel.com>
Reviewed-by: Eddie Dong <eddie.dong@intel.com>
Reviewed-by: Jason Chen CJ <jason.cj.chen@intel.com>
1. Update acrn.efi name in acrn ootb scripts
2. Add licenses to acrn ootb scripts
3. Add format U disk step
4. Add execute permission to ootb script
5. Fix wrong img name
6. update clearlinux version to 31600
Signed-off-by: Lei, Lu <leix.lu@intel.com>
We've been keeping the doc version choice list trimmed as new doc
version releases are made, but the v1.0 version should remain. (Note
that the documents for all previously published versions are still
available on the server, but they were included in the menu choice).
This PR puts the 1.0 choice back in.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Mitigation for this vulnerability is applied in 1.4 release, update
related notes in adviosry.
Tracked-On: #4101
Signed-off-by: Yonghua Huang <yonghua.huang@intel.com>
The default binary will not support 2 core/2 thread hardware from V1.3;
KBL NUC7i5DNH has serial port;
Add cores and threads for CPU of hardware listed;
Signed-off-by: Xie Zhengtian <zhengtian.xie@intel.com>
Cleaned up the presentation and formatting problems from the conversion
to ReST, along with English grammar and spelling edits.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
1. add guest secure boot with OVMF.
2. delete obsolete content.
3. SOS -> Service VM and UOS -> User VM.
Signed-off-by: Yonghua Huang <yonghua.huang@intel.com>
1. Some security features are added into ACRN HV memory management.
2. Dynamic memory allocation is removed. Instead, static memory page allocation is added.
3. The guest to host mapping is not static any more for Service OS after it begins running
since the Service OS support PCI BAR re-pregramming now.
Signed-off-by: Li, Fei1 <fei1.li@intel.com>
Change APL getting started guide to KBL getting started guide;
Merge some of the contents into preempt-rt getting started guide;
Move the modified kbl getting started guide to the behind of the configuration tutorials;
Fix issues for acrn_quick_setup.sh script.
Signed-off-by: lirui34 <ruix.li@intel.com>
Remove redundant copy of ovmf.fd firmware as the lunach script now
instructs the DM to user the OVMF.fd firmware directly from the rootfs.
Tracked-On: #3972
Signed-off-by: Tonny Tzeng <tonny.tzeng@intel.com>
This commit updates the DM parameters reference document to reflect
the removal of the guest cpu number option '-c' implementation.
Tracked-On: #3989
Signed-off-by: Tonny Tzeng <tonny.tzeng@intel.com>
updated this chapter based on latest master
some part still need update:
- vSBL need be replaced by OVMF after removed all vSBL stuff
Tracked-On: #3882
Signed-off-by: Jason Chen CJ <jason.cj.chen@intel.com>
PR #3665 moved all the doc build artifacts into the _build folder and
updated scripts and Makefile to account for this, except missed a fix in
the script that checks for known issues. This patch fixes that but shows
we've got a bunch of issues that have not been being reported so we'll
need to fix those problems to resolve failing doc builds.
Also fixed process of the VERSION file in conf.py since the path to that
file was changed by PR #3665 as well and was raising an exeception that
was being masked.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
As reported in PR #3959, doc build errors were being masked by a script
error. This PR fixes a chunk of them.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
PR #3665 moved the doc build folder, so files referenced via directives
had an incorrect path (need to add an additional ../../ to the front of
relative paths that were referencing files outside of the doc folder).
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Fix "duplicate label" error (name of a figure collided with the name of
a document). Also fixed very long lines, cleaned up some stray extra
spaces that were breaking up words, and some grammar issues.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Adds a new section in reference documentation that lists the
requirements from ACRN upon a processor to boot and function
successfully.
This patch is a starting point and can expect to add a lot
more requirements that would be a translation of
hypervisor/arch/x86/cpu_caps.c
Tracked-On: #3899
Signed-off-by: Sainath Grandhi <sainath.grandhi@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
move virtio-i2c doc from tutorials to developer-guilders/hld and add
entry for virtio-i2c in hld-virtio-devices
Signed-off-by: Gao Junhao <junhao.gao@intel.com>
add VM state transition, and make this chapter into
part of hypervisor hld, the user level vm management
should be introduced in ACRN tools.
Tracked-On: #3882
Signed-off-by: Jason Chen CJ <jason.cj.chen@intel.com>
1) removed the earlylog section as we have remove
the earlylog support from acrn hypervisor.
2) updated SOS ACRN Log Module section as the size
and base address of acrn log buffer are configured
by kernel option now instead of hardcoding.
Signed-off-by: Kaige Fu <kaige.fu@intel.com>
'rsync' is missing from the ACRN Builder Container (in 'doc/getting-started/Dockerfile').
Add it and also add the 'devpkg-graphviz' bundle specifically although it is
automatically included via the 'desktop-apps' (it does not use any additional
space and makes clearer that it is needed).
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
* Optimize the size of the Clear Linux container that can be used to build ACRN.
This patch reduces the size of the container from approx. 10.8GB down to about
3.8GB.
* Add tools required to build the ACRN documentation
* Add paragraph on how to build the ACRN documentation using Docker
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Move the "Building ACRN in Docker" guide to the "Try using ACRN" section to be
more prominently visible. Reference it from the main "Build ACRN from Source"
user guide.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Modify the documentation Makefile (doc/Makefile) and scripts to only modify and
create content inside the $BUILDDIR folder.
The folders that were created inside 'doc/' previously are now all created
inside '$BUILDDIR/rst'. The '.gitignore' file has also been updated accordingly.
Tracked-On: #3686
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
1. Update build the hypervisor with XML file command.
2. Add "cd hypervisor" before "make defconfig BOARD=nuc6cayh"
Signed-off-by: Lei, Lu <leix.lu@intel.com>
This tutorial is introducing how to build service vm, preempt_rt kernel and
industry scenario hypervisor; Update built kernel and launch the preempt_rt vm.
Signed-off-by: lirui34 <ruix.li@intel.com>
1. Update the Service OS VM default install disk to SATA, and Preempt-RT User
VM default install disk to NVMe.
2. Update the Launch Preempt-RT User VM setup.
Signed-off-by: Lei, Lu <leix.lu@intel.com>
This tutorial describes how to generate, deploy OOTB Service VM
RTVM image so that all of the users are able to use ACRN, boot
RTVM immediately after installation without any configuration or
modification.
Signed-off-by: lirui34 <ruix.li@intel.com>
Editorial tweaks to the "Real-Time (RT) Performance Analysis on ACRN" document,
mostly to improve readibility, no technical content change.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
1. Fix the broken link to dwonload UP2 Board BIOS
2. In Clear Linux 31030 the acrn.apl-up2.sbl name is changed to
acrn.apl-up2.sbl.sdc.32.out, so we need to update the creaet-up2-imgages.sh
3. Command "swupd verify --install -m" has been superseded, use "swupd
os-install -V" instead.
Signed-off-by: Lei, Lu <leix.lu@intel.com>
So far the patches are only suite for Celadon Android 9.
Need to specify the Android 9 repo branch to apply patches and
build Celadon image.
Signed-off-by: lirui34 <ruix.li@intel.com>
1. From Clear Linux 31030, we could use kernel-iot-lts2018-sos kernel
command line as Service OS kernel command line directly, so update
the setps and codes to set the Service OS kernel command line.
2. Command "swupd verfiy" and the flag "-m" is superseded, use "swupd
repair" and the flag "-V" instead
3. As UOS is launched by OVMF, the old steps and code to set up UOS does
not work on Clear Linux 31030, update its related steps and code.
4. Update install Clear Linux steps.
5. Fix some small issues.
Signed-off-by: Lei, Lu <leix.lu@intel.com>
Tweak the "vUART configuration" tutorial to fix a few typos and change some
formatting to improve its readability.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
* Update the launch scripts provided as examples on how to launch a Zephyr,
VxWorks or Windows User VM to directly use the 'OVMF.fd' bios file installed
by default in '/usr/share/acrn/bios/'
* Remove the OVMF.fd that was kept under 'doc/tutorials' (no longer needed)
* Adapt the tutorials to reflect this change
Tracked-On: #3673
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Now the structures(run_context & ext_context) are defined
in vcpu.h,and they are used in the lower-layer modules(wakeup.S),
this patch move down the structures from vcpu.h to cpu.h
to avoid reversed dependency.
Tracked-On: #1842
Signed-off-by: Mingqiang Chi <mingqiang.chi@intel.com>
Reviewed-by: Jason Chen CJ <jason.cj.chen@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
ACRN tag is ONLY specific to one Clear Linux version.
For the tutorials, we just need to make sure the validated version is functional.
Signed-off-by: lirui34 <ruix.li@intel.com>
new params: --pm_by_vuart is used to set power mananger by vuart
on ACRN; so add it to user guide.
Tracked-On: #3564
Signed-off-by: Minggui Cao <minggui.cao@intel.com>
Add the '--logger_setting' parameter information to the 'acrn-dm' parameter
document.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
An offline configure tool is designed to configure the BOARD and VM configurations.
Here is the tutorial to tell people how to use it.
Signed-off-by: lirui34 <ruix.li@intel.com>
Add 'zlib1g-dev' to the list of build tools and dependencies to be installed
in Debian in order to build the ACRN project.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
modify partition desc table of up2 board to make it consistent with
launch uos script.
Signed-off-by: Lei Lu <leix.lu@intel.com>
Signed-off-by: Victor Sun <victor.sun@intel.com>
modernizr.min.js is no longer used by Sphinx's rtd theme and is causing
some browsers to have a noticable flash when pages are loaded. While we
can't easily remove it from the RTD theme, we can replace the script
with an empty file instead.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
While we internally call the "new" ACRN architecture 2.0, it could be
confusing to users since we also are calling the upcoming release v1.2
and there is no 2.0 release yet. Remove references to 2.0 in the
introduction.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Changing from just describing the supported hardware to a new hardware
support matrix based on the usage scenarios.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
1. The origin clearlinux version 29070 in this doucment example is not
workable with acrn latest code, update the clearlinux version.
2. Replace the sos_console_login.png with vm_console_login.png
Signed-off-by: Lei Lu <leix.lu@intel.com>
pci_dev_config in VM configure stores all the PCI devices for a VM. Besides PT
devices, there're other type devices, like virtual host bridge. So rename ptdev
to pci_dev for these configure.
Tracked-On: #3475
Signed-off-by: Li, Fei1 <fei1.li@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
PR #3516 was submitted during a documentation reorganization and
resulted in merge conflicts with files that no longer exist. We closed
that PR and opened this one with those changes applied to the right
files.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Update merged PR #3463 with format and wording improvements.
(Not linked yet into the document navigation)
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Fix some wording, table formatting, and links to issues and commits from
the original PR #3515
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Update the ACRN logo size to remove specifics in the CSS. (Grid images
should be ~100px high for the grid.)
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
The ACRN icon on the new graphical home page looked fine with firefox,
edge, and chrome browsers, but not on IE. This PR fixes that
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Home page "button" links needed to be manually updated (because of the
raw html usage) after content around.
Move partition mode docs from try to develop persona pages.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
A few more tweaks to the site navigation since we moved the content back
to its original folder structure.
Remove the temporary "doc reorg in progress" banner.
Add reference to hardware in the "try" section.
Add link to the documentation home page in left nav pane.
Add additional redirects to handle external links to moved content.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Changing the folder structure will cause too many broken links for
external references (from other sites). So, let's put the content back
where it was before the reorg, and instead use the new persona-based
navigation to point to documents in the original locations.
Also, introduce redirects for some documents that no longer exits.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Take the existing ACRN technical documentation and reorganize its
presentation to be persona and use-case based, in preparation for adding
new scenario/use-case based architecture introduction and getting
started documents.
Introduce a more graphical home page and theme color tweaks.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Change WaaG launch script to the default ``launch_win.sh``,
and also provide one OVMF.fd binary in order to launch WaaG.
Change SOS / UOS to Service VM / Guest VM.
Signed-off-by: lirui34 <ruix.li@intel.com>
PR #3483 cleaned up the project root folder and moved stuff that was in
/tools into a new /misc folder. There were a few references to
the old /tools folder missed in that update, addressed in this PR.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
This patch is to clean-up acrn-hypervisor root directory, targt only 5 folders under acrn-hypervisor:1.hypervisor,2.devicemodel,3.misc,4.doc,5.build
Tracked-On: #3482
Signed-off-by: Terry Zou <terry.zou@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
SOS bootargs is specified in vm_configurations.h in different scenarios.
The files in devicemodel/samples/<board>/sos_bootargs_*.txt are removed.
remove deprecated sos_bootargs in create-up2-images.sh
Tracked-On: #3443
Signed-off-by: Lei Lu <leix.lu@intel.com>
Neither ACRN tag nor Clear Linux version is specified in some tutorials.
Declare those information for those tutorials.
Signed-off-by: lirui34 <ruix.li@intel.com>
This tutorial will describe steps to sign binaries of
a Clear Linux image that allows user to launch VM
throught the secure boot enabled OVMF.
Signed-off-by: lirui34 <ruix.li@intel.com>
Update batch script documentation and add reference to source of
material. Also some grammar cleanup in a few places.
Include an updated install_by_vga_gsg.tar.gz with an updated script with
copyright/licensing added.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
In the current design guidlines, it is not clear about
how to check application constraints and how to record
them.
Add description about it is optional to do error checking
for application constraints during hypversisor boot time;
Add reference about how to record design assumptions.
Signed-off-by: Xiangyang Wu <xiangyang.wu@linux.intel.com>
Update the /latest/ (master) version of the docs to provide the menu
choice for the v1.1 release.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Modify 'launch_UOS.sh' to 'launch_uos.sh' and provide an example for
the script which is support '-C' option.
Signed-off-by: ruix.li <ruix.li@intel.com>
Clear Linux changed from systemd-networkd to NetworkManager as default
"network manager", We need to install "systemd-networkd-autostart"
bundle to enable systemd-networkd to create ACRN network bridges and Tap
devices.
Signed-off-by: Lei Lu <leix.lu@intel.com>
The doxygen-collected API information about function preconditions has a
uninspired title of "pre". This change tweaks that to be
"preconditions" in the generated HTML output by editing the generated
xml output before it is processed by Sphinx/Breathe.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
The ACRN primer has be replaced by an updated set of ACRN High-Level Design
documents. Remove the primer (and images), and replace a link to the
graphics mediation section (from API documentation) to the corresponding
section in the APL GVT-g document.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Rather than have the developer make edits, it was easier to merge
PR #3246 and submit a new PR with improvements.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
- add an introduction part for building ACRN hypervisor
- clarify why ACRN hypervisor does not support one binary
for all platforms
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
The multiboot module string will be used to identify the usage of current
module, it must exactly match with "kernel_mod_tag" which configured in
VM configurations files;
Signed-off-by: Victor Sun <victor.sun@intel.com>
The 'reboot' command from the ACRN shell has been removed. Remove the
corresponding documentation from the ACRN Shell user guide.
Tracked-On: #3210
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Clean vmcfg from doc/developer-guides/hld/hld-devicemodel.rst
Tracked-On: #3192
Acked-by: Anthony Xu <anthony.xu@intel.com>
Signed-off-by: Tao Yuhong <yuhong.tao@intel.com>
Sphinx 2.0 reports some "expected errors" differently, so add the new
message patterns to our known-errors scanning.
Also, the kerneldoc tool has a problem with sphinx 2.0, but a fix was
available.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
This patch removes hard-coded interfaces in .rst files and
refers to the definition via doxygen style comments.
This patch mainly focus on Hypervisor part.
Other parts will be covered in seperate patches.
Tracked-On: #1595
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
Using vSBL is only supported on Apollo Lake (APL) platforms at the
present. It cannot be used on other platforms supported by ACRN such as
KBL. Make this explicit with an additional note in the documentation.
Tracked-On: #2798
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Add the <vm_id> parameter to the documentation for the ACRN shell
"vm_console" command.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Add the description of option 'b' to indicate the boot device including
the bootable image.
Tracked-On: #1917
Signed-off-by: Binbin Wu <binbin.wu@intel.com>
APL NUC Getting started guide has some obsolete information (such as
saying the user had to build ACRN as part of the installation process
and changed instructions because the Clear Linux installer changed),
along with some spelling and grammar issues.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
This patch adds the steps required to use the newly
introduced blkrescan feature for Virtio-blk device.
Tracked-On: #3051
Signed-off-by: Vijay Dhanraj <vijay.dhanraj@intel.com>
An instruction is needed from gsg so that user could know where
to get the script and also how to use it to setup SOS, UOS automatically.
Signed-off-by: ruix.li <ruix.li@intel.com>
Update the architectural diagram in the "Using PREEMPT_RT-Linux for
real-time UOS" tutorial to reflect the new name given to that type of
VM, i.e. from "Privileged VM" to "RTVM".
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Update the instructions on how to build ACRN on Ubuntu 16.04,
specifically:
* Add 'pkg-config' package
* Upgrade 'binutils' to 2.27
Note: there is still an issue with regards to the GPIO header
(linux/gpio.h) which needs to be resolved.
Tracked-On: #2737
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Change shell command 'sos_console' to 'vm_console' as it is not only
used to switch console to SOS.
Tracked-On: #2987
Signed-off-by: Conghui Chen <conghui.chen@intel.com>
This patch renames rules ID to reflect the language, in order
to support multiple programming languages.
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
The name NORMAL_VM does not clearly reflect the attribute that these VMs
are launched "later". POST_LAUNCHED_VM is closer to the fact
that these VMs are launched "later" by one of the VMs launched by ACRN.
Tracked-On: #3034
Signed-off-by: Sainath Grandhi <sainath.grandhi@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
When in fully APICv mode, we enable VID. All pending delivery interrupts
will inject to VM before VM entry. So there is no pending delivery interrupt.
However, if VID is not enabled, we can only inject pending delivery interrupt
one by one. So we always need to do this check.
Tracked-On: #1842
Signed-off-by: Li, Fei1 <fei1.li@intel.com>
apicv_advanced_inject_intr is used if APICv fully features are supported,
it uses PIR to inject interrupt. otherwise, apicv_basic_inject_intr is used.
it will use VMCS INTR INFO field to inject irq.
Tracked-On: #1842
Signed-off-by: Li, Fei1 <fei1.li@intel.com>
Currently vpid is not released in reset_vcpu() hence the vpid resource
could be exhausted easily if guests are re-launched.
This patch assigns vpid according to the fixed mapping of runtime vm_id
and vcpu_id to guarantee the uniqueness of vpid.
Tracked-On: #2700
Signed-off-by: Zide Chen <zide.chen@intel.com>
Signed-off-by: Sainath Grandhi <sainath.grandhi@intel.com>
Acked-by: Anthony Xu <anthony.xu@intel.com>
In the presence of SOS, ACRN uses fallback_iommu_domain which is the same
used by SOS, to assign domain to devices during ACRN init. Also it uses
fallback_iommu_domain when DM requests ACRN to remove device from UOS domain.
This patch changes the design of assign/remove_iommu_device to avoid the
concept of fallback_iommu_domain and its setup. This way ACRN can commonly
treat pre-launched VMs bringup w.r.t. IOMMU domain creation.
Tracked-On: #2965
Signed-off-by: Sainath Grandhi <sainath.grandhi@intel.com>
Reviewed-by: Eddie Dong <eddie.dong@intel.com>
Enhance "vm_list" command in shell to Show VM UUID;
Tracked-On: #2291
Signed-off-by: Victor Sun <victor.sun@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
1. Add text to the script usages and inform people to run script with root access.
2. Add logic to determine the right ESP.
3. remove unset proxy line.
4. Add reboot operation after upgrade SOS.
5. Handle multiple efi partition while it's detected.
Co-Authored-By: lirui34 <48583653+lirui34@users.noreply.github.com>
When 0.8 documents are published, we create a link to them from the
master branch where the /latest version of documentation is found.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Update the documentation, and associated scripts to reflect the fact
that the TAP device used by 'acrn-dm' no longer use the "acrn_" prefix.
Tracked-On: #2509
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Update the "ACRN Debugging Tools" tutorial:
* Remove sections on how to build and install the hypervisor, refer to the
corresponding user guides instead
* Simplify the flow for checking loglevel (console and mem)
* Add a little text to improve readability
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Add a new debugging tutorial and update the acrn_shell documentation
with additional details.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
This patch updates the rules category in coding guidelines.
Move some rules in 'Statements' part to 'Expressions' part and
'Functions' part, which is more reasonable.
No functional change is involved.
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
Few tweaks to the "User Guides" and "ACRN Device Model parameters" docs:
- Enhance the help text for the '--rtvm' option description
- Correct the flag name to IO_COMPLETION_POLLING
- Use double-backticks instead of quotes in various places
- Explicitly list all docs in 'index.rst' to enforce special ordering
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Move the doc version selector menu higher on the left nav to make it
more visible (from its prior bottom of the nav menu)
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
A few changes to the documents that describe kernel command-line parameters
relevant to ACRN (SOS and UOS):
- Merge two documents into one (with sections)
- Move to the "User Guides" (from the "Developer Guides")
- Update order in the list to make it consistent across sections
- Add missing parameters to the overview list
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
- Remove QemuFwCfg/QemuFwCfgS3Lib
- Use ACRN E820 map to query system memory size
- Support 64-bit PCI host aperture via ACRN E820
- Remove debug code in release build
- Take out unnecessary OVMF drivers
- Revert "Enable MP support"
- Use CPUID 0x40000010 to determine tsc frequency
Tracked-On: #2868
Signed-off-by: Peter Fang <peter.fang@intel.com>
Update the instructions on how to increase the size of a UOS disk image so that
the entire operation can be performed on the development host. This has the
advantage that it can be done completely offline (the UOS must be powered off
in fact) and no extra tools need to be installed in the UOS to do this.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
For open source, just need to refer FuSa standard instead
of listing concrete fulfillment matrix.
Add related FuSa standard reference and remove related
fulfillment matrix.
V1-->V2:
Make reference more clear according to David'comments
Signed-off-by: Xiangyang Wu <xiangyang.wu@linux.intel.com>
This patch add tutorial about using zephyr as guest.
Tracked-On: #2713
Signed-off-by: Kaige Fu <kaige.fu@intel.com>
---
v3 -> v4:
- Addressed two minor comments from David
v2 -> v3:
- Detail section `Build Zephyr`
- Add missing sudo
- Automatically boot zephyr
- Other grammar, phrasing fix
v1 -> v2:
- NUC7i5DNH -> NUC7i5DNHE.
- Add note about doc to build acrn supported zephyr image.
- Refine section `Boot Zephyr as User OS`.
- Some minor fix.
Add a tutorial on how to increase the disk size of a User OS (UOS)
based on Clear Linux. The tutorial is largely inspired from Clear Linux
tutorial and refers to it. It mostly explains how to resize the .img
file using the 'qemu-img' tool since ACRN does not have any dedicated
tool for manipulating virtual disk image files.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Co-Authored-By: David B. Kinder <david.b.kinder@intel.com>
Add 'rdmsr' and 'wrmsr' to the "ACRN Shell Commands" documentation. Both are
already described via the interactive help command but not (yet) included in our
on-line documentation.
Tracked-On: #2684
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Fix some stray UTF-8 punctuation and symbol characters, unnecessary
trademark symbols, and some misspellings missed during regular reviews.
Tracked-On: #2712
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Original design is to map trusty's memory to 512G~513G, but GR-MRB platform
does not support memory mapping bigger than 512G. So final implementation
is mapping trusty's memory to 511G~512G.
This patch update the documentation with latest implementation.
Tracked-On: #2742
Signed-off-by: Qi Yadong <yadong.qi@intel.com>
Update the "ACRN Shell Commands" user guide in the following aspects:
* Improve the text (help) for some commands to improve readability
* Remove commands that are no longer available
* Add the 'vioapic' command that was missing
Note: this patch does not add a description for both the "[rd|wr]msr"
commands.
Tracked-On: #2684
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Co-Authored-By: David B. Kinder <david.b.kinder@intel.com>
The board name for building images for UP2 has been changed from 'up2' to 'apl-up2' by the commit #f9b5e21.
Signed-off-by: Tonny Tzeng <tonny.tzeng@intel.com>
-- change 'tsc_khz' to static
-- move these APIs from rtl.h to timer.c
us_to_ticks()
ticks_to_us()
ticks_to_ms()
rdtsc()
Tracked-On: #1842
Signed-off-by: Mingqiang Chi <mingqiang.chi@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
Convert and edit IOC virtualization doc to add to ACRN documentation.
Add a note that IOC virtualization is not supported on the NUC or UP2
platforms.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Rename vlapic_post_intr to apicv_post_intr and move it to internal function
since it's only used in vlaic.c.
Tracked-On: #1842
Signed-off-by: Li, Fei1 <fei1.li@intel.com>
Acked-by: Anthony Xu <anthony.xu@intel.com>
Update doc to remove trailing spaces on lines, wrap long lines, add
formatting missed during regular review.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Update the using_partition_mode_on_up2.rst to accormodate the latest
configuration method for up2 partition mode.
Signed-off-by: Victor Sun <victor.sun@intel.com>
merge include/arch/x86/irq.h and include/common/irq.h
--> include/arch/x86/irq.h
Tracked-On: #1842
Signed-off-by: Mingqiang Chi <mingqiang.chi@intel.com>
Reviewed-by: Jason Chen CJ <jason.cj.chen@intel.com>
- Remove some i915 options that are obsolete and irrelevant for the
Service OS kernel
- Update the various tutorials that also used these obsolete parameters
Tracked-On: #2518
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
* Update kernel versions to the latest (to reflect the new 'release'
number used in the 'iot-lts2018' kernel
* Add a one-line command to insert the PARTUUID into the acrn.conf
file (without copying it all manually)
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
This patch is a modified one. It removes the usage
of acrn_vm struct from inside vtd.c.
It also puts struct iommu_domain inside vtd.h,
from vtd.c.
It modifies the signature of init_iommu_domain
in order to remove dependency on acrn_vm from
inside vtd.c.
Incorporated comments from Jason and Eddie.
Changed the name of sos_vm_domain to
fallback_iommu_domain
Removed any reference of sos_vm from vtd.[c|h]
files, including comments.
Tracked-On: #2496
Signed-off-by: Arindam Roy <arindam.roy@intel.com>
Reviewed-by: Jason Chen CJ <jason.cj.chen@intel.com>
- move functions related vmexit from `guest.h` to `vmexit.h`
- move functions related msr from `guest.h` to `msr.h`
- move functions related vm_sw_loader from `guest.h` to `vm.h`
- move function `vmx_vmrun` from `guest.h` to `vcpu.h`
- move MACROs related to vcpu from `guest.h` to `vcpu.h`
- move MACRO `E820_MAX_ENTRIES` from `guest.h` to `e820.h`
- move MACROs related to irq from `guest.h` to `irq.h`
- rename `guest.h` to `guest_memory.h`
Tracked-On: #2503
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
Rename vlapic_deliver_intr to vlapic_receive_intr: ioapic/msi device
deliver an interrupt to lapic.
Rename vlapic_pending_intr to vlapic_find_deliverable_intr: find a
deliverable interrupt which pending in irr and its priority large than ppr.
Rename vlapic_intr_accepted to vlapic_get_deliverable_intr: get the deliverable
interrupt from irr and set it in isr (which also raise ppr update)
Tracked-On: #1842
Signed-off-by: Li, Fei1 <fei1.li@intel.com>
Add a caption to the figure describing the Real-Time Linux VM running
on ACRN. Without this text, the HTML output does not add the Figure
number below it. That figure number is still used in the paragraph
making it hard for the reader to understand which figure is really
referenced (except by clicking on the hyperlink)
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Using term of VM0 would mislead to a VM with VM id 0 easily, whereas
VM id 0 could be used for any PRE_LAUNCHED_VM. So replace VM0 with
SOS_VM.
Signed-off-by: Victor Sun <victor.sun@intel.com>
Proper use of the Clear Linux name is with a noun, specifically "OS".
Also fixed some grammar edits along the way.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
- added description of lapic pt feature based on vlapic in HLD virt-interrupt part;
- updated the doc to include description of new acrn-dm option "--lapic_pt".
Tracked-On: #2351
Signed-off-by: Yan, Like <like.yan@intel.com>
Acked-by: Anthony Xu <anthony.xu@intel.com>
-- add ept.h, and move ept related api declaration
from mmu.h to ept.h
-- move lookup_address()declaration from mmu.h to pgtable.h
Tracked-On: #1842
Signed-off-by: Mingqiang Chi <mingqiang.chi@intel.com>
Reviewed-by: Jason Chen CJ <jason.cj.chen@intel.com>
move the following files to dm folder
renamed: include/arch/x86/guest/vioapic.h -> include/dm/vioapic.h
renamed: include/arch/x86/guest/vpic.h -> include/dm/vpic.h
Tracked-On: #1842
Signed-off-by: Mingqiang Chi <mingqiang.chi@intel.com>
Reviewed-by: Jason Chen CJ <jason.cj.chen@intel.com>
Reviewed-by: Eddie Dong <eddie.dong@intel.com>
Versions of kconfiglib lower than 10.2 cannot build the documentation
correctly. The minimum version required is >=10.2. This patch updates
the 'requirements.txt' accordingly.
Tracked-On: #2429
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Start a new FAQ document with questions we're often being asked on
support channels. We'll expand this list over time, and as the number
of questions grow, we'll organize them as appropriate.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Add a tutorial explaining how to set up a demo using AGL as UOSes as
used in a CES automotive demo.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
This is the following patch after removing pending_pre_work, it make sure
all io emulation is done on its own cpu.
For hv emulated request, it follows the steps:
hv_emulate_pio->emulate_pio_complete
hv_emulate_mmio->emulate_mmio_complete
For dm emulated request, it follows the steps:
acrn_insert_request->dm_emulate_io_complete
while in acrn_insert_request, it could trigger scheduling out then resume by
hcall_notify_ioreq_finish, or busy wait for ioreq completion if polling mode
is enabled.
Tracked-On: #2394
Signed-off-by: Jason Chen CJ <jason.cj.chen@intel.com>
Acked-by: Xu, Anthony <anthony.xu@intel.com>
Under sharing mode, VM0 is identical with SOS VM. But the coupling of
SOS VM and VM 0 is not friendly for partition mode.
This patch is a pure term change of vm0 to sos VM, it does not change
any code logic or senmantic.
Tracked-On: #2291
Signed-off-by: Victor Sun <victor.sun@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
move this api from ept.c to io_emul.c to avoid
reverse dependency.
Tracked-On: #1842
Signed-off-by: Mingqiang Chi <mingqiang.chi@intel.com>
Reviewed-by: Jason Chen CJ <jason.cj.chen@intel.com>
Reviewed-by: Eddie Dong <eddie.dong@intel.com>
move this api from io_emul.c to vm.c to avoid reverse
dependency
Tracked-On: #1842
Signed-off-by: Mingqiang Chi <mingqiang.chi@intel.com>
Reviewed-by: Jason Chen CJ <jason.cj.chen@intel.com>
Reviewed-by: Eddie Dong <eddie.dong@intel.com>
1. move the CR related code from vmcs/vcpu to vCR source files.
2. also add virtual_cr.h to acrn.doxyfile to avoid doc failure.
Tracked-On: #1842
Signed-off-by: Minggui Cao <minggui.cao@intel.com>
Reviewed-by: Jason Chen CJ <jason.cj.chen@intel.com>
Update developer docs with a new GVT-g kernel options document. Update
existing docs with referenced labels.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
The couple of lines highlighted in the launch_uos.sh script are off
since the latest modifications made to that script. Fix them both
to highlight the correct script lines that require attention.
Tracked-On: #2270
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Document a community reference release for the Skylake NUC with GPU
passthrough as a one-time snapshot release, not supported or
maintained. Includes a tar patch file.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Fix misspellings missed during regular reviews, and remove trailing
white space and Windows \r at end of lines.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
different serial devices could be used on different boards.
"vuart=ttySn@irqN" is used to avoid vuart's irq conflict
with SOS passthrough devices.
on UEFI platform, if ttyS1 used for debug uart, and its IRQ
on native OS is 5, you'd better set "vuart=ttyS1@irq5"; also
for its SOS bootargs in acrn.conf, you need set "console=ttyS1"
to match its vuart setting.
Tracked-On: #2170
Signed-off-by: Minggui Cao <minggui.cao@intel.com>
This patch introduces an initial draft of ACRN coding guidelines.
We will update this document gradually to support ACRN achieve
MISRA-C compliance.
Tracked-On: #861
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
Coding guidelines have examples for compliant and non-compliant code,
but they look the same when rendered as HTML. Add a CSS style for
non-compliant-code examples with a red-tinted background.
Usage is:
```
.. rst-class:: non-compliant-code
.. code-block:: c
a=b=c=0;
```
or, for example:
```
.. rst-class:: non-compliant-code
Here's an example of non-compliant code::
a=b=c=0;
```
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Split the build instructions, and the hypervisor configuration instructions
into its own separate document.
Tracked-On: #2154
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Fix the indentation to make a line part of the correct
paragraph (instead of having it erroneously displayed as
part of the previous code-block)
Tracked-On: #2031
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
HV code changed to configure PCI uart mmio@ to bdf@,
so change its description to match it.
Tracked-On: #2031
Signed-off-by: Minggui Cao <minggui.cao@intel.com>
move cpu caps related functions like capability init/detect/check
in cpu.c & mmu.c into a new file cpu_caps.c
Changes to be committed:
modified: developer-guides/hld/hv-memmgt.rst
modified: ../hypervisor/Makefile
modified: ../hypervisor/arch/x86/cpu.c
new file: ../hypervisor/arch/x86/cpu_caps.c
modified: ../hypervisor/arch/x86/mmu.c
modified: ../hypervisor/arch/x86/vmx_asm.S
modified: ../hypervisor/include/arch/x86/cpu.h
new file: ../hypervisor/include/arch/x86/cpu_caps.h
modified: ../hypervisor/include/arch/x86/guest/vm.h
modified: ../hypervisor/include/arch/x86/mmu.h
modified: ../hypervisor/include/arch/x86/vmcs.h
Tracked-On: #1842
Signed-off-by: Jason Chen CJ <jason.cj.chen@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
there is no need to clear CR4.TSD as there is no user mode
in ACRN hypervisor.
Tracked-On: #1842
Signed-off-by: Jason Chen CJ <jason.cj.chen@intel.com>
MTRR emulation belongs to virtual CPU component.
- rename mtrr.c to vmtrr.c and move it to arch/x86/guest
- rename mtrr.h to vmtrr.h and move it to include/arch/x86/guest
Tracked-On: #1842
Signed-off-by: Zide Chen <zide.chen@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
Default vertical alignment of "middle" doesn't look good on large
tables, so override to be "top" of the cell.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Sphinx transforms ``--`` into an en-dash within a paragraph (not within
a code, pre, or kbd block though). This presents a problem documenting
command parameters such as ``--name`` where the ``--`` is transformed
into a single en-dash. Rather than disabling all smartquote
transformations in the Sphinx conf.py (setting ``smartquotes = False``),
we fixes cases where ``--`` should not be transformed by using a block
that is ignored by the smartquote transformation.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Use a table instead of a dictionary list to make the parameter
description layout more readable.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
1, changed Clear Linux installation from "automatically" to "manually"
2, removed bundle "soft-defined-cockpit" installation
3, removed bundle "openssh-server" installation
4, add a bundle"desktop-autostart" as the default installation. so that a desktop is showing for the first time reboot after setup done
5, add a non room user with “sudoers” privilege to avoid using root directly
6, removed section "Device Manager memory allocation mechanism"
Tracked-On: #1794
Signed-off-by: ailun258 <ailin.yang@intel.com>
Change background colors of API elements to improve readability and
match configuration documentation look.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
This patch adds more comment to describe functions that are
interfaces to the other modules in the hypervisor. The comments
are in doxygen-style for document generation.
Tracked-On: #1595
Signed-off-by: Li, Fei1 <fei1.li@intel.com>
To kick off the efforts on modularization, this patch introduces a document
describing the goals and general principles of modular design as well as a brief
introduction on the current status of component/module decomposition.
A detailed assignment of source files to components will be added in the future.
v2 -> v3:
* Expand mailing list address in the doc
v1 -> v2:
* Add more description on complexity measures, cyclic dependency avoidance, and
the reverse dependency of boot on hypervisor initialzation.
* Fix typos.
Tracked-On: #1842
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
1. No more mount needed, use the directory "/boot/efi"
2. The kernel of UOS stored in "~/uos-kernel-build"
3. (Pending) the image of UOS stored in "~/" or "/root"
Now it's using the memory reserve by hypervisor. So there's not
necessaty to map or ummap this region from SOS.
Tracked-On: #1942
Signed-off-by: Li, Fei1 <fei1.li@intel.com>
The Sphinx .. only:: directive is limited to handling only conditional
text and can't handling conditional use of directives. For example,
.. only:: test
.. automodule:: west.runners.core
:members:
is not handled. This PR monkey patches the handling of the existing
.. only:: directive done by Sphinx.
See https://github.com/pfalcon/sphinx_selective_exclude for details.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Update the 'launch_uos.sh' script for UEFI platforms to point at the latest
iot-lts2018 kernel installed by means of the
/usr/lib/kernel/default-default-iot-lts2018 symlink which is set-up by the
kernel-iot-lts2018 bundle.
Update the Getting Started Guide to reflect this minor change.
Tracked-On: #1927
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Update the 'kernel-doc' script to the latest version available from
https://github.com/projectacrn/acrn-kernel.
This solves the following error when generating the ACRN documentation:
"Unescaped left brace in regex is deprecated here (and will be fatal in Perl
5.32), passed through in regex; marked by <-- HERE in m/({ <-- HERE .*})/ at
scripts/kernel-doc line 2176."
Tracked-On: #1926
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
This patch adds vtd.h to the input of doxygen and replaces hard-coded API docs
with doxygen-generated ones.
Tracked-On: #1595
Signed-off-by: Binbin Wu <binbin.wu@intel.com>
Reviewed-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
CSE FW uses an AEK (Attestation keybox Encryption Key) to encrypt the keybox
with AES-256-GCM algorithm before sending it to Android/Trusty. This key is
derived from the latest platform Seed by CSE FW with KDF (key derivation function)
HMAC-SHA256. After Trusty retrieves this encrypted keybox over HECI/MEI driver,
Trusty needs the same AEKkey to decrypt it. Hence, before Trusty launches,
Hypervisor derives the same AEK key from Platform Seed with the same algorithm
and the same derivation parameters, then sends this AEK along with Trusty vSeed
to Trusty world memory.
Since Platform Seed is only visible to Hypervisor and it must not be
sent to any guest VM, only Hypervisor can derive this AEK from this
Platform Seed, just like previous per-Trusty virtual Seed derivation.
Please note that Android Attestation Keybox is shared in a single hardware
platform, so all the Trusty instance/world can get the same AEK for
decryption even if there are multiple Android User OS/VMs running
on top of Hypervisor.
v1 --> v2:
Add detailed description why we need the patch to derive an extra key
v2 --> v3:
Convert API descriptions to Doxygen
Tracked-On: #1812
Reviewed-by: Bing Zhu <bing.zhu@intel.com>
Reviewed-by: Kai Wang <kai.z.wang@intel.com>
Signed-off-by: Chen Gang G <gang.g.chen@intel.com>
Acked-by: Bing Zhu <bing.zhu@intel.com>
-- Config MAX_EMULATED_MMIO_REGIONS 16 in Kconfig
-- Add emulated mmio array and emulated mmio regions
in vm structure
-- Remove mmio list in vm structure
-- Remove unregister_mmio_emulation_handler and
vioapic_cleanup APIs
Tracked-On: #861
Signed-off-by: Mingqiang Chi <mingqiang.chi@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
Update Getting Started Guide (GSG) with Clear Linux version and
kernel versions for ACRN v0.3.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Update the capitalization of "Tracked-On" in the documentation.
"Tracked-on" should work but it throws a warning so it's better
to make the documentation focus on using "Tracked-On" only.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Sphinx supports making a single (large) html file instead of a
full website with a collection of html pages. This ``make singlehtml``
option provides the basis for creating a Word document (for example)
via a cut-and-paste of a section of the documentation (not easily
possible when the docs are in multiple HTML files.)
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
updates:
1, update Clear Linux version to 26120 support v0.3 release
2, update product kernel to kernel-iot-lts2018 since there is new named bundle
Signed-off-by: Ailun258 <ailin.yang@intel.com>
-- Add emulated port io index
-- Add emulated pio array in vm structure
-- Remove port list in vm structure
-- Remove free_io_emulation_resource/register_io_handler/
create_io_handler APIs
v2-->v3:
-- not add 'is_emulated', check len == 0U
-- Check if io_read/io_write handler is NULL before calling
-- Replace ENUM with MACRO for emulated pio index to avoid
MISRA-C violations
v1-->v2:
-- Remove EMUL_PIO_NUM in Kconfig, add emulated pio index
for PIC/PCI/UART/RTC/PM
Tracked-On: #861
Signed-off-by: Mingqiang Chi <mingqiang.chi@intel.com>
Reviewed-by: Jason Chen CJ <jason.cj.chen@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
Transcode, edit, and upload HLD 0.7 section 6.5 (Supported Virtio
Devices), merging with existing reviewed content.
Tracked-on: #1732
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
This patch adds ioreq.h to the input of doxygen and replaces hard-coded API docs
with doxygen-generated ones.
Tracked-On: #1595
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
Getting Started Guide: add one more bundle to be added on a Clear
Linux development machine to make sure 'make' and other development
packages are available.
ACRN Documentation Generation: expand the 'PATH' variable to include
'~/.local/bin' where 'sphinx-build' is installed.
Tracked-On: #1650
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
This patch adds vtd.h to the input of doxygen and replaces hard-coded API docs
with doxygen-generated ones.
Tracked-On: #1595
Signed-off-by: Binbin Wu <binbin.wu@intel.com>
The patch adds related head files to the input of doxygen and
replaces hard-code API docs with doxygen-generated ones.
v1-->v2:
Put the 'kerneldoc' back.
V2-->V3:
Rebase
Tracked-On: #1595
Signed-off-by: Xiangyang Wu <xiangyang.wu@linux.intel.com>
Convert line endings setting for l1tf.rst doc
from windows style to unix style.
Tracked-On: #1672
Signed-off-by: Yonghua Huang <yonghua.huang@intel.com>
Sphinx/Breathe have a known problem with processing unnamed nested
structs and unions that cause a "Duplicate definition" warning.
Use our .known-issues filter to hide these in the HLD content.
Tracked-on: #1706
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Transcode, edit, and upload HLD 0.7 section 4 (Device Model)
Incorporate changes from previously edited acpi-virt.rst and delete
separate doc.
Tracked-on: #1668
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
PR #1678 requires slight tweaking of doxygen/known-issues handling to
successfully generate documentation
Tracked-on: #1595
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Transcode, edit, and upload HLD 0.7 section 3.10 (PM in hypervisor),
3.11 (Console, shell, vUART), 3.12 (Hypercall/VHM upcall), and
3.13 (Compile-time config)
Also scan/replace UTF-8 punctuation missed in previous PRs.
Add anchor targets in referenced docs.
Tracked-on: #1648
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
The current defconfigs are BIOS-specific which makes it difficult to maintain
multiple defconfigs for boards running the same BIOS.
This patch re-organizes the defconfigs to be board-specific. A command line
option BOARD is introduced to specify a board on which the current build targets
at. The original PLATFORM is kept for backward compatibility which redirects to
apl-mrb and nuc6cayh for sbl and uefi, respectively.
The getting started guide is also updated accordingly.
v1 -> v2:
* Rewrite 'up2' to 'UP2'.
Tracked-On: #1588
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
Reviewed-by: Anthony Xu <anthony.xu@intel.com>
transcode, edit, and upload HLD 0.7 section 3.7 (Virtual Interrupt)
Add target references in other docs as needed.
Tracked-on: #1623
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
transcode, edit, and upload HLD 0.7 section 3.6 (Timer)
Also, fix the hv sections file names to be consistent.
Tracked-on: #1623
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Tweak the 'Using partition mode on UP2' tutorial by removing
a couple of Grub menu entries that are not present by default
(nor introduced as part of the tutorial).
Also make it more obvious that there is still a default entry
called 'Ubuntu' which is the one by default.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Transcode, edit, and upload HLD 0.7 sections 3.4 (I/O emulation)
Add anchor targets to other docs reference in this section.
Update .known-issues filter for "known" doxygen/breathe errors
Tracked-on: #1592
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
When the doc log is scanned for potential "new" errors, if any are found
it wasn't returning a non-zero error code.
Tracked-on: #1514
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Replace the askew photo of a GRUB screen with a ``code-block:: console``
directive.
Tracked-On: #1160
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
This patch adds tutorial about all the steps you need to take in order to use
partition mode with ACRN hypervisor on UP2.
Tracked-On: #1160
Signed-off-by: Kaige Fu <kaige.fu@intel.com>
Update HLD documentation with HLD 0.7 section 3.3 (Memory Management).
Add a referenced target link to hv-cpu-virt.rst
Tracked-on: #1590
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
ACRN hypervisor follows MISRA-C which has some inconsistencies with the Linux
kernel coding style. Namely,
* Braces are required even for single-statement blocks.
* Zero-initialisers to global variables are allowed.
* Line limit is 120 instead of 80.
This patch adds a .checkpatch.conf so that checkpatch.pl stops warning on the
exceptions above when invoked under the root directory of the acrn-hypervisor
repository.
The coding style documentation is updated accordingly.
Tracked-On: #1557
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
Update the converted HLD 0.7 section 3.2 with a previously converted
static partitioning document (instead of a separate doc for this topic).
Tracked-on: #1533
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
For traceability, all changes must include a Tracked-On: line indicating
the issue driving this change.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Tracked-On: #1420
Fix one typo (in a command) in the tutorial entitled "Using
Ubuntu as the Service OS".
Add a note explaining that a script may have to be adjusted
based on the HW set-up (network interface name).
Tracked-On: #1502
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
There is a compilation error when using the stock gcc compiler
from Ubuntu 16.04. This adds a note to our Getting Started
Guide to indicate what the error is and how to work around it.
Tracked-On: #1482
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Minor update to the tutorial on how to use Ubuntu as the Service OS
with ACRN. Specifically, the instructions for making the Grub menu
visible at boot time now involved modify the /etc/default/grub file
and not the /boot/grub/grub.cfg as before.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Reorganize the high-level design docs to align with a work-in-progress
HLD document. Migrate previous web content (and images) into the new
organization.
From here we'll continue inclusion of new design chapters as they're
reviewed and edited.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
The genrest.py script (used to generate config documentation from the
Kconfig files) broke when upgrading to the latest kconfiglib (10.9.1).
Copied the latest genrest.py script from the Zephyr project (where this
script and processing was developed) and things work again.
Update Makefile's call to genrest.py (toplevel Kconfig path is now found
relative to the srctree.
Update requirements.txt to match the kconfiglib version family
verified to work.
fixes: #1387
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Documentation scripts: enhance 'show-versions.py'
Modify the doc/scripts/show-versions.py script by making it
gather the list of Python modules to check the version for from
the "requirements.txt" file. It should help keep this in sync
if/when our requirements evolve.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
The genrest.py script (used to generate config documentation from the
Kconfig files) broke when upgrading to the latest kconfiglib (10.9.1).
Copied the latest genrest.py script from the Zephyr project (where this
script and processing was developed) and things work again.
Also update requirements.txt to match the kconfiglib version verified to
work.
tracked-on: #1387
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Add instructions on how to disable ('mask') the 'cbc_*' services
installed by the 'ioc-cbc-tools'. These services are not functional
on standard off-the-shelf platforms such as NUCs or UP2.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Fix the delimiting character used when adding an extra row
to a table so as to make it consistent with the other rows.
Remove an extra set of "<>"
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
The "launch_uos.sh" script has evolved and the lines that we
highlight have moved. Update the syntax to highlight the correct
lines.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Add a pointer to the documentation generation tutorial from the
Getting Started Guide (in the "Building ACRN") section.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Update the list of bundles to be installed in the Service OS. The
"desktop" bundle is no longer require as "software-defined-cockpit"
includes all media and graphics components.
Add "sudo" to the list (it was installed as part of the "desktop"
bundle previously).
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Add a note (and instruction) on how to use a specific version of
Clear Linux on a system. Picking up the image of a specific release
is not sufficient as Clear Linux always grabs the very latest image
when installing.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Added a python script that displays versions of doc building tools
(e.g., doxygen, breathe, sphinx) to help verify doc building environment
is properly set up (can help doc building problem diagnostic, as shown
in issue #1333
Update doc build documentation to reference this script.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
The .. code-block:: console directive (used for white text on a black
background) didn't handle some CSS cases properly resulting in
unreadable grey text on a black background.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Update the doc build instructions to include how to update the version
navigation selector (bottom of the left nav panel), and make commands
for building and publishing specific tagged releases (e.g., 0.2)
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Update conf.py selector list to include version 0.2 documentation (and
fix an URL typo in the release notes).
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Remove "DRAFT" indicator, and a few tweaks to repo description and
download instructions noticed in PR #1316
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Need to make sure the local projectacrn.github.io is in sync with the
master before starting up the publishing process.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Removed white space at the end of the line, and fixed a sentence that
did not have a space after the period.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
In special cases, we'd like to freeze doc versions based on a tag (e.g.,
tags/acrn-2018w34.4-140000p) and have that version show up on the
generated docs. (Normally the version shown is from the
hypervisor/VERSION file.)
With this patch, if DOC_TAG=release then it uses a RELEASE=name
environment variable (e.g., from the make command line) to override the
displayed version:
make DOC_TAG=release RELEASE=acrn-2018w34.4-140000p html
make DOC_TAG=release RELEASE=acrn-2018w34.4-140000p publish
Assuming you've checked out the tagged branch (both for acrn-hypervisor
and acrn-kernel), these make commands will generate and publish docs to
https://projectacrn.github.io/acrn-2018w34.4-14000p
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Update the ACRN documentation to use the official name of GVT-g
in ACRN to "AcrnGT" (ACRN-GT was previously widely used).
Also update the few occurences of "GVT-G" to "GVT-g" to be
consistent across our documentation. This includes a couple of
file name updates.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Break out each version release notes into a separate .rst file and an
organizing top-level release notes page.
Create a draft version for the v0.2 release notes.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Update the Getting Started Guide to correct the URL pointing at
the sample 'acrn.conf' file that is in the source code tree.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
The doc build process copies files using script/extract-content.py from
outside of the doc/ folder (specifically content in the tools/ folders).
The script was not copying graphviz directive files. This has been
fixed and the embedded graphviz directives are not (properly) stored in
separate image/*.dot files.
Note the extract-content.py file is derived from the Zephyr project.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
1, update contents to align latest acrn and clear Linux release
2, change /etc/grub.d/40_custom file to specify 'insmod ext2', not 'insmod ext4' and github issue- https://github.com/projectacrn/acrn-hypervisor/issues/707
3, add tap device and network sharing enabling script as the example for ubuntu SOS
4, add several tips for new user to use ubuntu as the SOS
Signed-off-by: ailun258 ailin.yang@intel.com
verified again, with user name cl-sos. it doesn't work to fix#663
but cl_sos is working, so update the user name to cl_sos. that means
clear has naming rules for user name
Add parameters introduction for virtio-blk
Signed-off-by: Conghui Chen <conghui.chen@intel.com>
Reviewed-by: Shuo Liu <shuo.a.liu@intel.com>
Reviewed-by: David B. Kinder <david.b.kinder@intel.com>
Default behavior is for figure captions below the figure, but table
captions above the table. Tweak the CSS for tables to put the caption
below instead.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
API changes to acrn-kernel/include/linux/vhm/acrn_vhm_mm.h in
https://github.com/projectacrn/acrn-kernel/pull/48 renamed functions
that were referenced in the GTG-g_api.rst document, causing the
documentation build to fail.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Two packages are needed in compiling environment with replacing commands
fdisk and debugfs.
On clear linux, they belong to os-core-dev.
Signed-off-by: Liu, Xinwu <xinwu.liu@intel.com>
Acked-by: Chen Gang <gang.c.chen@intel.com>
Acked-by: Yang Ailin <ailin.yang@intel.com>
Transcode, review, and publish GVT-G porting guide documentation. Merged
glossary entries, added anchor links in GVT-g_api for referencing from
this document.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Update CSS customization to improve read-the-docs theme for our use.
Improved search results (removing most reST markup), improve display of
doc version choices.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
API doc generation includes kernel components provided by ACRN that live
in the acrn-kernel repo (not the acrn-hypervisor repo). We need to
include fetching the latest acrn-kernel sources when we do doc
generation, and update the documentation to mention we now need the
acrn-kernel repo as a sibling folder for the acrn-hypervisor repo
contents.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
During setting up ACRN hypervisor, SOS and UOC on the
intel® NUC (NUC6CAYH) board, there are few mistakes
about updating acrn.conf and efibootmgr options, this
will lead to fail to set up ACRN hypervisor, SOS and UOS
on the NUC.
About updating acrn.conf, add "hugepagesz=1G hugepages=2"
About efibootmgr options, string parameter of option "-L"
needs to add double quotation marks; "uart=disabled" in
the option "-u" since there is no serial port on NUC.
Signed-off-by: Xiangyang Wu <xiangyang.wu@intel.com>
Changes to hypercall.h altered the error pattern match used to decide if
doxygen errors are "expected". Update the pattern match.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
This is API part of API-GVT-g high level design doc.
Signed-off-by: Xinyun Liu <xinyun.liu@intel.com>
Reviewed-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Reviewed-by: David B. Kinder <david.b.kinder@intel.com>
With the addition of more HLD documents, the developer-guides index was
getting too busy, so push the HLD documents down a level.
Also, the supported hardware document is buried in the getting started
section and hard to find, so promote it.
Trusty isn't really supported (yet) so drop it from the TOC for now.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Console screen shots are hard to maintain, so use the
.. code-block:: console directive to show terminal console-like display
(black background with white text)
Change existing .. code-block:: console uses to .. code-block: none
Replace screen-shot images in apl-nuc getting started guide with
text-based console display.
Update apl-nuc GSG content with v0.1 changes
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Normal publication is to the /latest/ folder. With the tagged 0.1
release, we now have an alternative frozen version of the docs.
Also, tweaked the code for collecting version information from the
VERSION file to create document version number, and Makefile needed to
create the publish directory for a new tagged version.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Include developer comments, add commit change log,
update conf.py to include url shortcuts for references to GitHub issues
and commits.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Transcribe and publish the reviewed memory managment HLD into the ACRN
doc set as a developer guide
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
A recent PR changed where the release version is maintained (was in the
hypervisor/Makefile, now in a VERSION file) and format (was a RC_VERSION
variable, now a EXTRA_VERSION variable). The doc build process uses the
version information when generating documents.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Layout of note at the end of the doc had a CSS formatting problem solved
by adding a leading sentence before the bullet list.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Add a tutorial explaining how to use Ubuntu as the Service OS
running on ACRN and providing all the device sharing services
(devicemodel) and tools to manage virtual machines.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Signed-off-by: Ailin Yang <ailin.yang@intel.com>
Update text-formatted release notes as a reST document, but still needs
work to explain the features and is mising GitHub issue links for the
known issues list.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
The 'launch_uos.sh' script was updated recently and new lines
added to it. Adjust the 'emphasize-lines' directive accordingly.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Adjusted the picture sizes a bit smaller, fixed some spelling errors,
and moved the boot-flow.dot image used by trusty into the common images
folder (and renamed the image to trusty-boot-flow.dot)
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
A couple of diagram were written using text characters. This
commit changes that to use pictures instead.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Move the existing Trusty document to the doc/ folder (where
it belongs) and convert the text to ReST.
The Documentation/ folder under hypervisor/ is removed as all
documents should be put under doc/.
All technical information has been preserved or was already
available in other documents.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Some ACRN kernel components are using the API documentation methods of
the Linux kernel. While they use Sphinx for generating their
documentation, they don't use doxygen to collect the API information as
we do for the rest of the project. Instead, they use their own tools
called "kerneldoc". This PR incorporates those tools into our
documentation build process.
There is a prescribed directory structure for this to work: that the
acrn-hypervisor and acrn-kernel repos are cloned to sibling folders,
e.g.:
projectacrn
acrn-hypervisor
acrn-kernel
so that documentation references from acrn_hypervisor/doc can access the
source code in ../../acrn-kernel to do the kerneldoc processing. A full
display of the kerneldoc API material for a source file in the
acrn-kernel tree can be done using a sphinx extension directive:
.. kernel-doc:: /tools/virtio/linux/scatterlist.h
where the assumed root of these file references is ../../acrn-kernel.
The format for kerneldoc comments is documented in
https://www.kernel.org/doc/html/latest/doc-guide/kernel-doc.html and
references to kerneldoc API material in .rst files is documented in
https://www.kernel.org/doc/html/latest/doc-guide/kernel-doc.html#including-kernel-doc-comments
Without options, the kernel-doc directive includes all documentation
comments from the source file. With options, you can display subsets of
these comments.
The intention is to limit use of kerneldoc comments to the acrn-kernel
repo and not use them elsewhere within the ACRN project (where doxygen
comments are expected.)
While I'd prefer NOT to include the kerneldoc perl script here (it is
already in the acrn-kernel/sphinx folder), I don't want to create a
dependency on the acrn-kernel folder existing for documentation
generation, but this might be unavoidable once we have part of the API
material coming from there. We can update this in a later PR.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Rather than a "tutorial", it was suggested to move the graphviz
information to the devleoper-guides, along with the documentation
guidelines. Makes sense.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Clear Linux is a stateless system, also systemd.
https://clearlinux.org/features/stateless
This tutorial advice to modify a file in /usr/lib which is used by vendors.
Instead of that, this commit advice to use the local administration
network directory at /etc/systemd/network.
See more reference using:
man systemd.network
Fixes: 25eae47836 ("Documentation: add tutorial to set up a static IP address")
Signed-off-by: Miguel Bernal Marin <miguel.bernal.marin@linux.intel.com>
Add a tutorial on how to change the default configuration that
uses DHCP and assign a static IP address to the system.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Fix a minor rendering issue in the Getting Started Guide where a
code-block is not appearing as such.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
We've been expanding documentation, and now need to organize things a bit
cleaner and separate content into new major folders: Introduction, Getting
Started, User Guides, Developer Guides, Tutorials, and Release notes..
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Add some basic development tools needed to build the ACRN project.
These were not specifically called out (although most likely
already installed in any development system).
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Modify the Zephyr project script for creating documentation from Kconfig
files to generate the hypervisor option configuration docs. While Zephyr
uses a modified version of kconfiglib, we can use the standard
kconfiglib from Pypi (added to the requirements.txt file).
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
The latest versions of Sphinx and Breathe work well together so we're
updating the requirements.txt installation information (and
documentation) to use the latest versions of these tools.
Fixes: #395
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
This patch adds two sections which describe how configurations can be modified
and how minimized configurations can be generated.
Also switch prerequisite python version from 2 to 3 since menuconfig.py is
python3 only.
v1 -> v2:
* Add the link to EPEL.
* Rename minimalconfig to savedefconfig in the guide.
* Split the step using a defconfig from those generating a defconfig.
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
Acked-by: Anthony Xu <anthony.xu@intel.com>
Acked-by: Geoffroy VanCutsem <geoffroy.vancutsem@intel.com>
On some system, the current doxygen configuration file will
generate a warning if CLANG_ASSISTED_PARSING was not enbabled
at compile time.
This is not used but the simple fact it's listed in the
configuration file (turned off) still generates the warning. So
comment out the option altogether to get a clean log output.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
This patch adds a new target to build the documentation
from the top-level directory. Here is how to use it (from
the top-level source directory):
$ make doc
Or
$ make O=build-test doc
To clean all documentation build artefacts, simply call
$ make clean
Or
$ make O=build-test clean
Calling 'make' with no arguments will *not* build the
documentation by default.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
This patch renames $(O) used in the documentation Makefile
(doc/Makefile) into $(OPTS) in order to avoid a namespace
conflict with $(O) used in the top-level Makefile.
This is in preparation to a new target called 'doc' that will
allow to build the documentation directly from the top-level
Makefile. This is required in order *not* to break setting a
specific build directory, e.g. 'make O=build-test'.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
This update is to reflect the changes for acrnbridge to start
with systemd-networkd instead of running a script.
Signed-off-by: Tan Shen Joon <shen.joon.tan@intel.com>
Trying out the graphviz capability rather than using static images that
we can't easily modify. Also updated the site logo that was too wide.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
v4 -> v5:
* No changes.
v3 -> v4:
* No changes.
v2 -> v3:
* Update the guide before introducing the actual code.
v1 -> v2:
* Add guides on installing pip and kconfiglib.
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Reviewed-by: Zhao Yakui <yakui.zhao@intel.com>
graphviz lets us create graphic images via a text language rather than
creating drawings in other tools (eliminating the need to keep the
sources for the images available, such as a powerpoint file).
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Changes to the nested unnamed unions in type definitions require a tweak
to the pattern matching used to detect known issues reported by the API
doc generation.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
This continues the editing from PR #276 with formatting and clarity
edits to have these tool documents blend in with the rest of the ACRN
documentation. It also builds on PR #307 that set up the doc build
infrastructure to allow leaving these tool docs within the tools/
folder.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Update the Getting Started Guide to remove some instructions that
are now obsolete and add details of the cmdline parameters that
can be passed to the ACRN hypervisor (EFI), namely:
* bootloader=
* uart=
The wording of the GSG has been made less specific to the NUC
platform so we can refer to it for new platform being supported
without causing confusion to the reader
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Fix formatting and adhere to the recommendations published by
the documentation owner when writing reST documents.
Simplify the instructions by referencing the main Getting Started
Guide. This is now possible with the latest code since what
required us to modify the source code and build the components
are now parameters we can set when installing ACRN. This
simplifies the instructions *a lot*.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
This adds basic information about the new ACRN tools that have
been integrated in the the acrn-hypervisor repo (under tools/).
It also adds the build dependencies for those tools in the
different development environment that we reference.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
The tools documentation is maintained within the tools folder and
outside of the doc folder. We need to temporarily pull that content
within the doc folder for generating the documentation set. (We're using
a script developed for the Zephyr project for just this purpose.)
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
The sambles scripts where moved to another directory but did not update
all the references in the documentation.
Fixes: 977d48d550 ("hypervisor: install acrn.efi to /usr/lib")
Fixes: 9563e248b7 ("samples: move samples to specifi platform diretory")
Signed-off-by: Miguel Bernal Marin <miguel.bernal.marin@linux.intel.com>
DM memory allocation mechanism is better placed in the Getting Started
material, so move it there from the primer.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
acrn.efi is a binary and need to be installed to /usr/lib instead of
/usr/share.
Suggested-by: Arzhan Kinzhalin <arzhan.i.kinzhalin@intel.com>
Signed-off-by: Miguel Bernal Marin <miguel.bernal.marin@linux.intel.com>
Move the platform apl-mrb samples to devicemodel samples directory.
Add the install target to the missing samples files and re-organize the
samples directory structure to have nuc and apl-mrb samples.
Suggested-by: Arzhan Kinzhalin <arzhan.i.kinzhalin@intel.com>
Signed-off-by: Miguel Bernal Marin <miguel.bernal.marin@linux.intel.com>
Add documentation contributing information with project specific
recommentations along with some common reST and Sphinx constructs.
Reorganize contributing section to fit this new doc in.
Also
* Cleanup stray file (CODEOWNERS) from when docs were in their own repo.
* Remove licensing footer on generated pages (not really needed).
* Pull replacement strings into substitutions.txt for easier management.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Remove UEFI boot material that was causing doc build to fail (seems to
be a duplicate of material in the Getting Started Guide anyway)
Fix reST formatting for the DM memory allocation section.
Update folder layout description
Fixes: #202
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Update the "Contributing Guidelines" document to point at the
top-level LICENSE file that was created after the merger of
the three acrn-{hypervisor,devicemodel,documentation} repositories
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Post-merge, the doc building instructions need an update to reflect the
new diretory structure.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Documentation updates were needed to account for changes caused by the
recent merging of the three acrn-hypervisor, acrn-devicemodel, and
acrn-documentation repos.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
We've enabled GitHub issues for submitting and tracking bug and
enhancement requests for the project. Add some documentation about how
to use issues and what to expect.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Fix some formatting problems with a recent GSG update. Tweak the
custom CSS to adjust code block (and code literal) colors. Update
Makefile to document doc build options for pulling source from the other
repos and for publishing targets.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
The boot process has changed a bit and the ACRN hypervisor is now
directly loaded by the platform EFI firmware. This commit reflects
those changes and also reference a newer version of Clearlinux that
includes the ACRN hypervisor that has these changes in.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Tech note articles about technology and process tips now have a place in
the ACRN documentaion.
Move the doc process documention into this new area, and add a
placeholder for tech tips for now.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Some assumptioins about the doc build process were removed to make it
easier for contributors to build local version of the docs. Assumption
now is that acrn-hypervisor and acrn-devicemodel content is up to date
rather than pulling from upstream on every build.
make pullsource will do an upstream pull manually
make html generates local docs
Also fixed broken link in the README.md file (moved the tech doc root)
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Include more doxygen info, flag undocumented material, update
.known_issues matching for known doxygen/sphinx issues
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
add navigation to (manually) maintained list (in conf.py) of versioned
docs, and update generating and publishing processes to be
version-aware.
Adds a file to redirect root references to /latest folder now (since we
can't update the server redirects). Might break some links to pages
within the site from external sites.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Update the build dependency for Fedora. 'gnu-efi' was listed as
a dependency but it's actually 'gnu-efi-devel' that we need else
the header file ('efi.h') is not installed.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Add a new document describing how doc building and publishing
works and how to setup a doc working directory and build tools to make
it so.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Add the 'gnu-efi' dependency required to build the ACRN hypervisor
with "PLATFORM=uefi" on Fedora. 'gnu-efi-devel' is required on CentOS.
Signed-off-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>