Difference between revisions of "BoraX Embedded Linux Kit (BXELK)"

From DAVE Developer's Wiki
Jump to: navigation, search
(Kit content)
(Quick start guide)
Line 59: Line 59:
 
{{ImportantMessage|text='''Customers are strongly recommended to register their kits'''. Registration grants access to reserved material such as source code and additional documentation.}}
 
{{ImportantMessage|text='''Customers are strongly recommended to register their kits'''. Registration grants access to reserved material such as source code and additional documentation.}}
  
Please register your development kit by sending an email to [mailto:support-lynx@dave.eu support-lynx@dave.eu], providing the kit P/N and CODE.
+
Please register your development kit by sending an email to [mailto:support-bora@dave.eu support-bora@dave.eu], providing the kit P/N and CODE.
  
 
===Target setup and first boot===
 
===Target setup and first boot===
This section describes how to quick start SBC Lynx board delivered along with BXELK kit:
+
This section describes how to quickly start BoraX/BoraXEVB system included in the BXELK:
*connect a TTL/USB serial cable to J42 connector; J42 pinout is:
+
*on target side, connect a null-modem cable on J17 DB9 connector, denoted also as UART1
** 1: TX data
+
*on host side, connect the other end of the null-modem cable to a COM port and start your favorite terminal software that will be used to interact with the target's serial console; communication parameters are 115200-8-N-1
** 2: RX data
+
*optionally connect the BoraXEVB board to an Ethernet LAN by plugging cable into connector J8, also denoted as BORAX ETHERNET
** 3: 3.3V
+
*connect 12V power supply to JP2 connector, also denoted as PSU 12V JACK
** 4: GND
+
*insert the microSD card in the slot J21, also denoted as MICROSD.
*on host side start your favorite terminal that will be used to interact with the target's serial console; communication parameters are 115200-8-N-1
 
*optionally connect the system to Ethernet LAN by plugging cable into connector J16
 
*connect 12V power supply to J35 connector; J35 pinout is:
 
**1: GND
 
**2: VIN
 
*insert microSD card in the slot J43.
 
  
  
[[File:SBCLynx-BXELK.png|thumb|center|600px|Target setup for first boot]]
+
[[File:TBD.png|thumb|center|600px|Target setup for first boot]]
  
  
Once power has been applied to the target, U-Boot bootloader will be fetched from the SPI NOR flash and executed. Boot messages will be printed out to the serial console. Redundant U-Boot environment is stored in the NOR flash as well, as depicted in the following image.
+
Once power has been applied to the target, FSBL and U-Boot bootloaders will be fetched from the SPI NOR flash that equips BoraX SOM and executed. Boot messages will be printed out to the serial console. Redundant U-Boot environment is stored in the NOR flash as well, as depicted in the following image.
  
  
[[File:Xub-nor.png|thumb|center|350px|NOR flash default partitioning]]
+
[[File:TBD.png|thumb|center|350px|NOR flash default partitioning]]
  
  
Line 89: Line 83:
 
The following dump shows the typical messages printed out to the console during bootstrap process.
 
The following dump shows the typical messages printed out to the console during bootstrap process.
 
<pre class="mw-collapsible mw-collapsed">
 
<pre class="mw-collapsible mw-collapsed">
U-Boot 2015.04 (Mar 31 2016 - 23:22:16)-xuelk-0.9.0
+
TBD
 
 
CPU:  Freescale i.MX6UL rev1.0 at 396 MHz
 
CPU:  Temperature 30 C
 
Reset cause: POR
 
Board: MX6UL LYNX
 
I2C:  ready
 
DRAM:  512 MiB
 
PMIC: PFUZE300 DEV_ID=0x30 REV_ID=0x11
 
NAND:  1024 MiB
 
MMC:  FSL_SDHC: 0
 
SF: Detected S25FL256S_64K with page size 256 Bytes, erase size 64 KiB, total 32 MiB
 
In:    serial
 
Out:  serial
 
Err:  serial
 
SOM ConfigID#: 00000008
 
SOM UniqueID#: e317402a:1735b1d4
 
CB ConfigID#: 0000000e
 
CB UniqueID#: a0000011:0dcf672d
 
Board: MX6UL-Lynx
 
Net:  FEC0
 
Normal Boot
 
Hit any key to stop autoboot:  0
 
starting USB...
 
USB0:  Port not available.
 
USB1:  USB EHCI 1.00
 
scanning bus 1 for devices... 1 USB Device(s) found
 
      scanning usb for storage devices... 0 Storage Device(s) found
 
      scanning usb for ethernet devices... 0 Ethernet Device(s) found
 
 
 
USB device 0: unknown device
 
** Bad device usb 0 **
 
switch to partitions #0, OK
 
mmc0 is current device
 
reading boot.scr
 
228 bytes read in 12 ms (18.6 KiB/s)
 
Running bootscript from mmc ...
 
## Executing script at 80800000
 
bootscript generated with command "mkimage -T script -C none -n SBC-Lynx -d bootscript.txt boot.scr"
 
Booting SBC-Lynx via mmcboot
 
