Skip to content

Add Linux app helpers to map physical to virtual addresses

Cristian Marussi requested to merge fix_phys_to_virt_FCs into master

Currently while running the ACS tests as a Linux app the test suite segfaults during FastChannels testcases because it tries to access directly the physical memory addresses describing the FCs: this works fine in the baremetal setup but it cannot be done in Linux virtual memory world.

Add a couple of helpers to map physical to virtual addresses when running in Linux and patch accordingly the relevant testcases: the behavior is left instead unchanged in baremetal where physical addresses can be used directly.

A successful baremetal CI testrun with this series included is at: https://jenkins.oss.arm.com/job/scp-v2-cmake-tests-scmi/3939/

Tested manually under Linux setup on my local JUNO.

NOTE THAT: even though the change does not affect at runtime the baremetal setup (that is run in CI) it DOES BREAK the compilation of CI mobile platforms (sgm775 sgm776) due to some BL31 segment overflow. (see https://jenkins.oss.arm.com/job/scp-v2-cmake-tests-scmi/3905/)

In order to avoid this, I patched the supporting scp-framework linker definitions in the branch v2.10.0-mobile so as to increase the MAX BL31 size by 4kb with the following tentative patch:

https://gerrit.oss.arm.com/gitweb?p=scp/test-framework.git;a=commit;h=ba1b735d51fbc6cc5d1f775630b05fb8180afe04

Not sure which is the correct way to merge the above scp-framework change BUT, in the hypothesis is fine, it has go in BEFORE this series is merged to avoid breaking the internal CI compilation of sgm775/776.

Edited by Cristian Marussi

Merge request reports