SlideShare a Scribd company logo
1 of 23
TMS320DM8148 Embedded
Linux
Overview
Introduction
• Linux Kernel & Components used in
embedded system
• Embedded Linux Devices everywhere around
us
– Android Phones
– Digital & Smart TVs
– Set Top Boxes
Embedded Hardware Architecture
• Linux Kernel supports 32 & 64 bit architectures
– X86 & x86-64
– ARM
– Power PC
– MIPS
– SuperH
– BlackFin
– Microblaze
– ColdFire, AVR32
Architecture
Embedded Board
Host PC
Root File System
Linux Kernel & drivers
Boot Loader
C Libraries linux services / commands
ApplicationsCross
Compiler
JTAG
Debugger
Source
Code
Development PC - Compiler
• Code Sourcery ARM Tool Chain
– Version 2009-q1
– arm-2009q1-203-arm-none-linux-gnueabi-i686-
pc-linux-gnu.tar
• https://sourcery.mentor.com/GNUToolchain/release18
02?
• Download IA32 GNU/LINUX TAR
• Codesourcery Commercial Edition
– Evaluation version of commercial edition
Development PC – Compiler Setup
• Uncompress the Compiler Zip File
– tar xvf arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar
• Move to /opt/ custom software folder in ubuntu
– mkdir /opt/CodeSourcery
– mv arm-2009q1 /opt/CodeSourcery/Sourcery_G++_Lite
• Adding the toolchain path into shell
– vi ~/.bashrc
• export PATH=/opt/CodeSourcery/Sourcery_G++_Lite/bin:$PATH
– source ~/.bashrc
Development PC - Tools
• JTAG Debugger
– This tool is used when new hardware is designed
– Used to validate & bring up low level hardware
interfaces ( DDR3, NAND Flash )
– XDS 560 V2 System Trace Emulator
– XDS 560 PCI Rev D Emulator
– Blackhawk USB 560-M Emulator
– Spectrum Digital 510 USB Emulator
• Code Composer Studio
Development PC - Console
• Serial Console
– Used to get boot up log messages & acts as linux shell
to execute the applications
– Default settings : 115200 8N1
– Flow Control : None
• Minicom
– Text based modem control & terminal emulation
utility
– PC Serial console
– Run “minicom –S” to configure the serial console
Development PC – EZSDK
• EZSDK
– Linux EZ Software Development Kit
– Linux support based on 2.6.37 Kernel
– Quick Start Development
– Video / Audio Codecs
– DSP accelerated alogrithms
– Application Examples – Networked Audio / Video
– Qt graphics SDK plugin
– OpenMax libraries
– Matrix Application Launcher
EZSDK - Architecture
EZSDK - Components
• Linux Kernel 2.6.37
• Bootloader
• File System
• Qt/Webkit application framework
• 3D Graphics Support
• Flash Tools & Pin Muxing Utility
• HDVICP2 Accelerated Codec
– H.264 Encode / Decode, MPEG4 Encode / Decode,
MPEG2 Decode & VC1/WMV9 to the video detector
Boot Loader
• 1st stage boot loader
– TI 814x BOOT ROM
• 2nd & 3rd stage boot loader
– U-Boot Loader
– U-Boot-MIN Image
• Prompt TI-MIN#
– U-Boot Image
• Prompt TI8148_EVM#
• NOR Boot
– Has only two stage bootloader
– U-Boot-MIN is not required as NOR is XIP ( eXecute In
Place )
Two Stage U-Boot Design
• TI814x internal RAM
– 128 KB out of which 18 KB at the end used by ROM Code
– Limit of 110KB on the size of U-Boot binary can be
transferred to internal RAM
– It needs to setup TEXT_BASE of U-Boot
• 1st stage of U-Boot built with configuration as minimal
as possible
– Purpose to initialize the necessary peripherals especially
DDR SDRAM
– Provides mechanism to load full fledged U-Boot into DDR
& then passed control over it.
– Automatic DDR2 & DDR3 selection
U-Boot-MIN
• Different Boot Modes
– NAND/SPI Memory Boot
• Header needs to be attached with binary to indicate load
address.
• SPI boot requires endian information as well
– UART/EMAC/SD Card Peripheral Boot
• No header
• Load Address is fixed ( 0x80070000)
– NOR Flash Boot
• Header is not required
• 1st stage U-Boot is not required, as it is eXecute In Place (XIP)
U-Boot Loader
• 2nd stage of U-Boot
– Supports saving environment variables into
• NAND / SPI Flash
• SD Card
• NOR Flash
– Storage media will be configured before building of 2nd
stage U-Boot
• Supported with Storage Media
– Write & Read files ( like boot, kernel, filesystem images )
back from storage media
– Loads kernel image & execute the same
• Loads from Storage
• Loads from TFTP server using Ethernet
U-Boot Loader – Kernel Boot
• Boot from NAND
– nand read.i 0x81000000 280000 500000
– bootm 0x81000000
• Boot from SPI
– sf read 0x81000000 0x42000 0x200000
– bootm 0x81000000
• Boot from NOR
– cp.w 0x08060000 0x81000000 0x200000
– bootm 0x81000000
• Boot over Network
– tftp 0x81000000 uImage
– bootm 0x81000000
Linux Kernel
• Unix Like computer operating system kernel
• Default kernel configuration
– ti8148_evm_defconfig
• Kernel Image format
– uImage – U-Bootloader based image
– mkimage utility used to create linux kernel image
Linux Kernel
• Manages all the hardware peripherals like
CPU, Memory, IO
• Provides an interface for user space
application & libraries to access hardware
interfaces
• Manages multiple user access
– Provides a hardware interface access for multiple
user application access
Linux Kernel – Block Diagram
Memory
Management
block - HW MMU
Scheduler & Task
Management
File System
Device Drivers
Low Level CPU
initialization
Network Stack
Device
Tree
Hardware
Description
Linux Kernel – Device Drivers
• Power Management
• GPIO Driver
• EDMA3 Driver
• Audio Driver
• SATA Driver
• USB Driver
• SD / MMC Card Driver
• Ethernet Switch Driver
• VPSS Video Driver
– VPSS Video Capture Driver
• HDMI Driver
• McSPI Driver
• PCI Express Root Complex Driver
• PCI Express End Point Driver
• Touch Screen Driver
• Watchdog Timer
File System
• Root File System
– Ramdisk
– Cramfs
– Ext 2,3,4
– FAT
• Pseudo file system
– Proc
– Sysfs
– Dev Filesystem
Root File System Structure
• bin
• boot
• dev
• etc
• lib
• lost+found
• misc
• mnt
• net
• opt
• proc
• root
• sbin
• tmp
• usr
• Var
Contact US
• For Embedded Design Service
• Web : www.neeveetech.com
• Sales : sales@neeveetech.com