reading uImage
 
6033832 bytes read in 277 ms (20.8 MiB/s)
 
reading imx6ul-lynx.dtb
 
29394 bytes read in 22 ms (1.3 MiB/s)
 
FDT: override 'som_configid' with '00000008'
 
FDT: property cb_configid 0000000e match
 
FDT: override 'som_uniqueid' with 'e317402a:1735b1d4'
 
FDT: override 'cb_uniqueid' with 'a0000011:0dcf672d'
 
## Booting kernel from Legacy Image at 80800000 ...
 
  Image Name:  Linux-3.14.52-xuelk-0.9.0
 
  Image Type:  ARM Linux Kernel Image (uncompressed)
 
  Data Size:    6033768 Bytes = 5.8 MiB
 
  Load Address: 80008000
 
  Entry Point:  80008000
 
  Verifying Checksum ... OK
 
## Flattened Device Tree blob at 83000000
 
  Booting using the fdt blob at 0x83000000
 
EHCI failed to shut down host controller.
 
  Loading Kernel Image ... OK
 
  Using Device Tree in place at 83000000, end 8300a2d1
 
switch to ldo_bypass mode!
 
 
 
Starting kernel ...
 
 
 
Booting Linux on physical CPU 0x0
 
Linux version 3.14.52-xuelk-0.9.0 (amon@linuxserver2) (gcc version 4.9.2 (GCC) ) #2 SMP PREEMPT Thu Mar 31 22:53:29 CEST 2016
 
CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c53c7d
 
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
 
Machine model: Freescale i.MX6 UltraLite LYNX Board
 
cma: CMA: reserved 320 MiB at 8c000000
 
Memory policy: Data cache writealloc
 
PERCPU: Embedded 8 pages/cpu @8bb41000 s8320 r8192 d16256 u32768
 
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 130048
 
Kernel command line: root=/dev/mmcblk1p2 rootwait rw console=ttymxc0,115200 vmalloc=400M mtdparts=gpmi-nand:8M(nand-uboot),1M(nand-env1),1M(nand-env2),1M(nand-fdt),1M(nand-spare),8M(nand-kernel),4M(nand-splash),-(nand-ubi);spi0.0:1M(spi-uboot),256k(spi-env1),256k(spi-env2),512k(spi-dtb),6M(spi-kernel),4M(spi-splash),-(spi-free)
 
PID hash table entries: 2048 (order: 1, 8192 bytes)
 
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
 
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
 
Memory: 179908K/524288K available (7511K kernel code, 461K rwdata, 2596K rodata, 392K init, 433K bss, 344380K reserved, 0K highmem)
 
Virtual kernel memory layout:
 
    vector  : 0xffff0000 - 0xffff1000  (  4 kB)
 
    fixmap  : 0xfff00000 - 0xfffe0000  ( 896 kB)
 
    vmalloc : 0xa0800000 - 0xff000000  (1512 MB)
 
    lowmem  : 0x80000000 - 0xa0000000  ( 512 MB)
 
    pkmap  : 0x7fe00000 - 0x80000000  (  2 MB)
 
    modules : 0x7f000000 - 0x7fe00000  (  14 MB)
 
      .text : 0x80008000 - 0x809e7134  (10109 kB)
 
      .init : 0x809e8000 - 0x80a4a080  ( 393 kB)
 
      .data : 0x80a4c000 - 0x80abf400  ( 461 kB)
 
      .bss : 0x80abf40c - 0x80b2ba5c  ( 434 kB)
 
SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
 
Preemptible hierarchical RCU implementation.
 
        RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=1.
 
RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
 
NR_IRQS:16 nr_irqs:16 16
 
Switching to timer-based delay loop
 
sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 1431655765682ns
 
clocksource_of_init: no matching clocksources found
 
Console: colour dummy device 80x30
 
Calibrating delay loop (skipped), value calculated using timer frequency.. 6.00 BogoMIPS (lpj=30000)
 
pid_max: default: 32768 minimum: 301
 
Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
 
Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
 
CPU: Testing write buffer coherency: ok
 
/cpus/cpu@0 missing clock-frequency property
 
CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
 
Setting up static identity map for 0x807267c0 - 0x80726818
 
Brought up 1 CPUs
 
SMP: Total of 1 processors activated (6.00 BogoMIPS).
 
CPU: All CPU(s) started in SVC mode.
 
devtmpfs: initialized
 
VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
 
pinctrl core: initialized pinctrl subsystem
 
regulator-dummy: no parameters
 
NET: Registered protocol family 16
 
DMA: preallocated 256 KiB pool for atomic coherent allocations
 
cpuidle: using governor ladder
 
cpuidle: using governor menu
 
Use WDOG1 as reset source
 
syscon 20c8000.anatop: regmap [mem 0x020c8000-0x020c8fff] registered
 
vdd3p0: 2625 <--> 3400 mV at 3000 mV
 
cpu: 725 <--> 1450 mV
 
vddsoc: 725 <--> 1450 mV
 
syscon 20e4000.iomuxc-gpr: regmap [mem 0x020e4000-0x020e7fff] registered
 
