This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Problems with installing Linux Distributions on Armv-A Base AEM FVP Platforms

Hi, I followed the official document [Install and boot a Linux distribution on Armv-A Base AEM FVP Platforms](https://gitlab.arm.com/arm-reference-solutions/arm-reference-solutions-docs/-/blob/master/docs/aemfvp-a/distro-boot.rst) to install a Debian distribution on AEM FVP.

However, the booting procedure failed at "Detecting hardware to find CD-ROM drivers" -> "No common CD-ROM drive was detected".

I'd like to ask what is the problem?

The following is my FVP command:

```

Executing Model Command:
./Base_RevC_AEMvA_pkg/models/Linux64_GCC-9.3/FVP_Base_RevC-2xAEMvA -C pctl.startup=0.0.0.0 -C bp.secure_memory=0 -C cluster0.NUM_CORES=4 -C cluster1.NUM_CORES=4 -C cache_state_modelled=0 -C bp.pl011_uart0.untimed_fifos=1 -C bp.pl011_uart0.unbuffered_output=1 -C bp.pl011_uart0.out_file=aemfvp-a/uart0-1666771315864906873.log -C bp.pl011_uart1.out_file=aemfvp-a/uart1-1666771315864906873.log -C bp.secureflashloader.fname=output/aemfvp-a/aemfvp-a/tf-bl1.bin -C bp.flashloader0.fname=output/aemfvp-a/aemfvp-a/fip-uefi.bin -C bp.ve_sysregs.mmbSiteDefault=0 -C bp.ve_sysregs.exit_on_shutdown=1 -C bp.virtioblockdevice.image_path=/home/chuqi/Projects/test-proj/third-parties/debian-10.12.0-arm64-netinst.iso -C bp.hostbridge.interfaceName=tap0 -C bp.smsc_91c111.enabled=true -C bp.smsc_91c111.mac_address=00:02:F7:EB:88:9E -C pci.ahci_pci.ahci.image_path=/home/chuqi/Projects/test-proj/third-parties/aemfvp-a_workspace/satadisk/1283.satadisk
terminal_0: Listening for serial connection on port 5000
terminal_1: Listening for serial connection on port 5001
terminal_2: Listening for serial connection on port 5002
terminal_3: Listening for serial connection on port 5003

Info: FVP_Base_RevC_2xAEMvA: FVP_Base_RevC_2xAEMvA.bp.flashloader0: FlashLoader: Loaded 2681 kB from file 'output/aemfvp-a/aemfvp-a/fip-uefi.bin'

Info: FVP_Base_RevC_2xAEMvA: FVP_Base_RevC_2xAEMvA.bp.secureflashloader: FlashLoader: Loaded 36 kB from file 'output/aemfvp-a/aemfvp-a/tf-bl1.bin'

Warning: FVP_Base_RevC_2xAEMvA: ErrorBlock: Simulator only error message was sent by 0:0.0 but not acknowledged by Root Complex
In file: (unknown):0
In process: FVP_Base_RevC_2xAEMvA.thread_p_15 @ 50521100040 ns

Warning: FVP_Base_RevC_2xAEMvA: Virtio device failed to read memory at 0x00000008f6305002
In file: (unknown):0
In process: FVP_Base_RevC_2xAEMvA.thread_p_15 @ 50521100040 ns
...

```

  • First, since your question is related to simulation, the SoC Design and Simulation forum (https://community.arm.com/support-forums/f/soc-design-and-simulation-forum) would be the best place to post.


    1. SW stack version vs FVP version


    As it is often the case in all open source software (OSS), the master branch is a development branch so it would not be the best one to be used so instead you should use a specific version. For the AEMFVP-A sw stack, it's the AEMFVP-A-2021.09.20 (see the link below).

    https://gitlab.arm.com/arm-reference-solutions/arm-reference-solutions-docs/-/blob/AEMFVP-A-2021.09.20/docs/aemfvp-a/user-guide.rst


    And, as each version of sw stack is intended to work with a specific FVP version, finding a working version combination is the next thing and you can find it in the user guide above and it's FVP version 11.15.18 .


    I would suggest you try the combination of AEMFVP-A-2021.09.20 sw stack and FVP_Base_RevC-2xAEMvA version 11.15.18 .

  • 2. Linux distro

    https://gitlab.arm.com/arm-reference-solutions/arm-reference-solutions-docs/-/blob/AEMFVP-A-2021.09.20/docs/aemfvp-a/distro-boot.rst


    The following Linux distro versions are mentioned in the link above so I guess these versions have been tested.

    • Fedora-34-1.2
    • Ubuntu-20.04.1
    • Debian-11.0.0


    In which one of them are you seeing the CD-ROM driver issue? Is the same issue seen in other Linux distro listed above as well?

  • After checking that release version and FVP version matching each other, please check one more thing - do you follow the "Debian Distribution installation" part of the guide? Please note that the ISO file is attached to FVP as vda (virtual block device). When you start the installer, it will show you an error "installation media is not found", as it expects this ISO loaded from cdrom. You need to select "no" when it suggests finding necessary modules from USB and specify /dev/vda instead of /dev/cdrom.

  • I am having similar issues as described here and I am trying to set everything up as per the user guide and versions specified.  With this said, I cannot find any means to download an older version of the FVP Base Rev C model (11.15.18) - only the latest version is readily accessible.

    So, is there a link or some other means to download access to previous versions of the FVP besides the latest (11.19.14)?

  • Sorry - meant to provide a few more details.

    I set-up a Ubuntu 18.04 build machine and installed / built the AEMFVP-A software stack as documented in the referenced user guide above.

    As long as I don't try to specify a PCI virtio block device image (via model param like -C pci.pcivirtioblockdevice0.image_path=/home/dand/aem-fvp/disk0.img), I am able to boot a busybox image with no problem.

    As soon as I add this parameter and try to utilize a PCIe ecam virtio-block end-point, I get the following during boot:

    [ 1.431436] Loading compiled-in X.509 certificates
    [ 1.433888] virtio-pci 0000:00:00.0: Adding to iommu group 1
    [ 1.434674] virtio-pci 0000:00:00.0: enabling device (0000 -> 0002)
    [ 1.434836] virtio-pci 0000:00:00.0: virtio_pci: leaving for legacy driver
    [ 1.437541] virtio_blk virtio3: [vdb] 65536 512-byte logical blocks (33.6 MB/32.0 MiB)
    [ 1.440936] arm-smmu-v3 2b400000.iommu: event 0x10 received:
    [ 1.441064] arm-smmu-v3 2b400000.iommu: 0x00000000fffff010
    [ 1.441177] arm-smmu-v3 2b400000.iommu: 0x0000020800000000
    [ 1.441263] arm-smmu-v3 2b400000.iommu: 0x0000000881639000
    [ 1.441350] arm-smmu-v3 2b400000.iommu: 0x0000000000000000
    [ 1.441436] arm-smmu-v3 2b400000.iommu: event 0x10 received:
    [ 1.441555] arm-smmu-v3 2b400000.iommu: 0x00000000fffff010
    [ 1.441697] arm-smmu-v3 2b400000.iommu: 0x0000020800000000
    [ 1.441801] arm-smmu-v3 2b400000.iommu: 0x0000000881639002
    [ 1.441883] arm-smmu-v3 2b400000.iommu: 0x0000000000000000

    Linux boot hangs at this point and never completes.

    At the same time this happens, I see the FVP output the following:

    Warning: FVP_Base_RevC_2xAEMvA: ErrorBlock: Simulator only error message was sent by 0:0.0 but not acknowledged by Root Complex
    In file: (unknown):0
    In process: FVP_Base_RevC_2xAEMvA.thread_p_14 @ 5982600050 ns
    
    
    Warning: FVP_Base_RevC_2xAEMvA: Virtio device failed to read memory at 0x0000000881639002
    In file: (unknown):0
    In process: FVP_Base_RevC_2xAEMvA.thread_p_14 @ 5982600050 ns
    
    
    Warning: FVP_Base_RevC_2xAEMvA: ErrorBlock: Simulator only error message was sent by 0:0.0 but not acknowledged by Root Complex
    In file: (unknown):0
    In process: FVP_Base_RevC_2xAEMvA.thread_p_14 @ 5982600050 ns
    
    
    Warning: FVP_Base_RevC_2xAEMvA: Virtio device failed to read memory at 0x0000000881639004
    In file: (unknown):0
    In process: FVP_Base_RevC_2xAEMvA.thread_p_14 @ 5982600050 ns

    Not certain why the SMMU event is occurring and how this might relate to the FVP thread failing to read memory on the host... guessing they are related?  The image file being used, in this case, is an ext4 image that is know to be good.

    So, the only thing I am not using that I can think might be causing this issue is the FVP version since I am using the latest and cannot download the older version specified.

    Thanks,
    Dan

  • The version 11.15.18 of the FVP Base RevC can be downloaded from this link.

  • Hi Dan,

    Can you please check a couple of things below?

    1. Do you use the release tag AEMFVP-A-2021.09.20 not the master?

    2. In which step of the flow, are you attempting to specify a PCI virtio block device image?

    3.Or, which distro are you attempting to install?

    4. If it's Debian, do you follow the "Debian Distribution installation" in the link below like Artem suggested?

    gitlab.arm.com/.../distro-boot.rst

    I haven't tried to install Debian before but I have successfully installed Ubuntu 20.04 to FVP_Base_RevC-2xAEMvA v11.15.18 before.

    The ISO media I used was this one.

    old-releases.ubuntu.com/.../ubuntu-20.04-live-server-arm64.iso

    I hope this helps.



    Kind regards,

    Toshi