More Related Content

What's hot

presentation-140514125659-phpapp01.pdf
presentation-140514125659-phpapp01.pdfpresentation-140514125659-phpapp01.pdf
presentation-140514125659-phpapp01.pdfgebreyesusweldegebri2
 
Routers and Routing Configuration
Routers and Routing ConfigurationRouters and Routing Configuration
Routers and Routing Configurationyasir1122
 
Intel galileo gen 2
Intel galileo gen 2Intel galileo gen 2
Intel galileo gen 2srknec
 
Challenges in Embedded Computing
Challenges in Embedded ComputingChallenges in Embedded Computing
Challenges in Embedded ComputingPradeep Kumar TS
 
Introduction to intel galileo board gen2
Introduction to intel galileo board gen2Introduction to intel galileo board gen2
Introduction to intel galileo board gen2Harshit Srivastava
 
IoT Programming on the Raspberry Pi
IoT Programming on the Raspberry PiIoT Programming on the Raspberry Pi
IoT Programming on the Raspberry PiDamien Magoni
 
Setting Up a Windows Network
Setting Up a Windows NetworkSetting Up a Windows Network
Setting Up a Windows NetworkAmir Villas
 
Apple II Floppy disk emulation explained by example
Apple II Floppy disk emulation explained by exampleApple II Floppy disk emulation explained by example
Apple II Floppy disk emulation explained by exampleAndrew Roughan
 
atmega 128 and communication protocol
atmega 128 and communication protocolatmega 128 and communication protocol
atmega 128 and communication protocolRashmi Deoli
 
Embedded c & working with avr studio
Embedded c & working with avr studioEmbedded c & working with avr studio
Embedded c & working with avr studioNitesh Singh
 
The Deck by Phil Polstra GrrCON2012
The Deck by Phil Polstra GrrCON2012The Deck by Phil Polstra GrrCON2012
The Deck by Phil Polstra GrrCON2012Philip Polstra
 
Cyberhijacking Airplanes Truth or Fiction
Cyberhijacking Airplanes Truth or FictionCyberhijacking Airplanes Truth or Fiction
Cyberhijacking Airplanes Truth or FictionPhilip Polstra
 
Arduino Meetup with Sonar and 433Mhz Radios
Arduino Meetup with Sonar and 433Mhz RadiosArduino Meetup with Sonar and 433Mhz Radios
Arduino Meetup with Sonar and 433Mhz Radiosroadster43
 
PCB Business Card
PCB Business CardPCB Business Card
PCB Business Cardyeokm1
 

What's hot (19)

Intel galileo
Intel galileoIntel galileo
Intel galileo
 
