Skip to content

Commit

Permalink
Rename manifest attribute supportsExternalXcpService to supportsDirec…
Browse files Browse the repository at this point in the history
…tMemoryAccessViaA2L (Issue modelica#15)
  • Loading branch information
PTaeuberDS committed Jun 9, 2023
1 parent 1dbc93a commit f468b13
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 12 deletions.
2 changes: 1 addition & 1 deletion docs/examples/fmi_ls_xcp_manifest_example.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@
fmi-ls:fmi-ls-version="1.0.0"
fmi-ls:fmi-ls-description="Layered Standard for XCP"
containsXcpService="true"
supportsExternalXcpService="true"/>
supportsDirectMemoryAccessViaA2L="true"/>
15 changes: 7 additions & 8 deletions docs/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,7 @@
:toclevels: 5
:xrefstyle: short
:docinfo: shared
:docinfodir: docs
:stylesheet: docs/fmi-spec.css
:stylesheet: fmi-spec.css
:stem: latexmath
:source-highlighter: highlightjs
:nofooter:
Expand Down Expand Up @@ -128,12 +127,12 @@ This layered standard defines additional capability flags in the layered standar
|`containsXcpService`
|
| `true` or `false`
| If `true`, the FMU contains its own XCP slave implementation. See <<FMU with Integrated XCP Service>>.
| If `true`, the FMU provides its own XCP slave implementation. See <<FMU with Integrated XCP Service>>.

|`supportsExternalXcpService`
|`supportsDirectMemoryAccessViaA2L`
|
| `true` or `false`
| If `true`, the FMU allows the importer to access its memory via an external XCP service. See <<External XCP Service>>.
| If `true`, the FMU allows direct memory access from the outside via its A2L file. In most cases this mechanism will be used by an external XCP service provided by the importer. See <<External XCP Service>>.

|====

Expand Down Expand Up @@ -362,18 +361,18 @@ In the latter case, the importer or an external A2L tool is responsible for dete
These addresses must be relative to the base address of the built FMU binary.
Refer to the https://www.asam.net/standards/detail/mcd-2-mc/[ASAM MCD-2 MC] standard for more information on symbol links and automatic address update.

_[Note that, if the FMU exporter does not use real addresses in the A2L file in the binary FMU case, or does not provide symbol links in the source code FMU case, attribute `supportsExternalXcpService` in the `fmi-ls-manifest.xml` file must be set to `false` (see <<address-resolution-external>>).]_
_[Note that, if the FMU exporter does not use real addresses in the A2L file in the binary FMU case, or does not provide symbol links in the source code FMU case, attribute `supportsDirectMemoryAccessViaA2L` in the `fmi-ls-manifest.xml` file must be set to `false` (see <<address-resolution-external>>).]_

== External XCP Service

An FMU might support XCP but does not bring along its own XCP slave implementation (attribute `containsXcpService = false` in the `fmi-ls-manifest.xml` file).
In this case the FMU importer must provide its own implementation of an XCP slave.

It is also possible that the FMU does contain an internal XCP slave implementation but additionally allows the importer to access the memory of the virtual ECU with an external XCP service (attribute `supportsExternalXcpService = true`).
It is also possible that the FMU does contain an internal XCP slave implementation but additionally allows the importer to access the memory of the virtual ECU with an external XCP service (attribute `supportsDirectMemoryAccessViaA2L = true`).
In this case it is the choice of the importer whether to use the FMU internal XCP slave or its own implementation.
See <<starting-internal-xcp-service>> on how to deactivate the internal XCP service.

_[Note that the FMU must set at least one of the attributes `containsXcpService` or `supportsExternalXcpService` to `true` to make use of this layered standard.]_
_[Note that the FMU must set at least one of the attributes `containsXcpService` or `supportsDirectMemoryAccessViaA2L` to `true` to make use of this layered standard.]_

Although the XCP behavior for an internal and an external service is the same from the perspective of the XCP master, the operation of the external XCP service differs from the internal one in some points that are described in this chapter.

Expand Down
6 changes: 3 additions & 3 deletions schema/fmi3LayeredStandardXcpManifest.xsd
Original file line number Diff line number Diff line change
Expand Up @@ -42,14 +42,14 @@ ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
<xs:attribute name="containsXcpService" type="xs:boolean" use="required">
<xs:annotation>
<xs:documentation xml:lang="en">
If true, the FMU contains an own XCP slave implementation.
If true, the FMU provides its own XCP slave implementation.
</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="supportsExternalXcpService" type="xs:boolean" use="required">
<xs:attribute name="supportsDirectMemoryAccessViaA2L" type="xs:boolean" use="required">
<xs:annotation>
<xs:documentation xml:lang="en">
If true, the FMU allows the importer to access its memory via an external XCP service.
If true, the FMU allows direct memory access from the outside via its A2L file. In most cases this mechanism will be used by an external XCP service provided by the importer.
</xs:documentation>
</xs:annotation>
</xs:attribute>
Expand Down

0 comments on commit f468b13

Please sign in to comment.