Difference between revisions of "Development Environment HowTo (NELK)"

From DAVE Developer's Wiki
Jump to: navigation, search
(Boot the system)
(Boot the system)
Line 246: Line 246:
 
To boot the system, please type the following command:
 
To boot the system, please type the following command:
  
<pre>
+
<pre class="board-terminal">
 
run net_nfs
 
run net_nfs
 
</pre>
 
</pre>
Line 252: Line 252:
 
from the u-boot console. The following is a dump of the boot messages:
 
from the u-boot console. The following is a dump of the boot messages:
  
<pre>
+
<pre class="board-terminal">
 
NAON#run net_nfs     
 
NAON#run net_nfs     
 
link up on port 0, speed 100, full duplex
 
link up on port 0, speed 100, full duplex

Revision as of 15:03, 4 June 2012

Info Box
Naon am387x-dm814x.png Applies to Naon


Introduction[edit | edit source]

In this HowTo we'll take a first look of Naon Embedded Linux Kit (NELK) development environment.

To allow fast development startup, NELK is provided as DVDK virtual appliance, in this way user can setup its development environment in minutes and get productive as soon as the virtual machine starts.

Build the whole kit[edit | edit source]

Building the whole kit means:

  • build Linux kernel with default configuration
  • build u-boot with default configuration
  • build gstreamer and all the required libriaries
  • install the binaries into the root file system

After starting the DVDK, log in by using the default user and start a terminal. Then:

  • enter the EZSDK_INSTALL_DIR directory: cd /home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-x.xx.xx.xx
    • where the x should be substituted with the current release which NELK is based (e.g. /home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15)
  • run make all command
nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15$ make all
make -C /home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15/board-support/linux-2.6.37-psp04.01.00.06.patch2 ARCH=arm CROSS_COMPILE=/home/shared/devel/dave/naon-DAA/sw/linux/sdk/arm-2009q1//bin/arm-none-linux-gnueabi- uImage
make[1]: Entering directory `/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15/board-support/linux-omap3.git'

[snip..]

max_DM81XX_RELEASE_0_03'
make[2]: Leaving directory `/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15/component-sources/gst-openmax_DM81XX_RELEASE_0_03'
make[1]: Leaving directory `/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15/component-sources/gst-openmax_DM81XX_RELEASE_0_03'
nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15$
  • after the build finish (which may take a while, depending on user's PC power), user can install the binaries with sudo make install (sudo is required due file permission restriction on the root file system)
nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15$ sudo make install
[sudo] password for nelk: 
install -d /home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15/../rfs/nelk/boot
install  /home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15/board-support/linux-2.6.37-psp04.01.00.06.patch2/arch/arm/boot/uImage /home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15/../rfs/nelk/boot
install  /home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15/board-support/linux-2.6.37-psp04.01.00.06.patch2/vmlinux /home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15/../rfs/nelk/boot
install  /home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15/board-support/linux-2.6.37-psp04.01.00.06.patch2/System.map /home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15/../rfs/nelk/boot

[snip..]

make[3]: Entering directory `/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15/component-sources/gst-openmax_DM81XX_RELEASE_0_03'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15/component-sources/gst-openmax_DM81XX_RELEASE_0_03'
make[2]: Leaving directory `/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15/component-sources/gst-openmax_DM81XX_RELEASE_0_03'
make[1]: Leaving directory `/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15/component-sources/gst-openmax_DM81XX_RELEASE_0_03'
nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15$ 
  • when the install process finishes all the binaries are installed

Build a custom application[edit | edit source]

Please refer to the dedicated section on the EZSDK Developers Guide

The following instructions allow to build and check a simple "hello world" C application:

nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk$ mkdir workdir

nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk$ cd workdir/

nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/workdir$ gedit helloworld.c

Insert the following source code:

#include <stdio.h>
 
 int main()
 {
     printf("Hello World!\n");
 }
 
nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/workdir$ gedit Makefile

Insert the following instructions:

# Import the variables from the EZSDK so that you can find the EZSDK components
 include ${EZSDK}/Rules.make
 
 helloworld:
 # Make sure that you use a tab below
     $(CSTOOL_PREFIX)gcc -o helloworld helloworld.c 

Take care that the gap before $(CSTOOL_PREFIX)gcc corresponds to a tab.

nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/workdir$ export EZSDK=/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15/

nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/workdir$ make helloworld
/home/shared/devel/dave/naon-DAA/sw/linux/sdk/arm-2009q1//bin/arm-none-linux-gnueabi-gcc -o helloworld helloworld.c

nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/workdir$ file helloworld
helloworld: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.14, not stripped
nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/workdir$

Once you have the compiled binary, you can copy it to the root file system:

nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/workdir$ cp helloworld /home/shared/devel/dave/naon-DAA/sw/linux/sdk/rfs/nelk/home/root/
nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/workdir$

and execute it:

root@naon:~# ./helloworld
Hello World!

Build/configure Linux kernel only[edit | edit source]

If needed, user can configure and build only the Linux kernel (this is useful, for example, if you are a kernel driver developer).

Linux kernel source are available inside EZSDK_INSTALL_DIR/board-support/linux-omap3.git.

The configuration name is specified inside $EZSDK_INSTALL_DIR/Rules.make into the variable DEFAULT_LINUXKERNEL_CONFIG

Enter the $EZSDK_INSTALL_DIR and type:

nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15$ make linux_defconfig

in order to configure the kernel. This will create a

.config

file into the EZSDK_INSTALL_DIR/board-support/linux-omap3.git.

To build the Linux uImage (suitable for U-Boot) and modules, please enter the following command:

nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15$ make linux


200px-Emblem-important.svg.png
The
make linux
command will fail complaining about a missing .config file if launched before preparing the kernel configuration as described above


To manually change the default configuration, execute:

nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15$ make linux_menuconfig

This will open the usual Linux curses configuration interface to allow configuration changes.

To clean the build, type:

nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15$ make clean

To revert to the default configuration, type:

nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15$ make linux_defconfig


Two additional target are provided:

nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15$ make linux_install

Copy the binaries (uImage and modules) inside the root file system (see EXEC_DIR variable inside $EZSDK_INSTALL_DIR/Rules.make), under the directory:

  • $EXEC_DIR/boot: for uImage
  • $EXEC_DIR/lib/modules/$KERNEL_VERSION: for the modules


Info-icon.png Please note that, on DVDK, $EXEC_DIR/boot is inside the TFTP root directory, thanks to the symbolic link: /srv/tftp/naon -> $EXEC_DIR/boot.

So requesting naon/uImage to DVDK's TFTP server will return $EXEC_DIR/boot/uImage

Info-icon.png


Info-icon.png Please note that, after running make linux_install, the user should run the command depmod from the target shell
root@naon:~# depmod
Info-icon.png


Info-icon.png Please note that sudo make linux_install delete all other installed linux kernel modules. For this reason, after this command the user should also run
sudo make syslink_install sgx-driver_install
Info-icon.png

Build/configure U-Boot only[edit | edit source]

For detailed information on U-Boot for DM814/AM387x processors, please refer to http://processors.wiki.ti.com/index.php/DM814x_AM387x_PSP_U-Boot


If needed, user can configure and build only the u-boot (first or second stage) images.

U-boot sources are available inside EZSDK_INSTALL_DIR/board-support/u-boot.git.

The configuration name is specified inside $EZSDK_INSTALL_DIR/Rules.make into the variables DEFAULT_UBOOT_CONFIG and MIN_UBOOT_CONFIG

Enter the $EZSDK_INSTALL_DIR and type:

nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15$ make u-boot

to build both u-boot and u-boot-min, or

nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15$ make u-boot-min

to build just u-boot-min.

nelk@nelk-desktop:/home/shared/devel/dave/naon-DAA/sw/linux/sdk/sdk-5.03.01.15$ make u-boot_install

to copy the u-boot images inside the root file system (see EXEC_DIR variable inside $EZSDK_INSTALL_DIR/Rules.make), under the directory $EXEC_DIR/boot.

Build the graphics components[edit | edit source]

DM81x/AM38x processors provide a PowerVR SGX530 2D/3D graphics accelerator (SGX). This subsystem accelerates 2-dimensional (2D) and 3-dimensional (3D) graphics applications. The SGX subsystem is based on the POWERVR® SGX core from Imagination Technologies. SGX is a new generation of programmable POWERVR graphic cores. The POWERVR SGX530 v1.2.5 architecture is scalable and can target all market segments from mainstream mobile devices to high-end desktop graphics.