presentation-140514125659-phpapp01.pdf
presentation-140514125659-phpapp01.pdfpresentation-140514125659-phpapp01.pdf
presentation-140514125659-phpapp01.pdf
 
Routers and Routing Configuration
Routers and Routing ConfigurationRouters and Routing Configuration
Routers and Routing Configuration
 
Intel galileo gen 2
Intel galileo gen 2Intel galileo gen 2
Intel galileo gen 2
 
Challenges in Embedded Computing
Challenges in Embedded ComputingChallenges in Embedded Computing
Challenges in Embedded Computing
 
Introduction to intel galileo board gen2
Introduction to intel galileo board gen2Introduction to intel galileo board gen2
Introduction to intel galileo board gen2
 
IoT Programming on the Raspberry Pi
IoT Programming on the Raspberry PiIoT Programming on the Raspberry Pi
IoT Programming on the Raspberry Pi
 
Setting Up a Windows Network
Setting Up a Windows NetworkSetting Up a Windows Network
Setting Up a Windows Network
 
It's game time
It's game timeIt's game time
It's game time
 
Thotcon2013
Thotcon2013Thotcon2013
Thotcon2013
 
Apple II Floppy disk emulation explained by example
Apple II Floppy disk emulation explained by exampleApple II Floppy disk emulation explained by example
Apple II Floppy disk emulation explained by example
 
Capitulo 2
Capitulo 2Capitulo 2
Capitulo 2
 
atmega 128 and communication protocol
atmega 128 and communication protocolatmega 128 and communication protocol
atmega 128 and communication protocol
 
Embedded c & working with avr studio
Embedded c & working with avr studioEmbedded c & working with avr studio
Embedded c & working with avr studio
 
USB BASIC
USB BASICUSB BASIC
USB BASIC
 
The Deck by Phil Polstra GrrCON2012
The Deck by Phil Polstra GrrCON2012The Deck by Phil Polstra GrrCON2012
The Deck by Phil Polstra GrrCON2012
 
Cyberhijacking Airplanes Truth or Fiction
Cyberhijacking Airplanes Truth or FictionCyberhijacking Airplanes Truth or Fiction
Cyberhijacking Airplanes Truth or Fiction
 
Arduino Meetup with Sonar and 433Mhz Radios
Arduino Meetup with Sonar and 433Mhz RadiosArduino Meetup with Sonar and 433Mhz Radios
Arduino Meetup with Sonar and 433Mhz Radios
 
PCB Business Card
PCB Business CardPCB Business Card
PCB Business Card
 

Viewers also liked

UDPSRC GStreamer Plugin Session VIII
UDPSRC GStreamer Plugin Session VIIIUDPSRC GStreamer Plugin Session VIII
UDPSRC GStreamer Plugin Session VIIINEEVEE Technologies
 
Introduction to Graphics - Session
Introduction to Graphics - SessionIntroduction to Graphics - Session
Introduction to Graphics - SessionNEEVEE Technologies
 
Open GL Programming Training Session I
Open GL Programming Training Session IOpen GL Programming Training Session I
Open GL Programming Training Session INEEVEE Technologies
 
System Verilog Tutorial - VHDL
System Verilog Tutorial - VHDLSystem Verilog Tutorial - VHDL
System Verilog Tutorial - VHDLE2MATRIX
 
Mind Mapping та його використання
Mind Mapping та його використанняMind Mapping та його використання
Mind Mapping та його використанняAlexander Babich
 
Trabajos colaborativos
Trabajos colaborativosTrabajos colaborativos
Trabajos colaborativosMiguel Yambay
 
документ Microsoft word (2)
документ Microsoft word (2)документ Microsoft word (2)
документ Microsoft word (2)Oleg777
 
Pi3 Ef 7 Pe Revision Class
Pi3 Ef 7 Pe Revision ClassPi3 Ef 7 Pe Revision Class
Pi3 Ef 7 Pe Revision ClassAna Menezes
 
學生學習歷程簡報
學生學習歷程簡報學生學習歷程簡報
學生學習歷程簡報Fang-fang
 

Viewers also liked (16)

UDPSRC GStreamer Plugin Session VIII
UDPSRC GStreamer Plugin Session VIIIUDPSRC GStreamer Plugin Session VIII
UDPSRC GStreamer Plugin Session VIII
 
Gstreamer plugin development
Gstreamer plugin development Gstreamer plugin development
Gstreamer plugin development
 
Introduction to Graphics - Session
Introduction to Graphics - SessionIntroduction to Graphics - Session
Introduction to Graphics - Session
 
Open GL Programming Training Session I
Open GL Programming Training Session IOpen GL Programming Training Session I
Open GL Programming Training Session I
 
