@@ -65,18 +65,20 @@ echo "0000:00:0f.0" > /sys/bus/pci/drivers/pci-stub/bind
65
65
boot_ipu_option=" "
66
66
# for ipu passthrough - ipu device 0:3.0
67
67
if [ -d " /sys/bus/pci/devices/0000:00:03.0" ]; then
68
- echo " 8086 5a88" > /sys/bus/pci/drivers/pci-stub/new_id
69
- echo " 0000:00:03.0" > /sys/bus/pci/devices/0000:00:03.0/driver/unbind
70
- echo " 0000:00:03.0" > /sys/bus/pci/drivers/pci-stub/bind
71
- boot_ipu_option=" $boot_ipu_option " " -s 12,passthru,0/3/0 "
68
+ echo " 8086 5a88" > /sys/bus/pci/drivers/pci-stub/new_id
69
+ echo " 0000:00:03.0" > /sys/bus/pci/devices/0000:00:03.0/driver/unbind
70
+ echo " 0000:00:03.0" > /sys/bus/pci/drivers/pci-stub/bind
71
+ boot_ipu_option=" $boot_ipu_option " " -s 12,passthru,0/3/0 "
72
72
fi
73
73
74
74
# for ipu passthrough - ipu related i2c 0:16.0
75
+ # please use virtual slot 22 for i2c 0:16.0 to make sure that the i2c controller
76
+ # could get the same virtaul BDF as physical BDF
75
77
if [ -d " /sys/bus/pci/devices/0000:00:16.0" ]; then
76
- echo " 8086 5aac" > /sys/bus/pci/drivers/pci-stub/new_id
77
- echo " 0000:00:16.0" > /sys/bus/pci/devices/0000:00:16.0/driver/unbind
78
- echo " 0000:00:16.0" > /sys/bus/pci/drivers/pci-stub/bind
79
- boot_ipu_option=" $boot_ipu_option " " -s 22,passthru,0/16/0 "
78
+ echo " 8086 5aac" > /sys/bus/pci/drivers/pci-stub/new_id
79
+ echo " 0000:00:16.0" > /sys/bus/pci/devices/0000:00:16.0/driver/unbind
80
+ echo " 0000:00:16.0" > /sys/bus/pci/drivers/pci-stub/bind
81
+ boot_ipu_option=" $boot_ipu_option " " -s 22,passthru,0/16/0 "
80
82
fi
81
83
82
84
# for sd card passthrough - SDXC/MMC Host Controller 00:1b.0
@@ -227,6 +229,25 @@ echo "8086 5abc" > /sys/bus/pci/drivers/pci-stub/new_id
227
229
echo " 0000:00:18.0" > /sys/bus/pci/devices/0000:00:18.0/driver/unbind
228
230
echo " 0000:00:18.0" > /sys/bus/pci/drivers/pci-stub/bind
229
231
232
+ boot_ipu_option=" "
233
+ # for ipu passthrough - ipu device 0:3.0
234
+ if [ -d " /sys/bus/pci/devices/0000:00:03.0" ]; then
235
+ echo " 8086 5a88" > /sys/bus/pci/drivers/pci-stub/new_id
236
+ echo " 0000:00:03.0" > /sys/bus/pci/devices/0000:00:03.0/driver/unbind
237
+ echo " 0000:00:03.0" > /sys/bus/pci/drivers/pci-stub/bind
238
+ boot_ipu_option=" $boot_ipu_option " " -s 12,passthru,0/3/0 "
239
+ fi
240
+
241
+ # for ipu passthrough - ipu related i2c 0:16.0
242
+ # please use virtual slot 22 for i2c 0:16.0 to make sure that the i2c controller
243
+ # could get the same virtaul BDF as physical BDF
244
+ if [ -d " /sys/bus/pci/devices/0000:00:16.0" ]; then
245
+ echo " 8086 5aac" > /sys/bus/pci/drivers/pci-stub/new_id
246
+ echo " 0000:00:16.0" > /sys/bus/pci/devices/0000:00:16.0/driver/unbind
247
+ echo " 0000:00:16.0" > /sys/bus/pci/drivers/pci-stub/bind
248
+ boot_ipu_option=" $boot_ipu_option " " -s 22,passthru,0/16/0 "
249
+ fi
250
+
230
251
# for memsize setting
231
252
memsize=` cat /proc/meminfo| head -n 1| awk ' {print $2}' `
232
253
if [ $memsize -gt 4000000 ]; then
301
322
-s 27,passthru,0/1b/0 \
302
323
-s 24,passthru,0/18/0 \
303
324
-s 18,passthru,4/0/0 \
325
+ $boot_ipu_option \
304
326
-i /run/acrn/ioc_$vm_name ,0x20 \
305
327
-l com2,/run/acrn/ioc_$vm_name \
306
328
-M \
0 commit comments