syscon 21ac000.romcp: regmap [mem 0x021ac000-0x021affff] registered
 
syscon 21bc000.ocotp-ctrl: regmap [mem 0x021bc000-0x021bffff] registered
 
hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
 
hw-breakpoint: maximum watchpoint size is 8 bytes.
 
imx6ul-pinctrl 20e0000.iomuxc: initialized IMX pinctrl driver
 
20dc000.gpc supply pu not found, using dummy regulator
 
bio: create slab <bio-0> at 0
 
mxs-dma 1804000.dma-apbh: initialized
 
vref-3v3: 3300 mV
 
usb_otg1_vbus: 5000 mV
 
usb_otg2_vbus: 5000 mV
 
i2c-core: driver [max17135] using legacy suspend method
 
i2c-core: driver [max17135] using legacy resume method
 
SCSI subsystem initialized
 
usbcore: registered new interface driver usbfs
 
usbcore: registered new interface driver hub
 
usbcore: registered new device driver usb
 
i2c i2c-0: IMX I2C adapter registered
 
Linux video capture interface: v2.00
 
pps_core: LinuxPPS API ver. 1 registered
 
pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
 
PTP clock support registered
 
MIPI CSI2 driver module loaded
 
Advanced Linux Sound Architecture Driver Initialized.
 
Bluetooth: Core ver 2.18
 
NET: Registered protocol family 31
 
Bluetooth: HCI device and connection manager initialized
 
Bluetooth: HCI socket layer initialized
 
Bluetooth: L2CAP socket layer initialized
 
Bluetooth: SCO socket layer initialized
 
cfg80211: Calling CRDA to update world regulatory domain
 
Switched to clocksource mxc_timer1
 
NET: Registered protocol family 2
 
TCP established hash table entries: 4096 (order: 2, 16384 bytes)
 
TCP bind hash table entries: 4096 (order: 3, 32768 bytes)
 
TCP: Hash tables configured (established 4096 bind 4096)
 
TCP: reno registered
 
UDP hash table entries: 256 (order: 1, 8192 bytes)
 
UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
 
NET: Registered protocol family 1
 
RPC: Registered named UNIX socket transport module.
 
RPC: Registered udp transport module.
 
RPC: Registered tcp transport module.
 
RPC: Registered tcp NFSv4.1 backchannel transport module.
 
imx rpmsg driver is registered.
 
Bus freq driver module loaded
 
futex hash table entries: 256 (order: 2, 16384 bytes)
 
VFS: Disk quotas dquot_6.5.2
 
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
 
NFS: Registering the id_resolver key type
 
Key type id_resolver registered
 
Key type id_legacy registered
 
jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
 
fuse init (API version 7.22)
 
msgmni has been set to 991
 
io scheduler noop registered
 
io scheduler deadline registered
 
io scheduler cfq registered (default)
 
imx-weim 21b8000.weim: Driver registered.
 
MIPI DSI driver module loaded
 
MIPI DSI driver module loaded
 
imx-sdma 20ec000.sdma: no event needs to be remapped
 
imx-sdma 20ec000.sdma: loaded firmware 3.2
 
imx-sdma 20ec000.sdma: initialized
 
pfuze100-regulator 0-0008: Full layer: 1, Metal layer: 1
 
pfuze100-regulator 0-0008: FAB: 0, FIN: 0
 
pfuze100-regulator 0-0008: pfuze3000 found.
 
SW1A: 700 <--> 3300 mV at 3300 mV
 
SW1B: 700 <--> 1475 mV at 1175 mV
 
SW2: 2500 <--> 3300 mV at 3300 mV
 
SW3: 900 <--> 1650 mV at 1350 mV
 
SWBST: 5000 <--> 5150 mV at 5000 mV
 
VSNVS: 1000 <--> 3000 mV at 3000 mV
 
VREFDDR: 750 mV
 
VLDO1: 1800 <--> 3300 mV at 3300 mV
 
VLDO2: 800 <--> 1550 mV at 1500 mV
 
VCCSD: 2850 <--> 3300 mV at 3300 mV
 
V33: 2850 <--> 3300 mV at 3300 mV
 
VLDO3: 1800 <--> 3300 mV at 1800 mV
 
VLDO4: 1800 <--> 3300 mV at 1800 mV
 
Serial: IMX driver
 
2018000.serial: ttymxc6 at MMIO 0x2018000 (irq = 71, base_baud = 5000000) is a IMX
 
2020000.serial: ttymxc0 at MMIO 0x2020000 (irq = 58, base_baud = 5000000) is a IMX
 
console [ttymxc0] enabled
 
21ec000.serial: ttymxc2 at MMIO 0x21ec000 (irq = 60, base_baud = 5000000) is a IMX
 
serial: Freescale lpuart driver
 
imx sema4 driver is registered.
 
[drm] Initialized drm 1.1.0 20060810
 
[drm] Initialized vivante 1.0.0 20120216 on minor 0
 
brd: module loaded
 
loop: module loaded
 