System Verilog Tutorial - VHDL
System Verilog Tutorial - VHDLSystem Verilog Tutorial - VHDL
System Verilog Tutorial - VHDL
 
Chiste de la suerte
Chiste de la suerteChiste de la suerte
Chiste de la suerte
 
Mind Mapping та його використання
Mind Mapping та його використанняMind Mapping та його використання
Mind Mapping та його використання
 
Colour. For Kids
Colour. For KidsColour. For Kids
Colour. For Kids
 
Trabajos colaborativos
Trabajos colaborativosTrabajos colaborativos
Trabajos colaborativos
 
документ Microsoft word (2)
документ Microsoft word (2)документ Microsoft word (2)
документ Microsoft word (2)
 
Manual tecnico
Manual tecnicoManual tecnico
Manual tecnico
 
CV_Jeeshan CPE
CV_Jeeshan CPECV_Jeeshan CPE
CV_Jeeshan CPE
 
Brain maturation
Brain maturationBrain maturation
Brain maturation
 
CV_SANJAY SOHIL
CV_SANJAY SOHILCV_SANJAY SOHIL
CV_SANJAY SOHIL
 
Pi3 Ef 7 Pe Revision Class
Pi3 Ef 7 Pe Revision ClassPi3 Ef 7 Pe Revision Class
Pi3 Ef 7 Pe Revision Class
 
學生學習歷程簡報
學生學習歷程簡報學生學習歷程簡報
學生學習歷程簡報
 

Similar to TMS320DM8148 Embedded Linux

Uboot startup sequence
Uboot startup sequenceUboot startup sequence
Uboot startup sequenceHoucheng Lin
 
Embedded platform choices
Embedded platform choicesEmbedded platform choices
Embedded platform choicesTavish Naruka
 
Module 4 Embedded Linux
Module 4 Embedded LinuxModule 4 Embedded Linux
Module 4 Embedded LinuxTushar B Kute
 
Add sale davinci
Add sale davinciAdd sale davinci
Add sale davinciAkash Sahoo
 
Building Embedded Linux Full Tutorial for ARM
Building Embedded Linux Full Tutorial for ARMBuilding Embedded Linux Full Tutorial for ARM
Building Embedded Linux Full Tutorial for ARMSherif Mousa
 
Introduction to Linux Kernel by Quontra Solutions
Introduction to Linux Kernel by Quontra SolutionsIntroduction to Linux Kernel by Quontra Solutions
Introduction to Linux Kernel by Quontra SolutionsQUONTRASOLUTIONS
 
UplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processor
UplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processorUplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processor
UplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processorSatya Harish
 
Porting_uClinux_CELF2008_Griffin
Porting_uClinux_CELF2008_GriffinPorting_uClinux_CELF2008_Griffin
Porting_uClinux_CELF2008_GriffinPeter Griffin
 
Porting Android ABS 2011
Porting Android ABS 2011Porting Android ABS 2011
Porting Android ABS 2011Opersys inc.
 
Lec 10-linux-review
Lec 10-linux-reviewLec 10-linux-review
Lec 10-linux-reviewabinaya m
 
2022-05-03 SoC Interest Group Meeting - Deploying and testing firmware-softwa...
2022-05-03 SoC Interest Group Meeting - Deploying and testing firmware-softwa...2022-05-03 SoC Interest Group Meeting - Deploying and testing firmware-softwa...
2022-05-03 SoC Interest Group Meeting - Deploying and testing firmware-softwa...xiso
 
Embedded Linux
Embedded LinuxEmbedded Linux
Embedded LinuxShiraz LUG
 
Central Processing Unit
Central Processing Unit Central Processing Unit
Central Processing Unit Alaka Acharya
 

Similar to TMS320DM8148 Embedded Linux (20)

Uboot startup sequence
Uboot startup sequenceUboot startup sequence
Uboot startup sequence
 
Embedded platform choices
Embedded platform choicesEmbedded platform choices
Embedded platform choices
 
Module 4 Embedded Linux
Module 4 Embedded LinuxModule 4 Embedded Linux
Module 4 Embedded Linux
 
Porting Android
Porting AndroidPorting Android
Porting Android
 
Add sale davinci
Add sale davinciAdd sale davinci
Add sale davinci
 
Building Embedded Linux Full Tutorial for ARM
Building Embedded Linux Full Tutorial for ARMBuilding Embedded Linux Full Tutorial for ARM
Building Embedded Linux Full Tutorial for ARM
 
C# on a CHIPs
C# on a CHIPsC# on a CHIPs
C# on a CHIPs
 
Introduction to Linux Kernel by Quontra Solutions
Introduction to Linux Kernel by Quontra SolutionsIntroduction to Linux Kernel by Quontra Solutions
Introduction to Linux Kernel by Quontra Solutions
 
UplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processor
UplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processorUplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processor
UplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processor
 
Linux kernel booting
Linux kernel bootingLinux kernel booting
Linux kernel booting
 
Porting_uClinux_CELF2008_Griffin
Porting_uClinux_CELF2008_GriffinPorting_uClinux_CELF2008_Griffin
Porting_uClinux_CELF2008_Griffin
 
Porting Android
Porting AndroidPorting Android
Porting Android
 
Porting Android ABS 2011
Porting Android ABS 2011Porting Android ABS 2011
Porting Android ABS 2011
 
Lec 10-linux-review
Lec 10-linux-reviewLec 10-linux-review
Lec 10-linux-review
 
2022-05-03 SoC Interest Group Meeting - Deploying and testing firmware-softwa...
2022-05-03 SoC Interest Group Meeting - Deploying and testing firmware-softwa...2022-05-03 SoC Interest Group Meeting - Deploying and testing firmware-softwa...
2022-05-03 SoC Interest Group Meeting - Deploying and testing firmware-softwa...
 
Embedded Linux
Embedded LinuxEmbedded Linux
Embedded Linux
 
Hands on OpenCL
Hands on OpenCLHands on OpenCL
Hands on OpenCL
 
Introduction and course Details of Embedded Linux Platform Developer Training
Introduction and course Details of Embedded Linux Platform Developer TrainingIntroduction and course Details of Embedded Linux Platform Developer Training
Introduction and course Details of Embedded Linux Platform Developer Training
 
Window ce
Window ceWindow ce
Window ce
 
Central Processing Unit
Central Processing Unit Central Processing Unit
Central Processing Unit
 

More from NEEVEE Technologies

C Language Programming - Program Outline / Schedule
C Language Programming - Program Outline / ScheduleC Language Programming - Program Outline / Schedule
C Language Programming - Program Outline / ScheduleNEEVEE Technologies
 
Python programming for Beginners - II
Python programming for Beginners - IIPython programming for Beginners - II
Python programming for Beginners - IINEEVEE Technologies
 
Python programming for Beginners - I
Python programming for Beginners - IPython programming for Beginners - I
Python programming for Beginners - INEEVEE Technologies
 
Engineering College - Internship proposal
Engineering College - Internship proposalEngineering College - Internship proposal
Engineering College - Internship proposalNEEVEE Technologies
 
NVDK-ESP32 WiFi Station / Access Point
NVDK-ESP32 WiFi Station / Access PointNVDK-ESP32 WiFi Station / Access Point
NVDK-ESP32 WiFi Station / Access PointNEEVEE Technologies
 
General Purpose Input Output - Brief Introduction
General Purpose Input Output - Brief IntroductionGeneral Purpose Input Output - Brief Introduction
General Purpose Input Output - Brief IntroductionNEEVEE Technologies
 
Yocto BSP Layer for UDOO NEO Board
Yocto BSP Layer for UDOO NEO BoardYocto BSP Layer for UDOO NEO Board
Yocto BSP Layer for UDOO NEO BoardNEEVEE Technologies
 
Open Computer Vision Based Image Processing
Open Computer Vision Based Image ProcessingOpen Computer Vision Based Image Processing
Open Computer Vision Based Image ProcessingNEEVEE Technologies
 
Introduction to Machine learning
Introduction to Machine learningIntroduction to Machine learning
Introduction to Machine learningNEEVEE Technologies
 
Introduction Linux Device Drivers
Introduction Linux Device DriversIntroduction Linux Device Drivers
Introduction Linux Device DriversNEEVEE Technologies
 
Introduction about Apache MYNEWT RTOS
Introduction about Apache MYNEWT RTOSIntroduction about Apache MYNEWT RTOS
Introduction about Apache MYNEWT RTOSNEEVEE Technologies
 
Introduction to Bluetooth Low Energy
Introduction to Bluetooth Low EnergyIntroduction to Bluetooth Low Energy
Introduction to Bluetooth Low EnergyNEEVEE Technologies
 
Introduction to Bluetooth low energy
Introduction to Bluetooth low energyIntroduction to Bluetooth low energy
Introduction to Bluetooth low energyNEEVEE Technologies
 
Internet of things - zigbee network function
Internet of things - zigbee network functionInternet of things - zigbee network function
Internet of things - zigbee network functionNEEVEE Technologies
 
Internet of Things Protocol - Session 2
Internet of Things Protocol - Session 2Internet of Things Protocol - Session 2
Internet of Things Protocol - Session 2NEEVEE Technologies
 
Internet of Things Architecture / Topology
Internet of Things Architecture / TopologyInternet of Things Architecture / Topology
Internet of Things Architecture / TopologyNEEVEE Technologies
 
