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>
-- 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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
-- 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 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>
-- 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>
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>
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>
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>
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>
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>
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
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>