Skip to content

ST AMP virtio‐mmio demo

Arnaud Pouliquen edited this page Apr 12, 2024 · 7 revisions

Table of Contents

Introduction

This page provide information about demonstrators on STM32MP157-DK2 board to implement virtio-2C over virtio MMIO in AMP system.

A document related to the associated study is available here: Virtio MMIO for coprocessor study

Demo 1: Zephyr on Cortex-M4 simulates 2 RAMs connected on an I2C

Requested Hardware

stm32mp157F-DK2 board

Related source code

Build step

Refer to System Reference Samples and Demos on STM32MP157C/F-DK2 board to build the image for thr stm32mp157F-DK2 board updating the source code with references provided above.

The Linux kernel image should be updated to include Linux Kernel staging PR 1

Demos

Refer to examples/zephyr/virtio_i2c_ram/README.rst

Demo 2: Sharing an I2C physical bus between the Cortex-A7 and the Cortex-M4

  • The Cortex-M4 has physical I2C controller w/ bus and devices.
  • The Cortex-M4 bridges the virtual I2C to the physical bus allowing Linux on Cortex-A7 to access it as well.

Requested Hardware

  • STM32MP115c-dk2 board
  • Nucleo shield ISK01A2
  • 2 SSD1306 displays connected on I2C arduino connectors:
    • display @0x3C: managed by Zephyr
    • display @0x3D: managed by Remote processor

Related source code

Build step

Refer to System Reference Samples and Demos on STM32MP157C/F-DK2 board to build the image for the stm32mp157F-DK2 board, updating the code with updating the source code with references provided above

Demos

Refer to https://github.com/arnopo/zephyr_stm32mp1/tree/virtio_mmio_i2c/samples/subsys/ipc/openamp_virtio_i2c On Lunix an application can be installed to play some demo on display connected on the I2C bus at address 0x3D

Clone this wiki locally