Neevee communication technologies_portfolio
Neevee communication technologies_portfolioNeevee communication technologies_portfolio
Neevee communication technologies_portfolioNEEVEE Technologies
 

More from NEEVEE Technologies (19)

C Language Programming - Program Outline / Schedule
C Language Programming - Program Outline / ScheduleC Language Programming - Program Outline / Schedule
C Language Programming - Program Outline / Schedule
 
Python programming for Beginners - II
Python programming for Beginners - IIPython programming for Beginners - II
Python programming for Beginners - II
 
Python programming for Beginners - I
Python programming for Beginners - IPython programming for Beginners - I
Python programming for Beginners - I
 
Engineering College - Internship proposal
Engineering College - Internship proposalEngineering College - Internship proposal
Engineering College - Internship proposal
 
NVDK-ESP32 WiFi Station / Access Point
NVDK-ESP32 WiFi Station / Access PointNVDK-ESP32 WiFi Station / Access Point
NVDK-ESP32 WiFi Station / Access Point
 
NVDK-ESP32 Quick Start Guide
NVDK-ESP32 Quick Start GuideNVDK-ESP32 Quick Start Guide
NVDK-ESP32 Quick Start Guide
 
General Purpose Input Output - Brief Introduction
General Purpose Input Output - Brief IntroductionGeneral Purpose Input Output - Brief Introduction
General Purpose Input Output - Brief Introduction
 
Yocto BSP Layer for UDOO NEO Board
Yocto BSP Layer for UDOO NEO BoardYocto BSP Layer for UDOO NEO Board
Yocto BSP Layer for UDOO NEO Board
 
Building Embedded Linux UDOONEO
Building Embedded Linux UDOONEOBuilding Embedded Linux UDOONEO
Building Embedded Linux UDOONEO
 
Open Computer Vision Based Image Processing
Open Computer Vision Based Image ProcessingOpen Computer Vision Based Image Processing
Open Computer Vision Based Image Processing
 
Introduction to Machine learning
Introduction to Machine learningIntroduction to Machine learning
Introduction to Machine learning
 
Introduction Linux Device Drivers
Introduction Linux Device DriversIntroduction Linux Device Drivers
Introduction Linux Device Drivers
 
Introduction about Apache MYNEWT RTOS
Introduction about Apache MYNEWT RTOSIntroduction about Apache MYNEWT RTOS
Introduction about Apache MYNEWT RTOS
 
Introduction to Bluetooth Low Energy
Introduction to Bluetooth Low EnergyIntroduction to Bluetooth Low Energy
Introduction to Bluetooth Low Energy
 
Introduction to Bluetooth low energy
Introduction to Bluetooth low energyIntroduction to Bluetooth low energy
Introduction to Bluetooth low energy
 
Internet of things - zigbee network function
Internet of things - zigbee network functionInternet of things - zigbee network function
Internet of things - zigbee network function
 
Internet of Things Protocol - Session 2
Internet of Things Protocol - Session 2Internet of Things Protocol - Session 2
Internet of Things Protocol - Session 2
 
Internet of Things Architecture / Topology
Internet of Things Architecture / TopologyInternet of Things Architecture / Topology
Internet of Things Architecture / Topology
 
Neevee communication technologies_portfolio
Neevee communication technologies_portfolioNeevee communication technologies_portfolio
Neevee communication technologies_portfolio
 

Recently uploaded

Prach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism CommunityPrach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism Communityprachaibot
 
"Exploring the Essential Functions and Design Considerations of Spillways in ...
"Exploring the Essential Functions and Design Considerations of Spillways in ..."Exploring the Essential Functions and Design Considerations of Spillways in ...
"Exploring the Essential Functions and Design Considerations of Spillways in ...Erbil Polytechnic University
 
Python Programming for basic beginners.pptx
Python Programming for basic beginners.pptxPython Programming for basic beginners.pptx
Python Programming for basic beginners.pptxmohitesoham12
 
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTFUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTSneha Padhiar
 
Cost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based questionCost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based questionSneha Padhiar
 
Katarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School CourseKatarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School Coursebim.edu.pl
 
Input Output Management in Operating System
Input Output Management in Operating SystemInput Output Management in Operating System
Input Output Management in Operating SystemRashmi Bhat
 
70 POWER PLANT IAE V2500 technical training
70 POWER PLANT IAE V2500 technical training70 POWER PLANT IAE V2500 technical training
70 POWER PLANT IAE V2500 technical trainingGladiatorsKasper
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating SystemRashmi Bhat
 
List of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdfList of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdfisabel213075
 
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.elesangwon
 
CS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfCS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfBalamuruganV28
 
Javier_Fernandez_CARS_workshop_presentation.pptx
Javier_Fernandez_CARS_workshop_presentation.pptxJavier_Fernandez_CARS_workshop_presentation.pptx
Javier_Fernandez_CARS_workshop_presentation.pptxJavier Fernández Muñoz
 
