Commit Graph

239 Commits

Author SHA1 Message Date
Shiqing Gao 4157b843e5 doc: add some rules related to naming convention
This patch adds some rules related to naming convention.

Tracked-On: #861
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
2019-03-14 18:05:19 -07:00
David B. Kinder e9335fcee6 doc: fix utf-8 punctuation, branding, spelling
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>
2019-03-14 09:13:58 -07:00
Qi Yadong 9e78ad52d9 doc: fix wrong desciption of trusty's memory mapping
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>
2019-03-14 09:10:39 -07:00
Shiqing Gao 31f04e1a7b doc: fix typos in coding guidelines
This patch fixes typos in coding guidelines.

Tracked-On: #2711
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
2019-03-10 21:39:55 -07:00
Shiqing Gao 18b619da4d doc: add the doc for 'Error Detection and Handling'
This patch adds the doc for 'Error Detection and Handling'.

Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
2019-03-07 22:12:10 -08:00
Shiqing Gao 72fbc7e79f doc: add some comments for coding guidelines
This patch adds some comments for coding guidelines.

Tracked-On: #861
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
2019-03-07 22:05:05 -08:00
David B. Kinder ff9ef2a19d doc: fix broken external links
Found some broken links to external sites in the documentation.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2019-03-07 15:52:39 -08:00
Shiqing Gao 85b3ed3e8d doc: update the format in coding style part
This patch updates the format in coding style part.

Tracked-On: #861
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
2019-03-07 15:51:19 -08:00
Mingqiang Chi 55f52978db hv:move several tsc APIs to timer.c
-- 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>
2019-03-07 20:23:22 +08:00
Shiqing Gao bc107105f8 doc: fix the typo related to tab
This patch fixes the typo related to tab.

Tracked-On: #861
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
2019-03-01 08:36:00 -08:00
David B. Kinder 8c3cfe62aa doc: add VBSK overhead analysis doc
Add a new developer guide describing VBSK overhead analysis.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2019-02-28 20:25:19 -08:00
Shiqing Gao 30159d5b28 doc: add some rules related to coding style
This patch adds some rules related to coding style.

Tracked-On: #861
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
2019-02-28 20:01:01 -08:00
David B. Kinder 32a7b4f179 doc: add IOC virtualization HLD
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>
2019-02-28 11:55:32 -08:00
David B. Kinder ae34fdd843 doc: fix misspellings
Fix misspellings missed during regular reviews.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2019-02-27 13:45:45 -08:00
Li, Fei1 987ddafa6b hv: vlapic: refine apicv_post_intr to internal function
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>
2019-02-25 14:17:27 +08:00
Shiqing Gao ea66747e33 doc: add more rules in coding guidelines
This patch adds more rules in coding guidelines.

Tracked-On: #861
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
2019-02-14 21:31:02 -08:00
Arindam Roy de8d85753e HV: Modularize vtd.c to remove acrn_vm usage
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>
2019-02-06 08:53:46 +08:00
Li, Fei1 ce19dd423e hv: vlapic: make vlapic deliver interrupt related functions more readable
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>
2019-02-02 09:31:49 +08:00
Victor Sun a01c3cb913 doc: change term of vm0 to sos_vm
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>
2019-01-30 17:14:26 -08:00
David B. Kinder 0881bae738 doc: fix correct use of Clear Linux OS
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>
2019-01-30 15:17:33 -08:00
Shiqing Gao fc887eade4 doc: update coding guidelines
- update and add some rules in coding guidelines

Tracked-On: #861
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
2019-01-30 10:48:15 -08:00
Yan, Like 72faca5068 doc: update documents for "--lapic_pt" feature
- 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>
2019-01-30 10:45:57 -08:00
Shiqing Gao d0c9fce72d doc: add more rules in coding guidelines
This patch adds more rules in coding guidelines.