TI Linux Graphics SDK is the development package that provides graphics drivers and OpenGLES1.1,2.0 and OpenVG libraries and demos running on all TI platforms.

Instruction on how to build the graphic components can be found here: http://processors.wiki.ti.com/index.php/Graphics_SDK_Quick_installation_and_user_guide

Boot the system[edit | edit source]

Please refer to Booting Linux Kernel for general information about the kernel boot process.

In order to boot the system, please check that the DVDK network is properly configured and that the NFS service is working. Please check NFS for more information on how Network File System works.


Info-icon.png Please note that, on DVDK, $EXEC_DIR/boot is inside the TFTP root directory, thanks to the symbolic link: /srv/tftp/naon -> $EXEC_DIR/boot. The root file system is, by default, stored in the $EXEC_DIR directory and NFS-exported. Info-icon.png

To boot the system, please type the following command:

run net_nfs

from the u-boot console. The following is a dump of the boot messages:

NAON#run net_nfs    
link up on port 0, speed 100, full duplex
Using cpsw device
TFTP from server 192.168.0.121; our IP address is 192.168.0.122
Filename 'naon/uImage'.
Load address: 0x81000000
Loading: #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         ######
done
Bytes transferred = 2688116 (290474 hex)
## Booting kernel from Legacy Image at 81000000 ...
   Image Name:   Linux-2.6.37-naon-0.2.0
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2688052 Bytes = 2.6 MiB
   Load Address: 80008000
   Entry Point:  80008000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
