Difference between revisions of "R-Car/Boards/S4SK-Proto-Xen"

From eLinux.org
Jump to: navigation, search
(Preparing SD card(32GB or more))
(Preparing SD card(32GB or more))
 
(No difference)

Latest revision as of 20:07, 26 March 2023

Introduction

This page is Xen for the R-Car S4 Starter Kit prototype board.

R-Car S4 Starter Kit prototype board specification & linux BSP

See here

Host PC

Ubuntu 20.04 LTS (64bit) is recommended as OS. 32bit version is not supported.

How to build

Installation of required tools and libraries

Ubuntu is used as Linux Host PC since Yocto Project Quick Start specifies Ubuntu as one of the distributions. You need to install the required packages as follows.

sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib \
build-essential chrpath socat cpio python3 python3-pip python3-pexpect \
xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa \
libsdl1.2-dev pylint3 xterm libarchive-zip-perl

Build Procedure

  1. Download Xen enviroment for S4 SK prototype board
    File:Script xen s4sk.zip
  2. Run the script
    mkdir build-xen
    cd build-xen
    unzip {PATH}/Script_xen_s4sk.zip
    cd Script_xen_s4sk
    ./xen_s4sk.sh setup
    pip3 install --upgrade pip
    export PATH="$PATH:${HOME}/.local/bin" 
    pip3 install --user git+https://github.com/xen-troops/moulin
    sudo apt install ninja-build
    ./xen_s4sk.sh build
    
  3. Output
    ./xen_s4sk.sh output
    
  4. You can verify its content:
    tree ../output
    output/
    ├── dom0
    │   ├── Image
    │   ├── r8a779f0-s4sk-proto-xen.dtb
    │   ├── uInitramfs
    │   ├── xen-uImage
    │   └── xenpolicy-s4sk-proto
    ├── domd
    │   └── rcar-image-minimal-s4sk-proto.tar.bz2
    ├── domu
    │   └── rcar-image-minimal-s4sk-proto.tar.bz2
    └── ipl
        ├── bl31-s4sk-proto.srec
        ├── tee-s4sk-proto.srec
        └── u-boot-elf-s4sk-proto.srec
    

How to boot

Update the loader

Write the binaries(bl31-s4sk-proto.srec tee-s4sk-proto.srec u-boot-elf-s4sk-proto.srec) in the output/ipl directory to S4SK.
If you do not have other binaries, please contact the S4SK-Proto board provider.
See here for the writing procedure.

Loading kernel and rootfs via SD card

This section describes steps that are necessary for preparing and booting from SD card.

Preparing SD card(32GB or more)

