2.2.23. DVM messages

DVM default values

Table 2.2 lists the default values for the AMBA-PV extension attributes for DVM:

Table 2.2. DVM default values

AttributeDefault valueDefault set status
VMID0false
ASID0false
Virtual Index0false
Completionfalse-
Message typeAMBA_PV_TLB_INVALIDATE-
Operating systemAMBA_PV_HYPERVISOR_OR_GUEST-
SecurityAMBA_PV_SECURE_AND_NON_SECURE-
Additional address0false
DVM transaction0-

DVM VMID attribute

  • The VMID attribute defines the Virtual Machine Identifier for some DVM operations.

  • The method is_dvm_vmid_set() returns true if the VMID attribute has been set. If the VMID attribute has not been set then the VMID attribute value should not be used.

  • The method get_dvm_vmid() returns the current value of the VMID attribute. The method set_dvm_vmid() sets the value of the VMID attribute.

  • By default the VMID attribute is not set and the default value of the VMID attribute is 0.

DVM ASID attribute

  • The ASID attribute defines the Address Space Identifier for some DVM operations.

  • The method is_dvm_asid_set() returns true if the ASID attribute has been set. If the ASID attribute has not been set then the ASID attribute value should not be used.

  • The method get_dvm_asid() returns the current value of the ASID attribute. The method set_dvm_asid() sets the value of the ASID attribute.

  • By default the ASID attribute is not set and the default value of the ASID attribute is 0.

DVM Virtual Index attribute

  • The Virtual Index attribute can be used as part of the physical address by physical instruction cache invalidate DVM messages.

  • The method is_dvm_virtual_index_set() returns true if the Virtual Index attribute has been set. If the Virtual Index attribute has not been set then the Virtual Index attribute value should not be used.

  • The method get_dvm_virtual_index() returns the current value of the Virtual_index attribute. The method set_dvm_virtual_index() sets the value of the Virtual Index attribute.

  • By default the Virtual Index attribute is not set and the default value of the Virtual Index attribute is 0.

DVM Completion attribute

  • The Completion attribute identifies whether completion is required for DVM Sync messages.

  • The method is_dvm_completion_set() returns true if the Completion attribute has been set. The method set_dvm_completion() sets the value of the completion attribute.

  • By default the Completion attribute has the value false.

DVM Message type attribute

  • The Message type attribute specifies the required DVM operation.

  • The method get_dvm_message_type() returns the current value of the Message type attribute. The method set_dvm_message_type() sets the value of the message type attribute.

  • By default the Message type attribute has the value AMBA_PV_TLB_INVALIDATE.

DVM Operating system attribute

  • The Operating system attribute specifies the operating system that the DVM operation applies to.

  • The method get_dvm_os() returns the current value of the Operating system attribute. The method set_dvm_os() sets the value of the operating system attribute.

  • By default the Operating system attribute has the value AMBA_PV_HYPERVISOR_OR_GUEST.

DVM Security attribute

  • The Security attribute specifies how the DVM operation applies to the secure and non-secure worlds.

  • The method get_dvm_security() returns the current value of the security attribute. The method set_dvm_security() sets the value of the security attribute.

  • By default the security attribute has the value AMBA_PV_SECURE_AND_NON_SECURE.

DVM Additional address attribute

  • The Additional address attribute defines the additional address required by some DVM operations.

  • The method is_dvm_additional_address_set() returns true if the Additional address attribute has been set. If the Additional address attribute has not been set then the Additional address attribute value should not be used.

  • The method get_dvm_additional_address() returns the current value of the Additional address attribute. The method set_dvm_additional_address() sets the value of the Additional address attribute.

  • By default the Additional address attribute is not set and the default value of the Additional address attribute is 0.

DVM transaction encoding

  • For ACE buses the DVM attributes are packed and encoded into the least significant 32-bits of the address channel.

  • The method get_dvm_transaction() returns the current value of the VMID, ASID, Virtual Index, Completion, Message type, Operating system and Security attributes as they would be packed and encoded on the address channel.

  • The method set_dvm_transaction() sets the value of the VMID, ASID, Virtual Index, Completion, Message type, Operating system and Security attributes using a single 32-bit value encoded as the attributes would be packed and encoded on the address channel.

Copyright © 2009-2013 ARM. All rights reserved.ARM DUI 0455H
Non-ConfidentialID112213