Tracked-On: #861
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
2019-01-23 11:57:10 -08:00
Jason Chen CJ 15030f6f2c io_emul: reshuffle io emulation path
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>
2019-01-23 16:21:17 +08:00
Victor Sun 49e6deaf26 HV: rename the term of vm0 to sos vm
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>
2019-01-21 18:03:31 +08:00
Mingqiang Chi 55e5ed2e1a hv:move ept violation handler to io_emul.c
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>
2019-01-21 13:49:54 +08:00
Mingqiang Chi 1d98b7012d hv: move 'setup_io_bitmap' to vm.c
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>
2019-01-21 13:49:54 +08:00
Geoffroy Van Cutsem c11090215d Update doc/developer-guides/GVT-g-kernel-options.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2019-01-13 22:56:58 -08:00
Geoffroy Van Cutsem d998170f17 Update doc/developer-guides/GVT-g-kernel-options.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2019-01-13 22:56:58 -08:00
David B. Kinder a6cef1095f doc: add GVT-g kernel options doc
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>
2019-01-13 22:56:58 -08:00
Shiqing Gao fae6cbf194 doc: add more rules in coding guidelines
This patch adds more rules in coding guidelines.

Tracked-On: #861
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
2019-01-10 21:03:51 -08:00
Shiqing Gao e2971ebc98 hv: vlapic: code clean-up
* rename `vlapic_set_intr_ready` to `vlapic_accept_intr`
 * replace calling of `vlapic_intr_edge` with `vlapic_set_intr`
 * remove `vlapic_intr_level` and `vlapic_intr_edge`

Tracked-On: #861
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
2019-01-11 09:44:10 +08:00
Shuang Zheng 79f40a569b Update and complete `acrn-dm` parameters description
Update and complete `acrn-dm` parameters description in the user guide and HLD

Tracked-On: #2036
Signed-off-by: Shuang Zheng shuang.zheng@intel.com
2019-01-09 16:19:35 -08:00
Mingqiang Chi 7907fef59e hv:Rename several APIs for vpic and vioapic
vpic:
   vpic_set_irq         --> vpic_set_irqline
   vpic_get_irq_trigger --> vpic_get_irqline_trigger_mode
vioapic:
   vioapic_set_irq_nolock --> vioapic_set_irqline_nolock
   vioapic_set_irq        --> vioapic_set_irqline_lock
   vioapic_send_intr      --> vioapic_generate_intr

Tracked-On: #1842
Signed-off-by: Mingqiang Chi <mingqiang.chi@intel.com>
2019-01-08 14:32:20 +08:00
Shiqing Gao 070a56dbc4 doc: rename register_io_emulation_handler
This is a follow-up patch in doc corresponding to the
changes in source code.

Tracked-On: #861
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
2019-01-08 11:28:13 +08:00
Shiqing Gao a177d75ed3 doc: initial draft of ACRN coding guidelines
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>
2018-12-26 22:46:46 -08:00
Jason Chen CJ 746fbe147d modulization: move functions related with cpu caps into cpu_caps.c
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>
2018-12-19 09:07:14 +08:00
Jason Chen CJ 59e3f562b8 remove check_tsc
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>
2018-12-17 14:31:52 +08:00
David B. Kinder 117b71e6af doc: add partition mode hld
Partition mode HLD content added to hypervisor hld.
Add target links in referenced docs.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-12-15 10:35:38 -08:00
Zide Chen c89d6e6526 modularization: clean up namings in vMTRR module
- rename 3 module interface APIs
  init_mtrr() -> init_vmtrr()
  mtrr_rdmsr -> read_vmtrr()
  mtrr_wrmsr() -> write_vmtrr()

- follow naming convention for other modules, rename struct mtrr_state
  to struct acrn_vmtrr. And add acrn_vcpu to it.

- because MTRR is x86 architecture specific, move struct acrn_vmtrr to
  struct acrn_vcpu_arch.

Tracked-on: #1842
Signed-off-by: Zide Chen <zide.chen@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
2018-12-14 09:43:06 +08:00
Peter Fang f5a66e8e20 doc: update OVMF usage for acrn-dm
Tracked-On: #1832
Signed-off-by: Peter Fang <peter.fang@intel.com>
2018-12-13 09:56:09 +08:00
Geoffroy Van Cutsem 21a5b30865 Update add acrn-dm parameter descriptions
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem c45300fb54 Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem 6d5b769d67 Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem 5998f434bc Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem c607aedff4 Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem ba79b21860 Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem 4ab193cf6c Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem 1c70f812a0 Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem 341bf84ced Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem a0708339bc Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem a7be8f731d Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem 5aedc8f4aa Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem e7e8ce63f2 Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem 2454289400 Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem edd06fe928 Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem 1ef6b657fd Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem 8b13bf3f7c Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem 7446089d80 Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem 666c97b0d7 Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
Geoffroy Van Cutsem a21c3ca3eb Update doc/developer-guides/hld/hld-devicemodel.rst
Co-Authored-By: dbkinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
David B. Kinder 7bcd7054e5 doc: additional DM parameter documentation
Update the device model HLD with additional parameter documentation