Energy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxEnergy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxsiddharthjain2303
 
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSHigh Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSsandhya757531
 
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSneha Padhiar
 
Forming section troubleshooting checklist for improving wire life (1).ppt
Forming section troubleshooting checklist for improving wire life (1).pptForming section troubleshooting checklist for improving wire life (1).ppt
Forming section troubleshooting checklist for improving wire life (1).pptNoman khan
 
Immutable Image-Based Operating Systems - EW2024.pdf
Immutable Image-Based Operating Systems - EW2024.pdfImmutable Image-Based Operating Systems - EW2024.pdf
Immutable Image-Based Operating Systems - EW2024.pdfDrew Moseley
 
Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________Romil Mishra
 

Recently uploaded (20)

Prach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism CommunityPrach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism Community
 
"Exploring the Essential Functions and Design Considerations of Spillways in ...
"Exploring the Essential Functions and Design Considerations of Spillways in ..."Exploring the Essential Functions and Design Considerations of Spillways in ...
"Exploring the Essential Functions and Design Considerations of Spillways in ...
 
Python Programming for basic beginners.pptx
Python Programming for basic beginners.pptxPython Programming for basic beginners.pptx
Python Programming for basic beginners.pptx
 
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTFUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
 
Cost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based questionCost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based question
 
Katarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School CourseKatarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School Course
 
Input Output Management in Operating System
Input Output Management in Operating SystemInput Output Management in Operating System
Input Output Management in Operating System
 
70 POWER PLANT IAE V2500 technical training
70 POWER PLANT IAE V2500 technical training70 POWER PLANT IAE V2500 technical training
70 POWER PLANT IAE V2500 technical training
 
Designing pile caps according to ACI 318-19.pptx
Designing pile caps according to ACI 318-19.pptxDesigning pile caps according to ACI 318-19.pptx
Designing pile caps according to ACI 318-19.pptx
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating System
 
List of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdfList of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdf
 
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.
 
CS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfCS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdf
 
Javier_Fernandez_CARS_workshop_presentation.pptx
Javier_Fernandez_CARS_workshop_presentation.pptxJavier_Fernandez_CARS_workshop_presentation.pptx
Javier_Fernandez_CARS_workshop_presentation.pptx
 
Energy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxEnergy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptx
 
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSHigh Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
 
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
 
Forming section troubleshooting checklist for improving wire life (1).ppt
Forming section troubleshooting checklist for improving wire life (1).pptForming section troubleshooting checklist for improving wire life (1).ppt
Forming section troubleshooting checklist for improving wire life (1).ppt
 
Immutable Image-Based Operating Systems - EW2024.pdf
Immutable Image-Based Operating Systems - EW2024.pdfImmutable Image-Based Operating Systems - EW2024.pdf
Immutable Image-Based Operating Systems - EW2024.pdf
 
Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________
 

