This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

SK-AM62: Hypervisor AM62X SK-EVM

Part Number: SK-AM62
Other Parts Discussed in Thread: AM625

Hi

I have using sk-am62 e3 version sitara board. How to enable hypervisor.

Regards,

VJPANDI.

  • I have using sk-am62 e3 version sitara board. How to enable hypervisor.

    Please refer to the below "Jailhouse Hypervisor" section in the Linux SDK documentation:

    https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/09_00_00_03/exports/docs/linux/Foundational_Components/Hypervisor/Jailhouse.htm

    Note that the SDK download folder (https://www.ti.com/tool/PROCESSOR-SDK-AM62X) also provides a ready-to-use SD card image for experimentation with the Jailhouse hypervisor without you having to build anything manually.

    Regards, Andreas

  • Hi Andreas,

           Your sending link is error.attached the image below.

    Please refer to the below "Jailhouse Hypervisor" section in the Linux SDK documentation:

    https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/09_00_00_03/exports/docs/linux/Foundational_Components/Hypervisor/Jailhouse.htm

  • Your link also doesn't work. I found what's missing was the extension was wrong, it should be '.html', then it works. Probably a copy & paste error on my side.

    https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/09_00_00_03/exports/docs/linux/Foundational_Components/Hypervisor/Jailhouse.html

    Regards, Andreas

  • Hi Andreas,

     Jailhouse example is working fine. how to change custom image file i load and check some error is coming how to fix this error. I attached the screenshot below:

    Thanks Regards,

    Veerapandiyan V.

  • Ah ok I see. Looking at your error it looks like the kernel is not able to mount the rootfs, which is a common issue when things are not configured properly. What are you trying to use for your rootfs (how did you build that custom image?)

    The included linux-demo.sh example startup script expects loading a specifically-named ramdisk image out of the /boot partition from the SD card.

    1. Please double check the ramdisk image name in the linux-demo.sh script matches the ramdisk image you are trying to load
    2. The ramdisk image is expected to be in .cpio format. Can you double-check that you are in fact feeding it a cpio-formatted image? There are steps on how to create a cpio-formatted image documented in the "Overview" section of this E2E FAQ here: https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1176944/faq-linux-how-to-boot-sitara-am3x-am4x-am6x-devices-from-initramfs-cpio-archive-ram-disk

    Regards, Andreas

  • Hi Andreas,

    I trying so many times it 's showing error . I check internet connection also good. how to fix this error i attached the screenshot.

    Thanks Regards,

    Veerapandiyan V.

  • Could be your TFTP server or network is not setup correctly or has some issue.

    How large is the file you are trying to transfer?

    For testing purposes, can you try transferring a small file (just a couple of KB's)?

    Regards, Andreas

  • Hi Andreas,

    I referred this link https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1259528/faq-sk-am62-how-to-build-initramfs-into-kernel-image to generate kernal image

    Update kernel image to SD card

    - Create a bootable SD card using the WIC image provided in the SDK. Recommended to use tisdk-base-image-am62xx-evm.wic.xz because its size is smaller.
    - Mount the SD card to the Linux PC, assuming the mounting point is <SD-card-mounting-point>.
    - Copy kernel image to the boot/ folder in the SD card root partition:

    $ sudo cp board-support/linux-<version/arch/arm64/boot/Image <SD-card-mounting-point>/boot/Image-initramfs
    $ cd <SD-card-mounting-point>
    $ sudo ln -sf Image-initramfs Image

    this location i changed properly. and .cpio file also added previous .cpio file removing. After i change /usr/share/jailhouse/linux_demo.sh file edit to change the my cpio file name after i booting comming some error below:

    /usr/share/jailhouse/linux-demo.sh

    Initializing Jailhouse hypervisor v0.12 (324-ge57d1eff-dirty) on CPU 3
    Code location: 0x0000ffffc0200800
    Page pool usage after early setup: mem 39/993, remap 0/131072
    Initializing processors:
     CPU 3... OK
     CPU 0... OK
     CPU 2... OK
     CPU 1... OK
    Initializing unit: irqchip
    Initializing unit: ARM SMMU v3
    Initializing unit: ARM SMMU
    Initializing unit: PVU IOMMU
    Initializing unit: PCI
    Adding virtual PCI device 00:00.0 to cell "k3-am625-sk"
    Adding virtual PCI device 00:01.0 to cell "k3-am625-sk"
    Page pool usage after late setup: mem 76/993, remap 144/131072
    Activating hypervisor
    [   35.520515] pci-host-generic 76000000.pci: host bridge /pci@0 ranges:
    [   35.520553] pci-host-generic 76000000.pci:      MEM 0x0076100000..0x0076103fff -> 0x0076100000
    [   35.520717] pci-host-generic 76000000.pci: ECAM at [mem 0x76000000-0x760fffff] for [bus 00]
    [   35.520925] pci-host-generic 76000000.pci: PCI host bridge to bus 0001:00
    [   35.520936] pci_bus 0001:00: root bus resource [bus 00]
    [   35.520942] pci_bus 0001:00: root bus resource [mem 0x76100000-0x76103fff]
    [   35.520996] pci 0001:00:00.0: [110a:4106] type 00 class 0xff0000
    [   35.521025] pci 0001:00:00.0: reg 0x10: [mem 0x00000000-0x00000fff]
    [   35.521490] pci 0001:00:01.0: [110a:4106] type 00 class 0xff0001
    [   35.521525] pci 0001:00:01.0: reg 0x10: [mem 0x00000000-0x00000fff]
    [   35.523597] pci 0001:00:00.0: BAR 0: assigned [mem 0x76100000-0x76100fff]
    [   35.523633] pci 0001:00:01.0: BAR 0: assigned [mem 0x76101000-0x76101fff]
    [   35.525959] uio_ivshmem 0001:00:00.0: enabling device (0000 -> 0002)
    [   35.526089] uio_ivshmem 0001:00:00.0: state_table at 0x00000000dfa00000, size 0x0000000000010000
    [   35.526106] uio_ivshmem 0001:00:00.0: rw_section at 0x00000000dfa10000, size 0x0000000000010000
    [   35.526118] uio_ivshmem 0001:00:00.0: input_sections at 0x00000000dfa20000, size 0x0000000000030000
    [   35.526124] uio_ivshmem 0001:00:00.0: output_section at 0x00000000dfa20000, size 0x0000000000010000
    [   35.528168] The Jailhouse is opening.
    [   35.665521] psci: CPU1 killed (polled 0 ms)
    [   35.701637] psci: CPU2 killed (polled 0 ms)
    Adding virtual PCI device 00:00.0 to cell "k3-am625-sk-linux-demo"
    Shared memory connection established, peer cells:
     "k3-am625-sk"
    Adding virtual PCI device 00:01.0 to cell "k3-am625-sk-linux-demo"
    Shared memory connection established, peer cells:
     "k3-am625-sk"
    Created cell "k3-am625-sk-linux-demo"
    Page pool usage after cell creation: mem 99/993, remap 144/131072
    [   35.737449] psci: CPU3 killed (polled 0 ms)
    [   35.783940] Created Jailhouse cell "k3-am625-sk-linux-demo"
    insufficient memory
    [   45.805431] __vm_enough_memory: pid: 645, comm: jailhouse, no enough memory for the allocation
    [   45.805474] __vm_enough_memory: pid: 645, comm: jailhouse, no enough memory for the allocation
    [   45.805489] __vm_enough_memory: pid: 645, comm: jailhouse, no enough memory for the allocation
    Started cell "k3-am625-sk-linux-demo"

    I am using tisdk-default-am62xx-evm.08.06.00.42.  I am using 64 gb sd card class10 sandisk. Your send example video link.

    how to fix this error.

    Thanks Regards,

    Veerapandiyan V.

  • $ sudo cp board-support/linux-<version/arch/arm64/boot/Image <SD-card-mounting-point>/boot/Image-initramfs
    $ cd <SD-card-mounting-point>
    $ sudo ln -sf Image-initramfs Image

    this location i changed properly. and .cpio file also added previous .cpio file removing. After i change /usr/share/jailhouse/linux_demo.sh file edit to change the my cpio file name after i booting comming some error below:

    An "Image" file is not the same as a .cpio archive. You cannot use a Kernel Image file in place of a .cpio-formatted ramdisk file.

    If you build a Kernel Image file with a built-in rootfs according to the FAQ you are referring to, then you would not need to pass in an initramfs cpio file to jailhouse. For this, two additional modifications need to be made:

    1. Edit linux-demo.sh which has the parameters for the initramfs name and load address hard coded, and remove those, like this:

      [linux-demo.sh]
      #! /bin/sh
      jailhouse enable /usr/share/jailhouse/cells/k3-am625-sk.cell
      jailhouse cell create /usr/share/jailhouse/cells/k3-am625-sk-linux-demo.cell
      jailhouse cell load k3-am625-sk-linux-demo /usr/libexec/jailhouse/linux-loader.bin -a 0x0 -s "kernel=0xe0200000 dtb=0xe0000000" -a 0x1000 /boot/Image -a 0xe0200000 /boot/tisdk-tiny-image-am62xx-evm.cpio -a 0xe294a000 /usr/share/jailhouse/inmate-k3-am625-sk.dtb -a 0xe0000000
      jailhouse cell start k3-am625-sk-linux-demo


    2. Remove the linux,initrd-* definitions from the inmate-k3-am625-sk.dtb device tree file, which by default in SDK 9.0 looks like this...

      [DTS file printed via `dtc -i dtb inmate-k3-am625-sk.dtb`]

      /dts-v1/;

      / {
      model = "Texas Instruments AM625 Inmate Model";
      compatible = "ti,am625-evm\0ti,am625";
      interrupt-parent = <0x01>;
      #address-cells = <0x02>;
      #size-cells = <0x02>;

      aliases {
          serial3 = "/interconnect@f0000/serial@2810000";
      };

      chosen {
          stdout-path = "serial3:115200n8";
          bootargs = "console=ttyS3,115200n8 earlycon=ns16550a,mmio32,0x02810000";
          linux,initrd-start = <0x00 0xe294a000>;
          linux,initrd-end = <0x00 0xe8621400>;
      };
      <snip>

    If you wonder how step 2 was done in the first place, it happens during Yocto build through the ./meta-ti/meta-ti-extras/recipes-ti/jailhouse/jailhouse_git.bb recipe which is invoking the jailhouse-cell-linux Python script that is updating the device tree. You can look at this for some background info how this is done. As for the DTB modifications themselves, you can either de-compile the DTB into source code (`dtc -I dtb xxx yyy`), edit it, and re-compile it back into a DTB fie (`dtc -I dts xxx yyy`), or locate the DTS source that was used for the build in the first place, edit it and build it.

    Also note as for step 2, if you were using an .cpio-archive based ramdisk image (rather than building the initramfs into the Kernel like you seem to be doing), you would need to edit the linux,initrd-end node according to the size of your custom image. Basically, all ramdisk boot options that I outlined in the https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1176944/faq-linux-how-to-boot-sitara-am3x-am4x-am6x-devices-from-initramfs-cpio-archive-ram-disk E2E FAQ should still apply to the Jailhouse inmate cell scenario.

    Regards, Andreas

  • Hi Andreas,

    I do not understand. please clearly explain or recorded video link send me.

    Best Regards,

    Veerapandiyan V.

  • I do not understand. please clearly explain o

    Which specific part is unclear? I was hoping to have provided a pretty detailed explanation already.

    Regards, Andreas

  • Hi Andreas,

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1176944/faq-linux-how-to-boot-sitara-am3x-am4x-am6x-devices-from-initramfs-cpio-archive-ram-disk

    how to find Image-with-initramfs-am62xx-evm.bin this file location. your link is only what is what format so u explain the location also not mention. please provoide the location.

    Thanks Regards,

    Veerapandiyan V.

  • how to find Image-with-initramfs-am62xx-evm.bin this file location. your link is only what is what format so u explain the location also not mention. please provoide the location.

    This is just an arbitrary filename used in the https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1176944/faq-linux-how-to-boot-sitara-am3x-am4x-am6x-devices-from-initramfs-cpio-archive-ram-disk E2E FAQ that indicates the file is a Kernel image with built-in intramfs image (that was included via CONFIG_INITRAMFS_SOURCE). It is the same thing that the other E2E FAQ at https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1259528/faq-sk-am62-how-to-build-initramfs-into-kernel-image refers to as Image-initramfs. The latter E2E FAQ is just describing the steps needed for generating such an image in a bit more detail.

    Regards, Andreas

  • Hi Andreas,

     I build kernal image after copy sd card rootfs location boot folder i paste the Image-initramfs file. address how to add address tell me.

    1. Edit linux-demo.sh this format is correct or not tell me.

      #! /bin/sh
      jailhouse enable /usr/share/jailhouse/cells/k3-am625-sk.cell
      jailhouse cell create /usr/share/jailhouse/cells/k3-am625-sk-linux-demo.cell
      jailhouse cell load k3-am625-sk-linux-demo /usr/libexec/jailhouse/linux-loader.bin -a 0x0 -s "kernel=0xe0200000 dtb=0xe0000000" -a 0x1000 /boot/Image -a 0xe0200000 /boot/Image-initramfs /usr/share/jailhouse/inmate-k3-am625-sk.dtb -a 0xe0000000
      jailhouse cell start k3-am625-sk-linux-demo

    how to find inmate-k3-am625-sk.dtb file location please send refernce

    1. Remove the linux,initrd-* definitions from the inmate-k3-am625-sk.dtb device tree file, which by default in SDK 9.0 looks like this...

      [DTS file printed via `dtc -i dtb inmate-k3-am625-sk.dtb`]

      /dts-v1/;

      / {
      model = "Texas Instruments AM625 Inmate Model";
      compatible = "ti,am625-evm\0ti,am625";
      interrupt-parent = <0x01>;
      #address-cells = <0x02>;
      #size-cells = <0x02>;

      aliases {
          serial3 = "/interconnect@f0000/serial@2810000";
      };

      chosen {
          stdout-path = "serial3:115200n8";
          bootargs = "console=ttyS3,115200n8 earlycon=ns16550a,mmio32,0x02810000";
          linux,initrd-start = <0x00 0xe294a000>;
          linux,initrd-end = <0x00 0xe8621400>;
      };
      <snip>'

    Thanks Regards,

    Veerapandiyan V.

  • how to find inmate-k3-am625-sk.dtb file location please send refernce

    You can see the location of that dtb file in the very linux-demo.sh script you posted, and you can double check that it indeed exists as follows:

    root@am62xx-evm:~# ls -al /usr/share/jailhouse/inmate-k3-am625-sk.dtb
    -rw-r--r-- 1 root root 3289 Mar  9  2018 /usr/share/jailhouse/inmate-k3-am625-sk.dtb

    Then, after copying that file to your PC, you can update it as follows:

    # De-compile device tree blob (dtb) into device tree source (dts) file
    $ dtc -I dtb inmate-k3-am625-sk.dtb -o inmate-k3-am625-sk.dts
    
    # Use your favorite editor to remove the two 'linux,initrd-*' lines
    $ vim inmate-k3-am625-sk.dts
    
    # Re-compile dts file back into a dtb file
    $ dtc -I dts inmate-k3-am625-sk.dts -o inmate-k3-am625-sk-new.dtb

    Then copy the new dtb file back to your embedded board, and use that for jailhouse.

    Edit linux-demo.sh this format is correct or not tell me.

    You'd want to remove the cpio image from the script (together with its address parameter that follows), and _replace_ the 'Image' file with your own. Like this...

    jailhouse cell load k3-am625-sk-linux-demo /usr/libexec/jailhouse/linux-loader.bin -a 0x0 -s "kernel=0xe0200000 dtb=0xe0000000" -a 0x1000 /boot/Image-initramfs -a 0xe0200000 /usr/share/jailhouse/inmate-k3-am625-sk.dtb -a 0xe0000000

    The reason for that is because you built the kernel and the initramfs into a new monolithic image, which of course will replace the original kernel that was specified on the command line.

    Regards, Andreas

  • Hi Andreas,

    I am editing linux-demo.sh file and inmate-k3-am625-sk.dtb file also edited but not boot secondry os. I attached Video below

    1. Example os Booted

    https://drive.google.com/file/d/1BxPK0IrbRoQPbS-LxIIABPcDpY7PK4o1/view?usp=sharing

    2.Editing Files

    https://drive.google.com/file/d/1sySt29LISGjIL2PwJEoIx0Koiefy40Bl/view?usp=drive_link

    3.Am62xx Boot

    https://drive.google.com/file/d/1hOBo8jlLx4g_iSQ6o-cXv0n8FCjCisC3/view?usp=drive_link

    3rd video link Final Process it's not working Secondary OS. how to fix error. i build kernal image is this link : https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1259528/faq-sk-am62-how-to-build-initramfs-into-kernel-image

    Thanks Regards,

    Veerapandiyan V.

  • Hi Veerapandiyan,

    I'm currently tied up some some other work items I need to finish first, so it'll take me a few days before being able to look into this again. Please ping me next week in case I haven't been able to respond until then.

    Regards, Andreas

  • Hi Andreas,

    Ok. I will Wait.

    Thanks Regards,

    Veerapandiyan V.

  • Will look at this again this week, stay tuned.

  • Hi Andreas,

    Ok. I will Wait.

    Thanks Regards,

    Veerapandiyan V.

  • Hi Veerapandiyan,

    please allow a couple of days for a response, I was not able to get to this yet. Thanks for your patience.

    Regards, Andreas

  • Hi Andreas,

    Any Update. I will wait.

    Thanks Regards,

    Veerapandiyan V.

  • Hi Andreas,

                  I need emergency of hypervisor help me andreas. so i taking more times in hypervisor i want to closing two days help me.


    I remember my primary os is jailhouse.

    I change the secondary os is Linux RT default Image how to change so answer me.

    Thanks Regards,

    Veerapandiyan V.

  • Hi Veerapandiyan,

    I reviewed your steps and don't see anything immediately wrong with them.

    However since the error you get is a "JAILHOUSE_CELL_LOAD: Invalid argument", it seems like there's something wrong with your combined Kernel + initramfs "Image" file. I also see it is over 800MB in size, which is  extremely large. How did you build this Image file? You should start building a much smaller filesystem into the Kernel, based off the tisdk-tiny-image-* filessytem that comes with the SDK, as per https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1259528/faq-sk-am62-how-to-build-initramfs-into-kernel-image

    Once you build a tisdk-tiny-image-* filesystem based Kernel image, and Jailhouse still doesn't work, you should try booting this as your primary image, for testing purposes, as per https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1176944/faq-linux-how-to-boot-sitara-am3x-am4x-am6x-devices-from-initramfs-cpio-archive-ram-disk Option 1:

    1. Stop boot at U-Boot prompt
    2. Load your new Image to ${loadaddr} using U-Boot commands
      # This loads from the 'boot' folder of the ext4-formatted rootfs on the SD card
      => load mmc 1:2 ${loadaddr} boot/Image-initramfs

    3. Load your new DTB to ${fdtaddr} using U-Boot commands
      # This loads from the 'boot' folder of the ext4-formatted rootfs on the SD card
      => load mmc 1:2 ${fdtaddr} boot/custom.dtb

    4. Boot your initramfs-based Kernel image...
      # Do the minimum bootargs setup for consistency sake with other flows shown here
      # (otherwise the dtb 'bootargs' property will take effect)
      => setenv args_initramfs 'setenv bootargs console=${console} ${optargs}'
      => run args_all args_initramfs
      
      # Now boot the Kernel without explicitly specifying the initramfs address
      # as it is fully baked into the Kernel
      => booti ${loadaddr} - ${fdtaddr}


    Regards, Andreas

  • Hi Andreas,

    I follow this steps

    • Stop boot at U-Boot prompt
    • Load your new Image to ${loadaddr} using U-Boot commands

    # This loads from the 'boot' folder of the ext4-formatted rootfs on the SD card
    => load mmc 1:2 0xe0200000 boot/Image-initramfs

    • Load your new DTB to ${fdtaddr} using U-Boot commands

    # This loads from the 'boot' folder of the ext4-formatted rootfs on the SD card
    => load mmc 1:2 0xe0000000 /usr/share/jailhouse/inmate-k3-am625-sk-new.dtb

    • Boot your initramfs-based Kernel image...

    # Do the minimum bootargs setup for consistency sake with other flows shown here
    # (otherwise the dtb 'bootargs' property will take effect)
    => setenv args_initramfs 'setenv bootargs console=${console} ${optargs}'
    => run args_all args_initramfs

    # Now boot the Kernel without explicitly specifying the initramfs address
    # as it is fully baked into the Kernel
    => booti 0xe0200000 - 0xe0000000

    red color marked i changed u boot but not on it's coming error. I attached screenshot below

    => load mmc 1:2 0xe0200000 boot/Image-initramfs
    21746176 bytes read in 248 ms (83.6 MiB/s)
    => load mmc 1:2 0xe0000000 /usr/share/jailhouse/inmate-k3-am625-sk-new.dtb
    3197 bytes read in 18 ms (172.9 KiB/s)
    => setenv args_initramfs 'setenv bootargs console=${console} ${optargs}'
    => run args_all args_initramfs
    => booti 0xe0200000 - 0xe0000000
    ## Flattened Device Tree blob at e0000000
       Booting using the fdt blob at 0xe0000000
    Working FDT set to e0000000
       Loading Device Tree to 000000008fffc000, end 000000008ffffc7c ... OK
    Working FDT set to 8fffc000

    Starting kernel ...

    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
    [    0.000000] Linux version 5.10.168-rt83-gc1a1291911 (bpt@bpt-Latitude-7480) (aarch64-none-linux-gnu-gcc (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10)) 9.2.1 20191025, GNU ld (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10)) 2.33.1.20191209) #1 SMP PREEMPT_RT Mon Sep 25 10:56:32 IST 2023
    [    0.000000] Machine model: Texas Instruments AM625 Inmate Model
    [    0.000000] earlycon: ns16550a0 at MMIO32 0x0000000002800000 (options '')
    [    0.000000] printk: bootconsole [ns16550a0] enabled
    [    0.000000] efi: UEFI not found.
    [    0.000000] Zone ranges:
    [    0.000000]   DMA      [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000]   DMA32    empty
    [    0.000000]   Normal   empty
    [    0.000000] Movable zone start for each node
    [    0.000000] Early memory node ranges
    [    0.000000]   node   0: [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000] On node 0 totalpages: 524288
    [    0.000000]   DMA zone: 8192 pages used for memmap
    [    0.000000]   DMA zone: 0 pages reserved
    [    0.000000]   DMA zone: 524288 pages, LIFO batch:63
    [    0.000000] cma: Reserved 512 MiB at 0x00000000c0000000
    [    0.000000] psci: probing for conduit method from DT.
    [    0.000000] psci: PSCIv1.1 detected in firmware.
    [    0.000000] psci: Using standard PSCI v0.2 function IDs
    [    0.000000] psci: Trusted OS migration not required
    [    0.000000] psci: SMC Calling Convention v1.2
    [    0.000000] Failed to find device node for boot cpu
    [    0.000000] missing boot CPU MPIDR, not enabling secondaries
    [    0.000000] percpu: Embedded 18 pages/cpu s35392 r8192 d30144 u73728
    [    0.000000] pcpu-alloc: s35392 r8192 d30144 u73728 alloc=18*4096
    [    0.000000] pcpu-alloc: [0] 0
    [    0.000000] Detected VIPT I-cache on CPU0
    [    0.000000] CPU features: detected: ARM erratum 845719
    [    0.000000] CPU features: detected: GIC system register CPU interface
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 516096
    [    0.000000] Kernel command line: console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000 mtdparts=spi-nand0:512k(ospi.tiboot3),2m(ospi.tispl),4m(ospi.u-boot),256k(ospi.env),256k(ospi.env.backup),98048k@32m(ospi.rootfs),256k@130816k(ospi.phypattern);omap2-nand.0:2m(NAND.tiboot3),2m(NAND.tispl),2m(NAND.tiboot3.backup),4m(NAND.u-boot),256k(NAND.u-boot-env),256k(NAND.u-boot-env.backup),-(NAND.file-system)
    [    0.000000] Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
    [    0.000000] Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
    [    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
    [    0.000000] Memory: 1511124K/2097152K available (11008K kernel code, 1204K rwdata, 4272K rodata, 4608K init, 438K bss, 61740K reserved, 524288K cma-reserved)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    [    0.000000] rcu: Preemptible hierarchical RCU implementation.
    [    0.000000] rcu:     RCU event tracing is enabled.
    [    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=1.
    [    0.000000] rcu:     RCU priority boosting: priority 1 delay 500 ms.
    [    0.000000] rcu:     RCU_SOFTIRQ processing moved to rcuc kthreads.
    [    0.000000]     No expedited grace period (rcu_normal_after_boot).
    [    0.000000]     Trampoline variant of Tasks RCU enabled.
    [    0.000000]     Tracing variant of Tasks RCU enabled.
    [    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
    [    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
    [    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
    [    0.000000] GICv3: GIC: Using split EOI/Deactivate mode
    [    0.000000] GICv3: 256 SPIs implemented
    [    0.000000] GICv3: 0 Extended SPIs implemented
    [    0.000000] GICv3: Distributor has no Range Selector support
    [    0.000000] GICv3: 16 PPIs implemented
    [    0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000001880000
    [    0.000000] ITS: No ITS available, not enabling LPIs
    [    0.000000] arch_timer: cp15 timer(s) running at 200.00MHz (phys).
    [    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
    [    0.000001] sched_clock: 56 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
    [    0.008364] Console: colour dummy device 80x25
    [    0.012958] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=800000)
    [    0.023637] pid_max: default: 32768 minimum: 301
    [    0.028443] LSM: Security Framework initializing
    [    0.033235] Mount-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
    [    0.040818] Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
    [    0.050625] rcu: Hierarchical SRCU implementation.
    [    0.056026] EFI services will not be available.
    [    0.060809] smp: Bringing up secondary CPUs ...
    [    0.065463] smp: Brought up 1 node, 1 CPU
    [    0.069587] SMP: Total of 1 processors activated.
    [    0.074404] CPU features: detected: 32-bit EL0 Support
    [    0.079660] CPU features: detected: CRC32 instructions
    [    0.092015] CPU: All CPU(s) started at EL2
    [    0.096219] alternatives: patching kernel code
    [    0.102287] devtmpfs: initialized
    [    0.107004] KASLR disabled due to lack of seed
    [    0.111715] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
    [    0.121695] futex hash table entries: 256 (order: 3, 32768 bytes, linear)
    [    0.141840] pinctrl core: initialized pinctrl subsystem
    [    0.147845] DMI not present or invalid.
    [    0.152478] NET: Registered protocol family 16
    [    0.158745] DMA: preallocated 256 KiB GFP_KERNEL pool for atomic allocations
    [    0.166114] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
    [    0.174198] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
    [    0.182960] thermal_sys: Registered thermal governor 'step_wise'
    [    0.183170] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
    [    0.196298] ASID allocator initialised with 65536 entries
    [    0.210157] HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages
    [    0.217108] HugeTLB registered 32.0 MiB page size, pre-allocated 0 pages
    [    0.223997] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
    [    0.230849] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages
    [    0.238899] cryptd: max_cpu_qlen set to 1000
    [    0.246523] iommu: Default domain type: Translated
    [    0.251950] SCSI subsystem initialized
    [    0.256190] mc: Linux media interface: v0.10
    [    0.260879] videodev: Linux video capture interface: v2.00
    [    0.266603] pps_core: LinuxPPS API ver. 1 registered
    [    0.271711] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.281063] PTP clock support registered
    [    0.285107] EDAC MC: Ver: 3.0.0
    [    0.288931] FPGA manager framework
    [    0.292527] Advanced Linux Sound Architecture Driver Initialized.
    [    0.299658] clocksource: Switched to clocksource arch_sys_counter
    [    0.306174] VFS: Disk quotas dquot_6.6.0
    [    0.310241] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
    [    0.322820] NET: Registered protocol family 2
    [    0.327586] IP idents hash table entries: 32768 (order: 6, 262144 bytes, linear)
    [    0.336609] tcp_listen_portaddr_hash hash table entries: 1024 (order: 4, 65536 bytes, linear)
    [    0.345524] TCP established hash table entries: 16384 (order: 5, 131072 bytes, linear)
    [    0.353782] TCP bind hash table entries: 16384 (order: 7, 917504 bytes, linear)
    [    0.362190] TCP: Hash tables configured (established 16384 bind 16384)
    [    0.369281] UDP hash table entries: 1024 (order: 5, 131072 bytes, linear)
    [    0.376463] UDP-Lite hash table entries: 1024 (order: 5, 131072 bytes, linear)
    [    0.384263] NET: Registered protocol family 1
    [    0.389269] RPC: Registered named UNIX socket transport module.
    [    0.395373] RPC: Registered udp transport module.
    [    0.400183] RPC: Registered tcp transport module.
    [    0.404992] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.411581] NET: Registered protocol family 44
    [    0.416171] PCI: CLS 0 bytes, default 64
    [    0.565235] hw perfevents: enabled with armv8_pmuv3 PMU driver, 7 counters available
    [    0.577318] Initialise system trusted keyrings
    [    0.582254] workingset: timestamp_bits=46 max_order=19 bucket_order=0
    [    0.594029] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    0.600791] NFS: Registering the id_resolver key type
    [    0.606063] Key type id_resolver registered
    [    0.610365] Key type id_legacy registered
    [    0.614532] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    0.621389] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
    [    0.629166] 9p: Installing v9fs 9p2000 file system support
    [    0.670850] Key type asymmetric registered
    [    0.675078] Asymmetric key parser 'x509' registered
    [    0.680144] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 243)
    [    0.687743] io scheduler mq-deadline registered
    [    0.692416] io scheduler kyber registered
    [    0.697962] pci-host-generic 76000000.pci: host bridge /interconnect@f0000/pci@76000000 ranges:
    [    0.706986] pci-host-generic 76000000.pci:      MEM 0x0010000000..0x001001ffff -> 0x0010000000
    [    0.715894] pci-host-generic 76000000.pci: ECAM at [mem 0x76000000-0x760fffff] for [bus 00]
    [    0.724579] pci-host-generic 76000000.pci: PCI host bridge to bus 0000:00
    [    0.731527] pci_bus 0000:00: root bus resource [bus 00]
    [    0.736873] pci_bus 0000:00: root bus resource [mem 0x10000000-0x1001ffff]
    [    0.743916] Internal error: synchronous external abort: 96000010 [#1] PREEMPT_RT SMP
    [    0.751833] Modules linked in:
    [    0.754954] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.10.168-rt83-gc1a1291911 #1
    [    0.762691] Hardware name: Texas Instruments AM625 Inmate Model (DT)
    [    0.769184] pstate: 20000085 (nzCv daIf -PAN -UAO -TCO BTYPE=--)
    [    0.775321] pc : pci_generic_config_read+0x38/0xe0
    [    0.780229] lr : pci_generic_config_read+0x24/0xe0
    [    0.785123] sp : ffff80001155b910
    [    0.788503] x29: ffff80001155b910 x28: 0000000000000000
    [    0.793931] x27: ffff800010f81078 x26: ffff800010f104c0
    [    0.799358] x25: ffff800011506bf8 x24: 0000000000000000
    [    0.804784] x23: ffff80001155ba44 x22: 0000000000000087
    [    0.810211] x21: ffff000000a1d800 x20: 0000000000000004
    [    0.815638] x19: ffff80001155b984 x18: 0000000000000010
    [    0.821064] x17: 00000000aac67a4c x16: 00000000ecd11d26
    [    0.826490] x15: ffff000000078560 x14: ffffffffffffffff
    [    0.831917] x13: ffff80009155b557 x12: ffff80001155b55f
    [    0.837343] x11: ffff80001140ad60 x10: ffff8000113b50a0
    [    0.842769] x9 : ffff80001140a028 x8 : 0000000000000000
    [    0.848195] x7 : 000000000000ea60 x6 : 0000000000000000
    [    0.853622] x5 : 000000000000000c x4 : 0000000000000014
    [    0.859048] x3 : 0000000000000000 x2 : 0000000000000000
    [    0.864474] x1 : 0000000000000000 x0 : ffff800011a00000
    [    0.869901] Call trace:
    [    0.872393]  pci_generic_config_read+0x38/0xe0
    [    0.876933]  pci_bus_read_config_dword+0x80/0xd8
    [    0.881651]  pci_bus_generic_read_dev_vendor_id+0x34/0x1b0
    [    0.887257]  pci_bus_read_dev_vendor_id+0x4c/0x70
    [    0.892061]  pci_scan_single_device+0x7c/0xf8
    [    0.896510]  pci_scan_slot+0x40/0x120
    [    0.900247]  pci_scan_child_bus_extend+0x54/0x298
    [    0.905052]  pci_scan_root_bus_bridge+0x64/0xd8
    [    0.909678]  pci_host_probe+0x18/0xc8
    [    0.913416]  pci_host_common_probe+0x118/0x198
    [    0.917960]  platform_drv_probe+0x54/0xa8
    [    0.922059]  really_probe+0xec/0x400
    [    0.925710]  driver_probe_device+0x58/0xb8
    [    0.929892]  device_driver_attach+0x74/0x80
    [    0.934165]  __driver_attach+0x68/0xf8
    [    0.937992]  bus_for_each_dev+0x70/0xc0
    [    0.941909]  driver_attach+0x24/0x30
    [    0.945558]  bus_add_driver+0x150/0x210
    [    0.949475]  driver_register+0x64/0x120
    [    0.953392]  __platform_driver_register+0x48/0x58
    [    0.958198]  gen_pci_driver_init+0x1c/0x28
    [    0.962384]  do_one_initcall+0x54/0x1b8
    [    0.966303]  kernel_init_freeable+0x230/0x298
    [    0.970754]  kernel_init+0x14/0x114
    [    0.974317]  ret_from_fork+0x10/0x30
    [    0.977973] Code: 7100069f 540001c0 71000a9f 54000300 (b9400001)
    [    0.984205] ---[ end trace 0000000000000001 ]---
    [    0.988987] note: swapper/0[1] exited with preempt_count 1
    [    0.994593] Kernel panic - not syncing:
    [    0.998505] Attempted to kill init! exitcode=0x0000000b
    [    1.003867] Kernel Offset: disabled
    [    1.007424] CPU features: 0x00040002,2000200c
    [    1.011872] Memory Limit: none
    [    1.014988] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b ]---

    How to solve this issue tell mee Andreas are you send any pre record video send me helpfull

    Thanks Regards,

    Veerapandiyan V.

  • [    0.697962] pci-host-generic 76000000.pci: host bridge /interconnect@f0000/pci@76000000 ranges:
    [    0.706986] pci-host-generic 76000000.pci:      MEM 0x0010000000..0x001001ffff -> 0x0010000000
    [    0.715894] pci-host-generic 76000000.pci: ECAM at [mem 0x76000000-0x760fffff] for [bus 00]
    [    0.724579] pci-host-generic 76000000.pci: PCI host bridge to bus 0000:00
    [    0.731527] pci_bus 0000:00: root bus resource [bus 00]
    [    0.736873] pci_bus 0000:00: root bus resource [mem 0x10000000-0x1001ffff]

    Thanks for running this experiment, I'd have expected this to work, but then I've never tried it myself. But looking at your error more closely it makes sense that it fails, as it tries to access a PCI host interface, which is NOT available when running natively on AM62x, only within the Jailhouse environment (running as an inmate). Your inmate DTS file should contain the below section, try removing that section (similarly like you before removed the "initrd*" related properties), and try again:

                    pci@76000000 {
                            compatible = "pci-host-ecam-generic";
                            device_type = "pci";
                            bus-range = <0 0>;
                            #address-cells = <3>;
                            #size-cells = <2>;
                            #interrupt-cells = <1>;
                            interrupt-map-mask = <0 0 0 7>;
                            interrupt-map =
                            <0 0 0 1 &gic500 GIC_SPI 157 IRQ_TYPE_EDGE_RISING>,
                            <0 0 0 2 &gic500 GIC_SPI 158 IRQ_TYPE_EDGE_RISING>,
                            <0 0 0 3 &gic500 GIC_SPI 159 IRQ_TYPE_EDGE_RISING>,
                            <0 0 0 4 &gic500 GIC_SPI 160 IRQ_TYPE_EDGE_RISING>;
                            reg = <0x0 0x76000000 0x0 0x100000>;
                            ranges =
                            <0x02000000 0x00 0x10000000 0x0 0x10000000 0x00 0x20000>;
                    };

    Regards, Andreas

  • Hi Andreas,

    I change dts file is coming error below:

    SoC:   AM62X SR1.0 GP
    Model: Texas Instruments AM625 SK
    EEPROM not available at 80, trying to read at 81
    Board: AM62-SKEVM rev E3
    DRAM:  2 GiB
    Core:  71 devices, 31 uclasses, devicetree: separate
    MMC:   mmc@fa10000: 0, mmc@fa00000: 1
    Loading Environment from nowhere... OK
    In:    serial
    Out:   serial
    Err:   serial
    Net:   eth0: ethernet@8000000port@1
    Hit any key to stop autoboot:  0
    =>
    => load mmc 1:2 0xe0200000 boot/Image-initramfs
    21746176 bytes read in 250 ms (83 MiB/s)
    => load mmc 1:2 0xe0000000 /usr/share/jailhouse/inmate-k3-am625-sk-new1.dtb
    2774 bytes read in 16 ms (168.9 KiB/s)
    => setenv args_initramfs 'setenv bootargs console=${console} ${optargs}'
    => run args_all args_initramfs
    => booti 0xe0200000 - 0xe0000000
    ## Flattened Device Tree blob at e0000000
       Booting using the fdt blob at 0xe0000000
    Working FDT set to e0000000
       Loading Device Tree to 000000008fffc000, end 000000008ffffad5 ... OK
    Working FDT set to 8fffc000

    Starting kernel ...

    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
    [    0.000000] Linux version 5.10.168-rt83-gc1a1291911 (bpt@bpt-Latitude-7480) (aarch64-none-linux-gnu-gcc (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10)) 9.2.1 20191025, GNU ld (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10)) 2.33.1.20191209) #1 SMP PREEMPT_RT Mon Sep 25 10:56:32 IST 2023
    [    0.000000] Machine model: Texas Instruments AM625 Inmate Model
    [    0.000000] earlycon: ns16550a0 at MMIO32 0x0000000002800000 (options '')
    [    0.000000] printk: bootconsole [ns16550a0] enabled
    [    0.000000] efi: UEFI not found.
    [    0.000000] Zone ranges:
    [    0.000000]   DMA      [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000]   DMA32    empty
    [    0.000000]   Normal   empty
    [    0.000000] Movable zone start for each node
    [    0.000000] Early memory node ranges
    [    0.000000]   node   0: [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000] On node 0 totalpages: 524288
    [    0.000000]   DMA zone: 8192 pages used for memmap
    [    0.000000]   DMA zone: 0 pages reserved
    [    0.000000]   DMA zone: 524288 pages, LIFO batch:63
    [    0.000000] cma: Reserved 512 MiB at 0x00000000c0000000
    [    0.000000] psci: probing for conduit method from DT.
    [    0.000000] psci: PSCIv1.1 detected in firmware.
    [    0.000000] psci: Using standard PSCI v0.2 function IDs
    [    0.000000] psci: Trusted OS migration not required
    [    0.000000] psci: SMC Calling Convention v1.2
    [    0.000000] Failed to find device node for boot cpu
    [    0.000000] missing boot CPU MPIDR, not enabling secondaries
    [    0.000000] percpu: Embedded 18 pages/cpu s35392 r8192 d30144 u73728
    [    0.000000] pcpu-alloc: s35392 r8192 d30144 u73728 alloc=18*4096
    [    0.000000] pcpu-alloc: [0] 0
    [    0.000000] Detected VIPT I-cache on CPU0
    [    0.000000] CPU features: detected: ARM erratum 845719
    [    0.000000] CPU features: detected: GIC system register CPU interface
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 516096
    [    0.000000] Kernel command line: console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000 mtdparts=spi-nand0:512k(ospi.tiboot3),2m(ospi.tispl),4m(ospi.u-boot),256k(ospi.env),256k(ospi.env.backup),98048k@32m(ospi.rootfs),256k@130816k(ospi.phypattern);omap2-nand.0:2m(NAND.tiboot3),2m(NAND.tispl),2m(NAND.tiboot3.backup),4m(NAND.u-boot),256k(NAND.u-boot-env),256k(NAND.u-boot-env.backup),-(NAND.file-system)
    [    0.000000] Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
    [    0.000000] Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
    [    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
    [    0.000000] Memory: 1511128K/2097152K available (11008K kernel code, 1204K rwdata, 4272K rodata, 4608K init, 438K bss, 61736K reserved, 524288K cma-reserved)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    [    0.000000] rcu: Preemptible hierarchical RCU implementation.
    [    0.000000] rcu:     RCU event tracing is enabled.
    [    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=1.
    [    0.000000] rcu:     RCU priority boosting: priority 1 delay 500 ms.
    [    0.000000] rcu:     RCU_SOFTIRQ processing moved to rcuc kthreads.
    [    0.000000]     No expedited grace period (rcu_normal_after_boot).
    [    0.000000]     Trampoline variant of Tasks RCU enabled.
    [    0.000000]     Tracing variant of Tasks RCU enabled.
    [    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
    [    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
    [    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
    [    0.000000] GICv3: GIC: Using split EOI/Deactivate mode
    [    0.000000] GICv3: 256 SPIs implemented
    [    0.000000] GICv3: 0 Extended SPIs implemented
    [    0.000000] GICv3: Distributor has no Range Selector support
    [    0.000000] GICv3: 16 PPIs implemented
    [    0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000001880000
    [    0.000000] ITS: No ITS available, not enabling LPIs
    [    0.000000] arch_timer: cp15 timer(s) running at 200.00MHz (phys).
    [    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
    [    0.000001] sched_clock: 56 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
    [    0.008366] Console: colour dummy device 80x25
    [    0.012959] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=800000)
    [    0.023638] pid_max: default: 32768 minimum: 301
    [    0.028444] LSM: Security Framework initializing
    [    0.033238] Mount-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
    [    0.040821] Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
    [    0.050626] rcu: Hierarchical SRCU implementation.
    [    0.056029] EFI services will not be available.
    [    0.060809] smp: Bringing up secondary CPUs ...
    [    0.065464] smp: Brought up 1 node, 1 CPU
    [    0.069587] SMP: Total of 1 processors activated.
    [    0.074403] CPU features: detected: 32-bit EL0 Support
    [    0.079660] CPU features: detected: CRC32 instructions
    [    0.092020] CPU: All CPU(s) started at EL2
    [    0.096227] alternatives: patching kernel code
    [    0.102302] devtmpfs: initialized
    [    0.106993] KASLR disabled due to lack of seed
    [    0.111707] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
    [    0.121686] futex hash table entries: 256 (order: 3, 32768 bytes, linear)
    [    0.141788] pinctrl core: initialized pinctrl subsystem
    [    0.147795] DMI not present or invalid.
    [    0.152435] NET: Registered protocol family 16
    [    0.158709] DMA: preallocated 256 KiB GFP_KERNEL pool for atomic allocations
    [    0.166071] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
    [    0.174153] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
    [    0.182925] thermal_sys: Registered thermal governor 'step_wise'
    [    0.183137] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
    [    0.196265] ASID allocator initialised with 65536 entries
    [    0.210052] HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages
    [    0.216997] HugeTLB registered 32.0 MiB page size, pre-allocated 0 pages
    [    0.223878] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
    [    0.230732] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages
    [    0.238764] cryptd: max_cpu_qlen set to 1000
    [    0.246385] iommu: Default domain type: Translated
    [    0.251818] SCSI subsystem initialized
    [    0.256049] mc: Linux media interface: v0.10
    [    0.260734] videodev: Linux video capture interface: v2.00
    [    0.266458] pps_core: LinuxPPS API ver. 1 registered
    [    0.271564] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.280917] PTP clock support registered
    [    0.284956] EDAC MC: Ver: 3.0.0
    [    0.288789] FPGA manager framework
    [    0.292388] Advanced Linux Sound Architecture Driver Initialized.
    [    0.299523] clocksource: Switched to clocksource arch_sys_counter
    [    0.306043] VFS: Disk quotas dquot_6.6.0
    [    0.310113] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
    [    0.322715] NET: Registered protocol family 2
    [    0.327498] IP idents hash table entries: 32768 (order: 6, 262144 bytes, linear)
    [    0.336514] tcp_listen_portaddr_hash hash table entries: 1024 (order: 4, 65536 bytes, linear)
    [    0.345422] TCP established hash table entries: 16384 (order: 5, 131072 bytes, linear)
    [    0.353681] TCP bind hash table entries: 16384 (order: 7, 917504 bytes, linear)
    [    0.362074] TCP: Hash tables configured (established 16384 bind 16384)
    [    0.369152] UDP hash table entries: 1024 (order: 5, 131072 bytes, linear)
    [    0.376330] UDP-Lite hash table entries: 1024 (order: 5, 131072 bytes, linear)
    [    0.384128] NET: Registered protocol family 1
    [    0.389134] RPC: Registered named UNIX socket transport module.
    [    0.395237] RPC: Registered udp transport module.
    [    0.400047] RPC: Registered tcp transport module.
    [    0.404856] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.411445] NET: Registered protocol family 44
    [    0.416033] PCI: CLS 0 bytes, default 64
    [    0.565339] hw perfevents: enabled with armv8_pmuv3 PMU driver, 7 counters available
    [    0.577392] Initialise system trusted keyrings
    [    0.582343] workingset: timestamp_bits=46 max_order=19 bucket_order=0
    [    0.594060] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    0.600839] NFS: Registering the id_resolver key type
    [    0.606110] Key type id_resolver registered
    [    0.610411] Key type id_legacy registered
    [    0.614581] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    0.621436] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
    [    0.629212] 9p: Installing v9fs 9p2000 file system support
    [    0.669099] Key type asymmetric registered
    [    0.673324] Asymmetric key parser 'x509' registered
    [    0.678391] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 243)
    [    0.685995] io scheduler mq-deadline registered
    [    0.690643] io scheduler kyber registered
    [    0.699636] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled
    [    0.709167] cacheinfo: Failed to find cpu0 device node
    [    0.714469] cacheinfo: Unable to detect cache hierarchy for CPU 0
    [    0.727863] brd: module loaded
    [    0.738539] loop: module loaded
    [    0.742390] megasas: 07.714.04.00-rc1
    [    0.748898] tun: Universal TUN/TAP device driver, 1.6
    [    0.754400] igbvf: Intel(R) Gigabit Virtual Function Network Driver
    [    0.760839] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
    [    0.766967] sky2: driver version 1.30
    [    0.771080] VFIO - User Level meta-driver version: 0.3
    [    0.777088] i2c /dev entries driver
    [    0.781211] sdhci: Secure Digital Host Controller Interface driver
    [    0.787549] sdhci: Copyright(c) Pierre Ossman
    [    0.792090] sdhci-pltfm: SDHCI platform and OF driver helper
    [    0.798435] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
    [    0.806923] NET: Registered protocol family 17
    [    0.811746] 9pnet: Installing 9P2000 support
    [    0.816225] Key type dns_resolver registered
    [    0.820946] printk: bootconsole [ns16550a0]: printing thread started
    [    0.820996] Loading compiled-in X.509 certificates
    [    0.832139] ti-sci 44043000.system-controller: lpm region is required for suspend but not provided.
    [    0.832224] ti-sci 44043000.system-controller: ABI: 3.1 (firmware rev 0x0009 '9.0.5--v09.00.05 (Kool Koala)')
    [    0.834807] 2810000.serial: ttyS3 at MMIO 0x2810000 (irq = 14, base_baud = 3000000) is a 8250
    [    0.836151] ALSA device list:
    [    0.836162]   No soundcards found.
    [    0.836214] Warning: unable to open an initial console.
    [    0.843900] Freeing unused kernel memory: 4608K
    [    0.851604] Run /init as init process
    [    1.508489] /dev/root: Can't open blockdev
    [    2.102701] random: dd: uninitialized urandom read (512 bytes read)

    Thaks Regards,

    Veerapandiyan V.

  • [    0.834807] 2810000.serial: ttyS3 at MMIO 0x2810000 (irq = 14, base_baud = 3000000) is a 8250
    [    0.836214] Warning: unable to open an initial console.

    Looks like this is mostly working except the console. The Jailhouse inmate DTB tries to use MAIN_UART1, and the standard boot process (and early console) is configured for MAIN_UART0. So in order to better mimic how this Kernel+initramfs is used within the Jailhouse environment you should use something like the below sequence. Note how `bootargs` is explicitly configured to use MAIN_UART1 for both early console and main console.

    => load mmc 1:2 0xe0200000 boot/Image-initramfs
    => load mmc 1:2 0xe0000000 /usr/share/jailhouse/inmate-k3-am625-sk-new1.dtb
    => env set bootargs 'console=ttyS3,115200n8 earlycon=ns16550a,mmio32,0x02810000'
    => booti 0xe0200000 - 0xe0000000

    It's important to configure for MAIN_UART1 as this is what is configured in the Jailhouse DTB file, otherwise you won't be able to get a console (the error you got). See extract from the AM62 Jailhouse inmate DTS file...

            aliases {
                    serial1 = &main_uart1;
            };
    
            chosen {
                    stdout-path = "serial1:115200n8";
            };

    If you now get that image to boot from U-Boot directly, you should re-try getting it loaded into Jailhouse. Should you still have trouble loading it into Jailhouse, try re-building that image but instead of using an RT Kernel config, use a normal one, for testing purposes, to see if that has any impact.

    Regards, Andreas

  • Hi Andreas,

    I change dtb file

    compiling time is coming error

    how to fix error

    Regards Veerapandiyan.

  • Don't change the inmate DTB file, it is already setup correctly for MAIN_UART1 operation. What I was asking is to change the bootargs in U-Boot to match.

    Regards, Andreas

  • Hi Andreas

    I have only u-boot not change dtb file but not on secondry os is showing some error i attached video link below: https://drive.google.com/file/d/11mIIXBpRQh4SYCjtPVJRmN3-1HWt3y0F/view?usp=drive_link u send one working video.

    Thanks Regards,

    Veerapandiyan V.

  • Will need to prioritize other support work atm, and will pick this up again next week. Please ping me mid-next week or so in case I haven't gotten back on this yet.

    Regards, Andreas

  • Hi Andreas,

    Ok. I still Wait.

    Thanks Regards,

    Veerapandiyan V.

  • Hi Andreas,

    I want to Hypervisor help me.

    Thanks Regards,

    Veerapandiyan V.

  • Hi,

    I'm still not able to get to it due to other priorities; it'll may take another week or so.

    Regards, Andreas

  • Hi Andreas,

    I want to argent hypervisor Andreas. I chat with one half months not solving problem how to fix and send your hypervisor working video.

    Thanks Regards,

    Veerapandiyan.

  • Hi Andreas,

    Any Update.

    Thanks Regards,

    Veerapandiyan.

  • Hi Andreas,

    Any Update.

    Thanks Regards,

    Veerapandiyan  V.

  • Hi,

    Andreas is out of office today. Please expect delayed response.

  • Hi Bin Liu,

    Ok.

    Regards,

    Veerapandiyan V.

  • hi Andreas,

    Are you there in office. I want to one doubt how to work hypervisor in ROTS-default-image kernel image file how to load answer me.

    Thanks Regards,
    Veerapandiyan v.

  • Hi,

    Andreas will be back later today or tomorrow.

  • hi Andreas,

    Are you there in office. I want to one doubt how to work hypervisor in ROTS-default-image kernel image file how to load answer me.

    Thanks Regards,
    Veerapandiyan v.

  • hi Andreas,

    Are you there in office. I want to one doubt how to work hypervisor in ROTS-default-image kernel image file how to load answer me.

    Thanks Regards,
    Veerapandiyan v.

  • Hi Veerapandiyan, yes I'm back in the office but there is a very large backlog of other rather complex/urgent support work. I'm currently needing to prioritize other work items.

  • Hi Andreas

    Its nice to see you back in office, i can understand the backlogs. We are in middle of signing an important project with the client we are finalizing the end details. It would be really great if you can answer our query within a day or two. We have to show our capability of porting the hypervisor. Everything is hanging on a loose thread. Please put our problem on priority. Hoping to see your reply asap

    Thanks Reagrds

    Veerapandiyan V.

  • Hi Andreas,

    Any update.

    Thanks Regards,

    Veerapandiyan V.

  • Hi Andreas,

    Any update.

    Thanks Regards,

    Veerapandiyan V.

  • hi Andreas,

    Are you there in office.

    Thanks Regards,
    Veerapandiyan v.

  • Hi,

    Our expert is out of office. Please expect a delayed response.

    Best Regards,

    Anshu