WARNING! These steps will erase the SD card completely. In short, all files will be lost.
Follow these steps on the host machine:

  1. Divide the SD card into three partions and set ID=83(Linux) for each.
    $ fdisk /dev/mmcblk0
    -> n
    -> p
    -> 1
    -> (enter to select default begin block)
    -> +10G (size of 1st partition)
    -> t
    -> 83
    -> n
    -> p
    -> 2
    -> (enter to select default begin block)
    -> +10G (size of 2nd partition)
    -> t
    -> 83
    -> n
    -> p
    -> 3
    -> (enter to select default begin block)
    -> +10G (size of 3rd partition)
    -> t
    -> 83
    
  2. Format each partition to ext4
    $ mkfs.ext4 /dev/mmcblk0p1
    $ mkfs.ext4 /dev/mmcblk0p2
    $ mkfs.ext4 /dev/mmcblk0p3
    
  3. Deploy images to SD card.
    $ mount /dev/mmcblk0p1 /mnt
    $ cd build-xen
    $ cp output/dom0/* /mnt/
    $ umount /mnt
    $ mount /dev/mmcblk0p2 /mnt
    $ tar jxf output/domd/rcar-image-minimal-s4sk-proto.tar.bz2 -C /mnt/
    $ umount /mnt
    $ mount /dev/mmcblk0p3 /mnt
    $ tar jxf output/domu/rcar-image-minimal-s4sk-proto.tar.bz2 -C /mnt
    $ umount /mnt
    
    NOTE: probably you need to be a root user, hence use "sudo"

Configure U-Boot to boot from SD card

  • Proper U-Boot command to boot from SD:
    setenv initrd_high 0xffffffffffffffff 
    setenv bootargs 
    setenv bootcmd 'run bootcmd_sdcard' 
    setenv bootcmd_sdcard 'run sdcard_xen_load; run sdcard_dtb_load; run sdcard_kernel_load; run sdcard_xenpolicy_load; run sdcard_initramfs_load; bootm 0x48080000 0x84000000 0x48000000' 
    setenv sdcard_dtb_load 'ext4load mmc 0:1 0x48000000 r8a779f0-s4sk-proto-xen.dtb; fdt addr 0x48000000; fdt resize; fdt mknode / boot_dev; fdt set /boot_dev device mmcblk0' 
    setenv sdcard_initramfs_load 'ext4load mmc 0:1 0x84000000 uInitramfs' 
    setenv sdcard_kernel_load 'ext4load mmc 0:1 0x7a000000 Image' 
    setenv sdcard_xen_load 'ext4load mmc 0:1 0x48080000 xen-uImage' 
    setenv sdcard_xenpolicy_load 'ext4load mmc 0:1 0x7c000000 xenpolicy-s4sk-proto' 
    run bootcmd
    

Confirmed Xen Commands

Dom0

  • Get information about Xen host (xl info)
    root@generic-armv8-xt-dom0:~# xl info
    host                   : generic-armv8-xt-dom0
    release                : 5.10.41-yocto-tiny
    version                : #1 SMP PREEMPT Tue Nov 15 10:40:16 UTC 2022
    machine                : aarch64
    nr_cpus                : 8
    max_cpu_id             : 7
    nr_nodes               : 1
    cores_per_socket       : 1
    threads_per_core       : 1
    cpu_mhz                : 16.666
    hw_caps                : 00000000:00000000:00000000:00000000:00000000:00000000:00000000:00000000
    virt_caps              : hvm hvm_directio hap iommu_hap_pt_share vpmu gnttab-v1
    total_memory           : 3968
    free_memory            : 2013
    sharing_freed_memory   : 0
    sharing_used_memory    : 0
    outstanding_claims     : 0
    free_cpus              : 0
    xen_major              : 4
    xen_minor              : 17
    xen_extra              : -unstable
    xen_version            : 4.17-unstable
    xen_caps               : xen-3.0-aarch64 xen-3.0-armv7l
    xen_scheduler          : credit2
    xen_pagesize           : 4096
    platform_params        : virt_start=0x200000
    xen_changeset          : Wed Jun 15 15:12:12 2022 +0300 git:4b09677806-dirty
    xen_commandline        : dom0_mem=256M console=dtuart dtuart=/soc/serial@e6540000 dom0_max_vcpus=2 loglvl=all xsm=flask flask=permissive bootscrub=0 pci-passthrough=on
    cc_compiler            : aarch64-poky-linux-gcc (GCC) 9.3.0
    cc_compile_by          : xen-4.17.0+gitA
    cc_compile_domain      : poky
    cc_compile_date        : 2022-06-16
    build_id               : bce36987e188c7c50ebb374769702ad5bbf915c5
    xend_config_format     : 4
    root@generic-armv8-xt-dom0:~#
    
  • List information about all/some domains (xl list)
    root@generic-armv8-xt-dom0:~# xl list
    Name                                        ID   Mem VCPUs      State   Time(s)
    Domain-0                                     0   256     2     r-----      15.3
    DomD                                         1  1021     4     -b----      16.1
    DomU                                         2   511     2     -b----       8.6
    root@generic-armv8-xt-dom0:~#
    
  • Terminate a domain immediately (xl destory DomU)
    root@generic-armv8-xt-dom0:~# xl list
    Name                                        ID   Mem VCPUs      State   Time(s)
    Domain-0                                     0   256     2     r-----      18.1
    DomD                                         1  1021     4     -b----      16.8
    DomU                                         2   511     2     -b----       9.0
    root@generic-armv8-xt-dom0:~# xl destroy DomU
    root@generic-armv8-xt-dom0:~# xl list
    Name                                        ID   Mem VCPUs      State   Time(s)
    Domain-0                                     0   256     2     r-----      18.8
    DomD                                         1  1023     4     -b----      17.6
    root@generic-armv8-xt-dom0:~#
    
  • Create a domain from config file <filename> (xl create <config file>)
    root@generic-armv8-xt-dom0:~# xl list
    Name                                        ID   Mem VCPUs      State   Time(s)
    Domain-0                                     0   256     2     r-----      50.7
    DomD                                         1  1023     4     -b----      20.4
    root@generic-armv8-xt-dom0:~# xl create /etc/xen/domu.cfg
    Parsing config from /etc/xen/domu.cfg
    libxl: info: libxl_create.c:121:libxl__domain_build_info_setdefault: qemu-xen is unavailable, using qemu-xen-traditional instead: No such file or directory
    (XEN) GICv3: Mapping ITS translation register to d3:addr=0x00000000f1050000 size=0x0000000000010000
    libxl: error: libxl_arm.c:1137:copy_partial_fdt: Can't copy the node "/passthrough" from the partial FDT
    (XEN) memory_map:add: dom3 gfn=e6260 mfn=e6260 nr=10
    (XEN) memory_map:add: dom3 gfn=37fc9 mfn=47fc9 nr=2
    (XEN) ipmmu: /soc/iommu@eefc0000: d3: Set IPMMU context 3 (pgd 0x4f65a0000)
    (XEN) ipmmu: /soc/rswitch_osid1: Using IPMMU context 3
    (XEN) d3v0: vGICD: RAZ on reserved register offset 0x00000c
    (XEN) d3v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER4
    (XEN) d3v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER8
    (XEN) d3v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER12
    (XEN) d3v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER16
    (XEN) d3v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER20
    (XEN) d3v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER24
    (XEN) d3v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER28
    (XEN) d3v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER32
    (XEN) d3v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER36
    (XEN) d3v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER40
    (XEN) d3v0: vGICD: unhandled word write 0x000000ffffffff to ICACTIVER44
    (XEN) d3v0: vGICR: SGI: unhandled word write 0x000000ffffffff to ICACTIVER0
    (XEN) d3v1: vGICR: SGI: unhandled word write 0x000000ffffffff to ICACTIVER0
    (XEN) grant_table.c:1879:d3v1 Expanding d3 grant table from 1 to 2 frames
    (XEN) grant_table.c:1879:d3v1 Expanding d3 grant table from 2 to 3 frames
    root@generic-armv8-xt-dom0:~# xl list
    Name                                        ID   Mem VCPUs      State   Time(s)
    Domain-0                                     0   256     2     r-----      51.7
    DomD                                         1  1021     4     -b----      22.6
    DomU                                         3   511     2     -b----       5.7
    root@generic-armv8-xt-dom0:~#
    
  • Attach to domain's console (xl console DomD)
    root@generic-armv8-xt-dom0:~# xl list
    Name                                        ID   Mem VCPUs      State   Time(s)
    Domain-0                                     0   256     2     r-----      55.3
    DomD                                         1  1021     4     -b----      23.5
    DomU                                         3   511     2     -b----       7.8
    root@generic-armv8-xt-dom0:~# xl console DomD
    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x412fd050]
    [    0.000000] Linux version 5.10.41-yocto-standard (oe-user@oe-host) (aarch64-poky-linux-gcc (GCC) 9.3.0, GNU ld (GNU Binutils) 2.34.0.20200220) #1 SMP PREEMPT Thu Jul 15 12:11:21 UTC 2021
    [    0.000000] Machine model: XENVM-4.17
    [    0.000000] Xen 4.17 support found
    (snip)
    s4sk-proto-domd login: root
    root@s4sk-proto-domd:~#
    
    • Back to Dom0 : ctrl + ]
  • Attach to domain's console (xl console DomU)
    root@generic-armv8-xt-dom0:~# xl list
    Name                                        ID   Mem VCPUs      State   Time(s)
    Domain-0                                     0   256     2     r-----      58.1
    DomD                                         1  1021     4     -b----      24.2
    DomU                                         3   511     2     -b----       8.1
    root@generic-armv8-xt-dom0:~# xl console DomU
    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x412fd050]
    [    0.000000] Linux version 5.10.41-yocto-standard (oe-user@oe-host) (aarch64-poky-linux-gcc (GCC) 9.3.0, GNU ld (GNU Binutils) 2.34.0.20200220) #1 SMP PREEMPT Thu Jul 15 12:11:21 UTC 2021
    [    0.000000] Machine model: XENVM-4.17
    [    0.000000] Xen 4.17 support found
    (snip)
    s4sk-proto-domu login: root
    root@s4sk-proto-domu:~#
    
    • Back to Dom0 : ctrl + ]
  • List the VCPUs for all/some domains (xl vcpu-list)
    root@generic-armv8-xt-dom0:~# xl vcpu-list
    Name                                ID  VCPU   CPU State   Time(s) Affinity (Hard / Soft)
    Domain-0                             0     0    0   -b-       8.1  all / all
    Domain-0                             0     1    1   r--       5.8  all / all
    DomD                                 1     0    2   -b-       4.9  all / all
    DomD                                 1     1    3   -b-       3.6  all / all
    DomD                                 1     2    4   -b-       3.3  all / all
    DomD                                 1     3    5   -b-       4.3  all / all
    DomU                                 2     0    6   -b-       4.2  all / all
    DomU                                 2     1    7   -b-       4.2  all / all
    root@generic-armv8-xt-dom0:~#
    
  • Set which CPUs a VCPU can use (xl vcpu-pin <domain ID> <vCPU> <physical CPUs>)
    root@generic-armv8-xt-dom0:~# xl vcpu-list
    Name                                ID  VCPU   CPU State   Time(s) Affinity (Hard / Soft)
    Domain-0                             0     0    0   r--       6.2  all / all
    Domain-0                             0     1    1   -b-       5.3  all / all
    DomD                                 1     0    2   -b-       4.2  all / all
    DomD                                 1     1    3   -b-       4.1  all / all
    DomD                                 1     2    4   -b-       3.8  all / all
    DomD                                 1     3    5   -b-       3.3  all / all
    DomU                                 2     0    6   -b-       4.1  all / all
    DomU                                 2     1    7   -b-       3.8  all / all
    root@generic-armv8-xt-dom0:~# xl vcpu-pin 1 1 7
    root@generic-armv8-xt-dom0:~# xl vcpu-list
    Name                                ID  VCPU   CPU State   Time(s) Affinity (Hard / Soft)
    Domain-0                             0     0    0   r--       6.4  all / all
    Domain-0                             0     1    1   -b-       5.4  all / all
    DomD                                 1     0    2   -b-       4.2  all / all
    DomD                                 1     1    7   -b-       4.1  7 / all
    DomD                                 1     2    4   -b-       3.8  all / all
    DomD                                 1     3    5   -b-       3.3  all / all
    DomU                                 2     0    6   -b-       4.2  all / all
    DomU                                 2     1    7   -b-       3.8  all / all
    root@generic-armv8-xt-dom0:~#
    
  • Create multiple domains (xl create)
    root@generic-armv8-xt-dom0:~# xl vcpu-list
    Name                                ID  VCPU   CPU State   Time(s) Affinity (Hard / Soft)
    Domain-0                             0     0    0   -b-       5.7  all / all
    Domain-0                             0     1    1   r--       4.6  all / all
    DomD                                 1     0    2   -b-       4.9  all / all
    DomD                                 1     1    3   -b-       3.5  all / all
    DomD                                 1     2    4   -b-       3.2  all / all
    DomD                                 1     3    6   -b-       3.3  all / all
    DomU                                 2     0    5   -b-       3.7  all / all
    DomU                                 2     1    7   -b-       3.3  all / all
    root@generic-armv8-xt-dom0:~# cp /etc/xen/domu.cfg /etc/xen/domu1.cfg
    root@generic-armv8-xt-dom0:~# cp /etc/xen/domu.cfg /etc/xen/domu2.cfg
    root@generic-armv8-xt-dom0:~# cp /etc/xen/domu.cfg /etc/xen/domu3.cfg
    root@generic-armv8-xt-dom0:~# vi /etc/xen/domu1.cfg
    	Before: vif = [ 'backend=DomD, bridge=xenbr0, mac=08:00:27:ff:cb:cf' ]
    	After : vif = [ 'backend=DomD, bridge=xenbr0, mac=08:00:27:ff:cb:d1' ]
    root@generic-armv8-xt-dom0:~# vi /etc/xen/domu2.cfg
    	Before: vif = [ 'backend=DomD, bridge=xenbr0, mac=08:00:27:ff:cb:cf' ]
    	After : vif = [ 'backend=DomD, bridge=xenbr0, mac=08:00:27:ff:cb:d2' ]
    root@generic-armv8-xt-dom0:~# vi /etc/xen/domu3.cfg
    	Before: vif = [ 'backend=DomD, bridge=xenbr0, mac=08:00:27:ff:cb:cf' ]
    	After : vif = [ 'backend=DomD, bridge=xenbr0, mac=08:00:27:ff:cb:d3' ]
    root@generic-armv8-xt-dom0:~#
    root@generic-armv8-xt-dom0:~# xl destroy DomU
    root@generic-armv8-xt-dom0:~# xl vcpu-list
    Name                                ID  VCPU   CPU State   Time(s) Affinity (Hard / Soft)
    Domain-0                             0     0    3   r--       7.2  all / all
    Domain-0                             0     1    0   -b-       6.1  all / all
    DomD                                 1     0    6   -b-       6.4  all / all
    DomD                                 1     1    5   -b-       4.4  all / all
    DomD                                 1     2    1   -b-       4.2  all / all
    DomD                                 1     3    7   -b-       4.0  all / all
    root@generic-armv8-xt-dom0:~# xl create /etc/xen/domu1.cfg 'name="DomU-1" ; vcpus="1" ; cpus="all" ; memory="128" ; tee = [] ; dt_passthrough_nodes = [] ; dtdev = [] ; irqs = [] ; iomem = [] ; renesas_vmq = []'
    Parsing config from /etc/xen/domu1.cfg
    libxl: info: libxl_create.c:121:libxl__domain_build_info_setdefault: qemu-xen is unavailable, using qemu-xen-traditional instead: No such file or directory
    (XEN) GICv3: Mapping ITS translation register to d4:addr=0x00000000f1050000 size=0x0000000000010000
    libxl: error: libxl_arm.c:1137:copy_partial_fdt: Can't copy the node "/passthrough" from the partial FDT
    root@generic-armv8-xt-dom0:~# (XEN) d4v0: vGICD: RAZ on reserved register offset 0x00000c
    (XEN) d4v0: vGICR: SGI: unhandled word write 0x000000ffffffff to ICACTIVER0
    (XEN) grant_table.c:1879:d4v0 Expanding d4 grant table from 1 to 2 frames
    
    root@generic-armv8-xt-dom0:~# xl create /etc/xen/domu2.cfg 'name="DomU-2" ; vcpus="1" ; cpus="all" ;
     memory="128" ; tee = [] ; dt_passthrough_nodes = [] ; dtdev = [] ; irqs = [] ; iomem = [] ; renesas
    _vmq = []'
    (snip)
    
    root@generic-armv8-xt-dom0:~# xl create /etc/xen/domu3.cfg 'name="DomU-3" ; vcpus="1" ; cpus="all" ;
     memory="128" ; tee = [] ; dt_passthrough_nodes = [] ; dtdev = [] ; irqs = [] ; iomem = [] ; renesas
    _vmq = []'
    (snip)
    
    root@generic-armv8-xt-dom0:~# xl vcpu-list
    Name                                ID  VCPU   CPU State   Time(s) Affinity (Hard / Soft)
    Domain-0                             0     0    3   -b-       9.1  all / all
    Domain-0                             0     1    0   r--       7.4  all / all
    DomD                                 1     0    6   r--       9.3  all / all
    DomD                                 1     1    5   r--       6.1  all / all
    DomD                                 1     2    1   -b-       5.3  all / all
    DomD                                 1     3    7   -b-       5.0  all / all
    DomU-1                               4     0    3   -b-       6.7  all / all
    DomU-2                               5     0    4   -b-       7.2  all / all
    DomU-3                               6     0    2   r--       2.7  all / all
    root@generic-armv8-xt-dom0:~#
    

DomD / DomU

  • Attach to domain's console (xl console DomD)
    root@generic-armv8-xt-dom0:~# xl console DomD
    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x412fd050]
    [    0.000000] Linux version 5.10.41-yocto-standard (oe-user@oe-host) (aarch64-poky-linux-gcc (GCC) 9.3.0, GNU ld (GNU Binutils) 2.34.0.20200220) #1 SMP PREEMPT Thu Jul 15 12:11:21 UTC 2021
    (snip)
    s4sk-proto-domd login: root
    root@s4sk-proto-domd:~#
    
    • Back to Dom0 : ctrl + ]
  • Attach to domain's console (xl console DomU)
    root@generic-armv8-xt-dom0:~# xl console DomU
    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x412fd050]
    [    0.000000] Linux version 5.10.41-yocto-standard (oe-user@oe-host) (aarch64-poky-linux-gcc (GCC) 9.3.0, GNU ld (GNU Binutils) 2.34.0.20200220) #1 SMP PREEMPT Thu Jul 15 12:11:21 UTC 2021
    (snip)
    s4sk-proto-domu login: root
    root@s4sk-proto-domu:~#
    
    • Back to Dom0 : ctrl + ]
  • Ethernet TSN (DomD)
    root@generic-armv8-xt-dom0:~# xl console DomD
    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x412fd050]
    [    0.000000] Linux version 5.10.41-yocto-standard (oe-user@oe-host) (aarch64-poky-linux-gcc (GCC) 9.3.0, GNU ld (GNU Binutils) 2.34.0.20200220) #1 SMP PREEMPT Thu Jul 15 12:11:21 UTC 2021
    (snip)
    Poky (Yocto Project Reference Distro) 3.1.16 s4sk-proto-domd hvc0
    
    s4sk-proto-domd login: root
    root@s4sk-proto-domd:~# ifconfig tsn0 192.168.10.10
    [  302.163420] rswitch_get_phy_node PHY interface = usxgmii
    [  302.165252] libphy: rswitch_mii: probed
    [  302.230256] Generic Clause 45 PHY etha0:00: attached PHY driver [Generic Clause 45 PHY] (mii_bus:phy_addr=etha0:00, irq=POLL)
    root@s4sk-proto-domd:~# ifconfig tsn0
    tsn0      Link encap:Ethernet  HWaddr 86:5E:BC:7C:2A:FC
              inet addr:192.168.10.10  Bcast:192.168.10.255  Mask:255.255.255.0
              inet6 addr: fe80::845e:bcff:fe7c:2afc/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:0 (0.0 B)  TX bytes:1346 (1.3 KiB)
    
    root@s4sk-proto-domd:~#
    
  • Ethernet TSN (DomU)
    root@generic-armv8-xt-dom0:~# xl console DomU
    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x412fd050]
    [    0.000000] Linux version 5.10.41-yocto-standard (oe-user@oe-host) (aarch64-poky-linux-gcc (GCC) 9.3.0, GNU ld (GNU Binutils) 2.34.0.20200220) #1 SMP PREEMPT Thu Jul 15 12:11:21 UTC 2021
    (snip)
    Poky (Yocto Project Reference Distro) 3.1.16 s4sk-proto-domu hvc0
    
    s4sk-proto-domu login: root
    
    root@s4sk-proto-domu:~# ifconfig tsn1 192.168.10.100
    root@s4sk-proto-domu:~# ifconfig tsn1
    tsn1      Link encap:Ethernet  HWaddr FE:5F:1D:9C:2D:0B
              inet addr:192.168.10.100  Bcast:192.168.10.255  Mask:255.255.255.0
              inet6 addr: fe80::fc5f:1dff:fe9c:2d0b/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:44 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:0 (0.0 B)  TX bytes:8686 (8.4 KiB)
    
    root@s4sk-proto-domu:~#