/docs/MyDocs

To get this branch, use:
bzr branch http://darksoft.org/webbzr/docs/MyDocs

« back to all changes in this revision

Viewing changes to Administration/Systems/arm/seco_devkit.txt

  • Committer: Suren A. Chilingaryan
  • Date: 2014-06-12 06:46:08 UTC
  • Revision ID: csa@dside.dyndns.org-20140612064608-u765to8qftxr37ei
Ubuntu 14.04 on Lenovo X220

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
Hardware
 
2
========
 
3
 - Processor revision is r2p0
 
4
    In /dev/cpuinfo this corresponds to CPU Variant (r2), Revision (p0)
 
5
        Not a CPU Revision, but just revision bellow
 
6
 - According to STM RM PL310 L2 r3p1 cache controller is used.
 
7
 
1
8
Networking
2
9
==========
3
10
 Host: seco-gpu-devkit
71
78
    boot                                boot using configured environment
72
79
    saveenv                             save current environment permanently
73
80
 
74
 
 - We need to remap fb console, so we are executing following commands
 
81
 - We need to remap fb console to HDMI port, so we are executing following commands
75
82
    setenv dev_extras "fbcon=map:1"
76
83
    saveenv
77
84
 
78
85
 - The following kernel arguments are passed:
79
86
    console=ttyS0,115200n8 console=tty1 lp0_vec=0x00002000@0x9C406000 video=tegrafb vmalloc=256M mem=2047M@2048M fbcon=map:1 noinitrd usbcore.old_scheme_first=1 core_edp_mv=1300 panel=lvds tegraid=30.1.2.0.0 debug_uartport=lsport,2 smp tegra_fbmem=3072K@0xBFE00000 max_cpu_cur_ma=10000 root=/dev/mmcblk0p1 rw rootwait gpt
80
 
    
 
 
b'\\ No newline at end of file'
 
87
 
 
88
 - Changing to SATA
 
89
    setenv root_setup "${root_setup}; setenv sata_root /dev/sda5; setenv fs_root \${sata_root};"
 
90
 
 
91
 - Updating to a new kernel (uimg kernel is prepared from zImage using mkimage)
 
92
    setenv bootfile suse.uimg
 
93
 
 
94
Kernels
 
95
=======
 
96
 - As of 3.11 I was not able to run upstream kernel on the device. 
 
97
 Tegra3 support is in kernel now, but SECO kernel is based upon
 
98
 NVIDIA L4T with additional patches. Accoridng to SECO upatched 
 
99
 L4T is not bootable (I have not tried).
 
100
 
 
101
Building a new kernel
 
102
=====================
 
103
 - Install cross-toolkit
 
104
    crossdev -S -v --gcc 4.6.3 --libc ~2.15 --kernel ~3.1 --binutils ~2.22 -t armv7a-hardfloat-linux-gnueabi
 
105
 - Fix a problem in main Makefile
 
106
    KBUILD_AFLAGS   := -D__ASSEMBLY__ -mfloat-abi=hard -mfpu=vfpv3-d16
 
107
 - For Infiniband-support few kernel files have to be fixed, see patches
 
108
 - Set cross-compiler environment
 
109
    export CROSS_COMPILE=armv7a-hardfloat-linux-gnueabi-
 
110
 - Configure: we need to enable:
 
111
    - Infiniband support (even if OFA drivers will be used)
 
112
    - Large Receive Offload (TCP/IP networking)
 
113
 - build and install
 
114
    make && make INSTALL_MOD_PATH=/targetfs modules_install
 
115
 - generate uimage kernel from zImage (-a/-e options may be copied from kernel currently booting)
 
116
    mkimage -A arm -O linux -T kernel -C none -a 0x81008000 -e 0x81008000 -n "Linux 3.1" -d arch/arm/boot/zImage test.uimg
 
117
 - compile ofed modules
 
118
    ./configure --with-core-mod --with-ipoib-mod --with-ipoib-cm --with-user_mad-mod --with-user_access-mod --with-addr_trans-mod --with-mlx4-mod --with-mlx4_en-mod --with-mlx4_core-mod --with-mlx4_en-mod --with-mlx4_inf-mod
 
119
 
 
120
Problems
 
121
========
 
122
 1. Infiniband support is shaky. With changes described in infiniband.txt it is possible
 
123
 to run IB for a while, but system will crash eventualy. The ConnectX-3 works significantly
 
124
 worse than ConnectX-2 and usage of multiple ports worsenes situation considerably.
 
125
 It is highly recommended to disable memory frequency and voltage scalling while configuring
 
126
 the kernel (and probably disable cpufreq as well) and disable PCIe ASPM The recommended driver 
 
127
 is 1.5.3. The following should be added to /etc/modprobe.d
 
128
    options mlx4_core msi_x=0
 
129
    options ib_ipoib lro=0
 
130
 2. Tegra FB is also shaky. Seems fine in xorg, but major problems in console. Will trying
 
131
 to configure HDMI output the tegrafb will cause a crash during the boot:
 
132
    tegradc tegradc.1: Using mode 1920x1080 pclk=148500000 href=1 vref=1
 
133
    Unbalanced enable for IRQ 10
 
134
    tegra_dc_hdmi_detect -> tegra_fb_update_monspecs -> fbcon_new_modelist -> tegra_dc_enable -> ...)
 
135
 Normally, but not always, the system survives. However, the console will be 
 
136
 not visible. The trick is to switch off-and-on the display and switch between
 
137
 virtual consoles. After few iterations console should appear.
 
138
 - It seems off-on-switching working faster if USE_PLL_LOCK_BITS set 0 in the
 
139
 arch/arm/mach-tegra/clock.h
 
140
 - If I2C is disabled, the system always hangs on hdmi  detection.