Commit Graph

238 Commits

Author SHA1 Message Date
Chen, Gang G fc9ec5d88f hv: Derive decryption key from Seed for Trusty to decrypt attestation keybox
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>
2018-11-20 09:22:37 +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
David B. Kinder b5505c43a2 doc: tweaks to 0.3 release notes
Fix a few spelling and presentation errors.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-11-12 10:57:47 -08:00
Geoffroy Van Cutsem 1847497d8f Documentation: update GSG for release 0.3
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>
2018-11-12 10:43:03 -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
David B. Kinder f0ec5b26af doc: add Makefile option for singlehtml
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>
2018-11-12 09:47:12 -08:00
Xie, nanlin aa36138151 Doc: update new known issues and features based into v0.3 release note
Signed-off-by: Xie, nanlin <nanlin.xie@intel.com>
2018-11-12 17:24:57 +08:00
David B. Kinder cb41e08006 doc: fix GSG version number typo
Update to NUC GSG had a version number typ0

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-11-10 11:21:02 -08:00
ailin,yang 81cf2b6cf1 Doc: update doc to support V0.3 release
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>
2018-11-10 11:14:29 -08:00
David B. Kinder d8d164c6dd doc: release notes for 0.3
Update release notes and version selector for 0.3 release

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-11-09 09:51:28 -08:00
Xie, nanlin 76c8ff94de doc: Add v0.3 release note
Signed-off-by: Xie, nanlin <nanlin.xie@intel.com>
2018-11-09 09:13:58 -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
David B. Kinder 1d96ce5fb7 doc: add doyxgen alias for easy reST inclusion
Tracked-on: #1595

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-11-03 10:44:21 -07: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
Geoffroy Van Cutsem 469496311c Documentation: add 'make' to GSG and expand PATH for `sphinx-build`
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>
2018-11-02 16:45:58 -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
David B. Kinder a86248ecd2 doc: hide doxygen duplicate definition warnings
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>
2018-11-01 20:55:11 -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 390cc67804 doc: tweak doxygen/known-issues handling
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>
2018-10-31 09:13:36 -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
Junjie Mao b9d54f4ab3 kconfig: support board-specific defconfig
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>
2018-10-30 10:49:12 +08: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
Xinyun Liu e141150e4c doc: Fix AcrnGT broken API doc due to kernel upgrade
* interface name changed
* missing kernel doc comment in kernel source code

Tracked-On: #1511

Signed-off-by: Xinyun Liu <xinyun.liu@intel.com>
2018-10-29 09:20:43 -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
Geoffroy Van Cutsem d6523964ee Documentation: tweak 'partition mode' tutorial
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>
2018-10-26 15:06:20 -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 6dffef12d9 doc: filter error exit status incorrect
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>
2018-10-25 13:38:11 -07:00