Tracked-On: #2021

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-12-12 08:57:16 -08:00
David B. Kinder fe1ace4f56 doc: fix doc misspellings
Fix documentation misspellings missed during the regular review.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-12-05 17:07:39 -08:00
Li, Fei1 5fd6021dee doc: hv: add comments to timer APIs for documentation
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>
2018-12-04 15:09:47 +08:00
David B. Kinder 2dbb0cbafc doc: fix citation references in modularity doc
Modularity Design doc had replicated references to citatation docs.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-12-03 21:04:23 -08:00
Junjie Mao e2a8989ff4 doc: add a document on considerations and current status of hypervisor modularization
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>
2018-12-03 20:49:28 -08:00
Li, Fei1 a0582c99cf hv: trusty: refine trusty memory region mapping
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>
2018-11-30 16:49:27 +08:00
Mingqiang Chi 5dcfc1336b hv:Rename ptdev to ptirq for some APIs
-- Rename the fowllowing APIs:
  ptdev_intx_pin_remap --> ptirq_intx_pin_remap
  ptdev_msix_remap  --> ptirq_msix_remap
  ptdev_add_intx_remapping --> ptirq_add_intx_remapping
  ptdev_remove_intx_remapping --> ptirq_remove_intx_remapping
  ptdev_add_msix_remapping --> ptirq_add_msix_remapping
  ptdev_remove_msix_remapping --> ptirq_remove_msix_remapping
  ptdev_intx_ack  --> ptirq_intx_ack
  ptdev_lookup_entry_by_sid --> ptirq_lookup_entry_by_sid
  ptdev_lookup_entry_by_vpin --> ptirq_lookup_entry_by_vpin
  ptdev_build_physical_msi --> ptirq_build_physical_msi
  ptdev_build_physical_rte --> ptirq_build_physical_rte
  alloc_entry   --> ptirq_alloc_entry
  release_entry --> ptirq_release_one_entry
  ptdev_activate_entry --> ptirq_activate_entry
  ptdev_deactivate_entry --> ptirq_deactivate_entry
  ptdev_intr_handle_irq --> ptirq_handle_intx
  ptdev_softirq --> ptirq_softirq
  ptdev_enqueue_softirq --> ptirq_enqueue_softirq
  ptdev_dequeue_softirq --> ptirq_dequeue_softirq
  get_vm_ptdev_intr_data --> ptirq_get_intr_data
  alloc_ptdev_entry_id --> ptirq_alloc_entry_id
  ptdev_intr_delay_callback --> ptirq_intr_delay_callback
  ptdev_dequeue_softirq --> ptirq_dequeue_softirq
  ptdev_interrupt_handler --> ptirq_interrupt_handler

-- Merge 'ptdev_release_all_entries' and 'release_all_entries'
   to 'ptirq_release_all_entries'

v2-->v3:
   Rename ptirq_release_one_entry to ptirq_release_entry
v1-->v2:
   still use ptdev_init instead of ptirq_init

Tracked-On: #861
Signed-off-by: Mingqiang Chi <mingqiang.chi@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
2018-11-30 13:27:49 +08:00
Binbin Wu fe08a44e83 hv: doc: use doxygen-generated API docs in HLD for passthru
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>
2018-11-21 09:27:51 +08:00
Mingqiang Chi 9a009bcef2 hv:Replace dynamic memory with static for mmio
-- 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>
2018-11-13 11:52:48 +08:00
Geoffroy Van Cutsem 33137dc9fb Documentation: adjust "Tracked-On" capitalization in documentation
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>
2018-11-12 09:47:57 -08:00
Mingqiang Chi 73530055b6 hv:Replace dynamic memory with static for port io
-- 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>
2018-11-09 13:05:04 +08:00
Minggui Cao ab5572bdb6 doc: explain intr storm monitor params in acrn-dm
add the introduction of interrupt storm monitor params in acrn-dm
commond lines.

Signed-off-by: Minggui Cao <minggui.cao@intel.com>
2018-11-08 16:50:15 -08:00
David B. Kinder 44ce3a664f doc: update HLD Trace/Log
Transcode, edit, and upload HLD 0.7 section 9 (Trace/Log)

Tracked-on: #1738

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-11-06 16:14:49 -08:00
David B. Kinder 27fffb96b9 doc: update HLD Power Management
Transcode, edit, and upload HLD 0.7 section 8 (Power Management)

Tracked-on: #1736

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-11-06 13:51:35 -08:00
David B. Kinder b3d21683de doc: update HLD VM Management
Transcode, edit, and upload HLD 0.7 section 7 (VM Management)

Tracked-on: #1734

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-11-06 12:23:25 -08:00
David B. Kinder dfcc06df30 doc: update HLD Virtio Devices
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>
2018-11-06 11:37:29 -08:00
Shuo Liu d261b4bce2 doc: update virtio related functions doc comments
Update some virtio, VBS-K, vhost APIs documents.

Tracked-On: #1595
Signed-off-by: Shuo Liu <shuo.a.liu@intel.com>
2018-11-04 20:32:50 -08:00
Junjie Mao 4e540e5494 HV: doc: use doxygen-generated API docs in HLD
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>
2018-11-04 20:30:38 -08:00
Yonghua Huang d2d0cbc661 hv:doc:use doxyen-generated API docs in HDL for vIRQ
Adds below header files to the input of doxygen
 and replaces hard-coded API docs with doxyen-generated ones:

 - vlapic.h
 - vioapic.h
 - vpic.h
 - irq.h

Tracked-On: #1595
Signed-off-by: Yonghua Huang <yonghua.huang@intel.com>
2018-11-03 08:40:14 -07:00
Binbin Wu 4b3b11552d hv: doc: use doxygen-generated API docs in HLD for vtd
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>
2018-11-02 15:36:14 -07:00
Yan, Like 7dc3e609be doc: hv: add comments to irq APIs for documentation
Tracked-On: #1595
Signed-off-by: Yan, Like <like.yan@intel.com>
2018-11-02 15:34:36 -07:00
Xiangyang Wu f69dd1c6ea HV:doc:use doxygen-generated API docs in HLD
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>
2018-11-02 15:30:36 -07:00
David B. Kinder 17d43fe5cb doc: doc: update HLD Emulated Devices
Transcode, edit, and upload HLD 0.7 section 5 (Emulated Devices), including

- 5.1 USB Virtualization (merge with previously edited doc),
- 5.2 UART virtualization (merge with previous edited doc),
- NOT INCLUDING 5.3 (Automotive) I/O controller virtualization
- 5.4 Watchdog virtualization (merge with previously edited doc)
- 5.5 GVT-g GPU Virtualization (merge previously edited doc)

Tracked-on: #1687

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-11-02 15:27:08 -07:00
Minggui Cao bf88e24168 DOC: add main vcpu API & data structure into HLD.
add main vcpu API and data structure for doc auto-generated
info into HLD.

Tracked-On: #1595
Signed-off-by: Minggui Cao <minggui.cao@intel.com>
2018-11-02 15:20:11 -07:00
David B. Kinder 277c9330a2 doc: fix formatting error in l1tf doc
PR #1714 had one error that this PR is fixing.

Tracked-on: #1672

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-11-02 15:16:25 -07:00
Yonghua Huang 2c85480c2f doc: format l1tf.rst
Format this file to address review comments.

Tracked-On: #1672
Signed-off-by: Yonghua Huang <yonghua.huang@intel.com>
2018-11-02 15:11:23 -07:00
Yonghua Huang d6247ff721 doc: update l1tf.rst line endings setting to unix style
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>
2018-11-02 15:11:23 -07:00
Yonghua Huang c36f4d2789 doc: hotfix build issue blocked by l1tf.rst
fix indent and Title alignmeng.

Tracked-On: #1672
Signed-off-by: Yonghua Huang <yonghua.huang@intel.com>
2018-11-02 18:22:13 +08:00
David B. Kinder 9029ac4bd5 doc: update Tracked-on in contribute guide
All PRs must have a Tracked-on: tag

Tracked-on: #1420

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-11-01 21:18:39 -07:00
Jason Chen CJ 25c2d4d781 doc: add l1tf document
Add ACRN L1TF readme document

Tracked-On: #1672
Signed-off-by: Jason Chen CJ <jason.cj.chen@intel.com>
Signed-off-by: Tian, Kevin <kevin.tian@intel.com>
2018-11-01 11:21:15 +08:00
David B. Kinder 9ae79496be doc: fix section heading in device model hld
Fix incorrect section heading level.

Tracked-on: #1668

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-10-31 13:55:50 -07:00
David B. Kinder 7df70e0c64 doc: update HLD Device Model
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>
2018-10-31 13:48:43 -07:00
David B. Kinder ac5b46eba5 doc: update rest of hypervisor HLD sections
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>
2018-10-30 11:20:09 -07:00
David B. Kinder 97c8c16f6a doc: fix misspellings in hld docs
can and fix misspellings missed during normal review

Tracked-on: #1648

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-10-30 08:58:01 -07:00
David B. Kinder bf7b1cf744 doc: update HLD Device passthrough
transcode, edit, and upload HLD 0.7 section 3.9 (Device passthrough)

Tracked-on: #1645

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-10-29 16:32:32 -07:00
David B. Kinder 7c192db1ba doc: update HLD VT-d
transcode, edit, and upload HLD 0.7 section 3.8 (VT-d)

Tracked-on: #1643

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-10-29 13:34:01 -07:00
David B. Kinder dc7df1cd0f doc: update HLD Virtual Interrupt
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>
2018-10-26 16:46:49 -07:00
David B. Kinder 1c54734f8b doc: update HLD Timer section
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>
2018-10-26 15:12:45 -07:00
David B. Kinder 70e13bf8f4 doc: update interrupt hld section
Transcode, edit, and upload HLD 0.7 sections 3.5 (Physical Interrupts)

Tracked-on: #1610

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-10-25 16:44:41 -07:00
David B. Kinder f84547cad2 doc: move docs to match HLD 0.7 org
I/O emulation section was in a different place than in the HLD 0.7 doc

Tracked-on: #1592
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-10-25 14:09:30 -07:00
David B. Kinder 9871b343fa doc: update I/O emulation section
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>
2018-10-25 13:39:33 -07:00
David B. Kinder bc7b06ae2f doc: update Memory management HLD
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>
2018-10-25 10:04:10 -07:00
Junjie Mao 7b06be9e2c HV: checkpatch: add configurations to customize checkpatch.pl
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>
2018-10-24 18:20:36 +08:00
David B. Kinder acc51877f1 doc: merge static core with cpu virt
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>
2018-10-19 16:09:19 -07:00
David B. Kinder e01f47778a doc: HV startup and CPU virtualization sections
transcode, edit, and upload HLD 0.7 sections 3.1 and 3.2

Tracked-on: #1533

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-10-19 15:46:38 -07:00
David B. Kinder 8893a8c2c7 doc: update HLD overview chapter
Transcode, edit, and publish update HLD chapter 2