TMS320DM8148 Embedded Linux

  • 2. Introduction • Linux Kernel & Components used in embedded system • Embedded Linux Devices everywhere around us – Android Phones – Digital & Smart TVs – Set Top Boxes
  • 3. Embedded Hardware Architecture • Linux Kernel supports 32 & 64 bit architectures – X86 & x86-64 – ARM – Power PC – MIPS – SuperH – BlackFin – Microblaze – ColdFire, AVR32
  • 4. Architecture Embedded Board Host PC Root File System Linux Kernel & drivers Boot Loader C Libraries linux services / commands ApplicationsCross Compiler JTAG Debugger Source Code
  • 5. Development PC - Compiler • Code Sourcery ARM Tool Chain – Version 2009-q1 – arm-2009q1-203-arm-none-linux-gnueabi-i686- pc-linux-gnu.tar • https://sourcery.mentor.com/GNUToolchain/release18 02? • Download IA32 GNU/LINUX TAR • Codesourcery Commercial Edition – Evaluation version of commercial edition
  • 6. Development PC – Compiler Setup • Uncompress the Compiler Zip File – tar xvf arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar • Move to /opt/ custom software folder in ubuntu – mkdir /opt/CodeSourcery – mv arm-2009q1 /opt/CodeSourcery/Sourcery_G++_Lite • Adding the toolchain path into shell – vi ~/.bashrc • export PATH=/opt/CodeSourcery/Sourcery_G++_Lite/bin:$PATH – source ~/.bashrc
  • 7. Development PC - Tools • JTAG Debugger – This tool is used when new hardware is designed – Used to validate & bring up low level hardware interfaces ( DDR3, NAND Flash ) – XDS 560 V2 System Trace Emulator – XDS 560 PCI Rev D Emulator – Blackhawk USB 560-M Emulator – Spectrum Digital 510 USB Emulator • Code Composer Studio
  • 8. Development PC - Console • Serial Console – Used to get boot up log messages & acts as linux shell to execute the applications – Default settings : 115200 8N1 – Flow Control : None • Minicom – Text based modem control & terminal emulation utility – PC Serial console – Run “minicom –S” to configure the serial console
  • 9. Development PC – EZSDK • EZSDK – Linux EZ Software Development Kit – Linux support based on 2.6.37 Kernel – Quick Start Development – Video / Audio Codecs – DSP accelerated alogrithms – Application Examples – Networked Audio / Video – Qt graphics SDK plugin – OpenMax libraries – Matrix Application Launcher
  • 11. EZSDK - Components • Linux Kernel 2.6.37 • Bootloader • File System • Qt/Webkit application framework • 3D Graphics Support • Flash Tools & Pin Muxing Utility • HDVICP2 Accelerated Codec – H.264 Encode / Decode, MPEG4 Encode / Decode, MPEG2 Decode & VC1/WMV9 to the video detector
  • 12. Boot Loader • 1st stage boot loader – TI 814x BOOT ROM • 2nd & 3rd stage boot loader – U-Boot Loader – U-Boot-MIN Image • Prompt TI-MIN# – U-Boot Image • Prompt TI8148_EVM# • NOR Boot – Has only two stage bootloader – U-Boot-MIN is not required as NOR is XIP ( eXecute In Place )
  • 13. Two Stage U-Boot Design • TI814x internal RAM – 128 KB out of which 18 KB at the end used by ROM Code – Limit of 110KB on the size of U-Boot binary can be transferred to internal RAM – It needs to setup TEXT_BASE of U-Boot • 1st stage of U-Boot built with configuration as minimal as possible – Purpose to initialize the necessary peripherals especially DDR SDRAM – Provides mechanism to load full fledged U-Boot into DDR & then passed control over it. – Automatic DDR2 & DDR3 selection
  • 14. U-Boot-MIN • Different Boot Modes – NAND/SPI Memory Boot • Header needs to be attached with binary to indicate load address. • SPI boot requires endian information as well – UART/EMAC/SD Card Peripheral Boot • No header • Load Address is fixed ( 0x80070000) – NOR Flash Boot • Header is not required • 1st stage U-Boot is not required, as it is eXecute In Place (XIP)
  • 15. U-Boot Loader • 2nd stage of U-Boot – Supports saving environment variables into • NAND / SPI Flash • SD Card • NOR Flash – Storage media will be configured before building of 2nd stage U-Boot • Supported with Storage Media – Write & Read files ( like boot, kernel, filesystem images ) back from storage media – Loads kernel image & execute the same • Loads from Storage • Loads from TFTP server using Ethernet
  • 16. U-Boot Loader – Kernel Boot • Boot from NAND – nand read.i 0x81000000 280000 500000 – bootm 0x81000000 • Boot from SPI – sf read 0x81000000 0x42000 0x200000 – bootm 0x81000000 • Boot from NOR – cp.w 0x08060000 0x81000000 0x200000 – bootm 0x81000000 • Boot over Network – tftp 0x81000000 uImage – bootm 0x81000000
  • 17. Linux Kernel • Unix Like computer operating system kernel • Default kernel configuration – ti8148_evm_defconfig • Kernel Image format – uImage – U-Bootloader based image – mkimage utility used to create linux kernel image
  • 18. Linux Kernel • Manages all the hardware peripherals like CPU, Memory, IO • Provides an interface for user space application & libraries to access hardware interfaces • Manages multiple user access – Provides a hardware interface access for multiple user application access
  • 19. Linux Kernel – Block Diagram Memory Management block - HW MMU Scheduler & Task Management File System Device Drivers Low Level CPU initialization Network Stack Device Tree Hardware Description
  • 20. Linux Kernel – Device Drivers • Power Management • GPIO Driver • EDMA3 Driver • Audio Driver • SATA Driver • USB Driver • SD / MMC Card Driver • Ethernet Switch Driver • VPSS Video Driver – VPSS Video Capture Driver • HDMI Driver • McSPI Driver • PCI Express Root Complex Driver • PCI Express End Point Driver • Touch Screen Driver • Watchdog Timer
  • 21. File System • Root File System – Ramdisk – Cramfs – Ext 2,3,4 – FAT • Pseudo file system – Proc – Sysfs – Dev Filesystem
  • 22. Root File System Structure • bin • boot • dev • etc • lib • lost+found • misc • mnt • net • opt • proc • root • sbin • tmp • usr • Var
  • 23. Contact US • For Embedded Design Service • Web : www.neeveetech.com • Sales : sales@neeveetech.com