xref: /cloud-hypervisor/scripts/prepare_vdpa.sh (revision 5e9886bba45d442c80649ff9387f625acf4a4ab5)
191fe48d5SPhilipp Schuster#!/usr/bin/env bash
2d1d55f16SSebastien Boeufset -x
3d1d55f16SSebastien Boeuf
4f8f0b40eSRob Bradfordsudo apt install -y libncurses-dev gawk flex bison openssl libssl-dev dkms libelf-dev libudev-dev libpci-dev libiberty-dev autoconf git make dpkg-dev libmnl-dev pkg-config iproute2
5d1d55f16SSebastien Boeufsudo sed -i -- 's/# deb-src/deb-src/g' /etc/apt/sources.list
6d1d55f16SSebastien Boeufsudo apt update
72b2d0065SRuslan Mstoiapt-get source linux-image-unsigned-"$(uname -r)"
82b2d0065SRuslan Mstoipushd linux-azure*/drivers/vdpa/vdpa_sim/ || exit
9*5e9886bbSRuslan Mstoi# REUSE-IgnoreStart
10d1d55f16SSebastien Boeufcat <<'EOF' >Makefile
11d1d55f16SSebastien Boeuf# SPDX-License-Identifier: GPL-2.0
12d1d55f16SSebastien Boeufobj-m += vdpa_sim.o
13d1d55f16SSebastien Boeufobj-m += vdpa_sim_net.o
14d1d55f16SSebastien Boeufobj-m += vdpa_sim_blk.o
15d1d55f16SSebastien BoeufEOF
16*5e9886bbSRuslan Mstoi# REUSE-IgnoreEnd
172b2d0065SRuslan Mstoimake -C /lib/modules/"$(uname -r)"/build M="$PWD"
182b2d0065SRuslan Mstoisudo make -C /lib/modules/"$(uname -r)"/build M="$PWD" modules_install
192b2d0065SRuslan Mstoipopd || exit
20d1d55f16SSebastien Boeufsudo depmod -a
21d1d55f16SSebastien Boeufsudo modprobe vdpa
22d1d55f16SSebastien Boeufsudo modprobe vhost_vdpa
23d1d55f16SSebastien Boeufsudo modprobe vdpa_sim
24d1d55f16SSebastien Boeufsudo modprobe vdpa_sim_blk
25d1d55f16SSebastien Boeufsudo modprobe vdpa_sim_net
26d1d55f16SSebastien Boeuf# Create /dev/vhost-vdpa-0
27d1d55f16SSebastien Boeufsudo vdpa dev add name vdpa-blk1 mgmtdev vdpasim_blk
28d1d55f16SSebastien Boeuf# Create /dev/vhost-vdpa-1
29d1d55f16SSebastien Boeufsudo vdpa dev add name vdpa-blk2 mgmtdev vdpasim_blk
30d1d55f16SSebastien Boeuf# Create /dev/vhost-vdpa-2
31d1d55f16SSebastien Boeufsudo vdpa dev add name vdpa-net1 mgmtdev vdpasim_net
32d1d55f16SSebastien Boeufsudo chmod 660 /dev/vhost-vdpa-0
33d1d55f16SSebastien Boeufsudo chmod 660 /dev/vhost-vdpa-1
34d1d55f16SSebastien Boeufsudo chmod 660 /dev/vhost-vdpa-2
35d1d55f16SSebastien Boeufvdpa dev show -jp
36