nand: device found, Manufacturer ID: 0x01, Chip ID: 0xd3
 
nand: AMD/Spansion S34ML08G1
 
nand: 1024MiB, SLC, page size: 2048, OOB size: 64
 
gpmi-nand 1806000.gpmi-nand: mode:4 ,failed in set feature.
 
Scanning device for bad blocks
 
random: nonblocking pool is initialized
 
Bad eraseblock 5903 at 0x00002e1e0000
 
8 cmdlinepart partitions found on MTD device gpmi-nand
 
Creating 8 MTD partitions on "gpmi-nand":
 
0x000000000000-0x000000800000 : "nand-uboot"
 
0x000000800000-0x000000900000 : "nand-env1"
 
0x000000900000-0x000000a00000 : "nand-env2"
 
0x000000a00000-0x000000b00000 : "nand-fdt"
 
0x000000b00000-0x000000c00000 : "nand-spare"
 
0x000000c00000-0x000001400000 : "nand-kernel"
 
0x000001400000-0x000001800000 : "nand-splash"
 
0x000001800000-0x000040000000 : "nand-ubi"
 
gpmi-nand 1806000.gpmi-nand: driver registered.
 
m25p80 spi0.0: s25fl256s1 (32768 Kbytes)
 
7 cmdlinepart partitions found on MTD device spi0.0
 
Creating 7 MTD partitions on "spi0.0":
 
0x000000000000-0x000000100000 : "spi-uboot"
 
0x000000100000-0x000000140000 : "spi-env1"
 
0x000000140000-0x000000180000 : "spi-env2"
 
0x000000180000-0x000000200000 : "spi-dtb"
 
0x000000200000-0x000000800000 : "spi-kernel"
 
0x000000800000-0x000000c00000 : "spi-splash"
 
0x000000c00000-0x000002000000 : "spi-free"
 
spi_imx 2008000.ecspi: probed
 
CAN device driver interface
 
2188000.ethernet supply phy not found, using dummy regulator
 
pps pps0: new PPS source ptp0
 
libphy: fec_enet_mii_bus: probed
 
fec 2188000.ethernet eth0: registered PHC device 0
 
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
 
ehci-mxc: Freescale On-Chip EHCI Host driver
 
usbcore: registered new interface driver usb-storage
 
usbcore: registered new interface driver usb_ehset_test
 
2184800.usbmisc supply vbus-wakeup not found, using dummy regulator
 
ci_hdrc ci_hdrc.1: EHCI Host Controller
 
ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 1
 
ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00
 
hub 1-0:1.0: USB hub found
 
hub 1-0:1.0: 1 port detected
 
mousedev: PS/2 mouse device common for all mice
 
snvs_pwrkey 20cc000.snvs-pwrkey: can't get snvs clock
 
input: 20cc000.snvs-pwrkey as /devices/soc0/soc.0/2000000.aips-bus/20cc000.snvs-pwrkey/input/input0
 
snvs_pwrkey 20cc000.snvs-pwrkey: i.MX snvs powerkey probed
 
i2c-core: driver [isl29023] using legacy suspend method
 
i2c-core: driver [isl29023] using legacy resume method
 
snvs_rtc 20cc034.snvs-rtc-lp: can't get snvs-rtc clock
 
snvs_rtc 20cc034.snvs-rtc-lp: rtc core: registered 20cc034.snvs-rtc-lp as rtc0
 
i2c /dev entries driver
 
IR NEC protocol handler initialized
 
IR RC5(x) protocol handler initialized
 
IR RC6 protocol handler initialized
 
IR JVC protocol handler initialized
 
IR Sony protocol handler initialized
 
IR RC5 (streamzap) protocol handler initialized
 
IR SANYO protocol handler initialized
 
IR MCE Keyboard/mouse protocol handler initialized
 
i2c-core: driver [mag3110] using legacy suspend method
 
i2c-core: driver [mag3110] using legacy resume method
 
imx2-wdt 20bc000.wdog: IMX2+ Watchdog Timer enabled. timeout=60s (nowayout=0)
 
Bluetooth: HCI UART driver ver 2.2
 
Bluetooth: HCI H4 protocol initialized
 
Bluetooth: HCI BCSP protocol initialized
 
Bluetooth: HCIATH3K protocol initialized
 
usbcore: registered new interface driver bcm203x
 
usbcore: registered new interface driver btusb
 
usbcore: registered new interface driver ath3k
 
sdhci: Secure Digital Host Controller Interface driver
 
sdhci: Copyright(c) Pierre Ossman
 
sdhci-pltfm: SDHCI platform and OF driver helper
 
mmc1: no vqmmc regulator found
 
mmc1: no vmmc regulator found
 
mmc1: SDHCI controller on 2194000.usdhc [2194000.usdhc] using ADMA
 
caam 2140000.caam: Instantiated RNG4 SH0
 
mmc1: host does not support reading read-only switch. assuming write-enable.
 
caam 2140000.caam: Instantiated RNG4 SH1
 
caam 2140000.caam: device ID = 0x0a160300 (Era 8)
 
caam 2140000.caam: job rings = 3, qi = 0
 
