Boot Camp Local 20120904 v1
Boot Camp Local 20120904 v1
Boot Camp Local 20120904 v1
This session covers all facets of the Linux boot process from power up to
running a user application beginning with ROM boot loader progressing
through secondary program loader, u-boot, kernel and finishing with userlevel initialization.
2012
Agenda
What you will learn
Overview of the Boot Process
Boot Modes
SPL
U-Boot
Kernel
User Level
Further Reading
Processor initialization
Read in Linux Kernel
Memory Map of boot
process
Kernel Stage - Kernel
Initialization
Init process
Reads in U-Boot
U-Boot Stage
User login
MMC
ROM BL
This particular
scenario is related
to the AM37x
Int. RAM
SPL
u-boot
kernel
Root FS
1
2
SPL
DDR
U-boot
Kernel
This is
discussed
later
(stage 4) Kernel
Processor
Boot Mode
Selection
ROM BL
Int. RAM
ROM BL sets requirements for how SPL looks so it can tell if it's found a
programmed device or not.
Persistent Storage Readable by ROM
Processor
ROM BL
Int. RAM
SPL
DDR
U-boot
Kernel
NAND
SPL
u-boot
kernel
Root FS
MMC
SPL
u-boot
kernel
Root FS
SPI
SPL
u-boot
kernel
Root FS
I2C
SPL
u-boot
kernel
Root FS
After loading an SPL that sets up DDR a flash tool could be loaded for programming
NAND, SPI, etc.
In this case the ROM BL will try and initiate a serial download (often X or Y modem based) and if
that succeeds, execute what was downloaded.
SPL continues to read in next stage (u-boot) over the serial interface
u-boot may also continue to load the kernel and root filesystem over serial
Host Machine connected over serial cable
Processor
Flash Tool
ROM BL
Int. RAM
DDR
Flash tool
SPL
U-boot
SPL
u-boot
kernel
Root FS
1
2
Serial Mode can be used to bring up board initially, albeit
turn around time will be long. < 15 minutes for SPL, uboot, kernel and a 10MB root file system.
Kernel
U-Boot Overview
Monolithic code image
Runs processor in physical or a single address space
Enables clocking, sets up some of the pin mux settings
Reads in Kernel image (uImage)
Jumps to load address pointed to in uImage header
What are environment variables and how are they used
Default environment variables and how they are used
uImage
uImage Header Info
Kernel Image
(Optional
Compression)
0x402f0400
SPL
DDR
0x80000000
0x80007fc0
uImage
0x80008000
0x80100000
Kernel
u-boot
root=/dev/nfs
What device interface is the root file system mounted on
nfsroot=192.168.1.166:/home/user/ti-sdk-am335x-evm-05.04.01.00/targetNFS
Tells the kernel what external host has the Root FS, requires setup on external host
ip=dhcp
tells kernel method to configure IP addresses and set up the IP routing table. Here the kernel is being to
use DHCP
Linux version 3.2.0 (root@stevenliu-laptop) (gcc version 4.5.3 20110311 (prerelease) (GCC) ) #1 Mon May 28 13:38:48 CST
CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7d
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine: am335xevm
Memory policy: ECC disabled, Data cache writeback
AM335X ES1.0 (sgx neon )
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 65024
Kernel command line: console=ttyO0,115200n8 root=/dev/nfs nfsroot=192.168.1.166:/home/userti-sdk-am335x-evm05.04.01.00/targetNFS,nolock rw ip=dhcp=/dev/nfs rw ip=dhcp
10
DDR
0x80000000
0x80008000
Kernel
u-boot
11
System Memory
0x00000000
0x80008000
0x8059CFFF
0x805DC000
0x80671023
Kernel text
Kernel data
Space being
used by Kernel
in this
configuration
Please Note this picture was taken from Wikipedia discussion on virtual memory
http://en.wikipedia.org/wiki/File:MMU_principle.png
12
13
Acronyms Explained
HDA The master device on the first ATA channel,
NFS Network File System
MMC This is the MMC/SD interface or Multi-Media Card/Secure Digital
14
Is the first User Space application to run that setups the user environment and
allows user interaction such as login. Below is a ps (process status) dump from
a console, init typically has a PID of 1, first process started.
/etc/inittab is the script that contains instructions for the init process that
sets up and calls other scripts as part of the user space initialization
Sets the run level, this in turn sets which init scripts based on run level
are run
Identifier:RunLevel:Action:Command
Based on sysv5init scheme
Q&A
15
Thank you!
16
Agenda
Overview
Multimedia on Cortex-A8
NEON support in opensource community
Example Applications
SDK codec portfolio
SDK multimedia framework
Gstreamer FFmpeg/Libav
NEON ecosystem
Performance and Benchmark
Software components & dependencies
References
Support
Lab
17
18
ARM Cortex-A8
Key Technology
Additions by
Architecture Generation
Thumb-EE
Execution
Environments:
Improved
memory use
VFPv3
ARM11
NEON
Adv SIMD
Improved
Media and
DSP
Thumb-2
ARM9
TrustZone
ARM10
SIMD
Low Cost
MCU
VFPv2
Thumb-2 Only
Jazelle
V5
V6
V7 A&R
V7 M
Multimedia on Cortex-A8
Cortex-A8 Features and Benefits
Dual-issue, in-order, superscalar architecture delivering high performance
First implementation of the ARMv7 instruction-set architecture, including the
advanced SIMD media Instructions (NEON)
Advanced dynamic Branch prediction
Integrated, 256 KB unified L2 cache
Dedicated, low-latency, high-BW interface to L1 cache
NEON : 64/128-bit Hybrid SIMD Engine for Multimedia
Supports both Integer and Floating Point SIMD
Enhanced VFPv3 doubles number of double-precision registers and new
instructions to convert between fixed and floating point
Efficient Run Time Compilation Target
Jazelle-RCT: Target for Java. Memory footprint reduced up to 3x
Can also target languages such as Microsoft .NET MSIL, Perl, Python
19
Multimedia on Cortex-A8
Neon Features and Benefits
Independent HW block to support advanced SIMD instructions
Comprehensive instruction set with support of 8, 16 & 32-bit signed & unsigned
data types
256 byte register file (dual 32x64/16x128 view) with hybrid 32/64/128 bit modes
Large register files enables efficient data handling and minimizes access to
memory, thus enhancing data throughput
Processor can sleep sooner which leads to an overall dynamic power saving
Independent 10-stage pipeline
Dual-issue of limited instruction pairs
Significant code size reduction
Multimedia on Cortex-A8
Neon Multimedia benchmark
Test Parameters:
Sep 21 2009 snapshot of gstffmpeg.org
Resolution
480x270
Frame Rate
30fps
Audio
44.1KHz
Video Codec
H.264
Audio Codec
AAC
20
2D/3D
Pwr/Clk
Browser
Sys Info
WLAN
Qt Embedded
QGLWidget
GStreamer
QWidget
Wifi
FFMPEG
(MPG4, H.264, AAC)
2D Accel
OpenGL ES
BlueZ
FBDEV
V4L2
McSPI
Touch
screen
Ethernet
DSS2
ALSA
USB
MMC/SD
UART
System on Chip
Target Board
21
Gstreamer
Multimedia processing library
Provides uniform framework across
platforms
Includes parsing & A/V sync support
Modular with flexibility to add new
functionality via plugins
Easy bindings to other frameworks
FFmpeg/Libav
Free audio and video decoder/encoder
code licensed under LGPL (GPL licensed
codecs can be build seperately)
A comprehensive suite of standard
compliant and robust multimedia codecs
Audio, Video, Image, Speech
Codec software package
Codec libraries with standard C
based API
Audio/Video parsers that support
popular multimedia content
Use of SIMD/NEON instructions
Neon will give 1.6x-2.5x performance
on complex video codecs
Application
Layer
gst-launch
Framework
Media Player
GStreamer
Plug-ins
Audio &
Speech
Codecs
Kernel
Space
22
Video
Codecs
FBDev
Image
Codecs
Plugins
ALSA
file-src
demuxer
src
video-decode
post-processing
sink
sink
src
video-sink
src
sink
Video
src1
src
sink
src2
Audio
audio-decode
queue
sink
src
sink
src
audio-sink
sink
FFmpeg/Libav codecs
libavcodec is the code library developed as part of the FFmpeg/Libav project
Supports around 200 audio/video formats
Used by many free and open source media players and encoders
To enable NEON optimization extra compiler flags should be enabled
cflag mfpu should be set to neon
Setting cflag mfloat-abi to softfp enables generation of code using
hardware floating-point instructions
License
FFmpeg libraries include LGPL, GPLv2, GPLv3 and other license based
codecs, enabling GPLv3 codecs subjects the entire framework to GPLv3
license
Sitara SDK enables GPLv2+ codecs
Additional details of legal and license of these codecs can be found on
FFmpeg/libav webpage.
23
NEON ecosystem
Several third parties provide NEON optimized codec solutions
Company
Application
H.264, VC1, MPEG-4
VP6/7, MPEG-4, VC1, H.264, video stabilization
MPEG-4, MPEG-2, H.263, H.264, WMV9, VC1
MPEG-4, H.263, H.264, WMV9, audio
H.264, VC1
TEAMSpirit voice and video
H.264, MPEG-4, H.263, WMV
MobiClip
Video and audio codecs
Multichannel audio processing
MPEG-4
Audio and consulting
24
25
Example applications
MPEG-2 Decode
MPEG-4 Decode
H.264 Decode
AAC Decode
MPEG-4 + AAC Decode
26
27
Audio/Video Codec
MPEG4 + AAC
WQVGA Clip: HistoryOfTIAV-WQVGA.mp4
480p Clip: HistoryOfTIAV-480p.mp4
720M
600M
500M
275M
95
NA
NA
96
NA
NA
MPEG4
WQVGA Clip: HistoryOfTI-WQVGA.m4v
720M
600M
42
45
88
98
71
78
42
46
76
88
60
69
500M
55
97
88
53
97
79
275M
88
96
95
87
96
96
MPEG2
WQVGA Clip: HistoryOfTI-WQVGA.m2v
480p Clip: HistoryOfTI-480p.m2v
720M
600M
500M
43
46
54
77
84
95
93
98
97
41
47
54
66
75
86
80
89
97
275M
85
96
96
84
96
96
H.264
WQVGA Clip: HistoryOfTI-WQVGA.264
480p Clip: HistoryOfTI-480p.264
720M
600M
500M
62
73
81
98
98
97
98
97
97
63
70
79
98
98
98
98
98
97
275M
95
96
92
96
98
93
720M
600M
500M
275M
9
2
3
26
AAC
22
16
16
16
10
44
52
58
86
98
97
91
97
97
Same Same
as VGA as VGA
22
15
15
16
10
41
49
61
73
88
97
80
87
96
2
4
2
25
Same Same
as VGA as VGA
Power benchmark
Total processor power is measured for the following peripherals
MPU set to OPP 300MHz, Core, on-chip SRAM, LDO, DPLL, DDR & Flash (POP)
Power measurement set-up
Default power consumption with Dynamic power switching
(DPS) enabled
With sleep_while_idle and enable_off_mode features
enabled
With Matrix GUI enabled
With sleep_while_idle and enable_off_mode features
enabled
Matrix GUI enabled
MPEG-4 decode running
Total power
[mW]
252.87
329.22
Dynamic voltage frequency scaling (DVFS) can be enabled to scale power values at runtime depending on system-level requirements.
scaling_governor is set to ondemand
Power consumption can be further optimized disabling clocks of unused modules.
Additional details of power optimization can be obtained from power management
guide and PSP user guide for 2.6.37 kernel
28
Profiling
Oprofile, a common
Linux profiling tool is
used
Uses hardware
performance counters
of CPU for profiling
hardware and
software interrupt
handlers
kernel modules
Kernel
shared libraries
Applications
Table depicts profiling
results for MPEG4
decode at 300MHz and
1GHz using video pipe
for display
300MHz
1GHz
samples|
%| app name
samples|
%| app name
------------------------------------------------------------ --------------------------------------------------------4968 89.2562 vmlinux-2.6.37
2294 61.1082 vmlinux-2.6.37
311 5.5875 libgstffmpeg.so
894 23.8146 libgstffmpeg.so
120 2.1559 libgstffmpegcolorspace.so
215 5.7272 libc-2.9.so
95 1.7068 libc-2.9.so
164 4.3687 libgstffmpegcolorspace.so
19 0.3414 libgobject-2.0.so.0.2400.1
45 1.1987 libgstreamer-0.10.so.0.26.0
18 0.3234 libgstreamer-0.10.so.0.26.0
34 0.9057 libglib-2.0.so.0.2400.1
14 0.2515 libglib-2.0.so.0.2400.1
33 0.8791 libgobject-2.0.so.0.2400.1
7 0.1258 libgstbase-0.10.so.0.26.0
28 0.7459 libgstmpeg4videoparse.so
5 0.0898 libgstmpeg4videoparse.so
16 0.4262 libpthread-2.9.so
4 0.0719 ld-2.9.so
13 0.3463 libgstbase-0.10.so.0.26.0
2 0.0359 busybox
9 0.2397 ld-2.9.so
2 0.0359 libpthread-2.9.so
6 0.1598 busybox
1 0.0180 libgthread-2.0.so.0.2400.1
1 0.0266 libm-2.9.so
1 0.0266 libgstcoreelements.so
1 0.0266 libgstvideo4linux2.so
Support
GStreamer
http://gstreamer.freedesktop.org/
FFmpeg/libav
29
Sep 2012
Agenda
What You Will Learn
Motivation for PM
Overview of Power Management Techniques
Understanding PM Features in the AMSDK
All of the above focused on AM335x.
30
31
TI Customers
End Users
Competitive differentiator
Less heat dissipation
Smaller, sleeker products with smaller battery
Longer battery life
Better Features + Increased Usage = Increased Revenue
Quicker time-to-marked with advanced features
Applicable PM Techniques:
32
Dynamic
Power
Switching
AVS
SLM
Static
Leakage
Management
Active PM
Technique
DPS
Idle PM
Technique
DVFS
Dynamic
Voltage &
Frequency
Scaling
Power
33
PM Architecture Basics
Devices are partitioned into the following architectural
blocks:
Clock Domain:
Voltage
Control
Voltage
Regulator
Power Domain:
VDD
Voltage Domain
CLK
Clock
Domain 1
Clock
Domain 2
Power Domain
Power Domain
Modules
VDD_CORE
PD_WKUP
VDD_CORE
PD_PER
VDD_CORE
PD_GFX
SGX530
VDD_MPU
PD_MPU
VDD_RTC
PD_RTC
RTC
34
Active PM
Technique
DVFS applicability:
Software Support:
OPP can be statically selected by the user via Matrix, or at the Linux command line.
Only if governor is userspace!
Active PM
Technique
35
Active PM
Technique
SmartReflex Classes
Class-0: Manufacturing Test Calibration
At manufacturing test, the device-optimized operating point voltages are permanently fused into
each die. A one time optimization to account for process variations.
Class-1: Boot-Time Software Calibration
At boot-up time, device-optimized operating point voltages of the die are determined during
calibration. Optimization also accounts for process variations.
Class-2: Continuous Software Calibration (AM335x uses Class-2B)
SmartReflex sub-chip does real-time voltage optimization via software loop
Optimizes for process, temperature and silicon degradation effects
Variants:
Class-2A: Timer interrupt or other system event (e.g. frequency change) used to initiate interrogation of
SmartReflex sub-chip
Class-2B: SmartReflex sub-chip generates a host CPU interrupt when frequency is outside acceptable
range
36
DVFS vs AVS
DVFS:
125
OPP
1
OPP
2
OPP
3
Best case
100
Worst case
Performance
75
50
SmartReflex
SmartReflex
25
0.9
1.1
Voltage
1.2
1.3
1.4
AVS (SmartReflex)
Active PM
Technique
Example use cases: during MP3 playback, we could idle CPSW (among others)
Without DPS
With DPS
1
Normalized
Power
Power
0.1
Execution
Time
Execution
Time
1
37
Idle PM
Technique
C1 MPU WFI
C2 MPU WFI + DDR Self Refresh (lowest power)
Software support:
CPUIdle algorithm automatically chooses from available sleep states based upon
the inactivity period and current HW state. Useful for power savings during shorter
periods of inactivity.
Suspend/Resume support available for long inactivity periods (Deep sleep state)
Active PM
Technique
SLM
Idle PM
Technique
Use case :
Audio/video Playback - Some domains are
going into an idle mode when not needed
Use case:
OS idle: Drop into lower-power C-states
Suspend-to-RAM: lowest power case
38
39
Agenda
Board Port Overview
Porting U-Boot to an AM335x Target
U-Boot Board Port Labs
Porting the Linux Kernel to a AM335x Target
Linux Kernel Board Port Labs
40
Presentation Overview
Goal is to gain an understanding of the components of a board port for
both U-Boot and Linux
The board or target portion is the last part of a three step method
(Architecture/SOC/Target Board)
Explain how the SDK will support board ports going forward
41
SPL/U-Boot/Linux ()
SPL/U-Boot/Linux boot sequence
U-Boot/Linux build process (kernel configuration)
Minicom setup
Root File Systems
42
The Mission
Good Morning the AM335x has been chosen as the processor for
your new exciting market cornering product. Your job (no choice but to
accept it ) is to get U-Boot and the Linux kernel running on this new
platform as soon as possible.
To accomplish this you will take the board design from your HW team and
use the AM335x EVM and accompanying Sitara Linux SDK and port UBoot and the Linux kernel to your new Hardware.
43
44
45
46
Both U-boot and Linux follow a similar board file abstraction approach
The Core Architecture is ported first
The SOC supporting functions are ported next
The last part to tie U-Boot/Kernel to the target is the Board file that
defines well known initialization or entry functions that U-Boot and the
Linux Kernel will call to handle a priori type board knowledge
ti-sdk-am335x-05.05.00.00/board-support/u-boot-2011.09-psp04.06.00.08/
ti-sdk-am335x-05.05.00.00/board-support/linux-3.2-psp04.06.00.08.sdk/
Later in the presentation you will see references to just the specific subtree that has the respective source such as U-Boot or Linux
47
Pin Mux
Utility
48
PORTING U-BOOT TO AN
AM335X TARGET
49
50
51
52
Lab 2
Build on the template file demonstrating how to add the MMC and Ethernet
peripherals
53
54
55
56
Called from
arch/arm/cpu/armv7/start.S
If you have a different PMIC you will
most likely need a different code
base than what is shown here
57
DO LAB 1.
58
59
60
Do not be
concerned
about knowing
git at this
point, here we
are using this
for illustration
purposes.
61
62
DO LAB 2.
63
64
65
Board Developers
only need to be
looking at the last
phase which is
board porting, all
the architecture
and SOC port
support has been
done.
66
67
68
69
Lab 2
Build on the template file demonstrating how to add the MMC peripheral to
provide a Root file system
Lab 3
Build onto template file again this time adding Ethernet for network
connectivity
Lab 4
Demonstrate how to add an LCD panel to the board file
70
71
72
73
Question
arch/arm/mach-omap2
DO LAB 1.
74
75
76
77
78
79
DO LAB 2.
Lab 2 Summary
Added code to the board port template file to handle pin mux, MMC
controller initialization and evm initialization function.
All changes happened within the board file
80
81
MII Interface
signals that
need to be
indentified to
the driver
82
The EVM init function calls mii1_init and the cpsw init function.
83
DO LAB 3.
84
Lab 3 summary
Followed the steps of system attach review, pin mux config, device init
to evm init
Had to add additional code outside the board file to support initializing
the cpsw for a generic case
85
Pin Mux
Use the Pin Mux Utility to configure Pin Init data
86
87
BPP
Clock polarity
Data Format
DMA
88
89
90
91
DO LAB 4.
Summary Lab 4
LCD required 3 functions to be configured, Backlight, Touch Screen
and LCDC
required device initialization data
required init functions
required pin mux configurations
Made additions to the board file and the frame buffer support file
92
THANK YOU
93
Works Enough!
ADDITIONAL INFORMATION
SOURCES FOR POST
WORKSHOP REVIEW
94
July 2012
95
Agenda
Sitara Linux SDK Development Components
Example Development Environment
U-Boot Debug Overview
U-Boot Debug Lab
96
97
CCSv5 Installer
To get JTAG support the CCS installer needs to be run in root mode
using sudo
98
EXAMPLE DEVELOPMENT
ENVIRONMENT
99
100
Define a CCS project and point to the source tree within the SDK
This will take a couple minutes since CCS will index the u-boot source tree
101
These steps will be performed in the Debug Lab and will emphasize
that how U-Boot is loaded matters (i.e. whether in SPL context or not)
102
U-Boot/SPL building
Have to build U-Boot to get an binary SPL and ELF U-Boot image to
work with.
Add the debug information in the binary SPL and ELF U-Boot
Modify the ti-sdk-am335x-evm-05.05.00.00/board-support/u-boot-2011.09psp04.06.00.08/config.mk:
278 ALL_AFLAGS = $(AFLAGS) $(AFLAGS_$(BCURDIR)/$(@F))
$(AFLAGS_$(BCURDIR)) -g
279 ALL_CFLAGS = $(CFLAGS) $(CFLAGS_$(BCURDIR)/$(@F))
$(CFLAGS_$(BCURDIR)) -g
103
104
105
106
107
The SPL binary was loaded to 0x402F0400, and this is the start point for SPL.
So the PC of the ARM core should be reset to this address.
This operation is the same as to set the ARM mode in last slide.
Click the Assembly Step Into button as in Red, and you can find the PC jumps to
the code as below.
108
Uboot Debug
In general, the CCS debugging for SPL and Uboot has the same
procedures in most steps, but there are still some differences. So only
list the difference here
For U-boot, it can only run when the SPL finishes the DDR and other related
low level initialization. So when debugging U-Boot, the SPL needs to be
executed firstly.
U-Boot ELF image can be used directly for debugging.
There is the code relocation in the U-Boot, that is, part of the code will be
relocated to higher memory. So the code memory map will be switched to
an offset.
109
110
Q&A
Thank you!
111
Agenda
Hardware Design Resource
Software Design Resource
Tools & Utilities for AM355x
Online support
112
113
114
OS Platform
Formal release
http://www.ti.com/tool/linuxezsdk-sitara
115
116
Android on AM335x
OS Platform
Rowboat (www.arowboat.org)
A community portal for Android on Sitara
Android 4.0 available on AM335x.
Mail Group, experts always on Line
117
RTOS on AM335x
OS Platform
RTOS Overview
http://www.ti.com/lsds/ti/dsp/support/software/os_overview.page
For the 3rd party RTOS, please contact the Vendor directly.
118
Starterware on AM335x
Non-OS Platform
Development Environment
Ubuntu 10.04 LTS downloading:
http://www.ubuntu.com/download/desktop
119
CCSv5
The Sitara SDK also comes with CCSv5.1 available as:
Download for web updates
On the 3rd partition of the in-the-box SD card
Eclipse based
Runs on Linux for debugging Linux
Multi-core debug
Run-Mode Linux debug support
Remote GDB debug
Debug Linux applications and kernel
The JTAG interface for Sitara, is not compatible with the ARM JTAG.
120
http://e2e.ti.com/support/dsp/sitara_arm174_microprocessors/default.aspx
http://e2e.ti.com/support/embedded/linux/default.aspx
http://e2e.ti.com/support/embedded/android/default.aspx
http://e2e.ti.com/support/embedded/starterware/default.aspx
http://e2e.ti.com/support/embedded/wince/default.aspx
Q&A
121
Thank you!
122
123
Agenda
Starter Kit Overview
SDK Overview
Obtaining the SDK
Installing the SDK
Sitara Linux SDK Directory Structure
Building MLO and U-boot
Building Kernel
Creating an SD Card For EVM Booting
124
What is an SDK?
Definitions and solutions vary, but we think an SDK should be.
More than just a board support package (BSP) or a Demo
An SDK should also contain tools for developing on TI parts
Pre-built libraries that customer applications can link against without
requiring building their own
Documentation
125
Documentation
CCSv5
SDK Installer
Example Applications
Host Tools
Often you will want to download the latest SDK from ti.com to get
updates.
There is now a central location for finding all Sitara Linux SDKs at
http://www.ti.com/tool/linuxezsdk-sitara
126
Individual
Components
127
bin - Contains the helper scripts for configuring the host system and target device. Most of these scripts are
used by the setup.sh script.
board-support - Contains the SDK components that need to be modified when porting to a custom platform.
This includes the kernel and boot loaders as well as any out of tree drivers.
docs - Contains various SDK documentation such as the software manifest and additional user's guide. This
is also the location where you can find the training directory with the device training materials.
example-applications - Contains the sources for the TI provided example applications seen during the outof-box demonstration.
filesystem - Contains the reference file systems. These include the smaller base file system as well as the
full-featured SDK file system.
host-tools - Contains the host side tools such as pinmux and flash tool.
linux-devkit - Contains the cross-compile toolchain and libraries to speed development for the target device.
Graphics_SDK_setuplinux_<version>.bin - This is the installer for the graphics SDK. The graphics SDK
components are used by the Sitara Linux SDK to provide additional demos as well as integrated with the prebuilt Qt libraries to accelerate various Qt functions.
Makefile - Provides build targets for many of the SDK components from the top-level of the SDK.
Rules.make - Sets default values used by the top-level Makefile as well as sub-component Makefiles
setup.sh - Configures the users host system as well as the target system for development
You can find the MLO and u-boot.img ready in the current document.
Reference:
1. http://processors.wiki.ti.com/index.php/AM335x_U-Boot_User%27s_Guide
2./usr/local/ti-sdk-am335x-evm/docs/sitara-linuxsdk-sdg-05.05.00.00.pdf
128
Building Kernel
Configuring the Kernel
make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabiam335x_evm_defconfig;
or
make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- menuconfig
Reference:
1.http://processors.wiki.ti.com/index.php/AMSDK_Linux_User%27s_Guide
2. /usr/local/ti-sdk-am335x-evm/docs/sitara-linuxsdk-sdg-05.05.00.00.pdf
Format
Content
FAT32
Ext3
Reference :
1.http://processors.wiki.ti.com/index.php/Sitara_Linux_SDK_create_SD_card
_script
2./usr/local/ti-sdk-am335x-evm/docs/sitara-linuxsdk-sdg-05.05.00.00.pdf
129
Q&A
Thank you!
130