[    0.000000] Linux version 2.6.37-naon-0.2.0 (nelk@nelk-desktop) (gcc version 4.3.3 (Sourcery G++ Lite 2009q12
[    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7f
[    0.000000] CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine: naon
[    0.000000] bootconsole [earlycon0] enabled
[    0.000000] vram size = 48234496 at 0x0
[    0.000000] reserved size = 48234496 at 0x0
[    0.000000] FB: Reserving 48234496 bytes SDRAM for VRAM
[    0.000000] Memory policy: ECC disabled, Data cache writeback
[    0.000000] OMAP chip is TI8148 2.0
[    0.000000] SRAM: Mapped pa 0x40300000 to va 0xfe400000 size: 0x20000
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32928
[    0.000000] Kernel command line: root=/dev/nfs rw nfsroot=192.168.0.121:/home/shared/devel/dave/naon-DAA/sw/0
[    0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
[    0.000000] Memory: 130MB = 130MB total
[    0.000000] Memory: 125748k/125748k available, 54476k reserved, 0K highmem
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     DMA     : 0xffc00000 - 0xffe00000   (   2 MB)
[    0.000000]     vmalloc : 0xcb800000 - 0xf8000000   ( 712 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xcb000000   ( 176 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .init : 0xc0008000 - 0xc003b000   ( 204 kB)
[    0.000000]       .text : 0xc003b000 - 0xc0514000   (4964 kB)
[    0.000000]       .data : 0xc0514000 - 0xc05535a0   ( 254 kB)
[    0.000000] SLUB: Genslabs=11, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:375
[    0.000000] omap_hwmod: gpio2: softreset failed (waited 10000 usec)
[    0.000000] omap_hwmod: gpio3: softreset failed (waited 10000 usec)
[    0.000000] omap_hwmod: gpio4: softreset failed (waited 10000 usec)
[    0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
[    0.000000] Total of 128 interrupts on 1 active controller
[    0.000000] GPMC revision 6.0
[    0.000000] Trying to install interrupt handler for IRQ368
[    0.000000] Trying to install interrupt handler for IRQ369
[    0.000000] Trying to install interrupt handler for IRQ370
[    0.000000] Trying to install interrupt handler for IRQ371
[    0.000000] Trying to install interrupt handler for IRQ372
[    0.000000] Trying to install interrupt handler for IRQ373
[    0.000000] Trying to install interrupt handler for IRQ374
[    0.000000] Trying to install type control for IRQ375
[    0.000000] Trying to set irq flags for IRQ375
[    0.000000] OMAP clockevent source: GPTIMER1 at 20000000 Hz
[    0.000000] Console: colour dummy device 80x30
[    0.010000] Calibrating delay loop... 598.01 BogoMIPS (lpj=2990080)
[    0.240000] pid_max: default: 32768 minimum: 301
[    0.240000] Security Framework initialized
[    0.250000] Mount-cache hash table entries: 512
[    0.250000] CPU: Testing write buffer coherency: ok
[    0.260000] devtmpfs: initialized
[    0.260000] regulator: core version 0.5
[    0.270000] regulator: dummy: 
[    0.270000] NET: Registered protocol family 16
[    0.280000] OMAP GPIO hardware version 0.1
[    0.280000] OMAP GPIO hardware version 0.1
[    0.280000] OMAP GPIO hardware version 0.1
[    0.290000] OMAP GPIO hardware version 0.1
[    0.300000] registered ti814x_vpss device
[    0.300000] registered TI814x on-chip HDMI device
[    0.310000] Debugfs: Only enabling/disabling deep sleep and wakeup timer is supported now
[    0.330000] bio: create slab <bio-0> at 0
[    0.330000] SCSI subsystem initialized
[    0.340000] usbcore: registered new interface driver usbfs
[    0.340000] usbcore: registered new interface driver hub
[    0.350000] usbcore: registered new device driver usb
[    0.350000] registerd cppi-dma Intr @ IRQ 17
[    0.360000] Cppi41 Init Done
[    0.360000] omap_i2c omap_i2c.1: bus 1 rev4.0 at 100 kHz
[    0.370000] regulator: VRTC: 1800 mV 
[    0.370000] regulator: VIO: 1500 mV 
[    0.380000] regulator: VDD1: 600 <--> 1500 mV at 1200 mV 
[    0.390000] regulator: VDD2: 600 <--> 1500 mV at 1200 mV 
[    0.400000] regulator: VDDCTRL: 600 <--> 1400 mV at 1200 mV 
[    0.400000] regulator: LDO1: 1100 <--> 3300 mV at 1800 mV 
[    0.410000] regulator: LDO2: 1100 <--> 3300 mV at 1800 mV 
[    0.420000] regulator: LDO3: 1100 <--> 3300 mV at 3300 mV 
[    0.420000] regulator: LDO4: 1100 <--> 3300 mV at 1800 mV 
[    0.430000] regulator: LDO5: 1100 <--> 3300 mV at 3300 mV 
[    0.440000] regulator: LDO6: 1100 <--> 3300 mV at 3300 mV 
[    0.450000] regulator: LDO7: 1100 <--> 3300 mV at 3300 mV 
[    0.450000] regulator: LDO8: 1100 <--> 3300 mV at 1800 mV 
[    0.460000] tps65910 1-002d: No interrupt support, no core IRQ
[    0.470000] regulator: tps62353: 750 <--> 1537 mV at 1200 mV 
[    0.470000] omap_i2c omap_i2c.3: bus 3 rev4.0 at 100 kHz
[    0.500000] omap_i2c omap_i2c.4: bus 4 rev4.0 at 100 kHz
[    0.500000] Advanced Linux Sound Architecture Driver Version 1.0.23.
[    0.510000] Switching to clocksource gp timer
[    0.520000] musb-hdrc: version 6.0, host, debug=0
[    0.520000] musb-hdrc musb-hdrc.0: dma type: dma-cppi41
[    0.530000] musb-hdrc musb-hdrc.0: MUSB HDRC host driver
[    0.530000] musb-hdrc musb-hdrc.0: new USB bus registered, assigned bus number 1
[    0.540000] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    0.550000] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    0.560000] usb usb1: Product: MUSB HDRC host driver
[    0.560000] usb usb1: Manufacturer: Linux 2.6.37-naon-0.2.0 musb-hcd
[    0.570000] usb usb1: SerialNumber: musb-hdrc.0
[    0.570000] hub 1-0:1.0: USB hub found
[    0.580000] hub 1-0:1.0: 1 port detected
[    0.580000] musb-hdrc musb-hdrc.0: USB Host mode controller at cb81e000 using DMA, IRQ 18
[    0.590000] musb-hdrc musb-hdrc.1: dma type: dma-cppi41
[    0.600000] musb-hdrc musb-hdrc.1: MUSB HDRC host driver
[    0.600000] musb-hdrc musb-hdrc.1: new USB bus registered, assigned bus number 2
[    0.610000] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
[    0.620000] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    0.630000] usb usb2: Product: MUSB HDRC host driver
[    0.630000] usb usb2: Manufacturer: Linux 2.6.37-naon-0.2.0 musb-hcd
[    0.640000] usb usb2: SerialNumber: musb-hdrc.1
[    0.640000] hub 2-0:1.0: USB hub found
[    0.650000] hub 2-0:1.0: 1 port detected
[    0.650000] musb-hdrc musb-hdrc.1: USB Host mode controller at cb828800 using DMA, IRQ 19
[    0.660000] NET: Registered protocol family 2
[    0.670000] IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.670000] TCP established hash table entries: 8192 (order: 4, 65536 bytes)
[    0.680000] TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
[    0.690000] TCP: Hash tables configured (established 8192 bind 8192)
[    0.690000] TCP reno registered
[    0.700000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.700000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.710000] NET: Registered protocol family 1
[    0.720000] RPC: Registered udp transport module.
[    0.720000] RPC: Registered tcp transport module.
[    0.730000] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.730000] NetWinder Floating Point Emulator V0.97 (double precision)
[    0.740000] PMU: registered new PMU device of type 0
[    0.750000] omap-iommu omap-iommu.0: ducati registered
[    0.750000] omap-iommu omap-iommu.1: sys registered
[    0.890000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.900000] JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[    0.910000] msgmni has been set to 245
[    0.910000] io scheduler noop registered
[    0.910000] io scheduler deadline registered
[    0.920000] io scheduler cfq registered (default)
[    0.920000] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[    0.930000] omap_uart.0: ttyO0 at MMIO 0x48020000 (irq = 72) is a OMAP UART0
[    0.940000] console [ttyO0] enabled, bootconsole disabled
[    0.940000] console [ttyO0] enabled, bootconsole disabled
[    0.950000] omap_uart.1: ttyO1 at MMIO 0x48022000 (irq = 73) is a OMAP UART1
[    0.960000] omap_uart.2: ttyO2 at MMIO 0x48024000 (irq = 74) is a OMAP UART2
[    0.970000] omap_uart.3: ttyO3 at MMIO 0x481a6000 (irq = 44) is a OMAP UART3
[    0.970000] omap_uart.4: ttyO4 at MMIO 0x481a8000 (irq = 45) is a OMAP UART4
[    0.980000] omap_uart.5: ttyO5 at MMIO 0x481aa000 (irq = 46) is a OMAP UART5
[    1.000000] brd: module loaded
[    1.000000] loop: module loaded
[    1.010000] at24 4-0051: 4096 byte 24c32 EEPROM (writable)
[    1.010000] ahci ahci.0: forcing PORTS_IMPL to 0x1
[    1.020000] ahci ahci.0: AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl platform mode
[    1.030000] ahci ahci.0: flags: ncq sntf pm led clo only pmp pio slum part ccc apst 
[    1.040000] scsi0 : ahci_platform
[    1.040000] ata1: SATA max UDMA/133 mmio [mem 0x4a140000-0x4a150fff] port 0x100 irq 16
[    1.050000] mtd_dataflash spi1.0: at45db642d (8192 KBytes) pagesize 1024 bytes, OTP
[    1.060000] Creating 6 MTD partitions on "spi_flash":
[    1.060000] 0x000000000000-0x000000020000 : "SPI u-boot 1st"
[    1.070000] 0x000000020000-0x000000040000 : "SPI u-boot 2nd"
[    1.080000] 0x000000040000-0x000000050000 : "SPI u-boot env1"
[    1.080000] 0x000000050000-0x000000060000 : "SPI u-boot env2"
[    1.090000] 0x000000060000-0x000000360000 : "SPI Linux Kernel"
[    1.100000] usb 2-1: new high speed USB device using musb-hdrc and address 2
[    1.110000] 0x000000360000-0x000000800000 : "SPI Free Space"
[    1.110000] omap2-nand driver initializing
[    1.120000] ONFI flash detected
[    1.120000] ONFI param page 0 valid
[    1.130000] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xd3 (Micron NAND 1GiB 3,3V 8-bit)
[    1.130000] Creating 7 MTD partitions on "omap2-nand.0":
[    1.140000] 0x000000000000-0x000000040000 : "NAND U-Boot-min"
[    1.150000] 0x000000040000-0x000000080000 : "NAND U-Boot"
[    1.150000] 0x000000080000-0x0000000c0000 : "NAND U-Boot Env1"
[    1.160000] 0x0000000c0000-0x000000100000 : "NAND U-Boot Env2"
[    1.170000] 0x000000100000-0x000000380000 : "NAND Kernel"
[    1.180000] 0x000000380000-0x000008280000 : "NAND File System (small)"
[    1.210000] 0x000008280000-0x000040000000 : "NAND File System (big)"
[    1.430000] usb 2-1: New USB device found, idVendor=0424, idProduct=2512
[    1.430000] usb 2-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    1.440000] hub 2-1:1.0: USB hub found
[    1.440000] hub 2-1:1.0: 2 ports detected
[    1.460000] davinci_mdio davinci_mdio.0: davinci mdio revision 1.6
[    1.460000] davinci_mdio davinci_mdio.0: detected phy mask ffffffbd
[    1.470000] davinci_mdio.0: probed
[    1.470000] davinci_mdio davinci_mdio.0: phy[1]: device 0:01, driver Marvell 88E1111
[    1.480000] davinci_mdio davinci_mdio.0: phy[6]: device 0:06, driver SMSC LAN8710/LAN8720
[    1.490000] usbcore: registered new interface driver asix
[    1.500000] usbcore: registered new interface driver cdc_acm
[    1.500000] cdc_acm: v0.26:USB Abstract Control Model driver for USB modems and ISDN adapters
[    1.510000] Initializing USB Mass Storage driver...
[    1.520000] usbcore: registered new interface driver usb-storage
[    1.520000] USB Mass Storage support registered.
[    1.530000] mice: PS/2 mouse device common for all mice
[    1.530000] ata1: SATA link down (SStatus 0 SControl 300)
[    1.540000] input: max7359 as /devices/platform/omap/omap_i2c.4/i2c-4/4-0038/input/input0
[    1.550000] input: TSC2007 Touchscreen as /devices/virtual/input/input1
[    1.560000] omap_rtc omap_rtc: rtc core: registered omap_rtc as rtc0
[    1.570000] i2c /dev entries driver
[    1.570000] Driver for 1-wire Dallas network protocol.
[    1.730000] ina219 3-0041: hwmon1: sensor 'ina219'
[    1.790000] OMAP Watchdog Timer Rev 0x00: initial timeout 60 sec
[    1.810000] usbcore: registered new interface driver usbhid
[    1.810000] usbhid: USB HID core driver
[    1.820000] notify_init : notify drivercreated  for  remote proc id 2 at physical Address 0xbf900000
[    1.830000] ALSA device list:
[    1.830000]   No soundcards found.
[    1.830000] TCP cubic registered
[    1.840000] NET: Registered protocol family 17
[    1.840000] Registering the dns_resolver key type
[    1.850000] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
[    1.860000] Power Management for TI81XX.
[    1.870000] Detected MACID=d4:94:a1:8e:68:24
[    1.870000] omap_rtc omap_rtc: setting system clock to 2000-01-01 00:00:00 UTC (946684800)
[    2.390000] 
[    2.390000] CPSW phy found : id is : 0x7c0f1
[    2.400000] 
[    2.400000] CPSW phy found : id is : 0x1410cc2
[    3.420000] IP-Config: Complete:
[    3.420000]      device=eth0, addr=192.168.0.122, mask=255.255.255.0, gw=192.168.0.254,
[    3.430000]      host=naon, domain=, nis-domain=(none),
[    3.430000]      bootserver=192.168.0.121, rootserver=192.168.0.121, rootpath=
[    4.390000] PHY: 0:01 - Link is Up - 0/Half
[    4.400000] PHY: 0:01 - Link is Down
[    5.390000] PHY: 0:06 - Link is Up - 100/Full
[    5.400000] VFS: Mounted root (nfs filesystem) on device 0:14.
[    5.410000] devtmpfs: mounted
[    5.410000] Freeing init memory: 204K
INIT: version 2.86 booting
Please wait: booting...
Error opening /dev/fb0: No such file or directory
Starting udev
[    6.170000] udevd (87): /proc/87/oom_adj is deprecated, please use /proc/87/oom_score_adj instead.
Root filesystem already rw, not remounting
Caching udev devnodes
[   11.440000] NET: Registered protocol family 10
ALSA: Restoring mixer settings...
/usr/sbin/alsactl: load_state:1625: No soundcards found...
NOT configuring network interfaces: / is an NFS mount
Fri Dec  9 18:54:00 UTC 2011
INIT: Entering runlevel: 5
DM814X prcm_config_app version: 2.0.0.1
Doing PRCM settings...
        PRCM for IVHD0 is in Progress, Please wait.....  
                        BW Phy Addr : 0x48180600 Data : 0x00000001
                        AW Phy Addr : 0x48180600 Data : 0x00000002
                        Phy Addr : 0x48180c04 Data : 0x00000037
                        BW Phy Addr : 0x48180620 Data : 0x00070000
                        AW Phy Addr : 0x48180620 Data : 0x00070002
                        BW Phy Addr : 0x48180624 Data : 0x00030000
                        AW Phy Addr : 0x48180624 Data : 0x00010002
                        Phy Addr : 0x48180600 Data : 0x00000102
                        BW Phy Addr : 0x48180c10 Data : 0x00000007
                        AW Phy Addr : 0x48180c10 Data : 0x00000003
                        Phy Addr : 0x48180c14 Data : 0x00000004
                        BW Phy Addr : 0x58088000 Data : 0xeafffffe
                        AW Phy Addr : 0x58088000 Data : 0xeafffffe
                        BW Phy Addr : 0x58098000 Data : 0xeafffffe
                        AW Phy Addr : 0x58098000 Data : 0xeafffffe
                        BW Phy Addr : 0x48180c10 Data : 0x00000003
                        AW Phy Addr : 0x48180c10 Data : 0x00000000
                        Phy Addr : 0x48180c14 Data : 0x00000007
        PRCM for IVHD0 is Done Successfully  
PRCM Initialization completed 
Loading syslink module
[   12.870000] SysLink version : 2.00.05.85
[   12.870000] SysLink module created on Date:Feb  3 2012 Time:16:15:09
Loading HDVICP2 Firmware
MemCfg: DCMM (Dynamically Configurable Memory Map) Version :  2.1.1.1
FIRMWARE: Memory Configuration status : In Progress
FIRMWARE: 1 start Successful
Loading HDVPSS Firmware
MemCfg: DCMM (Dynamically Configurable Memory Map) Version :  2.1.1.1
FIRMWARE: Memory Configuration status : In Progress
FIRMWARE: 2 start Successful
[   15.420000] HDMI W1 rev 4.0
Starting system message bus: dbus.
Starting telnet daemon.
Starting syslogd/klogd: done
Starting thttpd.
Starting PVR
[   17.870000] [drm] Initialized drm 1.1.0 20060810
[   18.210000] [drm] Initialized pvrsrvkm 1.7.783851 Thu May 24 CEST 2012 for SGX on minor 0
FATAL: Module omaplfb not found.
FATAL: Module bufferclass_ti not found.
BusyBox v1.13.2 (2011-12-09 14:43:32 IST) multi-call binary

Usage: mknod [OPTIONS] NAME TYPE MAJOR MINOR

Create a special file (block, character, or pipe)

Options:
        -m      Create the special file using the specified mode (default a=rw)
TYPEs include:
        b:      Make a block device
        c or u: Make a character device
        p:      Make a named pipe (MAJOR and MINOR are ignored)

chmod: /dev/pvrsrvkm: No such file or directory
/dev/mem opened.
Memory mapped at address 0x400b3000.
Read at address  0x48180F04 (0x400b3f04): 0x00000001
Write at address 0x48180F04 (0x400b3f04): 0x00000000, readback 0x00000000
/dev/mem opened.
Memory mapped at address 0x4023d000.
Read at address  0x48180900 (0x4023d900): 0x00000102
Write at address 0x48180900 (0x4023d900): 0x00000002, readback 0x00000002
/dev/mem opened.
Memory mapped at address 0x40139000.
Read at address  0x48180920 (0x40139920): 0x00040002
Write at address 0x48180920 (0x40139920): 0x00000002, readback 0x00000002

 _____                    _____           _         _   
|  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_ 
|     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
|__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|  
              |___|                    |___|            

Arago Project http://arago-project.org dm814x-evm ttyO0

Arago 2011.09 dm814x-evm ttyO0

dm814x-evm login: