Issue with Jailhouse hypervisor Guest/Inmate os Login failure for i.MX8MQ

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Issue with Jailhouse hypervisor Guest/Inmate os Login failure for i.MX8MQ

1,208 Views
sumiteca09
Contributor II

We have successfully enabled the Jailhouse hypervisor and launched a minimal Linux guest (non-root cell) on the NXP i.MX8MQ EVK platform using the Yocto-based 5.15 Kirkstone release

 

1) Jailhouse module loaded and hypervisor successfully enabled
2) Memory reserved for hypervisor via U-Boot
3) linux-inmate.cell created 
4) Guest Linux kernel and rootfs booted in the non-root cell
5) Log messages confirm that the Linux inmate boots up and starts serial getty on ttymxc1:
Started Serial Getty on ttymxc1

 

Current Issue: Console Login Failure on Guest OS (Image Attached)
-----------------------------------------------------
Although the guest Linux is running and getty is started on /dev/ttymxc1, keyboard input and mouse input (via UART) is not working.
However, input/output works fine on ttymxc0 (used by the root cell).

Please provide solution

Labels (1)
0 Kudos
Reply
3 Replies

968 Views
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hi @sumiteca09 

Please attach image here.

Best Regards,
Zhiming

0 Kudos
Reply

947 Views
sumiteca09
Contributor II

We followed the Rev. LF5.15.71_2.2.0 — 16 December 2022 i.MX Yocto Project User’s Guide and completed the following steps:

 

1. Installed the required host packages
2. Set up the Repo utility
3. Performed the Yocto Project setup
------------------------------------------
$ mkdir imx-yocto-bsp
$ cd imx-yocto-bsp
$ repo init -u https://github.com/nxp-imx/imx-manifest -b imx-linux-kirkstone -m imx-5.15.71-2.2.0.xml
$ repo sync

 

4. Built the images
---------------------
$ DISTRO=fsl-imx-wayland MACHINE=imx8mqevk source imx-setup-release.sh -b build

 

$ bitbake -k imx-image-full (GUI full image)

 

$ bitbake -k fsl-image-machine-test (minimal image)

 

We built two images: one minimal Linux image and one GUI-based image. The minimal image was flashed to the eMMC, while the GUI image was flashed to an SD card.

 

Steps followed to bringup jailhouse hypervisor
------------------------------------------------
1) Boot SD card image & interrupt at u-boot and ran the command ‘run jh_mmcboot’.

 

2) Once image is up, Loaded jailhouse kernel object
  $ modprobe jailhouse

3) Enable jailhouse hypervisor
  $ jailhouse enable /usr/share/jailhouse/cells/imx8mq.cell

4) Check if imx8mq cell created & running by below command
  $ jailhouse cell list

5) $ export PATH=$PATH:/usr/share/jailhouse/tools/

6) Open other serial terminal with /dev/ttyUSB1 for non-root linux. Run below command to start linux cell with image, dtb & mmcblk device of emmc.
  $ jailhouse cell linux /usr/share/jailhouse/cells/imx8mq-linux-demo.cell /run/media/boot-mmcblk1p1/Image -d /run/media/boot-mmcblk1p1/imx8mq-evk-inmate.dtb -c "clk_ignore_unused console=ttymxc1,115200 earlycon=ec_imx6q,0x30860000,115200 root=/dev/mmcblk2p2 rootwait rw"

7) Now 2nd image of emmc will bootup up in another console (/dev/ttyUSB1).

 

So, we have 2 images up in imx8mq-evk at the same time.


Note:- 

The sizes of both the GUI and core minimal images are around 2GB. As it's likely not possible to upload files of this size here due to limitations, please let us know if there's any shared drive or link available from your side. We can upload the images there instead.

 

0 Kudos
Reply

925 Views
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hi @sumiteca09 

Here is command for uart2(0x30890000, ttymxc0).

jailhouse cell linux /usr/share/jailhouse/cells/imx8mq-linux-demo.cell /run/media/boot-mmcblk1p1/Image -d /run/media/boot-mmcblk1p1/imx8mq-evk-inmate.dtb -c "clk_ignore_unused console=ttymxc0,115200 earlycon=ec_imx6q,0x30890000,1115200 root=/dev/mmcblk2p2 rootwait rw"

If you use below command, the log will show at current console.

jailhouse cell linux /usr/share/jailhouse/cells/imx8mq-linux-demo.cell /run/media/boot-mmcblk1p1/Image -d /run/media/boot-mmcblk1p1/imx8mq-evk-inmate.dtb -c "clk_ignore_unused console=ttymxc1,115200 earlycon=ec_imx6q,0x30860000,1115200 root=/dev/mmcblk2p2 rootwait rw"

Please try to use core-image-base in emmc, i don' t see login issue.

And why you need /dev/ttyUSB1? the console you used in jailhouse is ttymxc1.

Best Regards,
Zhiming

0 Kudos
Reply