Skip to content

Draft: Removed symlinks to the kernel, initrd, devtree; Device trees for whle-ls1-sdk kernel

Marcin Wcisło requested to merge whle-ls1046a-pmd into master

Symlinks obsoleted by the use of u-boot-menu

Scope

To get rid of

/boot/board.dtb
/boot/initrd.img
/boot/initrd.img.old
/boot/vmlinuz
/boot/vmlinuz.old

Tests

Tested on WHLE-LS1026A.

Initial state

/boot contents at first login:

root@whle-ls1046a:~# ls /boot

System.map-6.5.6-whle-ls1-g88fc5c2e4673
config-6.5.6-whle-ls1-g88fc5c2e4673
extlinux
initrd.img-6.5.6-whle-ls1-g88fc5c2e4673
vmlinuz-6.5.6-whle-ls1-g88fc5c2e4673

State after linux package installation

  1. SDK kernel

    root@whle-ls1046a:~# apt install linux-image-6.1.56-whle-ls1-sdk-g5f6cdda7d834 
    
    root@whle-ls1046a:~# ls /boot
    
    System.map-6.1.56-whle-ls1-sdk-g5f6cdda7d834
    System.map-6.5.6-whle-ls1-g88fc5c2e4673
    config-6.1.56-whle-ls1-sdk-g5f6cdda7d834
    config-6.5.6-whle-ls1-g88fc5c2e4673
    extlinux
    initrd.img-6.1.56-whle-ls1-sdk-g5f6cdda7d834
    initrd.img-6.5.6-whle-ls1-g88fc5c2e4673
    vmlinuz-6.1.56-whle-ls1-sdk-g5f6cdda7d834
    vmlinuz-6.5.6-whle-ls1-g88fc5c2e4673
  2. Regular kernel

    root@whle-ls1046a:~# apt install linux-image-6.5.6-whle-ls1-gcb9fc46d1a8f
    
    root@whle-ls1046a:~# ls -lh /boot
    
    -rw-r--r-- 1 root root 3.1M May 13 22:22 System.map-6.1.56-whle-ls1-sdk-g5f6cdda7d834
    -rw-r--r-- 1 root root 3.0M Apr 22 19:53 System.map-6.5.6-whle-ls1-g88fc5c2e4673
    -rw-r--r-- 1 root root 3.0M Jan  4 14:56 System.map-6.5.6-whle-ls1-gcb9fc46d1a8f
    -rw-r--r-- 1 root root 164K May 13 22:22 config-6.1.56-whle-ls1-sdk-g5f6cdda7d834
    -rw-r--r-- 1 root root 164K Apr 22 19:53 config-6.5.6-whle-ls1-g88fc5c2e4673
    -rw-r--r-- 1 root root 164K Jan  4 14:56 config-6.5.6-whle-ls1-gcb9fc46d1a8f
    drwxr-xr-x 2 root root 4.0K May 15 22:59 extlinux
    -rw-r--r-- 1 root root  11M May 15 22:44 initrd.img-6.1.56-whle-ls1-sdk-g5f6cdda7d834
    -rw-r--r-- 1 root root 9.8M May 15 21:07 initrd.img-6.5.6-whle-ls1-g88fc5c2e4673
    -rw-r--r-- 1 root root  11M May 15 22:59 initrd.img-6.5.6-whle-ls1-gcb9fc46d1a8f
    -rw-r--r-- 1 root root 8.0M May 13 22:22 vmlinuz-6.1.56-whle-ls1-sdk-g5f6cdda7d834
    -rw-r--r-- 1 root root 7.8M Apr 22 19:53 vmlinuz-6.5.6-whle-ls1-g88fc5c2e4673
    -rw-r--r-- 1 root root 7.8M Jan  4 14:56 vmlinuz-6.5.6-whle-ls1-gcb9fc46d1a8f

Booting with the newly installed kernels: OK

Device trees for the SDK kernel

The whle-ls1-sdk kernel variant requires different device tree than the regular one /usr/lib/linux-image-‹ver›/freescale/fsl-ls1046a-whle.dtb to boot properly - the usdpaa devtrees ("user space DPAA"). Two possibilities:

  • Static usdpaa device tree: Assigns the network interface to either kernel or DPDK. Easier to control the queues with FMC. This solution was used in the whales demo. There are 26 = 64 possible device trees, assigning each interface to a different driver. Of these 2 were provided in linux@32855dc4:
    • fsl-ls1046a-whle-usdpaa-000000.dtb: all NICs assigned to kernel
    • fsl-ls1046a-whle-usdpaa-000011.dtb: all 1G NICs assigned to kernel, 10G NICs assigned to DPDK.
  • Shared usdpaa device tree: Allows for sharing the network interface between kernel and DPDK. Harder to control the queues with FMC though more convenient for the user. To be accounted for in the next iteration, after full incorporation of the whales demo into CE repositories.

The change in ubuntu-build detects the use of the SDK kernel variant and modifies the /usr/lib/linux-image-‹ver›/fsl-ls1046a-whle.dtb symlink to point to the usdpaa device tree. Example:

root@whle-ls1046a:~# ls -lh  /usr/lib/linux-image-6.1.56-whle-ls1-sdk-g5f6cdda7d834/
drwxr-xr-x 2 root root 4.0K May 15 22:44 freescale
lrwxrwxrwx 1 root root   99 May 15 22:44 fsl-ls1046a-whle.dtb -> /usr/lib/linux-image-6.1.56-whle-ls1-sdk-g5f6cdda7d834/freescale/fsl-ls1046a-whle-usdpaa-000000.dtb
lrwxrwxrwx 1 root root   85 May 15 22:44 fsl-ls1088a-whle.dtb -> /usr/lib/linux-image-6.1.56-whle-ls1-sdk-g5f6cdda7d834/freescale/fsl-ls1088a-whle.dtb

The regular version remains as before

root@whle-ls1046a:~# ls -lh  /usr/lib/linux-image-6.1.56-whle-ls1-g5f6cdda7d834/
drwxr-xr-x 2 root root 4.0K May 15 23:21 freescale
lrwxrwxrwx 1 root root   81 May 15 23:21 fsl-ls1046a-whle.dtb -> /usr/lib/linux-image-6.1.56-whle-ls1-g5f6cdda7d834/freescale/fsl-ls1046a-whle.dtb
lrwxrwxrwx 1 root root   81 May 15 23:21 fsl-ls1088a-whle.dtb -> /usr/lib/linux-image-6.1.56-whle-ls1-g5f6cdda7d834/freescale/fsl-ls1088a-whle.dtb

Merge request reports

Loading