mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2025-09-16 06:19:24 +00:00
doc: copy editing in the hld topics
Signed-off-by: Benjamin Fitch <benjamin.fitch@intel.com>
This commit is contained in:
@@ -4,11 +4,11 @@ AHCI Virtualization in Device Model
|
||||
###################################
|
||||
|
||||
AHCI (Advanced Host Controller Interface) is a hardware mechanism
|
||||
that allows software to communicate with Serial ATA devices. AHCI HBA
|
||||
that enables software to communicate with Serial ATA devices. AHCI HBA
|
||||
(host bus adapters) is a PCI class device that acts as a data movement
|
||||
engine between system memory and Serial ATA devices. The ACPI HBA in
|
||||
ACRN supports both ATA and ATAPI devices. The architecture is shown in
|
||||
the below diagram.
|
||||
the diagram below:
|
||||
|
||||
.. figure:: images/ahci-image1.png
|
||||
:align: center
|
||||
@@ -16,17 +16,17 @@ the below diagram.
|
||||
:name: achi-device
|
||||
|
||||
HBA is registered to the PCI system with device id 0x2821 and vendor id
|
||||
0x8086. Its memory registers are mapped in BAR 5. It only supports 6
|
||||
ports (refer to ICH8 AHCI). AHCI driver in the User VM can access HBA in DM
|
||||
through the PCI BAR. And HBA can inject MSI interrupts through the PCI
|
||||
0x8086. Its memory registers are mapped in BAR 5. It supports only six
|
||||
ports (refer to ICH8 AHCI). The AHCI driver in the User VM can access HBA in
|
||||
DM through the PCI BAR, and HBA can inject MSI interrupts through the PCI
|
||||
framework.
|
||||
|
||||
When the application in the User VM reads data from /dev/sda, the request will
|
||||
send through the AHCI driver and then the PCI driver. The User VM will trap to
|
||||
hypervisor, and hypervisor dispatch the request to DM. According to the
|
||||
offset in the BAR, the request will dispatch to port control handler.
|
||||
Then the request is parse to a block I/O request which can be processed
|
||||
by Block backend model.
|
||||
be sent through the AHCI driver and then the PCI driver. The Hypervisor will
|
||||
trap the request from the User VM and dispatch it to the DM. According to the
|
||||
offset in the BAR, the request will be dispatched to the port control handler.
|
||||
Then the request is parsed to a block I/O request which can be processed by
|
||||
the Block backend model.
|
||||
|
||||
Usage:
|
||||
|
||||
@@ -34,7 +34,7 @@ Usage:
|
||||
|
||||
Type: 'hd' and 'cd' are available.
|
||||
|
||||
Filepath: the path for the backend file, could be a partition or a
|
||||
Filepath: the path for the backend file; could be a partition or a
|
||||
regular file.
|
||||
|
||||
For example,
|
||||
|
Reference in New Issue
Block a user