Tracked-on: #1512

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-10-19 15:46:14 -07:00
David B. Kinder 813e3abccc doc: Update contrib doc with Tracked-On
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
2018-10-18 15:04:34 -07:00
David B. Kinder e7b63aec9d doc: add static core partitioning doc
Update HLD with the static core partitioning doc

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-10-15 12:45:16 -07:00
David B. Kinder d800baf553 doc: tweak hld intro
Add another level to the HLD toc, and start conversion of the HLD intro

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-10-05 16:38:13 -07:00
David B. Kinder 1e38544112 doc: reorganize HLD docs
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>
2018-10-05 16:08:15 -07:00
David B. Kinder 7dd3207a6a doc: fix typo in network virt hld
punctuation fix

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-09-20 10:23:48 -07:00
David B. Kinder 01ce3b6aee doc: sort title in developer HLD section
We've got enough docs now that it would be better to put them in sorted
order by title.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-09-20 10:11:12 -07:00
David B. Kinder dae98a0409 doc: add network virtualization hld
Review, edit, and transcode network virtualization doc

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-09-20 10:02:43 -07:00
David B. Kinder 55a71e402d doc: add watchdog high-level design
Review, transcode, and publish watchdog high-level design doc.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-09-20 09:57:55 -07:00
David B. Kinder 31285a9fdd doc: add security hld document
review and publish ACRN security hld document, also added the oplus
replacement symbol

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-09-20 09:45:36 -07:00
Minggui Cao bfcf546180 Doc: add interrupt storm mitigation explanation.
Tracked-On: #866
Signed-off-by: Minggui Cao <minggui.cao@intel.com>
Acked-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
2018-09-11 09:01:06 +08:00
Geoffroy Van Cutsem 047f4e90a2 Documentation: update to AcrnGT official name
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>
2018-09-06 21:51:23 -07:00
David B. Kinder d32ef9b1eb doc: fix doc misspellings
fix misspellings in .rst files missed during regular reviews

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-09-05 16:06:19 -07:00
Fei Jiang e49c42d698 Documentation: update GVT-G-porting-image1.png for AcrnGT official name
Signed-off-by: Fei Jiang <fei.jiang@intel.com>
2018-08-30 14:03:43 -07:00
Sainath Grandhi 38a1898542 hv: Fix comments referring to wrong hypervisor name
Fix comments referring to wrong hypervisor name

Signed-off-by: Sainath Grandhi <sainath.grandhi@intel.com>
2018-08-17 10:03:32 +08:00
Conghui Chen a2b299179d doc: update virtio-blk usage in HLD
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>
2018-08-10 10:33:21 +08:00
David B. Kinder 4753da4374 doc: add interrupt high-level design doc
Transcode, review, and publish interrupt high-level design document.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-08-08 20:23:12 -07:00
David B. Kinder 014bef6fec doc: add virtio-console HLD document
transcode, review, and publish virtio-console developer-guides doc

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-07-31 09:47:27 -07:00
David B. Kinder 53a5941b99 doc: add GVT-G porting guide
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>
2018-07-26 14:08:57 -07:00
David B. Kinder 746cbab979 doc: add UART virtualization documentation
transcode, review, and publish UART virtualization design and
documentation

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-07-26 14:01:35 -07:00
Xinyun Liu 0631473bfc [doc] Add API document for ACRN-GT
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>
2018-07-18 09:17:31 -07:00
David B. Kinder ea0bbd509d doc: reorganize doc tree
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>
2018-07-16 15:17:11 -07:00
David B. Kinder e04255822a doc: update GSG for v0.1, add console code-block
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>
2018-07-16 13:51:28 -07:00
David B. Kinder b25caad29e doc: add API-GVT-g high level design doc
Transcode and publish HLD document.  Moved glossary terms to the
project-wide glossary.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-07-10 16:42:22 -07:00
David B. Kinder 2c706b21a1 doc: add ACPI virtualization HLD
Transcribe and publish the reviewed ACPI virtualization HLD as another
developer guide.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-07-10 14:18:07 -07:00
David B. Kinder 1707fc370a doc: add memory management HLD
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>
2018-07-10 10:29:43 -07:00
David B. Kinder 7a7fc5ba85 doc: fix a formatting issue in the virtio-hld
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>
2018-07-09 11:21:31 -07:00
David B. Kinder f96c2b867c doc: add virtio HLD document
High level design document for Virtio

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-07-08 20:51:10 -07:00
David B. Kinder 1bf511cf08 doc: small tweaks to new trusty doc
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>
2018-07-05 06:56:20 -07:00
Geoffroy Van Cutsem f7d78289ee Documentation: add pictures to Trusty documentation
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>
2018-07-05 00:06:51 -07:00
Geoffroy Van Cutsem d24179550e Documentation: move Trusty documentation to doc/
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>
2018-07-05 00:06:51 -07:00
David B. Kinder 05d2558f9f doc: move graphviz material to developer-guides
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>
2018-07-03 09:48:19 -07:00
David B. Kinder 3965593df6 doc: reorganize documentation
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>
2018-06-28 22:36:13 -07:00