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>