mmc1: new high speed SDHC card at address 1234
 
mmcblk1: mmc1:1234 SA16G 14.4 GiB
 
mmcblk1: p1 p2
 
caam algorithms registered in /proc/crypto
 
caam_jr 2141000.jr0: registering rng-caam
 
platform caam_sm: blkkey_ex: 8 keystore units available
 
platform caam_sm: 64-bit clear key:
 
platform caam_sm: [0000] 00 01 02 03 04 0f 06 07
 
platform caam_sm: 64-bit black key:
 
platform caam_sm: [0000] 5f 69 65 43 d8 01 d4 35
 
platform caam_sm: [0008] 72 51 75 22 a5 33 93 cf
 
platform caam_sm: 128-bit clear key:
 
platform caam_sm: [0000] 00 01 02 03 04 0f 06 07
 
platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f
 
platform caam_sm: 128-bit black key:
 
platform caam_sm: [0000] 7e 83 f5 8e ed bd bf 4e
 
platform caam_sm: [0008] 6f 98 a2 68 c3 30 a3 81
 
platform caam_sm: 192-bit clear key:
 
platform caam_sm: [0000] 00 01 02 03 04 0f 06 07
 
platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f
 
platform caam_sm: [0016] 10 11 12 13 14 15 16 17
 
platform caam_sm: 192-bit black key:
 
platform caam_sm: [0000] 73 ba ab 08 93 75 f2 e3
 
platform caam_sm: [0008] 66 73 d2 17 0c a7 f3 08
 
platform caam_sm: [0016] 5b ee ee 28 37 82 c6 d6
 
platform caam_sm: [0024] 75 3f 5e fc 50 be 9f c9
 
platform caam_sm: 256-bit clear key:
 
platform caam_sm: [0000] 00 01 02 03 04 0f 06 07
 
platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f
 
platform caam_sm: [0016] 10 11 12 13 14 15 16 17
 
platform caam_sm: [0024] 18 19 1a 1b 1c 1d 1e 1f
 
platform caam_sm: 256-bit black key:
 
platform caam_sm: [0000] da 35 27 8d 68 e2 e8 44
 
platform caam_sm: [0008] 58 3a 7d 32 ea 54 dc 77
 
platform caam_sm: [0016] 48 a1 28 bc a2 71 ad 8d
 
platform caam_sm: [0024] 6f 9a 59 ba 5c 35 63 56
 
platform caam_sm: 64-bit unwritten blob:
 
platform caam_sm: [0000] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0008] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0016] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0024] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0032] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0040] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0048] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0056] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0064] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0072] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0080] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0088] 00 00 00 00 00 00 00 00
 
platform caam_sm: 128-bit unwritten blob:
 
platform caam_sm: [0000] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0008] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0016] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0024] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0032] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0040] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0048] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0056] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0064] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0072] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0080] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0088] 00 00 00 00 00 00 00 00
 
platform caam_sm: 196-bit unwritten blob:
 
platform caam_sm: [0000] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0008] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0016] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0024] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0032] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0040] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0048] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0056] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0064] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0072] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0080] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0088] 00 00 00 00 00 00 00 00
 
platform caam_sm: 256-bit unwritten blob:
 
platform caam_sm: [0000] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0008] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0016] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0024] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0032] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0040] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0048] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0056] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0064] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0072] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0080] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0088] 00 00 00 00 00 00 00 00
 
platform caam_sm: 64-bit black key in blob:
 
platform caam_sm: [0000] 76 1a d3 a8 86 30 b4 a9
 
platform caam_sm: [0008] 03 2d 01 ef dd 15 89 7c
 
platform caam_sm: [0016] d3 b3 14 03 ff 1d 6d ef
 
platform caam_sm: [0024] b1 74 a7 d4 2e 7f 3a 65
 
platform caam_sm: [0032] d5 b2 b6 56 e8 b0 82 cf
 
platform caam_sm: [0040] d4 59 c7 be 73 47 b9 db
 
platform caam_sm: [0048] 6f 44 84 81 a1 04 13 d9
 
platform caam_sm: [0056] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0064] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0072] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0080] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0088] 00 00 00 00 00 00 00 00
 
platform caam_sm: 128-bit black key in blob:
 
platform caam_sm: [0000] 50 a0 64 22 80 35 36 4e
 
platform caam_sm: [0008] 1c 6a 31 07 87 4c db f2
 
platform caam_sm: [0016] 13 6a 4c 47 08 40 e3 87
 
platform caam_sm: [0024] 98 52 fe 72 25 9f 91 dd
 
platform caam_sm: [0032] a6 e0 31 e1 72 50 ea 02
 
platform caam_sm: [0040] 05 a9 62 d8 7e dd 91 48
 
platform caam_sm: [0048] 58 94 2d bd 1c 84 9b 2e
 
platform caam_sm: [0056] 68 b7 16 05 6b 6c 4a 8a
 
platform caam_sm: [0064] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0072] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0080] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0088] 00 00 00 00 00 00 00 00
 
platform caam_sm: 192-bit black key in blob:
 
platform caam_sm: [0000] a5 d5 43 dc 3e a5 72 dc
 
platform caam_sm: [0008] 6a 8c 07 1a 3c 29 29 0d
 
platform caam_sm: [0016] af d9 84 13 68 5f 65 15
 
platform caam_sm: [0024] 67 ae e9 5b 16 26 ab 2c
 
platform caam_sm: [0032] f3 ee 21 2f 51 ea f4 17
 
platform caam_sm: [0040] 27 42 81 f3 ea a2 73 fb
 
platform caam_sm: [0048] 8e b9 45 dd c8 04 9b 67
 
platform caam_sm: [0056] 6a 5f 9f c2 08 dc c7 73
 
platform caam_sm: [0064] 0b a5 46 35 bb 65 ee d1
 
platform caam_sm: [0072] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0080] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0088] 00 00 00 00 00 00 00 00
 
platform caam_sm: 256-bit black key in blob:
 
platform caam_sm: [0000] d6 36 a9 1b df 26 a2 7f
 
platform caam_sm: [0008] 1c 8b 99 8b 33 34 5a 92
 
platform caam_sm: [0016] c4 00 dc dc 51 c4 2c f4
 
platform caam_sm: [0024] c3 11 f6 c7 a2 7c c2 ba
 
platform caam_sm: [0032] 7f 6f 4a d1 a7 7f 7b a0
 
platform caam_sm: [0040] 2f cb f4 4a b8 b8 4d 54
 
platform caam_sm: [0048] ae 10 ce 13 02 c5 09 da
 
platform caam_sm: [0056] ce 88 da 48 10 ee 20 e5
 
platform caam_sm: [0064] 28 bb 0f 76 e4 8a 8e ee
 
platform caam_sm: [0072] 46 e2 69 6f ca d3 e4 ba
 
platform caam_sm: [0080] 00 00 00 00 00 00 00 00
 
platform caam_sm: [0088] 00 00 00 00 00 00 00 00
 
platform caam_sm: restored 64-bit black key:
 
platform caam_sm: [0000] 58 1c 8d b3 fa 93 6e 2c
 
platform caam_sm: [0008] f2 ae 66 67 b1 f4 e6 b9
 
platform caam_sm: restored 128-bit black key:
 
platform caam_sm: [0000] 7e 83 f5 8e ed bd bf 4e
 
platform caam_sm: [0008] 6f 98 a2 68 c3 30 a3 81
 
platform caam_sm: restored 192-bit black key:
 
platform caam_sm: [0000] 73 ba ab 08 93 75 f2 e3
 
platform caam_sm: [0008] 66 73 d2 17 0c a7 f3 08
 
platform caam_sm: [0016] ee 51 4c 4f 16 0a f2 9f
 
platform caam_sm: [0024] 9e c9 48 38 46 04 11 04
 
platform caam_sm: restored 256-bit black key:
 
platform caam_sm: [0000] da 35 27 8d 68 e2 e8 44
 
platform caam_sm: [0008] 58 3a 7d 32 ea 54 dc 77
 
platform caam_sm: [0016] 48 a1 28 bc a2 71 ad 8d
 
platform caam_sm: [0024] 6f 9a 59 ba 5c 35 63 56
 
snvs-secvio 20cc000.caam-snvs: can't get snvs clock
 
snvs-secvio 20cc000.caam-snvs: violation handlers armed - non-secure state
 
usbcore: registered new interface driver usbhid
 
usbhid: USB HID core driver
 
fsl-asrc 2034000.asrc: driver registered
 
NET: Registered protocol family 26
 
TCP: cubic registered
 
NET: Registered protocol family 10
 
sit: IPv6 over IPv4 tunneling driver
 
NET: Registered protocol family 17
 
can: controller area network core (rev 20120528 abi 9)
 
NET: Registered protocol family 29
 
can: raw protocol (rev 20120528)
 
can: broadcast manager protocol (rev 20120528 t)
 
can: netlink gateway (rev 20130117) max_hops=1
 
Bluetooth: RFCOMM TTY layer initialized
 
Bluetooth: RFCOMM socket layer initialized
 
Bluetooth: RFCOMM ver 1.11
 
Bluetooth: BNEP (Ethernet Emulation) ver 1.3
 
Bluetooth: BNEP filters: protocol multicast
 
Bluetooth: BNEP socket layer initialized
 
Bluetooth: HIDP (Human Interface Emulation) ver 1.2
 
Bluetooth: HIDP socket layer initialized
 
8021q: 802.1Q VLAN Support v1.8
 
Key type dns_resolver registered
 
cpu cpu0: dev_pm_opp_get_opp_count: device OPP not found (-19)
 
SWBST: disabling
 
usb_otg1_vbus: disabling
 
regulator-dummy: disabling
 
imx mcc test is registered.
 
snvs_rtc 20cc034.snvs-rtc-lp: setting system clock to 2016-04-01 08:34:36 UTC (1459499676)
 
ALSA device list:
 
  No soundcards found.
 
kjournald starting.  Commit interval 5 seconds
 
EXT3-fs (mmcblk1p2): using internal journal
 
EXT3-fs (mmcblk1p2): recovery complete
 
EXT3-fs (mmcblk1p2): mounted filesystem with ordered data mode
 
VFS: Mounted root (ext3 filesystem) on device 179:2.
 
devtmpfs: mounted
 
Freeing unused kernel memory: 392K (809e8000 - 80a4a000)
 
INIT: version 2.88 booting
 
Error opening /dev/fb0: No such file or directory
 
Starting udev
 
udevd[157]: starting version 182
 
 
 
udevadm settle - timeout of 3 seconds reached, the event queue contains:
 
  /sys/devices/soc0/soc.0/2100000.aips-bus/2188000.ethernet/net/eth0 (1225)
 
  /sys/devices/soc0/soc.0/2100000.aips-bus/2194000.usdhc/mmc_host/mmc1/mmc1:1234/block/mmcblk1 (1231)
 
  /sys/devices/soc0/soc.0/2100000.aips-bus/2194000.usdhc/mmc_host/mmc1/mmc1:1234/block/mmcblk1/mmcblk1p1 (1232)
 
  /sys/devices/soc0/soc.0/2100000.aips-bus/2194000.usdhc/mmc_host/mmc1/mmc1:1234/block/mmcblk1/mmcblk1p2 (1233)
 
  /sys/devices/virtual/block/loop0 (1313)
 
  /sys/devices/virtual/block/loop1 (1314)
 
  /sys/devices/virtual/block/loop4 (1317)
 
  /sys/devices/virtual/block/loop5 (1318)
 
  /sys/devices/virtual/block/loop6 (1319)
 
  /sys/devices/virtual/block/loop7 (1320)
 
  /sys/devices/virtual/block/ram0 (1321)
 
  /sys/devices/virtual/block/ram1 (1322)
 
  /sys/devices/virtual/block/ram10 (1323)
 
  /sys/devices/virtual/block/ram11 (1324)
 
  /sys/devices/virtual/block/ram12 (1325)
 
  /sys/devices/virtual/block/ram13 (1326)
 
  /sys/devices/virtual/block/ram14 (1327)
 
  /sys/devices/virtual/block/ram15 (1328)
 
  /sys/devices/virtual/block/ram2 (1329)
 
  /sys/devices/virtual/block/ram3 (1330)
 
  /sys/devices/virtual/block/ram4 (1331)
 
  /sys/devices/virtual/block/ram5 (1332)
 
  /sys/devices/virtual/block/ram6 (1333)
 
  /sys/devices/virtual/block/ram7 (1334)
 
  /sys/devices/virtual/block/ram8 (1335)
 
  /sys/devices/virtual/block/ram9 (1336)
 
  /sys/devices/virtual/mtd/mtd0/mtdblock0 (1340)
 
  /sys/devices/virtual/mtd/mtd1/mtdblock1 (1343)
 
  /sys/devices/virtual/mtd/mtd2/mtdblock2 (1346)
 
  /sys/devices/virtual/mtd/mtd3/mtdblock3 (1349)
 
  /sys/devices/virtual/mtd/mtd4/mtdblock4 (1352)
 
  /sys/devices/virtual/mtd/mtd5/mtdblock5 (1355)
 
  /sys/devices/virtual/mtd/mtd6/mtdblock6 (1358)
 
  /sys/devices/virtual/mtd/mtd7/mtdblock7 (1361)
 
  /sys/devices/virtual/net/lo (1363)
 
  /sys/devices/virtual/net/sit0 (1364)
 
bootlogd: cannot allocate pseudo tty: No such file or directory
 
FAT-fs (mmcblk1p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
 
ALSA: Restoring mixer settings...
 
/usr/sbin/alsactl: load_state:1729: No soundcards found...
 
INIT: Entering runlevel: 5
 
Configuring network interfaces... fec 2188000.ethernet eth0: Freescale FEC PHY driver [Micrel KSZ8081 or KSZ8091] (mii_bus:phy_addr=2188000.ethernet:00, irq=-1)
 
IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
 
done.
 
Starting Xserver
 
open /dev/fb0: No such file or directory
 
Starting system message bus: Unknown username "xuser" in message bus configuration file
 
dbus.
 
Starting Connection Manager
 
Starting Dropbear SSH server: dropbear.
 
Starting rpcbind daemon...done.
 
starting statd: done
 
Starting advanced power management daemon: No APM support in kernel
 
(failed.)
 
NFS daemon support not enabled in kernel
 
Starting syslogd/klogd: done
 
* Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon
 
  ...done.
 
Starting Telephony daemon
 
Starting Linux NFC daemon
 
Starting OProfileUI server
 
Running local boot scripts (/etc/rc.local).
 
Starting tcf-agent: OK
 
 
 
Freescale i.MX Release Distro 3.14.52-1.1.0 sbc-lynx /dev/ttymxc0
 
 
 
sbc-lynx login: root
 
root@sbc-lynx:~#
 
 
</pre>
 
</pre>
  
Line 681: Line 110:
 
===Target configuration for standalone boot===
 
===Target configuration for standalone boot===
 
Please refer to [[Standalone_boot_(BXELK)|this page]].
 
Please refer to [[Standalone_boot_(BXELK)|this page]].
 +
 
==Physical devices mapping==
 
==Physical devices mapping==
 
Please refer to [[Physical_devices_mapping_(BXELK)|this page]].
 
Please refer to [[Physical_devices_mapping_(BXELK)|this page]].

Revision as of 10:05, 16 December 2016

Info Box
BORA Xpress.png Applies to BORA Xpress

Introduction[edit | edit source]

BoraX SOM


BoraX Embedded Linux Kit (BXELK for short) provides all the necessary components required to set up the developing environment to:

  • build the first-stage bootloader (FSBL)
  • build the 2nd-stage bootloader (U-Boot)
  • build and run Linux operating system on BoraX system-on-module (SOM)
  • build and debug applications that will be executed on top of Yocto-based Linux distribution running on the target.

The main kit components are:

  • hardware platform, composed by BoraX SOM and BoraXEVB
  • technical documentation (hardware manuals, mechanical drawings, reference schematics, application notes etc.)

Kit content[edit | edit source]

Component Description Notes
TBD.png BoraX SOM (p/n DBXF4110D2R)
  • SoC: Xilinx XC7Z030 (866Mhz, Speed "-3", Tj 0-100°C)
  • SDRAM: 1 GB DDR3
  • NOR: bootable SPI flash 16 MB
  • NAND: 1GB (SLC)
TBD.png BoraXEVB carrier board
Alimentatore.jpg AC/DC Single Output Wall Mount adapter

Output: +12V – 2.0 A

ProdSDC-MBLY-thumb.png MicroSDHC card with SD adapter and USB adapter

Logical structure of BXELK[edit | edit source]

Please refer to this page.

BXELK software components[edit | edit source]

Please refer to this page.

Quick start guide[edit | edit source]

This chapter describes how to quickly start working with the BXELK kit. The following paragraphs will guide you through the setup and installation procedures.

Kit registration[edit | edit source]

200px-Emblem-important.svg.png

Customers are strongly recommended to register their kits. Registration grants access to reserved material such as source code and additional documentation.

Please register your development kit by sending an email to support-bora@dave.eu, providing the kit P/N and CODE.

Target setup and first boot[edit | edit source]

This section describes how to quickly start BoraX/BoraXEVB system included in the BXELK:

  • on target side, connect a null-modem cable on J17 DB9 connector, denoted also as UART1
  • on host side, connect the other end of the null-modem cable to a COM port and start your favorite terminal software that will be used to interact with the target's serial console; communication parameters are 115200-8-N-1
  • optionally connect the BoraXEVB board to an Ethernet LAN by plugging cable into connector J8, also denoted as BORAX ETHERNET
  • connect 12V power supply to JP2 connector, also denoted as PSU 12V JACK
  • insert the microSD card in the slot J21, also denoted as MICROSD.


Target setup for first boot


Once power has been applied to the target, FSBL and U-Boot bootloaders will be fetched from the SPI NOR flash that equips BoraX SOM and executed. Boot messages will be printed out to the serial console. Redundant U-Boot environment is stored in the NOR flash as well, as depicted in the following image.


NOR flash default partitioning


By default, U-Boot is configured to retrieve Linux kernel image stored in the microSD card [1]. In turn, Linux kernel shall mount root file system from the mmcblk0p2 partition of the microSD card itself. At the end of boot process, Linux shell shall be available on the serial console.

The following dump shows the typical messages printed out to the console during bootstrap process.

TBD


[1] bootscript is used to do this task.

Host setup[edit | edit source]

As stated previously, BXELK host tools are based on a Managed Virtual Machine. As indicated here, microSD card delivered along with BXELK includes basic version of MVM that is the default option.

In case you choose to use the Advanced version of the MVM instead, the project-name to be used is lynx.

Either version you choose, please follow the procedure described here to install the MVM.

It is also worth remembering that access to git repositories is required to download target source code. To enable it, please refer to this page.


200px-Emblem-important.svg.png

Either version of MVM is installed, it provides the tools required to build U-boot and Linux kernel. It does not include the tools required to run Yocto build system instead.

Target configuration for the development stage (net_nfs)[edit | edit source]

During the development stage, the target is usually connected via Ethernet LAN to the host machine and is configured to:

  • retrieve binary images (i.e. Linux kernel) via TFTP protocol
  • mount the development root file system via NFS protocol. This root file system is physically in the file system of the host machine as depicted here.

In DAVE Embedded Systems development kits, this configuration is generally denoted as net_nfs. U-Boot bootloader supports this configuration. Some U-Boot environment variables are needed to set it up. They are detailed here.

For more details about TFTP and NFS servers on host side, please refer to this page.

Target configuration for standalone boot[edit | edit source]

Please refer to this page.

Physical devices mapping[edit | edit source]

Please refer to this page.

Advanced topics[edit | edit source]

Debugging with Eclipse[edit | edit source]

Please refer to this page.